if(!JsNamespace.exist("Eco.Color")){JsNamespace.declare("Eco.Color",{basicColors:[['#ff8080','#ffff80','#80ff80','#00ff80','#80ffff','#0080ff','#ff80c0','#ff80ff'],['#ff0000','#ffff00','#80ff00','#00ff40','#00ffff','#0080c0','#8080c0','#ff00ff'],['#804040','#ff8040','#00ff00','#008080','#004080','#8080ff','#800040','#ff0080'],['#800000','#ff8000','#008000','#008040','#0000ff','#0000a0','#800080','#8000ff'],['#400000','#804000','#004000','#004040','#000080','#000040','#400040','#400080'],['#000000','#808000','#808040','#808080','#408080','#c0c0c0','#400040','#ffffff']],HSLMAX:240,RGBMAX:255,HUE_VALUE_WHEN_SATURATION_IS_ZERO:160,rgbToHsl:function(_a,_b,_c){var _d=Eco.Color;var _e=_d.HSLMAX;var _f=_d.RGBMAX;var _g=Math.max(Math.max(_a,_b),_c);var _h=Math.min(Math.min(_a,_b),_c);var _i=Math.floor((((_g+_h)*_e)+_f)/(2*_f));var _j=0;if(_g==_h){S=0;_j=_d.HUE_VALUE_WHEN_SATURATION_IS_ZERO;}else{if(_i<=(_e/2)){S=Math.floor((((_g-_h)*_e)+((_g+_h)/2))/(_g+_h));}else{S=Math.floor((((_g-_h)*_e)+((2*_f-_g-_h)/2))/(2*_f-_g-_h));}var _l=Math.floor((((_g-_a)*(_e/6))+((_g-_h)/2))/(_g-_h));var _m=Math.floor((((_g-_b)*(_e/6))+((_g-_h)/2))/(_g-_h));var _n=Math.floor((((_g-_c)*(_e/6))+((_g-_h)/2))/(_g-_h));if(_a==_g){_j=_n-_m;}else if(_b==_g){_j=(_e/3)+_l-_n;}else{_j=((2*_e)/3)+_m-_l;}if(_j<0){_j+=_e;}if(_j>_e){_j-=_e;}}var _k=[];_k[0]=Math.floor(_j);_k[1]=Math.floor(S);_k[2]=Math.floor(_i);return _k;},hueToRgb:function(_a,_b,_c){var _d=Eco.Color.HSLMAX;_a=Math.floor(_a);_b=Math.floor(_b);_c=Math.floor(_c);if(_c<0){_c+=_d;}if(_c>_d){_c-=_d;}if(_c<(_d/6)){return Math.floor(_a+Math.floor((((_b-_a)*_c+(_d/12))/(_d/6))));}if(_c<(_d/2)){return (_b);}if(_c<((_d*2)/3)){return Math.floor(_a+Math.floor((((_b-_a)*(((_d*2)/3)-_c)+(_d/12))/(_d/6))));}else{return Math.floor(_a);}},hslToRgb:function(_a,_b,_c){var _d,_e,_f;var _g=Eco.Color;var _h=_g.HSLMAX;var _i=_g.RGBMAX;if(_b==0){_d=_e=_f=(_c*_i)/_h;if(_a!=_g.HUE_VALUE_WHEN_SATURATION_IS_ZERO){}}else{var _j,_k;if(_c<=(_h/2)){_k=Math.floor((_c*(_h+_b)+(_h/2))/_h);}else{_k=(_c+_b-Math.floor(((_c*_b)+(_h/2))/_h));}_j=2*_c-_k;var _l=_g.hueToRgb;_d=(_l(_j,_k,_a+(_h/3))*_i+(_h/2))/_h;_e=(_l(_j,_k,_a)*_i+(_h/2))/_h;_f=(_l(_j,_k,_a-(_h/3))*_i+(_h/2))/_h;}res=[];res[0]=Math.floor(_d);res[1]=Math.floor(_e);res[2]=Math.floor(_f);return res;},rgbToHex:function(_a,_b,_c,_d){var _e=Eco.Color.numberToHex;return "#"+_e(_a)+_e(_b)+_e(_c)+_e(_d);},numberToHex:function(_a){if(Eco.isEmpty(_a)){return "";}var _b=_a.toString(16).padLeft(2,"0");return _b.toUpperCase();},hexToHsl:function(_a){if(Eco.isEmpty(_a)){alert("Arguments is empty!");return;}var _b=Eco.Color;var _c=_b.hexToRgb(_a);return _b.rgbToHsl(_c[0],_c[1],_c[2]);},hexToRgb:function(_a){if(Eco.isEmpty(_a)){alert("Arguments is empty!");return;}if(!(_a.match(/^#[0-9a-f]{3,8}$/i))){_a=nexacro._xreNamedColorList[_a];}var _b;if(_a.length==9){_b=_a.match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})(\w{1,2})$/);}else{_b=_a.match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/);}if(_b.length>=4){var _c=[0,0,0];for(var _d=0;_d<3;_d++ ){var _e=_b[_d+1];_c[_d]=parseInt(_e.length==1?_e+_e:_e,16);}if(_b[4]&&_b[4].length>0){_c.push(parseInt(_b[4],16));}else{_c.push(255);}return _c;}}});}