!function(c){var d=function(e){this.value={h:1,s:1,b:1,a:1};this.setColor(e)};d.prototype={constructor:d,setColor:function(f){f=f.toLowerCase();var e=this;c.each(b.stringParsers,function(j,l){var h=l.re.exec(f),g=h&&l.parse(h),k=l.space||"rgba";if(g){if(k==="hsla"){e.value=b.RGBtoHSB.apply(null,b.HSLtoRGB.apply(null,g))}else{e.value=b.RGBtoHSB.apply(null,g)}return false}})},setHue:function(e){this.value.h=1-e},setSaturation:function(e){this.value.s=e},setLightness:function(e){this.value.b=1-e},setAlpha:function(e){this.value.a=parseInt((1-e)*100,10)/100},toRGB:function(j,n,k,l){if(!j){j=this.value.h;n=this.value.s;k=this.value.b}j*=360;var i,m,f,g,e;j=(j%360)/60;e=k*n;g=e*(1-Math.abs(j%2-1));i=m=f=k-e;j=~~j;i+=[e,g,0,0,g,e][j];m+=[g,e,e,g,0,0][j];f+=[0,0,g,e,e,g][j];return{r:Math.round(i*255),g:Math.round(m*255),b:Math.round(f*255),a:l||this.value.a}},toHex:function(j,i,e,f){var g=this.toRGB(j,i,e,f);return"#"+((1<<24)|(parseInt(g.r)<<16)|(parseInt(g.g)<<8)|parseInt(g.b)).toString(16).substr(1)},toHSL:function(l,k,f,g){if(!l){l=this.value.h;k=this.value.s;f=this.value.b}var j=l,e=(2-k)*f,i=k*f;if(e>0&&e<=1){i/=e}else{i/=2-e}e/=2;if(i>1){i=1}return{h:j,s:i,l:e,a:g||this.value.a}}};var a=function(f,e){this.element=c(f);var g=e.format||this.element.data("color-format")||"hex";this.format=b.translateFormats[g];this.isInput=this.element.is("input");this.component=this.element.is(".input-color")?this.element.find("i"):false;this.picker=c(b.template).appendTo("body").children().on("mousedown",c.proxy(this.mousedown,this));input=this.isInput?this.element:this.element.find("input");input.on("change keyup",c.proxy(function(h){this.element.data("color",h.target.value);this.update()},this));if(this.isInput){this.element.on({focus:c.proxy(this.show,this),keyup:c.proxy(this.update,this)})}else{if(this.component){this.component.on({click:c.proxy(this.show,this)})}else{this.element.on({click:c.proxy(this.show,this)})}}if(g==="rgba"||g==="hsla"){this.picker.addClass("alpha");this.alpha=this.picker.find(".colorpicker-alpha")[0].style}if(this.component){this.picker.find(".colorpicker-color").hide();this.preview=this.element.find("i")[0].style}else{this.preview=this.picker.find("div:last")[0].style}this.base=this.picker.find("div:first")[0].style;this.update()};a.prototype={constructor:a,show:function(f){this.picker.show();this.height=this.component?this.component.outerHeight():this.element.outerHeight();this.place();c(window).on("resize",c.proxy(this.place,this));if(!this.isInput){if(f){f.stopPropagation();f.preventDefault()}}c(document).on({mousedown:c.proxy(this.hide,this)});this.element.trigger({type:"show",color:this.color})},update:function(){this.color=new d(this.isInput?this.element.prop("value"):this.element.data("color"));this.picker.find("i").eq(0).css({left:this.color.value.s*100,top:100-this.color.value.b*100}).end().eq(1).css("top",100*(1-this.color.value.h)).end().eq(2).css("top",100*(1-this.color.value.a));this.previewColor()},setValue:function(e){this.color=new d(e);this.picker.find("i").eq(0).css({left:this.color.value.s*100,top:100-this.color.value.b*100}).end().eq(1).css("top",100*(1-this.color.value.h)).end().eq(2).css("top",100*(1-this.color.value.a));this.previewColor();this.element.trigger({type:"changeColor",color:this.color})},hide:function(){this.picker.hide();c(window).off("resize",this.place);if(!this.isInput){c(document).off({mousedown:this.hide});if(this.component){this.element.find("input").prop("value",this.format.call(this)).change()}this.element.data("color",this.format.call(this))}else{this.element.prop("value",this.format.call(this)).change()}this.element.trigger({type:"hide",color:this.color})},place:function(){var e=this.component?this.component.offset():this.element.offset();this.picker.css({top:e.top+this.height,left:e.left-this.picker.outerWidth()+(this.component?this.component.outerWidth():this.element.outerWidth())+3})},previewColor:function(){try{this.preview.backgroundColor=this.format.call(this)}catch(f){this.preview.backgroundColor=this.color.toHex()}this.base.backgroundColor=this.color.toHex(this.color.value.h,1,1,1);if(this.alpha){this.alpha.backgroundColor=this.color.toHex()}},pointer:null,slider:null,mousedown:function(h){h.stopPropagation();h.preventDefault();var g=c(h.target);var f=g.closest("div");if(!f.is(".colorpicker")){if(f.is(".colorpicker-saturation")){this.slider=c.extend({},b.sliders.saturation)}else{if(f.is(".colorpicker-hue")){this.slider=c.extend({},b.sliders.hue)}else{if(f.is(".colorpicker-alpha")){this.slider=c.extend({},b.sliders.alpha)}else{return false}}}var i=f.offset();this.slider.knob=f.find("i")[0].style;this.slider.left=h.pageX-i.left;this.slider.top=h.pageY-i.top;this.pointer={left:h.pageX,top:h.pageY};c(document).on({mousemove:c.proxy(this.mousemove,this),mouseup:c.proxy(this.mouseup,this)}).trigger("mousemove")}if(!this.isInput){if(this.component){this.element.find("input").prop("value",this.format.call(this)).change()}this.element.data("color",this.format.call(this))}else{this.element.prop("value",this.format.call(this)).change()}return false},mousemove:function(h){h.stopPropagation();h.preventDefault();var g=Math.max(0,Math.min(this.slider.maxLeft,this.slider.left+((h.pageX||this.pointer.left)-this.pointer.left)));var f=Math.max(0,Math.min(this.slider.maxTop,this.slider.top+((h.pageY||this.pointer.top)-this.pointer.top)));this.slider.knob.left=g+"px";this.slider.knob.top=f+"px";if(this.slider.callLeft){this.color[this.slider.callLeft].call(this.color,g/100)}if(this.slider.callTop){this.color[this.slider.callTop].call(this.color,f/100)}this.previewColor();this.element.trigger({type:"changeColor",color:this.color});return false},mouseup:function(f){f.stopPropagation();f.preventDefault();c(document).off({mousemove:this.mousemove,mouseup:this.mouseup});return false}};c.fn.colorpicker=function(e,f){return this.each(function(){var i=c(this),h=i.data("colorpicker"),g=typeof e==="object"&&e;if(!h){i.data("colorpicker",(h=new a(this,c.extend({},c.fn.colorpicker.defaults,g))))}if(typeof e==="string"){h[e](f)}})};c.fn.colorpicker.defaults={};c.fn.colorpicker.Constructor=a;var b={translateFormats:{rgb:function(){var e=this.color.toRGB();return"rgb("+e.r+","+e.g+","+e.b+")"},rgba:function(){var e=this.color.toRGB();return"rgba("+e.r+","+e.g+","+e.b+","+e.a+")"},hsl:function(){var e=this.color.toHSL();return"hsl("+Math.round(e.h*360)+","+Math.round(e.s*100)+"%,"+Math.round(e.l*100)+"%)"},hsla:function(){var e=this.color.toHSL();return"hsla("+Math.round(e.h*360)+","+Math.round(e.s*100)+"%,"+Math.round(e.l*100)+"%,"+e.a+")"},hex:function(){return this.color.toHex()}},sliders:{saturation:{maxLeft:100,maxTop:100,callLeft:"setSaturation",callTop:"setLightness"},hue:{maxLeft:0,maxTop:100,callLeft:false,callTop:"setHue"},alpha:{maxLeft:0,maxTop:100,callLeft:false,callTop:"setAlpha"}},RGBtoHSB:function(l,k,e,h){l/=255;k/=255;e/=255;var j,i,f,m;f=Math.max(l,k,e);m=f-Math.min(l,k,e);j=(m===0?null:f==l?(k-e)/m:f==k?(e-l)/m+2:(l-k)/m+4);j=((j+360)%6)*60/360;i=m===0?0:m/f;return{h:j||1,s:i,b:f,a:h||1}},HueToRGB:function(g,f,e){if(e<0){e+=1}else{if(e>1){e-=1}}if((e*6)<1){return g+(f-g)*e*6}else{if((e*2)<1){return f}else{if((e*3)<2){return g+(f-g)*((2/3)-e)*6}else{return g}}}},HSLtoRGB:function(n,w,k,v){if(w<0){w=0}var f;if(k<=0.5){f=k*(1+w)}else{f=k+w-(k*w)}var i=2*k-f;var t=n+(1/3);var j=n;var m=n-(1/3);var e=Math.round(b.HueToRGB(i,f,t)*255);var o=Math.round(b.HueToRGB(i,f,j)*255);var u=Math.round(b.HueToRGB(i,f,m)*255);return[e,o,u,v||1]},stringParsers:[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(e){return[e[1],e[2],e[3],e[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(e){return[2.55*e[1],2.55*e[2],2.55*e[3],e[4]]}},{re:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,parse:function(e){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}},{re:/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/,parse:function(e){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(e){return[e[1]/360,e[2]/100,e[3]/100,e[4]]}}],template:'