/*
 FusionCharts JavaScript Library
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>

 @version 3.12.2
 FusionCharts JavaScript Library
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>

 @version 3.12.2
*/
(function(Y){"object"===typeof module&&"undefined"!==typeof module.exports?module.exports=Y:Y(FusionCharts)})(function(Y){Y.register("module",["private","modules.renderer.js-gradientlegend",function(){function a(v,k){(function h(l,k){var F,p;for(p in l)g.call(l,p)&&(F=l[p],void 0===k[p]?k[p]=F:"object"===typeof F&&h(F,k[p]))})(v,k);return k}function b(v){return c(v?v:la)||la}function z(v){var k=v.fontSize+"";if(!k)return v;k=k.replace(/(\d+)(px)*/,"$1px");v.fontSize=k;return v}function U(v){return void 0===
v||"undefined"===typeof v||null===v||v!==v?!0:!1}function aa(v,k){this.carpet=v;this._componentPool=k}function O(v){this.conf=v;this._id="GL_CARPET";this.compositionsByCategory={};this._lSpace=this.group=this.node=void 0;this.autoRecalculate=!1;this.groupName="fc-gradient-legend";this.moveInstructions={}}function S(){O.apply(this,arguments)}function L(v,k){this.rawText=v;this.conf=k;this._id="GL_CAPTION";this._lSpace=this.bound=this.node=void 0}function N(v,k,q){this.colorRange=v;this.conf=k;this.childTextConf=
q;this._id="GL_BODY";this.bound=void 0;this.compositionsByCategory={};this._lSpace=void 0}function R(){N.apply(this,arguments)}function I(v){this.conf=v;this._id="GL_LABELS"}function M(){I.apply(this,arguments)}function u(){I.apply(this,arguments);this._id="GL_VALUES"}function A(){u.apply(this,arguments);this._id="GL_VALUES"}function m(v){this.conf=v;this._id="FL_AXIS";this.markerLine=this.shadow=this.node=void 0;this.compositionsByCategory={}}function H(){m.apply(this,arguments)}function D(v){var k=
{};this._id="GL_SG1";this.conf=v;k.conf=v;this.extremes=[];this.sliders={};k.sliderGroup=this;this.valueRange=[];this.callbacks=[];this.sliders[!1]=new f(!1,k,this._id+"_0");this.sliders[!0]=new f(!0,k,this._id+"_1")}function f(v,k,q){this.conf=k.conf;this.sliderIndex=v;this.rangeGroup=k.sliderGroup;this._id=q;this.tracker=this.node=void 0;this.currPos=0;this.swing=[]}function V(v,k,q){q=q.components.numberFormatter;var h,l,G,F,p,y;this.data=v;this.options=k||{};y=this.mapByPercent=!!v.mapByPercent;
this.appender="";l=this.mapByPercent?0:k.min;k=this.mapByPercent?100:k.max;2===v.colorRange.length&&(h=v.colorRange[0],G=v.colorRange[1],F=h.value=U(h.value)?l:h.value,p=G.value=U(G.value)?k:G.value,F===p&&(F=h.value=l,p=G.value=k),h.displayValue=y?F+"%":q.legendValue(F),G.displayValue=y?p+"%":q.legendValue(p));U(l)&&U(h.value)||U(k)&&U(h.value)||!v.gradient?this._preparationGoneWrong=!0:this._preparationGoneWrong=!1;q=this.colorRange=v.colorRange.sort(function(h,l){return h.value-l.value});this.valueRatio=
void 0;this.values=[];v=0;for(h=q.length;v<h;v++)this.values.push(q[v].value)}function K(){aa.apply(this,arguments)}var Q=this,n=Q.hcLib,d=n.pluckNumber,w=n.pluck,e=n.toRaphaelColor,Z=n.graphics,P=n.dehashify,t=n.hashify,T=Z.convertColor,da=Z.RGBtoHex,B=Z.HEXtoRGB,x=Z.getLightColor,c=Z.getValidColor,E="rgba(192,192,192,"+(n.isIE?.002:1E-6)+")",C,la=n.COLOR_BLACK,g={}.hasOwnProperty,J,W={};C=function(){function v(h){var q=k.numberFormatter,F,p,y;F=0;for(p=h.length;F<p;F++)if(y=h[F].maxvalue)h[F].maxvalue=
q.getCleanValue(y)}var k,q,h={legendCarpetConf:{spreadFactor:.85,allowDrag:!1,captionAlignment:"center",padding:{v:3,h:3},style:{fill:"#e4d9c1",stroke:"#c4b89d"}},legendCaptionConf:{spreadFactor:.2,padding:{v:2,h:2},style:{fill:"#786B50",fontFamily:"sans-serif",fontSize:"12px",fontWeight:"bold",fontStyle:"normal"},bound:{style:{stroke:"none"}}},legendBodyConf:{spreadFactor:.8,padding:{v:2,h:2},bound:{style:{stroke:"none"}}}};h.legendAxisConf={legendAxisHeight:11,spreadFactor:.4,padding:{v:1,h:1},
style:{stroke:"none","stroke-opacity":0,"stroke-width":1},line:{grooveLength:3,offset:8,style:{stroke:"rgba(255, 255, 255, 0.65)","stroke-width":1.5}},shadow:{style:{stroke:"none",fill:e({FCcolor:{alpha:"25,0,0",angle:360,color:"000000,FFFFFF,FFFFFF",ratio:"0,30,40"}})}},bound:{style:{stroke:"none"}}};h.sliderGroupConf={showTooltip:1,outerCircle:{rFactor:1.4,style:{fill:E,stroke:"#757575","stroke-width":3}},innerCircle:{rFactor:.65,style:{fill:E,stroke:"#FFFFFF"}}};h.axisTextItemConf={spreadFactor:.3,
padding:{v:1,h:1},style:{fill:"#786B50",fontFamily:"sans-serif",fontSize:"12px",fontWeight:"normal",fontStyle:"normal"}};return{init:function(h){q=h.chart;k=q.components},setConf:function(h){},legacyDataParser:function(h,q){var F={},p=k.numberFormatter,y,r,c,g,B,E,e,a,C;if(!h)return!1;F.mapByPercent=C=!!d(h.mapbypercent,0);y=h.color||[];void 0===h.minvalue&&(h.minvalue=void 0!==q.min?C?0:q.min:0);void 0===h.maxvalue&&(h.maxvalue=void 0!==q.max?C?100:q.max:100);E=!1;c=0;for(g=y.length;c<g;c++)if(y[c].maxvalue){E=
!0;break}E||(y=[]);c=h.code;E=F.colorRange=[];F.gradient=!!d(h.gradient,1);y.length?c=b(c):(c?(g=b(c),c=b()):(c=b(),g=x(c,1)),y.push({code:g,maxvalue:h.maxvalue,label:void 0}));v(y);y=y.sort(function(h,l){return h.maxvalue-l.maxvalue});e=a=h.minvalue&&p.getCleanValue(h.minvalue);a=(void 0!==e||null!==e)&&(C?e+"%":p.legendValue(e));E.push({code:P(c),value:e,displayValue:a,label:h.startlabel});c=0;for(g=y.length;c<g;c++)r=y[c],B=b(r.code||r.color),e=a=r.maxvalue,isNaN(parseInt(e,10))||(a=(void 0!==
e||null!==e)&&(C?e+"%":p.legendValue(e)),E.push(Object({code:P(B),value:e,displayValue:a,label:r.label||r.displayvalue})));E[E.length-1].label=h.endlabel||r.label;return F},getDefaultConf:function(l){return h[l]}}}();J=function(v){var k=v.chartInstance.id,q=W[k]||(W[k]={});return function(){function h(){var h,l,k,F,G,v;for(h in q)for(l in k=q[h],k)if(F=k[l],F instanceof Array)for(G=0,v=F.length;G<v;G++)F[G]&&F[G].hide();else F.hide()}var l,G={},F;l={KEY_RECT:"rect",KEY_TEXT:"text",KEY_GROUP:"group",
KEY_CIRCLE:"circle",KEY_PATH:"path"};G[l.KEY_RECT]=function(h){return F.rect(h)};G[l.KEY_TEXT]=function(h,l){return F.text(h,l)};G[l.KEY_GROUP]=function(h,l){return F.group(h,l)};G[l.KEY_CIRCLE]=function(h){return F.circle(h)};G[l.KEY_PATH]=function(h,l){return F.path(h,l)};return{init:function(l){F=l;h()},emptyPool:function(){q=W[k]={}},getChart:function(){return v},getComponent:function(h,l,k){var F=q[h],v,c,g,d=0;F||(F=q[h]={});return(c=F[l])&&!(c instanceof Array)||c instanceof Array&&0<c.length?
function(){return k?(g=c[d++])?g.show():c[d]=G[l].apply(this,arguments):c.show()}:function(){return k?(v=F[l]||(F[l]=[]),c=G[l].apply(this,arguments),v.push(c),c.show()):F[l]=G[l].apply(this,arguments)}},hideAll:function(){h()},getKeys:function(){return l}}}()};aa.prototype.constructor=aa;aa.prototype.draw=function(v){v.componentPool=this._componentPool;return this.carpet.draw(v)};aa.prototype.getLogicalSpace=function(v,k){v.componentPool=this._componentPool;return this.carpet.getLogicalSpace(v,k)};
aa.prototype.dispose=function(){this.carpet&&this.carpet.group&&this.carpet.group.remove();this._componentPool.emptyPool()};O.prototype.constructor=O;O.prototype.addCompositions=function(v,k){this.compositionsByCategory[k]=v};O.prototype.getBoundingBox=function(v){var k=this.conf,q=v.refSide,h=v.alignment,l=v.refOffset,G=v.x,F=v.y,k=k.width=q*k.spreadFactor;!h||void 0!==G&&null!==G||(G=(l+q)/2-k/2);return{width:k,height:v.maxOtherSide,x:G,y:F}};O.prototype.getPostCalcDecisions=function(v,k){var q=
this.conf.padding,h,l=0;for(h in k)l+=k[h].height||0;v.height=l+2*q.v};O.prototype.getLogicalSpace=function(v,k){var q=this._lSpace,h=this.conf.padding,l=this.compositionsByCategory,G,F,p;p=0;var y={},r,c=0;if(q&&!k)return q.isImpure=!0,q;q=this._lSpace=F=this.getBoundingBox(v);if(U(q.x)||U(q.y)||U(q.height)||U(q.width))this.autoRecalculate=!0;q=a(F,{});q.height-=2*h.v;q.width-=2*h.h;q.x+=h.h;q.y+=h.v;for(r in l)G=l[r],h=a(q,{}),h.y+=p,p=q.height*G.conf.spreadFactor,h.height=p+c,p=G.getLogicalSpace(a(h,
{}),v,k),c=h.height-p.height,y[r]=p,p=p.height;this.getPostCalcDecisions(F,y);return this._lSpace=F};O.prototype.setupDragging=function(){var v=this.group,k=0,q=0,h=0,l=0;v.css({cursor:"move"});v.drag(function(G,F){k=F[0];q=F[1];v.attr({transform:"t"+(h+k)+","+(l+q)})},function(){h+=k;l+=q},function(){})};O.prototype.draw=function(v){var k=this.conf,q=this.compositionsByCategory,h=v.paper,l=v.parentGroup,G=v.componentPool,F,p,y=G.getChart().get("config","animationObj").duration,r,c=G.getKeys();this.getLogicalSpace(v,
this.autoRecalculate);p=this._lSpace;r=G.getComponent(this._id,c.KEY_GROUP);this.group=l=r(this.groupName,l);l.attr({opacity:0});l.animate({opacity:1},y,"easeIn");r=G.getComponent(this._id,c.KEY_RECT);this.node=r(l).attr(p).css(k.style);for(F in q)G=q[F],G.draw(k.captionAlignment,p,{colorRange:v.colorRange,numberFormatter:v.numberFormatter,paper:h,parentLayer:l,smartLabel:v.smartLabel,moveInstructions:this.moveInstructions[F],componentPool:v.componentPool});k.allowDrag&&this.setupDragging();return this.node};
S.prototype=Object.create(O.prototype);S.prototype.constructor=S;S.prototype.getBoundingBox=function(v){var k=this.conf,q=v.refSide,h=v.alignment,l=v.refOffset,G=v.x,F=v.y,k=k.height=q*k.spreadFactor;!h||void 0!==F&&null!==F||(F=(l+q)/2-k/2);return{width:v.maxOtherSide,height:k,x:G,y:F}};S.prototype.getPostCalcDecisions=function(v,k){var q=this.conf.padding,h=Number.NEGATIVE_INFINITY,l,G,F=this.moveInstructions;O.prototype.getPostCalcDecisions.apply(this,arguments);for(G in k)l=k[G].width,h=h<l?l:
h;v.width=h+2*q.h;for(G in k)if(l=k[G].width,q=h-l)F[G]="t"+q/2+",0"};L.prototype.constructor=L;L.LEFT={x:function(v,k){return k.x+v.width/2+2}};L.RIGHT={x:function(v,k){return k.x+k.width-v.width/2-2}};L.CENTER={x:function(v,k){return k.x+k.width/2}};L.prototype.getLogicalSpace=function(v,k,q){var h=this.conf.padding,l=this._lSpace,G=this.rawText,F=k.componentPool.getChart();if(l&&!q)return l.isImpure=!0,l;l=this._lSpace={bound:{height:0,width:0},node:{logicArea:void 0,smartText:void 0}};q=k.smartLabel;
if(!G)return l.bound;k=a(v,{});k.height-=2*h.v;k.width-=2*h.h;k.x+=h.h;k.y+=h.v;q.useEllipsesOnOverflow(F.config.useEllipsesWhenOverflow);F=a(this.conf.style,{});z(F);q.setStyle(this._metaStyle=F);G=q.getSmartText(G,k.width,k.height);k.height=G.height;k.width=G.width;v.height=G.height+2*h.v;v.width=G.width+2*h.h;l.node.smartText=G;l.node.logicArea=k;return l.bound=v};L.prototype.draw=function(){var v=this.conf,k,q=v.bound||{},h,l,G,F,p,y,r;3<=arguments.length?(G=arguments[0],F=arguments[1],p=arguments[2]):
2<=arguments.length&&(G=arguments[0],p=arguments[1]);k=p.parentLayer;y=p.componentPool;r=y.getKeys();h=y.getComponent(this._id,r.KEY_GROUP);this.group=k=h("legend-caption",k).css(v.style);this.getLogicalSpace(F,p);h=this._lSpace;p=h.node;l=h.bound;h=y.getComponent(this._id,r.KEY_RECT);this.bound=q=h(k).attr(l).css(q.style);G="string"===typeof G?L[G.toUpperCase()].x(p.smartText,F||p.logicArea):G;h=y.getComponent(this._id,r.KEY_TEXT);this.node=h({},k).attr({text:p.smartText.text,x:G,y:p.logicArea.y+
p.smartText.height/2,lineHeight:this._metaStyle.lineHeight,fill:v.style.fill});return{group:k,bound:q,node:this.node}};N.SC_STACK=["LEGEND_LABEL","LEGEND_AXIS","AXIS_VALUE"];N.DARW_STACK=["AXIS_VALUE","LEGEND_AXIS","LEGEND_LABEL"];N.prototype.constructor=N;N.prototype.addCompositions=function(v,k){this.compositionsByCategory[k]=v};N.prototype.getCompositionPlotAreaFor=function(v){var k;k=a(v,{});return function(q,h){q=q||{};k.y+=q.height||0;k.height=v.height*h;return k}};N.prototype.getSpaceTaken=
function(v){return v.height};N.prototype.updateEffectivePlotArea=function(v,k,q){var h=this.conf.padding;k.height=q;v.height=q+2*h.v};N.prototype.getLogicalSpace=function(v,k,q){var h=this._lSpace,l=this.conf.padding,G=this.compositionsByCategory,F,p,y,r=0,c,g;if(h&&!q)return h.isImpure=!0,h;h=this._lSpace={bound:{height:0,width:0},node:{logicArea:void 0}};p=a(v,{});p.height-=2*l.v;p.width-=2*l.h;p.x+=l.h;p.y+=l.v;y=this.getCompositionPlotAreaFor(p);k.colorRange=this.colorRange;c=0;for(g=N.SC_STACK.length;c<
g;c++)if(l=G[N.SC_STACK[c]])F=y(F,l.conf.spreadFactor),F=l.getLogicalSpace(a(F,{}),k,q),r+=this.getSpaceTaken(F);this.updateEffectivePlotArea(v,p,r);h.node.logicArea=p;return h.bound=v};N.prototype.draw=function(){var v=this.childTextConf,k=this.conf.bound.style||{},q=this.compositionsByCategory,h,l,G,F,p,y,r;3<=arguments.length?(G=arguments[1],p=arguments[2]):2<=arguments.length&&(p=arguments[1]);h=p.parentLayer;F=p.componentPool;y=F.getKeys();this.getLogicalSpace(G,p);G=this._lSpace;r=F.getComponent(this._id,
y.KEY_GROUP);v=r("legend-body",h).attr({transform:"t0,0"}).css(v.style);r=F.getComponent(this._id,y.KEY_RECT);this.bound=k=r(v).attr(G.bound).css(k);p.colorRange=this.colorRange;p.parentLayer=v;F=0;for(y=N.DARW_STACK.length;F<y;F++)(l=q[N.DARW_STACK[F]])&&l.draw(p);p.moveInstructions&&v.attr({transform:p.moveInstructions});return{bound:k,group:v}};R.prototype=Object.create(N.prototype);R.prototype.constructor=R;R.prototype.getCompositionPlotAreaFor=function(v){var k;k=a(v,{});return function(q,h){q=
q||{};k.x+=q.width||0;k.width=v.width*h;return k}};R.prototype.updateEffectivePlotArea=function(v,k,q){var h=this.conf.padding;k.width=q;v.width=q+2*h.h};R.prototype.getSpaceTaken=function(v){return v.width};I.prototype.constructor=I;I.prototype.getEffectivePlotArea=function(v){var k=this.conf.padding;v.height-=2*k.v;v.width-=2*k.h;v.x+=k.h;v.y+=k.v;this.node=[];return v};I.prototype.getLogicalSpace=function(v,k,q){var h=this._lSpace,l=this.conf,G=l.padding,F,p,y=[],r,c,g,d,e,E=0,B,x,C;e=k.componentPool.getChart();
var J=[];if(h&&!q)return h.isImpure=!0,h;h=k.colorRange;k=k.smartLabel;q=h.getCumulativeValueRatio();F=h.colorRange;h=this._lSpace={bound:{height:0,width:0},node:{logicArea:void 0,smartTexts:[]}};d=h.node.smartTexts;r=a(v,{});r=this.getEffectivePlotArea(r);k.useEllipsesOnOverflow(e.config.useEllipsesWhenOverflow);l=a(l.style,{});z(this._metaStyle=l);k.setStyle(l);e=k.getSmartText("W");p=0;for(l=F.length;p<l;p++)(c=F[p].label)?(E++,J.push({oriIndex:p,label:c})):d[p]=void 0;l=J.length;if(0===l)return{height:0,
width:0};c=g=1<l?(q[J[l-1].oriIndex]-q[J[0].oriIndex])/2*r.width/100:Math.max(q[J[0].oriIndex],100-q[J[0].oriIndex])/2*r.width/100;E=k.getSmartText(J[0].label,c,r.height);E.x=q[J[0].oriIndex]*r.width/100;p=E.x+E.width;y.push(E.height);d[J[0].oriIndex]=E;E=k.getSmartText(J[l-1].label,c,r.height);E.x=q[J[l-1].oriIndex]*r.width/100;F=E.x-E.width;y.push(E.height);d[J[l-1].oriIndex]=E;x=p;for(p=1;p<l-1;p++)c=J[p].label,C=J[p].oriIndex,E=void 0,g=p+1===l-1?F:q[J[p+1].oriIndex]*r.width/100,B=q[J[p].oriIndex]*
r.width/100,g=Math.min(B-x,g-B),g>2*e.width&&(E=k.getSmartText(c,g,r.height),E.x=q[C]*r.width/100,x=g,y.push(E.height)),d[J[p].oriIndex]=E;y=Math.max.apply(Math,y);r.height=y;v.height=y+2*G.v;h.node.logicArea=r;return h.bound=v};I.prototype.draw=function(){var v,k,q=this.conf;k=q.bound&&q.bound.style||{stroke:"none"};var h,l,G,F,p,y,r,c;2<=arguments.length?(l=arguments[0],F=arguments[1]):1<=arguments.length&&(F=arguments[0]);v=F.parentLayer;F.colorRange.getCumulativeValueRatio();h=F.componentPool;
p=h.getKeys();this.getLogicalSpace(l,F);G=this._lSpace;l=G.node.logicArea;F=G.node.smartTexts;c=h.getComponent(this._id,p.KEY_GROUP);v=c("legend-labels",v);c=h.getComponent(this._id,p.KEY_RECT);this.bound=k=c(v).attr(G.bound).css(k);c=h.getComponent(this._id,p.KEY_TEXT,!0);p=0;for(G=F.length;p<G;p++)if(h=F[p])y=l.y+h.height/2,r=p===G-1?l.x+h.x-h.width/2:p?l.x+h.x:l.x+h.x+h.width/2,this.node.push(c({},v).attr({text:h.text,x:r,y:y,lineHeight:this._metaStyle.lineHeight,fill:q.style.fill}).transform("R0"));
return{group:v,bound:k,node:this.node}};M.prototype=Object.create(I.prototype);M.prototype.constructor=M;M.prototype.getLogicalSpace=function(c,k,q){var h=this._lSpace,l=this.conf,G=l.padding,F,p,y=[],r,g,d,E,e,B=0,x,J,C;e=k.componentPool.getChart();var n=[];if(h&&!q)return h.isImpure=!0,h;h=k.colorRange;k=k.smartLabel;q=h.getCumulativeValueRatio();F=h.colorRange;h=this._lSpace={bound:{height:0,width:0},node:{logicArea:void 0,smartTexts:[]}};E=h.node.smartTexts;r=a(c,{});r=this.getEffectivePlotArea(r);
k.useEllipsesOnOverflow(e.config.useEllipsesWhenOverflow);l=a(l.style,{});z(this._metaStyle=l);k.setStyle(l);e=k.getSmartText("W");p=0;for(l=F.length;p<l;p++)(g=F[p].label)?(B++,n.push({oriIndex:p,label:g})):E[p]=void 0;l=n.length;if(0===l)return{height:0,width:0};g=d=1<l?(q[n[l-1].oriIndex]-q[n[0].oriIndex])/2*r.height/100:Math.max(q[n[0].oriIndex],100-q[n[0].oriIndex])/2*r.height/100;B=k.getSmartText(n[0].label,g,r.width);B.y=q[n[0].oriIndex]*r.height/100;p=B.y+B.width;y.push(B.height);E[n[0].oriIndex]=
B;B=k.getSmartText(n[l-1].label,g,r.width);B.y=q[n[l-1].oriIndex]*r.height/100;F=B.y-B.width;y.push(B.height);E[n[l-1].oriIndex]=B;J=p;for(p=1;p<l-1;p++)g=n[p].label,C=n[p].oriIndex,B=void 0,d=p+1===l-1?F:q[n[p+1].oriIndex]*r.height/100,x=q[n[p].oriIndex]*r.height/100,d=Math.min(x-J,d-x),d>2*e.width&&(B=k.getSmartText(g,d,r.width),B.y=q[C]*r.height/100,J=d,y.push(B.height)),E[n[p].oriIndex]=B;y=Math.max.apply(Math,y);r.width=y;c.width=y+2*G.v;h.node.logicArea=r;return h.bound=c};M.prototype.draw=
function(){var c,k,q=this.conf;k=q.bound&&q.bound.style||{stroke:"none"};var h,l,G,F,p,y,r,g;2<=arguments.length?(l=arguments[0],F=arguments[1]):1<=arguments.length&&(F=arguments[0]);c=F.parentLayer;F.colorRange.getCumulativeValueRatio();h=F.componentPool;p=h.getKeys();this.getLogicalSpace(l,F);G=this._lSpace;l=G.node.logicArea;F=G.node.smartTexts;g=h.getComponent(this._id,p.KEY_GROUP);c=g("legend-labels",c);g=h.getComponent(this._id,p.KEY_RECT);this.bound=k=g(c).attr(G.bound).css(k);g=h.getComponent(this._id,
p.KEY_TEXT,!0);p=0;for(G=F.length;p<G;p++)if(h=F[p])y=l.x+h.height/2,r=p===G-1?l.y+h.y-h.width/2:p?l.y+h.y:l.y+h.y+h.width/2,this.node.push(g({},c).attr({text:h.text,x:y,y:r,lineHeight:this._metaStyle.lineHeight,fill:q.style.fill}).transform("R270,"+y+","+r));return{group:c,bound:k,node:this.node}};u.prototype=Object.create(I.prototype);u.prototype.constructor=u;u.prototype.getLogicalSpace=function(c,k,q){var h=this._lSpace,l=this.conf,G=l.padding,F=k.componentPool.getChart(),p,y,r,g,d,E,B=[],e,x,
J,C;if(h&&!q)return h.isImpure=!0,h;h=k.colorRange;k=k.smartLabel;q=h.colorRange;r=h.getCumulativeValueRatio();h=this._lSpace={bound:{height:0,width:0},node:{logicArea:void 0,smartTexts:[]}};C=h.node.smartTexts;x=a(c,{});x.height-=2*G.v;x.width-=2*G.h;x.x+=G.h;x.y+=G.v;k.useEllipsesOnOverflow(F.config.useEllipsesWhenOverflow);l=a(l.style,{});z(this._metaStyle=l);k.setStyle(l);F=k.getSmartText("W");l=q.length;E=(r[l-1]-r[0])/2*x.width/100;p=q[0].displayValue;p=k.getSmartText("string"!==typeof p&&void 0!==
p&&p.toString()||p,E,x.height);p.x=r[0]*x.width/100;y=p.x+p.width;B.push(p.height);C[0]=p;p=k.getSmartText(q[l-1].displayValue,E,x.height);p.x=r[l-1]*x.width/100;E=p.x-p.width;B.push(p.height);C[l-1]=p;e=y;for(y=1;y<l-1;y++)p=void 0,J=q[y].displayValue,g=y+1===l-1?E:r[y+1]*x.width/100,d=r[y]*x.width/100,g=Math.min(d-e,g-d),g>1.5*F.width&&(p=k.getSmartText(J,2*g,x.height),p.x=r[y]*x.width/100,e=g,B.push(p.height)),C[y]=p;B=Math.max.apply(Math,B);x.height=B;c.height=B+2*G.v;h.node.logicArea=x;return h.bound=
c};u.prototype.draw=function(){var c=this.conf,k=c.bound&&c.bound.style||{stroke:"none"},q,h,l,G,F,p,y,r,g;2<=arguments.length?(F=arguments[0],y=arguments[1]):1<=arguments.length&&(y=arguments[0]);G=y.parentLayer;h=y.colorRange.getCumulativeValueRatio();l=y.componentPool;q=l.getKeys();this.getLogicalSpace(F,y);p=this._lSpace;F=p.node.logicArea;y=p.node.smartTexts;g=l.getComponent(this._id,q.KEY_GROUP);G=g("legend-values",G);g=l.getComponent(this._id,q.KEY_RECT);this.bound=k=g(G).attr(p.bound).css(k);
g=l.getComponent(this._id,q.KEY_TEXT,!0);q=0;for(p=h.length;q<p;q++)if(r=y[q])h=F.y+r.height/2,l=q===p-1?F.x+r.x-r.width/2:q?F.x+r.x:F.x+r.x+r.width/2,g({},G).attr({text:r.text,x:l,y:h,lineHeight:this._metaStyle.lineHeight,fill:c.style.fill});return{group:G,bound:k}};A.prototype=Object.create(u.prototype);A.prototype.constructor=A;A.prototype.getLogicalSpace=function(c,k,q){var h=this._lSpace,l=this.conf,G=l.padding,F=k.componentPool.getChart(),p,y,r,g,d,E,B=[],e,x,J,C;if(h&&!q)return h.isImpure=
!0,h;h=k.colorRange;k=k.smartLabel;q=h.colorRange;y=h.getCumulativeValueRatio();h=this._lSpace={bound:{height:0,width:0},node:{logicArea:void 0,smartTexts:[]}};C=h.node.smartTexts;d=a(c,{});d.height-=2*G.v;d.width-=2*G.h;d.x+=G.h;d.y+=G.v;k.useEllipsesOnOverflow(F.config.useEllipsesWhenOverflow);l=a(l.style,{});z(l);k.setStyle(this._metaStyle=l);J=k.getSmartText("W");F=q.length;E=(y[F-1]-y[0])/2*d.height/100;l=k.getSmartText(q[0].displayValue,d.width,E);l.y=y[0]*d.height/100;p=l.y+l.width;B.push(l.width);
C[0]=l;l=k.getSmartText(q[F-1].displayValue,d.width,E);l.y=y[F-1]*d.height/100;E=l.y-l.height;B.push(l.width);C[F-1]=l;e=p;for(p=1;p<F-1;p++)l=void 0,x=q[p].displayValue,r=p+1===F-1?E:y[p+1]*d.height/100,g=y[p]*d.height/100,r=Math.min(g-e,r-g),r>2*J.height&&(l=k.getSmartText(x,d.width,2*r),l.y=y[p]*d.height/100,e=r,B.push(l.width)),C[p]=l;B=Math.max.apply(Math,B);d.width=B;c.width=B+2*G.h;h.node.logicArea=d;return h.bound=c};A.prototype.draw=function(){var c,k,q=this.conf;k=q.bound&&q.bound.style||
{stroke:"none"};var h,l,G,F,p,y,r,g;2<=arguments.length?(h=arguments[0],G=arguments[1]):1<=arguments.length&&(G=arguments[0]);c=G.parentLayer;F=G.colorRange.getCumulativeValueRatio();p=G.componentPool;y=p.getKeys();this.getLogicalSpace(h,G);l=this._lSpace;h=l.node.logicArea;G=l.node.smartTexts;g=p.getComponent(this._id,y.KEY_GROUP);c=g("legend-values",c);g=p.getComponent(this._id,y.KEY_RECT);this.bound=k=g(c).attr(l.bound).css(k);g=p.getComponent(this._id,y.KEY_TEXT,!0);p=0;for(y=F.length;p<y;p++)if(F=
G[p])l=h.x+F.width/2,r=p===y-1?h.y+F.y-F.height/2:p?h.y+F.y:h.y+F.y+F.height/2,g({},c).attr({text:F.text,x:l,y:r,lineHeight:this._metaStyle.lineHeight,fill:q.style.fill});return{group:c,bound:k}};m.prototype.constructor=m;m.prototype.addCompositions=function(c,k){this.compositionsByCategory[k]=c};m.prototype.getLogicalSpace=function(c,k,q){k=this._lSpace;var h=this.conf,l=h.padding,G,F;F=h.legendAxisHeight;var p=this.compositionsByCategory,y;y=0;if(k&&!q)return k.isImpure=!0,k;k=this._lSpace={bound:{height:0,
width:0},node:{logicArea:void 0}};q=a(c,{});q.height-=2*l.v;q.width-=2*l.h;q.x+=l.h;q.y+=l.v;h=F/2+h.line.offset;G=F/2;if(p=p.RANGE)y=p.sliders[!1],y=y.conf.outerCircle.rFactor*F,G+=y=Math.max(y/2-F/2,0);q.y+=y;q.height=F=G+h+y;c.height=F+2*l.v;k.node.logicArea=q;return k.bound=c};m.prototype.getDrawableAxisArea=function(c){var k=this.conf;return{x:c.x,y:c.y,width:c.width,height:k.legendAxisHeight,r:k.legendAxisHeight/2}};m.prototype.preDrawingRangeParam=function(c){return{y:c.y+c.height/2,calculationBase:c.height,
rangeStart:c.x,rangeEnd:c.x+c.width,prop:"y"}};m.prototype.getScaleMarkerPathStr=function(c,k){var q=a(c,{}),h=this.conf.line,l,G,F,p,y="";q.x+=q.r;q.width-=2*q.r;p=q.y+q.height;l=0;for(G=k.length;l<G;l++)F=k[l],F=q.x+F*q.width/100,y+="M"+F+","+(p-h.grooveLength)+"L"+F+","+(p+h.offset);q=""+("M"+q.x+","+(p+h.offset)+"L"+(q.x+q.width)+","+(p+h.offset));return y+q};m.prototype.getColorGradient=function(c){return{axis:c.getBoxFill(),shadow:e({FCcolor:{alpha:"25,0,0",angle:90,color:"000000,FFFFFF,FFFFFF",
ratio:"0,30,40"}})}};m.prototype.draw=function(){var c,k=this.conf,q=k.line,h=(k.bound||{}).style||{},l,G,F=this.compositionsByCategory,p,y,r,g,d,B;2<=arguments.length?(l=arguments[0],d=arguments[1]):1<=arguments.length&&(d=arguments[0]);c=d.parentLayer;p=d.colorRange;y=p.getCumulativeValueRatio();B=d.componentPool;r=B.getKeys();this.getLogicalSpace(l,d);g=this._lSpace;l=B.getComponent(this._id,r.KEY_GROUP);c=l("legend-axis",c);l=B.getComponent(this._id,r.KEY_RECT,!0);this.bound=l(c).attr(g.bound).css(h);
h=this.getDrawableAxisArea(g.node.logicArea);p=this.getColorGradient(p);k.style.fill=p.axis;k.shadow.style.fill=p.shadow;this.node=l(c).attr(h).css(k.style);this.shadow=l(c).attr(h).css(k.shadow.style);k=this.getScaleMarkerPathStr(h,y);l=B.getComponent(this._id,r.KEY_PATH);l("M0,0",c).attr({path:k}).css(q.style);for(G in F)switch(q=F[G],G){case "RANGE":r=this.preDrawingRangeParam(h),d[r.prop]=r[r.prop],d.key=r.prop,d.rCalcBase=r.calculationBase,d.parentLayer=c,q.draw(r.rangeStart,r.rangeEnd,d)}};
H.prototype=Object.create(m.prototype);H.prototype.constructor=H;H.prototype.getLogicalSpace=function(c,k,q){k=this._lSpace;var h=this.conf,l=h.padding,G,F;F=h.legendAxisHeight;var p=this.compositionsByCategory,y;y=0;if(k&&!q)return k.isImpure=!0,k;k=this._lSpace={bound:{height:0,width:0},node:{logicArea:void 0}};q=a(c,{});q.height-=2*l.v;q.width-=2*l.h;q.x+=l.h;q.y+=l.v;h=F/2+h.line.offset;G=F/2;if(p=p.RANGE)y=p.sliders[!1],y=y.conf.outerCircle.rFactor*F,G+=y=Math.max(y/2-F/2,0);q.x+=y;q.width=F=
G+h+y;c.width=F+2*l.v;k.node.logicArea=q;return k.bound=c};H.prototype.getDrawableAxisArea=function(c){var k=this.conf;return{x:c.x,y:c.y,width:k.legendAxisHeight,height:c.height,r:k.legendAxisHeight/2}};H.prototype.getScaleMarkerPathStr=function(c,k){var q=a(c,{}),h=this.conf.line,l,G,F,p,y="";q.y+=q.r;q.height-=2*q.r;p=q.x+q.width;l=0;for(F=k.length;l<F;l++)G=k[l],G=q.y+G*q.height/100,y+="M"+(p-h.grooveLength)+","+G+"L"+(p+h.offset)+","+G;q=""+("M"+(p+h.offset)+","+q.y+"L"+(p+h.offset)+","+(q.y+
q.height));return y+q};H.prototype.getColorGradient=function(c){return{axis:c.getBoxFill(!0),shadow:e({FCcolor:{alpha:"25,0,0",angle:360,color:"000000,FFFFFF,FFFFFF",ratio:"0,30,40"}})}};H.prototype.preDrawingRangeParam=function(c){return{x:c.x+c.width/2,calculationBase:c.width,rangeStart:c.y,rangeEnd:c.y+c.height,prop:"x"}};D.prototype.constructor=D;D.prototype.initRange=function(c,k){this.extremes[+c.sliderIndex]=k};D.prototype.updateRange=function(c,k){var q=c.sliderIndex;this.sliders[!q].updateSwingRange(q,
k)};D.prototype.reset=function(){var c={};c.conf=this.conf;c.sliderGroup=this;this.sliders[!1]=new f(!1,c,this._id+"_0");this.sliders[!0]=new f(!0,c,this._id+"_1");this.draw.apply(this,this._drawParams)};D.prototype.clearListeners=function(){this.callbacks.length=0};D.prototype.draw=function(c,k,q){var h=this.sliders,l=h[!1],h=h[!0],G=q.colorRange,F=G.colorRange,p=this._fcChart=q.componentPool.getChart();this.getValueFormPixel=function(h,l,q,k){var p=(l-h)/(k-q);this.getValueFormPixel=function(l){return h+
p*l}};this.updateWhenInMove=function(h,l){this.updateWhenInMove=function(q,k){var p=this.extremes,p=this.getValueFormPixel(q.sliderIndex?p[1]-p[0]+k:k);return p=l?parseFloat(p).toFixed(2)+"%":h.legendValue(p)}};this._drawParams=[c,k,q];this.updateWhenInMove(p.components.numberFormatter,G.mapByPercent);c=l.draw(c,F[0].displayValue,q[q.key],q);c=h.draw(k,F[F.length-1].displayValue,q[q.key],q);l.swing=this.extremes.slice(0);h.swing=this.extremes.slice(0);this.getValueFormPixel(F[0].value,F[F.length-
1].value,this.extremes[0],this.extremes[1]);return c};D.prototype.registerListener=function(c,k,q){this.callbacks.push({fn:c,context:k,params:q||[]})};D.prototype.updateWhenInRest=function(c,k){var q=this.sliders,h=this.extremes,l=c.sliderIndex,G,F=this.callbacks,p,y;l?(G=q[!l].currPos,q=h[1]-h[0]+k):(G=k,q=h[1]-h[0]+q[!l].currPos);h=0;for(l=F.length;h<l;h++)p=F[h],y=p.params.slice(0),y.unshift(this.getValueFormPixel(q)),y.unshift(this.getValueFormPixel(G)),p.fn.apply(p.context,y)};D.prototype.dragStarted=
function(c){var k=this.sliders,q=this.extremes,h=c.conf,l=this._fcChart;Q.raiseEvent("legendpointerdragstart",{pointerIndex:+c.sliderIndex,pointers:[{value:this.getValueFormPixel(k[!1].currPos)},{value:this.getValueFormPixel(q[1]-q[0]+k[!0].currPos)}],legendPointerHeight:h.outerRadius,legendPointerWidth:h.innerRadius,outerRadius:h.outerRadius,innerRadius:h.innerRadius},l.chartInstance,[l.id])};D.prototype.dragCompleted=function(c,k,q){var h=this.sliders,l=this.extremes,G=c.conf,F=this.getValueFormPixel(h[!1].currPos),
h=this.getValueFormPixel(l[1]-l[0]+h[!0].currPos),p=this._fcChart,y;c.sliderIndex?(y=F,q=this.getValueFormPixel(l[1]-l[0]+q)):(y=this.getValueFormPixel(q),q=h);k&&Q.raiseEvent("legendrangeupdated",{previousMinValue:F,previousMaxValue:h,minValue:y,maxValue:q},p.chartInstance,[p.id]);Q.raiseEvent("legendpointerdragstop",{pointerIndex:+c.sliderIndex,pointers:[{value:F},{value:h}],legendPointerHeight:G.outerRadius,legendPointerWidth:G.innerRadius,outerRadius:G.outerRadius,innerRadius:G.innerRadius},p.chartInstance,
[p.id])};f.prototype.constructor=f;f.prototype.updateSwingRange=function(c,k){this.swing[+c]=k};f.prototype.draw=function(c,k,q,h){var l=h.parentLayer,G=this.conf,F=G.outerCircle,p=G.innerCircle,y=Math.ceil(F.rFactor*h.rCalcBase/2),r=Math.ceil(p.rFactor*h.rCalcBase/2),g=y-r,d=this.rangeGroup,B=this.sliderIndex,e,x,J=h.componentPool,a=J.getKeys();G.outerRadius=y;G.innerRadius=r;this._scaleVal=k;p.style["stroke-width"]=g;g=Math.ceil(F.style["stroke-width"]/2);r+=g;x=J.getComponent(this._id,a.KEY_GROUP);
l=this.node=x("fc-gl-slider",l).attr({cursor:"pointer",transform:"t0,0"});"x"===h.key?c=e=c+(B?-r:+r):(e=q,c=q=c+(B?-r:+r));d.initRange(this,c);x=J.getComponent(this._id,a.KEY_CIRCLE,!0);x(l).attr({cx:q,cy:e,r:y}).css(F.style);x(l).attr({cx:q,cy:e,r:r}).css(p.style);k=this.tracker=x(l).attr({cx:q,cy:e,r:y+5,ishot:!0,fill:E,stroke:0,cursor:"pointer"}).trackTooltip(G.showTooltip?!0:!1).tooltip(k,null,null,!0);this._dragAPI=h=this.getDragAPI("x"===h.key);k.undrag();k.drag(h.dragging,h.dragStart,h.dragEnd);
return{translateAscending:y+g}};f.prototype.getDragAPI=function(c){var k=this,q=k.node,h=k.sliderIndex,l=k.rangeGroup,G,F,p,y=k.conf.innerRadius,r;return{dragging:function(g,d){var B,E,e,x;g.stopPropagation();g.preventDefault();e=c?d[1]:d[0];h?(B=G[0]-G[1]+y,E=0):(B=0,E=G[1]-G[0]-y);x=k.currPos+e;x<B?e+=B-x:x>E&&(e-=x-E);q.attr({transform:c?"t0,"+(k.currPos+e):"t"+(k.currPos+e)+",0"});F=e;p&&clearTimeout(p);p=setTimeout(function(){l.updateWhenInRest(k,k.currPos+e)},100);k.tracker.tooltip(l.updateWhenInMove(k,
k.currPos+e),null,null,!0);return r=!0},dragStart:function(h){h.stopPropagation();h.preventDefault();q.attr({transform:c?"t0,"+k.currPos:"t"+k.currPos+",0"});G=G||k.swing;r=!1;l.dragStarted(k)},dragEnd:function(){var q;l.dragCompleted(k,r,k.currPos+F);r&&(p&&clearTimeout(p),p=setTimeout(function(){l.updateWhenInRest(k,k.currPos)},100),k.currPos+=F,q=G[+h]+k.currPos,l.updateRange(k,q))}}};V.prototype.constructor=V;V.prototype.getValueRatio=function(){var c=this.colorRange,k,q,h=c.length,l=this.valueRatio,
G=c[0].value,F=c[h-1].value-G,p=0;if(l)return l;l=this.valueRatio=[];for(q=0;q<h;q++)k=c[q],k=(k.value-G)/F,l.push(100*(k-p)),p=k;return l};V.prototype.getCumulativeValueRatio=function(){var c=this.colorRange,k,q,h=c.length,l=c[0].value,G=c[h-1].value,F=[];for(q=0;q<h;q++)k=c[q],F.push((k.value-l)/(G-l)*100);return F};V.prototype.getBoxFill=function(c){var k=this.colorRange,q,h=k.length,l=[],G;G=c?90:0;for(q=0;q<h;q++)c=k[q],l.push(c.code);k={FCcolor:{alpha:"100,100,100",angle:G,color:l.join(","),
ratio:this.getValueRatio().join(",")}};return e(k)};V.prototype.getColorByValue=function(c){var k=this.values,q=this.colorRange,h,l,G,F;if(void 0!==c&&null!==c){l=0;for(h=k.length;l<h;l++)if(c===k[l]){F=q[l].code;break}else if(!l&&c<k[l]){G=!0;break}else if(l===h-1&&c>k[l]){G=!0;break}else if(c>k[l]&&c<k[l+1]){k=q[l];h=q[l+1];q=k.value;l=B(k.code);k=h.value;h=B(h.code);F=F=void 0;F=k-q;F=[Math.round(l[0]+(h[0]-l[0])/F*(c-q)),Math.round(l[1]+(h[1]-l[1])/F*(c-q)),Math.round(l[2]+(h[2]-l[2])/F*(c-q))];
F=da(F);break}if(!G)return F}};K.prototype=Object.create(aa.prototype);K.prototype.constructor=K;Y.register("component",["gradientLegend","gradientLegend",{pIndex:1,enabled:!1,init:function(c){function k(l){q.data=c.chart.jsonData.colorrange;(F=q.nData=C.legacyDataParser(q.data,l))?(q.drawOptions={smartLabel:h.linkedItems.smartLabel,colorRange:q.colorRange=G=new V(F,l,p),maxOtherSide:l.maxOtherSide},q._dontPlot=!1,G&&G._preparationGoneWrong&&(q._dontPlot=!0),q._recalculateLogicalSpace=!0,q._configure()):
q._dontPlot=!0}var q=this,h=c.chart,l,G,F,p;C.init(c);p=q._chart=c.chart;q._cpool=J(p);if(!(l=c.dataExtremes))return k;k(l)},_configure:function(){var c=this._chart,k=c.jsonData.chart,q=this.conf={},h=k.outcnvbasefont,l=k.outcnvbasefontsize,G=k.outcnvbasefontcolor,c=c.config.dataLabelStyle,F,p,y,r,g,B,E;q.caption=w(k.legendcaption);q.legendPosition=w(k.legendposition,"bottom").toLowerCase();q.showLegend=d(k.showlegend,1);q.interactiveLegend=d(k.interactivelegend,1);q.showLegendLabels=d(k.showlegendlabels,
1);F=k.legenditemfontcolor||G;p=k.legenditemfont||h;y=k.legenditemfontsize||l;r=d(k.legenditemfontbold,0);G=k.legendcaptionfontcolor||G;h=k.legendcaptionfont||h;l=k.legendcaptionfontsize||l;g=d(k.legendcaptionfontbold,1);E=(B=k.legendaxisbordercolor?t(P(k.legendaxisbordercolor)):void 0)?d(k.legendaxisborderalpha,100)/100:void 0;q.axisTextItemConf={style:{fill:F?T(w(F)):c.color,fontFamily:p?w(p):c.fontFamily,fontSize:y?d(y):c.fontSize.match(/\d+/)[0],fontWeight:r?"bold":c.fontWeight}};q.legendCaptionConf=
{style:{fill:G?T(w(G)):c.color,fontFamily:h?w(h):c.fontFamily,fontSize:l?d(l):c.fontSize.match(/\d+/)[0],fontWeight:g?"bold":c.fontWeight,fontStyle:"normal"}};q.legendAxisConf={legendAxisHeight:11,style:{stroke:B,"stroke-opacity":E},line:{style:{stroke:T(w(k.legendscalelinecolor,"FFF8E9"),d(k.legendscalelinealpha,100)),"stroke-width":d(k.legendscalelinethickness)}}};q.sliderGroupConf={showTooltip:d(k.showtooltip,1),outerCircle:{rFactor:d(k.sliderdiameterfactor),style:{stroke:T(w(k.legendpointerbordercolor,
"757575"),d(k.legendpointerborderalpha,100))}},innerCircle:{rFactor:d(k.sliderholediameterfactor),style:{stroke:T(w(k.legendpointercolor,"FFFFFF"),d(k.legendpointeralpha,100))}}};q.legendCarpetConf={spreadFactor:d(k.legendspreadfactor),allowDrag:!!d(k.legendallowdrag,0),captionAlignment:w(k.legendcaptionalignment,"center"),style:{fill:T(w(k.legendbgcolor,"e4d9c1"),d(k.legendbgalpha,100)),stroke:T(w(k.legendbordercolor,"c4b89d"),d(k.legendborderalpha,100)),"stroke-width":d(k.legendborderthickness,
1)}}},postConfigureInit:function(){var c=this.conf,k,q,h,l,G,F,p;this.elem={};c.caption&&(q=a(C.getDefaultConf("legendCaptionConf"),c.legendCaptionConf),k=new L(c.caption,q));c.interactiveLegend&&(q=a(C.getDefaultConf("sliderGroupConf"),c.sliderGroupConf),this.elem.sGroup=l=new D(q),this.listeners&&0<this.listeners.length&&l.registerListener.apply(l,this.listeners));q=a(C.getDefaultConf("legendCarpetConf"),c.legendCarpetConf);"bottom"===c.legendPosition?(this.drawOptions.refSideKey="canvasWidth",
this.drawOptions.refOffsetKey="canvasLeft",q=new O(q),G=a(C.getDefaultConf("axisTextItemConf"),c.axisTextItemConf),F=new N(this.drawOptions.colorRange,C.getDefaultConf("legendBodyConf"),G),h=new m(a(C.getDefaultConf("legendAxisConf"),c.legendAxisConf)),c.showLegendLabels&&(p=new I(G)),c=new u(G)):(this.drawOptions.refSideKey="canvasHeight",this.drawOptions.refOffsetKey="canvasTop",G=a(C.getDefaultConf("axisTextItemConf"),c.axisTextItemConf),q=new S(q),F=new R(this.drawOptions.colorRange,C.getDefaultConf("legendBodyConf"),
G),h=new H(a(C.getDefaultConf("legendAxisConf"),c.legendAxisConf)),c.showLegendLabels&&(p=new M(G)),c=new A(G));l&&h.addCompositions(l,"RANGE");p&&F.addCompositions(p,"LEGEND_LABEL");F.addCompositions(h,"LEGEND_AXIS");F.addCompositions(c,"AXIS_VALUE");k&&q.addCompositions(k,"CAPTION");q.addCompositions(F,"LEGEND_BODY");this.elem.gl=new K(q,this._cpool)},notifyWhenUpdate:function(c,k,q){var h;(h=this.elem&&this.elem.sGroup)?h.registerListener(c,k,q):this.listeners=[c,k,q]},dispose:function(){this.elem&&
this.elem.gl&&this.elem.gl.dispose();this.elem={}},getLogicalSpace:function(c){var k=this.conf,q={height:0,width:0},h=this.drawOptions,l=this._chart;if(!this._recalculateLogicalSpace)return k=h.refSideKey,h=h.refOffsetKey,this.drawOptions.refSide=l.config[k],this.drawOptions.refOffset=l.config[h],(this._logicalArea=this.elem.gl.getLogicalSpace(this.drawOptions,!0))||q;if(this._dontPlot)return q;this._recalculateLogicalSpace=!1;this.postConfigureInit();if(!k.showLegend)return q;k=h.refSideKey;h=h.refOffsetKey;
this.drawOptions.refSide=l.config[k];this.drawOptions.refOffset=l.config[h];this.drawOptions.maxOtherSide=c||this.drawOptions.maxOtherSide;return this.elem.gl&&(this._logicalArea=this.elem.gl.getLogicalSpace(this.drawOptions,!0))},resetLegend:function(){var c;(c=this.elem&&this.elem.sGroup)&&c.reset()},clearListeners:function(){var c;(c=this.elem&&this.elem.sGroup)&&c.clearListeners()},draw:function(c,k,q){var h=this.conf;this._dontPlot||(this._cpool.init(q.paper),h.showLegend?(this.drawOptions.paper=
q.paper,this.drawOptions.parentGroup=q.parentGroup,this.drawOptions.x=c,this.drawOptions.y=k,this.drawOptions.maxOtherSide=this.drawOptions.maxOtherSide||q.maxOtherSide,c=this.elem.gl.draw(this.drawOptions),c=c.getBBox(),h.xPos=c.x,h.yPos=c.y,h.height=c.height,h.width=c.width,this.enabled=!0):this.enabled=!1)}}])}]);Y.register("module",["private","modules.renderer.js-msstepline",function(){var a=this.hcLib,b=a.chartAPI,z=a.pluckNumber,U=a.pluck,aa=this.window.Image,O=a.preDefStr,S=a.schedular,L=O.line,
N=a.toRaphaelColor,R=a.getFirstValue,I=O.configStr,M=O.animationObjStr,u=O.dataLabelStr,A=a.BLANKSTRING,m=O.hiddenStr,H=Math.max,D=a.TOUCH_THRESHOLD_PIXELS,f=a.CLICK_THRESHOLD_PIXELS,V=a.hasTouch?D:f,K=O.ROUND,Q=O.miterStr;b("msstepline",{friendlyName:"Multi-series Step Line Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:"msstepline",defaultPlotShadow:1,applicableDSList:{msstepline:!0}},b.mscartesian,{drawverticaljoins:1,useforwardsteps:1,zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0,
enablemousetracking:!0},b.areabase);Y.register("module",["private","modules.renderer.js-dataset-group-msstepline",function(){Y.register("component",["datasetGroup","msstepline",{},"line"])}]);Y.register("component",["dataset","MSStepLine",{type:"msstepline",_addLegend:function(){var a=this.config,d=this.chart.components.legend,w=z(a.drawanchors,1),a={enabled:a.includeinlegend,type:L,drawLine:U(a.drawLine,!0),fillColor:N({color:a.anchorbgcolor,alpha:a.anchorbgalpha}),strokeColor:N({color:a.anchorbordercolor,
alpha:"100"}),rawFillColor:a.anchorbgcolor,rawStrokeColor:a.anchorbordercolor,anchorSide:w?a.anchorsides:0,strokeWidth:a.anchorborderthickness,label:R(this.JSONData.seriesname),lineWidth:a.linethickness};this.legendItemId=d.addItems(this,this.legendInteractivity,a)},draw:function(){var n=this,d=n.JSONData,w=n.chart,e=w.getJobList(),f=w.components,P=n.config,t=n.index||n.positionIndex,T=w.config,da,B,x=f.paper,c=f.xAxis[0],E=n.yAxis,C,la,g=w.graphics;da=g.datalabelsGroup;var J,W,v,k,q,h,l=n.components.data,
G,F=n.components.removeDataArr||[],p=F.length,y=P.linethickness,r=n.graphics.container,ea=T.connectnulldata,Ka=g.datasetGroup,Ja,g=P.shadow,ba,b=n.graphics.dataLabelContainer,D={},Xa,Ra,D=w.get(I,M),z=D.dummyObj,R=D.animObj,ob=D.duration,O=n.components.pool||[],Na=function(){!1!==n.visible||!1!==n._conatinerHidden&&void 0!==n._conatinerHidden||(r.lineGroup.hide(),r.lineShadowGroup.hide(),r.anchorShadowGroup.hide(),r.anchorGroup.hide(),b&&b.hide(),n._conatinerHidden=!0)},pb=function(){Ka.lineConnector.attr({"clip-rect":null});
Ka.lineConnector.node&&Ka.lineConnector.node.removeAttribute("clip-path");!1!==n.visible&&(r.lineShadowGroup.show(),r.anchorShadowGroup.show(),r.anchorGroup.show(),b&&b.show())},ma=!0,Oa,Pa=E.getAxisBase(),Pa=E.yBasePos=E.getAxisPosition(Pa),Va=f.canvas.config.clip,f=Va["clip-canvas-init"].slice(0),Va=Va["clip-canvas"].slice(0),va=P.lineDashStyle,Y={color:P.linecolor,alpha:P.alpha},ta,Fa,wa,na,ka=[],pa=0,ia=[],ga=null,ra,fa=[],ha=!1,ca,ya=n.graphics.lineElement,xa=n.visible,X=P.drawverticaljoins,
ua=P.useforwardsteps,sa,za=D.animType,Ca=0,Ha,w=w.config.stepatmiddle?.5*c.getPVR():0,qa,Aa=T.canvasTop,Sa=T.canvasBottom;P.imagesLoaded=0;Ka.lineConnector=Ka.lineConnector||x.group("line-connector",Ka);r||(r=n.graphics.container={lineShadowGroup:x.group("connector-shadow",Ka.lineConnector),anchorShadowGroup:x.group("anchor-shadow",Ka.lineConnector),lineGroup:x.group(L,Ka.lineConnector),anchorGroup:x.group("anchors",Ka.lineConnector)},xa||(r.lineShadowGroup.hide(),r.anchorShadowGroup.hide(),r.lineGroup.hide(),
r.anchorGroup.hide()));l||(l=n.components.data=[]);b||(b=n.graphics.dataLabelContainer=n.graphics.dataLabelContainer||x.group(u,da),xa||b.hide());xa&&(r.lineShadowGroup.show(),r.anchorShadowGroup.show(),r.lineGroup.show(),r.anchorGroup.show(),b.show());da=c.getCategoryLen();for(B=0;B<da;B++)if(G=l[B])Ra=G.config,k=Ra.setValue,v=Ra.setLink,q=Ra.setLevelTooltext,D=Ra.anchorProps,Xa=D.symbol,ba=D.shadow,h=Ra.displayValue,W=G.graphics.element,sa=G.graphics.image,C=G.graphics.hotElement,la=G.graphics.label,
G||(G=l[B]={graphics:{}}),null===k?(fa.length=0,ea||(ga=null),W&&W.hide(),sa&&sa.hide(),la&&la.hide(),C&&C.hide()):(na={color:Ra.color,alpha:Ra.alpha},Oa=Ra.dashStyle,C=c.getAxisPosition(B),la=!n.visible&&ob?Pa:E.getAxisPosition(k),Ja=Ra.hoverEffects,D.isAnchorHoverRadius=Ja.anchorRadius,J=D.radius,qa=D.borderThickness,Ha=la-J-qa/2,J=la+J+qa/2,Ha<Aa&&(T.toleranceTop=H(T.toleranceTop||0,Aa-Ha)),J>Sa&&(T.toleranceBottom=H(T.toleranceBottom||0,J-Sa)),Ha=c.getLabel(B),J=T.showtooltip?Ra.toolText+(q?A:
Ra.toolTipValue):A,Ra.finalTooltext=J,q=Ra.eventArgs||(Ra.eventArgs={}),q.index=B,q.link=v,q.value=k,q.displayValue=h,q.categoryLabel=Ha,q.toolText=J,q.id=P.userID,q.datasetIndex=t,q.datasetName=d.seriesname,q.visible=xa,D.imageUrl?(Ra.anchorImageLoaded=!1,G._xPos=C,G._yPos=la,ba=new aa,ba.onload=this._onAnchorImageLoad(n,B,q,C,la),ba.onerror=this._onErrorSetter(n,B),ba.src=D.imageUrl,Ca++):(sa&&sa.hide(),k=[Xa[1]||2,C,la,D.radius,D.startAngle,D.dip],v={fill:N({color:D.bgColor,alpha:D.bgAlpha}),stroke:N({color:D.borderColor,
alpha:D.borderAlpha}),"stroke-width":D.borderThickness,visibility:D.radius?xa:m},W||(O.element&&O.element.length?W=G.graphics.element=O.element.shift():(W=G.graphics.element=x.polypath(r.anchorGroup),W.attr({polypath:k}))),W.show().animateWith(z,R,{polypath:k},ob,za,ma&&Na),W.attr(v).shadow(ba,r.anchorShadowGroup).data("hoverEnabled",Ja.enabled).data("eventArgs",q),ma=!1),ba=G.graphics.connector,Ja.enabled&&(k={polypath:[Ja.anchorSides||2,C,la,Ja.anchorRadius,Ja.startAngle,Ja.dip],fill:N({color:Ja.anchorColor,
alpha:Ja.anchorBgAlpha}),stroke:N({color:Ja.anchorBorderColor,alpha:Ja.anchorBorderAlpha}),"stroke-width":Ja.anchorBorderThickness},v={polypath:[D.sides,C,la,D.radius,D.startAngle,0],fill:N({color:D.bgColor,alpha:D.bgAlpha}),stroke:N({color:D.borderColor,alpha:D.borderAlpha}),"stroke-width":D.borderThickness},W&&W.data("anchorRadius",D.radius).data("anchorHoverRadius",Ja.anchorRadius).data("hoverEnabled",Ja.enabled).data("setRolloverAttr",k).data("setRolloutAttr",v).data("eventArgs",q)),Ra.trackerConfig||
(Ra.trackerConfig={}),Ra.trackerConfig.trackerRadius=H(D.radius,Ja&&Ja.anchorRadius||0,V)+(D.borderThickness||0)/2,wa=wa!==[N(na||Y),Oa||va].join(":"),null!==ga?(fa.length&&(ka=ka.concat(fa),fa.length=0),ka.join(A)||ka.push("M",ra,ga),ua?(ka.push("H",C-w),X?ka.push("V",la):ka.push("M",C-w,la),w&&ka.push("H",C)):(X?ka.push("V",la):ka.push("M",ra,la),ka.push("H",C)),wa&&(pa?ia=ia.concat(ka):(ba||(ba=G.graphics.connector=x.path(ka,r.lineGroup),ha=!0),ba.animateWith(z,R,{path:ka},ob,za,ma&&Na),ba.attr({"stroke-dasharray":Fa,
"stroke-width":y,stroke:ta,"stroke-linecap":K,"stroke-linejoin":2<y?K:Q}).shadow(ca,r.lineShadowGroup),ma=!1),ka=[]),wa||ba&&ba.hide()):fa.push("M",C,la),ra=C,ga=la,ta=N(na||Y),ca=na?{opacity:na&&na.alpha/100}:g,Fa=Oa||va,pa=void 0===U(Ra.color,Ra.alpha,Ra.dashed)?1:0,wa=[ta,Fa].join(":"),G._xPos=C,G._yPos=la,!D.imageUrl&&this.drawLabel(B));P.noOfImages=P.totalImages=Ca;0===Ca&&e.labelDrawID.push(S.addJob(n.drawLabel.bind(n),a.priorityList.label));ka.length&&(ia=ia.concat(ka));d={path:ia};v={"stroke-dasharray":va,
"stroke-width":y,stroke:N(Y),"stroke-linecap":K,"stroke-linejoin":2<=y?K:Q};ya||(ya=n.graphics.lineElement=x.path({path:ia},r.lineGroup),ha=!0);ya.show().animateWith(z,R,d,ob,za,ma&&Na);ya.attr(v).shadow(g,r.lineShadowGroup);ma=!1;ob&&xa&&ha&&(r.anchorGroup.hide(),r.lineShadowGroup.hide(),r.anchorShadowGroup.hide(),b.hide(),Ka.lineConnector.attr({"clip-rect":f}).animateWith(z,R,{"clip-rect":Va},ob,"normal",pb));for(B=0;B<p;B++)n._removeDataVisuals(F.shift());n.drawn=!0}},L,{drawverticaljoins:void 0,
useforwardsteps:void 0}])}]);Y.register("module",["private","modules.renderer.js-powercharts",function(){var a=this.hcLib,b=a.Raphael,z=a.pluckNumber,U=Math,aa=U.sin,O=U.cos,S=U.PI/180;a.eventList.chartupdated="FC_ChartUpdated";a.eventList.dataposted="FC_DataPosted";a.eventList.dataposterror="FC_DataPostError";a.eventList.datarestored="FC_DataRestored";b.addSymbol({resizeIcon:function(a,b,R){var I=z(R,15)/3,M=[];0>I&&(I=-I,R=-R,a+=R-I/2,b+=R-I/2);for(R=3;0<R;--R)M.push("M",a-I*R,b-3,"L",a-3,b-I*R);
return M},closeIcon:function(a,b,z){var I=1.3*z,M=43*S,u=48*S,A=a+I*O(M),M=b+I*aa(M),m=a+I*O(u),H=b+I*aa(u),u=.71*(z-2);z=.71*(z-2);I=["A",I,I,0,1,0,m,H];A=["M",A,M];A=A.concat(I);return A=A.concat(["M",a+u,b-z,"L",a-u,b+z,"M",a-u,b-z,"L",a+u,b+z])},configureIcon:function(a,b,z){--z;var I=.71*z,M=.71*(z+2),u=a-z,A=b-z,m=a+z;z=b+z;var H=a+.5,D=b+.5,f=a-.5,V=b-.5,K=u-2,Q=A-2,n=m+2,d=z+2,w=a+I,e=b+I,Z=a-I,I=b-I,P=a+M,t=b+M;a-=M;b-=M;return["M",u,D,"L",K,D,K,V,u,V,Z-.25,I+.25,a-.25,b+.25,a+.25,b-.25,
Z+.25,I-.25,f,A,f,Q,H,Q,H,A,w-.25,I-.25,P-.25,b-.25,P+.25,b+.25,w+.25,I+.25,m,V,n,V,n,D,m,D,w+.25,e-.25,P+.25,t-.25,P-.25,t+.25,w-.25,e+.25,H,z,H,d,f,d,f,z,Z+.25,e+.25,a+.25,t+.25,a-.25,t-.25,Z-.25,e-.25,"Z"]},axisIcon:function(a,b,z){--z;var I=.33*z,M=z/2,u=a-z,A=b-z,m=a+M;z=b+z;a-=M;M=b+I;b-=I;return["M",u,A,"L",m,A,m,z,u,z,"M",a,M,"L",m,M,"M",a,b,"L",m,b]},loggerIcon:function(a,b,z){--z;a-=z;b-=z;var I=a+2*z,M=a+2,u=I-2,A=b+2;z=A+z;var m=z+2;return["M",a,b,"L",I,b,I,A,u,A,u,z,I,z,I,m,a,m,a,z,M,
z,M,A,a,A,a,b]}});this.addEventListener("rendered",function(a){a=a.sender;var b=a.__state,z=a.jsVars&&a.jsVars.instanceAPI;a.disposed||b.listenersAdded||!z||"function"!==typeof z.getCollatedData||(a.addEventListener(["chartupdated","dataupdated","rendered"],function(a){delete a.sender.__state.hasStaleData}),b.listenersAdded=!0)})}]);Y.register("module",["private","modules.renderer.js-spline",function(){var a=Math.round,b=this.hcLib.chartAPI;b("spline",{friendlyName:"Spline Chart",standaloneInit:!0,
singleseries:!0,creditLabel:!1,defaultDatasetType:"msspline",defaultPlotShadow:1,applicableDSList:{spline:!0},getSplineExtremities:function(a,b,aa,O,S){var L=[],N=!1;O=O||0;for(S=S||{max:Number.MIN_VALUE,min:Number.MAX_VALUE};O<a.length;++O)if(N)if(isNaN(a[O].config.setValue)||null===a[O].config.setValue){if(!aa)break}else L.push({index:O,y:a[O].config.setValue});else isNaN(a[O].config.setValue)||null===a[O].config.setValue||(N=!0,L.push({index:O,y:a[O].config.setValue}));2<L.length&&this.evalSplineExtremities(L,
b,S);O<a.length&&!aa&&this.getSplineExtremities(a,b,aa,O,S);return S},evalSplineExtremities:function(b,U,aa){var O={},S,L,N;for(L=0;L<b.length;++L)S=b[L].index,O["D"+S]=0;for(S=0;10>S;++S)for(L=0;L<b.length;++L)N=0===L?(3*(b[L+1].y-b[L].y)-O["D"+b[L+1].index])/2:L===b.length-1?(3*(b[L].y-b[L-1].y)-O["D"+b[L-1].index])/2:(3*(b[L+1].y-b[L-1].y)-O["D"+b[L+1].index]-O["D"+b[L-1].index])/4,O["D"+b[L].index]=N;U=a(U/(b.length-1));for(L=1;L<b.length;++L)this.getSegmentExtremities(L,b,O,aa,U)},getSegmentExtremities:function(a,
b,aa,O,S){var L,N,R,I,M;L=aa["D"+b[0].index];N=aa["D"+b[a].index];aa=b[0].y;R=3*(b[a].y-b[0].y)-2*L-N;a=2*(b[0].y-b[a].y)+L+N;b=O.max;N=O.min;for(I=0;I<=S;I++)M=I/S,M=aa+L*M+R*M*M+a*M*M*M,M<N&&(N=M),M>b&&(b=M);O.max=b;O.min=N}},b.sscartesian,{minimizetendency:0,zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0,enablemousetracking:!0},b.areabase)}]);Y.register("module",["private","modules.renderer.js-splinearea",function(){var a=this.hcLib,b=a.chartAPI;b("splinearea",{friendlyName:"Spline Area Chart",
standaloneInit:!0,hasLegend:!1,singleseries:!0,creditLabel:!1,defaultDatasetType:"mssplinearea",defaultPlotShadow:0},b.spline,{anchoralpha:a.HUNDREDSTRING,minimizetendency:0,enablemousetracking:!0},b.areabase)}]);Y.register("module",["private","modules.renderer.js-msspline",function(){var a=this.hcLib.chartAPI;a("msspline",{standaloneInit:!0,friendlyName:"Multi-series Spline  Chart",creditLabel:!1,defaultDatasetType:"msspline",applicableDSList:{msspline:!0},defaultPlotShadow:1,getSplineExtremities:a.spline.getSplineExtremities,
evalSplineExtremities:a.spline.evalSplineExtremities,getSegmentExtremities:a.spline.getSegmentExtremities},a.mscartesian,{minimizetendency:0,zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0,enablemousetracking:!0},a.areabase)}]);Y.register("module",["private","modules.renderer.js-mssplinearea",function(){var a=this.hcLib.chartAPI;a("mssplinearea",{friendlyName:"Multi-series Spline Area Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:"mssplinearea",defaultPlotShadow:0},a.msspline,
{minimizetendency:0,enablemousetracking:!0},a.areabase)}]);Y.register("module",["private","modules.renderer.js-mssplinedy",function(){var a=this.hcLib.chartAPI;a("mssplinedy",{friendlyName:"Multi-series Dual Y-Axis Spline Chart",standaloneInit:!0,creditLabel:!1,isDual:!0,defaultDatasetType:"msspline",applicableDSList:{msspline:!0},getSplineExtremities:a.spline.getSplineExtremities,evalSplineExtremities:a.spline.evalSplineExtremities,getSegmentExtremities:a.spline.getSegmentExtremities},a.msdybasecartesian,
{minimizetendency:0,zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0},a.msspline)}]);Y.register("module",["private","modules.renderer.js-multiaxisline",function(){var a=this.hcLib,b=a.pluck,z=a.pluckNumber,U=a.preDefStr,aa=U.sStr,O=a.BLANKSTRING,S=a.parseUnsafeString,L=U.defaultFontStr,N=a.pluckFontSize,R=U.divLineAlphaStr,I=U.divLineAlpha3DStr,M=a.componentDispose,u=a.chartPaletteStr={chart2D:{bgColor:"bgColor",bgAlpha:"bgAlpha",bgAngle:"bgAngle",bgRatio:"bgRatio",canvasBgColor:"canvasBgColor",
canvasBaseColor:"canvasBaseColor",divLineColor:"divLineColor",legendBgColor:"legendBgColor",legendBorderColor:"legendBorderColor",toolTipbgColor:"toolTipbgColor",toolTipBorderColor:"toolTipBorderColor",baseFontColor:"baseFontColor",anchorBgColor:"anchorBgColor"},chart3D:{bgColor:"bgColor3D",bgAlpha:"bgAlpha3D",bgAngle:"bgAngle3D",bgRatio:"bgRatio3D",canvasBgColor:"canvasBgColor3D",canvasBaseColor:"canvasBaseColor3D",divLineColor:"divLineColor3D",divLineAlpha:I,legendBgColor:"legendBgColor3D",legendBorderColor:"legendBorderColor3D",
toolTipbgColor:"toolTipbgColor3D",toolTipBorderColor:"toolTipBorderColor3D",baseFontColor:"baseFontColor3D",anchorBgColor:"anchorBgColor3D"}},A=a.graphics.convertColor,m=a.extend2,H=U.altVGridColorStr,D=U.configStr,f=U.animationObjStr,V="rgba(192,192,192,"+(a.isIE?.002:1E-6)+")",K=a.toRaphaelColor,Q=a.hasTouch,n=Math,d=n.max,w=n.min,e=U.POSITION_BOTTOM,Z=U.colors.c000000,P=U.altVGridAlphaStr,a=a.chartAPI;a("multiaxisline",{friendlyName:"Multi-axis Line Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:"multiaxisline",
defaultPlotShadow:1,axisPaddingLeft:0,axisPaddingRight:0,applicableDSList:{LINE:!0},_createDatasets:function(){var d=this.components,e=this.config,a=this.jsonData,B=a.axis,x,c,E,C,n=0,g,J,W=this.defaultDatasetType,v=this.applicableDSList,k=d.legend.components.items||[],q,h,l,G,F=this.config.isstacked,p,y={},r=0,ea;if(B){x=B.length;this.config.categories=a.categories&&a.categories[0].category;a=d.dataset||(d.dataset=[]);C=a.length;ea=e.axisDataSetMap=[];for(c=0;c<x;c++)if(E=B[c].dataset,ea[c]=[],E)for(J=
E.length,n+=J,e=0;e<J;e++)if(G=E[e],G.seriesname&&(G.seriesname=S(G.seriesname)),g=G.parentyaxis||O,h=(h=this.isDual&&g.toLowerCase()===aa?b(G.renderas,this.sDefaultDatasetType):b(G.renderas,W))&&h.toLowerCase(),v[h]||(h=W),g=Y.get("component",["dataset",h]))void 0===y[h]?y[h]=0:y[h]++,p="datasetGroup_"+h,l=Y.register("component",["datasetGroup",h]),q=d[p],l&&!q&&(q=d[p]=new l,q.chart=this,q.init()),a[r]?(g=a[r],q=g.JSONData,q=q.data?q.data.length:0,h=G.data?G.data.length:0,q>h&&g.removeData(h-1,
q-h,!1),g.JSONData=G,g.index=c,g.axisIndex=c,g.configure(),ea[c].push(r),r+=1):(g=new g,a.push(g),g.chart=this,g.index=c,g.axisIndex=c,ea[c].push(r),r+=1,q&&(F?q.addDataSet(g,0,y[h]):q.addDataSet(g,y[h],0)),g.init(G));if(C>n){d=C-n;for(e=n;e<C;e++)M.call(a[e]);a.splice(n,d);k.splice(n,d)}}else this.setChartMessage()},_createAxes:function(){var d=this.components,e=Y.register("component",["axis","cartesian"]);d.yAxis=[];d.xAxis=[];d.xAxis[0]=d=new e;d.chart=this;d.init();this._setCategories()},_feedAxesRawData:function(){var d=
this.components,e=this.config,a=d.colorManager,B=d.numberFormatter,x=this.jsonData,c=x.chart,E,C,n=this.is3d;C=n?u.chart3D:u.chart2D;var g=Y.register("component",["axis","cartesian"]),J,W,v,k,q,h,l,G,F,p,y,r;E=!1;var ea=0;E={outCanfontFamily:b(c.outcnvbasefont,c.basefont,L),outCanfontSize:N(c.outcnvbasefontsize,c.basefontsize,10),outCancolor:b(c.outcnvbasefontcolor,c.basefontcolor,a.getColor(C.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:c.xaxisnamepadding,axisValuePadding:c.labelpadding,
axisNameFont:c.xaxisnamefont,axisNameFontSize:c.xaxisnamefontsize,axisNameFontColor:c.xaxisnamefontcolor,axisNameFontBold:c.xaxisnamefontbold,axisNameFontItalic:c.xaxisnamefontitalic,axisNameBgColor:c.xaxisnamebgcolor,axisNameBorderColor:c.xaxisnamebordercolor,axisNameAlpha:c.xaxisnamealpha,axisNameFontAlpha:c.xaxisnamefontalpha,axisNameBgAlpha:c.xaxisnamebgalpha,axisNameBorderAlpha:c.xaxisnameborderalpha,axisNameBorderPadding:c.xaxisnameborderpadding,axisNameBorderRadius:c.xaxisnameborderradius,
axisNameBorderThickness:c.xaxisnameborderthickness,axisNameBorderDashed:c.xaxisnameborderdashed,axisNameBorderDashLen:c.xaxisnameborderdashlen,axisNameBorderDashGap:c.xaxisnameborderdashgap,useEllipsesWhenOverflow:c.useellipseswhenoverflow,divLineColor:b(c.vdivlinecolor,c.divlinecolor,a.getColor(C.divLineColor)),divLineAlpha:b(c.vdivlinealpha,c.divlinealpha,n?a.getColor(I):a.getColor(R)),divLineThickness:z(c.vdivlinethickness,c.divlinethickness,1),divLineIsDashed:!!z(c.vdivlinedashed,c.vdivlineisdashed,
c.divlinedashed,c.divlineisdashed,0),divLineDashLen:z(c.vdivlinedashlen,c.divlinedashlen,4),divLineDashGap:z(c.vdivlinedashgap,c.divlinedashgap,2),showAlternateGridColor:z(c.showalternatevgridcolor,0),alternateGridColor:b(c.alternatevgridcolor,a.getColor(H)),alternateGridAlpha:b(c.alternatevgridalpha,a.getColor(P)),numDivLines:c.numvdivlines,labelFont:c.labelfont,labelFontSize:c.labelfontsize,labelFontColor:c.labelfontcolor,labelFontBold:c.labelfontbold,labelFontItalic:c.labelfontitalic,labelFontAlpha:c.labelalpha,
maxLabelHeight:c.maxlabelheight,axisName:c.xaxisname,axisMinValue:c.xaxisminvalue,axisMaxValue:c.xaxismaxvalue,setAdaptiveMin:c.setadaptivexmin,adjustDiv:c.adjustvdiv,labelDisplay:c.labeldisplay,showLabels:c.showlabels,rotateLabels:c.rotatelabels,slantLabel:z(c.slantlabels,c.slantlabel),labelStep:z(c.labelstep,c.xaxisvaluesstep),showAxisValues:z(c.showxaxisvalues,c.showxaxisvalue),showLimits:c.showvlimits,showDivLineValues:z(c.showvdivlinevalues,c.showvdivlinevalues),showZeroPlane:c.showvzeroplane,
zeroPlaneColor:c.vzeroplanecolor,zeroPlaneThickness:c.vzeroplanethickness,zeroPlaneAlpha:c.vzeroplanealpha,showZeroPlaneValue:c.showvzeroplanevalue,trendlineColor:c.trendlinecolor,trendlineToolText:c.trendlinetooltext,trendlineThickness:c.trendlinethickness,trendlineAlpha:c.trendlinealpha,showTrendlinesOnTop:c.showtrendlinesontop,showAxisLine:z(c.showxaxisline,c.showaxislines,c.drawAxisLines,0),axisLineThickness:z(c.xaxislinethickness,c.axislinethickness,1),axisLineAlpha:z(c.xaxislinealpha,c.axislinealpha,
100),axisLineColor:b(c.xaxislinecolor,c.axislinecolor,Z)};C={outCanfontFamily:b(c.outcnvbasefont,c.basefont,L),outCanfontSize:N(c.outcnvbasefontsize,c.basefontsize,10),outCancolor:b(c.outcnvbasefontcolor,c.basefontcolor,a.getColor(C.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),useEllipsesWhenOverflow:c.useellipseswhenoverflow,showAlternateGridColor:0,axisNameFont:c.yaxisnamefont,axisNameFontSize:c.yaxisnamefontsize,axisNameFontColor:c.yaxisnamefontcolor,axisNameFontBold:c.yaxisnamefontbold,
axisNameFontItalic:c.yaxisnamefontitalic,axisNameBgColor:c.yaxisnamebgcolor,axisNameBorderColor:c.yaxisnamebordercolor,axisNameAlpha:c.yaxisnamealpha,axisNameFontAlpha:c.yaxisnamefontalpha,axisNameBgAlpha:c.yaxisnamebgalpha,axisNameBorderAlpha:c.yaxisnameborderalpha,axisNameBorderPadding:c.yaxisnameborderpadding,axisNameBorderRadius:c.yaxisnameborderradius,axisNameBorderThickness:c.yaxisnameborderthickness,axisNameBorderDashed:c.yaxisnameborderdashed,axisNameBorderDashLen:c.yaxisnameborderdashlen,
axisNameBorderDashGap:c.yaxisnameborderdashgap};n=d.xAxis[0];n.setCommonConfigArr(E,!1,!1,!1);n.configure();e.axesArr={leftAxes:[],rightAxes:[],axesMap:[],checkBox:[],leftSideSelected:!1};n=e.axesArr.leftAxes=[];h=e.axesArr.rightAxes=[];l=e.axesArr.axesMap=[];J=x.axis||[];W=0;for(v=J.length;W<v;W+=1){d.yAxis[W]?x=d.yAxis[W]:(x=d.yAxis[W]=new g,x.chart=this,x.init());q=J[W];E=!1;r=0;for(k=q.dataset?q.dataset.length:0;r<k;r+=1)0!==Number(q.dataset[r].visible)&&(E=!0);r=z(q.showaxis,1);k=a.getPlotColor(W);
G=b(q.color,c.axiscolor,k);A(G,100);F=z(q.divlinethickness,c.divlinethickness,1);p=z(q.tickwidth,c.axistickwidth,2);y=z(q.axislinethickness,c.axislinethickness,2);(k=!z(q.axisonleft,1))?(l.push({side:"r",index:h.length,showAxis:r,checkBoxChecked:E}),h.push({index:W,showAxis:r,checkBoxChecked:E})):(r&&(e.axesArr.leftSideSelected=!0),l.push({side:"l",index:n.length,showAxis:r,checkBoxChecked:E}),n.push({index:W,showAxis:r,checkBoxChecked:E}));C.labelStep=z(q.yaxisvaluesstep,q.yaxisvaluestep,c.yaxisvaluesstep,
c.yaxisvaluestep);C.axisMaxValue=q.maxvalue;C.axisMinValue=q.minvalue;C.setAdaptiveMin=z(q.setadaptiveymin,c.setadaptiveymin);C.numDivLines=z(q.numdivlines,c.numdivlines,4);C.adjustDiv=z(q.adjustdiv,c.adjustdiv);C.showAxisValues=z(q.showyaxisvalues,q.showyaxisvalue,c.showyaxisvalues,c.showyaxisvalue,1);C.showLimits=z(q.showlimits,c.showyaxislimits,c.showlimits,C.showAxisValues);C.showDivLineValues=z(q.showdivlinevalue,c.showdivlinevalues,q.showdivlinevalues,C.showAxisValues);C.showZeroPlane=z(q.showzeroplane,
c.showzeroplane);C.showZeroPlaneValue=z(q.showzeroplanevalue,c.showzeroplanevalue);C.zeroPlaneColor=q.zeroplanecolor;C.zeroPlaneThickness=z(q.zeroplanethickness,q.divlinethickness,e.zeroplanethickness,2);C.zeroPlaneAlpha=z(q.zeroplanealpha,q.divlinealpha,e.zeroplanealpha);C.showZeroPlaneOnTop=e.showzeroplaneontop;C.divLineColor=b(q.divlinecolor,G);C.divLineAlpha=z(q.divlinealpha,c.divlinealpha,a.getColor(R),100);C.divLineThickness=F;C.divLineIsDashed=!!z(q.divlinedashed,q.divlineisdashed,c.divlinedashed,
c.divlineisdashed,0);C.divLineDashLen=z(q.divlinedashlen,c.divlinedashlen,4);C.divLineDashGap=z(q.divlinedashgap,c.divlinedashgap,2);C.showAxisLine=1;C.axisLineThickness=y;C.axisLineAlpha=100;C.axisLineColor=G;C.tickLength=p;C.tickColor=G;C.tickAlpha=100;C.tickWidth=y;C.axisName=q.title;C.rotateAxisName=1;x.setCommonConfigArr(m({},C),!0,!1,k);x.configure();B.parseMLAxisConf(q,W);0===z(q.showaxis)?(x.hide(),x.setAxisConfig({axisIndex:W,drawAxisLineWRTCanvas:!1,drawLabels:!1,drawPlotlines:!1,drawAxisLine:!1,
drawPlotBands:!1,drawAxisName:!1,drawTrendLines:!1,drawTrendLabels:!1,drawTick:!1,drawTickMinor:!1})):(x.show(),x.setAxisConfig({axisIndex:W,drawAxisLineWRTCanvas:!1,drawLabels:!0,drawPlotlines:!0,drawAxisLine:!0,drawPlotBands:!0,drawAxisName:!0,drawTrendLines:!0,drawTrendLabels:!0,drawTick:!0,drawTickMinor:!0}));ea+=1}W=ea;for(v=d.yAxis.length;W<v;W+=1)d.yAxis[W].hide()},_setAxisLimits:function(){var e=this.components,a=this.config.axisDataSetMap,n=e.dataset,e=e.yAxis,B=a.length,x,c=-Infinity,E=
Infinity,C,b,g;for(x=0;x<B;x+=1){C=0;for(b=a[x].length;C<b;C+=1)g=n[a[x][C]].getDataLimits(),c=d(c,g.max),E=w(E,g.min);Infinity===E&&(E=0);-Infinity===c&&(c=E+1);e[x].setDataLimit(c,E);c=-Infinity;E=Infinity}},_spaceManager:function(){var d,a,n,B=this.config,x=B.axesArr,c=this.components;n=B.legendPosition;var E=c.xAxis;d=c.yAxis;var C=this.hasLegend,w=B.yDepth;a=c.legend;var g=B.axesPadding,J=0,W=0,v=B.axisDataSetMap.length,k,q,h,l=this.jsonData.chart,G=z(l.showborder,this.is3D?0:1),c=c.canvas.config.canvasBorderWidth;
k=B.borderWidth=G?z(l.borderthickness,1):0;var F=B.canvasMarginTop,p=B.canvasMarginBottom,y=B.canvasMarginLeft,l=B.canvasMarginRight,r=B.height,G=B.width;this._allocateSpace({top:k,bottom:k,left:k,right:k});this._allocateSpace({left:B.canvasMarginLeft,right:B.canvasMarginRight});k=x.axesMap;q=x.leftAxes;x=x.rightAxes;h="right"===n?.3*B.canvasWidth:.3*B.canvasHeight;!1!==C&&E&&this._allocateSpace(a._manageLegendPosition(h));for(C=0;C<v;C+=1)0!==k[C].showaxis&&(a=.7*B.canvasWidth,a=d[C].placeAxis(a),
d[C]&&this._allocateSpace(a),h=k[C],"r"===h.side?(x[h.index].width=a.right,J+=g):(q[h.index].width=a.left,W+=g));d=.225*B.availableHeight;d=this._manageActionBarSpace&&this._manageActionBarSpace(d)||{};this._allocateSpace(d);n=n===e?.6*B.canvasHeight:.6*B.canvasWidth;this._manageChartMenuBar(n);a=.7*B.canvasWidth;a>J+W&&this._allocateSpace({left:W,right:J});n=.6*B.canvasHeight;E[0]&&this._allocateSpace(E[0].placeAxis(n));n=.325*B.canvasHeight;this._getDSspace&&this._allocateSpace(this._getDSspace(n));
w&&this._allocateSpace({bottom:w});this._allocateSpace({top:c,bottom:c,left:c,right:c});E=F>B.canvasTop?F-B.canvasTop:0;w=p>r-B.canvasBottom?p+B.canvasBottom-r:0;J=y>B.canvasLeft?y-B.canvasLeft:0;W=l>G-B.canvasRight?l+B.canvasRight-G:0;this._allocateSpace({top:E,bottom:w,left:J,right:W});B.actualCanvasMarginTop=E;B.actualCanvasMarginLeft=J;B.actualCanvasMarginRight=W;B.actualCanvasMarginBottom=w},_postSpaceManagement:function(){var a=this.config,e=this.components,n=e.xAxis&&e.xAxis[0],B=e.legend,
x=a.xDepth,c=e.canvas.config,e=c.canvasBorderWidth,E=c.canvasPadding,C=c.canvasPaddingLeft,c=c.canvasPaddingRight;n&&n.setAxisDimention({x:a.canvasLeft+(x||0)+d(C,E),y:a.canvasBottom+(a.shift||0)+e,opposite:a.canvasTop-e,axisLength:a.canvasWidth-(x||0)-d(C,E)-d(c,E)});n&&n.shiftLabels(-x,0);B.postSpaceManager()},_resuffelAxis:function(){var d=this.data("axisDetails"),a=d.iapi,e=a.config.axesArr,B,x,c,E,n;B=e.leftAxes;x=e.rightAxes;if("l"===d.position){for(E=B.length-1;E>d.index;E--)if(B[E].showAxis){c=
E;n=d.index;break}void 0!==c&&(d=m({},B[n]),B[n]=m({},B[c]),B[c]=m({},d));if(e.leftSideSelected&&void 0===c)return;e.leftSideSelected=!0}else{for(E=0;E<d.index;E++)if(x[E].showAxis){c=E;n=d.index;break}void 0!==c&&(d=m({},x[n]),x[n]=m({},x[c]),x[c]=m({},d));if(!e.leftSideSelected&&void 0===c)return;e.leftSideSelected=!1}a._drawAxis(!0)},_dolegendInteraction:function(d,e){var a=e.components.dataset,B=e.components.legend,x;if(this.checked)for(x in a)a.hasOwnProperty(x)&&(a[x].visible||a[x].axisIndex!==
d||a[x].show());else for(x in a)a.hasOwnProperty(x)&&a[x].visible&&a[x].axisIndex===d&&a[x].hide();B.drawLegend()},_drawAxis:function(d){var a=this.config,e=a.axesArr,B=this.components,x=B.yAxis||[],c=B.xAxis||[],E=B.paper,n=a.allowAxisShift,w=a.allowSelection,g=this.graphics.axisHotElement||[],J=this.graphics.trackerContainer,W=this.graphics.buttonGroup,v=B.canvas.config,k=v.canvasBorderWidth,q=v.canvasPaddingTop,v=v.canvasPaddingBottom,h=a.axesPadding,l=this.components.tb,G=0,F=0,p=0,y,r,ea,Ka,
b,ba,u,A,m,Z,P,H,z,L,N,I,M=!1,R=0,U,S;m=this.get(D,f);U=m.animObj;S=m.dummyObj;P=m.transposeAnimDuration;H=m.animType;m=B.tb||(B.tb=new (Y.register("component",["toolbox","toolbox"])));m.init({iAPI:this,graphics:this.graphics,chart:this,components:B});Z=B.toolBoxAPI.CheckboxSymbol;b=e.leftAxes;B=e.rightAxes;L=e.checkBox;for(ba in L)L.hasOwnProperty(ba)&&L[ba].checkbox.hide();A={cursor:"col-resize",stroke:V,fill:V,ishot:!0,visibility:!0};for(ba=b.length-1;0<=ba;--ba)if(0!==b[ba].showAxis&&(y=a.canvasLeft-
k-G-h,r=a.canvasTop+q,ea=a.canvasHeight-q-v,Ka=b[ba].width,z=b[ba].index,u=x[z],u.setAxisDimention({x:y,y:r,opposite:a.canvasRight+k,axisLength:ea}),G+=Ka+h,!M&&e.leftSideSelected?(u.setAxisConfig({isActive:!0,axisNameAlignCanvas:!0,drawAxisNameFromBottom:!0}),M=!0):u.setAxisConfig({isActive:!1,axisNameAlignCanvas:!0,drawAxisNameFromBottom:!0}),w&&(L[z]?(u=L[z],N=y-Ka-L[z].checkboxPrePos.x,I=r+ea+4-L[z].checkboxPrePos.y,u.checkbox.show(),u.checkbox.attachEventHandlers({click:{fn:this._dolegendInteraction,
args:[z,this]}}),P?u.checkbox.node.animateWith(S,U,{transform:"t"+N+","+I},P,H):u.checkbox.node.attr({transform:"t"+N+","+I})):(u=L[z]={},u.checkbox=new Z(O,!0,R++,l.pId),u.checkbox.conf=m.getDefaultConfiguration(),u.checkbox.attachEventHandlers({click:{fn:this._dolegendInteraction,args:[z,this]}}),u.checkbox.draw(y-Ka,r+ea+4,{parentLayer:W}),u.checkboxPrePos={x:y-Ka,y:r+ea+4}),u.checkbox.node.attr({stroke:K({color:a.checkBoxColor,alpha:100})}),u.checkbox.node.attr({"stroke-width":[1,2]}),a.axisConfigured&&
(b[ba].checkBoxChecked?u.checkbox.check():u.checkbox.uncheck())),n)){A.x=y-Ka;A.y=r;A.width=Ka;A.height=ea;if(g[p])for(ea=g[p].attr(A),ea.show(),y=0,r=ea.events.length;y<r;y++)ea.events[y].unbind(),ea.events.splice(y,1),--r;else ea=g[p]=E.rect(A,J);ea.data("axisDetails",{iapi:this,position:"l",index:ba});Q?ea.touchstart(this._resuffelAxis):ea.mousedown(this._resuffelAxis);p+=1}ba=0;for(G=B.length;ba<G;ba+=1)if(0!==B[ba].showAxis&&(z=B[ba].index,u=x[z],y=a.canvasRight+k+F+h,r=a.canvasTop+q,ea=a.canvasHeight-
q-v,Ka=B[ba].width,u.setAxisDimention({x:y,y:r,opposite:a.canvasLeft-k,axisLength:ea}),F+=B[ba].width+h,M||e.leftSideSelected?u.setAxisConfig({isActive:!1,axisNameAlignCanvas:!0,drawAxisNameFromBottom:!0}):(u.setAxisConfig({isActive:!0,axisNameAlignCanvas:!0,drawAxisNameFromBottom:!0}),M=!0),b=u.getAxisConfig("axisNamePadding"),w&&(L[z]?(u=L[z],N=y-Ka-u.checkboxPrePos.x,I=r+ea+4-u.checkboxPrePos.y,u.checkbox.show(),u.checkbox.attachEventHandlers({click:{fn:this._dolegendInteraction,args:[z,this]}}),
P?u.checkbox.node.animateWith(S,U,{transform:"t"+N+","+I},P,H):u.checkbox.node.attr({transform:"t"+N+","+I})):(u=L[z]={},u.checkbox=new Z(O,!0,R++,l.pId),u.checkbox.conf=m.getDefaultConfiguration(),u.checkbox.attachEventHandlers({click:{fn:this._dolegendInteraction,args:[z,this]}}),u.checkbox.draw(y+b,r+ea+4,{parentLayer:W}),u.checkboxPrePos={x:y-Ka,y:r+ea+4}),u.checkbox.node.attr({stroke:K({color:a.checkBoxColor,alpha:100})}),u.checkbox.node.attr({"stroke-width":[1,2]}),a.axisConfigured&&(B[ba].checkBoxChecked?
u.checkbox.check():u.checkbox.uncheck())),n)){A.x=y;A.y=r;A.width=Ka;A.height=ea;if(g[p])for(ea=g[p].attr(A),ea.show(),y=0,r=ea.events.length;y<r;y++)ea.events[y].unbind(),ea.events.splice(y,1),--r;else ea=g[p]=E.rect(A,J);ea.data("axisDetails",{iapi:this,position:"r",index:ba});Q?ea.touchstart(this._resuffelAxis):ea.mousedown(this._resuffelAxis);p+=1}this.graphics.axisHotElement=g;ba=p;for(G=g.length;ba<G;ba+=1)g[ba].hide();if(!d)for(ba=0,G=c.length;ba<G;ba++)c[ba].draw();ba=0;for(G=x.length;ba<
G;ba++)x[ba].draw();a.axisConfigured=!1}},a.mscartesian,{enablemousetracking:!0},a.areabase)}]);Y.register("module",["private","modules.renderer.js-inversemsline",function(){var a=this.hcLib,b=a.chartAPI;b("inversemsline",{friendlyName:"Inverted Y-Axis Multi-series Line Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:a.preDefStr.line,defaultPlotShadow:1,applicableDSList:{LINE:!0}},b.msinversecartesian,{zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0,enablemousetracking:!0},
b.areabase)}]);Y.register("module",["private","modules.renderer.js-inversemsarea",function(){var a=this.hcLib.chartAPI;a("inversemsarea",{friendlyName:"Inverted Y-Axis Multi-series Area Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:"area",applicableDSList:{area:!0}},a.msinversecartesian,{enablemousetracking:!0},a.areabase)}]);Y.register("module",["private","modules.renderer.js-inversemscolumn2d",function(){var a=this.hcLib,b=a.chartAPI;b("inversemscolumn2d",{friendlyName:"Inverted Y-Axis Multi-series Column Chart",
standaloneInit:!0,creditLabel:!1,defaultDatasetType:a.preDefStr.column,applicableDSList:{COLUMN:!0},isInverse:!0},b.msinversecartesian,{enablemousetracking:!0})}]);Y.register("module",["private","modules.renderer.js-logmsline",function(){var a=this.hcLib,b=a.chartAPI;b("logmsline",{standaloneInit:!0,friendlyName:"Multi-series Line Chart",creditLabel:!1,defaultDatasetType:a.preDefStr.line,defaultPlotShadow:1,applicableDSList:{LINE:!0}},b.mslog,{zeroplanethickness:1,enablemousetracking:!0,zeroplanealpha:40,
showzeroplaneontop:0},b.areabase)}]);Y.register("module",["private","modules.renderer.js-logmscolumn2d",function(){var a=this.hcLib,b=a.chartAPI;b("logmscolumn2d",{friendlyName:"Multi-series Log Column Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:a.preDefStr.column,applicableDSList:{COLUMN:!0}},b.mslog,{enablemousetracking:!0})}]);Y.register("module",["private","modules.renderer.js-logstackedcolumn2d",function(){var a=this.hcLib.chartAPI;a("logstackedcolumn2d",{friendlyName:"Stacked Log Column Chart",
standaloneInit:!0,creditLabel:!1},a.logmscolumn2d,{isstacked:!0})}]);Y.register("module",["private","modules.renderer.js-errorbar2d",function(){var a=this.hcLib.chartAPI;a("errorbar2d",{friendlyName:"Error Bar Chart",standaloneInit:!0,creditLabel:!1,showValues:0,isErrorChart:!0,fireGroupEvent:!0,hasLegend:!0,defaultDatasetType:"errorbar2d",applicableDSList:{errorbar2d:!0},eiMethods:{}},a.mscartesian,{enablemousetracking:!0})}]);Y.register("module",["private","modules.renderer.js-errorline",function(){var a=
this.hcLib.chartAPI;a("errorline",{friendlyName:"Error Line Chart",useErrorGroup:!0,isErrorChart:!0,fireGroupEvent:!0,creditLabel:!1,defaultPlotShadow:1,axisPaddingLeft:0,axisPaddingRight:0,canvasPaddingModifiers:["anchor","errorbar"],defaultDatasetType:"errorline",applicableDSList:{errorline:!0}},a.mscartesian,{zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0,enablemousetracking:!0},a.areabase)}]);Y.register("module",["private","modules.renderer.js-errorscatter",function(){var a=this.hcLib.chartAPI;
a("errorscatter",{friendlyName:"Error Scatter Chart",isXY:!0,standaloneInit:!0,creditLabel:!1,defaultDatasetType:"errorscatter",applicableDSList:{errorscatter:!0},defaultZeroPlaneHighlighted:!1,useErrorGroup:!0,isErrorChart:!0,fireGroupEvent:!0,initAnimation:!0},a.scatterBase,{enablemousetracking:!0})}]);Y.register("module",["private","modules.renderer.js-waterfall2d",function(){var a=this.hcLib,b=a.chartAPI,z=a.each;b("waterfall2d",{standaloneInit:!0,friendlyName:"Waterfall Chart",creditLabel:!1,
defaultDatasetType:"Waterfall2D",applicableDSList:{Waterfall2D:!0},singleseries:!0,hasLegend:!1,_dataSegregator:function(a){var b=[],O=[];z(a,function(a,z){"true"!==a.vline&&!0!==a.vline&&1!==a.vline&&"1"!==a.vline?b.push(a):O.push({index:z,data:a})});return{data:b,catData:O}}},b.sscartesian,{enablemousetracking:!0})}]);Y.register("module",["private","modules.renderer.js-multilevelpie",function(){var a=this.hcLib,b=a.chartAPI,z=a.parseUnsafeString,U=a.BLANKSTRING,aa=a.preDefStr.sStr,O=a.pluck;b("multilevelpie",
{standaloneInit:!0,friendlyName:"Multi-level Pie Chart",creditLabel:!1,defaultDatasetType:"multiLevelPie",applicableDSList:{multiLevelPie:!0},is3d:!0,hasLegend:!1,hasCanvas:!1,_createDatasets:function(){var a=this.components,b=this.jsonData,N=b.dataset||[],R=N.length,I,M,u=this.defaultDatasetType,A=this.applicableDSList,m;I=[];var H={};I=this.config.categories=b.category||[];b=I.length;!R&&b&&(N=I,R=b);b||this.setChartMessage();I=a.dataset||(a.dataset=[]);for(a=0;a<R;a+=1)if(b=N[a],b.seriesname&&
(b.seriesname=z(b.seriesname)),M=b.parentyaxis||U,M=(M=M.toLowerCase()===aa?O(b.renderas,this.sDefaultDatasetType):O(b.renderas,u))&&M.toLowerCase(),A[M]||(M=u),m=Y.get("component",["dataset",M]))void 0===H[M]?H[M]=0:H[M]++,I[0]?(M=I[0],M.JSONData=b):(M=new m,I.push(M),M.chart=this,M.index=a),M.init(N)},_spaceManager:function(){var a=this.config;this._allocateSpace(this._manageActionBarSpace&&this._manageActionBarSpace(.225*a.availableHeight)||{});this._manageChartMenuBar(.7*a.canvasHeight)}},b.guageBase)}]);
Y.register("module",["private","modules.renderer.js-radar",function(){var a=this.hcLib.chartAPI;a("radar",{friendlyName:"Radar Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:"radar",applicableDSList:{radar:!0},hasLegend:!0,areaAlpha:50,defaultPlotShadow:0,_postSpaceManagement:function(){var a=this.components,z=this.config,U=a.legend;(a.yAxis&&a.yAxis[0]).setAxisDimention({x:z.canvasLeft+z.canvasWidth/2,y:z.canvasTop,axisLength:z.canvasHeight/2});U.postSpaceManager()},_mouseEvtHandler:function(b){return a.dragbase._mouseEvtHandler.call(this,
b)}},a.mspolar,{radarradius:0,radarborderthickness:2,showvalues:0,plotfillalpha:50,enablemousetracking:!0},a.areabase)}]);Y.register("module",["private","modules.renderer.js-dragbase",function(){var a=this,b=a.hcLib,z=a.window,U=z.document,aa=b.preDefStr,O=aa.colors.FFFFFF,S=b.ZEROSTRING,L=aa.UNDERSCORE,N=b.BLANKSTRING,R=b.BLANKSTRING,I=b.pluck,M=b.getValidValue,u=b.pluckNumber,A=b.extend2,m=b.hasSVG,H=b.isIE,D=b.regex.dropHash,f=b.HASHSTRING,V=b.schedular,K=b.priorityList,Q=function(d,a){var c;d||
(d={});for(c in a)d[c]=a[c];return d},n=b.addEvent,d=b.removeEvent,aa=Math,w=aa.min,e=aa.max,Z=b.hasTouch,P=b.graphics.convertColor,t=b.chartAPI,T=a.xssEncode,da=b.createElement;t("dragbase",{configure:function(){var d=this.jsonData.chart,e,c;this.base.base.configure.call(this);c=this.config;c.formAction=M(d.formaction);d.submitdataasxml!==S||d.formdataformat||(d.formdataformat=a.dataFormats.CSV);c.formDataFormat=I(d.formdataformat,a.dataFormats.XML);c.formTarget=I(d.formtarget,"_self");c.formMethod=
I(d.formmethod,"POST");c.submitFormAsAjax=u(d.submitformusingajax,1);c.restoreBtnTitle=I(d.restorebtntitle,"Restore");c.submitBtnTitle=I(d.formbtntitle,"Submit");c.showFormBtn=u(d.showformbtn,1)&&c.formAction;c.showRestoreBtn=u(d.showrestorebtn,1);c.formBtnTitle=I(d.formbtntitle,"Submit");c.formBtnBorderColor=I(d.formbtnbordercolor,"CBCBCB");c.formBtnBgColor=I(d.formbtnbgcolor,O);c.btnPadding=u(d.btnpadding,7);c.btnSpacing=u(d.btnspacing,5);c.formBtnStyle={fontSize:c.style.outCanfontSize,fontFamily:c.style.outCanfontFamily,
fontWeight:"bold"};c.formBtnLabelFill=c.style.outCancolor;d.btntextcolor&&(c.formBtnLabelFill=d.btntextcolor.replace(D,f));0<=(e=u(d.btnfontsize))&&(c.formBtnStyle.fontSize=e+"px");c.restoreBtnWidth=u(d.restorebtnwidth,0);c.formBtnWidth=u(d.formbtnwidth,0);c.restoreBtnBorderColor=I(d.restorebtnbordercolor,c.formBtnBorderColor);c.restoreBtnBgColor=I(d.restorebtnbgcolor,c.formBtnBgColor);c.restoreBtnStyle={fontSize:c.formBtnStyle.fontSize,fontFamily:c.formBtnStyle.fontFamily,fontWeight:"bold"};c.restoreBtnLabelFill=
c.formBtnLabelFill;d.toolbary||d.toolbarx?c.spaceHardCoded=!0:delete c.spaceHardCoded},_createToolBox:function(){var d=this,x=d.components.tb||(d.components.tb=new (Y.register("component",["toolbox","toolbox"]))),c,E,n,b=d.components,g,J,W,v=d.linkedItems.smartLabel,k=d.config,q=k.showRestoreBtn,h=k.formAction,l=k.restoreBtnTitle,G=k.submitBtnTitle,F=k.formBtnStyle,p=k.restoreBtnStyle,y=k.restoreBtnWidth,r=k.restoreBtnBgColor,ea=k.restoreBtnBorderColor,w=k.formBtnBgColor,u=k.formBtnBorderColor,ba=
k.restoreBtnLabelFill,f=k.formBtnLabelFill,Q=k.btnSpacing,A=k.btnPadding,m=k.formBtnWidth;c=b.chartMenuBar;J=b.actionBar;c&&c.drawn||J&&J.drawn||(c=x.init({graphics:d.graphics||(d.graphics={}),chart:d,components:d.components}),x.pId=c,c=b.toolBoxAPI=x.getAPIInstances(x.ALIGNMENT_HORIZONTAL),E=c.ComponentGroup,n=c.Toolbar,g=c.Symbol,x.getDefaultConfiguration(),c=x.getDefaultConfiguration(),W=new g(l,!0,(x.idCount=x.idCount||0,x.idCount++),x.pId),g=new g(G,!0,x.idCount++,x.pId),t.mscartesian._createToolBox.call(d),
k.spaceHardCoded&&(J=b.actionBar=b.chartMenuBar||b.actionBar),(J=b.actionBar)||(J=new n(x.idCount++,x.pId),J=b.actionBar=J),d.addConfigureOptions&&d.addConfigureOptions(),x=new E(x.idCount++,x.pId),v.useEllipsesOnOverflow(k.useEllipsesWhenOverflow),v.setStyle(p),l=v.getOriSize(l),y=e(l.width,y),k=l.height,v.setStyle(F),l=v.getOriSize(G),m=e(m,l.width),v=l.height,W.conf.width=y+A,g.conf.width=m+A,W.conf.stroke=P(ea,100),W.conf.height=k+A,g.conf.height=v+A,g.conf.fill=P(w,100),g.conf.labelFill=P(f,
100),W.conf.fill=P(r,100),W.conf.labelFill=P(ba,100),g.conf.stroke=P(u,100),g.conf.btnTextStyle.fontSize=F.fontSize,W.conf.btnTextStyle.fontSize=p.fontSize,c.spacing=Q,x.setConfiguaration({buttons:c,group:{fill:P(O,0),borderThickness:0}}),q&&(x.addSymbol(W),W.attachEventHandlers({click:function(){d.restoreData()}})),h&&(x.addSymbol(g),g.attachEventHandlers({click:function(){d.submitData(a)}})),x.btnConfig.vAlign="b",J.addComponent(x),J.toolbarConfig.fill=P("EBEBEB",0),J.toolbarConfig.borderThickness=
0)},addConfigureOptions:function(){var d=this,a=d.chartMenuTools,c=d.components,e=c.actionBar,c=(c.chartMenuBar||e).componentGroups[0].symbolList[0].getListRefernce(),e=u(d.jsonData.chart.allowaxischange,1),a=a.set,n=[{"Increase Upper Limit":{handler:function(){var c=d.components.yAxis[0].config.axisRange;d.changeUpperLimits(c.max+c.tickInterval)},action:"click"}},{"Increase Lower Limit":{handler:function(){var c=d.components.yAxis[0].config.axisRange;d.changeLowerLimits(c.min+c.tickInterval)},action:"click"}},
{"Decrease Upper Limit":{handler:function(){var c=d.components.yAxis[0].config.axisRange;d.changeUpperLimits(c.max-c.tickInterval)},action:"click"}},{"Decrease Lower Limit":{handler:function(){var c=d.components.yAxis[0].config.axisRange;d.changeLowerLimits(c.min-c.tickInterval)},action:"click"}}];e&&(a(n),c.appendAsList(n))},drawAxisUpdateUI:function(){var a=this,e=a.graphics,c=a.components.yAxis[0],E=c.config.axisRange,C=c.getAxisConfig("extremeLabels")||[],c=a.config,w=E.min,E=E.max,g=C.lastLabel.graphic,
J=C.firstLabel.graphic,W=a.linkedItems.container,C=Q({outline:"none","-webkit-appearance":"none",filter:"alpha(opacity=0)",position:"absolute",background:"transparent",border:"1px solid #cccccc",textAlign:"right",top:0,left:0,width:50,zIndex:20,opacity:0,borderRadius:0,display:"block"},a.config.style.inCanvasStyle||{}),v=b.hashify,w={max:{label:g,value:E},min:{label:J,value:w}},k,q,h,l,G,F,p=function(h,l,q){return h===l+R?null:q?a.changeUpperLimits(Number(h),!0):a.changeLowerLimits(Number(h),!0)},
J=function(){var h={opacity:1,filter:"alpha(opacity=100)",color:(a.config.style.inCanvasStyle||{}).color},l;h.color&&(h.color=v(h.color));this.value=this.dataValue;for(l in h)this.style[l]=h[l];this.hasFocus=this.justFocussed=!0;this.axisLabel&&this.axisLabel.hide();a.graphics.hiddenAxisLabels||(a.graphics.hiddenAxisLabels=[]);a.graphics.hiddenAxisLabels.push(this.axisLabel)},y=function(){return function(){var h=this;h.justFocussed&&(h.justFocussed=!1,Z||setTimeout(function(){h.select()},0))}}(),
r=function(){!0!==p(this.value,this.oldValue,this.isMaxLabel)&&(this.style.opacity=0,this.style.filter="alpha(opacity=0)",this.axisLabel&&this.axisLabel.show());H&&U.getElementsByTagName("body")[0].focus&&U.getElementsByTagName("body")[0].focus();this.hasFocus=this.justFocussed=!1},ea=function(h){var l=h.originalEvent.keyCode,q=this.value,k=this.oldValue,c=this.isMaxLabel;13===l?(l=p(q,k,c),!1===l?this.style.color="#dd0000":b.dem.fire(this,"blur",h)):27===l&&(this.value=k,b.dem.fire(this,"blur",h))},
u=function(h){return function(l){h.parentNode&&b.dem.fire(h,"blur",l)}},t=function(h,l){return function(){d(a,"defaultprevented",l);h.parentNode.removeChild(h)}},ba=function(h){return function(l){l.srcElement!==h&&h.hasFocus&&b.dem.fire(h,"blur",l)}},f=function(h,l){return function(){d(W,"mousedown",l);h.parentNode.removeChild(h)}},A;for(A in w)if(k=w[A],E=k.label,g=k.value,k.oldValue=g,q=E&&E.getBBox(),k="max"===A?!0:!1,e.inputElements||(e.inputElements={}),h=e.inputElements[A],q&&E){l=q.x+q.width-
c.marginLeft;G=c.canvasLeft-l-(m?4:5);Q(C,{top:q.y+(m?-1:0)+"px",left:G+"px",width:l+"px"});h||(h=e.inputElements[A]=da("input",{type:"text",value:g,name:g||R},W,!0),b.dem.listen(h,["focus","mouseup","blur","keyup"],[J,y,r,ea]),h.setAttribute("isOverlay","true"),m?(n(W,"defaultprevented",q=u(h)),n(W,"destroy",t(h,q))):(n(W,"mousedown",q=ba(h)),n(W,"destroy",f(h,q))));h.dataValue=g;C.color&&(C.color=v(C.color));for(F in C)h.style[F]=C[F];h.value=g;h.oldValue=g;h.name=g||R;h.axisLabel=E;h.isMaxLabel=
k}else h&&(h.style.display="none")},changeUpperLimits:function(d){var a=this.components,c=a.yAxis[0],e=c.config.axisRange,n=e.min,b=e.max,g=this.config.yMax,e=!1,J=this.graphics.hiddenAxisLabels||[],w=J.length;void 0!==d&&d>g&&d!==b?e=!0:d=g>b?g:b;if(e){c.setAxisConfig({axisMaxValue:d,axisMinValue:n,showUpperLimit:!0});c.setDataLimit(d,n);this._manageSpace();this._postSpaceManagement();this._drawCanvas();this.chartMenuBar&&this._drawChartMenuBar();this._manageCaptionPosition();this._drawCanvas();
a.caption&&a.caption.draw();this.drawLegend();this.drawActionBar&&this.drawActionBar();for(a=0;a<w;a++)c=J[a],c.show();this._drawAxis&&this._drawAxis();this._drawDataset();this.drawAxisUpdateUI()}return e},changeLowerLimits:function(d){var a=this.components,c=a.yAxis[0],e=c.config.axisRange,n=this.config.yMin,b=e.max,g,J=!1,w=this.graphics.hiddenAxisLabels||[],v=w.length,e=e.min;void 0!==d&&d<n&&d!==e?(g=d,J=!0):d=n<e?n:e;if(J){c.setAxisConfig({axisMaxValue:b,axisMinValue:d});c.setDataLimit(b,g);
this._manageSpace();this._postSpaceManagement();this._drawCanvas();this.chartMenuBar&&this._drawChartMenuBar();this._manageCaptionPosition();this._drawCanvas();a.caption&&a.caption.draw();this.drawLegend();this.drawActionBar&&this.drawActionBar();for(d=0;d<v;d++)a=w[d],a.show();this._drawAxis&&this._drawAxis();this._drawDataset();this.drawAxisUpdateUI()}return J},eiMethods:{getDataWithId:function(){for(var d=this.jsVars.instanceAPI.getJSONData(),a=[[N]],c=d.dataset,d=d.categories&&d.categories[0]&&
d.categories[0].category,e=c&&c.length||0,n=0,b,g,J,w,v,k;e--;)if(g=c[e])for(a[0][e+1]=g.id||g.seriesname,w=g.id||e+1,k=(g=g.data)&&g.length||0,v=0;v<k;v+=1){J=v+1;if(!a[J]){for(b=d&&d[v+n]||{};b.vline;)n+=1,b=d[v+n]||{};b=b.label||b.name||N;a[J]=[b]}b=a[J];J=g[v].id||J+L+w;b[e+1]=[J,Number(g[v].value)]}return a},getData:function(d){var e=this.jsVars.instanceAPI,c=e.getJSONData(),E=[[N]],n=c.dataset,b=c.categories&&c.categories[0]&&c.categories[0].category,g=n&&n.length||0,J=0,w,v;if(d)E=/^json$/ig.test(d)?
c:a.core.transcodeData.call(e.chartInstance,c,"json",d);else for(;g--;)if(d=n[g])for(E[0][g+1]=n[g].seriesname,e=(d=n[g]&&n[g].data)&&d.length||0,c=0;c<e;c+=1){v=c+1;if(!E[v]){for(w=b&&b[c+J]||{};w.vline;)J+=1,w=b[c+J]||{};w=w.label||w.name||N;E[v]=[w]}v=E[v];v[g+1]=Number(d[c].value)}return E},setUpperLimit:function(d,a){var c=this.apiInstance,e=c.getJobList(),n,b=c.chartInstance.args.asyncRender;if(a||b)e.eiMethods.push(V.addJob(function(){n=c.changeUpperLimits(d);"function"===typeof a&&a(n)},K.postRender));
else return c.changeUpperLimits(d)},setLowerLimit:function(d,a){var c=this.apiInstance,e=c.getJobList(),n,b=c.chartInstance.args.asyncRender;if(a||b)e.eiMethods.push(V.addJob(function(){n=c.changeLowerLimits(d);"function"===typeof a&&a(n)},K.postRender));else return c.changeLowerLimits(d)},getLowerLimit:function(d){var a=this.apiInstance,c=a.components,e=c.yAxis&&c.yAxis[0],a=a.getJobList();if(e)if(d)a.eiMethods.push(V.addJob(function(){d(e.config.axisRange.min)},K.postRender));else return e.config.axisRange.min},
getUpperLimit:function(d){var a=this.apiInstance,c=a.components,e=c.yAxis&&c.yAxis[0],a=a.getJobList();if(e)if(d)a.eiMethods.push(V.addJob(function(){d(e.config.axisRange.max)},K.postRender));else return e.config.axisRange.max}},restoreData:function(){var d=this.components,a=d.yAxis[0],c=d.dataset,d=d.legend,e=c.length,n,w=this.graphics.hiddenAxisLabels||[],g;this.config.isDataRestored=!0;for(g=0;g<e;g++)n=c[g],n.configure();a.setAxisConfig({axisMaxValue:void 0,axisMinValue:void 0});this._setAxisLimits();
e=w.length;for(g=0;g<e;g++)a=w[g],a.show();this._drawAxis();this._drawDataset();d._drawPointLegendItem();this.drawAxisUpdateUI();delete this.config.isDataRestored;b.raiseEvent("dataRestored",{},this.chartInstance,[this.chartInstance.id])},submitData:function(d){var a=this.chartInstance,c=new d.ajax,e=this.config,n=d.dataFormats.JSON,w=d.dataFormats.CSV,g=d.dataFormats.XML,J=e.formAction,u=this.chartInstance,v=e.submitFormAsAjax,k,q,h,l,G;e.formDataFormat===n?(k=n,q=JSON.stringify(this.getJSONData())):
this.formDataFormat===w?(k=w,q=a.getCSVString&&a.getCSVString(),void 0===q&&(q=d.core.transcodeData(this.getJSONData(),n,w))):(k=g,q=d.core.transcodeData(this.getJSONData(),n,g));d.raiseEvent("beforeDataSubmit",{data:q},u,void 0,function(){v?(c.onError=function(h,l,k,c){b.raiseEvent("dataSubmitError",{xhrObject:l.xhr,url:c,statusText:h,httpStatus:l.xhr&&l.xhr.status?l.xhr.status:-1,data:q},u,[u.id,h,l.xhr&&l.xhr.status])},c.onSuccess=function(h,l,k,d){b.raiseEvent("dataSubmitted",{xhrObject:c,response:h,
url:d,data:q},u,[u.id,h])},h={},h["str"+k.toUpperCase()]=q,c.open&&c.abort(),c.post(J,h)):(l=z.document.createElement("span"),l.innerHTML='<form style="display:none" action="'+J+'" method="'+e.formMethod+'" target="'+e.formTarget+'"> <input type="hidden" name="strXML" value="'+T(q)+'"><input type="hidden" name="dataFormat" value="'+k.toUpperCase()+'" /></form>',G=l.removeChild(l.firstChild),z.document.body.appendChild(G),G.submit&&G.submit(),G.parentNode.removeChild(G),l=G=null)},function(){d.raiseEvent("dataSubmitCancelled",
{data:q},u)})},getJSONData:function(){var d=this.defaultDatasetType&&this.defaultDatasetType.toLowerCase(),a=this.components,c=a["datasetGroup_"+d],d=a.dataset,e=this.jsonData.dataset,n,b=this.jsonData,g=d.length,a=[],J;if(c&&c.getJSONData)a=c.getJSONData();else for(c=0;c<g;c++)n=d[c],J=n.getJSONData(),n=e[c]||{},delete n.data,a.push(A(n,J));d=A({},b);d.dataset=a;return d},_setDataLimits:function(){var d=this.components.dataset,a=this.config,c=-Infinity,n=Infinity,C,b,g;b=d.length;for(g=0;g<b;g++)C=
d[g],C=C.getDataLimits(),c=e(c,C.max),n=w(n,C.min);a.yMax=c;a.yMin=n},_mouseEvtHandler:function(d){var a=d.data.mouseTracker,c=this.config,e=c.canvasLeft,n=c.canvasRight,w=c.canvasBottom,g=c.canvasTop,J=c.datasetOrder||this.components.dataset,u=b.getMouseCoordinate(this.linkedItems.container,d.originalEvent,this),v=u.chartX,k=u.chartY,q,h,l=!1,G=J.length,F,p=a._lastDatasetIndex,u=a._lastPointIndex,y,c=c.dragTolerance||0;void 0!==u&&(y=J[p].components.data[u].config.dragStart);if(!y&&v>e-c&&v<n+c&&
k>g-c&&k<w+c||!y&&this.config.plotOverFlow)for(;G--&&!l;)(q=J[G])&&q.visible&&(h=q._getHoveredPlot&&q._getHoveredPlot(v,k))&&h.hovered&&(l=!0,h.datasetIndex=G,F=a._getMouseEvents(d,h.datasetIndex,h.pointIndex));y&&void 0!==p&&(e="mouseout"===d.type?"mousemove":d.type,J[p]&&J[p]._firePlotEvent&&J[p]._firePlotEvent(e,u,d));!y&&(!l||F&&F.fireOut)&&void 0!==p&&(delete a._lastDatasetIndex,delete a._lastPointIndex,J[p]&&J[p]._firePlotEvent&&J[p]._firePlotEvent("mouseout",u,d));if(l)for(J=F.events&&F.events.length,
a._lastDatasetIndex=h.datasetIndex,u=a._lastPointIndex=h.pointIndex,a=0;a<J;a+=1)q&&q._firePlotEvent&&q._firePlotEvent(F.events[a],u,d)}},t.mscartesian)}]);Y.register("module",["private","modules.renderer.js-dragnode",function(){var a=this,b=a.hcLib,z=b.ZEROSTRING,U=b.pluck,aa=b.getValidValue,O=b.pluckNumber,S=b.extend2,L=b.componentDispose,N=Math,R=N.min,I=N.max,M=b.chartAPI;M("dragnode",{friendlyName:"Dragable Node Chart",standaloneInit:!0,fireGroupEvent:!0,hasLegend:!0,numVDivLines:0,numDivLines:0,
usesXYinCategory:!0,showLimits:0,setadaptivexmin:1,showdivlinevalues:0,showzeroplane:0,showyaxisvalues:0,dontShowLegendByDefault:!0,creditLabel:!1,defaultDatasetType:"dragnode",configure:function(){var b=this.jsonData.chart,A;M.dragbase.configure.call(this);A=this.config;A.formAction=aa(b.formaction);b.submitdataasxml!==z||b.formdataformat||(b.formdataformat=a.dataFormats.CSV);A.formDataFormat=U(b.formdataformat,a.dataFormats.XML);A.formTarget=U(b.formtarget,"_self");A.formMethod=U(b.formmethod,"POST");
A.submitFormAsAjax=O(b.submitformusingajax,1);A.viewMode=O(b.viewmode,0)},_createDatasets:function(){var a=this.config,b=this.components,m=this.jsonData,H=m.dataset,D=m.connectors,f=m.labels&&m.labels.label||[],V=H&&H.length,K=D&&D.length,Q=f&&f.length||[],n=b.legend,d,w,e,Z,P,t,T,da,B,x;da=0;var c=a.datasetMap||(a.datasetMap={connectors:[],dragnode:[],labels:[]}),E,C={connectors:[],dragnode:[],labels:[]},la={};if(H){this.config.categories=m.categories&&m.categories[0].category;w=b.dataset=[];d=Y.register("component",
["datasetGroup","dragnode"]);m=b.datasetGroup_dragnode;d&&!m&&(m=b.datasetGroup_dragnode=new d,m.chart=this,m.init());P=Y.get("component",["dataset","Dragnode"]);t=Y.get("component",["dataset","Connector"]);T=Y.get("component",["dataset","DragableLabels"]);for(d=0;d<V;d++)b="dragnode",e=c[b],E=e[0],void 0===la[b]?la[b]=0:la[b]++,E?(Z=H[d],B=E.components&&E.components.data||[],C[b].push(E),w.push(E),B=B.length,x=Z&&Z.data&&Z.data.length||0,B>x&&E.removeData(x-1,B-x),E.JSONData=Z,E.configure(),e.shift()):
(Z=H[d],e=new P,e.chart=this,C[b].push(e),w.push(e),e.chart=this,e.index=d,e.init(Z),m.addDataset(e,d)),da++;for(d=0;d<K;d++)b="connectors",V=D[d],e=c[b],E=e[0],void 0===la[b]?la[b]=0:la[b]++,E?(B=E.components&&E.components.data||[],B=B.length,x=V.connector&&V.connector.length||0,C[b].push(E),w.push(E),B>x&&E.removeData(x-1,B-x),E.JSONData=V,E.configure(),e.shift()):(e=new t,e.chart=this,e.index=d,C[b].push(e),w.push(e),e.init(V),m.addConnectors(e,d)),da++;b="labels";e=c[b];E=e[0];void 0===la[b]?
la[b]=0:la[b]++;E?(B=E.JSONData,B=B.length,x=Q,C[b].push(E),w.push(E),B>x&&E.removeData(x-1,B-x),E.JSONData=f,E.configure(),e.shift()):(da=new T,da.chart=this,C[b].push(da),w.push(da),da.init(f),m.addLabels(da,0));this.config._datasetUpdated=!0;for(H in c)if(e=c[H],f=e.length,da=la[H]||-1,f)for(D=0;D<f;D++)"dragnode"===H?(m.removeNodeDataset(da),m._clearConnectors(),n.removeItem(e[D].legendItemId)):"connectors"===H?m.removeConnectorSet(da):m.removeLabelSet(da),L.call(e[D]),da+=1;a.datasetMap=C}else this.setChartMessage()},
addConfigureOptions:function(){var a=this.chartMenuTools,b=this.components,m=b.actionBar,H=this.components["datasetGroup_"+this.defaultDatasetType],b=(b.chartMenuBar||m).componentGroups[0].symbolList[0].getListRefernce(),a=a.set,m=this.config.viewMode,D=[{"Add Node":{handler:function(){H.showNodeAddUI()},action:"click"}},{"Add Connector":{handler:function(){H.showConnectorAddUI(H.chart,{})},action:"click"}},{"Add Label":{handler:function(){H.showLabelUpdateUI(H.chart,{})},action:"click"}}];a(D);!m&&
b.appendAsList(D)},_redrawDragNode:function(a,A){var m=this.chart;this.draw();b.raiseEvent("chartUpdated",S({sourceEvent:A},a),m.chartInstance,[m.chartInstance.id])},addNode:function(b){var A=this.components.dataset,m=b.datasetId,H=A.length,D,f,V,K;for(K=0;K<H;K++)if(D=A[K]||{},V=D.config&&D.config.id,void 0!==V&&(V=V.toString()),V===m){f=!0;break}D&&f&&(A=D.groupManager,m=D.components.data,b.add=!0,H=m.length,m={index:H,dataIndex:H,link:b.link,y:b.y,x:b.x,shape:b.shape,width:b.width,height:b.height,
radius:b.radius,sides:b.sides,label:b.name,toolText:b.tooltext,id:b.id,datasetIndex:D.index,datasetName:D.JSONData.seriesname,sourceType:"dataplot"},D._setConfigure(H,b),this._redrawDragNode.call(A,m,"nodeAdded"),a.raiseEvent("nodeAdded",m,this.chartInstance))},updateNode:function(b){var A=this.components["datasetGroup_"+this.defaultDatasetType],m=A.datasets,H=m.length,D,f,V,K,Q,n,d;b.update=!0;for(Q=0;Q<H;Q++)for(V=m[Q].dataset,n=V.components.data||[],D=n.length,d=0;d<D;d++)if(K=n[d],K.config.id===
b.id){f=!0;break}V&&f&&(m={index:d,dataIndex:d,link:b.link,y:b.y,x:b.x,shape:b.shape,width:b.width,height:b.height,radius:b.radius,sides:b.sides,label:b.name,toolText:b.tooltext,id:b.id,datasetIndex:V.index,datasetName:V.JSONData.seriesname,sourceType:"dataplot"},V._setConfigure(d,b),this._redrawDragNode.call(A,m,"nodeupdated"),a.raiseEvent("nodeupdated",m,this.chartInstance))},deleteNode:function(u){var A=this.components["datasetGroup_"+this.defaultDatasetType].nodes,m=A[u],H,D,f,V,K,Q,n,d,w=function(d){for(var a in d)d[a].remove()};
if(m){H=m.dataset;D=H.components.data;f=m.config.startConnectors;V=m.config.endConnectors;d=D.length;for(m=0;m<d;m++)if(Q=D[m],Q.config.id===u){K=!0;break}if(!0===K){D=Q.graphics;w(D);for(n in f)K=f[n]||{},D=K.graphics,w(D),delete K.graphics,K.removed=!0;for(n in V)K=V[n]||{},D=K.graphics,w(D),delete K.graphics,K.removed=!0;delete A[u];Q.removed=!0;u=Q.config||{};H={index:m,dataIndex:m,link:u.link,y:u.y,x:u.x,shape:u.shape,width:u.width,height:u.height,radius:u.radius,sides:u.sides,label:u.displayValue,
toolText:u.toolText,id:u.id,datasetIndex:m,datasetName:H.JSONData.seriesname,sourceType:"dataplot"};b.raiseEvent("chartUpdated",S({sourceEvent:"nodedeleted"},H),this.chartInstance,[this.chartInstance.id]);a.raiseEvent("nodedeleted",H,this.chartInstance)}}},addConnector:function(b){var A=this.components["datasetGroup_"+this.defaultDatasetType],m=A.connectorSet[0].connectors,H=m.components.data.length;b.add=!0;m._setConfigure(H,b);b={arrowAtEnd:!!b.arrowAtEnd,arrowAtStart:!!b.arrowAtStart,fromNodeId:b.from,
id:b.id,label:b.label,link:b.connectorLink,sourceType:"connector",toNodeId:b.to};this._redrawDragNode.call(A,b,"connectoradded");a.raiseEvent("connectoradded",b,this.chartInstance)},editConnector:function(b){var A=this.components["datasetGroup_"+this.defaultDatasetType],m=b.from,H=b.to,D=A.connectorSet,f,V,K,Q,n,d,w,e,Z=D.length;for(f=0;f<Z;f++)for(K=(e=D[f].connectors)&&e.components.data||[],V=K.length,d=0;d<V;d++)if(Q=K[d],n=Q.config,Q=n.from,n=n.to,Q===m&&n===H){w=!0;break}b.update=!0;w&&(e._setConfigure(d,
b),b={arrowAtEnd:!!b.arrowatend,arrowAtStart:!!b.arrowatstart,fromNodeId:b.from,id:b.id,label:b.label,link:b.link,sourceType:"connector",toNodeId:b.to},this._redrawDragNode.call(A,b,"connectorupdated"),a.raiseEvent("connectorupdated",b,this.chartInstance))},deleteConnector:function(u){var A=u.from;u=u.to;var m=this.components["datasetGroup_"+this.defaultDatasetType].connectorSet,H,D,f,V,K,Q=!1,n=m.length;for(H=0;H<n;H++)for(D=m[H].connectors,V=D.components.data,K=V.length,D=0;D<K;D++)if(f=V[D],f.config.from===
A&&f.config.to===u){Q=!0;break}if(Q){A=f.config||{};A={arrowAtEnd:A.arrowAtEnd,arrowAtStart:A.arrowAtStart,fromNodeId:A.from,id:A.id,label:A.label,link:A.connectorLink,sourceType:"connector",toNodeId:A.to};u=f.graphics;for(var d in u)u[d].remove();delete f.graphics;f.removed=!0;b.raiseEvent("chartUpdated",S({sourceEvent:"connectordeleted"},A),this.chartInstance,[this.chartInstance.id]);a.raiseEvent("connectordeleted",A,this.chartInstance)}},addLabel:function(b){var A=this.components["datasetGroup_"+
this.defaultDatasetType],m=A.labelSet,H=Y.get("component",["dataset","DragableLabels"]);b.add=!0;m.length?(m=A.labelSet[0].labels,H=m.components.data,H=H.length,m._setConfigure(H,b)):(m=new H,m.chart=this,m.init([b]),A.addLabels(m,0));m={text:b.text,x:b.x,y:b.y,allowdrag:b.allowdrag,sourceType:"labelnode",link:b.link};this._redrawDragNode.call(A,m,"labeladded");a.raiseEvent("labeladded",m,this.chartInstance);b.add=!0},deleteLabel:function(u){u=this.components["datasetGroup_"+this.defaultDatasetType].labelSet[0].labels.components.data[u];
var A,m;if(A=u.graphics.element)m=A.data("eventArgs"),A.remove(),delete u.graphics;b.raiseEvent("chartUpdated",S({sourceEvent:"labeldeleted"},m),this.chartInstance,[this.chartInstance.id]);a.raiseEvent("labeldeleted",m,this.chartInstance);u.removed=!0},restoreData:function(){var a=this.components["datasetGroup_"+this.defaultDatasetType],A=a.datasets,m=this.components.legend,H=a.connectorSet,D,f,V,K,Q=a.labelSet,n=function(d){var a,e;for(a=0;a<d.length;a++)if(V=d[a],delete V.removed,V.config.add)for(e in K=
d[a].graphics,K)K[e].remove()};for(D=0;D<A.length;D++)f=A[D].dataset,a=f.components.data,n(a),f.drawn=!1,f.configure();for(D=0;D<H.length;D++)f=H[D].connectors,a=f.components.data,n(a),f.drawn=!1,f.configure();Q.length&&(A=Q[0].labels,a=A.components.data,n(a),A.configure());this._setAxisLimits();this._drawAxis();this._drawDataset();m._drawPointLegendItem();b.raiseEvent("dataRestored",{},this.chartInstance,[this.chartInstance.id])},getJSONData:function(){var a=this.defaultDatasetType&&this.defaultDatasetType.toLowerCase(),
b=this.components,m=b["datasetGroup_"+a],a=b.dataset,H=this.jsonData,D=a.length,b=[],f;if(m)b=m.getJSONData();else for(m=0;m<D;m++)f=a[m],f=f.getJSONData(),b.push(f);a=S({},H);a.dataset=b.dataset;a.connectors=b.connectors;a.labels=b.labels;return a},_setCategories:function(){var a=this.jsonData,b=this.components.xAxis,a=a.categories&&a.categories[0].category||[],m=a.length,H=[],D,f;for(D=0;D<m;D++)f=a[D]||{},void 0!==f.x&&H.push(f);b&&b[0].setCategory(H)},_drawDataset:function(){var a=this.components["datasetGroup_"+
this.defaultDatasetType];a&&a.draw()},_setAxisLimits:function(){var a=this.components,b=this.jsonData,b=b.categories&&b.categories[0].category||[],m,H=a.dataset,D=a.yAxis,a=a.xAxis,f,V=H.length,K,Q=-Infinity,n=Infinity,d=Infinity,w=-Infinity,e,Z,P={},t=[],T=function(a){e=U(a.xMax,-Infinity);Z=U(a.xMin,Infinity);Q=I(Q,a.max);n=R(n,a.min);w=I(w,e);d=R(d,Z)};for(K=0;K<V;K++)f=H[K],(m=f.groupManager)?P[f.type]=m:t.push(f);for(m in P)H=P[m].getDataLimits(),T(H);V=t.length;for(K=0;K<V;K++)H=t[K].getDataLimits(),
T(H);-Infinity===Q&&(Q=0);Infinity===n&&(n=0);this.config.yMax=Q;this.config.yMin=n;D[0].setAxisConfig({isPercent:this.isStacked?this.config.stack100Percent:0});D[0].setDataLimit(Q,n);if(-Infinity!==w||Infinity!==d){K=0;for(V=b.length;K<V;K++)if(m=b[K],m=m.x)m<d&&(d=m),m>w&&(w=m);a[0].setDataLimit(w,d)}}},M.dragbase)}]);Y.register("module",["private","modules.renderer.js-dragarea",function(){var a=this.hcLib,b=a.chartAPI;b("dragarea",{friendlyName:"Dragable Area Chart",standaloneInit:!0,creditLabel:!1,
defaultDatasetType:"dragarea",decimals:2,applicableDSList:{dragarea:!0}},b.dragbase,{anchoralpha:a.HUNDREDSTRING,enablemousetracking:!0,isDrag:!0},b.areabase)}]);Y.register("module",["private","modules.renderer.js-dragline",function(){var a=this.hcLib.chartAPI;a("dragline",{friendlyName:"Dragable Line Chart",standaloneInit:!0,creditLabel:!1,decimals:2,defaultDatasetType:"dragline",applicableDSList:{dragline:!0},defaultPlotShadow:1},a.dragbase,{zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0,
enablemousetracking:!0,isDrag:!0},a.areabase)}]);Y.register("module",["private","modules.renderer.js-dragcolumn2d",function(){var a=this.hcLib.chartAPI;a("dragcolumn2d",{friendlyName:"Dragable Column Chart",standaloneInit:!0,creditLabel:!1,decimals:2,defaultDatasetType:"DragColumn",applicableDSList:{dragcolumn:!0}},a.dragbase,{enablemousetracking:!0,isDrag:!0})}]);Y.register("module",["private","modules.renderer.js-selectscatter",function(){var a=this,b=a.hcLib,z=a.window,U=b.getValidValue,aa=b.extend2,
O=b.toRaphaelColor,S=b.preDefStr,L=b.hasSVG,N=b.BLANKSTRING,R=S.ROUND,I=Math,M=I.min,u=I.max,A=I.abs,m=a.xssEncode,H=S.hiddenStr,I=S.visibleStr,D=8===z.document.documentMode?I:N,f=S.configStr,V="rgba(192,192,192,"+(b.isIE?.002:1E-6)+")",K=b.chartAPI;K("selectscatter",{isXY:!0,hasLegend:!0,applicableDSList:{selectScatter:!0},friendlyName:"Dragable Scatter Chart",standaloneInit:!0,creditLabel:!1,defaultDatasetType:"selectScatter",defaultZeroPlaneHighlighted:!1,configure:K.dragbase.configure,_createToolBox:K.dragbase._createToolBox,
_manageActionBarSpace:K.dragbase._manageActionBarSpace,drawActionBar:K.dragbase.drawActionBar,getData:function(b){var n=this.getCollatedData(),d=[],w=n.dataset,e=w&&w.length||0,f=0,m=0,t;if(b)d=/^json$/ig.test(b)?n:/^csv$/ig.test(b)?this.getCSVString():a.core.transcodeData(n,"json",b);else for(;f<e;f+=1)if(n=w[f]){for((t=b=(n=w[f]&&w[f].data)&&n.length||0)&&(d[m]||(d[m]=[U(w[f].id,"null")]));t--;)d[m][t+1]=U(n[t].id,"null");b&&(m+=1)}return d},getCSVString:function(){for(var a=this.getData(),n=a.length;n--;)a[n]=
a[n].join(",");return a.join("|")},getCollatedData:function(){for(var b=this.components.dataset,n=this.config._selectEleArr,d=n&&n.length,w=aa({},this.chartInstance.getChartData(a.dataFormats.JSON)),e=w.dataset,f,m,t,T,u,B,x,c,E,C=[];d--;)if(f=n[d])for(B=f.startX,x=f.endX,c=f.startY,E=f.endY,T=e.length;T--;)if(b[T].visible)for(C[T]||(C[T]={data:[]}),u=(t=e[T].data)&&t.length;u--;)m=t[u],f=m.x,m=m.y,f>B&&f<x&&m<c&&m>E&&(C[T].data[u]=!0);for(T=e.length;T--;)for(u=(t=e[T].data)&&t.length;u--;)C[T]&&
C[T].data[u]||t.splice(u,1);return this.updatedDataObj=w},createSelectionBox:function(a){var n=a.chart,d=n.components,b=d.paper,e=n.config,m=d.yAxis&&d.yAxis[0],d=d.xAxis&&d.xAxis[0],u=a.selectionLeft,t=a.selectionTop,T=a.selectionWidth;a=a.selectionHeight;var K=u+T,B=t+a,x=15<T&&15<a,c={resizeEleRadius:15,canvasTop:e.canvasTop,canvasRight:e.canvasLeft+e.canvasWidth,canvasLeft:e.canvasLeft,canvasBottom:e.canvasTop+e.canvasHeight},E=n.graphics.trackerGroup,C=e._selectEleArr||(e._selectEleArr=[]);c.index=
C.length;c.id="SELECT_"+c.index;c.selectBoxG=E=b.group("selection-box",E).toFront();c.selectBoxTracker=b.rect(u,t,T,a,E).attr({"stroke-width":1,stroke:O(e.selectBorderColor),ishot:!0,fill:e.selectFillColor}).css({cursor:"move"});c.selectBoxTracker.data(f,{position:6,selectEleObj:c,xChange:!0,yChange:!0});c.topTracker=b.rect(u,t-6,T,12,E).attr({"stroke-width":0,ishot:!0,fill:V}).css("cursor",L&&"ns-resize"||"n-resize");c.topTracker.data(f,{position:1,selectEleObj:c,yChange:!0});c.rightTracker=b.rect(u+
T-6,t,12,a,E).attr({"stroke-width":0,ishot:!0,fill:V}).css("cursor",L&&"ew-resize"||"w-resize");c.rightTracker.data(f,{position:2,selectEleObj:c,xChange:!0});c.bottomTracker=b.rect(u,t+a-6,T,12,E).attr({"stroke-width":0,ishot:!0,fill:V}).css("cursor",L&&"ns-resize"||"n-resize");c.bottomTracker.data(f,{position:3,selectEleObj:c,yChange:!0});c.leftTracker=b.rect(u-6,t,12,a,E).attr({"stroke-width":0,ishot:!0,fill:V}).css("cursor",L&&"ew-resize"||"e-resize");c.leftTracker.data(f,{position:4,selectEleObj:c,
xChange:!0});c.cornerInnerSymbol=b.symbol("resizeIcon",0,0,15,E).attr({transform:"t"+K+","+B,"stroke-width":1,visibility:x?D:H,ishot:!0,stroke:"#999999"});c.cornerOuterSymbol=b.symbol("resizeIcon",0,0,-12,E).attr({transform:"t"+K+","+B,strokeWidth:1,visibility:x?H:D,ishot:!0,stroke:"#777777"});c.resizeTracker=b.circle(K,B,12,E).attr({"stroke-width":1,stroke:V,ishot:!0,fill:V}).css("cursor",L&&"nwse-resize"||"nw-resize");c.resizeTracker.data(f,{position:5,selectEleObj:c,yChange:!0,xChange:!0});c.closeButton=
b.symbol("closeIcon",0,0,6,E).attr({transform:"t"+K+","+t,"stroke-width":2,stroke:e.selectionCancelButtonBorderColor,fill:e.selectionCancelButtonFillColor,"stroke-linecap":R,ishot:!0,"stroke-linejoin":R}).css({cursor:"pointer",_cursor:"hand"}).click(function(){n.deleteSelection(this,n)});c.closeButton.data(f,{index:c.index});c.chart=n;c.startX=d.getValue(u-e.canvasLeft);c.startY=m.getValue(t-e.canvasTop);c.endX=d.getValue(K-e.canvasLeft);c.endY=m.getValue(B-e.canvasTop);c.isVisible=!0;C.push(c);n.bindDragEvent(c)},
_deleteAllSelection:function(){var a=this.config._selectEleArr,b,d,w,e;for(w in a)if(a.hasOwnProperty(w)){b=a[w];for(e in b)b.hasOwnProperty(e)&&(d=b[e],d.remove&&d.remove(),delete b[e]);delete a[w]}},deleteSelection:function(b,n){var d=b.data(f).index,w=n.components,e=n.config._selectEleArr,m=e[d],u,t;t=m.selectBoxTracker.getBBox();t={selectionLeft:t.x,selectionTop:t.y,selectionWidth:t.width,selectionHeight:t.height,startXValue:w.xAxis[0].getAxisPosition(t.x,1),startYValue:w.yAxis[0].getAxisPosition(t.y,
1),endXValue:w.xAxis[0].getAxisPosition(t.x+t.width,1),endYValue:w.yAxis[0].getAxisPosition(t.y+t.height,1),data:n.getCollatedData(),id:m.id};for(u in m)m.hasOwnProperty(u)&&(w=m[u],w.remove&&w.remove(),delete m[u]);delete e[d];a.raiseEvent("selectionRemoved",t,n.chartInstance)},bindDragEvent:function(a){for(var b in a)/Tracker/.test(b)&&a[b].drag(this.move,this.start,this.up)},start:function(){var a=this.data(f).selectEleObj,b=a.topTracker,d=a.rightTracker,w=a.bottomTracker,e=a.leftTracker,m=a.resizeTracker,
u=b.data(f),t=d.data(f),T=w.data(f),K=e.data(f),B=m.data(f),x=a.selectBoxTracker.data(f),c=a.selectBoxTracker.getBBox();u.ox=c.x;u.oy=c.y;t.ox=c.x2;t.oy=c.y;T.ox=c.x;T.oy=c.y2;K.ox=c.x;K.oy=c.y;u.ox=c.x;u.oy=c.y;B.ox=c.x2;B.oy=c.y2;x.ox=c.x;x.oy=c.y;x.ow=c.width;x.oh=c.height;x.ox2=c.x2;x.oy2=c.y2;a.selectBoxG.toFront();b.hide();d.hide();w.hide();e.hide();m.hide();this.show()},move:function(b,n){var d=n[0],w=n[1],e=this.data(f),m=e.selectEleObj,K=m.chart,t=K.config,T=K.components,H=m.topTracker,B=
m.rightTracker,x=m.bottomTracker,c=m.leftTracker,E=m.resizeTracker,C=m.selectBoxTracker,V=m.canvasLeft,g=m.canvasRight,J=m.canvasTop,W=m.canvasBottom,v=C.data(f),k={},d=e.xChange?d:0,w=e.yChange?w:0,d=d+e.ox,w=w+e.oy,d=M(g-(e.ow||0),u(d,V)),w=M(W-(e.oh||0),u(w,J));switch(e.position){case 1:k.y=M(v.oy2,w);k.height=A(v.oy2-w)||1;H.attr({y:w+-6});break;case 2:k.x=M(v.ox,d);k.width=A(v.ox-d)||1;B.attr({x:d+-6});break;case 3:k.y=M(v.oy,w);k.height=A(v.oy-w)||1;x.attr({y:w+-6});break;case 4:k.x=M(v.ox2,
d);k.width=A(v.ox2-d)||1;c.attr({x:d+-6});break;case 5:k.x=M(v.ox,d);k.width=A(v.ox-d)||1;k.y=M(v.oy,w);k.height=A(v.oy-w)||1;E.attr({cx:d,cy:w});break;default:k.x=d,k.y=w}this.data("dragStarted")||(e=C.getBBox(),t={selectionLeft:e.x,selectionTop:e.y,selectionWidth:e.width,selectionHeight:e.height,startXValue:T.xAxis[0].getValue(e.x-t.canvasLeft),startYValue:T.yAxis[0].getValue(e.y-t.canvasTop),endXValue:T.xAxis[0].getValue(e.x+e.width-t.canvasLeft),endYValue:T.yAxis[0].getValue(e.y+e.height-t.canvasTop),
id:m.id},a.raiseEvent("BeforeSelectionUpdate",t,K.chartInstance),this.data("dragStarted",1));C.animate(k);m.isVisible&&(m.closeButton.hide(),m.cornerInnerSymbol.hide(),m.cornerOuterSymbol.hide(),m.isVisible=!1)},up:function(){var b=this,n=b.data(f).selectEleObj,d=n.chart,w=d.components,e=d.config,m=w.xAxis&&w.xAxis[0],u=w.yAxis&&w.yAxis[0],t=n.topTracker,T=n.rightTracker,K=n.bottomTracker,B=n.leftTracker,x=n.resizeTracker,c=n.selectBoxTracker,E,C;setTimeout(function(){E=c.getBBox();n.startX=m.getValue(E.x-
e.canvasLeft);n.startY=u.getValue(E.y-e.canvasTop);n.endX=m.getValue(E.x2-e.canvasLeft);n.endY=u.getValue(E.y2-e.canvasTop);t.attr({x:E.x,y:E.y+-6,width:E.width});T.attr({x:E.x2+-6,y:E.y,height:E.height});K.attr({x:E.x,y:E.y2+-6,width:E.width});B.attr({x:E.x+-6,y:E.y,height:E.height});x.attr({cx:E.x2,cy:E.y2});n.closeButton.transform("t"+E.x2+","+E.y);n.cornerInnerSymbol.transform("t"+E.x2+","+E.y2);n.cornerOuterSymbol.transform("t"+E.x2+","+E.y2);n.closeButton.show();15>E.width||15>E.height?(n.cornerInnerSymbol.hide(),
n.cornerOuterSymbol.show()):(n.cornerInnerSymbol.show(),n.cornerOuterSymbol.hide());n.isVisible=!0;t.show();T.show();K.show();B.show();x.show();b.data("dragStarted")&&(C={selectionLeft:E.x,selectionTop:E.y,selectionWidth:E.width,selectionHeight:E.height,startXValue:w.xAxis[0].getValue(E.x-e.canvasLeft),startYValue:w.yAxis[0].getValue(E.y-e.canvasTop),endXValue:w.xAxis[0].getValue(E.x+E.width-e.canvasLeft),endYValue:w.yAxis[0].getValue(E.y+E.height-e.canvasTop),data:d.getCollatedData(),id:n.id},a.raiseEvent("SelectionUpdated",
C,d.chartInstance),b.data("dragStarted",0))},100)},restoreData:function(){var a=this.components.dataset,n;this._deleteAllSelection();for(n=0;n<a.length;n++)a[n].draw();b.raiseEvent("dataRestored",{},this.chartInstance,[this.chartInstance.id]);return!0},submitData:function(){var f=this.chartInstance,n=new a.ajax,d=this.config,w=a.dataFormats.JSON,e=a.dataFormats.CSV,u=a.dataFormats.XML,K=d.formAction||"",t=d.submitFormAsAjax,T,H,B,x,c;d.formDataFormat===w?(T=w,H=JSON.stringify(this.getCollatedData())):
this.formDataFormat===e?(T=e,H=f.getCSVString&&f.getCSVString(),void 0===H&&(H=a.core.transcodeData(this.getCollatedData(),w,e))):(T=u,H=a.core.transcodeData(this.getCollatedData(),w,u));a.raiseEvent("beforeDataSubmit",{data:H},f,void 0,function(){t?(n.onError=function(c,a,d,g){b.raiseEvent("dataSubmitError",{xhrObject:a.xhr,url:g,statusText:c,httpStatus:a.xhr&&a.xhr.status?a.xhr.status:-1,data:H},f,[f.id,c,a.xhr&&a.xhr.status])},n.onSuccess=function(c,a,d,g){b.raiseEvent("dataSubmitted",{xhrObject:n,
response:c,url:g,data:H},f,[f.id,c])},B={},B["str"+T.toUpperCase()]=H,n.open&&n.abort(),n.post(K,B)):(x=z.document.createElement("span"),x.innerHTML='<form style="display:none" action="'+K+'" method="'+d.formMethod+'" target="'+d.formTarget+'"> <input type="hidden" name="strXML" value="'+m(H)+'"><input type="hidden" name="dataFormat" value="'+T.toUpperCase()+'" /></form>',c=x.removeChild(x.firstChild),z.document.body.appendChild(c),c.submit&&c.submit(),c.parentNode.removeChild(c),x=c=null)},function(){a.raiseEvent("dataSubmitCancelled",
{data:H},f)})},_postSpaceManagement:function(){K("mscartesian")._postSpaceManagement.call(this);this._deleteAllSelection()},eiMethods:{getData:function(a){var b=this.apiInstance;return b&&b.getData(a)},restoreData:function(){var a=this.apiInstance;return a&&a.restoreData()},submitData:function(){var a=this.apiInstance;return a&&a.submitData()}}},K.scatterBase,{enablemousetracking:!0,allowreversexaxis:!0})}]);Y.register("module",["private","modules.renderer.js-candlestick",function(){var a=this.hcLib,
b=a.chartAPI,z=a.pluck,U=a.graphics.convertColor,aa=a.preDefStr,O=aa.altHGridColorStr,S=aa.altHGridAlphaStr,L=a.parseUnsafeString,N=aa.column,R=a.componentDispose,I=aa.volume,M=a.POSITION_RIGHT,u=Math,A=u.max,m=u.round,H=aa.POSITION_BOTTOM,D=aa.configStr,f=aa.animationObjStr,V=aa.ROUND,K=aa.miterStr,Q=a.toRaphaelColor,n=aa.divLineAlpha3DStr,d=aa.defaultFontStr,w=a.pluckFontSize,e=aa.divLineAlphaStr,Z=aa.altVGridColorStr,P=aa.altVGridAlphaStr,t=u.min,T=aa.colors.c000000,da=a.BLANKSTRING,B=a.chartPaletteStr=
{chart2D:{bgColor:"bgColor",bgAlpha:"bgAlpha",bgAngle:"bgAngle",bgRatio:"bgRatio",canvasBgColor:"canvasBgColor",canvasBaseColor:"canvasBaseColor",divLineColor:"divLineColor",legendBgColor:"legendBgColor",legendBorderColor:"legendBorderColor",toolTipbgColor:"toolTipbgColor",toolTipBorderColor:"toolTipBorderColor",baseFontColor:"baseFontColor",anchorBgColor:"anchorBgColor"},chart3D:{bgColor:"bgColor3D",bgAlpha:"bgAlpha3D",bgAngle:"bgAngle3D",bgRatio:"bgRatio3D",canvasBgColor:"canvasBgColor3D",canvasBaseColor:"canvasBaseColor3D",
divLineColor:"divLineColor3D",divLineAlpha:n,legendBgColor:"legendBgColor3D",legendBorderColor:"legendBorderColor3D",toolTipbgColor:"toolTipbgColor3D",toolTipBorderColor:"toolTipBorderColor3D",baseFontColor:"baseFontColor3D",anchorBgColor:"anchorBgColor3D"}},x=a.extend2,c=a.pluckNumber;b("candlestick",{friendlyName:"Candlestick Chart",standaloneInit:!0,creditLabel:!1,usesXYinCategory:!0,paletteIndex:3,defaultDatasetType:"candlestick",hasLegend:!0,applicableDSList:{candlestick:!0},canvasborderthickness:1,
hasInteractiveLegend:!1,init:function(c,a,d,g){var e;this.jsonData=a;e=this.components=this.components||(this.components={});e.canvasVolume=e.canvasVolume||(e.canvasVolume={graphics:{},config:{}});b.mscartesian.init.call(this,c,a,d,g)},configure:function(){var a,d,e,g=this.components.colorManager,b=this.jsonData.chart,n=this.components;this.base.configure.call(this);a=this.config;e=n.canvas.config;a.showVolumeChart=c(b.showvolumechart,1);d=c(b.volumeheightpercent,40);a.volumeHeightPercent=20>d?20:
80<d?80:d;a.canvasBorderWidth=c(b.canvasborderthickness,1);a.rollOverBandColor=U(z(b.rolloverbandcolor,g.getColor(O)),z(b.rolloverbandalpha,g.getColor(S)));x(n.canvasVolume.config,e)},_createDatasets:function(){var c=this.config,a=this.components,d=this.jsonData,g=d.dataset,e=d.trendset||[],b=this.config.showVolumeChart,n=g&&g.length,k,q,h=this.defaultDatasetType,l=z(L(d.chart.plotpriceas),N),G,F,p,y,r,ea=0,x=c.datasetMap||(c.datasetMap={trendset:[],candlestick:[]}),B,ba={},w={trendset:[],candlestick:[]},
f=a.legend;if(g){this.config.categories=d.categories&&d.categories[0].category;k=a.dataset=[];d=0;for(n=g.length;d<n;d++)p=g[d],p.seriesname&&(p.seriesname=L(p.seriesname)),G=(G=z(p.renderas,h))&&G.toLowerCase(),F=Y.get("component",["dataset",G]),B=x[G],q=B[0],F&&(void 0===ba[G]?ba[G]=0:ba[G]++,q?(y=q,q.index=d,l!==y.config.plotType?(R.call(y),q=k[ea]=new F,q.chart=this,q.index=ea,q.init(p)):(y=(y=q.JSONData)&&y.data&&y.data.length,r=p.data&&p.data.length,y>r&&q.removeData(r-1,y-r,!1),q.JSONData=
p),q.configure(),w[G].push(q),k.push(q),B.shift()):(q=new F,k.push(q),w[G].push(q),q.chart=this,q.index=ea,q.init(p))),ea++,B=a.yAxis&&a.yAxis[1],b&&this.config.drawVolume?(B&&B.show(),F&&(void 0===ba[G]?ba[G]=0:ba[G]++,B=x[G],(q=B[0])?(y=(y=q.JSONData)&&y.data&&y.data.length,r=p.data&&p.data.length,y>r&&q.removeData(r-1,y-r,!1),q.JSONData=p,q.configure(),k.push(q),w[G].push(q),B.shift()):(q=new F,q.chart=this,k.push(q),w[G].push(q),q.init(p,I))),ea++):B&&B.hide(),b=this.config.drawVolume&&b?this.config.showVolumeChart=
1:this.config.showVolumeChart=0;d=0;for(n=e.length;d<n;d++)p=e[d],G="trendset",B=x[G],q=B[0],void 0===ba[G]?ba[G]=0:ba[G]++,q?(y=(y=q.JSONData)&&y.data&&y.data.length,r=p.data&&p.data.length,w[G].push(q),k.push(q),q.index=ea,y>r&&q.removeData(r-1,y-r,!1),q.JSONData=p,q.configure(),B.shift()):(F=Y.get("component",["dataset",G]),a=new F,k.push(a),w[G].push(a),a.chart=this,a.index=ea,a.init(p)),ea++;for(g in x)if(B=x[g],n=B.length)for(e=0;e<n;e++)f.removeItem(B[e].legendItemId),R.call(B[e]);c.datasetMap=
w}else this.setChartMessage()},_spaceManager:function(){var c,a,d,g=this.config,e=this.components,b=g.legendPosition,n=e.xAxis&&e.xAxis[0],k=e.xAxis&&e.xAxis[1],q=e.yAxis&&e.yAxis[0],h=e.yAxis&&e.yAxis[1];a=this.hasLegend;var l=e.legend,G,F=this.config.showVolumeChart,p=F?g.volumeHeightPercent:0,y=e.canvas.config,r=e.canvasVolume.config,ea=g.width,B=g.height,x={};c=g.chartBorderWidth;e=e.canvas.config.canvasBorderWidth;G=g.minCanvasHeight;d=g.minCanvasWidth;var ba=g.canvasMarginLeft,w=g.canvasMarginRight,
f=g.canvasMarginTop,t=g.canvasMarginBottom,u,K,T=g.origCanvasTopMargin,V=g.origCanvasBottomMargin,Q=g.origCanvasLeftMargin,P=g.origCanvasRightMargin;this._allocateSpace({top:c,bottom:c,left:c,right:c});c=.225*g.availableHeight;c=this._manageActionBarSpace&&this._manageActionBarSpace(c)||{};this._allocateSpace(c);c=b===M?.225*g.canvasWidth:.3*g.canvasHeight;!1!==a&&n&&this._allocateSpace(l._manageLegendPosition(c));a=.7*g.canvasWidth;q=q.placeAxis(a);h=F?h.placeAxis(a):{};x.left=A(q.left,h.left||0);
x.right=A(q.right,h.right||0);this._allocateSpace(x);d>ea-ba-w&&(K=!0,h=g.canvasWidth-d,x=ba+w,ba=g.canvasMarginLeft=h*ba/x,w=g.canvasMarginRight=h*w/x);ba=ba>g.canvasLeft?ba-g.canvasLeft:0;ea=w>ea-g.canvasRight?w+g.canvasRight-ea:0;this._allocateSpace({left:ba,right:ea});K&&(x=Q+P,K=g.canvasWidth,K>d&&(h=K-d,ba=h*Q/x,ea=h*P/x),this._allocateSpace({left:ba,right:ea}));d=b===H?.6*g.canvasHeight:.6*g.canvasWidth;this._manageChartMenuBar(d);this._allocateSpace({top:g.canvasMarginTop,bottom:g.canvasMarginBottom});
d=.3*g.canvasHeight;b=n.placeAxis(d);n&&this._allocateSpace(b);b.bottom+=6;y.intermediarySpace=b.bottom;F&&(n=k.placeAxis(d),this._allocateSpace(n));this._allocateSpace({top:e,bottom:2*e,left:e,right:e});G>B-f-t&&(u=!0,h=g.canvasHeight-G,x=f+t,f=g.canvasMarginTop=h*f/x,t=g.canvasMarginBottom=h*t/x);n=f>g.canvasTop?f-g.canvasTop:0;B=t>B-g.canvasBottom?t+g.canvasBottom-B:0;this._allocateSpace({top:n,bottom:B});u&&(x=T+V,u=g.canvasHeight,u>G&&(h=u-G,n=h*T/x,B=h*V/x),this._allocateSpace({top:n,bottom:B}));
G=g.canvasHeight;y.canvasHeight=m((100-p)/100*G);r.canvasHeight=p/100*G;y.canvasTop=g.canvasTop;y.canvasLeft=g.canvasLeft;y.canvasBottom=y.canvasTop+y.canvasHeight;y.canvasWidth=g.canvasWidth;y.canvasRight=g.canvasRight;r.canvasTop=y.canvasBottom+b.bottom+2*e;r.canvasLeft=g.canvasLeft;r.canvasBottom=r.canvasTop+r.canvasHeight+2*e;r.canvasRight=g.canvasRight;r.canvasWidth=g.canvasWidth;p=g.canvasTop+y.canvasHeight+e;g=g.canvasTop+y.canvasHeight+b.bottom+2*e;y.canvasY=p;r.canvasY=g},_postSpaceManagement:function(){var c=
this.components,a=this.config.showVolumeChart,d=c.xAxis&&c.xAxis[0],g=c.yAxis&&c.yAxis[0],e=c.xAxis&&c.xAxis[1],b=c.yAxis&&c.yAxis[1],n=c.canvas.config,k=c.legend,c=c.canvasVolume.config,q=n.canvasBorderWidth;d&&d.setAxisDimention({x:n.canvasLeft,y:n.canvasY,opposite:n.canvasTop-q,axisLength:n.canvasWidth});g&&g.setAxisDimention({x:n.canvasLeft-q,y:n.canvasTop,opposite:n.canvasRight+q,axisLength:n.canvasHeight});a&&(e&&e.setAxisDimention({x:n.canvasLeft,y:c.canvasBottom,opposite:c.canvasTop-q,axisLength:n.canvasWidth}),
b&&b.setAxisDimention({x:n.canvasLeft-q,y:c.canvasY,opposite:c.canvasRight+q,axisLength:c.canvasHeight}),e&&e.setCanvas(c),b&&b.setCanvas(c));d.setCanvas(n);g.setCanvas(n);k.postSpaceManager()},_drawCanvas:function(){var c=this.components,a=this.graphics,d=c.paper,g=c.canvas,e=c.canvas.config,b=e.clip||(e.clip=[]),n=c.canvasVolume.config,k=g.graphics,c=c.canvasVolume.graphics,q=g.config,h=k.topCanvas,l=k.topCanvasBorderElement,g=c.volumeCanvas,G=e.canvasLeft,F=e.canvasTop,p=e.canvasWidth,e=e.canvasHeight,
y=n.canvasTop,n=n.canvasHeight,a=a.canvasGroup,r=q.canvasBorderRadius,ea=q.canvasBorderWidth,x=.5*ea,B=q.canvasBorderColor,ba=this.get(D,f),w=ba.dummyObj,t=ba.animObj,m=ba.animType,ba=ba.transposeAnimDuration,u,T=this.config.showVolumeChart,H=q.shadow,P=q.shadowOnCanvasFill,q=q.canBGColor;u={x:G-x,y:F-x,width:p+ea,height:e+ea,r:r,"stroke-width":ea,stroke:B,"stroke-linejoin":2<ea?V:K};l?ba?l.animateWith(w,t,{x:G-x,y:F-x,width:p+ea,height:e+ea,r:r},ba,m):l.attr(u):l=k.topCanvasBorderElement=d.rect(u,
a).shadow(H);l.attr({"stroke-width":ea,stroke:B,"stroke-linejoin":2<ea?V:K});b["clip-canvas"]=[A(0,G),A(0,F),A(1,p),A(1,e)];b["clip-canvas-init"]=[A(0,G),A(0,F),1,A(1,e)];h?ba?h.animate({x:G,y:F,width:p,height:e},ba,m).attr({r:r}):h.attr(void 0):(k.topCanvas=h=d.rect(a),h.attr({x:G,y:F,width:p,height:e}).shadow(P));h.animateWith(w,t,{x:G,y:F,width:p,height:e},ba,m);h.attr({r:r,"stroke-width":0,stroke:"none",fill:Q(q)});T?(b={x:G-x,y:y-x-1,width:p+ea,height:n+ea},g||(c.volumeCanvas=g=d.rect(a).attr(b).shadow(P).crisp()),
g.show().animateWith(w,t,b,ba,m).attr({r:r,fill:Q(q),"stroke-width":ea,stroke:B,"stroke-linejoin":2<ea?V:K,"shape-rendering":"crisp"})):g&&g.hide()},_createAxes:function(){var c=this.components,a,d=Y.register("component",["axis","cartesian"]),e=this.config.showVolumeChart,b,n;c.yAxis=[];c.xAxis=[];c.yAxis[0]=b=new d;c.yAxis[1]=a=new d;c.xAxis[0]=n=new d;b.chart=this;a.chart=this;n.chart=this;e&&(c.xAxis[1]=c=new d,c.chart=this,c.init());b.init();a.init();n.init();this._setCategories()},_feedAxesRawData:function(){var a=
this.components,b=a.colorManager,x=this.jsonData,g=x.chart,J,f,v=this.is3d,k=v?B.chart3D:B.chart2D,q=Y.register("component",["axis","cartesian"]),h=this.config.showVolumeChart;J={outCanfontFamily:z(g.outcnvbasefont,g.basefont,d),outCanfontSize:w(g.outcnvbasefontsize,g.basefontsize,10),outCancolor:z(g.outcnvbasefontcolor,g.basefontcolor,b.getColor(k.baseFontColor)).replace(/^#?([a-f0-9]+)/ig,"#$1"),axisNamePadding:g.xaxisnamepadding,axisValuePadding:g.labelpadding,axisNameFont:g.xaxisnamefont,axisNameFontSize:g.xaxisnamefontsize,
axisNameFontColor:g.xaxisnamefontcolor,axisNameFontBold:g.xaxisnamefontbold,axisNameFontItalic:g.xaxisnamefontitalic,axisNameBgColor:g.xaxisnamebgcolor,axisNameBorderColor:g.xaxisnamebordercolor,axisNameAlpha:g.xaxisnamealpha,axisNameFontAlpha:g.xaxisnamefontalpha,axisNameBgAlpha:g.xaxisnamebgalpha,axisNameBorderAlpha:g.xaxisnameborderalpha,axisNameBorderPadding:g.xaxisnameborderpadding,axisNameBorderRadius:g.xaxisnameborderradius,axisNameBorderThickness:g.xaxisnameborderthickness,axisNameBorderDashed:g.xaxisnameborderdashed,
axisNameBorderDashLen:g.xaxisnameborderdashlen,axisNameBorderDashGap:g.xaxisnameborderdashgap,useEllipsesWhenOverflow:g.useellipseswhenoverflow,divLineColor:z(g.vdivlinecolor,g.divlinecolor,b.getColor(k.divLineColor)),divLineAlpha:z(g.vdivlinealpha,g.divlinealpha,v?b.getColor(n):b.getColor(e)),divLineThickness:c(g.vdivlinethickness,g.divlinethickness,1),divLineIsDashed:!!c(g.vdivlinedashed,g.vdivlineisdashed,g.divlinedashed,g.divlineisdashed,0),divLineDashLen:c(g.vdivlinedashlen,g.divlinedashlen,
4),divLineDashGap:c(g.vdivlinedashgap,g.divlinedashgap,2),showAlternateGridColor:c(g.showalternatevgridcolor,0),alternateGridColor:z(g.alternatevgridcolor,b.getColor(Z)),alternateGridAlpha:z(g.alternatevgridalpha,b.getColor(P)),numDivLines:g.numvdivlines,labelFont:g.labelfont,labelFontSize:g.labelfontsize,labelFontColor:g.labelfontcolor,labelFontAlpha:g.labelalpha,labelFontBold:g.labelfontbold,labelFontItalic:g.labelfontitalic,axisName:g.xaxisname,axisMinValue:g.xaxisminvalue,axisMaxValue:g.xaxismaxvalue,
setAdaptiveMin:g.setadaptivexmin,adjustDiv:g.adjustvdiv,labelDisplay:g.labeldisplay,showLabels:g.showlabels,rotateLabels:g.rotatelabels,slantLabel:c(g.slantlabels,g.slantlabel),labelStep:c(g.labelstep,g.xaxisvaluesstep),showAxisValues:c(g.showxaxisvalues,g.showxaxisvalue),showLimits:g.showvlimits,showDivLineValues:c(g.showvdivlinevalues,g.showvdivlinevalues),showZeroPlane:g.showvzeroplane,zeroPlaneColor:g.vzeroplanecolor,zeroPlaneThickness:g.vzeroplanethickness,zeroPlaneAlpha:g.vzeroplanealpha,showZeroPlaneValue:g.showvzeroplanevalue,
trendlineColor:g.trendlinecolor,trendlineToolText:g.trendlinetooltext,trendlineThickness:g.trendlinethickness,trendlineAlpha:g.trendlinealpha,showTrendlinesOnTop:g.showtrendlinesontop,showAxisLine:c(g.showxaxisline,g.showaxislines,g.drawAxisLines,0),axisLineThickness:c(g.xaxislinethickness,g.axislinethickness,1),axisLineAlpha:c(g.xaxislinealpha,g.axislinealpha,100),axisLineColor:z(g.xaxislinecolor,g.axislinecolor,T)};v={outCanfontFamily:z(g.outcnvbasefont,g.basefont,d),outCanfontSize:w(g.outcnvbasefontsize,
g.basefontsize,10),outCancolor:z(g.outcnvbasefontcolor,g.basefontcolor,b.getColor(k.baseFontColor)).replace(/^#?([a-f0-9]+)/ig,"#$1"),axisNamePadding:g.xaxisnamepadding,axisValuePadding:g.labelpadding,axisNameFont:g.xaxisnamefont,axisNameFontSize:g.xaxisnamefontsize,axisNameFontColor:g.xaxisnamefontcolor,axisNameFontBold:g.xaxisnamefontbold,axisNameFontItalic:g.xaxisnamefontitalic,axisNameBgColor:g.xaxisnamebgcolor,axisNameBorderColor:g.xaxisnamebordercolor,axisNameAlpha:g.xaxisnamealpha,axisNameFontAlpha:g.xaxisnamefontalpha,
axisNameBgAlpha:g.xaxisnamebgalpha,axisNameBorderAlpha:g.xaxisnameborderalpha,axisNameBorderPadding:g.xaxisnameborderpadding,axisNameBorderRadius:g.xaxisnameborderradius,axisNameBorderThickness:g.xaxisnameborderthickness,axisNameBorderDashed:g.xaxisnameborderdashed,axisNameBorderDashLen:g.xaxisnameborderdashlen,axisNameBorderDashGap:g.xaxisnameborderdashgap,useEllipsesWhenOverflow:g.useellipseswhenoverflow,divLineColor:z(g.vdivlinecolor,b.getColor(k.divLineColor)),divLineAlpha:z(g.vdivlinealpha,b.getColor(e)),
divLineThickness:c(g.vdivlinethickness,1),divLineIsDashed:!!c(g.vdivlinedashed,g.vdivlineisdashed,0),divLineDashLen:c(g.vdivlinedashlen,4),divLineDashGap:c(g.vdivlinedashgap,2),showAlternateGridColor:c(g.showalternatevgridcolor,0),alternateGridColor:z(g.alternatevgridcolor,b.getColor(Z)),alternateGridAlpha:z(g.alternatevgridalpha,b.getColor(P)),numDivLines:g.numvdivlines,labelFont:g.labelfont,labelFontSize:g.labelfontsize,labelFontColor:g.labelfontcolor,labelFontAlpha:g.labelalpha,labelFontBold:g.labelfontbold,
labelFontItalic:g.labelfontitalic,axisName:g.xaxisname,axisMinValue:g.xaxisminvalue,axisMaxValue:g.xaxismaxvalue,setAdaptiveMin:g.setadaptivexmin,adjustDiv:g.adjustvdiv,labelDisplay:g.labeldisplay,showLabels:1,rotateLabels:g.rotatelabels,slantLabel:c(g.slantlabels,g.slantlabel),labelStep:c(g.labelstep,g.xaxisvaluesstep),showAxisValues:c(g.showxaxisvalues,g.showxaxisvalue),showLimits:g.showvlimits,showDivLineValues:c(g.showvdivlinevalues,g.showvdivlinevalues),showZeroPlane:g.showvzeroplane,zeroPlaneColor:g.vzeroplanecolor,
zeroPlaneThickness:g.vzeroplanethickness,zeroPlaneAlpha:g.vzeroplanealpha,showZeroPlaneValue:g.showvzeroplanevalue,trendlineColor:g.trendlinecolor,trendlineToolText:g.trendlinetooltext,trendlineThickness:g.trendinethickness,trendlineAlpha:g.trendlinealpha,showTrendlinesOnTop:g.showtrendlinesontop,showAxisLine:c(g.showxaxisline,g.showaxislines,g.drawAxisLines,0),axisLineThickness:c(g.xaxislinethickness,g.axislinethickness,1),axisLineAlpha:c(g.xaxislinealpha,g.axislinealpha,100),axisLineColor:z(g.xaxislinecolor,
g.axislinecolor,T)};f={outCanfontFamily:z(g.outcnvbasefont,g.basefont,d),outCanfontSize:w(g.outcnvbasefontsize,g.basefontsize,10),outCancolor:z(g.outcnvbasefontcolor,g.basefontcolor,b.getColor(k.baseFontColor)).replace(/^#?([a-f0-9]+)/ig,"#$1"),axisNamePadding:g.yaxisnamepadding,axisValuePadding:g.yaxisvaluespadding,axisNameFont:g.pyaxisnamefont,axisNameFontSize:g.pyaxisnamefontsize,axisNameFontColor:g.pyaxisnamefontcolor,axisNameFontBold:g.pyaxisnamefontbold,axisNameFontItalic:g.pyaxisnamefontitalic,
axisNameBgColor:g.pyaxisnamebgcolor,axisNameBorderColor:g.pyaxisnamebordercolor,axisNameAlpha:g.pyaxisnamealpha,axisNameFontAlpha:g.pyaxisnamefontalpha,axisNameBgAlpha:g.pyaxisnamebgalpha,axisNameBorderAlpha:g.pyaxisnameborderalpha,axisNameBorderPadding:g.pyaxisnameborderpadding,axisNameBorderRadius:g.pyaxisnameborderradius,axisNameBorderThickness:g.pyaxisnameborderthickness,axisNameBorderDashed:g.pyaxisnameborderdashed,axisNameBorderDashLen:g.pyaxisnameborderdashlen,axisNameBorderDashGap:g.pyaxisnameborderdashgap,
axisNameWidth:g.yaxisnamewidth,useEllipsesWhenOverflow:g.useellipseswhenoverflow,rotateAxisName:c(g.rotateyaxisname,1),axisName:g.pyaxisname,divLineColor:z(g.divlinecolor,b.getColor(k.divLineColor)),divLineAlpha:z(g.divlinealpha,b.getColor(e)),divLineThickness:c(g.divlinethickness,1),divLineIsDashed:!!c(g.divlinedashed,g.divlineisdashed,1),divLineDashLen:c(g.divlinedashlen,4),divLineDashGap:c(g.divlinedashgap,2),showAlternateGridColor:c(g.showalternatehgridcolor,1),alternateGridColor:z(g.alternatehgridcolor,
b.getColor(O)),alternateGridAlpha:z(g.alternatehgridalpha,b.getColor(S)),numDivLines:c(g.numpdivlines,5),axisMinValue:g.pyaxisminvalue,axisMaxValue:g.pyaxismaxvalue,setAdaptiveMin:c(g.setadaptiveymin,1),adjustDiv:g.adjustdiv,labelStep:g.yaxisvaluesstep,showAxisValues:c(g.showyaxisvalues,g.showyaxisvalue),showLimits:c(g.showyaxislimits,g.showlimits,this.showLimits),showDivLineValues:c(g.showdivlinevalues,g.showdivlinevalue),showZeroPlane:g.showzeroplane,zeroPlaneColor:g.zeroplanecolor,zeroPlaneThickness:g.zeroplanethickness,
zeroPlaneAlpha:g.zeroplanealpha,showZeroPlaneValue:g.showzeroplanevalue,trendlineColor:g.trendlinecolor,trendlineToolText:g.trendlinetooltext,trendlineThickness:g.trendlinethickness,trendlineAlpha:g.trendlinealpha,showTrendlinesOnTop:g.showtrendlinesontop,showAxisLine:c(g.showyaxisline,g.showaxislines,g.drawAxisLines,0),axisLineThickness:c(g.yaxislinethickness,g.axislinethickness,1),axisLineAlpha:c(g.yaxislinealpha,g.axislinealpha,100),axisLineColor:z(g.yaxislinecolor,g.axislinecolor,T)};b={outCanfontFamily:z(g.outcnvbasefont,
g.basefont,d),outCanfontSize:w(g.outcnvbasefontsize,g.basefontsize,10),outCancolor:z(g.outcnvbasefontcolor,g.basefontcolor,b.getColor(k.baseFontColor)).replace(/^#?([a-f0-9]+)/ig,"#$1"),axisNamePadding:g.yaxisnamepadding,axisValuePadding:g.yaxisvaluespadding,axisNameFont:g.vyaxisnamefont,axisNameFontSize:g.vyaxisnamefontsize,axisNameFontColor:g.vyaxisnamefontcolor,axisNameFontBold:g.vyaxisnamefontbold,axisNameFontItalic:g.vyaxisnamefontitalic,axisNameBgColor:g.vyaxisnamebgcolor,axisNameBorderColor:g.vyaxisnamebordercolor,
axisNameAlpha:g.vyaxisnamealpha,axisNameFontAlpha:g.vyaxisnamefontalpha,axisNameBgAlpha:g.vyaxisnamebgalpha,axisNameBorderAlpha:g.vyaxisnameborderalpha,axisNameBorderPadding:g.vyaxisnameborderpadding,axisNameBorderRadius:g.vyaxisnameborderradius,axisNameBorderThickness:g.vyaxisnameborderthickness,axisNameBorderDashed:g.vyaxisnameborderdashed,axisNameBorderDashLen:g.vyaxisnameborderdashlen,axisNameBorderDashGap:g.vyaxisnameborderdashgap,axisNameWidth:g.yaxisnamewidth,useEllipsesWhenOverflow:g.useellipseswhenoverflow,
rotateAxisName:c(g.rotateyaxisname,1),axisName:g.vyaxisname,divLineColor:z(g.divlinecolor,b.getColor(k.divLineColor)),divLineAlpha:z(g.divlinealpha,b.getColor(e)),divLineThickness:c(g.divlinethickness,1),divLineIsDashed:!!c(g.divlinedashed,g.divlineisdashed,1),divLineDashLen:c(g.divlinedashlen,4),divLineDashGap:c(g.divlinedashgap,2),showAlternateGridColor:c(g.showalternatehgridcolor,1),alternateGridColor:z(g.alternatehgridcolor,b.getColor(O)),alternateGridAlpha:z(g.alternatehgridalpha,b.getColor(S)),
numDivLines:g.numdivlines,axisMinValue:g.vyaxisminvalue,axisMaxValue:g.vyaxismaxvalue,setAdaptiveMin:g.setadaptiveymin,adjustDiv:g.adjustdiv,labelStep:g.yaxisvaluesstep,showAxisValues:c(g.showyaxisvalues,g.showyaxisvalue),showLimits:c(g.showsecondarylimits,g.showlimits),showDivLineValues:c(g.showdivlinevalues,g.showdivlinevalue),showZeroPlane:g.showzeroplane,zeroPlaneColor:g.zeroplanecolor,zeroPlaneThickness:g.zeroplanethickness,zeroPlaneAlpha:g.zeroplanealpha,showZeroPlaneValue:g.showzeroplanevalue,
trendlineColor:g.trendlinecolor,trendlineToolText:g.trendlinetooltext,trendlineThickness:g.trendlinethickness,trendlineAlpha:g.trendlinealpha,showTrendlinesOnTop:g.showtrendlinesontop,showAxisLine:c(g.showyaxisline,g.showaxislines,g.drawAxisLines,0),axisLineThickness:c(g.yaxislinethickness,g.axislinethickness,1),axisLineAlpha:c(g.yaxislinealpha,g.axislinealpha,100),axisLineColor:z(g.yaxislinecolor,g.axislinecolor,T)};J.vtrendlines=x.vtrendlines;v.vtrendlines=x.vtrendlines;f.trendlines=x.trendlines;
g=a.yAxis[0];x=a.yAxis[1];k=a.xAxis[0];g.setCommonConfigArr(f,!0,!1,!1);g.configure();x.setCommonConfigArr(b,!0,!1,!1);x.configure();g.setAxisConfig({drawLabelsOpposit:1,axisNameAlignCanvas:1,relativeAxis:x});x.setAxisConfig({drawLabelsOpposit:1,axisNameAlignCanvas:1,uniqueClassName:1,relativeAxis:g});k.setCommonConfigArr(J,!1,!1,!1);k.configure();k.setAxisConfig({drawTrendLabels:h?!1:!0});h?(a.xAxis[1]?a.xAxis[1].show():(q=a.xAxis[1]=new q,q.chart=this,q.init()),q=a.xAxis[1],q.setCommonConfigArr(v,
!1,!1,!1),q.configure(),q.setAxisConfig({drawLabels:!1,drawPlotlines:!0,drawPlotBands:!1,drawAxisName:!1,drawTrendLines:!0,drawOnlyCategoryLine:!0,uniqueClassName:1})):a.xAxis[1]&&a.xAxis[1].hide()},_setCategories:function(){var c=this.jsonData,a=this.components.xAxis,c=c.categories&&c.categories[0].category||[],d=[],e,b;for(b=0;b<c.length;b++)e=x({},c[b]),e.label=da,d.push(e);a[0].setAxisPadding(.5,.5);a[0].setCategory(c);a[1]&&a[1].setAxisPadding(.5,.5);a[1]&&a[1].setCategory(d)},_setAxisLimits:function(){var c=
this.components,a=c.dataset,d=c.yAxis,c=c.xAxis,e,b=a.length,n,x=-Infinity,k=Infinity,q=-Infinity,h=Infinity,l=Infinity,G=-Infinity,F,p=0,y={};for(n=0;n<b;n++)e=a[n],F=e.groupManager,p=e.config.parentYAxis,F?(y[e.type]=F,y[e.type].yAxisIndex=p):(e=e.getDataLimits(),1===p?(q=A(q,e.max),h=t(h,e.min)):(x=A(x,e.max),k=t(k,e.min)),G=A(G,e.xMax||-Infinity),l=t(l,e.xMin||Infinity));for(F in y)e=y[F].getDataLimits(),x=A(x,e.max),k=t(k,e.min);a=this._getTrendLineMinMax("h");x=A(x,a.max);k=t(k,a.min);d[0].setDataLimit(x,
k);d[1].setDataLimit(q,h);if(-Infinity!==G||Infinity!==l)c[0].setAxisRange({min:l-.5,max:G+.5,tickInterval:1}),c[1]&&c[1].setAxisRange({min:l-.5,max:G+.5,tickInterval:1})},isDual:!0},b.mscartesian,{enablemousetracking:!0,iscandlestick:!0})}]);Y.register("module",["private","modules.renderer.js-kagi",function(){var a=this.hcLib,b=a.chartAPI,z=Math,U=z.min,aa=z.max,O=a.pluck,S=a.pluckNumber,L=a.toPrecision;b("kagi",{standaloneInit:!0,friendlyName:"Kagi Chart",creditLabel:!1,defaultDatasetType:"kagi",
applicableDSList:{kagi:!0},singleseries:!0,hasLegend:!1,_postSpaceManagement:function(){var a=this.config,b=this.components,z=b.xAxis&&b.xAxis[0],L=b.yAxis&&b.yAxis[0],u=b.canvas.config,A=u.canvasBorderWidth,m=u.canvasPadding||15,H=u.canvasPaddingTop,u=u.canvasPaddingBottom,D=this.jsonData.chart,f=(b=b.dataset[0].config)&&b.shiftCount,V=S(z.getAxisConfig("axisMinValue"),0),K=S(z.getAxisConfig("axisMaxValue"),f-1),Q=this.config.canvasWidth;U(S(D.canvaspadding,0),Q/2-10);var D=S(D.maxhshiftpercent,
10),Q=Q-2*m,n;L&&L.setAxisDimention({x:a.canvasLeft-A,y:a.canvasTop+H,opposite:a.canvasRight+A,axisLength:a.canvasHeight-H-u});this._setPosition();b&&(n=b.xShiftLength=U(Q/f,(0>=D?10:D)*Q/100),aa(f-1,1),K=aa(K,1));this._adjustCanvasPadding();z&&z.setAxisDimention({x:this.config.canvasLeft+m+n/2,axisLength:n*(K-V),y:a.canvasBottom+(a.shift||0)+A,opposite:a.canvasTop-A})},_setPosition:function(){var a,b,z,M,u,A,m;a=this.components;M=this.jsonData;var H=a.dataset[0],D=M.data||H&&H[0]&&H[0].data,f=(H=
H.components.data)&&H.length,V=a.yAxis[0],K=0,Q=K,n=[];for(a=0;a<f;a++)b=H[a].config,z=b.setValue,(M=H[a])||(H[a]={graphics:{}}),b.isDefined||(z=b.plotValue),z=O(b.plotValue,z),b.plotY=L(V.getAxisPosition(b.setValue),2),b.graphY=L(V.getAxisPosition(z),2),b.plotX=Q,b.isShift?(Q=K+=1,D&&n.push(D[a])):a===f-1&&D&&n.push(D[a]),a&&(m=H[a-1].config,M=b&&b.objParams&&b.objParams.isRally,z=b&&b.objParams&&b.objParams.lastHigh,u=b&&b.objParams&&b.objParams.lastLow,A=b&&b.objParams&&b.objParams.isRallyInitialised,
m&&A&&m.isRally!==b.isRally?(b.isChanged=!0,b.ty=L(V.getAxisPosition(M?z:u),2)):b.isChanged=!1)},_setAxisLimits:function(){var a=this.components,b=a.dataset,z=a.yAxis,a=a.xAxis,L,u=b.length,A,m=-Infinity,H=Infinity,D=Infinity,f=-Infinity,V,K={},Q=[],n=function(a){m=aa(m,a.max);H=U(H,a.min);f=aa(f,a.xMax||-Infinity);D=U(D,a.xMin||Infinity)};for(A=0;A<u;A++)L=b[A],(V=L.groupManager)?K[L.type]=V:Q.push(L);for(V in K)b=K[V].getDataLimits(),n(b);u=Q.length;for(A=0;A<u;A++)b=Q[A].getDataLimits(),n(b);n(this._getTrendLineMinMax("h"));
-Infinity===m&&(m=0);Infinity===H&&(H=0);this.config.yMax=m;this.config.yMin=H;z[0].setAxisConfig({setAdaptiveMin:!0});z[0].setDataLimit(m,H);if(-Infinity!==f||Infinity!==D)a[0].config.xaxisrange={max:f,min:D},a[0].setDataLimit(f,D)}},b.waterfall2d,{enablemousetracking:!0},b.areabase)}]);Y.register("module",["private","modules.renderer.js-boxandwhisker2d",function(){var a=this.hcLib,b=a.chartAPI,z=a.pluck,U=a.parseUnsafeString,aa=a.BLANKSTRING,O=a.BLANKSTRING,S=a.preDefStr.sStr,L=a.componentDispose,
N=a.HUNDREDSTRING,R=a.setAttribDefs,I=a.attrTypeNum,M=Math,u=M.round,A=M.abs,m=M.ceil,H=M.floor,D=M.sqrt,f=M.pow;a.BoxAndWhiskerStatisticalCalc=a=function(a,b,f){this.nf=b;this.dataSeparator=f;this.method=(a||aa).toLowerCase().replace(/\s/g,O)};a.prototype={setArray:function(a){var b=this.nf,f=this.dataSeparator,n=0;!a&&(a=aa);for(a=this.dataLength=(f=a.replace(/\s/g,aa).split(f))&&f.length;a--;)n+=f[a]=b.getCleanValue(f[a]);f&&f.sort(function(a,b){return a-b});this.values=f;this.mean=n/this.dataLength;
this.getFrequencies()},getQuartiles:function(){var a=this.values,b=this.dataLength,f=b%2,n,d;switch(this.method){case "tukey":f?(f=(b+3)/4,b=(3*b+1)/4):(f=(b+2)/4,b=(3*b+2)/4);break;case "mooremccabe":f?(f=(b+1)/4,b=3*f):(f=(b+2)/4,b=(3*b+2)/4);break;case "freundperles":f=(b+3)/4;b=(3*b+1)/4;break;case "mendenhallsincich":f=u((b+1)/4);b=u(3*f);break;default:f=(b+1)/4,b=3*f}--f;--b;n=H(f);d=H(b);f=f-n?a[n]+(a[m(f)]-a[n])*(f-n):a[f];a=b-d?a[d]+(a[m(b)]-a[d])*(b-d):a[b];return this.quartiles={q1:f,q3:a}},
getMinMax:function(){var a=this.values;return{min:a[0],max:a[this.dataLength-1]}},getMean:function(){return this.mean},getMD:function(){for(var a=this.mean,b=this.frequencies,f=b.length,n,d=0;f--;)n=b[f],d+=n.frequency*A(n.value-a);return d/this.dataLength},getSD:function(){for(var a=this.mean,b=this.values,m=this.dataLength,n=m,d=0;m--;)d+=f(b[m]-a,2);return D(d)/n},getQD:function(){return.5*(this.quartiles.q3-this.quartiles.q1)},getFrequencies:function(){var a=[],b=this.dataLength,f=this.values,
n=0,d,w,e;for(e=0;e<b;e+=1)n+=d=f[e],w=a[e],void 0!==w&&null!==w?a[e].frequency+=1:(w={},w.value=d,w.frequency=1,a[e]=w);this.sum=n;this.frequencies=a},getMedian:function(){var a=this.dataLength,b=.5*a,f=this.values;return 0===a%2?(f[b]+f[b-1])/2:f[H(b)]}};a.prototype.constructor=a;R&&R({whiskerslimitswidthratio:{type:I,pAttr:"whiskerslimitswidthratio"},outliersupperrangeratio:{type:I,pAttr:"outliersupperrangeratio"},outlierslowerrangeratio:{type:I,pAttr:"outlierslowerrangeratio"},showalloutliers:{type:I,
pAttr:"showalloutliers"},showmean:{type:I,pAttr:"showmean"},showsd:{type:I,pAttr:"showsd"},showmd:{type:I,pAttr:"showmd"},showqd:{type:I,pAttr:"showqd"},showminvalues:{type:I,pAttr:"showminvalues"},showmaxvalues:{type:I,pAttr:"showmaxvalues"},showq1values:{type:I,pAttr:"showq1values"},showq3values:{type:I,pAttr:"showq3values"},showmedianvalues:{type:I,pAttr:"showmedianvalues"}});b("boxandwhisker2d",{friendlyName:"Box and Whisker Chart",standaloneInit:!0,creditLabel:!1,chart:b.errorbar2d.chart,drawErrorValue:b.errorbar2d.drawErrorValue,
decimals:2,maxColWidth:Infinity,useErrorAnimation:1,avoidCrispError:0,tooltipsepchar:": ",defaultDatasetType:"boxandwhisker2d",applicableDSList:{boxandwhisker2d:!0},hasSubDataset:!0,fireGroupEvent:!0,fireInitialAnimation:!0,drawTracker:!0,_drawDataset:function(){var a=this.components.dataset,b,f=a.length,n,d,w={};for(n=0;n<f;n++)b=a[n],d=b.groupManager,w[b.type]=d;for(d in w)w[d].draw();a.flag=!0;for(n=0;n<f;n++)for(a[n].components.mean&&a[n].components.mean.draw(),a[n].components.sd&&a[n].components.sd.draw(),
a[n].components.md&&a[n].components.md.draw(),a[n].components.qd&&a[n].components.qd.draw(),d=a[n].config.maxNumberOfOutliers||a[n].components.outliers.length,b=0;b<d;b++)a[n].config.showOutliersLegend||(a[n].components.outliers[b].visible=!1),a[n].components.outliers&&a[n].components.outliers[b].draw()},_createDatasets:function(){var a=this.components,b=a.xAxis[0],f=this.jsonData,n=f.dataset,d=n&&n.length,w,e,m,u=this.defaultDatasetType,t=this.applicableDSList,T=this.components.legend;w=T.components.items||
[];var H,B,x,c,E=this.isStacked,C,A,g=[],J=this.isRealTime,W=this.config.catLen,v={};n||this.setChartMessage();this.config.categories=f.categories&&f.categories[0].category;f=a.dataset||(a.dataset=[]);e=f.length;T.emptyItems(0,w.length);for(w=0;w<d;w++)if(c=n[w],c.seriesname&&(c.seriesname=U(c.seriesname)),m=c.parentyaxis||O,B=(B=this.isDual&&m.toLowerCase()===S?z(c.renderas,this.sDefaultDatasetType):z(c.renderas,u))&&B.toLowerCase(),t[B]||(B=u),x=Y.get("component",["dataset",B]))void 0===v[B]?v[B]=
0:v[B]++,C="datasetGroup_"+B,m=Y.register("component",["datasetGroup",B]),(H=a[C])&&g.push(H),m&&!H&&(H=a[C]=new m,H.chart=this,H.init()),(m=f[w])?(B=b.getCategoryLen(),C=W-B,x=J?m.components:m.JSONData,A=x.data&&x.data.length||0,x=c.data&&c.data.length||0,A-=x,C>A||(C=A,B=x),0<C&&m.removeData(B,C,!1),f[w].JSONData=c,f[w].configure(),f[w]._deleteGridImages&&f[w]._deleteGridImages()):(m=new x,f.push(m),m.chart=this,m.index=w,H&&(E?H.addDataSet(m,0,v[B]):H.addDataSet(m,v[B],0)),m.init(c));if(e>d){C=
e-d;H&&E&&H.removeDataSet(0,w,C);a=w;for(d=C+w;a<d;a++)H&&!E&&H.removeDataSet(w,0,1),T.removeItem(f[a].legendItemId),L.call(f[a]);f.splice(w,C)}this.config.catLen=b.getCategoryLen()}},b.mscartesian,{showplotborder:1,plotborderdashlen:5,plotborderdashgap:4,plotfillalpha:N,useroundedges:0,plotborderthickness:1,showvalues:1,valuepadding:2,showtooltip:1,maxcolwidth:50,rotatevalues:0,use3dlighting:1,whiskerslimitswidthratio:40,outliersupperrangeratio:0,outlierslowerrangeratio:0,showalloutliers:0,showmean:0,
showsd:0,showmd:0,showqd:0,showminvalues:1,showmaxvalues:1,showq1values:0,showq3values:0,showmedianvalues:1})}]);Y.register("module",["private","modules.renderer.js-heatmap",function(){var a=this.hcLib,b=a.chartAPI,z=a.pluckFontSize,U=a.pluck,aa=a.pluckNumber,O=a.preDefStr,S=O.defaultFontStr,L=O.divLineAlpha3DStr,N=O.divLineAlphaStr,R=O.altVGridColorStr,I=O.altVGridAlphaStr,M=O.altHGridColorStr,u=O.altHGridAlphaStr,A=O.colors.c000000;b("heatmap",{friendlyName:"Heatmap Chart",standaloneInit:!0,creditLabel:!1,
hasLegend:!0,tooltipsepchar:": ",tooltipConstraint:"chart",defaultDatasetType:"heatmap",applicableDSList:{heatmap:!0},isSingleSeries:!0,hasGradientLegend:!0,_createAxes:function(){var a=this.components,b=Y.register("component",["axis","cartesian"]),u;a.yAxis=[];a.xAxis=[];a.yAxis[0]=u=new b;a.xAxis[0]=a=new b;u.chart=this;a.chart=this;u.init();a.init()},_postSpaceManagement:function(){var a=this.config,b=a.placeAxisLabelsOnTop,u=this.components,f=u.xAxis&&u.xAxis[0],A=u.yAxis&&u.yAxis[0],K=u.legend,
z=a.xDepth,u=u.canvas.config.canvasBorderWidth;f&&f.setAxisDimention({x:a.canvasLeft,y:b?a.canvasTop+(a.shift||0)-u:a.canvasBottom+(a.shift||0)+u,opposite:a.canvasTop-u,axisLength:a.canvasWidth});A&&A.setAxisDimention({x:a.canvasLeft-u,y:a.canvasTop,opposite:a.canvasRight+u,axisLength:a.canvasHeight});f&&f.shiftLabels(-z,0);K.postSpaceManager();this.config.realtimeEnabled&&this._setRealTimeCategories&&this._setRealTimeCategories();this._adjustCanvasPadding()},_adjustCanvasPadding:function(){},_feedAxesRawData:function(){var b=
this.components,H=b.colorManager,D=this.jsonData,f=D.chart,V;V=this.is3d;var K=a.chartPaletteStr,K=V?K.chart3D:K.chart2D;V={outCanfontFamily:U(f.outcnvbasefont,f.basefont,S),outCanfontSize:z(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:U(f.outcnvbasefontcolor,f.basefontcolor,H.getColor(K.baseFontColor)).replace(/^#?([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.xaxisnamepadding,axisValuePadding:f.labelpadding,axisNameFont:f.xaxisnamefont,axisNameFontSize:f.xaxisnamefontsize,axisNameFontColor:f.xaxisnamefontcolor,
axisNameFontBold:f.xaxisnamefontbold,axisNameFontItalic:f.xaxisnamefontitalic,axisNameBgColor:f.xaxisnamebgcolor,axisNameBorderColor:f.xaxisnamebordercolor,axisNameAlpha:f.xaxisnamealpha,axisNameFontAlpha:f.xaxisnamefontalpha,axisNameBgAlpha:f.xaxisnamebgalpha,axisNameBorderAlpha:f.xaxisnameborderalpha,axisNameBorderPadding:f.xaxisnameborderpadding,axisNameBorderRadius:f.xaxisnameborderradius,axisNameBorderThickness:f.xaxisnameborderthickness,axisNameBorderDashed:f.xaxisnameborderdashed,axisNameBorderDashLen:f.xaxisnameborderdashlen,
axisNameBorderDashGap:f.xaxisnameborderdashgap,useEllipsesWhenOverflow:f.useellipseswhenoverflow,divLineColor:U(f.vdivlinecolor,f.divlinecolor,H.getColor(K.divLineColor)),divLineAlpha:U(f.vdivlinealpha,f.divlinealpha,V?H.getColor(L):H.getColor(N)),divLineThickness:aa(f.vdivlinethickness,f.divlinethickness,1),divLineIsDashed:!!aa(f.vdivlinedashed,f.vdivlineisdashed,f.divlinedashed,f.divlineisdashed,0),divLineDashLen:aa(f.vdivlinedashlen,f.divlinedashlen,4),divLineDashGap:aa(f.vdivlinedashgap,f.divlinedashgap,
2),showAlternateGridColor:aa(f.showalternatevgridcolor,0),alternateGridColor:U(f.alternatevgridcolor,H.getColor(R)),alternateGridAlpha:U(f.alternatevgridalpha,H.getColor(I)),numDivLines:f.numvdivlines,labelFont:f.labelfont,labelFontSize:f.labelfontsize,labelFontColor:f.labelfontcolor,labelFontAlpha:f.labelalpha,labelFontBold:f.labelfontbold,labelFontItalic:f.labelfontitalic,axisName:f.xaxisname,axisMinValue:f.xaxisminvalue,axisMaxValue:f.xaxismaxvalue,setAdaptiveMin:f.setadaptivexmin,adjustDiv:f.adjustvdiv,
labelDisplay:f.labeldisplay,showLabels:aa(f.showxaxislabels,f.showlabels),rotateLabels:f.rotatexaxislabels,slantLabel:aa(f.slantlabels,f.slantlabel),labelStep:aa(f.labelstep,f.xaxisvaluesstep),showAxisValues:aa(f.showxaxisvalues,f.showxaxisvalue),maxLabelHeight:f.maxlabelheight,showZeroPlane:f.showvzeroplane,zeroPlaneColor:f.vzeroplanecolor,zeroPlaneThickness:f.vzeroplanethickness,zeroPlaneAlpha:f.vzeroplanealpha,showZeroPlaneValue:f.showvzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,
trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:aa(f.showxaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:aa(f.xaxislinethickness,f.axislinethickness,1),axisLineAlpha:aa(f.xaxislinealpha,f.axislinealpha,100),axisLineColor:U(f.xaxislinecolor,f.axislinecolor,A)};H={outCanfontFamily:U(f.outcnvbasefont,f.basefont,S),outCanfontSize:z(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:U(f.outcnvbasefontcolor,f.basefontcolor,
H.getColor(K.baseFontColor)).replace(/^#?([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.yaxisnamepadding,axisValuePadding:f.yaxisvaluespadding,axisNameFont:f.yaxisnamefont,axisNameFontSize:f.yaxisnamefontsize,axisNameFontColor:f.yaxisnamefontcolor,axisNameFontBold:f.yaxisnamefontbold,axisNameFontItalic:f.yaxisnamefontitalic,axisNameBgColor:f.yaxisnamebgcolor,axisNameBorderColor:f.yaxisnamebordercolor,axisNameAlpha:f.yaxisnamealpha,axisNameFontAlpha:f.yaxisnamefontalpha,axisNameBgAlpha:f.yaxisnamebgalpha,
axisNameBorderAlpha:f.yaxisnameborderalpha,axisNameBorderPadding:f.yaxisnameborderpadding,axisNameBorderRadius:f.yaxisnameborderradius,axisNameBorderThickness:f.yaxisnameborderthickness,axisNameBorderDashed:f.yaxisnameborderdashed,axisNameBorderDashLen:f.yaxisnameborderdashlen,axisNameBorderDashGap:f.yaxisnameborderdashgap,axisNameWidth:f.yaxisnamewidth,useEllipsesWhenOverflow:f.useellipseswhenoverflow,rotateAxisName:aa(f.rotateyaxisname,1),axisName:f.yaxisname,showAlternateGridColor:aa(f.showalternatehgridcolor,
1),alternateGridColor:U(f.alternatehgridcolor,H.getColor(M)),alternateGridAlpha:U(f.alternatehgridalpha,H.getColor(u)),numDivLines:f.numdivlines,axisMinValue:f.yaxisminvalue,axisMaxValue:f.yaxismaxvalue,setAdaptiveMin:f.setadaptiveymin,adjustDiv:f.adjustdiv,labelStep:f.yaxisvaluesstep,showLabels:aa(f.showyaxislabels,f.showlabels),maxLabelWidthPercent:f.maxlabelwidthpercent,showAxisValues:aa(f.showyaxisvalues,f.showyaxisvalue),divLineColor:U(f.hdivlinecolor,H.getColor(K.divLineColor)),divLineAlpha:U(f.hdivlinealpha,
H.getColor(N)),divLineThickness:aa(f.hdivlinethickness,1),divLineIsDashed:!!aa(f.hdivlinedashed,f.hdivlineisdashed,0),divLineDashLen:aa(f.hdivlinedashlen,4),divLineDashGap:aa(f.hdivlinedashgap,2),showZeroPlane:f.showzeroplane,zeroPlaneColor:f.zeroplanecolor,zeroPlaneThickness:f.zeroplanethickness,zeroPlaneAlpha:f.zeroplanealpha,showZeroPlaneValue:f.showzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,
showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:aa(f.showyaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:aa(f.yaxislinethickness,f.axislinethickness,1),axisLineAlpha:aa(f.yaxislinealpha,f.axislinealpha,100),axisLineColor:U(f.yaxislinecolor,f.axislinecolor,A)};V.vtrendlines=D.vtrendlines;H.trendlines=D.trendlines;D=b.yAxis[0];b=b.xAxis[0];D.setCommonConfigArr(H,!0,!0,!1);b.setCommonConfigArr(V,!1,!1,this.config.placeAxisLabelsOnTop?!0:!1);D.configure();b.configure();this._setCategories()},
_setAxisLimits:function(){},_setCategories:function(){var a=this.components,b=this.jsonData,u=a.xAxis,a=a.yAxis,f=b.dataset&&b.dataset[0].data&&b.dataset[0].data.length,A,K,z,n,d,w=[],e=[],Z;if(!b.columns||!b.rows)for(b.columns={},b.columns.column=n=[],b.rows={},b.rows.row=d=[],A=0;A<f;A++){z=K=!0;for(Z=0;Z<n.length;Z++)b.dataset[0].data[A].columnid==n[Z].id&&(K=!1);K&&(K={id:b.dataset[0].data[A].columnid,label:b.dataset[0].data[A].columnid},b.columns.column.push(K));for(Z=0;Z<d.length;Z++)b.dataset[0].data[A].rowid==
d[Z].id&&(z=!1);z&&(z={id:b.dataset[0].data[A].rowid,label:b.dataset[0].data[A].rowid},b.rows.row.push(z))}n=b.columns.column;d=b.rows.row;for(A=0;A<(n&&n.length);A++)n[A].label=U(n[A].label,n[A].name,n[A].id),void 0!==n[A].label&&w.push(n[A]);b.columns.column=w;for(A=0;A<(d&&d.length);A++)d[A].label=U(d[A].label,d[A].name,d[A].id),void 0!==d[A].label&&e.push(d[A]);b.rows.row=e;b.columns&&u[0].setAxisPadding(.5,.5);b.columns&&u[0].setCategory(b.columns.column);b.columns&&a[0].setAxisPadding(.5,.5);
b.rows&&a[0].setCategory(b.rows.row);u[0].setAxisConfig({categoryNumDivLines:b.columns.column.length-1,categoryDivLinesFromZero:0,showAlternateGridColor:0});a[0].setAxisConfig({categoryNumDivLines:b.rows.row.length-1,categoryDivLinesFromZero:0,showAlternateGridColor:0})}},b.mscartesian,{enablemousetracking:!0})}]);Y.register("module",["private","modules.renderer.js-dataset-errorbar2d",function(){var a=this.hcLib,b=a.preDefStr,z=b.colors,U=z.FFFFFF,aa=z.AAAAAA,O=b.configStr,S=b.animationObjStr,L=b.columnStr,
N=b.shadowStr,R=b.errorBarStr,I=b.errorShadowStr,M=b.miterStr,u=b.visibleStr,A=b.visiblilityStr,m=b.ROUND,H=b.PERCENTAGESTRING,D=b.pStr,f=b.sStr,V=a.BLANKSTRING,K=a.parseTooltext,Q=a.pluck,n=a.getValidValue,d=a.pluckNumber,w=a.getFirstValue,e=a.toRaphaelColor,Z=a.COMMASPACE,P=b.showHoverEffectStr,t=b.setRolloverAttrStr,T=b.setRolloutAttrStr,da="rgba(192,192,192,"+(a.isIE?.002:1E-6)+")",b=a.TOUCH_THRESHOLD_PIXELS,z=a.CLICK_THRESHOLD_PIXELS,B=Math,x=B.round,c=B.min,E=B.max,C=B.abs,la=a.hasTouch?b:z,
g=a.getFirstColor,J=a.getFirstAlpha,W=a.graphics.getLightColor,v=a.graphics.convertColor,k=a.HUNDREDSTRING,q=a.plotEventHandler;Y.register("component",["dataset","ErrorBar2D",{configure:function(){var h=this.chart,l=this.config,q=this.JSONData,F=q.data,p=h.config.categories,b=c(p&&p.length,F&&F.length),r=h.jsonData.chart,g=h.components.colorManager,v,B=g.getPlotColor(this.index||this.positionIndex),J=d(q.dashed,r.plotborderdashed),t=d(r.useplotgradientcolor,1),C=a.parseUnsafeString,u=C(r.yaxisname),
m=C(r.xaxisname),A=C(Q(r.tooltipsepchar,Z)),T=d(r.seriesnameintooltip,1),z=a.parseTooltext,K,P,da,la,L,I,M,O,N,R,aa,S,Y,ka,pa,ia,ga,ra,fa,ha,ca,ya,xa,X,ua,sa,za,Ca,Ha=a.getDashStyle,qa=this.components.data,Aa=h.components.numberFormatter,Sa=h.isBar,Ia=h.is3D;ga=h.isStacked;var ja,yb,db;v={};v=v.dataObj||(v.dataObj={});R=v.chart||(v.chart={});l.legendSymbolColor=B;v=l.showplotborder=d(r.showplotborder,Ia?0:1);l.plotDashLen=M=d(r.plotborderdashlen,5);l.plotDashGap=O=d(r.plotborderdashgap,4);l.plotfillAngle=
aa=d(360-r.plotfillangle,Sa?180:90);l.plotFillAlpha=S=Q(q.alpha,r.plotfillalpha,k);l.plotColor=Q(q.color,B);l.legendSymbolColor=l.plotColor;l.isRoundEdges=N=d(r.useroundedges,0);l.plotRadius=d(r.useRoundEdges,l.isRoundEdges?1:0);l.plotFillRatio=Y=Q(q.ratio,r.plotfillratio);l.plotgradientcolor=ka=a.getDefinedColor(r.plotgradientcolor,g.getColor("plotGradientColor"));!t&&(ka=V);l.plotBorderAlpha=pa=v?Q(r.plotborderalpha,S,k):0;l.plotBorderColor=ia=Q(r.plotbordercolor,Ia?U:g.getColor("plotBorderColor"));
l.plotBorderThickness=t=d(r.plotborderthickness,1);l.plotBorderDashStyle=J=J?Ha(M,O,t):"none";l.showValues=d(q.showvalues,r.showvalues,1);l.valuePadding=d(r.valuepadding,2);l.enableAnimation=ja=d(r.animation,r.defaultanimation,1);l.animation=ja?{duration:1E3*d(r.animationduration,1)}:!1;R.transposeAnimation=l.transposeAnimation=d(r.transposeanimation,R.transposeAnimation,ja);l.transposeAnimDuration=1E3*d(r.transposeanimduration,.2);l.showShadow=N||Ia?d(r.showshadow,1):d(r.showshadow,g.getColor("showShadow"));
l.showHoverEffect=R=d(r.plothovereffect,r.showhovereffect,void 0);l.showTooltip=g=d(r.showtooltip,1);l.stack100Percent=ja=d(h.stack100percent,r.stack100percent,0);l.definedGroupPadding=E(d(r.plotspacepercent),0);l.plotSpacePercent=E(d(r.plotspacepercent,20)%100,0);l.maxColWidth=d(Sa?r.maxbarheight:r.maxcolwidth,50);l.showPercentValues=d(r.showpercentvalues,ga&&ja?1:0);l.showPercentInToolTip=d(r.showpercentintooltip,ga&&ja?1:0);l.plotPaddingPercent=d(r.plotpaddingpercent);l.rotateValues=d(r.rotatevalues)?
270:0;l.placeValuesInside=d(r.placevaluesinside,0);l.includeInLegend=d(q.includeinlegend,1);l.errorInPercent=yb=d(q.errorinpercent,r.errorinpercent);l.cumulativeValueOnErrorBar=d(q.cumulativevalueonerrorbar,r.cumulativevalueonerrorbar,1);l.use3DLighting=d(r.use3dlighting,1);l.parentYAxis=ja=Q(q.parentyaxis&&q.parentyaxis.toLowerCase(),D)===f?1:0;qa||(qa=this.components.data=[]);for(db=0;db<b;db++)I=F&&F[db],ga=(la=qa[db])&&la.config,la||(la=qa[db]={graphics:{}}),la.config||(ga=qa[db].config={}),ga.showValue=
d(I.showvalue,l.showValues),ga.setValue=la=Aa.getCleanValue(I.value),ga.setLink=Q(I.link),ga.toolTipValue=P=Aa.dataLabels(la,ja),ga.setDisplayValue=B=C(I.displayvalue),ga.displayValue=Q(B,P),P=d(I.dashed),B=d(I.dashlen,M),K=O=d(I.dashgap,O),ga.plotBorderDashStyle=K=1===P?Ha(B,K,t):0===P?"none":J,B=Q(I.color,l.plotColor),S=Q(I.alpha,l.plotFillAlpha),0>la&&!N&&(L=aa,aa=Sa?180-aa:360-aa),ga.colorArr=ra=a.graphics.getColumnColor(B+","+ka,S,Y,aa,N,ia,pa.toString(),Sa?1:0,Ia?!0:!1),ga.label=P=n(C(Q(p[db].tooltext,
p[db].label))),0!==R&&(fa=Q(I.hovercolor,q.hovercolor,r.plotfillhovercolor,r.columnhovercolor,B),ha=Q(I.hoveralpha,q.hoveralpha,r.plotfillhoveralpha,r.columnhoveralpha,S),ca=Q(I.hovergradientcolor,q.hovergradientcolor,r.plothovergradientcolor,ka),!ca&&(ca=V),ya=Q(I.hoverratio,q.hoverratio,r.plothoverratio,Y),xa=d(360-I.hoverangle,360-q.hoverangle,360-r.plothoverangle,aa),X=Q(I.borderhovercolor,q.borderhovercolor,r.plotborderhovercolor,ia),ua=Q(I.borderhoveralpha,q.borderhoveralpha,r.plotborderhoveralpha,
r.plotfillhoveralpha,pa,S),S=d(I.borderhoverthickness,q.borderhoverthickness,r.plotborderhoverthickness,t),sa=d(I.borderhoverdashed,q.borderhoverdashed,r.plotborderhoverdashed),za=d(I.borderhoverdashgap,q.borderhoverdashgap,r.plotborderhoverdashgap,M),Ca=d(I.borderhoverdashlen,q.borderhoverdashlen,r.plotborderhoverdashlen,O),sa=sa?Ha(Ca,za,S):K,1==R&&fa===B&&(fa=W(fa,70)),B=a.graphics.getColumnColor(fa+","+ca,ha,ya,xa,N,X,ua.toString(),Sa?1:0,Ia?!0:!1),ga.setRolloutAttr={fill:Ia?[e(ra[0]),!l.use3DLighting]:
e(ra[0]),stroke:v&&e(ra[1]),"stroke-width":t,"stroke-dasharray":K},ga.setRolloverAttr={fill:Ia?[e(B[0]),!l.use3DLighting]:e(B[0]),stroke:v&&e(B[1]),"stroke-width":S,"stroke-dasharray":sa}),K=ga.toolTipValue,B=n(C(Q(I.tooltext,q.plottooltext,r.plottooltext))),ga.setErrorValue=ra=Aa.getCleanValue(I.errorvalue),ga.errorInPercent=d(I.errorinpercent,yb,0),ga.errorInPercent&&(ga.setErrorValue=ra=d((ra/100*la).toFixed(2))),ga.cumulativeValueOnErrorBar=d(I.cumulativevalueonerrorbar,l.cumulativeValueOnErrorBar,
1),ga.positiveErrorValue=Aa.getCleanValue(d(I.positiveerrorvalue,I.errorvalue)),ga.errorInPercent&&ga.positiveErrorValue&&(ga.positiveErrorValue=d((ga.positiveErrorValue/100*la).toFixed(2))),ga.positiveCumulativeErrorValue=la+d(ga.positiveErrorValue,ga.setErrorValue),ga.negativeErrorValue=Aa.getCleanValue(d(I.negativeerrorvalue,I.errorvalue)),ga.errorInPercent&&ga.negativeErrorValue&&(ga.negativeErrorValue=d((ga.negativeErrorValue/100*la).toFixed(2))),ga.negativeCumulativeErrorValue=la-d(ga.negativeErrorValue,
ga.setErrorValue),ga.errorToolTipValue=fa=Aa.dataLabels(ra,ja),ga.negativeErrorToolTipValue=Aa.dataLabels(ga.negativeErrorValue,ja),ga.negativeCumulativeErrorTooltipValue=Aa.dataLabels(ga.negativeCumulativeErrorValue,ja),ga.positiveErrorToolTipValue=Aa.dataLabels(ga.positiveErrorValue,ja),ga.positiveCumulativeErrorTooltipValue=Aa.dataLabels(ga.positiveCumulativeErrorValue,ja),ga.errorPercentValue=ha=x(ra/la*k*k)/k+H,g?null===K?I=!1:void 0!==B?(la=[1,2,3,4,5,6,7,99,100,101,102,120,121],P={yaxisName:u,
xaxisName:m,formattedValue:K,errorValue:ra,errorDataValue:fa,errorPercentValue:ha,errorPercentDataValue:ha,positiveErrorValue:ga.positiveErrorToolTipValue,negativeErrorValue:ga.negativeErrorToolTipValue,label:P},I=z(B,la,P,I,r,q)):(T&&(da=w(q&&q.seriesname)),I=da?da+A:V,I+=P?P+A:V):I=!1,ga.toolText=I,ga.setTooltext=I,L&&(aa=L);l=this.config.includeInLegend;!1!==h.hasLegend&&l&&this._addLegend();this.ErrorValueConfigure()},ErrorValueConfigure:function(){var h=this.chart,l=this.config,q=this.JSONData,
k=q.data,p=h.config.categories,p=c(p&&p.length,k&&k.length),b=h.jsonData.chart,h=a.parseUnsafeString,r,e,x,B=this.components.data,f=h(b.yaxisname),t=h(b.xaxisname),C,u=d(b.seriesnameintooltip,1),m,W=h(Q(b.tooltipsepchar,Z)),A,T,H,P,z,D,da,la=-Infinity,I=Infinity,L,O,M,N,U,S=function(h){l.showTooltip?null===D?h=!1:void 0!==h?(A=[1,2,3,4,5,6,7,99,100,101,102,120,121],T={yaxisName:f,xaxisName:t,formattedValue:x.toolTipValue,errorValue:z,errorDataValue:x.errorToolTipValue,errorPercentValue:x.errorPercentValue,
errorPercentDataValue:x.errorPercentValue,positiveErrorValue:x.positiveErrorToolTipValue,negativeErrorValue:x.negativeErrorToolTipValue,label:x.label},h=K(h,A,T,r,b,q)):(u&&(m=w(q&&q.seriesname)),h=m?m+W:V,h+=x.label?x.label+W:V):h=!1;return h},R;l.showValues=d(q.showvalues,b.showvalues,0);l.errorBarShadow=e=d(b.errorbarshadow,b.showshadow,1);l.ignoreEmptyDatasets=d(q.ignoreemptydatasets,0);O=d(b.halferrorbar,1);l.notHalfErrorBar=!d(b.halferrorbar,1);P=J(Q(q.errorbaralpha,b.errorbaralpha,l.plotFillAlpha));
l.errorBarWidthPercent=d(q.errorbarwidthpercent,b.errorbarwidthpercent,70);l.errorBarColor=v(g(Q(q.errorbarcolor,b.errorbarcolor,aa)),P);l.errorBarThickness=d(q.errorbarthickness,b.errorbarthickness,1);l.shadowOpacity=e?P/250:0;for(P=0;P<p;P++)if(r=k&&k[P],x=(e=B[P])&&e.config,R=H=void 0,void 0!==d(r.value)){e||(e=B[P]={graphics:{}});e.config||(x=B[P].config={});e=x.cumulativeValueOnErrorBar;x.notHalfErrorBar=l.notHalfErrorBar;x.halfErrorBar=O;L=x.setValue;x.showValue=d(r.showvalue,l.showValues);
x.hasErrorValue=void 0!==d(r.errorvalue)?1:0;z=x.setErrorValue;da=x.errorValue=z;D=H=x.errorToolTipValue;da=n(h(Q(r.errorplottooltext,q.errorplottooltext,b.errorplottooltext,D)));C=S(da);H=R=void 0;(da=n(h(Q(r.errorplottooltext,q.errorplottooltext,b.errorplottooltext,x.positiveErrorToolTipValue))))&&x.positiveErrorToolTipValue&&(H=S(da));(da=n(h(Q(r.errorplottooltext,q.errorplottooltext,b.errorplottooltext,x.negativeErrorToolTipValue))))&&x.negativeErrorToolTipValue&&(R=S(da));e&&((da=n(h(Q(r.errorplottooltext,
q.errorplottooltext,b.errorplottooltext,x.positiveCumulativeErrorTooltipValue))))&&x.positiveCumulativeErrorTooltipValue&&(N=S(da)),(da=n(h(Q(r.errorplottooltext,q.errorplottooltext,b.errorplottooltext,x.negativeCumulativeErrorTooltipValue))))&&x.negativeCumulativeErrorTooltipValue&&(U=S(da)));da=x.positiveErrorValue;M=x.negativeErrorValue;if(r.positiveerrorvalue||r.negativeerrorvalue)x.halfErrorBar=0,x.notHalfErrorBar=!0;da=L+(null!==da?da:z);L-=x.halfErrorBar?0:0>M&&0>L?0:null!=M?M:z;la=E(la,da,
L);I=c(I,da,L);x.errorValueArr=[];null===x.positiveErrorValue&&(x.positiveErrorValue=void 0);da=-x.positiveErrorValue;x.errorValueArr.push({errorValue:da,tooltext:e?N:H||C,errorEdgeBar:!0});x.errorValueArr.push({errorValue:da,tooltext:H||C});x.notHalfErrorBar&&(da=x.negativeErrorValue,x.errorValueArr.push({errorValue:da,tooltext:e?U:R||C,errorEdgeBar:!0}),x.errorValueArr.push({errorValue:da,tooltext:R||C}))}l.maxValue=la;l.minValue=I},init:function(h){var l=this.chart,q=l.components,q=l.isDual?q.yAxis[this.yAxis||
0]:q.yAxis[0];if(!h)return!1;this.JSONData=h;this.yAxis=q;this.chartGraphics=l.chartGraphics;this.components={};this.graphics={};this.visible=1===d(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);this.configure()},draw:function(){var h=this,l=h.JSONData,q=h.chart.jsonData.chart,k=h.config,p=h.groupManager,b=h.index,r=h.chart.config.categories,g=l.data,n,x,B,v,f=h.visible,E=h.chart,J=E.components.paper,w=E.components.xAxis[0],u=E.components.yAxis[0];n=E.graphics.columnGroup;var m,W,
A=a.parseUnsafeString,H=a.getValidValue,z=a.Raphael,K=k.showTooltip,Z=w.getAxisPosition(0),D=w.getAxisPosition(1),I=k.groupMaxWidth=D-Z,U=k.definedGroupPadding,R=k.plotSpacePercent/200,aa=p.getDataSetPosition(h),Z=p.manageClip,Y=k.maxColWidth,na=E.get(O,S),D=na.animType,ka=na.animObj,pa=na.dummyObj,na=na.duration,I=(1-.01*U)*I||c(I*(1-2*R),1*Y),I=d(aa.columnWidth,I/1),ia,U=aa.xPosOffset||0,aa=aa.height,ga,ra,R=h.components.data,fa,ha,ca,ya,xa,Y=u.getLimit(),X=Y.min,Y=0<Y.max&&0>X,X=u.getAxisBase(),
ua=u.yBasePos=u.getAxisPosition(X),sa=0,za=k.showShadow,Ca=k.plotBorderThickness,k=k.plotRadius,Ha=h.graphics.container,qa=h.graphics.dataLabelContainer,Aa=h.graphics.shadowContainer,Sa=h.graphics.errorGroupContainer,Ia=h.graphics.errorShadowContainer,ja,yb=!0,db=!1,Rb=!1,Eb=(h.components.removeDataArr||[]).length,Lb=h.components.pool||[],qb=E.config.plothovereffect,gb,Fb=function(){!1!==h.visible||!1!==h._conatinerHidden&&void 0!==h._conatinerHidden||(Ha.hide(),Aa.hide(),qa&&qa.hide(),Sa&&Sa.hide(),
Ia&&Ia.hide(),h._conatinerHidden=!0)},Gb=function(){h.drawLabel();h.drawErrorValue()};Ha||(Ha=h.graphics.container=J.group(L,n).trackTooltip(!0),f?Ha.show():Ha.hide());Aa||(Aa=h.graphics.shadowContainer=J.group(N,n).toBack(),f||Aa.hide());n=w.getCategoryLen();for(v=0;v<n;v++)if(x=g&&g[v],fa=R[v])if(gb=fa.trackerConfig={},B=(xa=fa&&fa.config)&&xa.setValue,void 0!==fa&&void 0!==B&&null!==B){m=0<=B;ca=xa.setLink;ja=xa.colorArr;fa.graphics||(R[v].graphics={});ya=xa.displayValue;m=m?xa.previousPositiveY:
xa.previousNegativeY;ha=H(A(Q(x.tooltext,l.plottooltext,q.plottooltext)));ia=u.getAxisPosition(m||X);x=w.getAxisPosition(v)+U;0!==aa?(m=u.getAxisPosition(B+(m||0)),ga=C(ia-m)):(ga=0,m=ia);m=c(m,ia);!Y&&Z&&f&&0<Ca&&(ga+=Ca,p.manageClip=!1);fa._oriXPos=x;fa._oriYPos=m;fa._oriHeight=ga;fa._oriWidth=I;p.isCrisp?(W=z.crispBound(x,m,I,ga,Ca),x=W.x,m=W.y,ia=W.width,ga=W.height):ia=I;ra=xa.finalTooltext=!1!==xa.toolText&&xa.toolText+(ha?"":xa.toolTipValue);ha=xa.plotBorderDashStyle;gb.eventArgs={index:v,
link:ca,value:B,cursor:ca?"pointer":V,displayValue:ya,categoryLabel:r[v].label,toolText:ra?ra:"",id:V,datasetIndex:b,datasetName:l.seriesname,visible:f};na||(ua=m,sa=ga);B={x:x,y:ua,width:ia,height:sa||1,r:k,ishot:!K,fill:e(ja[0]),stroke:e(ja[1]),"stroke-width":Ca,"stroke-dasharray":ha,"stroke-linejoin":M,visibility:f};fa._xPos=x;fa._yPos=m;fa._height=ga;fa._width=ia;fa.graphics.element?(db=Rb=!0,fa=fa.graphics.element,B={x:x,y:m,width:ia,height:ga||1},fa.animateWith(pa,ka,B,na,D,yb&&Fb),fa.attr({r:k,
ishot:!K,fill:e(ja[0]),stroke:e(ja[1]),"stroke-width":Ca,"stroke-dasharray":ha,"stroke-linejoin":M,visibility:f}),xa.elemCreated=!1):(Lb.element&&Lb.element.length?(fa=fa.graphics.element=Lb.element.shift(),fa.show()):fa=fa.graphics.element=J.rect(B,Ha),fa.attr(B),fa.animateWith(pa,ka,{y:m,height:ga||1},na,D,yb&&Gb),yb=!1,xa.elemCreated=!0);fa.shadow({opacity:za},Aa).data("BBox",W);if(ca||K)ga<la&&(m-=(la-ga)/2,ga=la),gb.attr={x:x,y:m,width:ia,height:ga,r:k,stroke:da,"stroke-width":Ca,fill:da,ishot:!0,
visibility:f};ca=b+"_"+v;E.config.enablemousetracking&&fa.data("groupId",ca).data("eventArgs",gb.eventArgs).data(P,qb).data(t,xa.setRolloverAttr||{}).data(T,xa.setRolloutAttr||{})}Eb&&h.remove();db&&h.drawLabel();Rb&&h.drawErrorValue()},show:function(){var h=this.graphics&&this.graphics.container,l=this.graphics&&this.graphics.dataLabelContainer,q=this.graphics&&this.graphics.shadowContainer,a=this.graphics&&this.graphics.errorGroupContainer,k=this.graphics&&this.graphics.errorShadowContainer,d=this.chart.is3D,
b=this.components.data,e=this.chart.config.categories,g=this.yAxis,n=this.chart,e=c(this.JSONData.data&&this.JSONData.data.length,e&&e.length);n._chartAnimation();this.visible=!0;this._conatinerHidden=!1;if(d)for(h=0;h<e;h++)b[h].graphics.element&&b[h].graphics.element.attr(A,u);else h.show();q.show();l&&l.show();a&&a.show();k&&k.show();n._setAxisLimits();g.draw();n._drawDataset()},hide:function(){var h=this.yAxis,l=this.chart;l._chartAnimation();this.visible=!1;l._setAxisLimits();h.draw();l._drawDataset()},
drawErrorValue:function(){var h=this.index,l=this.config,q=this.JSONData.data,a=q&&q.length,k,d,b;d=this.visible;var q=this.chart,e=q.components.xAxis[0].getCategoryLen(),g=q.graphics.columnGroup,n=q.components.paper,B=q.components.yAxis[0],v=this.components.data,f=this.groupManager.getDataSetPosition(this).height,E=q.get(O,S),J=E.animType,w=E.animObj,t=E.dummyObj,E=E.duration,u=l.errorBarThickness,W=l.errorBarWidthPercent,A=l.errorBarColor,T=l.showTooltip,l=l.shadowOpacity,H=this.graphics.errorGroupContainer,
P=this.graphics.errorShadowContainer,z,K,Z,D,Q,L,M,N,U,aa,Y,ga,ra,fa,ha,ca=5<u?u/2:2.5,ya;H||(H=this.graphics.errorGroupContainer=n.group(R,g),d||H.hide());P||(P=this.graphics.errorShadowContainer=n.group(I,g).toBack(),d||P.hide());a=c(e,a);for(d=0;d<a;d++){e=v[d];ha=e.trackerConfig;ya=e.errorTrackerConfig={};ya.errorTrackerArr=[];K=(g=e&&e.config)&&g.setValue;if(e&&(void 0===K||null===K))for(e.graphics.element&&(e.graphics.element.hide(),e.graphics.element.shadow(!1)),e.graphics.hotElement&&e.graphics.hotElement.hide(),
N=e.graphics.error&&e.graphics.error.length,b=0;b<N;b++)e.graphics.error&&e.graphics.error[b]&&(e.graphics.error[b].hide(),e.graphics.error[b].shadow({opacity:0}));if(void 0!==e&&void 0!==K&&null!==K)if(e.errorBar&&delete e.errorBar,L=g.errorValueArr,ya.errorLen=N=L.length,!e.graphics.error&&(e.graphics.error=[]),!e.graphics.errorTracker&&(e.graphics.errorTracker=[]),g.errorValue===V||void 0===g.errorValue||null===g.errorValue&&null===g.positiveErrorValue&&null===g.negativeErrorValue)for(b=0;b<N;b++)e.graphics.error&&
e.graphics.error[b]&&(e.graphics.error[b].hide(),e.graphics.error[b].shadow({opacity:0}));else{aa=h+"_"+d;b=g.setLink;Y=0>K;z=e._oriXPos;ga=e._oriYPos;ra=e._oriWidth;fa=e._oriHeight;K=Y?ga+fa:ga;z+=ra/2;for(e.errorBar||(e.errorBar=[]);N--;)ya.errorTrackerArr[N]={},k=L[N],ya.errorTrackerArr[N].tooltext=k.tooltext,M=K,Q=k.errorValue,null===Q||isNaN(Q)?e.graphics.error&&e.graphics.error[N]&&(e.graphics.error[N].hide(),e.graphics.error[N].shadow({opacity:0})):(U=W/100*ra,U/=2,Z=0===f?0:1,Q=ga+(B.getAxisPosition(0)-
B.getAxisPosition(1))*Q*Z,Y&&(Q+=fa),Z=x(Q)+u%2/2,D=x(z)+u%2/2,e.errorBar[N]||(e.errorBar[N]=[]),k.errorEdgeBar?(Q=["M",D-U,Z,"H",D+U],e.errorBar[N][1]={_xPos:D-U-ca,_yPos:Z-ca,_height:2*ca,_width:2*(U+ca),_toolText:k.tooltext}):(Q=["M",D,M,"V",Z],e.errorBar[N][0]={_xPos:D-ca,_yPos:Z<M?Z:M,_height:C(M-Z),_width:2*ca,_toolText:k.tooltext}),e.graphics.error[N]?(k={path:Q},M=e.graphics.error[N],M.animateWith(t,w,k,E,J),M.attr({stroke:A,ishot:!T,"stroke-width":u,cursor:b?"pointer":V,"stroke-linecap":m})):
M=e.graphics.error[N]=n.path(Q,H).attr({stroke:A,ishot:!T,"stroke-width":u,cursor:b?"pointer":V,"stroke-linecap":m}),M.show(),M.shadow({opacity:l},P),ya.errorTrackerArr[N].attr={path:Q,stroke:da,"stroke-width":u<la?la:u,cursor:b?"pointer":V,ishot:!!b},q.config.enablemousetracking&&M.data("groupId",aa).data("eventArgs",ha.eventArgs));if(!g.notHalfErrorBar)for(b=2;4>b;b++)e.graphics.error&&e.graphics.error[b]&&e.graphics.error[b].hide()&&e.graphics.error[b].shadow({opacity:0})}}},_rolloverResponseSetter:function(h,
l,a){var c=l.graphics;l=l.errorBarHovered;var k=(c=c&&c.element)&&c.getData();!l&&c&&0!==k.showHoverEffect&&c.attr(c.getData().setRolloverAttr);c&&q.call(c,h,a,"DataPlotRollOver")},_rolloutResponseSetter:function(h,l,a){var c=l.graphics;l=l.errorBarHovered;var k=(c=c&&c.element)&&c.getData();!l&&c&&0!==k.showHoverEffect&&c.attr(c.getData().setRolloutAttr);c&&q.call(c,h,a,"DataPlotRollOut")},_firePlotEvent:function(h,l,c,k){var p=this.chart,d=this.components.data[l],e=d.graphics.element,b=d.errorBarHovered,
g=a.toolTip,n=c.originalEvent,x=p.components.paper.canvas.style,B=d.config.setLink;if(e)switch(h){case "mouseover":this._decideTooltipType(l,k,c);this._rolloverResponseSetter(p,d,n);B&&(x.cursor="pointer");break;case "mouseout":g.hide(p.chartInstance.id);this._rolloutResponseSetter(p,d,n);B&&(x.cursor="default");break;case "click":q.call(e,p,n);break;case "mousemove":this._decideTooltipType(l,k,c),b&&!d._isRollover?(0!==e.showHoverEffect&&e.attr(e.getData().setRolloutAttr),d._isRollover=!0,d._isRollout=
!1):b||d._isRollout||(0!==e.showHoverEffect&&e.attr(e.getData().setRolloverAttr),d._isRollover=!1,d._isRollout=!0)}},_checkPointerOverErrorBar:function(h,l,q){var a=this.components.data,c=a[h],k,d,e,b,g,n,x,B;if(c&&(c=c.errorBar))for(e=c&&c.length;e--;)for(b=(d=c[e])&&d.length;b--;)if(d[b]&&d[b]._xPos&&(k=d[b]._xPos,n=d[b]._yPos,x=d[b]._height,B=d[b]._width,g=d[b]._toolText,k=l>=k&&l<=k+B&&q>=n&&q<=n+x))return{pointIndex:h,hovered:k,pointObj:a[h],toolText:g}},_checkPointerOverPlot:function(h,q,a){var c=
this.components.data[h],k=c&&c.config,d;if(c)return(d=this._checkPointerOverErrorBar(h,q,a))?(c.errorBarHovered=!0,k.finalTooltext=d.toolText):(d=this._checkPointerOverColumn(h,q,a),c.errorBarHovered=!1,d&&(k.finalTooltext=!1!==k.toolText&&k.toolText+k.toolTipValue)),d},_getHoveredPlot:function(h,q){var a=this.chart,c=a.components.canvas.config,a=a.components.xAxis[0].getValue(h-a.config.canvasLeft-Math.max(c.canvasPaddingLeft,c.canvasPadding)),c=Math.round(a);return 0<c-a?this._checkPointerOverPlot(c,
h,q)||this._checkPointerOverPlot(c-1,h,q):this._checkPointerOverPlot(c+1,h,q)||this._checkPointerOverPlot(c,h,q)},remove:function(){var h=this.components,q=h.removeDataArr,a=h.pool||(h.pool={element:[],hotElement:[],label:[]}),c=q.length,k,d=this.maxminFlag,e,b,g;for(b=0;b<c;b++)if(k=q[0],q.splice(0,1),k&&k.graphics){e=k.graphics;e.element&&e.element.hide()&&e.element.shadow({opacity:0});for(g=0;4>g;g++)e.error&&e.error[g]&&e.error[g].hide()&&e.error[g].shadow({opacity:0});e.hotElement&&e.hotElement.hide()&&
e.hotElement.attr({width:0});k.graphics.element&&(a.element=a.element.concat(k.graphics.element));k.graphics.hotElement&&(a.hotElement=a.hotElement.concat(k.graphics.hotElement));k.graphics.label&&(a.label=a.label.concat(k.graphics.label))}h.pool=a;d&&this.setMaxMin()}},"Column"])}]);Y.register("module",["private","modules.renderer.js-dataset-errorline",function(){var a=this.hcLib,b=a.preDefStr,z=b.colors.AAAAAA,U=b.configStr,aa=b.animationObjStr,O=b.errorBarStr,S=b.errorShadowStr,L=b.ROUND,N=b.PERCENTAGESTRING,
b=b.line,R=a.BLANKSTRING,I=a.parseTooltext,M=a.pluck,u=a.getValidValue,A=a.pluckNumber,m=a.getFirstValue,H=a.COMMASPACE,D="rgba(192,192,192,"+(a.isIE?.002:1E-6)+")",f=a.TOUCH_THRESHOLD_PIXELS,V=a.CLICK_THRESHOLD_PIXELS,K=Math,Q=K.round,n=K.min,d=K.max,w=K.abs,e=a.hasTouch?f:V,Z=a.getFirstColor,P=a.getFirstAlpha,t=a.graphics.convertColor,T=a.HUNDREDSTRING;Y.register("component",["dataset","ErrorLine",{type:b,ErrorValueConfigure:function(){var e=this.chart,b=this.config,x=e.config,c=b.parentYAxis,E=
this.JSONData,f=E.data,w=e.jsonData.chart,g=e.components.xAxis[0].getCategoryLen(),J=a.parseUnsafeString,W,v,k,q=this.components.data,e=e.components.numberFormatter,h,l,G,F,p,y,r,ea;ea=b.linethickness;var K=-Infinity,Ja=Infinity,ba,D=J(w.yaxisname),L=J(w.xaxisname),V,Ra=M(w.tooltipsepchar,H),O,Ya,ob,U,aa=A(w.seriesnameintooltip,1),S=function(h){x.showtooltip?null===F?h=!1:void 0!==h?(O=[1,2,3,4,5,6,7,99,100,101,102],Ya={yaxisName:D,xaxisName:L,formattedValue:k.toolTipValue,errorValue:G,errorDataValue:k.errorToolTipValue,
errorPercentValue:k.errorPercentValue,errorPercentDataValue:k.errorPercentValue,label:k.label},h=I(h,O,Ya,W,w,E)):(aa&&(ob=m(E&&E.seriesname)),h=ob?ob+Ra:R,h+=k.label?k.label+Ra:R):h=!1;return h};b.errorBarShadow=v=A(w.errorbarshadow,w.showshadow,1);b.ignoreEmptyDatasets=A(E.ignoreemptydatasets,0);A(w.halferrorbar,1);b.notHalfErrorBar=!A(w.halferrorbar,1);h=P(M(E.errorbaralpha,w.errorbaralpha,b.alpha));b.errorBarWidth=A(E.errorbarwidth,w.errorbarwidth,5);b.errorBarColor=t(Z(M(E.errorbarcolor,w.errorbarcolor,
z)),h);l=A(E.errorbarthickness,w.errorbarthickness,1);b.errorBarThickness=l>ea?ea:l;b.shadowOpacity=v?h/250:0;b.errorInPercent=h=A(E.errorinpercent,w.errorinpercent);b.cumulativeValueOnErrorBar=A(E.cumulativevalueonerrorbar,w.cumulativevalueonerrorbar,1);for(l=0;l<g;l++)if(W=f&&f[l],f&&W){k=(v=q[l])&&v.config;v||(v=q[l]={graphics:{}});v.config||(k=q[l].config={});ba=k.setValue;k.notHalfErrorBar=b.notHalfErrorBar;G=e.getCleanValue(W.errorvalue);k.errorToolTipValue=e.dataLabels(G,c);Q(G/ba*T*T);k.setErrorValue=
k.errorValue=p=G;k.hasErrorValue=void 0!==A(W.errorvalue)?1:0;F=v=k.errorToolTipValue;p=u(J(M(W.errorplottooltext,E.errorplottooltext,w.errorplottooltext,F)));U=S(p);k.errorInPercent=A(W.errorinpercent,h,0);k.errorInPercent&&(k.setErrorValue=G=A((G/100*ba).toFixed(2)));k.cumulativeValueOnErrorBar=V=A(W.cumulativevalueonerrorbar,b.cumulativeValueOnErrorBar,1);k.positiveErrorValue=e.getCleanValue(A(W.positiveerrorvalue,W.errorvalue));k.errorInPercent&&k.positiveErrorValue&&(k.positiveErrorValue=A((k.positiveErrorValue/
100*ba).toFixed(2)));k.positiveCumulativeErrorValue=ba+A(k.positiveErrorValue,k.setErrorValue);k.negativeErrorValue=e.getCleanValue(A(W.negativeerrorvalue,W.errorvalue));k.errorInPercent&&k.negativeErrorValue&&(k.negativeErrorValue=A((k.negativeErrorValue/100*ba).toFixed(2)));k.negativeCumulativeErrorValue=ba-A(k.negativeErrorValue,k.setErrorValue);k.errorToolTipValue=e.dataLabels(G,c);k.negativeErrorToolTipValue=e.dataLabels(k.negativeErrorValue,c);k.negativeCumulativeErrorTooltipValue=e.dataLabels(k.negativeCumulativeErrorValue,
c);k.positiveErrorToolTipValue=e.dataLabels(k.positiveErrorValue,c);k.positiveCumulativeErrorTooltipValue=e.dataLabels(k.positiveCumulativeErrorValue,c);k.errorPercentValue=Q(G/ba*T*T)/T+N;v=ea=void 0;(p=u(J(M(W.errorplottooltext,E.errorplottooltext,w.errorplottooltext,k.positiveErrorToolTipValue))))&&k.positiveErrorToolTipValue&&(v=S(p));(p=u(J(M(W.errorplottooltext,E.errorplottooltext,w.errorplottooltext,k.negativeErrorToolTipValue))))&&k.negativeErrorToolTipValue&&(ea=S(p));if(W.positiveerrorvalue||
W.negativeerrorvalue)k.halfErrorBar=0,k.notHalfErrorBar=!0;V&&((p=u(J(M(W.errorplottooltext,E.errorplottooltext,w.errorplottooltext,k.positiveCumulativeErrorTooltipValue))))&&k.positiveCumulativeErrorTooltipValue&&(y=S(p)),(p=u(J(M(W.errorplottooltext,E.errorplottooltext,w.errorplottooltext,k.negativeCumulativeErrorTooltipValue))))&&k.negativeCumulativeErrorTooltipValue&&(r=S(p)));p=ba+(null!==k.positiveErrorValue?k.positiveErrorValue:G);ba-=k.halfErrorBar?0:0>k.negativeErrorValue&&0>ba?0:null!=k.negativeErrorValue?
k.negativeErrorValue:G;K=d(K,p,ba);Ja=n(Ja,p,ba);null==G&&(G=void 0);k.errorValueArr=[];null===k.positiveErrorValue&&(k.positiveErrorValue=void 0);p=-k.positiveErrorValue;k.errorValueArr.push({errorValue:p,tooltext:V?y:v||U,errorEdgeBar:!0});k.errorValueArr.push({errorValue:p,tooltext:v||U});k.notHalfErrorBar&&(p=k.negativeErrorValue,k.errorValueArr.push({errorValue:p,tooltext:V?r:ea||U,errorEdgeBar:!0}),k.errorValueArr.push({errorValue:p,tooltext:ea||U}));k.toolText=S(k.setTooltext)}b.maxValue=K;
b.minValue=Ja},init:function(a){var d=this.chart,e=d.components,c=d.isDual;this.chart=d;this.yAxis=c?e.yAxis[this.yAxis||0]:e.yAxis[0];this.components={};this.graphics={};this.JSONData=a;this.visible=1===A(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);this.configure()},show:function(){var a=this.chart,d=this.yAxis,e=this.graphics&&this.graphics.container,c=this.graphics&&this.graphics.dataLabelContainer,b=this.graphics&&this.graphics.errorGroupContainer,n=this.graphics&&this.graphics.errorShadowContainer;
a._chartAnimation();e.lineGroup.show();e.anchorGroup.show();e.anchorShadowGroup.show();e.lineShadowGroup.show();c.show();this.visible=!0;b&&b.show();n&&n.show();this._conatinerHidden=!1;a._setAxisLimits();d.draw();a._drawDataset()},hide:function(){var a=this.chart,d=this.yAxis;a._chartAnimation();this.visible=!1;a._setAxisLimits();d.draw();a._drawDataset()},drawErrorValue:function(){var a=this.config,d=this.chart,b=d.graphics.datasetGroup,c=d.components,n=c.xAxis[0].getCategoryLen(),f,t,g=this.visible,
c=c.paper,J=this.yAxis,u=this.components.data,v=d.get(U,aa),k=v.animType,q=v.animObj,h=v.dummyObj,v=v.duration,l=a.errorBarThickness,G=a.errorBarWidth,F=a.errorBarColor,d=d.config.showtooltip,a=a.shadowOpacity,p=this.graphics.container.lineGroup,y=this.graphics.errorGroupContainer,r=this.graphics.errorShadowContainer,ea,m,A,ba,T,H,K,P,z,Z,I=5<l?l/2:2.5,V,N;y||(y=this.graphics.errorGroupContainer=c.group(O,b).insertAfter(p),g||y.hide());r||(r=this.graphics.errorShadowContainer=c.group(S,b).insertBefore(y),
g||r.hide());for(b=0;b<n;b++)if(p=u[b],N=p.errorTrackerConfig={},N.errorTrackerArr=[],ba=(t=p&&p.config)&&t.setValue,void 0===p||void 0===ba||null===ba){if(p.graphics.error)for(t=0;t<p.graphics.error.length;t++)p.graphics.error[t].hide(),p.graphics.errorTracker[t].hide(),p.graphics.error[t].shadow(!1)}else if(P=t.errorValueArr,N.errorLen=ba=P.length,!p.graphics.error&&(p.graphics.error=[]),!p.graphics.errorTracker&&(p.graphics.errorTracker=[]),t.errorValue===R||void 0===t.errorValue||null===t.errorValue&&
null===t.positiveErrorValue&&null===t.negativeErrorValue)for(t=0;t<ba;t++)p.graphics.error&&p.graphics.error[t]&&(p.graphics.error[t].hide(),p.graphics.error[t].shadow({opacity:0}));else{ea=t.setLink;m=p._xPos;A=V=p._yPos;p.errorBar&&delete p.errorBar;for(p.errorBar=[];ba--;)N.errorTrackerArr[ba]={},f=P[ba],N.errorTrackerArr[ba].tooltext=f.tooltext,z=A,T=f.errorValue,null===T||isNaN(T)?p.graphics.error&&p.graphics.error[ba]&&(p.graphics.error[ba].hide(),p.graphics.error[ba].shadow({opacity:0})):(Z=
G/2,K=g?1:0,K=V+(J.getAxisPosition(0)-J.getAxisPosition(1))*T*K,T=Q(K)+l%2/2,H=Q(m)+l%2/2,p.errorBar[ba]||(p.errorBar[ba]=[]),f.errorEdgeBar?(K=["M",H-Z,T,"H",H+Z],p.errorBar[ba][1]={_xPos:H-Z-I,_yPos:T-I,_height:2*I,_width:2*(Z+I),_toolText:f.tooltext}):(K=["M",H,z,"V",T],p.errorBar[ba][0]={_xPos:H-I,_yPos:T<z?T:z,_height:w(z-T),_width:2*I,_toolText:f.tooltext}),p.graphics.error[ba]?(f={path:K},z=p.graphics.error[ba],z.animateWith(h,q,f,v,k),z.attr({stroke:F,ishot:!d,"stroke-width":l,cursor:ea?"pointer":
R,"stroke-linecap":L})):z=p.graphics.error[ba]=c.path(K,y).attr({stroke:F,ishot:!d,"stroke-width":l,cursor:ea?"pointer":R,"stroke-linecap":L}),z.show(),z.shadow({opacity:a},r),N.errorTrackerArr[ba].attr={path:K,stroke:D,"stroke-width":l<e?e:l,cursor:ea?"pointer":R,ishot:!!ea});if(!t.notHalfErrorBar)for(t=2;4>t;t++)p.graphics.error&&p.graphics.error[t]&&p.graphics.error[t].hide()&&p.graphics.error[t].shadow({opacity:0})}},_rolloverResponseSetter:Y.get("component",["dataset","ErrorBar2D"]).prototype._rolloverResponseSetter,
_rolloutResponseSetter:Y.get("component",["dataset","ErrorBar2D"]).prototype._rolloutResponseSetter,_firePlotEvent:Y.get("component",["dataset","ErrorBar2D"]).prototype._firePlotEvent,_checkPointerOverErrorBar:Y.get("component",["dataset","ErrorBar2D"]).prototype._checkPointerOverErrorBar,_checkPointerOverPlot:function(a,d,e){var c=this.components.data[a],b=c&&c.config,n;if(c){if(n=this.isWithinShape(c,a,d,e))c.errorBarHovered=!1,b.finalTooltext=!1!==b.toolText&&b.toolText+b.toolTipValue;else if(n=
this._checkPointerOverErrorBar(a,d,e))c.errorBarHovered=!0,b.finalTooltext=n.toolText;return n}},_getHoveredPlot:Y.get("component",["dataset","ErrorBar2D"]).prototype._getHoveredPlot,manageSpace:function(){var a=.5*this.config.errorBarWidth,e=this.chart,b=e.config.dataLabelStyle,c=(this.components||{}).data||[],n=c[0],c=c[c.length-1],f,w;f={};var g,J,t,v=e.linkedItems.smartLabel,k={paddingLeft:0,paddingRight:0};n&&(n=n.config,t=n.showValue,w=n&&n.anchorProps||{},t&&(f=n.displayValue,v.useEllipsesOnOverflow(e.config.useEllipsesWhenOverflow),
v.setStyle(b),f=v.getOriSize(f)),n.setValue&&(g=d(A(w.radius,0),a)+A(w.borderThickness,0),J=(f.width||0)/2),k.paddingLeft=d(g,J));c&&(n=c.config,t=n.showValue,w=n&&n.anchorProps||{},t&&(f=n.displayValue,v.setStyle(b),f=v.getOriSize(f)),n.setValue&&(g=d(A(w.radius,0),a)+A(w.borderThickness,0),J=(f.width||0)/2),k.paddingRight=d(g,J));return k},_removeDataVisuals:function(a){var d,e;if(a){d=a.graphics;d.element&&d.element.hide()&&d.element.shadow({opacity:0});for(e=0;4>e;e++)a.graphics.error&&a.graphics.error[e]&&
a.graphics.error[e].hide()&&a.graphics.error[e].shadow({opacity:0});d.hotElement&&d.hotElement.hide()&&d.hotElement.attr({width:0})}}},b])}]);Y.register("module",["private","modules.renderer.js-dataset-errorscatter",function(){var a=this.hcLib,b=a.preDefStr,z=b.colors.AAAAAA,U=b.configStr,aa=b.animationObjStr,O=b.errorBarStr,S=b.errorShadowStr,L=b.ROUND,N=b.PERCENTAGESTRING,R=a.BLANKSTRING,I=a.BLANKSTRING,M=a.parseTooltext,u=a.pluck,A=a.getValidValue,m=a.pluckNumber,H=a.COMMASPACE,D="rgba(192,192,192,"+
(a.isIE?.002:1E-6)+")",b=a.TOUCH_THRESHOLD_PIXELS,f=a.CLICK_THRESHOLD_PIXELS,V=Math,K=V.round,Q=V.min,n=V.max,d=V.abs,w=a.hasTouch?b:f,e=a.getFirstColor,Z=a.getFirstAlpha,P=a.graphics.convertColor,t=a.HUNDREDSTRING;Y.register("component",["dataset","ErrorScatter",{ErrorValueConfigure:function(){var d=this.chart,b=d.components,f=this.config,x=this.JSONData,c=d.config.categories,w=d.jsonData.chart,C=x.data,D=b.xAxis[0].getCategoryLen(),D=C&&C.length||D,g=a.parseUnsafeString,J,W,v,k=this.components.data,
q=b.numberFormatter,h,l,G,F,p,y,r,ea,Ka,Ja,ba=u(w.tooltipsepchar,H),I=g(w.yaxisname),V=g(w.xaxisname),L=f.parentYAxis,O,U,Ya,ob,S,aa,Y,ma,Oa,Pa,Va,va,Ea,ta,Fa,wa,na,ka,pa,ia,ga,ra,fa,ha,ca,ya,xa,X,ua,sa,za=-Infinity,Ca=Infinity,Ha=Infinity,qa=-Infinity,Aa=function(h,l){var c;f.showTooltip?null===U?c=!1:void 0!==h?(S=[1,2,3,4,5,6,7,8,9,10,11,99,100,101,102,103,104,105,106,107,109],aa={yaxisName:I,xaxisName:V,yDataValue:U,xDataValue:v.label,formattedValue:v.toolTipValue,horizontalErrorValue:Ka,horizontalErrorDataValue:void 0,
verticalErrorValue:Ja,verticalErrorDataValue:void 0,horizontalErrorPercent:Ya,verticalErrorPercent:ob,label:v.label,errorValue:l,errorDataValue:l,errorPercentValue:v.errorPercentValue,errorPercentDataValue:v.errorPercentValue},c=M(h,S,aa,J,w,x)):null===U?c=!1:(f.seriesNameInTooltip&&(Y=a.getFirstValue(x&&x.seriesname)),c=Y?Y+ba:R,c+=O.x?q.xAxis(O.x)+ba:R,c+=v.toolTipValue):c=!1;return c};f.errorBarShadow=b=m(w.errorbarshadow,w.showshadow,0);f.ignoreEmptyDatasets=m(x.ignoreemptydatasets,0);f.notHalfErrorBar=
!m(w.halferrorbar,1);f.errorBarAlpha=Z(u(x.errorbaralpha,w.errorbaralpha));f.errorBarWidth=l=m(x.errorbarwidth,w.errorbarwidth,5);f.errorBarColor=G=P(e(u(x.errorbarcolor,w.errorbarcolor,z)),void 0);f.errorBarThickness=h=m(x.errorbarthickness,w.errorbarthickness,1);f.shadowOpacity=b?NaN:0;f.halfHorizontalErrorBar=F=m(w.halfhorizontalerrorbar,1);f.halfVerticalErrorBar=p=m(w.halfverticalerrorbar,1);void 0===f.initAnimation&&(f.initAnimation=d.initAnimation);d=u(x.horizontalerrorbaralpha,x.errorbaralpha,
w.horizontalerrorbaralpha,void 0);y=m(x.verticalerrorbaralpha,x.errorbaralpha,w.verticalerrorbaralpha,void 0);r=P(u(x.horizontalerrorbarcolor,x.errorbarcolor,w.horizontalerrorbarcolor,G),d);G=P(u(x.verticalerrorbarcolor,x.errorbarcolor,w.verticalerrorbarcolor,G),y);ea=m(x.horizontalerrorbarthickness,x.errorbarthickness,w.horizontalerrorbarthickness,h);h=m(x.verticalerrorbarthickness,x.errorbarthickness,w.verticalerrorbarthickness,h);f.horizontalErrorBarWidth=m(x.horizontalerrorbarwidth,w.horizontalerrorbarwidth,
l);f.verticalErrorBarWidth=m(x.verticalerrorbarwidth,w.verticalerrorbarwidth,l);f.cumulativeValueOnErrorBar=m(x.cumulativevalueonerrorbar,w.cumulativevalueonerrorbar,1);for(l=0;l<D;l++)C&&(J=C&&C[l],v=(W=k[l])&&W.config,W||(W=k[l]={graphics:{}}),W.config||(v=k[l].config={}),W=q.getCleanValue(J.errorvalue),O=v.setValue,v.errorValue=J.errorvalue,v.cumulativeValueOnErrorBar=X=m(J.cumulativevalueonerrorbar,f.cumulativeValueOnErrorBar,1),v.hErrorValue=Ka=q.getCleanValue(u(J.horizontalerrorvalue,J.errorvalue)),
v.vErrorValue=Ja=q.getCleanValue(u(J.verticalerrorvalue,J.errorvalue)),v.hPositiveErrorValue=va=q.getCleanValue(u(J.horizontalpositiveerrorvalue,J.positiveerrorvalue,Ka)),v.hNegativeErrorValue=Va=q.getCleanValue(u(J.horizontalnegativeerrorvalue,J.negativeerrorvalue,Ka)),v.vPositiveErrorValue=Pa=q.getCleanValue(u(J.verticalpositiveerrorvalue,J.positiveerrorvalue,Ja)),v.vNegativeErrorValue=ra=q.getCleanValue(u(J.verticalnegativeerrorvalue,J.negativeerrorvalue,Ja)),ta=q.dataLabels(va,L),Ea=A(g(u(J.errorplottooltext,
x.errorplottooltext,w.errorplottooltext,ta))),na=q.dataLabels(Va,L),ia=A(g(u(J.errorplottooltext,x.errorplottooltext,w.errorplottooltext,na))),pa=q.dataLabels(Pa,L),ca=A(g(u(J.errorplottooltext,x.errorplottooltext,w.errorplottooltext,pa))),sa=q.dataLabels(ra,L),ua=A(g(u(J.errorplottooltext,x.errorplottooltext,w.errorplottooltext,sa))),Fa=ya=xa=fa=void 0,X&&(wa=q.dataLabels(O.x+va,L),Fa=A(g(u(J.errorplottooltext,x.errorplottooltext,w.errorplottooltext,wa))),ka=q.dataLabels(O.x-Va,L),ya=A(g(u(J.errorplottooltext,
x.errorplottooltext,w.errorplottooltext,ka))),ga=q.dataLabels(O.y+Pa,L),xa=A(g(u(J.errorplottooltext,x.errorplottooltext,w.errorplottooltext,ga))),ha=q.dataLabels(O.y-ra,L),fa=A(g(u(J.errorplottooltext,x.errorplottooltext,w.errorplottooltext,ha)))),c&&c[l]&&(v.label=A(g(u(c[l].tooltext,c[l].label)))),v.halfHorizontalErrorBar=J.horizontalpositiveerrorvalue||J.positiveerrorvalue||J.horizontalnegativeerrorvalue||J.negativeerrorvalue?F=0:F=f.halfHorizontalErrorBar,v.halfVerticalErrorBar=J.verticalpositiveerrorvalue||
J.positiveerrorvalue||J.verticalnegativeerrorvalue||J.negativeerrorvalue?p=0:p=f.halfVerticalErrorBar,null!==O.x&&(ma=O.x+Number(va),Oa=O.x-(F?0:Number(Va)),qa=n(qa,ma,Oa),Ha=Q(Ha,ma,Oa)),null!==O.y&&(ma=O.y+Number(Pa),Oa=O.y-(p?0:Number(ra)),za=n(za,ma,Oa),Ca=Q(Ca,ma,Oa)),v.useHorizontalErrorBar=m(J.usehorizontalerrorbar,x.usehorizontalerrorbar,w.usehorizontalerrorbar,0),v.useVerticalErrorBar=m(J.useverticalerrorbar,x.useverticalerrorbar,w.useverticalerrorbar,1),v.errorValueArr=[],v.errorValueArr.push({errorValue:-(null===
va?NaN:va),tooltext:Aa(Ea,ta),errorBarColor:r,isHorizontal:1,errorBarThickness:ea,shadowOpacity:b?d/250:0}),v.errorValueArr.push({errorValue:-(null===va?NaN:va),tooltext:X?Aa(Fa,wa):Aa(Ea,ta),errorBarColor:r,isHorizontal:1,errorBarThickness:ea,shadowOpacity:b?d/250:0,errorEdgeBar:!0}),v.errorValueArr.push({errorValue:Va,tooltext:Aa(ia,na),errorBarColor:r,isHorizontal:1,errorBarThickness:ea,shadowOpacity:b?d/250:0}),v.errorValueArr.push({errorValue:Va,tooltext:X?Aa(ya,ka):Aa(ia,na),errorBarColor:r,
isHorizontal:1,errorBarThickness:ea,shadowOpacity:b?d/250:0,errorEdgeBar:!0}),v.errorValueArr.push({errorValue:-(null===Pa?NaN:Pa),tooltext:Aa(ca,pa),errorBarColor:G,errorBarThickness:h,shadowOpacity:b?y/250:0}),v.errorValueArr.push({errorValue:-(null===Pa?NaN:Pa),tooltext:X?Aa(xa,ga):Aa(ca,pa),errorBarColor:G,errorBarThickness:h,shadowOpacity:b?y/250:0,errorEdgeBar:!0}),v.errorValueArr.push({errorValue:ra,tooltext:Aa(ua,sa),errorBarColor:G,errorBarThickness:h,shadowOpacity:b?y/250:0}),v.errorValueArr.push({errorValue:ra,
tooltext:X?Aa(fa,ha):Aa(ua,sa),errorBarColor:G,errorBarThickness:h,shadowOpacity:b?y/250:0,errorEdgeBar:!0}),O=v.setValue,K(W/O*t*t),Ya=K(Ka/O*t*t)/t+N,ob=K(Ja/O*t*t)/t+N,U=v.formatedVal,f.showTooltip?void 0!==v.setTooltext?(S=[1,2,3,4,5,6,7,8,9,10,11,99,100,101,102,103,104,105,106,107,109],aa={yaxisName:I,xaxisName:V,yDataValue:U,xDataValue:v.label,formattedValue:v.toolTipValue,horizontalErrorValue:Ka,horizontalErrorDataValue:void 0,verticalErrorValue:Ja,verticalErrorDataValue:void 0,horizontalErrorPercent:Ya,
verticalErrorPercent:ob,label:v.label},W=M(v.setTooltext,S,aa,J,w,x)):null===U?W=!1:(f.seriesNameInTooltip&&(Y=a.getFirstValue(x&&x.seriesname)),W=Y?Y+ba:R,W+=O.x?q.xAxis(O.x)+ba:R,W+=v.toolTipValue):W=!1,v.toolText=W);f.xMax=qa;f.xMin=Ha;f.yMin=Ca;f.yMax=za},drawErrorValue:function(){var b=this.chart,e=b.components,n=this.parentContainer,x=this.config,c=this.JSONData.data,c=c&&c.length,f,t=this.visible,u=e.paper,e=e.xAxis[0],g=this.yAxis,J=this.components.data,W,v,k,q,h=x.showTooltip,l=x.shadowOpacity,
G=b.get(U,aa),b=G.animType,F=G.animObj,p=G.dummyObj,G=G.duration,y=this.graphics.container.lineGroup,r=this.graphics.errorGroupContainer,ea=this.graphics.errorShadowContainer,A,H,ba,z,P,Z,Q,V,N,M,R,Y,pb,ma,Oa=[],Pa;r||(r=this.graphics.errorGroupContainer=u.group(O,n).insertAfter(y),t||r.hide());ea||(ea=this.graphics.errorShadowContainer=u.group(S,n).insertBefore(r),t||ea.hide());for(n=0;n<c;n++)if(y=J[n],Pa=y.errorTrackerConfig={},Pa.errorTrackerArr=[],z=(P=y&&y.config)&&P.setValue,V=P.errorValueArr,
void 0!==y&&void 0!==z&&null!==z&&V){V=P.errorValueArr;Pa.errorLen=z=V.length;!y.graphics.error&&(y.graphics.error=[]);!y.graphics.errorTracker&&(y.graphics.errorTracker=[]);if(null===P.vErrorValue&&null===P.vPositiveErrorValue&&null===P.vNegativeErrorValue)for(v=0;4>v;v++)y.graphics.error&&y.graphics.error[v]&&(y.graphics.error[v].hide(),y.graphics.error[v].shadow({opacity:0}));if(null===P.hErrorValue&&null===P.hPositiveErrorValue&&null===P.vPositiveErrorValue)for(v=4;8>v;v++)y.graphics.error&&y.graphics.error[v]&&
(y.graphics.error[v].hide(),y.graphics.error[v].shadow({opacity:0}));if(!(null===P.hErrorValue&&null===P.vErrorValue&&P.hPositiveErrorValue&&P.hNegativeErrorValue&&P.vPositiveErrorValue&&P.vNegativeErrorValue))for(A=P.setLink,R=y._xPos,ba=Y=y._yPos,H=R,ma=0;ma<z;ma++)if(!P.useHorizontalErrorBar&&(0===ma||1===ma||2===ma||3===ma)||!P.useVerticalErrorBar&&(4===ma||5===ma||6===ma||7===ma)||(2===ma||3===ma)&&P.halfHorizontalErrorBar||(6===ma||7===ma)&&P.halfVerticalErrorBar)y.graphics.error&&y.graphics.error[ma]&&
y.graphics.error[ma].hide()&&y.graphics.error[ma].shadow({opacity:0}),y.graphics.errorTracker&&y.graphics.errorTracker[ma]&&y.graphics.errorTracker[ma].hide()&&y.graphics.errorTracker[ma].shadow({opacity:0});else if(Pa.errorTrackerArr[ma]={},f=V[ma],Pa.errorTrackerArr[ma].tooltext=f.tooltext,N=ba,Z=f.errorValue,null===Z||void 0===Z||isNaN(Z))y.graphics.error&&y.graphics.error[ma]&&(y.graphics.error[ma].hide(),y.graphics.error[ma].shadow({opacity:ma})),y.graphics.errorTracker&&y.graphics.errorTracker[ma]&&
(y.graphics.errorTracker[ma].hide(),y.graphics.errorTracker[ma].shadow({opacity:0}));else{q=f.errorBarColor;W=m(f.isHorizontal,0);v=m(f.errorBarThickness,x.errorBarThickness,1);k=W?x.horizontalErrorBarWidth:x.verticalErrorBarWidth;M=t?k/2:0;Q=t?1:0;k=5<v?v/2+.5:2.75;if(W)if(W=R+(e.getAxisPosition(0)-e.getAxisPosition(1))*Z*Q,Z=K(N)+v%2/2,Q=K(W)+v%2/2,f.errorEdgeBar)for(W=["M",Q,Z-M,"V",Z+M],pb=2*M,N=Z-M,M=k;M<pb;M+=2*k)Oa.push({x:Q,y:N+M,r:k,index:n,data:y,toolText:f.tooltext,barType:"h"});else for(W=
["M",H,Z,"H",Q],pb=d(H-Q),N=H>Q?Q:H,M=k;M<pb;M+=2*k)Oa.push({x:N+M,y:Z,r:k,index:n,data:y,toolText:f.tooltext,barType:"h"});else if(W=Y+(g.getAxisPosition(0)-g.getAxisPosition(1))*Z*Q,Z=K(W)+v%2/2,Q=K(H)+v%2/2,f.errorEdgeBar)for(W=["M",Q-M,Z,"H",Q+M],pb=2*M,N=Q-M,M=k;M<=pb;M+=2*k)Oa.push({x:N+M,y:Z,r:k,index:n,data:y,toolText:f.tooltext,barType:"v"});else for(W=["M",Q,N,"V",Z],pb=d(N-Z),N=N>Z?Z:N,M=k;M<=pb;M+=2*k)Oa.push({x:Q,y:N+M,r:k,index:n,data:y,toolText:f.tooltext,barType:"v"});y.graphics.error[ma]?
(k=y.graphics.error[ma],f={path:W,"stroke-width":t?v:0},k.animateWith(p,F,f,G,b),k.attr({stroke:q,ishot:!h,cursor:A?"pointer":I,"stroke-linecap":L})):(k=y.graphics.error[ma]=u.path(W,r).attr({stroke:q,ishot:!h,"stroke-width":v,cursor:A?"pointer":I,"stroke-linecap":L}),x.initAnimation&&k.attr({opacity:0}).animateWith(p,F,{opacity:1},G,b));k.show();k.shadow({opacity:l},ea);Pa.errorTrackerArr[ma].attr={path:W,stroke:D,"stroke-width":t?v<w?w:v:0,cursor:A?"pointer":I,ishot:!!A}}}Oa.length&&(this.dataTreeB=
(new a.KdTree).buildKdTree(Oa));x.initAnimation=!1},_getHoveredPlot:function(a,d){var b,e,c;if(b=this.dataTree.getNeighbour({x:a,y:d},!0))return e=b.data.config.toolText,b.data.config.finalTooltext=e,c=b.data.config.hoverEffects,e=b.data.graphics.element,e.data("hoverEnabled",c.enabled),c.enabled&&e.attr(e.getData().setRolloverAttr),{pointIndex:b.index,hovered:!0,pointObj:b.data};if(b=this.dataTreeB&&this.dataTreeB.getNeighbour({x:a,y:d},!0))return"h"===b.barType?e=b.toolText:"v"===b.barType&&(e=
b.toolText),b.data.config.finalTooltext=e,e=b.data.graphics.element,e.data("hoverEnabled",!1),e.attr(e.getData().setRolloutAttr),{pointIndex:b.index,hovered:!0,pointObj:b.data}},show:function(){var a=this.chart,d=this.yAxis,b=this.graphics&&this.graphics.errorGroupContainer,e=this.graphics&&this.graphics.errorShadowContainer;a._chartAnimation();this.visible=!0;this._conatinerHidden=!1;b&&b.show();e&&e.show();a._setAxisLimits();d.draw();this.draw()},remove:function(){var a=this.components,d=a.removeDataArr,
b=a.pool||(a.pool={element:[],hotElement:[],label:[]}),e=d.length,c,n=this.maxminFlag,f,w,g;for(w=0;w<e;w++)if(c=d[0],d.splice(0,1),c&&c.graphics){f=c.graphics;f.element&&f.element.hide()&&f.element.shadow({opacity:0});for(g=0;8>g;g++)f.error&&f.error[g]&&f.error[g].hide()&&f.error[g].shadow({opacity:0});c.graphics.element&&(b.element=b.element.concat(c.graphics.element));c.graphics.label&&(b.label=b.label.concat(c.graphics.label))}a.pool=b;n&&this.setMaxMin()}},"Scatter"])}]);Y.register("module",
["private","modules.renderer.js-dataset-multiaxisline",function(){var a=this.hcLib,b=a.pluckNumber,z=a.preDefStr.line,U=a.pluck,aa=a.HUNDREDSTRING;Y.register("component",["dataset","multiaxisline",{type:"multiaxisline",pIndex:2,customConfigFn:"_createDatasets",configure:function(){var O=this.chart,S=this.JSONData,L=this.config,N=O.config,R=O.components,I=O.jsonData,M=I.chart,u=I.axis[this.axisIndex],A=O.singleseries,I=Y.get("component",["dataset",z]).prototype;I.configure.call(this);this.yAxis=R.yAxis[this.axisIndex];
N.axesPadding=5;N.allowAxisShift=b(M.allowaxisshift,1);N.allowSelection=b(M.allowselection,1);N.checkBoxColor=U(M.checkboxcolor,"#2196f3");N.axisConfigured=!0;L.linethickness=b(S.linethickness,u.linethickness,M.linethickness,A?4:2);L.lineDashLen=b(S.linedashlen,u.linedashlen,M.linedashlen,5);L.lineDashGap=b(S.linedashgap,u.linedashgap,M.linedashgap,4);L.alpha=b(S.alpha,u.linealpha,M.linealpha,aa);L.linecolor=U(S.color,u.linecolor,u.color,M.linecolor,L.plotColor);L.legendSymbolColor=this.type===z?
L.lineColor:L.plotFillColor;R=b(S.dashed,u.linedashed,M.linedashed);N=a.getDashStyle(L.lineDashLen,L.lineDashGap,L.linethickness);L.anchorBorderColor=U(S.anchorbordercolor,M.anchorbordercolor,L.lineColor,L.plotColor);L.lineDashStyle=R?N:"none";I._setConfigure.call(this);!1!==O.hasLegend&&this._addLegend()},init:function(a){this.chart=this.chart;this.components={};this.conf={};this.graphics={};this.JSONData=a;this.visible=1===b(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);this.configure()},
legendInteractivity:function(a,b){var z=a.chart,N=z.components.dataset,U=this.config,I=a.visible,M=b.config,u=b.graphics,A=U.itemHiddenStyle.color,U=U.itemStyle.color,m=M.fillColor,M=M.strokeColor,H=a.axisIndex,D=!0,f,z=z.config.axesArr.checkBox;I?a.hide():a.show();if(I){for(f in N)N.hasOwnProperty(f)&&N[f].visible&&N[f].axisIndex===H&&(D=!1);D&&z[H]&&z[H].checkbox.uncheck()}else z[H]&&z[H].checkbox.check();I?(u.legendItemSymbol&&u.legendItemSymbol.attr({fill:A,stroke:A}),u.legendItemText&&u.legendItemText.attr({fill:A}),
u.legendIconLine&&u.legendIconLine.attr({stroke:A})):(u.legendItemSymbol&&u.legendItemSymbol.attr({fill:m,stroke:M}),u.legendItemText&&u.legendItemText.attr({fill:U}),u.legendIconLine&&u.legendIconLine.attr({stroke:m}))}},z])}]);Y.register("module",["private","modules.renderer.js-dataset-multilevelpie",function(){var a=this.hcLib,b=a.graphics.convertColor,z=a.plotEventHandler,U=a.preDefStr,aa=U.colors,O=aa.FFFFFF,S=aa.c000000,L=U.configStr,N=U.animationObjStr,R=a.ZEROSTRING,I=a.BLANKSTRING,M=a.BLANKSTRING,
u=a.parseTooltext,A=a.pluck,m=a.getValidValue,H=a.pluckNumber,D=a.getFirstValue,f=a.parseUnsafeString,V=a.getDashStyle,K=a.toRaphaelColor,Q=a.COMMASPACE,n=a.schedular,U=Math,d=U.sin,w=U.cos,e=U.PI,Z=U.round,P=U.min,t=U.max;Y.register("component",["dataset","multiLevelPie",{init:function(a){!this.components&&(this.components={data:[]});this.conf={};this.graphics={};this.JSONData=a;this.configure()},configure:function(){var a,d,n=this,f=n.chart,c=f.config,w=n.conf||(n.conf={}),t=w.dataLabelOptions||
(w.dataLabelOptions={}),u=w.piePlotOptions,g=f.config.style,J=n.JSONData,f=f.jsonData.chart;a=w.enableAnimation=H(f.animation,f.defaultanimation,1);var m=H(-f.centerangle,180),v=H(f.totalangle,360);w.animation=a?{duration:1E3*H(f.animationduration,f.moveduration,1)}:!1;w.showShadow=H(f.showshadow,0);a=w.useHoverColor=!!H(f.usehovercolor,1);w.hoverFillColor=b(A(f.hoverfillcolor,"FF5904"),H(f.hoverfillalpha,100));w.pierad=parseInt(f.pieradius,10);d=(d=D(f.valuebordercolor,I))?b(d,H(f.valueborderalpha,
f.valuebgalpha,f.valuealpha,100)):I;!t.style&&(t.style={fontFamily:A(f.valuefont,g.fontFamily),fontSize:H(f.valuefontsize,parseInt(g.fontSize,10))+"px",color:b(A(f.valuefontcolor,g.color),H(f.valuefontalpha,f.valuealpha,100)),fontWeight:H(f.valuefontbold)?"bold":"normal",fontStyle:H(f.valuefontitalic)?"italic":"normal",backgroundColor:f.valuebgcolor?b(f.valuebgcolor,H(f.valuebgalpha,f.valuealpha,100)):I,border:d||f.valuebgcolor?H(f.valueborderthickness,1)+"px solid":I,borderPadding:H(f.valueborderpadding,
2),borderThickness:H(f.valueborderthickness,g.borderThickness,1),borderRadius:H(f.valueborderradius,g.borderRadius,0),borderColor:d,borderDash:H(f.valueborderdashed,0)?V(H(f.valueborderdashlen,4),H(f.valueborderdashgap,2),H(f.valueborderthickness,1)):"none"});!u&&(u=w.piePlotOptions={});u.allowPointSelect=!1;w.borderColor=b(A(f.plotbordercolor,f.piebordercolor,O),f.showplotborder!=R?A(f.plotborderalpha,f.pieborderalpha,100):0);w.showTooltip=H(f.showtooltip,1);w.borderWidth=H(f.pieborderthickness,
f.plotborderthickness,1);u.startingAngle=0;u.size="100%";w.showLabels=H(f.showlabels,1);w.showValues=H(f.showvalues,0);w.showValuesInTooltip=H(f.showvaluesintooltip,f.showvalues,0);w.showPercentValues=H(f.showpercentvalues,f.showpercentagevalues,0);w.showPercentInTooltip=H(f.showpercentintooltip,0);w.toolTipSepChar=A(f.tooltipsepchar,f.hovercapsepchar,Q);w.labelSepChar=A(f.labelsepchar,w.toolTipSepChar);w.tooltext=f.plottooltext;w.alpha=A(f.plotfillalpha,f.piefillalpha,100);w.startAngle=e/180*(m-
v/2);w.endtAngle=e/180*(m+v/2);w.initialAngle=w.endtAngle;w.originX=H(f.originx);w.originY=H(f.originy);a&&(w.events={mouseOver:function(){for(var a=this.data("plotItem").selfRef,q=n.conf;a.graphics.element;)a.graphics.element.attr({fill:q.hoverFillColor}),a=a.linkedItems.parent},mouseOut:function(){for(var a=this.data("plotItem"),q=a.selfRef;q.graphics.element;)q.graphics.element.attr({fill:(q.config||a).color}),q=q.linkedItems.parent}});c.plotBorderWidth=0;c.plotBorderWidth=0;w.maxLevel=n.addMSPieCat(J,
1,n,w.startAngle,w.endtAngle);w.pieRadius=parseInt(f.pieradius,10);t.distance=0;t.placeLabelsInside=!0},removalFn:function(a,d,b){var e,c,n=this.pool||(this.pool={});e=this.chart.get(L,N);var f=e.duration,w=e.dummyObj,g=e.animObj,J=e.animType,t=function(a){(a||this).hide()};!n[b]&&(n[b]=[]);"element"===b?(c=a.attr("ringpath"),e=(c[4]+c[5])/2,d?a.animateWith(w,g,{ringpath:[c[0],c[1],c[2],c[3],e,e]},f,J,t):n[b].push(a)):d?t(a):n[b].push(a)},removeGraphics:function(a,d){var b,e,c=a.components&&a.components.data,
n,f=a.graphics;if(c)for(n=c.length,b=0;b<n;b+=1)this.removeGraphics(c[b]);if(a.graphics)for(e in f)f.hasOwnProperty(e)&&this.removalFn(a.graphics[e],d,e)},removeChild:function(a,d,b){var e,c;if(a.length)for(e=0;e<a.length;e+=1)c=a[e],b?this.removalFn(c,d,b):this.removeGraphics(c,d);else for(e in a)this.removeChild(a[e],d,e)},addMSPieCat:function(a,d,e,n,c){var w,C,P,g=a.length,J=this,W=e.components.data,v=J.chart.components,k=J.conf,q=k.borderWidth,h=k.borderColor,l=v.numberFormatter,v=v.colorManager,
G,F=0,p,y,r=k.labelSepChar,ea,z,K,ba,D,Q=d,M=W.length,N=function(){J.removeChild.apply(J,arguments)},L=a.length;G=c-n;var O=0,U;for(y=0;y<g;y+=1)c=a[y],c._userValue=l.getCleanValue(c.value,!0),c._value=H(c._userValue,1),F+=c._value;F=F||1;G/=F;for(y=g-1;0<=y;--y)c=a[y],p=G*c._value,w=f(A(c.label,c.name)),z=null!==c._userValue?l.dataLabels(c._userValue):I,K=l.percentValue(c._value/F*100),ea=H(c.alpha,k.alpha),D=k.showLabels?w:I,k.showValues&&(k.showPercentValues?D+=D!==I?r+K:K:void 0!==z&&z!==I&&(D+=
D!==I?r+z:z)),ba=k.showTooltip?f(A(c.tooltext,c.hovertext,k.tooltext)):void 0,ba===I?(ba=w,k.showValuesInTooltip&&(k.showPercentInTooltip?ba+=ba!==I?r+K:K:void 0!==z&&z!==I&&(ba+=ba!==I?r+z:z))):ba=u(ba,[1,2,3,14],{percentValue:K,label:w,formattedValue:z},c),w=W[y],z=n+O,O+=p,w||(w=W[y]={components:{data:[]},linkedItems:{},config:{},graphics:{}}),w.graphics.element&&(U=w.config.startAngle+w.config.angleStrech),w.config={initialAngle:U||(e.conf||e.config).initialAngle,startAngle:z,angleStrech:p,level:d,
displayValue:D,toolText:ba,link:m(c.link),doNotSlice:!0,color:b(c.color||v.getPlotColor(),ea),borderWidth:H(c.borderwidth,q),borderColor:A(c.bordercolor,h),dashStyle:H(c.valueborderdashed,0)?V(H(c.borderdashlen,4),H(c.borderdashgap,2),H(c.borderthickness,1)):"none",shadow:{opacity:.01*Z(50<ea?ea*ea*ea*1E-4:ea*ea*.01)},isSingleTon:1<g?!1:!0},w.linkedItems.parent=e,c.category?(Q=t(Q,J.addMSPieCat(c.category,d+1,w,z,p+z)),(C=w.components.data.length)>(P=c.category.length)&&N(w.components.data.splice(C-
1,P))):(C=w.components.data.length)&&N(w.components.data.splice(0,C));M>L&&N(W.splice(L,M-1));return Q},draw:function(e){var b,f,x,c=this,t=c.conf||{},u=c.chart,m=u.getJobList(),g=u.config,J=u.graphics,A=c.components,v=A.data.length,k=g.dataLabelStyle;b=t.showShadow;var q=u.components.paper,h=g.textDirection,l=g.tooltip||{};f=l&&!1!==l.enabled;var v=g.canvasWidth,G=g.canvasHeight,l=H(t.originX,g.canvasLeft+.5*v),g=H(t.originY,g.canvasTop+.5*G),F,p,y,r,ea,Z,Ja=J.datasetGroup.trackTooltip(!0),ba=u.get(L,
N),D=ba.duration||0,Q=ba.dummyObj,I=ba.animObj,ba=ba.animType,V,O,U,aa=J.datalabels||(J.datalabels=q.group("datalabels").insertAfter(Ja)),R=t.events||{},Y=function(h){var a=R.mouseOver;z.call(this,u,h,"DataPlotRollOver");a&&a.call(this)},pb=function(h){var a=R.mouseOut;z.call(this,u,h,"DataPlotRollOut");a&&a.call(this)},ma=function(h){z.call(this,u,h)},J=function(){t._drawn||(t._drawn=!0,aa.show(),m.labelDrawID.push(n.addJob(function(){c.drawLabel()},a.priorityList.label)),u._animCallBack())},Oa=
c.pool||(c.pool={}),A=(A=A.removeDataArr)&&A.length;F=H(2*t.pieRadius,P(v,G))/(2*t.maxLevel);A&&c.remove();D&&aa.hide();e||(e=c,aa.css(k));v=e.components.data.length;for(A=0;A<v;A+=1)c.draw(e.components.data[A]);G=e.config;(x=G.level)?(v=x*F,F*=x-1,V=e.graphics,y=G.angleStrech,x=G.displayValue,r=!!G.link,p=G.color,ea=G.startAngle,Z=ea+G.angleStrech,U=G.initialAngle,O=V.element,O||(Oa.element&&Oa.element.length?(O=V.element=Oa.element.shift(),O.show()):O=V.element=q.ringpath(Ja).mouseover(Y).mouseout(pb).mouseup(ma),
O.attr({ringpath:[l,g,v,F,U,U]})),G.plotItem=e={chart:u,link:G.link,value:y,color:p,labelText:x,graphics:{element:O},selfRef:e},G.eventArgs=q={link:G.link,label:G.displayValue,toolText:G.toolText},O.attr({"stroke-width":G.borderWidth,stroke:G.borderColor,fill:K(G.color),"stroke-dasharray":G.dashStyle,ishot:!f,cursor:r?"pointer":M}).tooltip(G.toolText).shadow(b&&!!G.shadow).data("plotItem",e).data("eventArgs",q),void 0!==x&&x!==M&&(b=(ea+Z)/2,G._textAttr||(G._textAttr={}),e=0===F&&G.isSingleTon?0:
F+(v-F)/2,(f=G._textAttrs)||(f=G._textAttrs={}),f.text=x,f.fill=k.color||S,f.direction=h,f.ishot=r,f.cursor=r?"pointer":M,f.x=l+e*w(b),f.y=g+e*d(b),f["text-bound"]=[k.backgroundColor,k.borderColor,k.borderThickness,k.borderPadding,k.borderRadius,k.borderDash]),O.animateWith(Q,I,{ringpath:[l,g,v,F,ea,Z]},D,ba,!A&&J)):(t._drawn&&c.drawLabel(),c.removeChild(c.pool,!0))},drawLabel:function(a){var d,e=this.chart,b=e.config,c=e.graphics;d=this.components.data.length;var n=b.dataLabelStyle,f=e.components.paper,
b=(b=b.tooltip||{},!1!==b.enabled),w,g,J,t,v=(this.conf||{}).events||{},k=function(h){var a=v.mouseOver;z.call(this,e,h,"DataPlotRollOver");a&&a.call(this)},q=function(h){var a=v.mouseOut;z.call(this,e,h,"DataPlotRollOut");a&&a.call(this)},h=function(h){z.call(this,e,h)},l=this.pool||(this.pool={}),c=c.datalabels;!a&&(a=this);d=a.components.data.length;for(w=0;w<d;w+=1)this.drawLabel(a.components.data[w]);J=a.config;w=J.plotItem;g=J.displayValue;d=J._textAttrs;J.level?(a=a.graphics,t=a.label,void 0!==
g&&g!==M?((t=a.label)?t.attr(d).css(n):l.label&&l.label.length?(t=a.label=l.label.shift(),t.attr(d).css(n)):t=a.label=f.text(d,n,c).mouseover(k).mouseout(q).mouseup(h),w.label=t.show().data("plotItem",w).data("eventArgs",J.eventArgs),b&&t.tooltip(void 0)):t&&t.hide()):this.removeChild(this.pool,!0)}},"Pie2D"])}]);Y.register("module",["private","modules.renderer.js-dataset-dragnode",function(){var a=this.hcLib,b="VML"===a.Raphael.type,z=a.preDefStr,U=z.configStr,aa=z.animationObjStr,O=a.ZEROSTRING,
S=z.POSITION_TOP,L=z.POSITION_BOTTOM,N=z.UNDERSCORE,R=a.BLANKSTRING,I=a.BLANKSTRING,M=a.parseTooltext,u=a.pluck,A=a.getValidValue,m=a.pluckNumber,H=a.getFirstValue,D=a.parseUnsafeString,f=a.extend2,V=a.toRaphaelColor,K=a.schedular,Q=a.getTouchEvent,n=a.BGRATIOSTRING,z=Math,d=z.min,w=z.max,e=a.hasTouch,Z=a.getFirstColor,P=a.getFirstAlpha,t=a.graphics.getDarkColor,T=a.graphics.getLightColor,da=a.graphics.convertColor,B=a.graphics.mapSymbolName,x=a.COMMASTRING,c=a.HUNDREDSTRING,E=a.getMouseCoordinate,
C=a.plotEventHandler,la=a.SHAPE_RECT,g=function(){this.data("move",!1);clearTimeout(this._longpressactive);delete this._longpressactive};Y.register("component",["dataset","Dragnode",{type:"dragnode",configure:function(){var a=this.index,d=this.chart,e=this.JSONData,k=d.jsonData.chart,q=(e.data||[]).length,h=this.config,d=d.components.colorManager,l,b,F,p,g,r;h.showValues=m(e.showvalues,k.showvalues,1);r=h.useRoundEdges=m(k.useroundedges);h.zIndex=1;h.name=A(e.seriesname);h.viewMode=m(k.viewmode,0);
h.id=u(e.id,this.index);if(0===m(e.includeinlegend)||void 0===h.name)h.showInLegend=!1;h.includeInLegend=m(e.includeinlegend,1);h.showTooltip=m(k.showtooltip,1);h.seriesNameInTooltip=m(k.seriesnameintooltip,1);h.tooltipSepChar=u(k.tooltipsepchar," - ");l=h.plotFillAlpha=u(k.plotfillalpha,c);b=h.showPlotBorder=m(k.showplotborder,1);F=h.plotBorderColor=Z(u(k.plotbordercolor,"666666"));p=h.plotBorderThickness=m(k.plotborderthickness,r?2:1);g=h.plotBorderAlpha=u(k.plotborderalpha,k.plotfillalpha,r?"35":
"95");h.use3DLighting=!!m(k.use3dlighting,k.is3d,r?1:0);h.color=Z(u(e.color,d.getPlotColor(a)));h.alpha=u(e.plotfillalpha,e.nodeFillAlpha,e.alpha,l);h.datasetShowPlotBorder=!!m(e.showplotborder,b);h.datasetPlotBorderColor=Z(u(e.plotbordercolor,e.nodebordercolor,F));h.datasetPlotBorderThickness=m(e.plotborderthickness,e.nodeborderthickness,p);h.datasetPlotBorderAlpha=h.datasetShowPlotBorder?u(e.plotborderalpha,e.nodeborderalpha,e.alpha,g):O;h.seriesname=D(e.seriesname);h.datasetAllowDrag=!!m(e.allowdrag,
1);h.colorObj={fillColor:da(h.color,h.alpha),lineColor:{FCcolor:{color:h.datasetPlotBorderColor,alpha:h.datasetPlotBorderAlpha}}};h.lineWidth=void 0;h.symbol="poly_4";a=this.components.data=this.components.data||(this.components.data=[]);k=a.length;k>q&&a.splice(q,k-q);this.visible=1===m(e.visible,!Number(e.initiallyhidden),1);h.yMin=h.yMax=h.xMax=h.xMin=0;this._refreshData=!0;for(e=0;e<q;e+=1)this._setConfigure(e);this._refreshData=!1;this._addLegend()},_setConfigure:function(a,c){var e=this.JSONData,
k=e.data,q=c?c:k[a],h=this.components.data,k=this.config,h=h[a]=h[a]||(h[a]={}),l=h.config=h.config||(h.config={}),b=k.id,F=k.yMin||Infinity,p=k.yMax||-Infinity,g=k.xMax||-Infinity,r=k.xMin||Infinity,n,t,x=k.use3DLighting,ba=k.datasetPlotBorderThickness,E=k.datasetPlotBorderColor,z=k.datasetPlotBorderAlpha,C=this.chart.jsonData.chart,P=k.color,H=k.alpha,K=k.datasetAllowDrag,T=this.chart.components.numberFormatter;!h.graphics&&(h.graphics={});l._options=f({},q);if(q||c){n=l.y=T.getCleanValue(u(q.y));
t=l.x=T.getCleanValue(u(q.x));l.index=a;l.dragStart||(l.dragStart={});p=w(p,l.y);F=d(F,l.y);g=w(g,l.x);r=d(r,l.x);if(null===n)l.value=null;else{t=T.xAxis(t);l.formatedVal=null===n?n:T.dataLabels(n);l.setTooltext=A(D(u(q.tooltext,e.plottooltext,C.plottooltext)));l.pointLabel=u(q.label,q.name);e=D(l.pointLabel);l.label=e;l.name=e;l.displayValue=e;l.xValue=t;l.startConnectors={};l.endConnectors={};l.toolText=k.showTooltip?this._configureTooltext(l,k,C):!1;l.link=q.link;l.id=u(q.id,b+N+a);l.allowDrag=
!!m(q.allowdrag,K);e=l.shape=A(u(q.shape),"rectangle").toLowerCase();l.height=A(u(q.height),10);l.width=A(u(q.width),10);l.radius=A(u(q.radius),10);l.numSides=A(u(q.numsides),4);l.color=Z(u(q.color,P));l.borderColor=Z(u(q.bordercolor,E));l.alpha=u(q.alpha,H);l.imageURL=A(q.imageurl);l.imageNode=!!m(q.imagenode);l.imageWidth=q.imagewidth;l.imageHeight=q.imageheight;l.imageAlign=A(q.imagealign,R).toLowerCase();q=q.labelalign;if(E=l.imageNode)E=l.imageURL,E=void 0!==E&&null!==E;l.labelAlign=u(q,E?S:
"middle");switch(l.shape){case "circle":q=0;break;case "polygon":q=2;e=B(l.numSides);break;default:q=1}l.symbol=e;x?(l.fillColor=this.getPointColor(l.color,l.alpha,q),l.cloneFillColor=this.getPointColor(l.color,50,q)):(l.fillColor={color:l.color,alpha:l.alpha},l.cloneFillColor=da(l.color,50));l.rollOverProperties=this.pointHoverOptions(h,C,{shapeType:q,use3D:x,height:l.height,width:l.width,radius:l.radius,color:l.color,alpha:l.alpha,borderColor:l.borderColor,borderAlpha:z,borderThickness:ba})}!l.update&&
c&&(l.update=c.update);!l.add&&c&&(l.add=c.add);!0===this._refreshData&&delete h.removed}h.dataset=this;k.xMax=g;k.xMin=r;k.yMin=F;k.yMax=p},_configureTooltext:function(a,c,d){var e=a.setTooltext,q=a.formatedVal,h=c.seriesname,l=a.label,b=a.xValue,F=a.pointLabel,p=c.tooltipSepChar;void 0!==e?a=M(e,[3,4,5,6,8,9,10,11],{yaxisName:D(d.yaxisname),xaxisName:D(d.xaxisname),yDataValue:q,xDataValue:b,label:l},a,d,c):void 0!==F?a=l:null===q?a=!1:(c.seriesNameInToolTip&&(h=H(c.seriesname)),a=h?h+p:R,a+=b?b+
p:R,a+=q);return a},updatePointConfig:function(a,c){var e=this.chart,k=this.config,q=(this.components.data[c]||{}).config,h=e.components.numberFormatter,e=e.jsonData.chart,l=k.yMin||Infinity,b=k.yMax||-Infinity,F=k.xMax||-Infinity,p=k.xMin||Infinity;void 0!==q&&(q.y=h.getCleanValue(u(a.y)),q.x=h.getCleanValue(u(a.x)),q._options.x=q.x,q._options.y=q.y,w(b,q.y),d(l,q.y),w(F,q.x),d(p,q.x),l=h.xAxis(q.x),q.formatedVal=null===q.y?q.y:h.dataLabels(q.y),q.xValue=l,q.toolText=k.showTooltip?this._configureTooltext(q,
k,e):!1,q.update=a.update)},pointHoverOptions:function(a,c,e){var d=m(a.showhovereffect,this.showhovereffect,c.plothovereffect,c.showhovereffect),q={},h=!!u(a.hovercolor,this.hovercolor,c.plotfillhovercolor,a.hoveralpha,this.hoveralpha,c.plotfillhoveralpha,a.borderhovercolor,this.borderhovercolor,c.plotborderhovercolor,a.borderhoveralpha,this.borderhoveralpha,c.plotborderhoveralpha,a.borderhoverthickness,this.borderhoverthickness,c.plotborderhoverthickness,a.hoverheight,this.hoverheight,c.plothoverheight,
a.hoverwidth,this.hoverwidth,c.plothoverwidth,a.hoverradius,this.hoverradius,c.plothoverradius,d),l=!1;if(void 0===d&&h||d)l=!0,d=u(a.hovercolor,this.hovercolor,c.plotfillhovercolor,T(e.color,70)),h=u(a.hoveralpha,this.hoveralpha,c.plotfillhoveralpha,e.alpha),q={stroke:da(u(a.borderhovercolor,this.borderhovercolor,c.plotborderhovercolor,e.borderColor),m(a.borderhoveralpha,this.borderhoveralpha,c.plotborderhoveralpha,h,e.borderAlpha)),"stroke-width":m(a.borderhoverthickness,this.borderhoverthickness,
c.plotborderhoverthickness,e.borderThickness),height:m(a.hoverheight,this.hoverheight,c.plothoverheight,e.height),width:m(a.hoverwidth,this.hoverwidth,c.plothoverwidth,e.width),r:m(a.hoverradius,this.hoverradius,c.plothoverradius,e.radius)},a=e.use3D?this.getPointColor(Z(u(a.hovercolor,this.hovercolor,c.plotfillhovercolor,T(e.color,70))),u(a.hoveralpha,this.hoveralpha,c.plotfillhoveralpha,e.alpha),e.shapeType):da(d,h),q.fill=V(a);return{enabled:l,rollOverAttrs:q}},getJSONData:function(){var a=this.components.data,
c=a.length,e=[],d,q;for(q=0;q<c;q++)d=a[q],!d.removed&&d.config._options&&(delete d.config._options.update,delete d.config._options.add,e.push(d.config._options));return e},getPointColor:function(a,c,e){var d;a=Z(a);c=P(c);d=T(a,80);a=t(a,65);c={FCcolor:{gradientUnits:"objectBoundingBox",color:d+","+a,alpha:c+","+c,ratio:n}};e?c.FCcolor.angle=1===e?0:180:(c.FCcolor.cx=.4,c.FCcolor.cy=.4,c.FCcolor.r="50%",c.FCcolor.radialGradient=!0);return c},init:function(a){this.yAxis=this.chart.components.yAxis[0];
this.components={};this.graphics={};this.JSONData=a;this.plotType="dragnode";this.configure()},_addLegend:function(){var a=this.config,e=this.chart.components.legend,a={enabled:a.includeInLegend,type:this.type,fillColor:V({color:a.color,alpha:a.alpha}),strokeColor:V({color:a.plotBorderColor,alpha:c}),anchorSide:4,strokeWidth:a.anchorBorderThickness,label:H(this.JSONData.seriesname)};this.legendItemId=e.addItems(this,this.legendInteractivity,a)},draw:function(){var c=this,e=c.components,d=c.graphics,
k=c.chart,q=k.getJobList(),h=k.linkedItems.smartLabel,e=e.data,l=c.components.removeDataArr||[],b=l.length,F=k.components.paper,p,g=k.config.dataLabelStyle,r={fontFamily:g.fontFamily,fontSize:g.fontSize,lineHeight:g.lineHeight,fontWeight:g.fontWeight,fontStyle:g.fontStyle},n=k.graphics.datasetGroup;p=d.group=d.group||F.group(n);d=d.dragLabelGroup=d.dragLabelGroup||F.group("dragLabelGroup",n);p.trackTooltip(!0);h.useEllipsesOnOverflow(k.config.useEllipsesWhenOverflow);h.setStyle(g);p.css(r);k=0;for(h=
e.length;k<h;k+=1)g=e[k].removed,!g&&this._drawNode(k);!c.drawn&&q.labelDrawID.push(K.addJob(function(){c.drawLabel()},a.priorityList.label));c.drawn=!0;c.visible&&(p.show(),d.show());for(k=0;k<b;k++)c._removeDataVisuals(l.shift())},rolloverResponseSetter:function(a,c){return function(e){var d=this.data("drag-options"),q=d.chart,d=(d=d.dataObj.config.dragStart)&&Object.keys(d).length,h=this.data("hoverAttr");d||(c&&a.graphics.element.attr(h),C.call(this,q,e,"DataPlotRollOver"))}},rolloutResponseSetter:function(a,
c){return function(e){var d=this.data("drag-options"),q=d.chart,d=(d=d.dataObj.config.dragStart)&&Object.keys(d).length,h=this.data("unHoverAttr");d||(c&&a.graphics.element.attr(h),C.call(this,q,e,"DataPlotRollOut"))}},dragUp:function(a){this.data("drag-options").dataset._dragUp.call(this,a)},dragMove:function(a,c){var d=this.data("drag-options");d.dataset._dragMove.call(this,c[0],c[1],c[2],c[3],d.chart)},dragStart:function(a){var c=this.data("drag-options");c.dataset._dragStart.call(this,a,c.chart)},
_drawNode:function(a){var c=this.chart,d=this.index,e=c.components,q=this.groupManager,h=q.nodes,l=e.paper,b=this.xAxis=e.xAxis[0],F=this.yAxis=e.yAxis[0],e=this.components.data[a],p=e.config,g=this.config,r=c.get(U,aa)||{},n=r.duration,f=r.dummyObj,w=r.animObj,r=e.graphics||(e.graphics={}),t=p.symbol,x,B,A,E,z,C,P,H,K=g.colorObj.lineColor,Z=g.datasetPlotBorderThickness,D,T,Q;E=this.graphics;P=c.graphics.datasetGroup;var M=E.group,O=e.config.rollOverProperties,da,S,Y=this.rolloverResponseSetter,wa=
this.rolloutResponseSetter,na=this.dragUp,ka=this.dragMove,pa=this.dragStart,ia,ga=p.shapeType,ra=p.link?"pointer":p.allowDrag?"move":I,fa=this.components.pool||{},ha;C=r.graphic;var ca=r.cloneText,ya=r.cloneGraphic,xa=r.cloneImage,X=r.image,ua,sa=r.label;E.cloneGraphicGroup=E.cloneGraphicGroup||l.group("clone",P);E.cloneGraphicGroup.attr({opacity:.3});p._yPos=F=F.getAxisPosition(p.y);p._xPos=b=b.getAxisPosition(p.x);if(void 0!==F&&!isNaN(F)){p.shapeArg={};C=p.shapeArg;B=m(p.height);x=m(p.width);
A=m(p.radius);Q="rectangle"===t;E=p.id;z=p.imageNode;P=p.imageURL;H=p.imageAlign;D=Q?x:1.4*A;da=m(p.imageWidth,D);T=Q?B:1.4*A;Q=m(p.imageHeight,T);ia=V(p.fillColor);p._plotWidth=D;p._plotHeight=T;S={fill:ia,"stroke-width":Z,stroke:V(K)};t=C.symbol=u(p.symbol,g.symbol,R);t=t.split(N);ha=[t[1],b,F,p.radius,p.startAngle,0];"poly"===t[0]||"circle"===t[0]?(p.shapeType=t[0],ua="polypath",g="path",ha={polypath:ha},C.x=b,C.y=F,C.radius=p.radius,C.sides=t[1]):(p.shapeType=la,g=ua="rect",C.x=b-x/2,C.y=F-B/
2,C.r=0,C.width=x,C.height=B,ha={x:C.x,y:C.y,width:x,height:B,r:0},S.width=x,S.height=B,S.x=b-x/2,S.y=F-B/2,O&&O.enabled&&(C=O.rollOverAttrs,C.x=b-C.width/2,C.y=F-C.height/2,delete C.r));t=(C=r.element)&&C.type;-1===ua.indexOf(t)&&C&&(C.remove(),C=r.element=null,sa&&sa.remove(),X&&X.remove(),delete r.label,delete r.image,X=null);C||(fa.element&&fa.element[g]&&fa.element[g].length?(C=r.element=fa.element[g].shift(),C.toFront()):(C=r.element=l[ua](M),C.attr(ha)),C.hover(Y(e,O&&O.enabled),wa(e,O&&O.enabled)),
C.drag(ka,pa,na));C.show().animateWith(f,w,ha,n);C.attr({fill:ia,"stroke-width":Z,stroke:V(K)});q.animationDone=!0;q={index:a,link:p.link,y:p.y,x:p.x,shape:u(ga,"rect"),width:x,height:B,radius:A,sides:p.numSides,label:p.displayValue,toolText:p.toolText,id:p.id,datasetIndex:this.index,datasetName:this.JSONData.seriesname,sourceType:"dataplot"};d=d+"_"+a;ya&&(ya.type===C.type?(ha.fill=ia,ha["stroke-width"]=Z,ha.stroke=V(K),ya.transform(I),ya.attr(ha)):(ya.remove(),delete e.graphics.cloneGraphic,ca&&
(ca.remove(),delete e.graphics.cloneText)));if(z&&P){Q>T&&(Q=T);da>D&&(da=D);switch(H){case "middle":K=F-Q/2;break;case L:K=T>Q?F+T/2-Q:F-Q/2;break;default:K=T>Q?F-.5*T:F-Q/2}p.imageX=b-da/2;p.imageY=K;p.imageWidth=da;p.imageHeight=Q;g="image";X||(fa.image&&fa.image[g]&&fa.image[g].length?(X=r.image=fa.image[g].shift(),X.toFront()):(X=r.image=l.image(M),X.tooltip(p.toolText),X.hover(Y(e,O&&O.enabled),wa(e,O&&O.enabled)),X.drag(ka,pa,na)));X.show().attr({src:P,x:p.imageX,y:K,width:da,height:Q});X.attr({cursor:ra});
X.tooltip(p.toolText);X.data("drag-options",{dataObj:e,dataset:this,datasetIndex:this.index,pointIndex:e.config.index,cursor:ra,chart:c,link:e.link});X.data("groupId",d);X.data("eventArgs",q);X.data("hoverAttr",O&&O.rollOverAttrs);X.data("unHoverAttr",S);xa&&(xa.transform(I),xa.attr({src:P,x:p.imageX,y:K,width:da,height:Q}))}p.pointAttr=S;this.drawn&&this.drawLabel(a);h[E]=e;C.attr({cursor:ra});C.tooltip(p.toolText);C.data("drag-options",{dataObj:e,dataset:this,datasetIndex:this.index,pointIndex:e.config.index,
cursor:ra,chart:c,link:e.link});C.data("groupId",d);C.data("eventArgs",q);C.data("hoverAttr",O&&O.rollOverAttrs);C.data("unHoverAttr",S)}},drawLabel:function(a){var c=this.chart,e=this.index,d=c.components.paper,q=this.components.data,h=q.length,l,b,F=this.graphics.group,p=c.config.dataLabelStyle,g=c.get("config","animationObj"),r=g.dummyObj,n=g.animObj,f=g.duration,w=this.components.pool||{},t,x,B=c.config,m,C,A,g=g.animType,E,z,P=this.rolloverResponseSetter,K=this.rolloutResponseSetter,H=this.dragUp,
Z=this.dragMove,T=this.dragStart,D,Q,M=c.linkedItems.smartLabel;for(void 0!==a?h=a+1:a=0;a<h;a++)if(A=q[a],t=A.config,C=t._plotWidth,E=t._plotHeight,x=t.displayValue,b=t.labelAlign,z=A.graphics,m=z.cloneText,D=A.config.rollOverProperties,Q=t.shapeType,void 0!==x&&null!==x||x!==R){M.useEllipsesOnOverflow(B.useEllipsesWhenOverflow);x=M.getSmartText(x,C,E);C=.5*E-.5*x.height;switch(b){case S:C=-C;break;case L:break;default:C=0}E=t._xPos;b=t._yPos;A._yAdjustment=C;C=b+C;l={text:x.text,title:x.tooltext||
I,fill:p.color,"text-bound":[p.backgroundColor,p.borderColor,p.borderThickness,p.borderPadding,p.borderRadius,p.borderDash]};(b=z.label=z.label||w.label&&w.label.text&&w.label.text.shift())?(b.attr(l),b.show().animateWith(r,n,{x:E,y:C},f,g)):(l.x=E,l.y=C,b=z.label=d.text(l,F),b.hover(P(A,D&&D.enabled),K(A,D&&D.enabled)),b.drag(Z,T,H));(z=z&&(z.image||z.element))&&b.insertAfter(z);m&&(m.transform(I),m.attr({x:E,y:C,text:x.text,title:x.tooltext||I,fill:p.color,"text-bound":[p.backgroundColor,p.borderColor,
p.borderThickness,p.borderPadding,p.borderRadius,p.borderDash]}));m=t.link?"pointer":t.allowDrag?"move":I;b.attr({cursor:m});b.tooltip(t.toolText);b.data("drag-options",{dataObj:A,dataset:this,datasetIndex:this.index,pointIndex:A.config.index,cursor:m,chart:c,link:A.link});t={index:a,link:t.link,y:t.y,x:t.x,shape:u(Q,"rect"),width:t.width,height:t.height,radius:t.radius,sides:t.numSides,label:t.displayValue,toolText:t.toolText,id:t.id,datasetIndex:this.index,datasetName:this.JSONData.seriesname,sourceType:"dataplot"};
A=e+"_"+a;b.data("groupId",A);b.data("eventArgs",t);b.data("hoverAttr",D&&D.rollOverAttrs);b.data("unHoverAttr",z.data("unHoverAttr"))}else z.label&&z.label.hide()},_removeDataVisuals:function(a){var c=this.components.pool||(this.components.pool={}),e,d,q,h;if(a)for(d in a=a.graphics,a)e=c[d]||(c[d]={}),q=(h=a[d])&&h.type,e=e[q]||(e[q]=[]),h.hide&&"function"===typeof h.hide&&(h.attr({"text-bound":[]}),h.hide(),h.transform&&h.transform(I)),e.push(a[d])},show:function(){var a=this.graphics,c=a.dragLabelGroup;
a.group.show();c.show();this.visible=!0},hide:function(){var a=this.graphics,c=a.dragLabelGroup;a.group.hide();c.hide();this.visible=!1},_dragStart:function(a,c){var d=this.data("drag-options"),k=d.dataObj,q=k.graphics.element,h=q.getBBox(),l=k.config,g=d.dataset,F=g.groupManager,p=F.graphics,n=p.waitElement,r=d.dataset.config,d=r.viewMode;e&&Q(a);var f=c.components.paper,w=g.graphics.group,t=l.dragStart||(l.dragStart={}),u=k.graphics.cloneGraphic,m=g.graphics.cloneGraphicGroup,B=k.graphics.cloneText,
C=k.graphics.image,A=k.graphics.cloneImage,E=k.graphics.label,z={circle:"circ",rectangle:"rect",polygon:"poly"};b&&(q._.dirty=1);l.symbol.split(N);l.allowDrag&&(!u&&k.graphics.element&&(u=k.graphics.cloneGraphic=k.graphics.element.clone(),m.appendChild(u)),E&&!B&&(B=k.graphics.cloneText=k.graphics.label.clone(),B.followers[0]&&B.followers[0].el&&m.appendChild(B.followers[0].el),m.appendChild(B)),C&&!A&&(A=k.graphics.cloneImage=k.graphics.image.clone(),m.appendChild(A)),B&&B.show(),A&&A.show(),u&&
u.show());t.xPos=l._xPos;t.yPos=l._yPos;t.x=l.x;t.y=l.y;t.bBox=h;t.origX=t.lastDx||(t.lastDx=0);t.origY=t.lastDy||(t.lastDy=0);q.data("fire_click_event",1);q.data("mousedown",1);clearTimeout(q._longpressactive);q.data("move",!0);d||(n||(n=p.waitElement=f.ringpath(l._xPos,l._yPos,8,11,0,0,w).attr({fill:V({alpha:"100,100",angle:120,color:"CCCCCC,FFFFFF",ratio:"30,50"}),"stroke-width":0})),n.attr({ringpath:[l._xPos,l._yPos,8,11,0,0]}).show().animate({ringpath:[l._xPos,l._yPos,8,11,0,6.28]},1E3),q._longpressactive=
setTimeout(function(){var a=r.name!==R&&void 0!==r.name?r.name+x+" ":R,h=r.id;p.waitElement&&p.waitElement.hide();q.data("fire_click_event",0);F.showNodeUpdateUI(c,{x:{value:l.x},y:{value:l.y},draggable:{value:H(l.allowdrag,1)},color:{value:l.color},alpha:{value:l.alpha},label:{value:H(l.label,l.name)},tooltip:{value:l.toolText},shape:{value:z[l.shape]},rectWidth:{value:l.width},rectHeight:{value:l.height},circPolyRadius:{value:l.radius},polySides:{value:l.numsides},image:{value:l.imageNode},imgWidth:{value:l.imageWidth},
imgHeight:{value:l.imageHeight},imgAlign:{value:l.imageAlign},imgUrl:{value:l.imageURL},id:{value:l.id,disabled:!0},link:{value:l.link},dataset:{innerHTML:'<option value="'+h+'">'+a+h+"</option>",disabled:!0},datasetIndex:g.index},!0)},1E3));u&&u.show();B&&B.show();A&&A.show()},_dragMove:function(a,c,e,d,q){var h=this.data("drag-options"),l=h.dataObj,b=l.graphics.element;e=l.graphics.cloneGraphic;d=l.graphics.cloneImage;var F=l.graphics.cloneText,l=l.config,p=l.dragStart,n=p.bBox.x+a,r=p.bBox.x2+
a,f=p.bBox.y+c,w=p.bBox.y2+c,t=h.dataset.groupManager.graphics,x=q.config.canvasLeft,u=q.config.canvasRight,B=q.config.canvasTop;q=q.config.canvasBottom;n<x&&(a+=x-n);r>u&&(a-=r-u);f<B&&(c+=B-f);w>q&&(c-=w-q);if(a||c)t.waitElement&&t.waitElement.hide(),b.data("fire_click_event",0),g.call(b);l.allowDrag&&(p.draged=!0,p.lastDx=a,p.lastDy=c,q=h._transformObj={transform:"t"+(p.origX+a)+","+(p.origY+c)},e&&e.attr(q),d&&d.attr(q),F&&F.attr({x:l._xPos+a,y:l._yPos+c}))},removeData:function(a,c){var e=this.components,
d=this.groupManager,q=e.data,h=e.removeDataArr||(e.removeDataArr=[]);a=a||0;0>a&&(a=0);e.removeDataArr=h.concat(q.splice(a,c||1));d._clearConnectors()},_dragUp:function(c){var e=this.data("drag-options"),d=e.dataset,b=d.chart,q=d.components.data,h=e.dataObj,l=h.graphics.element,n=e.dataset.groupManager,F=l.data("fire_click_event"),e=h.config,p=b.config.canvasTop,y=b.config.canvasLeft,r=h.config.dragStart||{},w=d.yAxis,t=h.graphics.cloneText,x=d.groupManager.graphics,u=b.components.xAxis[0],B={},m,
A,z,P,K,H=h.graphics.cloneGraphic,Z=h.graphics.cloneImage,D=function(a){var h;if(a)for(h in a)if(K=a[h])z=K.config.datasetIndex,m=K.config.fromPointObj,A=K.config.toPointObj,(P=n.connectorSet[z])&&P&&P.connectors.drawConnector(K,m,A)};x.waitElement&&x.waitElement.hide();g.call(this);l.data("mousedown",0);F&&C.call(l,b,c);if(r.draged){r.origX+=r.lastDx;r.origY+=r.lastDy;h.config._xPos=r.xPos+r.lastDx;h.config._yPos=r.yPos+r.lastDy;B.x=u.getValue(h.config._xPos-y);B.y=w.getValue(h.config._yPos-p);B.update=
!0;F=0;for(y=q.length;F<y&&(p=q[F],h.config.id!==p.config.id);F++);d.updatePointConfig(B,F);q=l.data("eventArgs");q.x=B.x;q.y=B.y;d._drawNode(F);d=h.config.startConnectors;h=h.config.endConnectors;D(d);D(h);c=E(b.linkedItems.container,c);c.sourceEvent="dataplotdragend";a.raiseEvent("chartupdated",f(c,q),b.chartInstance);r.draged=!1}t&&t.hide();H&&H.hide();Z&&Z.hide();delete e.dragStart},getDataLimits:function(){var a=this.config;return{max:a.yMax,min:a.yMin,xMax:a.xMax,xMin:a.xMin}}},"Area"])}]);
Y.register("module",["private","modules.renderer.js-dataset-connector",function(){var a=this.hcLib,b=a.preDefStr.configStr,z=a.BLANKSTRING,U=a.BLANKSTRING,aa=a.parseTooltext,O=a.pluck,S=a.getValidValue,L=a.pluckNumber,N=a.parseUnsafeString,R=a.getDashStyle,I=a.toRaphaelColor,M=a.schedular,u=Math,A=u.sin,m=u.cos,H=u.abs,D=a.getFirstColor,f=a.HUNDREDSTRING,V=a.plotEventHandler,K=a.SHAPE_RECT,Q=function(){this.data("move",!1);clearTimeout(this._longpressactive);delete this._longpressactive};Y.register("component",
["dataset","Connector",{type:"connector",configure:function(){var b=this.chart.jsonData.chart,d=this.config,w=this.components.data||(this.components.data=[]),e=this.JSONData,u=e.connector,m=u&&u.length,t=a.parseUnsafeString;d.connectorsTooltext=S(t(O(e.connectortooltext,b.connectortooltext)));d.stdThickness=L(e.stdthickness,1);d.conColor=D(O(e.color,"FF5904"));d.conAlpha=O(e.alpha,f);d.conDashGap=L(e.dashgap,5);d.conDashLen=L(e.dashlen,5);d.conDashed=!!L(e.dashed,0);d.arrowAtStart=!!L(e.arrowatstart,
1);d.arrowAtEnd=!!L(e.arrowatend,1);d.conStrength=L(e.strength,1);d.toolTipSepChar=O(b.tooltipsepchar," - ");d.showTooltip=L(b.showtooltip,1);d.viewMode=L(b.viewmode,1);b=w.length;b>m&&w.splice(m,b-m);d._refreshData=!0;for(w=0;w<m;w+=1)this._setConfigure(w,u[w]);d._refreshData=!0},_setConfigure:function(a,d){var b=this.components.data,b=b[a]||(b[a]=b[a]={}),e=this.config,f=this.chart,u=N(O(d.label,d.name)),t=O(d.alpha,e.conAlpha),m=f.linkedItems.smartLabel,A="$fromLabel"+e.toolTipSepChar+"$toLabel",
t={FCcolor:{color:D(O(d.color,e.conColor)),alpha:t}},B=S(N(O(d.tooltext,e.connectorsTooltext)));m.useEllipsesOnOverflow(f.config.useEllipsesWhenOverflow);f=m.getOriSize(u);b.config=b.config||(b.config={});!b.graphics&&(b.graphics={});A=e.showTooltip?O(B,u?"$label":A):!1;u=b.config={_options:d,id:O(d.id,a).toString(),from:O(d.from,z),to:O(d.to,z),label:u,toolText:A,customToolText:B,color:t,index:a,dashStyle:L(d.dashed,e.conDashed)?R(L(d.dashlen,e.conDashLen),L(d.dashgap,e.conDashGap),e.stdThickness):
"none",dashed:d.dashed,dashlen:d.dashlen,dashgap:d.dashgap,arrowAtStart:!!L(d.arrowatstart,e.arrowAtStart),arrowAtEnd:!!L(d.arrowatend,e.arrowAtEnd),conStrength:L(d.strength,e.conStrength),link:d.link,stdThickness:e.stdThickness,labelWidth:f.widht,labelHeight:f.height};u.datasetIndex=this.index;u.add=d.add;u.update=d.update;e._refreshData&&delete b.removed},init:function(a){this.yAxis=this.chart.components.yAxis[0];this.components={};this.graphics={};this.JSONData=a;this.configure()},draw:function(){var b=
this,d=b.chart,f=b.config,e=d.graphics,u=b.groupManager.nodes,m=b.components.data,t,A,z=b.chart.components.paper,B=d.getJobList();A=e.datasetGroup;t=d.config.dataLabelStyle;var d=m.length,e=b.components.removeDataArr||[],x=e.length,c;c||(c=b.graphics.connectorGroup=b.graphics.connectorGroup||z.group("connectorGroup").insertBefore(A));f.showTooltip&&c.trackTooltip(!0);f.cleared=!1;c.css(t);for(z=0;z<d;z++)f=m[z],c=f.config,f.graphics||(f.graphics={}),t=c.from,A=c.to,t=u[t],A=u[A],t&&A&&!0!==c.deleted&&
b.drawConnector(f,t,A,z);!0!==b.drawn&&B.labelDrawID.push(M.addJob(function(){b.drawLabel()},a.priorityList.label));b.drawn=!0;for(z=0;z<x;z++)b._removeDataVisuals(e.shift())},mouseDown:function(){var a=this,d=a.data(b),f=a.data("dataset"),e=f.groupManager,u=f.chart,m=f.config,t=d||{};a._longpressactive=clearTimeout(a._longpressactive);a.data("fire_click_event",1);a._longpressactive=setTimeout(function(){a.data("fire_click_event",0);a.data("viewMode")||e.showConnectorUpdateUI(u,{fromid:{val:t.from,
innerHTML:"<option>"+t.from+"</option>",disabled:!0},toid:{val:t.to,innerHTML:"<option>"+t.to+"</option>",disabled:!0},datasetIndex:f.index,index:d.index,arratstart:{val:!!L(t.arrowatstart,1)},arratend:{val:!!L(t.arrowatend,1)},dashed:{val:L(t.dashed)},dashgap:{val:t.dashgap},dashlen:{val:t.dashlen},label:{val:t.label},tooltext:{val:t.tooltext},id:{val:m.id,disabled:!0},strength:{val:t.conStrength},alpha:{val:t.alpha},color:{val:t.color.FCcolor.color}},!0)},1E3)},mousemove:function(){this.data("fire_click_event",
0);Q.call(this)},mouseup:function(a){var d=this.data("dataset").chart;Q.call(this);V.call(this,d,a,"ConnectorClick")},hoverIn:function(a){var d=this.data("dataset").chart;V.call(this,d,a,"ConnectorRollover")},hoverOut:function(a){var d=this.data("dataset").chart;V.call(this,d,a,"ConnectorRollout")},drawConnector:function(a,d,f){if(!a.removed){var e=this.chart,u,m,t,A,z=e.components.paper,B=e.components.numberFormatter,x=a.graphics,c=e.get("config","animationObj"),e=this.graphics.connectorGroup,E=
c.animObj,C=c.dummyObj,K=c.animType,c=c.duration,g=a.config;m=g.toolText;var H,D,v=g.eventArgs||(g.eventArgs={}),k=this.config,q=this.components.pool||{};g.fromPointObj=d;g.toPointObj=f;H=d.config;D=f.config;g.fromX=u=H._xPos;g.fromY=t=H._yPos;g.toX=m=D._xPos;g.toY=A=D._yPos;g._labelX=(u+m)/2;g._labelY=(t+A)/2;g.strokeWidth=u=g.conStrength*g.stdThickness;t=g.color;g.textBgColor=t&&t.FCcolor&&t.FCcolor.color;v.label=g.label;v.arrowAtStart=g.arrowAtStart;v.arrowAtEnd=g.arrowAtEnd;v.link=g.link;v.id=
g.id;v.fromNodeId=H.id;v.toNodeId=D.id;m=g.toolText=aa(g.toolText,[3,83,84,85,86,87,88,89,90,91,92],{label:g.label,fromXValue:B.dataLabels(d.config.x),fromYValue:B.dataLabels(d.config.y),fromXDataValue:d.config.x,fromYDataValue:d.config.y,fromLabel:O(d.config.displayValue,d.config.id),toXValue:B.dataLabels(f.config.x),toYValue:B.dataLabels(f.config.y),toXDataValue:f.config.x,toYDataValue:f.config.y,toLabel:O(f.config.displayValue,f.config.id)});H=d.config;D=f.config;d=H.startConnectors;f=D.endConnectors;
B=a.config.id+"-"+H.id+"-"+D.id;d[B]=a;f[B]=a;d=this._getlinePath(a);f=x.graphic;x.graphic||(q.graphic&&q.graphic.path&&q.graphic.path.length?f=x.graphic=q.graphic.path.shift():(f=x.graphic=z.path(e).mousedown(this.mouseDown).mousemove(this.mousemove).mouseup(this.mouseup).hover(this.hoverIn,this.hoverOut),f.attr({path:d})));f.show().animateWith(C,E,{path:d},c,K);f.attr({"stroke-width":u,ishot:!0,"stroke-dasharray":g.dashStyle,cursor:g.link?"pointer":U,stroke:I(t)}).data("eventArgs",v).data("viewMode",
k.viewMode).data(b,g).data("dataset",this).tooltip(m);this.drawn&&this.drawLabel(a)}},drawLabel:function(a){var d=this,f=d.config,e=d.chart,u=e.components.paper,m=e.get("config","animationObj"),t=d.graphics.connectorGroup,A=m.animObj,z=m.dummyObj,B=m.animType,x=m.duration,c,E,C,K,g=e.config.dataLabelStyle,H,D,v,k,q,h,e=d.components.data,l=d.components.pool||{},m=e.length,G=function(a){c=a.config;C=c.toolText;D=a.graphics;E=c.label;k=c._labelX;q=c._labelY;h=c.textBgColor;E?(H=D.text=D.text||l.element&&
l.element.text&&l.element.text.shift(),K={text:E,fill:g.color,ishot:!0,direction:U,cursor:c.link?"pointer":U,"text-bound":[O(g.backgroundColor,h),O(g.borderColor,h),1,"2"]},D.text?(H.show().animateWith(z,A,{x:k,y:q},x,B),H.attr(K)):(K.x=k,K.y=q,D.text=H=u.text(K,t).mousedown(d.mouseDown).mousemove(d.mousemove).mouseup(d.mouseup).hover(d.hoverIn,d.hoverOut)),H.data("eventArgs",c.eventArgs).data("viewMode",f.viewMode).data(b,c).data("dataset",d).tooltip(C)):D.text&&D.text.hide()};if(a)G(a);else for(v=
0;v<m;v++)a=e[v],G(a)},getJSONData:function(){var a=this.components.data,d=a.length,b=[],e,f;for(f=0;f<d;f++)e=a[f],e.removed||(e.config._options&&(delete e.config._options.update,delete e.config._options.add),b.push(e.config._options));return b},_updateFromPos:function(a,d){this.fromX=a;this.fromY=d;this.graphic&&this.graphic.animate({path:this.getlinePath()});this.text&&this.text.animate({x:(this.fromX+this.toX)/2,y:(this.fromY+this.toY)/2})},_updateToPos:function(a,d){this.toX=a;this.toY=d;this.graphic&&
this.graphic.animate({path:this.getlinePath()});this.text&&this.text.animate({x:(this.fromX+this.toX)/2,y:(this.fromY+this.toY)/2})},_getlinePath:function(a){a=a.config;var d=a.fromPointObj,b=a.toPointObj,e=a.fromX,f=a.fromY,u=a.toX,t=a.toY,m=["M",e,f];a.arrowAtStart&&(d=d.config,m=d.shapeType===K?m.concat(this._drawArrow(e,f,u,t,d.shapeArg.width,d.shapeArg.height)):m.concat(this._drawArrow(e,f,u,t,d.shapeArg.radius)));a.arrowAtEnd&&(d=b.config,m=d.shapeType===K?m.concat(this._drawArrow(u,t,e,f,d.shapeArg.width,
d.shapeArg.height)):m.concat(this._drawArrow(u,t,e,f,d.shapeArg.radius)));m.push("L",u,t);return m},_drawArrow:function(a,d,b,e,f,z){var t=u.atan((d-e)/(a-b)),K=[];0>t&&(t=2*u.PI+t);if(e>d){if(b>=a&&t>u.PI||b<a&&t>u.PI)t-=u.PI}else if(b>=a&&t<u.PI&&0!==t||b<a&&t<u.PI)t+=u.PI;"undefined"==typeof z?(b=a+f*m(t),f=d+f*A(t)):(f=H(f)/2,z=H(z)/2,b=a+(f=a<b?f:-f),f=d+f*u.tan(t),H(d-f)>H(z)&&(f=d+(z=d<e?z:-z),b=a+z/u.tan(t)));K.push("L",b,f,b+10*m(t+.79),f+10*A(t+.79),"M",b+10*m(t-.79),f+10*A(t-.79),"L",b,
f);return K},removeData:function(a,d){var b=this.components,e=b.data;0>a&&(a=0);b.removeDataArr=e.splice(a,d)}},"Dragnode"])}]);Y.register("module",["private","modules.renderer.js-dataset-dragablelabels",function(){var a=this.hcLib,b=a.preDefStr,z=b.configStr,U=b.animationObjStr,aa=b.visibleStr,O=a.BLANKSTRING,S=a.pluck,L=a.pluckNumber,N=a.parseUnsafeString,R=a.extend2,I=a.getDashStyle,M=a.regex.dropHash,u=a.HASHSTRING,A=a.hashify,m=a.schedular,H="rgba(192,192,192,"+(a.isIE?.002:1E-6)+")",D=a.setLineHeight,
f=a.getMouseCoordinate,V=a.plotEventHandler;Y.register("component",["dataset","DragableLabels",{configure:function(){var a=(this.JSONData||[]).length,b,f=this.components.data;this.config.viewMode=L(this.chart.jsonData.chart.viewmode,0);f||(f=this.components.data=[]);b=f.length;b>a&&f.splice(a,b-a);for(b=0;b<a;b++)this._setConfigure(b)},_setConfigure:function(a,b){var f=this.JSONData,f=b?b:f[a],d=this.components.data,w,e=this.chart.config.style.inCanvasStyle,m=e.fontSize;w=d[a];!w&&(w=d[a]={});!w.graphics&&
(w.graphics={});d=w.config=w.config||(w.config={});w=N(S(f.text,f.label));d._options=f;d.add=f.add;w&&(d.text=w,d.x=f.x||0,d.y=f.y||0,d.labelFontSize=m=L(f.fontsize,m),d.labelColor=A(S(f.color,e.color)),d.alpha=L(f.alpha,100)/100,d.allowdrag=L(f.allowdrag,1),d.padding=L(f.padding,5),d.labelCSS=f.fontsize?{fontSize:m+"px"}:void 0,d.labelBGColor=S(f.bgcolor&&f.bgcolor.replace(M,u)),d.labelBDColor=S(f.bordercolor&&f.bordercolor.replace(M,u)),d.link=f.link,d.allowDrag=L(f.allowdrag,1),d.borderThickness=
f.borderthickness,d.dashLen=f.dashlen,d.dashGap=f.dashgap,d.dashed=f.dashed,d.radius=f.radius)},init:function(a){this.yAxis=this.chart.components.yAxis[0];this.components={};this.graphics={};this.JSONData=a;this.configure()},getJSONData:function(){var a=this.components.data,b=a.length,f=[],d,w;for(w=0;w<b;w++)d=a[w],d.removed||d.config._options&&f.push(d.config._options);return f},draw:function(){var b=this,f=b.components.data,n=b.chart,d=n.getJobList(),w=n.get(z,U),e=w.duration,u=w.animType,A=w.dummyObj,
w=w.animObj,t=n.components.paper,H=n.components.yAxis[0],M=n.components.xAxis[0],B=n.linkedItems.smartLabel,x=n.graphics.datalabelsGroup,c=n.graphics.trackerGroup,E=n.config.dataLabelStyle,C,V,g,J,N,v,k,q,h,l,G,F,p,y,r,ea=f.length,Ka=b.components.removeDataArr||[],Ja=Ka.length,ba=b.components.pool||{},S,R,x=b.graphics.dataLabelContainer=b.graphics.dataLabelContainer||t.group("datalabels",x);b.graphics.trackerContainer=b.graphics.trackerContainer||t.group("tracker",c);x.css({"font-weight":E.fontWeight,
"font-style":E.fontStyle,"font-size":E.fontSize,"font-family":E.fontFamily});for(S=0;S<ea;S++)G=f[S],G.removed||(l=G.config,!G.graphics&&(G.graphics={}),l.index=S,c=M.getPixel(l.x),J=H.getPixel(l.y),v=l.text,k=l.labelBGColor,q=l.labelBDColor,h=l.padding,F=l.allowDrag,p=l.labelFontSize,N=l.labelColor,y=l.radius,g=l.dashed,r=l.borderThickness,C=l.dashLen,V=l.dashGap,r=l.borderThickness,R=l.labelCSS,C={x:c,y:J,text:v,align:"center",fill:N,"text-bound":[k||O,q||O,L(r,1),h,L(y,0),L(g,0)?I(L(C,5),L(V,4),
L(r,1)):"none"],visibility:aa},k={backgroundColor:k,borderColor:q,borderPadding:h,fontSize:p+"px",fontStyle:E.fontStyle,fontWeight:E.fontWeight,borderRadius:0,borderDash:"none",fontFamily:E.fontFamily},D(k),B.useEllipsesOnOverflow(n.config.useEllipsesWhenOverflow),B.setStyle(k),F={link:l.link,text:v,x:c,y:J,allowdrag:F,sourceType:"labelnode"},(k=G.graphics.element=G.graphics.element||ba.element&&ba.element.text&&ba.element.text.shift())?(l.labelCSSApplied&&!R&&k.removeCSS(),k.show().animateWith(A,
w,C,e,u).css(R)):k=G.graphics.element=t.text(C,R,x),l.labelCSSApplied=R,k.data("eventArgs",F),v=B.getOriSize(v),l.width=v.width,l.height=v.height,l.xPos=c,l.yPos=J);d.trackerDrawID.push(m.addJob(function(){b.drawTracker()},a.priorityList.tracker));for(S=0;S<Ja;S++)b._removeDataVisuals(Ka.shift())},removeData:function(a,b){var f=this.components;f.removeDataArr=f.data.splice(a,b)},drawTracker:function(){var a=this,b=a.components.data,f=a.chart,d=f.components.paper,w=a.groupManager,e=a.config,u=a.graphics.trackerContainer,
m=b.length,t,A,z,B=function(a){var h=this;h.data("fire_click_event",1);clearTimeout(h._longpressactive);h._longpressactive=setTimeout(function(){h.data("fire_click_event",0);h.data("viewMode")||w.showLabelDeleteUI(a)},1E3)},x=function(){this.data("fire_click_event")&&(this.data("fire_click_event",0),w.clearLongPress.call(this))},c=function(a){var h=this.data("fire_click_event");w.clearLongPress.call(this);h&&V.call(this,f,a,"LabelClick")},E=function(a){V.call(this,f,a,"LabelRollover")},C=function(a){V.call(this,
f,a,"LabelRollout")},D,g,J,I,v,k,q,h=function(h,c){a._labelDragMove.call(this,h,c,f)},l=function(h){a._labelDragStart.call(this,h,f)},G=function(h){a._labelDragUp.call(this,h)},F;for(F=0;F<m;F++)t=b[F],t.removed||(A=t.config,z=A.padding||0,k=A.width,q=A.height,I=A.xPos-k/2,v=A.yPos-q/2,D=A.allowDrag,g=A.text,J=t.graphics.trackerElement,z={x:I-z,y:v-z,width:k+2*z,height:q+2*z,cursor:A.allowDrag?"move":O,fill:H,stroke:H,ishot:!0},A={link:A.link,text:g,x:I,y:v,allowdrag:D,sourceType:"labelnode"},J||
(J=t.graphics.trackerElement=d.rect(u).mousedown(B).mousemove(x).mouseup(c).data("viewMode",e.viewMode).data("eventArgs",A).hover(E,C).drag(h,l,G)),J.attr(z),J.data("drag-options",{index:F,dataset:a}))},_labelDragStart:function(){var a=this,b=a.getBBox(),f=a.data("drag-options"),d=f.dataset,w=d.groupManager,e=d.components.data[f.index],d=e.graphics.element,u=e.dragStart=e.dragStart||(e.dragStart={});f.ox=d.attr("x");f.oy=d.attr("y");f.bBox=b;u.xPos=e.config.xPos;u.yPos=e.config.yPos;u.bBox=b;a.data("fire_click_event",
1);a.data("fire_dragend",0);clearTimeout(a._longpressactive);a._longpressactive=setTimeout(function(){a.data("fire_click_event",0);a.data("viewMode")||w.showLabelDeleteUI(e)},1E3)},_labelDragMove:function(a,b,f){var d=f.config,w=d.canvasLeft,e=d.canvasRight,u=d.canvasBottom,d=d.canvasTop,m=this.data("drag-options"),t=m.dataset,A=t.groupManager,t=t.components.data[m.index],z=t.graphics.element,B=t.dragStart,x=B.bBox,c=b[0];b=b[1];var E=B.bBox.x+c,C=B.bBox.x2+c,H=B.bBox.y+b,g=B.bBox.y2+b,J=f.components.yAxis[0],
D=f.components.xAxis[0];E<w&&(c+=w-E);C>e&&(c-=C-e);H<d&&(b+=d-H);g>u&&(b-=g-u);B.draged=!0;this.attr({x:x.x+c,y:x.y+b});e=m.ox+c;u=m.oy+b;z.attr({x:m.ox+c,y:m.oy+b});t.config.x=D.getValue(e-w);t.config.y=J.getValue(u-d);this.data("fire_dragend")||(V.call(this,f,a,"LabelDragStart"),this.data("fire_dragend",1));this.data("fire_click_event")&&(this.data("fire_click_event",0),A.clearLongPress.call(this))},_labelDragUp:function(b){var u=this.data("drag-options"),n=u.dataset,d=n.chart,w=n.groupManager,
e=n.components.data[u.index].dragStart,u=this.data("eventArgs"),n=n.yAxis;u.x=d.components.xAxis[0].getValue(this.attr("x"));u.y=n.getValue(this.attr("y"));e.draged=!1;this.data("fire_dragend")&&(n=f(d.linkedItems.container,b),n.sourceEvent="labeldragend",a.raiseEvent("chartupdated",R(n,u),d.chartInstance),V.call(this,d,b,"labeldragend"));w.clearLongPress.call(this)}},"Dragnode"])}]);Y.register("module",["private","modules.renderer.js-dataset-dragcolumn",function(){var a=this,b=a.hcLib,z=b.pluck,
U=b.pluckNumber,aa=b.parseUnsafeString,O=b.getValidValue,S=b.toRaphaelColor,L=b.hasSVG,N=Math,R=N.round,I=N.abs,M=b.plotEventHandler;Y.register("component",["dataset","DragColumn",{configure:function(){var a,b=this.chart.jsonData.chart,m,z;z=this.JSONData;var D=this.JSONData.data||[],f,I;this.__base__.configure.call(this);a=this.config;m=this.components.data;a.allowDrag=U(z.allowdrag,1);a.allowNegDrag=U(z.allownegativedrag,1);a.allowAxisChange=U(b.allowaxischange,1);a.snapToDivOnly=U(b.snaptodivonly,
0);a.snapToDiv=a.snapToDivOnly?1:U(b.snaptodiv,1);a.doNotSnap=U(b.donotsnap,0);a.snapToDivRelaxation=U(b.snaptodivrelaxation,10);a.doNotSnap&&(a.snapToDiv=a.snapToDivOnly=0);f=m.length;for(b=0;b<f;b++)I=D[b]||{},z=m[b].config,z.allowDrag=U(I.allowdrag,a.allowDrag),z.allowNegDrag=U(I.allownegativedrag,a.allowNegDrag)},_firePlotEvent:function(u,A,m){var H=this.JSONData,D=this.chart.jsonData.chart,f=this.chart,V=this.config,K=f.config,Q=K.useplotgradientcolor,n=K.useroundedges,d=f.components,w=d.paper,
e=w.canvas.style,Z=d.numberFormatter,P=this.components.data[A],t=P.config,T=P.graphics.element,N=t.finalTooltext,B=b.toolTip,x=m.originalEvent,c=L&&"ns-resize"||"n-resize",E=m.originalEvent;m=b.getMouseCoordinate(f.linkedItems.container,E).chartY;var C=P._yPos,U=P._height,g=d.yAxis[0],d=g.getPixel(g.getAxisBase()),J,W=K.canvasTop;J=K.canvasBottom;var v=t.allowDrag,k=t.allowNegDrag?J:d,q,h,l=C,G=C+U,K=K.dragTolerance+1;J=C>=d?C+U:C;if(T)switch(H=O(aa(z(t.origToolText,H.plottooltext,D.plottooltext))),
u){case "mouseover":V.mouseIn=!0;N&&B.setStyle(w);m<=G-K&&m>=l+K&&(B.setPosition(x),B.draw(N,w));!t._rollOverResponseSetterFire&&m<=G&&m>=l&&(this._rolloverResponseSetter(f,T,x),t._rollOverResponseSetterFire=!0);break;case "mouseout":V.mouseIn=!1;e.cursor="default";t._rollOverResponseSetterFire&&this._rolloutResponseSetter(f,T,x);t._rollOverResponseSetterFire=!1;B.hide();break;case "click":M.call(T,f,x);break;case "touchmove":case "mousemove":t.dragStart?(E.preventDefault?E.preventDefault():E.returnValue=
!1,t._rollOverResponseSetterFire=!1,e.cursor=c,t._pointerDy++,m+=t._dragBuffer,m<W?m=W:m>k&&(m=k),C=d<m?d:m,U=I(d-m),P._yPos=C,P._height=U,e=t.setValue=R(g.getValue((C>=d?C+U:C)-W)),e=Z.dataLabels(e),t.toolTipValue=e,t.displayValue=z(t.setDisplayValue,e),Q&&!n&&(t.colorArr[0].FCcolor.angle=C<d?90:270),T.attr({y:P._yPos,height:P._height,fill:S(t.colorArr[0])}),this.drawLabel(A,A+1),P.graphics.element=T,B.hide(),1==t._pointerDy&&(P={dataIndex:A,datasetIndex:P.datasetIndex,startValue:P.startValue,datasetName:P.name},
a.raiseEvent("dataplotDragStart",P,f.chartInstance))):(J=C>=d?C+U:C,v&&m>=J-K&&m<=J+K?(e.cursor=c,B.hide()):(e.cursor="default",t._rollOverResponseSetterFire&&(B.setPosition(x),B.draw(N,w))),!t._rollOverResponseSetterFire&&m<=G&&m>=l?(this._rolloverResponseSetter(f,T,x),t._rollOverResponseSetterFire=!0):!t._rollOverResponseSetterFire||m<=G&&m>=l||(B.hide(),t._rollOverResponseSetterFire=!1,this._rolloutResponseSetter(f,T,x)));break;case "touchend":case "mouseup":V.mousedown=!1;t.dragStart&&(this.setMaxMin(),
f._setDataLimits(),P={dataIndex:A,datasetIndex:P.datasetIndex,startValue:P.startValue,endValue:t.setValue,datasetName:P.name},A=[f.chartInstance.id,P.dataIndex,P.datasetIndex,P.datasetName,P.startValue,P.endValue],t._pointerDy&&(a.raiseEvent("dataplotDragEnd",P,f.chartInstance),b.raiseEvent("chartupdated",P,f.chartInstance,A)),Q&&!n&&(Q=C>=d?90:270,(q=T.data("setRolloverAttr"))&&q.fill&&(f=q.fill,f=f.split("-"),f[0]=Q,q.fill=f.join("-")),(h=T.data("setRolloutAttr"))&&h.fill&&(f=h.fill,f=f.split("-"),
f[0]=Q,h.fill=f.join("-"))));t._dragBuffer=0;t._pointerDy=0;t.dragStart=!1;t.dragStart=!1;t.finalTooltext=!1!==t.toolText?t.toolText+(H?"":t.toolTipValue):"";m>=J-K&&m<=J+K||(e.cursor="default");break;case "touchstart":case "mousedown":V.mouseIn&&(V.mousedown=!0,J=C>=d?C+U:C,v&&m>=J-K&&m<=J+K?(t.dragStart=!0,t._pointerDy=0,t._dragStartY=m,t._dragBuffer=J-m,P.startValue=t.setValue,P.name=V.seriesname,P.datasetIndex=this.positionIndex,P.dragged=!0):t.dragStart=!1)}},_rolloverResponseSetter:function(a,
b,m){var z=b.getData();0!==z.showHoverEffect&&!0!==z.draged&&(b.attr(b.getData().setRolloverAttr),M.call(b,a,m,"DataPlotRollOver"))},_rolloutResponseSetter:function(a,b,m){var z=b.getData();0!==z.showHoverEffect&&!0!==z.draged&&(b.attr(b.getData().setRolloutAttr),M.call(b,a,m,"DataPlotRollOut"))},getJSONData:function(){var a=this.JSONData.data,b=this.components.data,m=[],z={},D,f,I,K,M;M=0;for(K=a.length;M<K;M++){f=a[M];D=b[M];z={};for(I in f)z[I]="value"===I?D.config.setValue:f[I];m.push(z)}return{data:m}}},
"Column"])}]);Y.register("module",["private","modules.renderer.js-dataset-dragarea",function(){var a=this,b=a.hcLib,z="VML"===b.Raphael.type,U=b.BLANKSTRING,aa=b.parseUnsafeString,O=b.getValidValue,S=b.preDefStr.hiddenStr,L=b.pluck,N=b.pluckNumber,R=b.hasSVG,I=Math,M=I.round,u=I.min,A=I.max,m=b.plotEventHandler;Y.register("component",["dataset","DragArea",{configure:function(){var a,b=this.chart.jsonData.chart;a=Y.get("component",["dataset","area"]);var f,m,u;m=this.JSONData;var z=m.data||[],n;a.prototype.configure.call(this);
a=this.config;f=this.components.data;a.allowDrag=N(m.allowdrag,1);a.allowNegDrag=N(m.allownegativedrag,1);a.allowAxisChange=N(b.allowaxischange,1);a.snapToDivOnly=N(b.snaptodivonly,0);a.doNotSnap=N(b.donotsnap,0);a.snapToDiv=N(b.snaptodiv,1);a.snapToDivRelaxation=N(b.snaptodivrelaxation,10);a.doNotSnap&&(a.snapToDiv=a.snapToDivOnly=0);n=f.length;for(b=0;b<n;b++)u=z[b]||{},m=f[b].config,m.allowDrag=N(u.allowdrag,a.allowDrag),m.allowNegDrag=N(u.allownegativedrag,a.allowNegDrag)},updateImage:function(a){var b=
this.chart,f=a.graphics,f=f.image||f.element,m=a.config,A=m.anchorProps,I=m.hoverEffects,m=f&&f.data("imgRef"),n=function(a){var b=a.length,e=U,d;for(d=0;d<b;d+=1)e+=" "+a[d];return e},d=A.imageScale,w=b.components.paper,e=m.height*d*.01,M=m.width*d*.01,b=a._xPos;a=a._yPos;var P=I.imageHoverScale,t=m.width*P*.01,T=m.height*P*.01,N=A.radius=A.isAnchorRadius?A.radius:u(M,e)/2,B=A.imagePadding,x=N-B-.5*A.borderThickness,B=I.radius-B-.5*I.anchorBorderThickness,N=A.symbol[1],A=w.polypath(N||2,b,a,0<x?
x:0,A.startAngle,0).attr({visibility:S}),x=n(A.attrs.path),d={x:b-m.width*d*.005,y:a-m.height*d*.005,width:M,height:e,alpha:100};z||(d["clip-path"]=x);A.remove();A=w.polypath(N||2,b,a,0<B?B:0,I.startAngle,I.dip);I=n(A.attrs.path);A.remove();m={x:b-m.width*P*.005,y:a-m.height*P*.005,width:t,height:T,alpha:100};z||(m["clip-path"]=I);f.attr(d);f.data("setRolloverAttr",m);f.data("setRolloutAttr",d)},_firePlotEvent:function(u,D,f){var I=this.JSONData,K=this.chart.jsonData.chart,N=this.chart,n=N.config,
d=N.components,w=d.paper,e=b.toolTip,Z=w.canvas.style,P=d.numberFormatter,t=this.components,T=t.data[D],U=t.data.length,B=Y.get("component",["dataset","DragArea"]),x=this.config,c=this.index;f=f.originalEvent;var E=R&&"ns-resize"||"n-resize",C,S,g,J,W,v,k,q,h,l;C=T&&T._yBasePos;var G=d.yAxis[0],F=n.canvasTop,p=n.canvasBottom,y,r,d=this.graphics.lineElement,ea,Ka,Ja;r=r?p:C;var ba,fc,hc="dragline"===this.type?!0:!1;"touchend"===u&&(n=f.changedTouches[0],f.pageX=n&&n.pageX,f.pageY=n&&n.pageY);S=b.getMouseCoordinate(N.linkedItems.container,
f);n=S.chartY;S=S.chartX;if(T)switch(W=T.graphics.element,l=T.config,ea=l.anchorProps,Ka=ea.imageUrl,Ja=T.graphics.image,W&&W.data("setRolloverAttr"),fc=l.hoverEffects&&l.hoverEffects.enabled,ba=ea.startAngle||90,k=O(aa(L(l.origToolText,I.plottooltext,K.plottooltext))),q=l.finalTooltext,v=l.hoverEffects.enabled,h=l.eventArgs,I=T._yPos,K=T._xPos,y=l.allowDrag,r=(r=l.allowNegDrag)?p:C,l.dragTolerance=l.dragTolerance<ea.markerRadius?ea.markerRadius+.5:l.dragTolerance,C=A(l.dragTolerance,l.hoverEffects.anchorRadius||
0)+1,u){case "mouseover":x.mouseIn=!0;l.allowDrag&&(Z.cursor=E);l.dragStart||!q||l.dragStart||(e.setStyle(w),e.setPosition(f),e.draw(q,w));l.dragStart||(v&&this._hoverPlotAnchor(T,"DataPlotRollOver"),W&&m.call(W,N,f,"DataPlotRollOver",h));break;case "mouseout":x.mouseIn=!1;Z.cursor="default";v&&this._hoverPlotAnchor(T,"DataPlotRollOut");W&&m.call(W,N,f,"DataPlotRollOut",h);e.hide();break;case "touchmove":case "mousemove":if(l.dragStart){f.preventDefault?f.preventDefault():f.returnValue=!1;l.allowDrag&&
(Z.cursor=E);l._pointerDy++;n+=l._dragBuffer;n<F?n=F:n>r&&(n=r);T._yPos=n;Z=l.setValue=M(G.getValue(I-F));Z=P.dataLabels(Z);l.toolTipValue=Z;l.displayValue=Z;this.drawLabel(D,D+1);T.graphics.element=W;z&&Ka?Ja=W:(fc&&(J=W.data("setRolloverAttr"))&&(J.polypath[2]=T._yPos),fc&&(g=W.data("setRolloutAttr"))&&(g.polypath[2]=T._yPos),W&&W.attr(g||{polypath:[ea.symbol[1]||2,K,T._yPos,ea.radius,ba,0]}));Ja&&B.prototype.updateImage.call(this,T);t=t.data;this.getLinePath(t,{});if(hc)for(B=0;B<U;B++)if(J=t[B].graphics&&
t[B].graphics.connector)Z=t[B],g=Z.config.connStartIndex,Z=Z.config.connEndIndex,g=this.getLinePath(t,{},{begin:g,end:Z+1}),J.attr({path:g.getPathArr()});d&&(g=l.pathStartIndex,Z=l.pathEndIndex,g=this.getLinePath(t,{},{begin:g,end:Z}),d.attr({path:g.getPathArr()}));1==l._pointerDy&&(h={dataIndex:D,datasetIndex:c,startValue:T.startValue,endValue:l.setValue,datasetName:T.name},a.raiseEvent("dataplotDragStart",h,N.chartInstance))}!l.dragStart&&q&&n>=I-C&&n<=I+C&&S<=K+C&&S>=K-C?(e.setPosition(f),e.draw(q,
w)):e.hide();break;case "click":W&&m.call(W,N,f,"dataplotclick",h);break;case "touchend":case "mouseup":x.mousedown=!1;l.dragStart&&(this.setMaxMin(),N._setDataLimits(),h={dataIndex:D,datasetIndex:c,startValue:T.startValue,endValue:l.setValue,datasetName:T.name},D=[N.chartInstance.id,h.dataIndex,h.datasetIndex,h.datasetName,h.startValue,h.endValue],l._pointerDy&&(v&&this._hoverPlotAnchor(T,"DataPlotRollOut"),a.raiseEvent("dataplotDragEnd",h,N.chartInstance),b.raiseEvent("chartupdated",h,N.chartInstance,
D)));q=l.finalTooltext=!1!==l.toolText?l.toolText+(k?"":l.toolTipValue):"";n>=I-C&&n<=I+C&&S<=K+C&&S>=K-C||(Z.cursor="default");x.mouseIn&&!l.dragStart&&(e.setPosition(f),e.draw(q,w));l._dragBuffer=0;l._pointerDy=0;l.dragStart=!1;break;case "touchstart":case "mousedown":x.mouseIn&&(x.mousedown=!0,y&&n>=I-C&&n<=I+C&&S<=K+C&&S>=K-C?(l.dragStart=!0,l._pointerDy=0,l._dragStartY=n,l._dragBuffer=I-n,T.dragged=!0,T.startValue=l.setValue,T.name=x.seriesname,T.datasetIndex=this.positionIndex):l.dragStart=
!1)}},getJSONData:function(){var a=this.JSONData.data,b=this.components.data,f=[],m={},u,A,n,d,w;w=0;for(d=a.length;w<d;w++){u=a[w];A=b[w];m={};for(n in u)m[n]="value"===n?A.config.setValue:u[n];f.push(m)}return{data:f}}},"Area"])}]);Y.register("module",["private","modules.renderer.js-dataset-dragline",function(){var a=this.hcLib.preDefStr.line;Y.register("component",["dataset","DragLine",{type:"dragline",configure:Y.get("component",["dataset","DragArea"]).prototype.configure,_firePlotEvent:Y.get("component",
["dataset","DragArea"]).prototype._firePlotEvent,getJSONData:function(){var a=this.JSONData.data,z=this.components.data,U=[],aa={},O,S,L,N,R;R=0;for(N=a.length;R<N;R++){O=a[R];L=z[R];aa={};for(S in O)aa[S]="value"===S?L.config.setValue:O[S];U.push(aa)}return{data:U}}},a])}]);Y.register("module",["private","modules.renderer.js-dataset-selectscatter",function(){var a=this,b=a.hcLib,z=b.graphics.convertColor,U=b.preDefStr,aa=U.altHGridColorStr,O=U.altHGridAlphaStr,S=U.colors.FFFFFF,L=b.getValidValue,
N=b.ZEROSTRING,R=b.bindSelectionEvent,I=b.getMouseCoordinate,M=b.extend2,u=b.pluck,A=b.pluckNumber;Y.register("component",["dataset","selectScatter",{configure:function(){var b=this.chart,H=b.config,D=b.jsonData.chart,b=b.components.colorManager,f=u(D.selectbordercolor,b.getColor("canvasBorderColor")),I=A(D.selectborderalpha,b.getColor("canvasBorderAlpha"));Y.get("component",["dataset","scatter"]).prototype.configure.call(this);H.selectBorderColor={FCcolor:{color:f,alpha:I}};H.selectFillColor=z(u(D.selectfillcolor,
b.getColor(aa)),A(D.selectfillalpha,b.getColor(O)));H.selectionCancelButtonBorderColor=z(u(D.selectioncancelbuttonbordercolor,f),A(D.selectioncancelbuttonborderalpha,I));H.selectionCancelButtonFillColor=z(u(D.selectioncancelbuttonfillcolor,S),A(D.selectioncancelbuttonfillalpha,100));H.connativeZoom=!1;H.zoomType="xy";H.formAction=L(D.formaction);D.submitdataasxml!==N||D.formdataformat||(D.formdataformat=a.dataFormats.CSV);H.formDataFormat=u(D.formdataformat,a.dataFormats.XML);H.formTarget=u(D.formtarget,
"_self");H.formMethod=u(D.formmethod,"POST");H.submitFormAsAjax=A(D.submitformusingajax,1)},draw:function(){var b=this.chart,u=b.linkedItems.container;Y.get("component",["dataset","scatter"]).prototype.draw.call(this);R(b,{selectionStart:function(b){var f=I(u,b.originalEvent),f=M({selectionLeft:b.selectionLeft,selectionTop:b.selectionTop,selectionWidth:b.selectionWidth,selectionHeight:b.selectionHeight,startXValue:b.chart.components.xAxis[0].getAxisPosition(b.selectionLeft,1),startYValue:b.chart.components.yAxis[0].getAxisPosition(b.selectionTop,
1)},f);a.raiseEvent("selectionStart",f,b.chart.chartInstance)},selectionEnd:function(b){var f=I(u,b.originalEvent),m=b.chart.components.xAxis[0],A=b.chart.components.yAxis[0],f=M({selectionLeft:b.selectionLeft,selectionTop:b.selectionTop,selectionWidth:b.selectionWidth,selectionHeight:b.selectionHeight,startXValue:m.getAxisPosition(b.selectionLeft,1),startYValue:A.getAxisPosition(b.selectionTop,1),endXValue:m.getAxisPosition(b.selectionLeft+b.selectionWidth,1),endYValue:A.getAxisPosition(b.selectionTop+
b.selectionHeight,1)},f);a.raiseEvent("selectionEnd",f,b.chart.chartInstance);b.chart.createSelectionBox(b)}})}},"scatter"])}]);Y.register("module",["private","modules.renderer.js-dataset-candlestick",function(){var a=this.hcLib,b=a.preDefStr,z=b.line,U=b.volume,aa=b.bar,O=a.BLANKSTRING,S=a.getValidValue,L=a.getFirstValue,N=a.getFirstColor,R=b.setRolloverAttrStr,I=b.setRolloutAttrStr,M=a.ZEROSTRING,u=a.parseUnsafeString,A=b.column,m=a.getDashStyle,H=b.animationObjStr,D=b.columnStr,f=b.shadowStr,V=
a.toRaphaelColor,K=b.miterStr,Q=a.schedular,n=b.showHoverEffectStr,d=b.ROUND,w=b.visibleStr,e=b.errorBarStr,Z=b.errorHotStr,P=b.UNDERSCORE,t=a.parseTooltext,T=b.colors,da=a.extend2,B=b.configStr,x=T.B90000,c=T.FFFFFF,E=a.pluck,C=a.pluckNumber,b=Math,la=b.round,g=b.min,J=b.max,W=b.abs,v=a.plotEventHandler;Y.register("component",["dataset","Candlestick",{type:"Candlestick",configure:function(){if(this.plotType===U)this._configureVolume();else{var b=this.config,q=this.chart,h=q.components,l=this.JSONData,
e=l.data||[],d=q.jsonData.chart,p=e.length,f=b.plotPriceAs=S(d.plotpriceas,O).toLowerCase(),r=h.numberFormatter,n=h.colorManager,t,w,v,B,h=b.bearBorderColor=N(E(d.bearbordercolor,x)),H=b.bearFillColor=N(E(d.bearfillcolor,x)),K=b.bullBorderColor=N(E(d.bullbordercolor,n.getColor("canvasBorderColor"))),I=b.bullFillColor=N(E(d.bullfillcolor,c)),D=b.linethickness=b.plotBorderThickness=C(d.plotlinethickness,f==z||f==aa?2:1),T=b.plotLineDashLen=C(d.plotlinedashlen,5),Z=b.plotLineDashGap=C(d.plotlinedashgap,
4),L=!!C(d.drawanchors,1),Q=C(d.anchorstartangle,90),V=C(d.anchorradius,this.anchorRadius,3),R=N(E(d.anchorbordercolor,K)),Y=C(d.anchorborderthickness,this.anchorBorderThickness,1),n=N(E(d.anchorbgcolor,n.getColor("anchorBgColor"))),da=E(d.anchoralpha,M),la=E(d.anchorbgalpha,da),va,Ea,ta,Fa,wa,na,ka,pa,ia,ga,ra,fa,ha,ca=!1,ya=-Infinity,xa=Infinity,X=-Infinity,ua=Infinity,sa=a.graphics.mapSymbolName;b.parentYAxis=0;b.toolText=S(u(E(l.tooltext,d.plottooltext)));b.name=S(l.seriesname);b.showTooltip=
E(d.showtooltip,1);switch(f){case z:b.plotType=z;break;case aa:b.plotType=aa;break;default:b.plotType=A,b.showErrorValue=!0,b.errorBarWidthPercent=0,ca=!0}b.animation={duration:200};va=E(d.maxcolwidth);b.maxColWidth=W(C(va,50))||1;b.enableAnimation=va=C(d.animation,d.defaultanimation,1);b.animation=va?{duration:1E3*C(d.animationduration,1)}:!1;b.lineAlpha=E(d.plotlinealpha,"100");va=J(C(d.plotspacepercent,20)%100,0);b.plotSpacePercent=b.groupPadding=va/200;ra=this.components.data=this.components.data||
(this.components.data=[]);b.valuePadding=C(l.valuepadding,d.valuepadding,2);b.plotBorderThickness=D;for(va=0;va<p;va+=1)if(fa=e[va],(Ea=ra[va])||(Ea=ra[va]={}),!Ea.config&&(Ea.config={}),!Ea.graphics&&(Ea.graphics={}),ha=Ea.config,fa&&!fa.vline){ha.setLink=E(fa.link);Ea=ha.open=r.getCleanValue(fa.open);Fa=ha.close=r.getCleanValue(fa.close);wa=ha.high=r.getCleanValue(fa.high);na=ha.low=r.getCleanValue(fa.low);ka=ha.volume=r.getCleanValue(fa.volume,!0);null!==ka&&(q.config.drawVolume=!0);ka=ha.x=r.getCleanValue(fa.x);
ha.openVal=ca?W(Fa-Ea):Ea;ia=ha.closeVal=g(Ea,Fa);ga=ha.yVal=J(Ea,Fa);B=f===z?1:0;ta=g(Ea,Fa,wa,na);pa=J(Ea,Fa,wa,na);u(S(fa.valuetext,O));w=N(E(fa.bordercolor,Fa<Ea?h:K));v=E(fa.alpha,B?b.lineAlpha:"100");t=N(E(fa.color,Fa<Ea?H:I));B=C(fa.dashed)?m(T,Z):"none";ha.dashStyle=B;B={opacity:v/100};ha.color=ca?t:w;ha.alpha=v;ha.setColor=ha.color;ha.setAlpha=ha.alpha;ha.anchorImageUrl=E(fa.anchorimageurl,l.anchorimageurl,d.anchorimageurl);w=ha.borderColor=w;ha.borderAlpha=ha.plotLineAlpha;ha.colorArr=[{color:ha.color,
alpha:ha.alpha},{color:ha.borderColor,alpha:ha.borderAlpha}];ha.anchorSides=C(fa.anchorsides,l.anchorsides,d.anchorsides);ha.symbol=sa(ha.anchorSides).split(P);ha.anchorProps={enabled:L,bgColor:n,symbol:ha.symbol,bgAlpha:la*da/100+O,borderColor:R,borderAlpha:da,anchorAlpha:da,borderThickness:Y,imageUrl:ha.anchorImageUrl,radius:V,imageScale:C(fa.imagescale,l.imagescale,d.imagescale,100),imagePadding:C(fa.anchorimagepadding,l.anchorimagepadding,d.anchorimagepadding,1),imageAlpha:C(l.anchorimagealpha,
d.anchorimagealpha,100),startAngle:Q};ha.showValue=1;ha.hoverEffects={};switch(b.plotType){case z:ha.y=Fa;ha.link=E(fa.link);break;case A:ha.y=W(Fa-Ea);ha.previousY=ia;ha.link=E(fa.link);ha.errorValue=[];0<wa-ga&&ha.errorValue.push({errorValue:wa-ga,errorStartValue:ga,errorBarColor:w,errorBarThickness:D,opacity:1});0>na-ia&&ha.errorValue.push({errorValue:na-ia,errorStartValue:ia,errorBarColor:w,errorBarThickness:D,opacity:1});break;default:ha.y=Ea,ha.previousY=Fa,ha.link=E(fa.link)}ha.setValue=ha.y;
null!==ta&&(!ya&&0!==ya&&(ya=ta),!xa&&0!==xa&&(xa=ta),ya=J(ya,ta),xa=g(xa,ta));null!==pa&&(!ya&&0!==ya&&(ya=pa),!xa&&0!==xa&&(xa=pa),ya=J(ya,pa),xa=g(xa,pa));null!==ka&&(X=J(X,ka),ua=g(ua,ka));ta=this._parseToolText(va);ha.toolText=ta;ha.toolTipValue=O;ka=ka?ka:va+1;ha.x=ka;ha.displayValue=u(E(fa.displayvalue,fa.valuetext,O));ha.high=J(Ea,Fa,wa,na);ha.low=g(Ea,Fa,wa,na);ha.shadow=B}b.yMax=ya;b.yMin=xa;b.xMax=X;b.xMin=ua}},_parseToolText:function(a){var b=this.config,h=this.chart,c=h.jsonData.chart,
d=b.plotType===z?1:0,e=this.JSONData.data[a],p=this.components.data[a].config,h=h.components.xAxis[0].getLabel(p.x).label;a=p.open;var g=p.close,f=this.yAxis,n=p.high,w=p.low,p=p.volume,x=void 0!==p?e.volumetooltext:void 0;b.showTooltip?(b=S(u(E(x,e.tooltext,b.volumeToolText,b.toolText))),void 0!==b?b=t(b,[3,5,6,10,54,55,56,57,58,59,60,61,81,82],{label:h,yaxisName:u(c.yaxisname),xaxisName:u(c.xaxisname),openValue:e.open,openDataValue:f.dataLabels(a),closeValue:e.close,closeDataValue:f.dataLabels(g),
highValue:e.high,highDataValue:f.dataLabels(n),lowValue:e.low,lowDataValue:f.dataLabels(w),volumeValue:e.volume,volumeDataValue:f.dataLabels(p)},e,c):(b=null===a||d?O:"<b>Open:</b> "+f.dataLabels(a)+"<br />",b+=null!==g?"<b>Close:</b> "+f.dataLabels(g)+"<br />":O,b+=null===n||d?O:"<b>High:</b> "+f.dataLabels(n)+"<br />",b+=null===w||d?O:"<b>Low:</b> "+f.dataLabels(w)+"<br />",b+=null!==p?"<b>Volume:</b> "+f.dataLabels(p):O)):b=O;return b},init:function(a,b){var h=this.chart;this.yAxis=b===U?h.components.yAxis[1]:
h.components.yAxis[0];this.components={};this.graphics={};this.JSONData=a;this.visible=1;this.plotType=b;this.configure()},_configureVolume:function(){var b=this.config,d=this.chart,h=this.JSONData,e=h.data||[],f=d.jsonData.chart,F=e.length,p=d.components.colorManager,y,r,n,t,w,B,v=b.bearBorderColor=N(E(f.bearbordercolor,x)),z=b.bearFillColor=N(E(f.bearfillcolor,x)),p=b.bullBorderColor=N(E(f.bullbordercolor,p.getColor("canvasBorderColor"))),H=b.bullFillColor=N(E(f.bullfillcolor,c)),P=C(f.showvplotborder,
1)?C(f.vplotborderthickness,1):0,K=b.plotLineDashLen=C(f.plotlinedashlen,5),I=b.plotLineDashGap=C(f.plotlinedashgap,4),D,M=this.yAxis,T=-Infinity,Z=Infinity,Q=-Infinity,U=Infinity;w=d.components.vNumberFormatter;b.plotType=A;b.parentYAxis=1;b.volumeToolText=S(u(E(h.volumetooltext,f.volumetooltext,f.plottooltext)));b.name=S(h.seriesname);b.showTooltip=E(f.showtooltip,1);b.enableAnimation=h=C(f.animation,f.defaultanimation,1);b.animation=h?{duration:1E3*C(f.animationduration,1)}:!1;h=E(f.maxcolwidth);
b.maxColWidth=W(C(h,50))||1;h=J(C(f.plotspacepercent,20)%100,0);b.plotSpacePercent=b.groupPadding=h/200;b.plotBorderThickness=P;h=this.components.data=this.components.data||(this.components.data=[]);f=da(da({},f),{forcedecimals:L(f.forcevdecimals,f.forcedecimals),forceyaxisvaluedecimals:L(f.forcevyaxisvaluedecimals,f.forceyaxisvaluedecimals),yaxisvaluedecimals:L(f.vyaxisvaluedecimals,f.yaxisvaluedecimals),formatnumber:L(f.vformatnumber,f.formatnumber),formatnumberscale:L(f.vformatnumberscale,f.formatnumberscale),
defaultnumberscale:L(f.vdefaultnumberscale,f.defaultnumberscale),numberscaleunit:L(f.vnumberscaleunit,f.numberscaleunit),vnumberscalevalue:L(f.vnumberscalevalue,f.numberscalevalue),scalerecursively:L(f.vscalerecursively,f.scalerecursively),maxscalerecursion:L(f.vmaxscalerecursion,f.maxscalerecursion),scaleseparator:L(f.vscaleseparator,f.scaleseparator),numberprefix:L(f.vnumberprefix,f.numberprefix),numbersuffix:L(f.vnumbersuffix,f.numbersuffix),decimals:L(f.vdecimals,f.decimals)});w?w.configure(f):
w=d.components.vNumberFormatter=new a.NumberFormatter(d,f);M.setNumberFormatter(w);for(d=0;d<F;d+=1)w=e[d],(f=h[d])||(f=h[d]={}),!f.config&&(f.config={}),!f.graphics&&(f.graphics={}),D=f.config,w&&!w.vline&&(t=D.open=M.getCleanValue(w.open),y=D.close=M.getCleanValue(w.close),D.high=M.getCleanValue(w.high),D.low=M.getCleanValue(w.low),B=D.volume=M.getCleanValue(w.volume,!0),f=D.x=M.getCleanValue(w.x),D.openVal=W(y-t),D.closeVal=g(t,y),T=J(T,B),Z=g(Z,B),Q=J(Q,f),U=g(U,f),u(S(w.valuetext,O)),r=N(E(w.bordercolor,
y<t?v:p)),n=E(w.alpha,"100"),y=N(E(w.color,y<t?z:H)),D.dashStyle=C(w.dashed)?m(K,I):"none",t={opacity:n/100},D.color=y,D.alpha=n,D.setLink=w.link,D.borderWidth=P,D.borderColor=r,D.borderAlpha=E(D.plotLineAlpha,n),D.y=B,D.colorArr=[{color:D.color,alpha:D.alpha},{color:D.borderColor,alpha:D.borderAlpha}],D.setValue=D.y,w=this._parseToolText(d),D.toolText=w,D.toolTipValue=O,f=f?f:d+1,D.x=f,D.shadow=t);b.yMax=T;b.yMin=Z;b.xMax=Q;b.xMin=U},draw:function(){var a=this.config,b=a.plotType,h=this.JSONData&&
this.JSONData.data.slice();h.sort(function(a,b){return a.x-b.x});this.JSONData.sortedData=h;b===z?this.__base__.draw.call(this):b===A?(this._drawColumn(),a.showErrorValue&&this._drawErrorValue()):this._drawCandlestickBar();this.drawn=!0},_drawColumn:function(){var b=this,c=b.JSONData,h=b.chart,d=h.getJobList(),e=b.chart.jsonData.chart,F=b.config,p=b.index,y=c.data,r=y&&y.length,w,t,x=b.visible,m=h.components.paper,u=h.components.xAxis[0],v=b.yAxis,z,J,M=h.graphics,T=a.parseUnsafeString,N=a.getValidValue,
Z=a.Raphael,L,U=F.showTooltip,S=h.get(B,H),aa=S.duration,da=S.dummyObj,la=S.animObj,va=u.getPVR(),Ea=F.plotSpacePercent,ta=F.maxColWidth,va=(1-.01*F.definedGroupPadding)*va||g(va*(1-2*Ea),1*ta),Ea=va/2,va=va/1,ta=g(va-1,0),Ea=0*va-Ea+ta/2,Fa,wa=b.components.data,na,ka,pa,ia,ta=v.getAxisBase(),ga=v.yBasePos=v.getAxisPosition(ta),ra=F.plotBorderThickness,fa=F.plotRadius||0,ha=b.graphics.container,ca=b.graphics.shadowContainer,ya,xa,X,ua=!h.config.plotAnimDone,sa=b.components.removeDataArr||[],za=sa.length,
Ca=Y.get("component",["dataset",A]).prototype.drawLabel,Ha=function(){var a=b.graphics.errorGroupContainer;a&&a.show()};na=M.datasetGroup;M=b.components.pool||[];pa=h.components;var qa=pa.canvas.config;ia=pa.canvasVolume.config;pa=h.config.rollOverBandColor;ha||(ha=b.graphics.container=m.group(D,na),x||ha.hide());ca||(ca=b.graphics.shadowContainer=m.group(f,na).toBack(),x||ca.hide());X||(ia=["M",0,qa.canvasTop,"L",0,qa.canvasBottom,"M",0,ia.canvasTop-ia.canvasBorderWidth,"L",0,ia.canvasTop+ia.canvasHeight+
ia.canvasBorderWidth/2],X||(X=h.graphics.rollOverBand=m.path(na)),X.transform(O),X.attr({path:ia,"stroke-width":va,ishot:!0,stroke:pa,"stroke-linecap":"butt"}),X.data("width",va),X.toBack(),X.hide());X=va;F.columnWidth=va;for(F=0;F<r;F++)w=y[F],na=wa[F],w.originalIndex=F,ia=na&&na.config,pa=ia.setLink,t=ia.y,z=C(ia.x,F),ya=ia.colorArr,null!==t&&(pa=ia.setLink,na.graphics||(wa[F].graphics={}),ka=b.index+P+F,ia.groupId=ka,ka=ia.displayValue,N(T(E(w.tooltext,c.plottooltext,e.plottooltext))),w=ia.previousY,
J=v.getAxisPosition(w||ta),w=v.getAxisPosition(t+(w||0)),z=u.getAxisPosition(z)+Ea,J=W(w-J),J=Z.crispBound(z,w,X,J,ra),z=J.x,w=J.y,X=J.width,J=J.height||1,Fa=ia.toolText,xa=ia.dashStyle,na.trackerConfig={},L=na.trackerConfig,L=L.eventArgs=L.eventArgs||{},L.index=F,L.link=pa,L.value=t,L.displayValue=ka,L.categoryLabel=u.getLabel(F).label,L.toolText=Fa,L.id=O,L.datasetIndex=p,L.datasetName=c.seriesname,L.visible=x,na._xPos=z,na._yPos=w,na._height=J,na._width=va,ka=na.graphics.element,ka||(M.element&&
M.element.length?ka=na.graphics.element=M.element.shift():(ka=na.graphics.element=m.rect(ha),aa&&ka.attr({x:z,y:ga,width:X,height:0}))),t=ia._elemPositions,t||(t=ia._elemPositions={}),t.x=z,t.y=w,t.width=X,t.height=J,ka.show().animateWith(da,la,t,aa,S.animType,ua&&Ha),t=ia._elemCosmetics,t||(t=ia._elemCosmetics={}),t.r=fa,t.ishot=!U,t.fill=V(ya[0]),t.stroke=V(ya[1]),t["stroke-width"]=ra,t["stroke-dasharray"]=xa,t["stroke-linejoin"]=K,t.visibility=x,t.cursor=pa?"pointer":"default",ka.attr(t).shadow(ia.shadow,
ca).data("dataObj",na),h.config.plotAnimDone=!0,h.config.enablemousetracking&&ka.data("eventArgs",L).data(n,!0).data(R,ia.setRolloverAttr||{}).data(I,ia.setRolloutAttr||{}));b.drawn?Ca.call(b,0,wa.length):d.labelDrawID.push(Q.addJob(function(){Ca.call(b,0,wa.length)},a.priorityList.label));for(F=0;F<za;F++)if(na=sa[0])b._removeDataVisuals(na.graphics),sa.shift();b.drawn=!0;for(F=b.JSONData.data.length;F--;)b.JSONData.data[F].originalIndex=F;h.config.toleranceBottom=qa.intermediarySpace+2*h.config.canvasBorderWidth},
_getHoveredPlot:function(a,b){var h=this.config.plotType;if(h===z)return this._getHoveredPlotCandleLine(a,b);if(h===A)return this._getHoveredPlotCandleColumn(a,b)},_getHoveredPlotCandleLine:function(a,b){var h=this.chart,c=h.components.canvas.config,d=h.components.xAxis[0],e=this.components.data,p,f=e.length;p=this.config;h=a-h.config.canvasLeft-Math.max(c.canvasPaddingLeft,c.canvasPadding);c=p&&p.radius||0;p=Math.floor(Math.max(d.getValue(h-c),0));p=this.getPlotIndices(p);d=Math.ceil(Math.min(d.getValue(h+
c),f-1));d=this.getPlotIndices(d);for(f=p.length;f--;)if(h=e[p[f].originalIndex])if(h=this.isWithinShape(h,p[f].originalIndex,a,b))return h;for(f=d.length;f--;)if(h=e[d[f].originalIndex])if(h=this.isWithinShape(h,d[f].originalIndex,a,b))return h},_getHoveredPlotCandleColumn:function(a,b){for(var h=this.chart,c=h.components.canvas.config,d,h=h.components.xAxis[0].getValue(a-h.config.canvasLeft-Math.max(c.canvasPaddingLeft,c.canvasPadding)),h=this.getPlotIndices(h),c=h.length;c--;)this._checkPointerOverErrorBar(h[c].originalIndex,
a,b)&&(d=this._checkPointerOverErrorBar(h[c].originalIndex,a,b)),this._checkPointerOverColumn(h[c].originalIndex,a,b)&&(d=this._checkPointerOverColumn(h[c].originalIndex,a,b));return d},getPlotIndices:function(a){var b=Math.floor(a),h=Math.ceil(a),c,d=[];for(a=(this.JSONData&&this.JSONData.sortedData).length;a--;)c=this.JSONData.sortedData[a],c.x>=b&&c.x<=h&&d.push(c);return d},_checkPointerOverErrorBar:function(a,b,h){var c=this.components.data,d=c[a],e,p,f,g,n,t,w;if(d&&(d=d.errorBar))for(f=d&&
d.length;f--;)for(g=(p=d[f])&&p.length;g--;)if(p[g]&&p[g]._xPos&&(e=p[g]._xPos,n=p[g]._yPos,t=p[g]._height,w=p[g]._width,e=b>=e&&b<=e+w&&h>=n&&h<=n+t))return{pointIndex:a,hovered:e,pointObj:c[a]}},_checkPointerOverColumn:function(a,b,h){var c=this.chart.config,d=c.plotborderthickness,e=c.showplotborder,p=this.components.data,f=p[a],g=c.viewPortConfig,n=g.x,t=g.scaleX,g=c.dragTolerance||0;if(f&&(c=f.config.setValue,d=e?d:0,e=d/2,e=0===e%2?e+1:Math.round(e),null!==c&&(b=b-(f._xPos-n*t)+e,h=h-f._yPos+
e+(0<c?g:0),d=0<=b&&b<=f._width+d&&0<=h&&h<=f._height+d+(0<c?0:g))))return{pointIndex:a,hovered:d,pointObj:p[a]}},_firePlotEvent:function(a,b,h){var c=this.config.plotType;if(c===z)return this.__base__._firePlotEvent.call(this,a,b,h);if(c===A)return Y.get("component",["dataset","column"]).prototype._firePlotEvent.call(this,a,b,h)},_rolloverResponseSetter:function(a,b,h){var c=this.graphics.sharedAnchor,c=b.graphics.element||c.element;a.graphics.rollOverBand.transform("t"+(b._xPos+(b._width||0)/2)+
",0").show();v.call(c,a,h,"DataPlotRollOver")},_rolloutResponseSetter:function(a,b,h){var c=this.graphics.sharedAnchor;b=b.graphics.element||c.element;a.graphics.rollOverBand.hide();v.call(b,a,h,"DataPlotRollOut")},_removeDataVisuals:function(a){var b=this.components.pool||(this.components.pool={}),h,c,d,e,p;a.graphics&&(a=a.graphics);for(c in a){h=b[c]||(b[c]=[]);d=a[c];if(d instanceof Array)for(e=0,p=d.length;e<p;e++)this._removeDataVisuals(d[e]);else d.hide&&"function"===typeof d.hide&&d.hide();
h.push(a[c])}},_drawCandlestickBar:function(){var a=this.chart,b=a.components,h,c=this.config,e=this.components.data,f=e.length,p=b.xAxis[0],y=this.yAxis,r=a.graphics,b=b.paper,n=c.numColumns||1,t=c.columnPosition||0,x=p.getPVR(),m=c.groupPadding,u=c.maxColWidth,x=(1-.01*c.plotspacepercent)*x||g(x*(1-2*m),u*n),n=x/n*t-x/2,r=r.datasetGroup,v,A,z,E,J,t=a.get(B,H)||{},x=t.duration,m=t.dummyObj,u=t.animObj,P=this.graphics.container,K=this.components.pool||{};h=this.visible;var I,M,T,N=this.components.removeDataArr||
[],Z=N.lengt,L;P||(P=this.graphics.container=b.group(D,r),h||P.hide());for(v=0;v<f;v+=1)A=e[v],h=A.config,L=A.graphics,E=h.y,null!==E&&(z=C(h.x,v),A=h.link,h.setLink=h.link,z=p.getAxisPosition(z),J=h.previousY,J=y.getAxisPosition(J),E=y.getAxisPosition(E),I=y.getAxisPosition(h.high),M=y.getAxisPosition(h.low),W(E-J),T=n,J=["M",z,M,"L",z,I,"M",z,E,"L",z+T,E,"M",z,J,"L",z-T,J],z=L.element,z||(K.element&&K.element.length?L.element=b.path(r):z=L.element=b.path(J,P)),z.show().animateWith(m,u,{path:J},
x,t.animType),a.config.plotAnimDone=!0,z.attr({fill:V(h.color),stroke:V(h.borderColor),"stroke-width":c.linethickness,"stroke-dasharray":h.dashStyle,"stroke-linecap":d,"stroke-linejoin":d,"shape-rendering":"crisp",cursor:A?"pointer":O,visibility:w}).shadow(h.shadow));for(v=0;v<Z;v++)this._removeDataVisuals(N.shift())},_drawErrorValue:function(){var a=this.config,b=this.JSONData.data,b=b&&b.length,h;h=this.visible;var c=this.chart,f=c.components.paper,g=c.components.yAxis[0],p=this.components.data,
y,r=a.errorBarWidthPercent,n,t=c.graphics,w=t.datasetGroup,a=a.showTooltip,x=this.graphics.errorGroupContainer,m=this.graphics.errorTrackerContainer,u=t.trackerGroup,v,z,A,C,E,J,D,c=c.get(B,H),t=c.duration,P=c.dummyObj,K=c.animObj,I,M,T,N;v=this.drawn;var L,Q=this.components.pool||[],U;x||(x=this.graphics.errorGroupContainer=f.group(e,w),h||x.hide());m||(m=this.graphics.errorTrackerContainer=f.group(Z,u).toBack(),h||m.hide());h&&(x.show(),m.show());t&&!v&&x.hide();for(h=0;h<b;h++)if(v=(w=p[h])&&w.config,
C=v.y,m=v.errorValue,u=m.length,!w.graphics.error&&(w.graphics.error=[]),null!==C){v=v.setLink;C=0>C;z=w._xPos;A=w._yPos;N=w._width;U=w._height;A+=U;z+=N/2;y=w.graphics.error;n=y.length;if(n>u)for(T=u;T<n;T++)M=y.pop(),this._removeDataVisuals(M);for(w.errorBar||(w.errorBar=[]);u--;)(L=w.graphics.error[u])||(L=w.graphics.error[u]={}),T=L.errorLineElem,I=m[u],E=I.errorValue,J=I.errorStartValue,n=I.errorBarColor,y=I.errorBarThickness,M=isNaN(J)?A:g.getAxisPosition(J),D=r/100*N,D/=2,E=g.getAxisPosition((void 0!==
J&&null!==J?J:void 0)+E),C&&(E+=U),E=la(E)+y%2/2,J=la(z)+y%2/2,D=["M",J,M,"V",E,"M",J-D,E,"H",J+D],I.errorPath=D,I=w.graphics.hotElement||w.graphics.element,I.data("groupId"),w.errorBar[u]||(w.errorBar[u]=[]),w.errorBar[u][0]={_xPos:J-2,_yPos:E<M?E:M,_height:W(M-E),_width:4},T||(T=Q.errorLineElem&&Q.errorLineElem.length?L.errorLineElem=Q.errorLineElem.shift():L.errorLineElem=f.path(x)),T.show().animateWith(P,K,{path:D},t,c.animType),T.attr({stroke:n,ishot:!a,"stroke-width":y,cursor:v?"pointer":O,
"stroke-linecap":d})}this.components.data=p},getDataLimits:function(){var a=this.config;return{max:a.yMax,min:a.yMin,xMax:a.xMax,xMin:a.xMin}},removeData:function(a,b){var h=this.components,c=h.data,d=h.removeDataArr||(h.removeDataArr=[]);h.removeDataArr=d.concat(c.splice(a||0,b||1))}},z])}]);Y.register("module",["private","modules.renderer.js-dataset-trendset",function(){var a=this.hcLib,b=a.preDefStr,z=b.configStr,U=b.animationObjStr,aa=b.miterStr,O=b.ROUND,S=b.line,L=a.pluck,N=a.getValidValue,
R=a.pluckNumber,I=a.getFirstValue,M=a.getDashStyle,u=a.toRaphaelColor,b=Math,A=b.min,m=b.max,H=a.getFirstColor,D=a.HUNDREDSTRING;Y.register("component",["dataset","Trendset",{configure:function(){var a=this.chart,b=a.jsonData.chart,u=this.JSONData,z=this.index,n=u.data||u.set||[],d=this.config,w,e=this.components.data,D,P=-Infinity,t=Infinity,I,O=-Infinity,B=Infinity,x=a.components.numberFormatter,z=H(L(u.color,b.trendsetcolor,"666666"));D=L(u.alpha,b.trendsetalpha,"100");I=R(u.thickness,b.trendsetthickness,
2);w=!!R(u.dashed,b.trendsetdashed,0);var c=R(u.dashlen,b.trendsetdashlen,4),E=R(u.dashgap,b.trendsetdashgap,4);d.includeInLegend=R(u.includeinlegend,1);d.lineColor=z;d.lineAlpha=D;d.connectNullData=R(b.connectnulldata,0);d.lineThickness=I;d.lineDashStyle=w?M(c,E):"none";d.name=N(u.name);d.includeInLegend=R(u.includeinlegend,1);e||(e=this.components.data=[]);z=0;for(I=n.length;z<I;z+=1)(w=n[z])&&!w.vline&&(u=e[z]=e[z]||(e[z]={}),D=u.config=u.config||(u.config={}),b=D.setValue=x.getCleanValue(w.value),
w=x.getCleanValue(w.x),w=D.x=null!==w?w:z+1,P=m(P,b),t=A(t,b),B=A(B,w),O=m(O,w),u.graphics||(u.graphics={}));d.max=P;d.min=t;d.xMax=O;d.xMin=B;this.yAxis=a.components.yAxis[0];this.visible=!0;this._addLegend()},_addLegend:function(){var a=this.JSONData,b=this.config,m=this.chart.components.legend,a={enabled:b.includeInLegend,interactiveLegend:!1,type:this.type,drawLine:!0,strokeColor:u({color:b.lineColor,alpha:D}),label:I(a.name)};this.legendItemId=m.addItems(this,this.legendInteractivity,a)},legendInteractivity:function(){},
draw:function(){var a=this.chart,b=a.components,m=this.config,A=b.canvas.config.clip,n=this.components.data.length,d,w=b.paper,b=b.xAxis[0],e=this.yAxis,D,H,t=a.graphics,I=a.get(z,U),a=I.duration,M=I.dummyObj,B=I.animObj,I=I.animType,x=this.components.data,c,E=m.lineThickness,C=this.graphics.container,N=t.datasetGroup,t=m.shadow,g=function(){N.line.attr({"clip-rect":null});C.lineShadowGroup.show()},J=A["clip-canvas"].slice(0),A=A["clip-canvas-init"].slice(0),L=m.lineDashStyle,m={color:m.lineColor,
alpha:m.lineAlpha},v=!1,k=this.graphics.lineElement,q=this.visible;N.line=N.line||w.group(S,N);N.lineConnector=N.lineConnector||w.group("line-connector",N);C||(C=this.graphics.container={lineShadowGroup:w.group("connector-shadow",N.line),lineGroup:w.group(S,N.line)},q||(C.lineShadowGroup.hide(),C.lineGroup.hide()));for(d=0;d<n;d++)c=x[d],D=c.config,H=D.setValue,D=D.x,D=b.getAxisPosition(D),H=e.getAxisPosition(H),c._xPos=D,c._yPos=H;n=this.getLinePath(x,{}).getPathArr();k||(k=this.graphics.lineElement=
w.path(C.lineGroup),v=!0);k.show().animateWith(M,B,{path:n},a,I);k.attr({"stroke-dasharray":L,"stroke-width":E,stroke:u(m),"stroke-linecap":O,"stroke-linejoin":2<=E?O:aa}).shadow(t,C.lineShadowGroup);a&&q&&v&&(C.lineShadowGroup.hide(),N.line.attr({"clip-rect":A}).animateWith(M,B,{"clip-rect":J},a,I,g))},getDataLimits:function(){var a=this.config;return{max:a.max,min:a.min,xMax:a.xMax,xMin:a.xMin}}},S])}]);Y.register("module",["private","modules.renderer.js-dataset-boxandwhisker2d",function(){var a=
this.hcLib,b=a.preDefStr,z=b.colors.c000000,U=b.configStr,aa=b.animationObjStr,O=b.showHoverEffectStr,S=b.shadowStr,L=b.dataLabelStr,N=b.visibleStr,R=b.ROUND,I=a.ZEROSTRING,M=b.pStr,u=b.sStr,A=b.POSITION_START,m=b.POSITION_TOP,H=b.POSITION_END,D=b.POSITION_BOTTOM,f=b.PLOTFILLCOLOR_STR,V=b.UNDERSCORE,K=b.line,Q=a.BLANKSTRING,n=a.BLANKSTRING,d=a.pluck,w=a.getValidValue,e=a.pluckNumber,Z=a.getFirstValue,P=a.extend2,t=a.toRaphaelColor,T=function(a){return void 0!==a&&null!==a},da=a.parseConfiguration,
b=Math,B=b.round,x=b.min,c=b.max,E=a.getFirstColor,C=a.getFirstAlpha,la=a.graphics.getLightColor,g=a.graphics.convertColor,J=a.POSITION_LEFT,W=a.COMMASTRING,v=a.HUNDREDSTRING,k=a.plotEventHandler;Y.register("component",["dataset","boxandwhisker2d",{type:"boxandwhisker2d",configure:function(){var b=this.chart,h=this.config,l=this.JSONData,f=l.data,k=b.config.categories,p=b.singleseries,y=b.config,r=x(k&&k.length,f&&f.length),m=b.jsonData.chart,z=b.components.colorManager,B=this.index||this.positionIndex,
A,J=h.plotColor=z.getPlotColor(B),D=e(l.dashed,m.plotborderdashed),H=e(m.useplotgradientcolor,1),I,P=a.parseUnsafeString,N=P(m.yaxisname),K=P(m.xaxisname),L=P(d(m.tooltipsepchar,": ")),T=a.parseTooltext,O,Z,U,Q,S,V,aa,R,Y,wa,na,ka,pa,ia,ga,ra,fa,ha,ca,ya,xa,X,ua,sa,za,Ca,Ha,qa,Aa,Sa,Ia,ja,yb,db,Rb,Eb,Lb,qb,gb,Fb,Gb,Mb,hb=a.getDashStyle,rb=this.components.data,Ga=b.components.numberFormatter,Yb,Nb,$a,Qb,zb,mb,Qa,Ta=0,nb=0,Kb=a.BoxAndWhiskerStatisticalCalc,cb,Hb,ib,jb,Ab,sb,La,eb,ub,Ma,tb,ab,oa,Zb,
Da,kb,lb,bb,Ib,Ba,Za,Sb,Tb,Ob,Pb,Wa,Jb,fb=0,vb;this.visible=1===e(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);this.__setDefaultConfig();da(l,h,y,{data:!0});h.includeInLegend=e(l.includeinlegend,1);h.legendSymbolColor=h.plotColor;A=h.showplotborder;aa=h.plotborderdashlen;R=h.plotborderdashgap;pa=h.plotfillalpha;wa=h.useroundedges;ia=h.ratio;Y=h.plotborderthickness;bb=h.showvalues;I=h.showtooltip;h.rotatevalues&&(h.rotatevalues=270);Ib=h.showalloutliers;h.plotfillAngle=ka=e(360-
m.plotfillangle,90);h.plotColor=J=d(l.color,J);h.plotRadius=e(m.useroundedges,wa?1:0);h.plotgradientcolor=ga=a.getDefinedColor(m.plotgradientcolor,z.getColor("plotGradientColor"));!H&&(ga=n);h.plotBorderAlpha=ra=A?d(m.plotborderalpha,pa,v):0;h.plotBorderColor=fa=d(m.plotbordercolor,z.getColor("plotBorderColor"));h.plotBorderDashStyle=ha=D?hb(aa,R,Y):"none";h.showShadow=wa?e(m.showshadow,1):e(m.showshadow,z.getColor("showShadow"));h.showHoverEffect=na=e(m.plothovereffect,m.showhovereffect,void 0);
h.definedGroupPadding=c(e(m.plotspacepercent),0);h.plotSpacePercent=c(e(m.plotspacepercent,20)%100,0);h.parentYAxis=$a=d(l.parentyaxis&&l.parentyaxis.toLowerCase(),M)===u?1:0;h.dataSeparator=W;h.bwCalc=cb=new Kb(void 0,Ga,h.dataSeparator);h.textDirection="1"===m.hasrtltext?"rtl":n;h.showMeanLegend=h.showSDLegend=h.showMDLegend=h.showQDLegend=h.showOutliersLegend=0;!this.components.data&&(this.components.data=[]);rb=this.components.data;for(Qa=0;Qa<r;Qa++)if(ca=f&&f[Qa],X=(xa=rb[Qa])&&xa.config,xa||
(xa=rb[Qa]={graphics:{}}),xa.config||(X=rb[Qa].config={}),ca.value){ca.value&&(cb.setArray(ca.value),Hb=cb.getQuartiles(),ib=Hb.q1,jb=Hb.q3,Ab=cb.getMinMax(),X.min=sb=Ab.min,X.max=La=Ab.max,eb=cb.getMedian(),X.mean=ub=cb.getMean(),X.md=Ma=cb.getMD(),X.sd=tb=cb.getSD(),X.qd=ab=cb.getQD());ca.outliers&&(X.outliers=ca.outliers.split(","),fb=c(fb,X.outliers.length));X.showMean=Sb=e(ca.showmean,h.showmean);X.showSD=Tb=e(ca.showsd,h.showsd);X.showMD=Ob=e(ca.showmd,h.showmd);X.showQD=Pb=e(ca.showqd,h.showqd);
ca.outliers&&(h.showOutliersLegend=1);Sb&&(h.showMeanLegend=1);Tb&&(h.showSDLegend=1);Ob&&(h.showMDLegend=1);Pb&&(h.showQDLegend=1);X.upperQuartile={value:jb,color:g(d(ca.upperquartilecolor,l.upperquartilecolor,m.upperquartilecolor,m.plotbordercolor,z.getColor("plotBorderColor")),e(ca.upperquartilealpha,l.upperquartilealpha,m.upperquartilealpha,m.plotborderalpha,100)),borderWidth:e(ca.upperquartilethickness,l.upperquartilethickness,m.upperquartilethickness,m.plotborderthickness,wa?0:1),displayValue:Ga.dataLabels(jb)};
X.lowerQuartile={value:ib,color:g(d(ca.lowerquartilecolor,l.lowerquartilecolor,m.lowerquartilecolor,m.plotbordercolor,z.getColor("plotBorderColor")),e(ca.lowerquartilealpha,l.lowerquartilealpha,m.lowerquartilealpha,m.plotborderalpha,100)),borderWidth:e(ca.lowerquartilethickness,l.lowerquartilethickness,m.lowerquartilethickness,m.plotborderthickness,wa?0:1),displayValue:Ga.dataLabels(ib)};X.upperBoxBorder={color:g(d(ca.upperboxbordercolor,l.upperboxbordercolor,m.upperboxbordercolor,m.plotbordercolor,
z.getColor("plotBorderColor")),e(ca.upperboxborderalpha,l.upperboxborderalpha,m.upperboxborderalpha,m.plotborderalpha,100)),borderWidth:e(ca.upperboxborderthickness,l.upperboxborderthickness,m.upperboxborderthickness,!wa&&m.plotborderthickness,wa?0:1)};X.lowerBoxBorder={color:g(d(ca.lowerboxbordercolor,l.lowerboxbordercolor,m.lowerboxbordercolor,m.plotbordercolor,z.getColor("plotBorderColor")),e(ca.lowerboxborderalpha,l.lowerboxborderalpha,m.lowerboxborderalpha,m.plotborderalpha,100)),borderWidth:e(ca.lowerboxborderthickness,
l.lowerboxborderthickness,m.lowerboxborderthickness,!wa&&m.plotborderthickness,wa?0:1)};X.median={value:eb,color:g(d(ca.mediancolor,l.mediancolor,m.mediancolor,m.plotbordercolor,z.getColor("plotBorderColor")),e(ca.medianalpha,l.medianalpha,m.medianalpha,m.plotborderalpha,100)),borderWidth:e(ca.medianthickness,l.medianthickness,m.medianthickness,m.plotborderthickness,1),displayValue:Ga.dataLabels(eb)};h.upperBoxColor=oa=d(ca.upperboxcolor,l.upperboxcolor,m.upperboxcolor,z.getPlotColor(2*B));Zb=h.upperBoxAlpha=
d(ca.upperboxalpha,l.upperboxalpha,m.upperboxalpha,pa,v);h.lowerBoxColor=Da=d(ca.lowerboxcolor,l.lowerboxcolor,m.lowerboxcolor,z.getPlotColor(2*B+1));kb=h.lowerBoxAlpha=d(ca.lowerboxalpha,l.lowerboxalpha,m.lowerboxalpha,pa,v);X.upperColorArr=a.graphics.getColumnColor(oa,Zb,void 0,void 0,wa,fa,ra.toString(),0,!1);X.lowerColorArr=a.graphics.getColumnColor(Da,kb,void 0,void 0,wa,fa,ra.toString(),0,!1);X.showMinValues=bb?e(ca.showminvalues,h.showminvalues):0;X.showMaxValues=bb?e(ca.showmaxvalues,h.showmaxvalues):
0;X.showQ1Values=bb?e(ca.showq1values,h.showq1values):0;X.showQ3Values=bb?e(ca.showq3values,h.showq3values):0;X.showMedianValues=bb?e(ca.showmedianvalues,h.showmedianvalues):0;X.upperWhiskerAlpha=lb=C(d(ca.upperwhiskeralpha,l.upperwhiskeralpha,m.upperwhiskeralpha,m.plotborderalpha,100));X.upperWhiskerColor=g(E(d(ca.upperwhiskercolor,l.upperwhiskercolor,m.upperwhiskercolor,m.plotbordercolor,z.getColor("plotBorderColor"))),lb);X.upperWhiskerThickness=e(ca.upperwhiskerthickness,l.upperwhiskerthickness,
m.upperwhiskerthickness,m.plotborderthickness,1);X.upperWhiskerShadowOpacity=h.showShadow?lb/250:0;X.lowerWhiskerAlpha=Za=C(d(ca.lowerwhiskeralpha,l.lowerwhiskeralpha,m.lowerwhiskeralpha,m.plotborderalpha,100));X.lowerWhiskerColor=g(E(d(ca.lowerwhiskercolor,l.lowerwhiskercolor,m.lowerwhiskercolor,m.plotbordercolor,z.getColor("plotBorderColor"))),Za);X.lowerWhiskerThickness=e(ca.lowerwhiskerthickness,l.lowerwhiskerthickness,m.lowerwhiskerthickness,m.plotborderthickness,1);X.lowerWhiskerShadowOpacity=
h.showShadow?Za/250:0;X.showValue=e(ca.showvalue,h.showvalues);X.setValue=ya=Ga.getCleanValue(ca.value);X.setLink=d(ca.link);X.toolTipValue=Yb=Ga.dataLabels(ya,$a);X.setDisplayValue=Nb=P(ca.displayvalue);X.displayValue=d(Nb,Yb);Qb=e(ca.dashed);zb=e(ca.dashlen,aa);mb=R=e(ca.dashgap,R);Ta=c(Ta,La);nb=x(nb,sb);if(Ib&&ca.outliers)for(vb=0;vb<X.outliers.length;vb++)Ta=c(Ta,X.outliers[vb]),nb=x(nb,X.outliers[vb]);X.plotBorderDashStyle=1===Qb?hb(zb,mb,Y):0===Qb?"none":ha;p?(J=z.getPlotColor(Qa),J=d(ca.color,
J),ia=d(ca.ratio,h.ratio)):J=d(ca.color,h.plotColor);pa=d(ca.alpha,h.plotfillalpha);0>ya&&!wa&&(S=ka,ka=360-ka);X.colorArr=a.graphics.getColumnColor(J+","+ga,pa,ia,ka,wa,fa,ra.toString(),0,!1);X.label=ua=w(P(d(k[Qa].tooltext,k[Qa].label)));0!==na&&(sa=d(ca.upperboxhovercolor,l.upperboxhovercolor,m.upperboxhovercolor,oa),za=d(ca.upperboxhoveralpha,l.upperboxhoveralpha,m.upperboxhoveralpha,Zb),Ca=d(ca.upperboxborderhovercolor,l.upperboxborderhovercolor,m.upperboxborderhovercolor,ca.upperboxbordercolor,
l.upperboxbordercolor,m.upperboxbordercolor,m.plotbordercolor,z.getColor("plotBorderColor")),Ha=d(ca.upperboxborderhoveralpha,l.upperboxborderhoveralpha,m.upperboxborderhoveralpha,ca.upperboxborderalpha,l.upperboxborderalpha,m.upperboxborderalpha,m.plotborderalpha,100),qa=wa?0:d(ca.upperboxborderhoverthickness,l.upperboxborderhoverthickness,m.upperboxborderhoverthickness,X.upperBoxBorder.borderWidth),Aa=d(ca.lowerboxhovercolor,l.lowerboxhovercolor,m.lowerboxhovercolor,Da),Sa=d(ca.lowerboxhoveralpha,
l.lowerboxhoveralpha,m.lowerboxhoveralpha,kb),Ia=d(ca.lowerboxborderhovercolor,l.lowerboxborderhovercolor,m.lowerboxborderhovercolor,ca.lowerboxbordercolor,l.lowerboxbordercolor,m.lowerboxbordercolor,m.plotbordercolor,z.getColor("plotBorderColor")),ja=d(ca.lowerboxborderhoveralpha,l.lowerboxborderhoveralpha,m.lowerboxborderhoveralpha,ca.lowerboxborderalpha,l.lowerboxborderalpha,m.lowerboxborderalpha,m.plotborderalpha,100),yb=wa?0:d(ca.lowerboxborderhoverthickness,l.lowerboxborderhoverthickness,m.lowerboxborderhoverthickness,
X.lowerBoxBorder.borderWidth),db=d(ca.upperquartilehovercolor,l.upperquartilehovercolor,m.upperquartilehovercolor,ca.upperquartilecolor,l.upperquartilecolor,m.upperquartilecolor,m.plotbordercolor,z.getColor("plotBorderColor")),Rb=d(ca.upperquartilehoveralpha,l.upperquartilehoveralpha,m.upperquartilehoveralpha,ca.upperquartilealpha,l.upperquartilealpha,m.upperquartilealpha,m.plotborderalpha,100),Eb=d(ca.upperquartilehoverthickness,l.upperquartilehoverthickness,m.upperquartilehoverthickness,X.upperQuartile.borderWidth),
Lb=d(ca.lowerquartilehovercolor,l.lowerquartilehovercolor,m.lowerquartilehovercolor,ca.lowerquartilecolor,l.lowerquartilecolor,m.lowerquartilecolor,m.plotbordercolor,z.getColor("plotBorderColor")),qb=d(ca.lowerquartilehoveralpha,l.lowerquartilehoveralpha,m.lowerquartilehoveralpha,ca.lowerquartilealpha,l.lowerquartilealpha,m.lowerquartilealpha,m.plotborderalpha,100),gb=d(ca.lowerquartilehoverthickness,l.lowerquartilehoverthickness,m.lowerquartilehoverthickness,X.lowerQuartile.borderWidth),Fb=d(ca.medianhovercolor,
l.medianhovercolor,m.medianhovercolor,ca.mediancolor,l.mediancolor,m.mediancolor,m.plotbordercolor,z.getColor("plotBorderColor")),Gb=d(ca.medianhoveralpha,l.medianhoveralpha,m.medianhoveralpha,ca.medianalpha,l.medianalpha,m.medianalpha,m.plotborderalpha,100),Mb=d(ca.medianhoverthickness,l.medianhoverthickness,m.medianhoverthickness,X.median.borderWidth),1==na&&(oa===sa&&(sa=la(sa,70)),Da===Aa&&(Aa=la(Aa,70))),X.upperBoxHoverColorArr=a.graphics.getColumnColor(sa,za,void 0,void 0,wa,fa,ra.toString(),
0,!1),X.lowerBoxHoverColorArr=a.graphics.getColumnColor(Aa,Sa,void 0,void 0,wa,fa,ra.toString(),0,!1),X.setUpperBoxRolloutAttr={fill:t(X.upperColorArr[0])},X.setUpperBoxRolloverAttr={fill:t(X.upperBoxHoverColorArr[0])},X.setLowerBoxRolloutAttr={fill:t(X.lowerColorArr[0])},X.setLowerBoxRolloverAttr={fill:t(X.lowerBoxHoverColorArr[0])},X.setUpperBoxBorderRolloverAttr={stroke:g(Ca,Ha),"stroke-width":qa},X.setUpperBoxBorderRolloutAttr={stroke:X.upperBoxBorder.color,"stroke-width":X.upperBoxBorder.borderWidth},
X.setLowerBoxBorderRolloverAttr={stroke:g(Ia,ja),"stroke-width":yb},X.setLowerBoxBorderRolloutAttr={stroke:X.lowerBoxBorder.color,"stroke-width":X.lowerBoxBorder.borderWidth},X.setUpperQuartileRolloverAttr={stroke:g(db,Rb),"stroke-width":Eb},X.setUpperQuartileRolloutAttr={stroke:X.upperQuartile.color,"stroke-width":X.upperQuartile.borderWidth},X.setLowerQuartileRolloverAttr={stroke:g(Lb,qb),"stroke-width":gb},X.setLowerQuartileRolloutAttr={stroke:X.lowerQuartile.color,"stroke-width":X.lowerQuartile.borderWidth},
X.setMedianRolloverAttr={stroke:g(Fb,Gb),"stroke-width":Mb},X.setMedianRolloutAttr={stroke:X.median.color,"stroke-width":X.median.borderWidth});O=X.toolTipValue;U=w(P(d(ca.tooltext,l.plottooltext,m.plottooltext)));I?null===O?V=!1:void 0!==U?(Q=[1,2,3,4,5,6,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80],Z={maxValue:La,maxDataValue:Ga.dataLabels(La),minValue:sb,minDataValue:Ga.dataLabels(sb),Q1:Ga.dataLabels(ib),unformattedQ1:ib,Q3:Ga.dataLabels(jb),unformattedQ3:jb,median:Ga.dataLabels(eb),
unformattedMedian:eb,SD:Ga.dataLabels(tb),unformattedsd:tb,QD:Ga.dataLabels(ab),unformattedQD:ab,MD:Ga.dataLabels(Ma),unformattedMD:Ma,mean:Ga.dataLabels(ub),unformattedMean:ub,label:ua,yaxisName:N,xaxisName:K,formattedValue:O,value:ua},V=T(U,Q,Z,ca,m,l)):V="<b>Maximum"+L+"</b>"+Ga.dataLabels(La)+"<br /><b>Q3"+L+"</b>"+Ga.dataLabels(jb)+"<br /><b>Median"+L+"</b>"+Ga.dataLabels(eb)+"<br /><b>Q1"+L+"</b>"+Ga.dataLabels(ib)+"<br /><b>Minimum"+L+"</b>"+Ga.dataLabels(sb):V=!1;X.toolText=V;X.setTooltext=
V;S&&(ka=S)}h.maxNumberOfOutliers=fb;h.maxValue=Ta;h.minValue=nb;Ib||(Ba=Ta-nb,h.maxValue+=h.outliersupperrangeratio*Ba,h.minValue-=h.outlierslowerrangeratio*Ba);!1!==b.hasLegend&&this._addLegend();this.subDS=0;this.components.mean=this._createSubDS(0,"Mean");h.showMeanLegend&&this._addLegendSubDS(this.components.mean);h.showMeanLegend&&(this.subDS+=1);this.components.sd=this._createSubDS(1,"SD");h.showSDLegend&&this._addLegendSubDS(this.components.sd);h.showSDLegend&&(this.subDS+=1);this.components.md=
this._createSubDS(2,"MD");h.showMDLegend&&this._addLegendSubDS(this.components.md);h.showMDLegend&&(this.subDS+=1);this.components.qd=this._createSubDS(3,"QD");h.showQDLegend&&this._addLegendSubDS(this.components.qd);h.showQDLegend&&(this.subDS+=1);!this.components.outliers&&(this.components.outliers=[]);Jb=this.config.maxNumberOfOutliers||this.components.outliers.length;for(Qa=0;Qa<Jb;Qa++)Wa=this._createSubDS(4+Qa,"Outliers",Qa),this.components.outliers[Qa]=Wa;h.showOutliersLegend&&this._addLegendOutliers(this.components.outliers);
h.showOutliersLegend&&(this.subDS+=1)},_createSubDS:function(a,b,c){var d=this.chart,e=d.jsonData.dataset,p=e&&e.length,f=this.components,g,k,e=d.components.legend,n={},f=f.dataset||(f.dataset=[]),p=p*(a+1)+this.index;if(f[a])k=f[a],k.index=p,d=P({},this.JSONData),k.JSONData=d;else if(g=Y.get("component",["dataset","subDS"]))void 0===n.subDS?n.subDS=0:n.subDS++,k=new g,k.chart=d,k.index=p,f.push(k),d=P({},this.JSONData),this.initSubDataset(d,k),k.name=b;switch(a){case 0:this.configureMean(k);!this.config.showMeanLegend&&
e.removeItem(k.legendItemId);break;case 1:this.configureSD(k);!this.config.showQDLegend&&e.removeItem(k.legendItemId);break;case 2:this.configureMD(k);!this.config.showMDLegend&&e.removeItem(k.legendItemId);break;case 3:this.configureQD(k);!this.config.showQDLegend&&e.removeItem(k.legendItemId);break;default:this.configureOutliers(k,c),!this.config.showOutliersLegend&&e.removeItem(this.components.outliers.legendItemId)}return k},configureMean:function(b){var h=b.chart,l=h.components,g=a.parseUnsafeString,
k=b.config,p=b.JSONData,y=h.jsonData.chart,r=l.colorManager,n=b.index||b.stackIndex,m=b.type,t=!h.singleseries||w(y.palettecolors)?r.getPlotColor(n):r.getColor(f).split(/\s*\,\s*/)[0],n=p.data,v,B=h.config.categories,B=x(B&&B.length,n&&n.length),A=l.numberFormatter,C=h.use3dlineshift,E,J=-Infinity,D=Infinity,H,I,P=d(y.tooltipsepchar,": "),N=e(p.dashed,y.linedashed);I=h.isStacked;v=h.hasLineSet;l=l.xAxis[0];b.visible=1===e(b.JSONData.visible,!Number(b.JSONData.initiallyhidden),1);k.use3dlineshift=
void 0!==C?e(y.use3dlineshift,C):1;k.plotColor=t;k.legendSymbolColor=k.plotColor;h=e(h.defaultPlotShadow,r.getColor("showShadow"));k.drawFullAreaBorder=e(y.drawfullareaborder,1);k.parentYAxis=v?H=1:H=d(p.parentyaxis&&p.parentyaxis.toLowerCase(),M)===u?1:0;k.connectNullData=e(y.connectnulldata,0);k.enableAnimation=r=e(y.animation,y.defaultanimation,1);k.animation=r?{duration:1E3*e(y.animationduration,1)}:!1;k.transposeanimation=e(y.transposeanimation,r);k.transposeanimduration=1E3*e(y.transposeanimduration,
.2);k.showValues=0;k.valuePadding=e(y.valuepadding,2);k.valuePosition=d(p.valueposition,y.valueposition,"auto");k.stack100Percent=r=e(y.stack100percent,0);k.showPercentValues=e(y.showpercentvalues,I&&r?1:0);k.showPercentInToolTip=e(y.showpercentintooltip,I&&r?1:0);k.showTooltip=e(y.showtooltip,1);k.seriesNameInTooltip=e(y.seriesnameintooltip,1);k.showHoverEffect=e(y.plothovereffect,y.anchorhovereffect,y.showhovereffect,void 0);k.rotateValues=e(y.rotatevalues)?270:0;k.linethickness=e(p.linethickness,
y.linethickness,1);k.lineDashLen=e(p.linedashlen,y.linedashlen,5);k.lineDashGap=e(p.linedashgap,y.linedashgap,4);k.drawLine=k.alpha=e(y.drawmeanconnector,p.drawmeanconnector,0)&&100;I=a.getDashStyle(k.lineDashLen,k.lineDashGap,k.linethickness);k.lineDashStyle=N?I:"none";k.shadow={opacity:e(y.showshadow,h)?m===K?k.alpha/100:k.plotBorderAlpha/100:0};k.drawAnchors=e(p.drawanchors,p.showanchors,y.drawanchors,y.showanchors);k.anchorBgColor=d(p.meaniconcolor,y.meaniconcolor,z);k.anchorBorderColor=z;k.anchorRadius=
e(p.meaniconradius,y.meaniconradius,5);k.anchorAlpha=d(p.alpha,p.meaniconalpha,y.meaniconalpha);k.anchorBgAlpha=d(p.meaniconalpha,y.meaniconalpha,100);k.anchorBorderThickness=d(p.anchorborderthickness,y.anchorborderthickness,1);k.anchorSides=d(p.meaniconsides,y.meaniconsides,3);k.linecolor=k.anchorBgColor;k.minimizeTendency=e(y.minimizetendency,y.minimisetendency,0);k.anchorImageUrl=d(p.anchorimageurl,y.anchorimageurl);k.anchorImageAlpha=e(p.anchorimagealpha,y.anchorimagealpha,100);k.anchorImageScale=
e(p.anchorimagescale,y.anchorimagescale,100);k.anchorImagePadding=e(p.anchorimagepadding,y.anchorimagepadding,1);k.anchorStartAngle=e(p.anchorstartangle,y.anchorstartangle,90);k.anchorShadow=e(p.anchorshadow,y.anchorshadow,0);!b.components.data&&(b.components.data=[]);h=b.components.data;for(t=0;t<B;t++)v=n&&n[t],m=h[t]=h[t]||{},m.config=m.config||{},r=m.config,C=this.components.data[t].config,v.value=C.showMean?C.mean:null,r.x=this.components.data[t]._xPos,r.setValue=C=A.getCleanValue(v.value),r.setLink=
d(v.link),r.anchorProps=this._parseAnchorProperties(t,b,"mean"),E=l.getLabel(t),r.label=a.getValidValue(g(d(E.tooltext,E.label,E.name))),r.showValue=0,r.dashed=e(v.dashed,N),r.color=d(v.color,k.lineColor),r.alpha=d(v.alpha,v.alpha,k.alpha),J=c(J,C),D=x(D,C),r.dashStyle=r.dashed?I:"none",r.toolTipValue=C=A.dataLabels(C,H),r.setDisplayValue=E=g(v.displayvalue),r.displayValue=d(E,C),r.formatedVal=r.toolTipValue,r.setTooltext=a.getValidValue(g(d(v.tooltext,p.plottooltext,y.plottooltext))),v=d(v.meaniconshape,
p.meaniconshape,y.meaniconshape,"polygon"),k.dip=r.dip="polygon"===v?0:"spoke"===v?1:0,v=k.showTooltip?"<b>Mean"+P+"</b>":!1,r.toolText=v,r.setTooltext=v,m?m.graphics||(h[t].graphics={}):h[t]={graphics:{}},r.hoverEffects={enabled:!1};k.maxValue=J;k.minValue=D},configureSD:function(b){var h=b.chart,l=h.components,k=a.parseUnsafeString,g=b.config,p=b.JSONData,y=h.jsonData.chart,r=l.colorManager,n=b.index||b.stackIndex,m=b.type,t=!h.singleseries||w(y.palettecolors)?r.getPlotColor(n):r.getColor(f).split(/\s*\,\s*/)[0],
n=p.data,v,B=h.config.categories,B=x(B&&B.length,n&&n.length),A=l.numberFormatter,C=h.use3dlineshift,E,J=-Infinity,D=Infinity,H,I,P=d(y.tooltipsepchar,": "),N=e(p.dashed,y.linedashed);I=h.isStacked;v=h.hasLineSet;l=l.xAxis[0];b.visible=1===e(b.JSONData.visible,!Number(b.JSONData.initiallyhidden),1);g.use3dlineshift=void 0!==C?e(y.use3dlineshift,C):1;g.plotColor=t;g.legendSymbolColor=g.plotColor;h=e(h.defaultPlotShadow,r.getColor("showShadow"));g.drawFullAreaBorder=e(y.drawfullareaborder,1);g.parentYAxis=
v?H=1:H=d(p.parentyaxis&&p.parentyaxis.toLowerCase(),M)===u?1:0;g.connectNullData=e(y.connectnulldata,0);g.enableAnimation=r=e(y.animation,y.defaultanimation,1);g.animation=r?{duration:1E3*e(y.animationduration,1)}:!1;g.transposeanimation=e(y.transposeanimation,r);g.transposeanimduration=1E3*e(y.transposeanimduration,.2);g.showValues=0;g.valuePadding=e(y.valuepadding,2);g.valuePosition=d(p.valueposition,y.valueposition,"auto");g.stack100Percent=r=e(y.stack100percent,0);g.showPercentValues=e(y.showpercentvalues,
I&&r?1:0);g.showPercentInToolTip=e(y.showpercentintooltip,I&&r?1:0);g.showTooltip=e(y.showtooltip,1);g.seriesNameInTooltip=e(y.seriesnameintooltip,1);g.showHoverEffect=e(y.plothovereffect,y.anchorhovereffect,y.showhovereffect,void 0);g.rotateValues=e(y.rotatevalues)?270:0;g.linethickness=e(p.linethickness,y.linethickness,1);g.lineDashLen=e(p.linedashlen,y.linedashlen,5);g.lineDashGap=e(p.linedashgap,y.linedashgap,4);g.drawLine=g.alpha=e(y.drawsdconnector,p.drawsdconnector,0)&&100;I=a.getDashStyle(g.lineDashLen,
g.lineDashGap,g.linethickness);g.lineDashStyle=N?I:"none";g.shadow={opacity:e(y.showshadow,h)?m===K?g.alpha/100:g.plotBorderAlpha/100:0};g.drawAnchors=e(p.drawanchors,p.showanchors,y.drawanchors,y.showanchors);g.anchorBgColor=d(p.sdiconcolor,y.sdiconcolor,z);g.anchorBorderColor=z;g.anchorRadius=e(p.sdiconradius,y.sdiconradius,5);g.anchorAlpha=d(p.alpha,p.sdiconalpha,y.sdiconalpha);g.anchorBgAlpha=d(p.sdiconalpha,y.sdiconalpha,100);g.anchorBorderThickness=d(p.anchorborderthickness,y.anchorborderthickness,
1);g.anchorSides=d(p.sdiconsides,y.sdiconsides,3);g.linecolor=g.anchorBgColor;g.minimizeTendency=e(y.minimizetendency,y.minimisetendency,0);g.anchorImageUrl=d(p.anchorimageurl,y.anchorimageurl);g.anchorImageAlpha=e(p.anchorimagealpha,y.anchorimagealpha,100);g.anchorImageScale=e(p.anchorimagescale,y.anchorimagescale,100);g.anchorImagePadding=e(p.anchorimagepadding,y.anchorimagepadding,1);g.anchorStartAngle=e(p.anchorstartangle,y.anchorstartangle,90);g.anchorShadow=e(p.anchorshadow,y.anchorshadow,0);
!b.components.data&&(b.components.data=[]);h=b.components.data;for(t=0;t<B;t++)v=n&&n[t],m=h[t]=h[t]||{},m.config=m.config||{},r=m.config,C=this.components.data[t].config,v.value=C.showSD?C.sd:null,r.x=this.components.data[t]._xPos,r.setValue=C=A.getCleanValue(v.value),r.setLink=d(v.link),r.anchorProps=this._parseAnchorProperties(t,b,"sd"),E=l.getLabel(t),r.label=a.getValidValue(k(d(E.tooltext,E.label,E.name))),r.showValue=0,r.dashed=e(v.dashed,N),r.color=d(v.color,g.lineColor),r.alpha=d(v.alpha,
v.alpha,g.alpha),J=c(J,C),D=x(D,C),r.dashStyle=r.dashed?I:"none",r.toolTipValue=C=A.dataLabels(C,H),r.setDisplayValue=E=k(v.displayvalue),r.displayValue=d(E,C),r.formatedVal=C=r.toolTipValue,r.setTooltext=a.getValidValue(k(d(v.tooltext,p.plottooltext,y.plottooltext))),v=d(v.sdiconshape,p.sdiconshape,y.sdiconshape,"polygon"),g.dip=r.dip="polygon"===v?0:"spoke"===v?1:0,v=g.showTooltip?null===C?!1:"<b>SD"+P+"</b>":!1,r.toolText=v,r.setTooltext=v,m?m.graphics||(h[t].graphics={}):h[t]={graphics:{}},r.hoverEffects=
{enabled:!1};g.maxValue=J;g.minValue=D},configureMD:function(b){var h=b.chart,l=h.components,g=a.parseUnsafeString,k=b.config,p=b.JSONData,y=h.jsonData.chart,r=l.colorManager,n=b.index||b.stackIndex,m=b.type,t=!h.singleseries||w(y.palettecolors)?r.getPlotColor(n):r.getColor(f).split(/\s*\,\s*/)[0],n=p.data,v,B=h.config.categories,B=x(B&&B.length,n&&n.length),A=l.numberFormatter,C=h.use3dlineshift,E,J=-Infinity,D=Infinity,I,H,P=d(y.tooltipsepchar,": "),N=e(p.dashed,y.linedashed);H=h.isStacked;v=h.hasLineSet;
l=l.xAxis[0];b.visible=1===e(b.JSONData.visible,!Number(b.JSONData.initiallyhidden),1);k.use3dlineshift=void 0!==C?e(y.use3dlineshift,C):1;k.plotColor=t;k.legendSymbolColor=k.plotColor;h=e(h.defaultPlotShadow,r.getColor("showShadow"));k.drawFullAreaBorder=e(y.drawfullareaborder,1);k.parentYAxis=v?I=1:I=d(p.parentyaxis&&p.parentyaxis.toLowerCase(),M)===u?1:0;k.connectNullData=e(y.connectnulldata,0);k.enableAnimation=r=e(y.animation,y.defaultanimation,1);k.animation=r?{duration:1E3*e(y.animationduration,
1)}:!1;k.transposeanimation=e(y.transposeanimation,r);k.transposeanimduration=1E3*e(y.transposeanimduration,.2);k.showValues=0;k.valuePadding=e(y.valuepadding,2);k.valuePosition=d(p.valueposition,y.valueposition,"auto");k.stack100Percent=r=e(y.stack100percent,0);k.showPercentValues=e(y.showpercentvalues,H&&r?1:0);k.showPercentInToolTip=e(y.showpercentintooltip,H&&r?1:0);k.showTooltip=e(y.showtooltip,1);k.seriesNameInTooltip=e(y.seriesnameintooltip,1);k.showHoverEffect=e(y.plothovereffect,y.anchorhovereffect,
y.showhovereffect,void 0);k.rotateValues=e(y.rotatevalues)?270:0;k.linethickness=e(p.linethickness,y.linethickness,1);k.lineDashLen=e(p.linedashlen,y.linedashlen,5);k.lineDashGap=e(p.linedashgap,y.linedashgap,4);k.drawLine=k.alpha=e(y.drawmdconnector,p.drawmdconnector,0)&&100;H=a.getDashStyle(k.lineDashLen,k.lineDashGap,k.linethickness);k.lineDashStyle=N?H:"none";k.shadow={opacity:e(y.showshadow,h)?m===K?k.alpha/100:k.plotBorderAlpha/100:0};k.drawAnchors=e(p.drawanchors,p.showanchors,y.drawanchors,
y.showanchors);k.anchorBgColor=d(p.mdiconcolor,y.mdiconcolor,z);k.anchorBorderColor=z;k.anchorRadius=e(p.mdiconradius,y.mdiconradius,5);k.anchorAlpha=d(p.alpha,p.mdiconalpha,y.mdiconalpha);k.anchorBgAlpha=d(p.mdiconalpha,y.mdiconalpha,100);k.anchorBorderThickness=d(p.anchorborderthickness,y.anchorborderthickness,1);k.anchorSides=d(p.mdiconsides,y.mdiconsides,3);k.linecolor=k.anchorBgColor;k.minimizeTendency=e(y.minimizetendency,y.minimisetendency,0);k.anchorImageUrl=d(p.anchorimageurl,y.anchorimageurl);
k.anchorImageAlpha=e(p.anchorimagealpha,y.anchorimagealpha,100);k.anchorImageScale=e(p.anchorimagescale,y.anchorimagescale,100);k.anchorImagePadding=e(p.anchorimagepadding,y.anchorimagepadding,1);k.anchorStartAngle=e(p.anchorstartangle,y.anchorstartangle,90);k.anchorShadow=e(p.anchorshadow,y.anchorshadow,0);!b.components.data&&(b.components.data=[]);h=b.components.data;for(t=0;t<B;t++)v=n&&n[t],m=h[t]=h[t]||{},m.config=m.config||{},r=m.config,C=this.components.data[t].config,v.value=C.showMD?C.md:
null,r.x=this.components.data[t]._xPos,r.setValue=C=A.getCleanValue(v.value),r.setLink=d(v.link),r.anchorProps=this._parseAnchorProperties(t,b,"md"),E=l.getLabel(t),r.label=a.getValidValue(g(d(E.tooltext,E.label,E.name))),r.showValue=0,r.dashed=e(v.dashed,N),r.color=d(v.color,k.lineColor),r.alpha=d(v.alpha,v.alpha,k.alpha),J=c(J,C),D=x(D,C),r.dashStyle=r.dashed?H:"none",r.toolTipValue=C=A.dataLabels(C,I),r.setDisplayValue=E=g(v.displayvalue),r.displayValue=d(E,C),r.formatedVal=r.toolTipValue,r.setTooltext=
a.getValidValue(g(d(v.tooltext,p.plottooltext,y.plottooltext))),v=d(v.mdiconshape,p.mdiconshape,y.mdiconshape,"polygon"),k.dip=r.dip="polygon"===v?0:"spoke"===v?1:0,v=k.showTooltip?"<b>MD"+P+"</b>":!1,r.toolText=v,r.setTooltext=v,m?m.graphics||(h[t].graphics={}):h[t]={graphics:{}},r.hoverEffects={enabled:!1};k.maxValue=J;k.minValue=D},configureQD:function(b){var h=b.chart,l=h.components,k=a.parseUnsafeString,g=b.config,p=b.JSONData,y=h.jsonData.chart,r=l.colorManager,n=b.index||b.stackIndex,m=b.type,
t=!h.singleseries||w(y.palettecolors)?r.getPlotColor(n):r.getColor(f).split(/\s*\,\s*/)[0],n=p.data,v,B=h.config.categories,B=x(B&&B.length,n&&n.length),A=l.numberFormatter,C=h.use3dlineshift,E,J=-Infinity,D=Infinity,H,I,P=d(y.tooltipsepchar,": "),N=e(p.dashed,y.linedashed);I=h.isStacked;v=h.hasLineSet;l=l.xAxis[0];b.visible=1===e(b.JSONData.visible,!Number(b.JSONData.initiallyhidden),1);g.use3dlineshift=void 0!==C?e(y.use3dlineshift,C):1;g.plotColor=t;g.legendSymbolColor=g.plotColor;h=e(h.defaultPlotShadow,
r.getColor("showShadow"));g.drawFullAreaBorder=e(y.drawfullareaborder,1);g.parentYAxis=v?H=1:H=d(p.parentyaxis&&p.parentyaxis.toLowerCase(),M)===u?1:0;g.connectNullData=e(y.connectnulldata,0);g.enableAnimation=r=e(y.animation,y.defaultanimation,1);g.animation=r?{duration:1E3*e(y.animationduration,1)}:!1;g.transposeanimation=e(y.transposeanimation,r);g.transposeanimduration=1E3*e(y.transposeanimduration,.2);g.showValues=0;g.valuePadding=e(y.valuepadding,2);g.valuePosition=d(p.valueposition,y.valueposition,
"auto");g.stack100Percent=r=e(y.stack100percent,0);g.showPercentValues=e(y.showpercentvalues,I&&r?1:0);g.showPercentInToolTip=e(y.showpercentintooltip,I&&r?1:0);g.showTooltip=e(y.showtooltip,1);g.seriesNameInTooltip=e(y.seriesnameintooltip,1);g.showHoverEffect=e(y.plothovereffect,y.anchorhovereffect,y.showhovereffect,void 0);g.rotateValues=e(y.rotatevalues)?270:0;g.linethickness=e(p.linethickness,y.linethickness,1);g.lineDashLen=e(p.linedashlen,y.linedashlen,5);g.lineDashGap=e(p.linedashgap,y.linedashgap,
4);g.drawLine=g.alpha=e(y.drawqdconnector,p.drawqdconnector,0)&&100;I=a.getDashStyle(g.lineDashLen,g.lineDashGap,g.linethickness);g.lineDashStyle=N?I:"none";g.shadow={opacity:e(y.showshadow,h)?m===K?g.alpha/100:g.plotBorderAlpha/100:0};g.drawAnchors=e(p.drawanchors,p.showanchors,y.drawanchors,y.showanchors);g.anchorBgColor=d(p.qdiconcolor,y.qdiconcolor,z);g.anchorBorderColor=z;g.anchorRadius=e(p.qdiconradius,y.qdiconradius,5);g.anchorAlpha=d(p.alpha,p.qdiconalpha,y.qdiconalpha);g.anchorBgAlpha=d(p.qdiconalpha,
y.qdiconalpha,100);g.anchorBorderThickness=d(p.anchorborderthickness,y.anchorborderthickness,1);g.anchorSides=d(p.qdiconsides,y.qdiconsides,3);g.linecolor=g.anchorBgColor;g.minimizeTendency=e(y.minimizetendency,y.minimisetendency,0);g.anchorImageUrl=d(p.anchorimageurl,y.anchorimageurl);g.anchorImageAlpha=e(p.anchorimagealpha,y.anchorimagealpha,100);g.anchorImageScale=e(p.anchorimagescale,y.anchorimagescale,100);g.anchorImagePadding=e(p.anchorimagepadding,y.anchorimagepadding,1);g.anchorStartAngle=
e(p.anchorstartangle,y.anchorstartangle,90);g.anchorShadow=e(p.anchorshadow,y.anchorshadow,0);!b.components.data&&(b.components.data=[]);h=b.components.data;for(t=0;t<B;t++)v=n&&n[t],m=h[t]=h[t]||{},m.config=m.config||{},r=m.config,C=this.components.data[t].config,v.value=C.showQD?C.qd:null,r.x=this.components.data[t]._xPos,r.setValue=C=A.getCleanValue(v.value),r.setLink=d(v.link),r.anchorProps=this._parseAnchorProperties(t,b,"qd"),E=l.getLabel(t),r.label=a.getValidValue(k(d(E.tooltext,E.label,E.name))),
r.showValue=0,r.dashed=e(v.dashed,N),r.color=d(v.color,g.lineColor),r.alpha=d(v.alpha,v.alpha,g.alpha),J=c(J,C),D=x(D,C),r.dashStyle=r.dashed?I:"none",r.toolTipValue=C=A.dataLabels(C,H),r.setDisplayValue=E=k(v.displayvalue),r.displayValue=d(E,C),r.formatedVal=C=r.toolTipValue,r.setTooltext=a.getValidValue(k(d(v.tooltext,p.plottooltext,y.plottooltext))),v=d(v.qdiconshape,p.qdiconshape,y.qdiconshape,"polygon"),g.dip=r.dip="polygon"===v?0:"spoke"===v?1:0,v=g.showTooltip?null===C?!1:"<b>QD"+P+"</b>":
!1,r.toolText=v,r.setTooltext=v,m?m.graphics||(h[t].graphics={}):h[t]={graphics:{}},r.hoverEffects={enabled:!1};g.maxValue=J;g.minValue=D},configureOutliers:function(b,h){var l=b.chart,g=l.components,k=a.parseUnsafeString,p=b.config,y=b.JSONData,r=l.jsonData.chart,n=g.colorManager,t=b.index||b.stackIndex,m=b.type,v=!l.singleseries||w(r.palettecolors)?n.getPlotColor(t):n.getColor(f).split(/\s*\,\s*/)[0],t=y.data,B,A=l.config.categories,A=x(A&&A.length,t&&t.length),C=g.numberFormatter,E=l.use3dlineshift,
J,D=-Infinity,I=Infinity,H,P,N=d(r.tooltipsepchar,": "),L=e(y.dashed,r.linedashed);P=l.isStacked;B=l.hasLineSet;g=g.xAxis[0];b.visible=1===e(b.JSONData.visible,!Number(b.JSONData.initiallyhidden),1);p.use3dlineshift=void 0!==E?e(r.use3dlineshift,E):1;p.plotColor=v;p.legendSymbolColor=p.plotColor;l=e(l.defaultPlotShadow,n.getColor("showShadow"));p.drawFullAreaBorder=e(r.drawfullareaborder,1);p.parentYAxis=B?H=1:H=d(y.parentyaxis&&y.parentyaxis.toLowerCase(),M)===u?1:0;p.connectNullData=e(r.connectnulldata,
0);p.enableAnimation=n=e(r.animation,r.defaultanimation,1);p.animation=n?{duration:1E3*e(r.animationduration,1)}:!1;p.transposeanimation=e(r.transposeanimation,n);p.transposeanimduration=1E3*e(r.transposeanimduration,.2);p.showValues=0;p.valuePadding=e(r.valuepadding,2);p.valuePosition=d(y.valueposition,r.valueposition,"auto");p.stack100Percent=n=e(r.stack100percent,0);p.showPercentValues=e(r.showpercentvalues,P&&n?1:0);p.showPercentInToolTip=e(r.showpercentintooltip,P&&n?1:0);p.showTooltip=e(r.showtooltip,
1);p.seriesNameInTooltip=e(r.seriesnameintooltip,1);p.showHoverEffect=e(r.plothovereffect,r.anchorhovereffect,r.showhovereffect,void 0);p.rotateValues=e(r.rotatevalues)?270:0;p.linethickness=e(y.linethickness,r.linethickness,1);p.lineDashLen=e(y.linedashlen,r.linedashlen,5);p.lineDashGap=e(y.linedashgap,r.linedashgap,4);p.alpha=0;P=a.getDashStyle(p.lineDashLen,p.lineDashGap,p.linethickness);p.lineDashStyle=L?P:"none";p.shadow={opacity:e(r.showshadow,l)?m===K?p.alpha/100:p.plotBorderAlpha/100:0};p.drawAnchors=
e(y.drawanchors,y.showanchors,r.drawanchors,r.showanchors);p.anchorBgColor=d(y.outliericoncolor,r.outliericoncolor,z);p.anchorBorderColor=z;p.anchorRadius=e(y.outliericonradius,r.outliericonradius,5);p.anchorAlpha=d(y.alpha,y.outliericonalpha,r.outliericonalpha);p.anchorBgAlpha=d(y.outliericonalpha,r.outliericonalpha,100);p.anchorBorderThickness=d(y.anchorborderthickness,r.anchorborderthickness,1);p.anchorSides=d(y.outliericonsides,r.outliericonsides,3);p.linecolor=p.anchorBgColor;p.minimizeTendency=
e(r.minimizetendency,r.minimisetendency,0);p.anchorImageUrl=d(y.anchorimageurl,r.anchorimageurl);p.anchorImageAlpha=e(y.anchorimagealpha,r.anchorimagealpha,100);p.anchorImageScale=e(y.anchorimagescale,r.anchorimagescale,100);p.anchorImagePadding=e(y.anchorimagepadding,r.anchorimagepadding,1);p.anchorStartAngle=e(y.anchorstartangle,r.anchorstartangle,90);p.anchorShadow=e(y.anchorshadow,r.anchorshadow,0);!b.components.data&&(b.components.data=[]);l=b.components.data;for(v=0;v<A;v++)B=t&&t[v],m=l[v]=
l[v]||{},m.config=m.config||{},n=m.config,J=this.components.data[v].config,B.value=J.outliers?J.outliers[h]:null,n.x=this.components.data[v]._xPos,n.setValue=E=C.getCleanValue(B.value),E>=J.min&&E<=J.max&&(n.setValue=B.value=null),n.setLink=d(B.link),n.anchorProps=this._parseAnchorProperties(v,b,"outlier"),J=g.getLabel(v),n.label=a.getValidValue(k(d(J.tooltext,J.label,J.name))),n.showValue=0,n.dashed=e(B.dashed,L),n.color=d(B.color,p.lineColor),n.alpha=d(B.alpha,B.alpha,p.alpha),D=c(D,E),I=x(I,E),
n.dashStyle=n.dashed?P:"none",n.toolTipValue=E=C.dataLabels(E,H),n.setDisplayValue=J=k(B.displayvalue),n.displayValue=d(J,E),n.formatedVal=E=n.toolTipValue,n.setTooltext=a.getValidValue(k(d(B.tooltext,y.plottooltext,r.plottooltext))),B=d(B.outliericonshape,y.outliericonshape,r.outliericonshape,"polygon"),p.dip=n.dip="polygon"===B?0:"spoke"===B?1:0,B=p.showTooltip?null===E?!1:"<b>Outlier"+N+"</b>":!1,n.toolText=B,n.setTooltext=B,m?m.graphics||(l[v].graphics={}):l[v]={graphics:{}},n.hoverEffects={enabled:!1};
p.maxValue=D;p.minValue=I},initSubDataset:function(a,b){var c=b.chart,d=c.components,e=c.hasLineSet,e=a.parentyaxis&&a.parentyaxis.toLowerCase()===u||e?1:0;b.chart=c;b.yAxis=d.yAxis[e];b.components={};b.graphics={};b.JSONData=a},_parseAnchorProperties:function(b,c,l){var g=c.config,k="area"===c.type?0:1,p=c.JSONData,f=c.chart.jsonData.chart;b=p.data[b];c={};var r=a.graphics.mapSymbolName,p=void 0!==d(b.anchorstartangle,p.anchorstartangle,f.anchorstartangle,b.anchorimagealpha,p.anchorimagealpha,f.anchorimagealpha,
b.anchorimagescale,p.anchorimagescale,f.anchorimagescale,b.anchorimagepadding,p.anchorimagepadding,f.anchorimagepadding,b.anchorimageurl,p.anchorimageurl,f.anchorimageurl,b.meaniconradius,p.meaniconradius,f.meaniconradius,b.meaniconcolor,p.meaniconcolor,f.meaniconcolor,b.anchorbordercolor,p.anchorbordercolor,f.anchorbordercolor,b.anchoralpha,p.anchoralpha,f.anchoralpha,b.meaniconsides,p.meaniconsides,f.meaniconsides,b.anchorborderthickness,p.anchorborderthickness,f.anchorborderthickness,void 0),f=
e(b.drawanchors,g.drawAnchors);c.enabled=p?e(f,p):e(f,k);c.startAngle=e(b.anchorstartangle,g.anchorStartAngle);c.imageAlpha=e(b.anchorimagealpha,g.anchorImageAlpha);c.imageScale=e(b.anchorimagescale,g.anchorImageScale);c.imagePadding=e(b.anchorimagepadding,g.anchorImagePadding);0>c.imagePadding&&(c.imagePadding=0);c.imageUrl=d(b.anchorimageurl,g.anchorImageUrl);c.radius=e(b[l+"iconradius"],g.anchorRadius);c.isAnchorRadius=c.radius;c.bgColor=d(b[l+"iconcolor"],g.anchorBgColor);k=c.enabled?C(d(b.anchoralpha,
g.anchorAlpha,c.enabled?v:I)):0;c.bgAlpha=C(d(b[l+"iconalpha"],g.meaniconalpha,k));c.borderColor=d(b.anchorbordercolor,g.anchorBorderColor);c.borderAlpha=k;c.anchorAlpha=k;c.sides=d(b[l+"iconsides"],g.anchorSides);c.borderThickness=d(b.anchorborderthickness,g.anchorBorderThickness);c.symbol=r(c.sides).split(V);c.shadow=e(b.anchorshadow,g.anchorShadow)&&1<=c.radius?{opacity:k/100}:!1;g.attachEvents=!0;return c},init:function(a){var b=this.chart,c=b.components,d=a.parentyaxis&&a.parentyaxis.toLowerCase()===
u?1:0,c=c.yAxis[d];if(!a)return!1;this.JSONData=a;this.yAxis=c;this.chartGraphics=b.chartGraphics;this.components={};this.graphics={};this.configure()},draw:function(){var a,b,d,g,f,p,y,r=this,w=r.JSONData,v=r.config,u=r.groupManager,z=r.index,C=r.chart.config.categories,E=w.data,I=C&&C.length,P=E&&E.length,M,K,Z,W=r.visible,Y=r.chart,da=Y.config,ma=Y.components.paper,la=Y.components.xAxis[0],Pa=r.yAxis,Va=Y.graphics.columnGroup,va,Ea,ta=Y.graphics,Fa=v.showtooltip,wa=Y.get(U,aa),na=wa.animType,ka=
wa.animObj,pa=wa.dummyObj,ia=wa.duration,ga=la.getAxisPosition(0),ra=la.getAxisPosition(1)-ga,fa=v.definedGroupPadding,ha=v.plotSpacePercent/200,ca=u.getDataSetPosition(r),ya=v.maxcolwidth,xa=(1-.01*fa)*ra||x(ra*(1-2*ha),1*ya),X=e(ca.columnWidth,xa/1),ua,sa=ca.xPosOffset||0,za=ca.height,Ca,Ha=r.components.data,qa,Aa,Sa,Ia,ja,yb,db=Pa.getAxisBase(),Rb,Eb,Lb=v.showShadow,qb=r.graphics.upperBoxContainer,gb=r.graphics.lowerBoxContainer,Fb=r.graphics.medianContainer,Gb=r.graphics.upperWhiskerContainer,
Mb=r.graphics.lowerWhiskerContainer,hb=r.graphics.dataLabelContainer,rb=r.graphics.shadowContainer,Ga,Yb,Nb,$a,Qb,zb,mb,Qa,Ta,nb,Kb,cb,Hb,ib,jb,Ab,sb,La,eb,ub,Ma,tb,ab,oa=Y.config.dataLabelStyle,Zb=ta.datalabelsGroup,Da=v.rotatevalues,kb=v.valuepadding,lb=Y.components.numberFormatter,bb=Da?J:"middle",Ib=Y.linkedItems.smartLabel,Ba,Za,Sb,Tb,Ob,Pb,Wa,Jb,fb,vb,wb,Ub,$b,ec,Vb,kc=Infinity,Ua,jc,xb=!0,yc=(r.components.removeDataArr||[]).length,lc,mc,nc,oc,pc,qc,rc,sc,tc,Wb,Xb,ac=v.showHoverEffect,Bb,Cb,
uc,vc,wc,xc,bc=function(a){k.call(this,Y,a)},cc=function(a){return function(b){var c;if(0!==this.data(O))for(c in a)"label"!==c&&(a[c].attr(this.data("setRolloverAttr")[c]),k.call(this,Y,b,"DataPlotRollOver"))}},dc=function(a){return function(b){var c;if(0!==this.data(O))for(c in a)"label"!==c&&(a[c].attr(this.data("setRolloutAttr")[c]),k.call(this,Y,b,"DataPlotRollOut"))}},Db=function(){!1!==r.visible||!1!==r._conatinerHidden&&void 0!==r._conatinerHidden||(qb.hide(),gb.hide(),Gb.hide(),Mb.hide(),
Fb.hide(),rb.hide(),hb&&hb.hide(),r._conatinerHidden=!0)};hb||(hb=r.graphics.dataLabelContainer=ma.group(L,Zb),W||hb.hide());qb||(qb=r.graphics.upperBoxContainer=ma.group("upperBox",Va).trackTooltip(!0).toBack(),W||qb.hide());Gb||(Gb=r.graphics.upperWhiskerContainer=ma.group("upperWhisker",Va).trackTooltip(!0),W||Gb.hide());gb||(gb=r.graphics.lowerBoxContainer=ma.group("lowerBox",Va).trackTooltip(!0).toBack(),W||gb.hide());Mb||(Mb=r.graphics.lowerWhiskerContainer=ma.group("lowerWhisker",Va).trackTooltip(!0),
W||Mb.hide());Fb||(Fb=r.graphics.medianContainer=ma.group("median",Va).trackTooltip(!0),W||Fb.hide());rb||(rb=r.graphics.shadowContainer=ma.group(S,Va).toBack(),W||rb.hide());W&&(qb.show(),gb.show(),Gb.show(),Mb.show(),Fb.show(),rb.show(),hb&&hb.show(),r._conatinerHidden=!1,r.components.mean.visible&&r.components.mean.show(),r.components.sd.visible&&r.components.sd.show(),r.components.qd.visible&&r.components.qd.show(),r.components.md.visible&&r.components.md.show());M=x(I,P);for(Z=0;Z<M;Z++)if(Sa=
(ja=(qa=Ha[Z])&&qa.config)&&ja.setValue,tc=sc=rc=qc=pc=oc=nc=mc=lc=!1,void 0!==qa&&void 0!==Sa&&null!==Sa)for(Ba=qa.graphics,yb=0<=Sa,Aa=ja.setLink,qa.graphics||(Ha[Z].graphics={}),Ba.label||(Ha[Z].graphics.label=[]),Rb=yb?ja.previousPositiveY:ja.previousNegativeY,Eb=Pa.getAxisPosition(Rb||db),va=la.getAxisPosition(Z)+sa,0===za&&(kc=0,Ua=Eb),Ea=x(Ea,Eb),ua=X,Nb=((Yb=(Ga=ja.upperQuartile||{},Ga.value))||0===Yb)&&Pa.getAxisPosition(Yb),zb=((Qb=($a=ja.lowerQuartile||{},$a.value))||0===Qb)&&Pa.getAxisPosition(Qb),
Ta=((Qa=(mb=ja.median)&&mb.value)||0===Qa)&&Pa.getAxisPosition(Qa),nb=Ta-Nb,Kb=zb-Ta,cb=ja.upperBoxBorder||{},Hb=ja.lowerBoxBorder||{},Ca=ja.toolText,Za=r.index+V+Z,Ia={index:Z,link:Aa,maximum:ja.max,minimum:ja.min,median:Qa,q3:Ga.value,q1:$a.value,maxDisplayValue:ja.showMaxValues?lb.dataLabels(ja.max):n,minDisplayValue:ja.showMinValues?lb.dataLabels(ja.min):n,medianDisplayValue:ja.showMedianValues?lb.dataLabels(Qa):n,q1DisplayValue:ja.showQ1Values?lb.dataLabels($a.value):n,q3DisplayValue:ja.showQ3Values?
lb.dataLabels(Ga.value):n,categoryLabel:ja.label,toolText:Ca,datasetIndex:z,datasetName:w.seriesname,visible:W},Ma=B(va)+cb.borderWidth%2*.5,tb=B(va+ua)+cb.borderWidth%2*.5,ab=B(Nb)+Ga.borderWidth%2*.5,ua=tb-Ma,a={fill:t(ja.upperColorArr[0]),"stroke-width":0,"stroke-dasharray":"none",cursor:Aa?"pointer":n,ishot:!0,visibility:W},b={fill:t(ja.lowerColorArr[0]),"stroke-width":0,"stroke-dasharray":"none",cursor:Aa?"pointer":Q,ishot:!0,visibility:W},d={stroke:cb.color,"stroke-width":cb.borderWidth,"stroke-linecap":R,
dashstyle:cb.dashStyle,ishot:!0,visibility:W},g={stroke:Hb.color,"stroke-width":Hb.borderWidth,dashstyle:Hb.dashStyle,"stroke-linecap":R,ishot:!0,visibility:W},f={stroke:t(Ga.color),"stroke-width":Ga.borderWidth,"stroke-dasharray":Ga.dashSyle,"stroke-linecap":R,cursor:Aa?"pointer":Q,ishot:!0,visibility:W},p={stroke:t($a.color),"stroke-width":$a.borderWidth,"stroke-dasharray":$a.dashSyle,cursor:Aa?"pointer":n,"stroke-linecap":R,ishot:!0,visibility:W},y={stroke:t(mb.color),"stroke-width":mb.borderWidth,
"stroke-dasharray":mb.dashSyle,cursor:Aa?"pointer":n,"stroke-linecap":R,ishot:!0,visibility:W},uc=Ua||ab,K={x:Ma,y:Ua||ab,width:c(ua,0),height:c(x(kc,nb),0),r:0},(ib=qa.graphics.upperBoxElem)?(ib.animateWith(pa,ka,K,ia,na,xb&&Db),xb=!1):(ib=qa.graphics.upperBoxElem=ma.rect(K,qb),lc=!0),ib.attr(a).shadow({opacity:Lb?v.upperBoxAlpha/100:0},rb),K={path:["M",Ma,Ua||ab,"V",Ua||ab+nb,"M",tb,Ua||ab,"V",Ua||ab+nb]},(jb=qa.graphics.upperBoxBorderEle)?jb.animateWith(pa,ka,K,ia,na,xb&&Db):(jb=qa.graphics.upperBoxBorderEle=
ma.path(K,qb),nc=!0),jb.attr(d),K={path:["M",Ma,Ua||ab,"H",Ma+ua]},(Ab=qa.graphics.upperQuartileEle)?Ab.animateWith(pa,ka,K,ia,na,xb&&Db):(Ab=qa.graphics.upperQuartileEle=ma.path(K,qb),pc=!0),Ab.attr(f),Sb=ab,Tb=v.whiskerslimitswidthratio/100*ua,Ob=Tb/2,Jb=Pb=Pa.getAxisPosition(ja.max),Wa=Ma,Jb=B(Pb)+ja.upperWhiskerThickness%2/2,Ma=B(Ma+ua/2)+ja.upperWhiskerThickness%2/2,vb=["M",Ma,Ua||Sb,"V",x(Ua||Jb,uc),"M",Ma-Ob,x(Ua||Jb,uc),"H",Ma+Ob],fb=qa.graphics.upperWhiskerEle,K={path:vb,ishot:!Fa,"stroke-width":ja.upperWhiskerThickness,
cursor:Aa?"pointer":n,"stroke-linecap":R},fb?fb.animateWith(pa,ka,K,ia,na,xb&&Db):(fb=qa.graphics.upperWhiskerEle=ma.path(K,Gb),sc=!0),fb.attr({stroke:ja.upperWhiskerColor}),fb.shadow({opacity:ja.upperWhiskerShadowOpacity},rb),Ib.useEllipsesOnOverflow(Y.config.useEllipsesWhenOverflow),Ib.setStyle(oa),Ub=Ib.getOriSize(lb.dataLabels(ja.max)),$b=Da?Ub.width:Ub.height,Vb=Pb-.5*ja.upperWhiskerThickness-kb-$b*(Da?.5:1),Vb-(Da?$b/2:0)<da.canvasTop&&(Vb=da.canvasTop+(Da?$b/2:0)),K={text:lb.dataLabels(ja.max),
x:Wa+ua/2,title:Ga.originalText||n,y:Vb,"text-anchor":Da?"middle":bb,"vertical-align":Da?"middle":m,visibility:N,direction:v.textDirection,fill:oa.color,transform:ma.getSuggestiveRotation(Da,Wa+ua/2,Vb),"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]},ja.showMaxValues?(Ba.label[3]?(Ba.label[3].show(),Bb=Wa+ua/2,Cb=Ua||Vb,Ba.label[3].attr({text:lb.dataLabels(ja.max),title:Ga.originalText||n,"text-anchor":Da?"middle":bb,"vertical-align":Da?
"middle":m,visibility:N,direction:v.textDirection,fill:oa.color,"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]}),Ba.label[3].animateWith(pa,ka,{x:Bb,y:Cb,transform:ma.getSuggestiveRotation(Da,Bb,Cb)},ia,na,xb&&Db)):Ba.label[3]=ma.text(K,hb),Ba.label[3].data("groupId",Za)):Ba.label[3]&&Ba.label[3].hide()&&Ba.label[3].attr({"text-bound":[]}),Ma=B(va)+Hb.borderWidth%2*.5,tb=B(va+ua)+Hb.borderWidth%2*.5,ab=B(Ta+Kb)+$a.borderWidth%2*.5,
vc=Ua||Ta,wc=c(x(kc,ab-Ta),0),xc=vc+wc,K={x:Ma,y:vc,width:c(ua,0),height:wc,r:0},(sb=qa.graphics.lowerBoxElem)?sb.animateWith(pa,ka,K,ia,na,xb&&Db):(sb=qa.graphics.lowerBoxElem=ma.rect(K,gb),mc=!0),sb.attr(b).shadow({opacity:Lb?v.lowerBoxAlpha/100:0},rb),K={path:["M",Ma,Ua||Ta,"V",Ua||Ta+Kb,"M",tb,Ua||Ta,"V",Ua||Ta+Kb]},(La=qa.graphics.lowerBoxBorderEle)?La.animateWith(pa,ka,K,ia,na,xb&&Db):(La=qa.graphics.lowerBoxBorderEle=ma.path(K,gb),oc=!0),La.attr(g),ab=B(Ta+Kb)+$a.borderWidth%2*.5,K={path:["M",
Ma,Ua||ab,"H",Ma+ua]},(eb=qa.graphics.lowerQuartileEle)?eb.animateWith(pa,ka,K,ia,na,xb&&Db):(eb=qa.graphics.lowerQuartileEle=ma.path(K,gb),qc=!0),eb.attr(p),Sb=ab,Tb=v.whiskerslimitswidthratio/100*ua,Ob=Tb/2,Jb=Pb=Pa.getAxisPosition(ja.min),Wa=Ma,Jb=B(Pb)+ja.lowerWhiskerThickness%2/2,Wa=B(Wa+ua/2)+ja.lowerWhiskerThickness%2/2,vb=["M",Wa,Ua||Sb,"V",c(Ua||Jb,xc),"M",Wa-Ob,c(Ua||Jb,xc),"H",Wa+Ob],wb=qa.graphics.lowerWhiskerEle,Ib.setStyle(oa),Ub=Ib.getOriSize(lb.dataLabels(ja.min)),$b=Da?Ub.width:Ub.height,
ec=Pb+.5*ja.lowerWhiskerThickness+kb,ec+$b>da.canvasBottom&&(ec=da.canvasBottom-$b),K={text:lb.dataLabels(ja.min),x:Wa,title:Ga.originalText||n,y:ec,"text-anchor":Da?H:bb,"vertical-align":Da?"middle":m,visibility:N,direction:v.textDirection,fill:oa.color,transform:ma.getSuggestiveRotation(Da,Wa,ec),"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]},ja.showMinValues?(Ba.label[4]?(Ba.label[4].show(),Bb=Wa,Cb=Ua||ec,Ba.label[4].animateWith(pa,
ka,{x:Bb,y:Cb,transform:ma.getSuggestiveRotation(Da,Bb,Cb)},ia,na,xb&&Db),Ba.label[4].attr({text:lb.dataLabels(ja.min),title:Ga.originalText||n,"text-anchor":Da?H:bb,"vertical-align":Da?"middle":m,visibility:N,direction:v.textDirection,fill:oa.color,"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]})):Ba.label[4]=ma.text(K,hb),Ba.label[4].data("groupId",Za)):Ba.label[4]&&Ba.label[4].hide()&&Ba.label[4].attr({"text-bound":[]}),K={path:vb,
ishot:!Fa,"stroke-width":ja.lowerWhiskerThickness,cursor:Aa?"pointer":n,"stroke-linecap":R},wb?wb.animateWith(pa,ka,K,ia,na,xb&&Db):(wb=qa.graphics.lowerWhiskerEle=ma.path(K,Mb),tc=!0),wb.attr({stroke:ja.lowerWhiskerColor}),wb.shadow({opacity:ja.lowerWhiskerShadowOpacity},rb),ab=B(Ta)+mb.borderWidth%2*.5,K={path:["M",Ma,Ua||ab,"H",Ma+ua]},(ub=qa.graphics.midLineElem)?ub.animateWith(pa,ka,K,ia,na,xb&&Db):(ub=qa.graphics.midLineElem=ma.path(K,Fb),rc=!0),ub.attr(y),Wb={upperBoxElem:ja.setUpperBoxRolloverAttr,
lowerBoxElem:ja.setLowerBoxRolloverAttr,upperBoxBorderEle:ja.setUpperBoxBorderRolloverAttr,lowerBoxBorderEle:ja.setLowerBoxBorderRolloverAttr,upperQuartileEle:ja.setUpperQuartileRolloverAttr,lowerQuartileEle:ja.setLowerQuartileRolloverAttr,midLineElem:ja.setMedianRolloverAttr},Xb={upperBoxElem:ja.setUpperBoxRolloutAttr,lowerBoxElem:ja.setLowerBoxRolloutAttr,upperBoxBorderEle:ja.setUpperBoxBorderRolloutAttr,lowerBoxBorderEle:ja.setLowerBoxBorderRolloutAttr,upperQuartileEle:ja.setUpperQuartileRolloutAttr,
lowerQuartileEle:ja.setLowerQuartileRolloutAttr,midLineElem:ja.setMedianRolloutAttr},ib.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),lc&&ib.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),sb.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),mc&&sb.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),jb.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",
Xb),nc&&jb.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),La.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),oc&&La.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),Ab.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),pc&&Ab.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),eb.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),qc&&eb.click(bc).hover(cc(qa.graphics),
dc(qa.graphics)),ub.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),rc&&ub.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),fb.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),sc&&fb.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),wb.data("groupId",Za).data("eventArgs",Ia).data(O,ac).data("setRolloverAttr",Wb).data("setRolloutAttr",Xb),tc&&wb.click(bc).hover(cc(qa.graphics),dc(qa.graphics)),
bb=Da?J:"middle",K={text:Ga.displayValue,x:va+ua/2,title:Ga.originalText||n,y:Nb-kb,"text-anchor":Da?A:bb,"vertical-align":Da?"middle":D,visibility:N,direction:v.textDirection,fill:oa.color,transform:ma.getSuggestiveRotation(Da,va+ua/2,Nb-kb),"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]},T(Ga.displayValue)&&Ga.displayValue!==Q&&ja.showQ3Values?(Ba.label[0]?(Ba.label[0].show(),Bb=va+ua/2,Cb=Ua||Nb-kb,Ba.label[0].animateWith(pa,ka,
{x:Bb,y:Cb,transform:ma.getSuggestiveRotation(Da,Bb,Cb)},ia,na,xb&&Db),Ba.label[0].attr({text:Ga.displayValue,title:Ga.originalText||n,"text-anchor":Da?A:bb,"vertical-align":Da?"middle":D,visibility:N,direction:v.textDirection,fill:oa.color,"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]})):Ba.label[0]=ma.text(K,hb),Ba.label[0].data("groupId",Za)):Ba.label[0]&&Ba.label[0].hide()&&Ba.label[0].attr({"text-bound":[]}),K={text:mb.displayValue,
x:Ma+ua/2,y:Ta-kb,title:mb.originalText||n,"text-anchor":Da?A:bb,"vertical-align":Da?"middle":D,visibility:N,direction:v.textDirection,fill:oa.color,transform:ma.getSuggestiveRotation(Da,Ma+ua/2,Ta-kb),"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]},T(mb.displayValue)&&mb.displayValue!==Q&&ja.showMedianValues?(Ba.label[1]?(Ba.label[1].show(),Bb=Ma+ua/2,Cb=Ua||Ta-kb,Ba.label[1].animateWith(pa,ka,{x:Bb,y:Cb,transform:ma.getSuggestiveRotation(Da,
Bb,Cb)},ia,na,xb&&Db),Ba.label[1].attr({text:mb.displayValue,title:mb.originalText||n,"text-anchor":Da?A:bb,"vertical-align":Da?"middle":D,visibility:N,direction:v.textDirection,fill:oa.color,"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]})):Ba.label[1]=ma.text(K,hb),Ba.label[1].data("groupId",Za)):Ba.label[1]&&Ba.label[1].hide()&&Ba.label[1].attr({"text-bound":[]}),K={text:$a.displayValue,x:va+ua/2,y:zb+kb,title:$a.originalText||
n,"text-anchor":Da?A:bb,"vertical-align":Da?"middle":m,visibility:N,direction:v.textDirection,fill:oa.color,transform:ma.getSuggestiveRotation(Da,va+ua/2,zb+kb),"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]},T($a.displayValue)&&$a.displayValue!==Q&&ja.showQ1Values?(Ba.label[2]?(Ba.label[2].show(),Bb=va+ua/2,Cb=Ua||zb+kb,Ba.label[2].animateWith(pa,ka,{x:Bb,y:Cb,transform:ma.getSuggestiveRotation(Da,Bb,Cb)},ia,na,xb&&Db),Ba.label[2].attr({text:$a.displayValue,
title:$a.originalText||n,"text-anchor":Da?A:bb,"vertical-align":Da?"middle":m,visibility:N,direction:v.textDirection,fill:oa.color,"text-bound":[oa.backgroundColor,oa.borderColor,oa.borderThickness,oa.borderPadding,oa.borderRadius,oa.borderDash]})):Ba.label[2]=ma.text(K,hb),Ba.label[2].data("groupId",Za)):Ba.label[2]&&Ba.label[2].hide()&&Ba.label[2].attr({"text-bound":[]}),xb&&Db(),Fa?(ib.tooltip(Ca),sb.tooltip(Ca),jb.tooltip(Ca),La.tooltip(Ca),Ab.tooltip(Ca),eb.tooltip(Ca),ub.tooltip(Ca),fb.tooltip(Ca),
wb.tooltip(Ca)):(ib.tooltip(!1),sb.tooltip(!1),jb.tooltip(!1),La.tooltip(!1),Ab.tooltip(!1),eb.tooltip(!1),ub.tooltip(!1),fb.tooltip(!1),wb.tooltip(!1)),va+=ua/2,r.components.mean.components.data[Z].config.xPos=va,r.components.sd.components.data[Z].config.xPos=va,r.components.qd.components.data[Z].config.xPos=va,r.components.md.components.data[Z].config.xPos=va,jc=0;jc<v.maxNumberOfOutliers;jc++)r.components.outliers[jc].components.data[Z].config.xPos=va;r.flag=!0;yc&&r.remove()},remove:function(){var a=
this.components,b=a.removeDataArr,c=a.pool||(a.pool={element:[],hotElement:[],label:[]}),d=b.length,e,g=this.maxminFlag,k,f,n,t,m;for(n=0;n<d;n++)if(e=b[0],b.splice(0,1),e&&e.graphics){f=e.graphics;for(k in f)if("label"!==k)f[k].shadow({opacity:0}),f[k].hide();else for(t=f[k].length,m=0;m<t;m++)f[k][m]&&(f[k][m].shadow({opacity:0}),f[k][m].hide(),f[k][m].attr({"text-bound":[]}));e.graphics.element&&(c.element=c.element.concat(e.graphics.element));e.graphics.hotElement&&(c.hotElement=c.hotElement.concat(e.graphics.hotElement));
e.graphics.label&&(c.label=c.label.concat(e.graphics.label))}a.pool=c;g&&this.setMaxMin()},removeData:function(a,b,c){var d=this.components,e=d.data,g=d.removeDataArr||(d.removeDataArr=[]),k=d.mean.components.removeDataArr||(d.mean.components.removeDataArr=[]),f=d.sd.components.removeDataArr||(d.sd.components.removeDataArr=[]),n=d.md.components.removeDataArr||(d.md.components.removeDataArr=[]),m=d.qd.components.removeDataArr||(d.qd.components.removeDataArr=[]),t=this.config,w=this.groupManager,v=
this.maxminFlag;b=b||1;a=a||0;if(a+b===e.length)this.endPosition=!0;else if(0===a||void 0===a)this.endPosition=!1;d.removeDataArr=g=g.concat(e.splice(a,b));d.mean.components.removeDataArr=k.concat(d.mean.components.data.splice(a,b));d.sd.components.removeDataArr=f.concat(d.sd.components.data.splice(a,b));d.md.components.removeDataArr=n.concat(d.md.components.data.splice(a,b));d.qd.components.removeDataArr=m.concat(d.qd.components.data.splice(a,b));k=d.outliers.length;for(e=0;e<k;e++)f=d.outliers[e].components.removeDataArr||
(d.outliers[e].components.removeDataArr=[]),d.outliers[e].components.removeDataArr=f.concat(d.outliers[e].components.data.splice(a,b));w&&w.removeSumLabels&&w.removeSumLabels(a,b,this.positionIndex);k=g.length;for(e=0;e<k;e++)if(g[e]){a=g[e].config;if(a.setValue===t.maxValue||a.setValue===t.minValue)v=this.maxminFlag=!0;if(v)break}v&&this.setMaxMin();c&&this.draw()},_addLegendSubDS:function(a){var b;b=a.config;var c=a.chart.components.legend,d=b.anchorBgColor;b={anchorSide:b.anchorSides,legendBackgroundColor:this.config.upperBoxColor,
fillColor:g(d),strokeColor:g(z),enabled:this.config.includeInLegend,label:this.JSONData.seriesname&&Z(a.name),customLegendIcon:!1,spoke:b.dip?1:0,drawLine:b.drawLine?!0:!1,lineColor:t({color:d,alpha:v})};a.itemId=c.addItems(a,a.legendInteractivity,b)},_addLegendOutliers:function(a){var b=this.JSONData,c=this.chart.jsonData.chart,k=this.config,f=k.upperBoxColor,p=this.chart.components.legend,n=d(b.outliericoncolor,c.outliericoncolor,z),b={anchorSide:e(b.outliericonsides,c.outliericonsides,3),fillColor:g(n),
legendBackgroundColor:f,strokeColor:g(z),enabled:k.includeInLegend,label:this.JSONData.seriesname&&"Outliers",customLegendIcon:!1,spoke:a[0].config.dip?1:0,drawLine:!1,datasetObj:a[0]};a.visible=1===e(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);a[0]&&(a[0].itemId=p.addItems(a,this.legendInteractivityOutliers,b))},legendInteractivityOutliers:function(a,b){var c=this.config,d=b.config,e=b.graphics,g=c.itemHiddenStyle.color,c=c.itemStyle.color,k=d.fillColor,d=d.strokeColor,f,n;a.visible=
a.visible?!1:!0;for(f=0;f<a.length;f++)n=a[f].visible,a[f].visible=n?!1:!0,a[f].draw(),n?(a.visible=!1,e.legendItemSymbol&&e.legendItemSymbol.attr({fill:g,stroke:g}),e.legendItemText&&e.legendItemText.attr({fill:g}),e.legendIconLine&&e.legendIconLine.attr({stroke:g})):(e.legendItemSymbol&&e.legendItemSymbol.attr({fill:k,stroke:d}),e.legendItemText&&e.legendItemText.attr({fill:c}),e.legendIconLine&&e.legendIconLine.attr({stroke:k}))},_addLegend:function(){var a;a=this.config;var b=this.chart.components.legend,
c=a.upperBoxColor;a={fillColor:t({FCcolor:{color:c+","+a.lowerBoxColor,angle:90,ratio:"50, 0",alpha:"100, 100"}}),legendBackgroundColor:c,strokeColor:t(z),rawFillColor:c,rawStrokeColor:z,enabled:a.includeInLegend,label:Z(this.JSONData.seriesname),index:this.index,mainDS:!0};this.itemId=b.addItems(this,this.legendInteractivity,a)},legendInteractivity:function(a,b){var c=this.config,d=a.visible,e=b.config,g=b.graphics,k=c.itemHiddenStyle.color,c=c.itemStyle,f=c.color,n=e.fillColor,e=e.strokeColor,m=
b.index,t=a.subDS;d?a.hide():a.show();if(d)for(g.legendItemSymbol&&g.legendItemSymbol.attr({fill:k,stroke:k}),g.legendItemText&&g.legendItemText.attr({fill:k}),g.legendItemLine&&g.legendItemLine.attr({stroke:k}),d=m+1;d<=m+t;d++){if(g=(e=this.components.items[d])&&e.graphics)g.legendItemSymbol&&g.legendItemSymbol.attr({fill:k,stroke:k}),g.legendItemText&&g.legendItemText.attr({fill:k}),g.legendItemLine&&g.legendItemLine.attr({stroke:k})}else for(g.legendItemSymbol&&g.legendItemSymbol.attr({fill:n,
stroke:e}),g.legendItemText&&g.legendItemText.attr({fill:f}),g.legendItemLine&&g.legendItemLine.attr({stroke:n}),d=m+1;d<=m+t;d++)if(g=(e=this.components.items[d])&&e.graphics)e=e.config,f=c.color,n=e.fillColor,e=e.strokeColor,g.legendItemSymbol&&g.legendItemSymbol.attr({fill:n,stroke:e}),g.legendItemText&&g.legendItemText.attr({fill:f}),g.legendItemLine&&g.legendItemLine.attr({stroke:n})},show:function(){var a=this.graphics.upperBoxContainer,b=this.graphics.lowerBoxContainer,c=this.graphics.medianContainer,
d=this.graphics.upperWhiskerContainer,e=this.graphics.lowerWhiskerContainer,g=this.graphics.dataLabelContainer,k=this.graphics.shadowContainer,f=this.chart,n=this.yAxis;f._chartAnimation();this.visible=!0;this.components.outliers.visible=!0;this._conatinerHidden=!1;a.show();b.show();c.show();d.show();e.show();g.show();k.show();for(a=0;a<this.config.maxNumberOfOutliers;a++)this.components.outliers[a].show();f._setAxisLimits();n.draw();f._drawDataset();this.components.mean.show();this.components.sd.show();
this.components.qd.show();this.components.md.show()},hide:function(){var a=this.chart,b=this.yAxis,c,d;a._chartAnimation();this.visible=!1;c=this.config.maxNumberOfOutliers;for(d=0;d<c;d++)this.components.outliers[d].hide();a._setAxisLimits();b.draw();a._drawDataset();this.components.mean.hide();this.components.sd.hide();this.components.qd.hide();this.components.md.hide();c=this.config.maxNumberOfOutliers||this.components.outliers.length;this.components.outliers.visible=!1;for(d=0;d<c;d++)this.components.outliers[d].visible=
!1,this.components.outliers[d].draw()}},"Column",{showplotborder:void 0,plotborderdashlen:void 0,plotborderdashgap:void 0,plotfillalpha:void 0,useroundedges:void 0,ratio:void 0,plotborderthickness:void 0,showvalues:void 0,valuepadding:void 0,showtooltip:void 0,maxcolwidth:void 0,rotatevalues:void 0,use3dlighting:void 0,whiskerslimitswidthratio:void 0,outliersupperrangeratio:void 0,outlierslowerrangeratio:void 0,showalloutliers:void 0,showmean:void 0,showsd:void 0,showmd:void 0,showqd:void 0,showminvalues:void 0,
showmaxvalues:void 0,showq1values:void 0,showq3values:void 0,showmedianvalues:void 0}])}]);Y.register("module",["private","modules.renderer.js-dataset-subds",function(){Y.register("component",["dataset","subDS",{show:function(){var a=this.chart,b=this.yAxis;a._chartAnimation();this.visible=!0;this._conatinerHidden=!1;a.config.transposeAxis&&(a._setAxisLimits(),b.draw());this.draw()},hide:function(){var a=this.chart,b=this.yAxis;a._chartAnimation();this.visible=!1;a.config.transposeAxis&&(a._setAxisLimits(),
b.draw());this.draw()},getEventArgs:function(){return{datasetName:this.name,datasetIndex:this.index,id:(this.config||{}).userID,visible:this.visible}},legendInteractivity:function(a,b){var z=this.config,U=a.visible,aa=b.config,O=b.graphics,S=z.itemHiddenStyle.color,z=z.itemStyle.color,L=aa.fillColor,N,R=aa.strokeColor;U?a.hide():a.show();U={legendItemSymbol:{fill:U?S:L,stroke:U?S:R},legendItemText:{fill:U?S:z},legendItemLine:{stroke:U?S:aa.lineAttr&&aa.lineAttr.stroke}};for(N in O)(aa=O[N])&&U[N]&&
aa.attr(U[N])}},"Line"])}]);Y.register("module",["private","modules.renderer.js-dataset-heatmap",function(){var a=this.hcLib,b=a.preDefStr,z=b.colors.FFFFFF,U=b.configStr,aa=b.animationObjStr,O=b.showHoverEffectStr,S=b.columnStr,L=b.shadowStr,N=b.dataLabelStr,R=b.miterStr,I=b.hiddenStr,M=b.visibleStr,u=a.ZEROSTRING,A=b.pStr,m=b.sStr,H=b.POSITION_START,D=b.POSITION_TOP,f=b.POSITION_END,V=b.POSITION_BOTTOM,K=b.NORMAL,Q=a.BLANKSTRING,n=a.BLANKSTRING,d=a.pluck,w=a.getValidValue,e=a.pluckNumber,Z=a.toRaphaelColor,
P=a.regex.dropHash,t=a.HASHSTRING,T=a.schedular,da=function(a){return void 0!==a&&null!==a},B="rgba(192,192,192,"+(a.isIE?.002:1E-6)+")",b=a.TOUCH_THRESHOLD_PIXELS,x=a.CLICK_THRESHOLD_PIXELS,c=Math,E=c.round,C=c.min,la=c.max,g=a.hasTouch?b:x,J=a.setLineHeight,W=a.graphics.getLightColor,v=a.graphics.convertColor,k=a.HUNDREDSTRING;Y.register("component",["dataset","HeatMap",{type:"heatmap",configure:function(){var b=this.chart,c=b.components,g=c.postLegendInitFn,f=c.gradientLegend,t=b.config.style,
p=this.config,y=b.jsonData,r=this.JSONData,x=r.data,u=b.singleseries,B=x&&x.length,D=b.jsonData.chart,I=b.components.colorManager,H,P=p.plotColor=I.getPlotColor(this.index||this.positionIndex),N=e(r.dashed,D.plotborderdashed),M=e(D.useplotgradientcolor,1),L=e(D.showtooltip,1),T=a.parseUnsafeString,O=T(D.yaxisname),U=T(D.xaxisname),S=T(d(D.tooltipsepchar,": ")),V=a.parseTooltext,aa,R,Y,da,Ea,ta,Fa,wa,na,ka,pa,ia,ga,ra,fa,ha,ca,ya,xa,X,ua,sa,za,Ca=y.colorrange||{},Ha=b.components.xAxis[0],qa=b.components.yAxis[0],
Aa,Sa,Ia=p.mapByPercent=e(Ca.mapbypercent,0),ja=p.mapByCategory=e(D.mapbycategory,0),yb=b.jsonData,db=yb.colorrange&&e(yb.colorrange.gradient),Rb=a.nonGradientColorRange,Eb,Lb,qb,gb,Fb,Gb,Mb,hb,rb,Ga,Yb,Nb,$a,Qb=a.getDashStyle,zb=this.components.data,mb=this.components.plotGrid=[],Qa=b.components.numberFormatter,Ta,nb,Kb=b.isBar,cb=b.is3D,Hb,ib,jb,Ab,sb,La,eb,ub,Ma=-Infinity,tb=Infinity,ab,oa,Zb=w(D.tltype,Q),Da=w(D.trtype,Q),kb=w(D.bltype,Q),lb=w(D.brtype,Q),bb,Ib,Ba,Za,Sb=Q,Tb=Q,Ob=Q,Pb=Q,Wa,Jb,
fb,vb,wb,Ub,$b=y.rows.row.length,ec=y.columns.column.length,Vb;for(eb=0;eb<$b;eb++)for(mb.push([]),ub=0;ub<ec;ub++)mb[eb].push([]);H=p.showplotborder=e(D.showplotborder,cb?0:1);p.plotDashLen=Fa=e(D.plotborderdashlen,5);p.plotDashGap=wa=e(D.plotborderdashgap,4);p.plotfillAngle=ia=e(360-D.plotfillangle,Kb?180:90);p.plotFillAlpha=ga=d(r.alpha,D.plotfillalpha,k);p.plotColor=P=d(r.color,P);p.isRoundEdges=ka=e(D.useroundedges,0);p.plotRadius=e(D.useRoundEdges,p.isRoundEdges?1:0);p.plotFillRatio=ra=d(r.ratio,
D.plotfillratio);p.plotgradientcolor=fa=a.getDefinedColor(D.plotgradientcolor,I.getColor("plotGradientColor"));!M&&(fa=n);p.plotBorderAlpha=ha=H?d(D.plotborderalpha,ga,k):0;p.plotBorderColor=ca=d(D.plotbordercolor,cb?z:I.getColor("plotBorderColor"));p.plotBorderThickness=na=e(D.plotborderthickness,1);p.plotBorderDashStyle=xa=N?Qb(Fa,wa,na):"none";p.showValues=e(r.showvalues,D.showvalues,1);p.valuePadding=e(D.valuepadding,2);p.enableAnimation=Hb=e(D.animation,D.defaultanimation,1);p.animation=Hb?{duration:1E3*
e(D.animationduration,1)}:!1;p.transposeAnimation=e(D.transposeanimation,Hb);p.transposeAnimDuration=1E3*e(D.transposeanimduration,.2);p.showShadow=ka||cb?e(D.showshadow,1):e(D.showshadow,I.getColor("showShadow"));p.showHoverEffect=pa=e(D.plothovereffect,D.showhovereffect,void 0);p.showTooltip=e(D.showtooltip,1);p.definedGroupPadding=la(e(D.plotspacepercent),0);p.plotSpacePercent=la(e(D.plotspacepercent,20)%100,0);p.maxColWidth=e(Kb?D.maxbarheight:D.maxcolwidth,50);p.plotPaddingPercent=e(D.plotpaddingpercent);
p.rotateValues=e(D.rotatevalues)?270:0;p.placeValuesInside=e(D.placevaluesinside,0);fb=t.inCanfontFamily;vb=parseInt(t.inCanfontSize,10);wb=t.inCancolor;p.tlLabelStyle={fontFamily:d(D.tlfont,fb),fontSize:e(D.tlfontsize,vb)+"px",color:v(d(D.tlfontcolor,wb),100),fontWeight:K,fontStyle:K};J(p.tlLabelStyle);p.trLabelStyle={fontFamily:d(D.trfont,fb),fontSize:e(D.trfontsize,vb)+"px",color:v(d(D.trfontcolor,wb),100),fontWeight:K,fontStyle:K};p.brLabelStyle={fontFamily:d(D.brfont,fb),fontSize:e(D.brfontsize,
vb)+"px",color:v(d(D.brfontcolor,wb),100),fontWeight:K,fontStyle:K};p.blLabelStyle={fontFamily:d(D.blfont,fb),fontSize:e(D.blfontsize,vb)+"px",color:v(d(D.blfontcolor,wb),100),fontWeight:K,fontStyle:K};p.use3DLighting=e(D.use3dlighting,1);p.parentYAxis=ib=d(r.parentyaxis&&r.parentyaxis.toLowerCase(),A)===m?1:0;zb||(zb=this.components.data=[]);for(La=0;La<B;La++)X=x&&x[La],za=(sa=zb[La])&&sa.config,sa||(sa=zb[La]={graphics:{}}),sa.config||(za=zb[La].config={}),za.showValue=e(X.showvalue,p.showValues),
za.setValue=ua=Qa.getCleanValue(X.value),za.setLink=d(X.link),za.toolTipValue=Ta=Qa.dataLabels(ua,ib),za.setDisplayValue=nb=T(X.displayvalue),za.displayValue=d(nb,Ta),jb=e(X.dashed),Ab=e(X.dashlen,Fa),sb=wa=e(X.dashgap,wa),Ma=la(Ma,ua),tb=C(tb,ua),za.plotBorderDashStyle=ya=1===jb?Qb(Ab,sb,na):0===jb?"none":xa,u?(P=I.getPlotColor(La),P=d(X.color,P),ra=d(X.ratio,p.plotFillRatio)):P=d(X.color,p.plotColor),za.plotFillAlpha=ga=d(X.alpha,p.plotFillAlpha),0>ua&&!ka&&(Ea=ia,ia=Kb?180-ia:360-ia),za.colorArr=
a.graphics.getColumnColor(P+","+p.plotgradientcolor,ga,ra=p.plotFillRatio,ia,ka,p.plotBorderColor,ha.toString(),Kb?1:0,cb?!0:!1),aa=za.toolTipValue,Ea&&(ia=Ea);p.maxValue=Ma;p.minValue=tb;ab=Ma-tb;if(db&&!ja)g({min:tb,max:Ma}),this.components.colorRange=Ca=f.colorRange;else{this.components.colorRange=Ca=new Rb({colorRange:y.colorrange,dataMin:tb,dataMax:Ma,sortLegend:0,mapByCategory:ja,defaultColor:"cccccc",numberFormatter:Qa});p.colorMap=[];for(La=0;La<Ca.colorArr.length;La++)p.colorMap[La]={config:Ca.colorArr[La],
dataSet:this},p.colorMap[La].config.visible=!0;0===p.colorMap.length&&(b.setChartMessage(),f&&f.elem&&f.elem.gl.carpet.group.hide())}for(La=0;La<B;La++)X=x&&x[La],za=(sa=zb[La])&&sa.config,za.percentValue=Ia?Wa=X.value&&E((X.value-tb)/ab*1E4)/100:void 0,za.value=Ub=ja?X.colorrangelabel||X.categoryid:Ia?Wa:za.setValue,db&&!ja?Vb=Ca.getColorByValue(Ub):(oa=Ca.getColorObj(Ub),sa.legendItemIndex=oa.seriesIndex),void 0===oa&&void 0===Vb?za.visible=!1:oa&&oa.outOfRange?(za.visible=!1,za.displayValue=n):
(za.visible=!0,P=d(X.color,oa&&oa.code||Vb),za.color=v(P,d(X.alpha,p.plotFillAlpha)),0!==pa&&(Eb=d(X.hovercolor,r.hovercolor,D.plotfillhovercolor,D.columnhovercolor,P),Lb=d(X.hoveralpha,r.hoveralpha,D.plotfillhoveralpha,D.columnhoveralpha,"25"),qb=d(X.hovergradientcolor,r.hovergradientcolor,D.plothovergradientcolor,fa),!qb&&(qb=n),gb=d(X.hoverratio,r.hoverratio,D.plothoverratio,ra),Fb=e(360-X.hoverangle,360-r.hoverangle,360-D.plothoverangle,ia),Gb=d(X.borderhovercolor,r.borderhovercolor,D.plotborderhovercolor,
ca),Mb=d(X.borderhoveralpha,r.borderhoveralpha,D.plotborderhoveralpha,ha,ga),hb=e(X.borderhoverthickness,r.borderhoverthickness,D.plotborderhoverthickness,na),rb=e(X.borderhoverdashed,r.borderhoverdashed,D.plotborderhoverdashed),Ga=e(X.borderhoverdashgap,r.borderhoverdashgap,D.plotborderhoverdashgap,Fa),Yb=e(X.borderhoverdashlen,r.borderhoverdashlen,D.plotborderhoverdashlen,wa),Nb=rb?Qb(Yb,Ga,hb):ya,1==pa&&Eb===P&&(Eb=W(Eb,70)),$a=a.graphics.getColumnColor(Eb,Lb,gb,Fb,ka,Gb,Mb.toString(),Kb?1:0,cb?
!0:!1),za.setRolloutAttr={fill:Z(za.color),stroke:H&&Z($a[1]),"stroke-width":na,"stroke-dasharray":ya},za.setRolloverAttr={fill:Z($a[0]),stroke:H&&Z($a[1]),"stroke-width":hb,"stroke-dasharray":Nb}),Ia&&(Wa=Qa.percentValue(Wa)),za.setValue=ua=Qa.getCleanValue(X.value),za.toolTipValue=Ta=Qa.dataLabels(ua,ib),aa=za.toolTipValue,Y=w(T(d(X.tooltext,r.plottooltext,D.plottooltext))),za.tlLabel=bb=T(d(X.tllabel,X.ltlabel)),za.trLabel=Ib=T(d(X.trlabel,X.rtlabel)),za.blLabel=Ba=T(d(X.bllabel,X.lblabel)),za.brLabel=
Za=T(d(X.brlabel,X.rblabel)),nb=w(T(X.displayvalue)),Jb=ja?nb:d(X.displayvalue,aa),za.displayValue=d(nb,Wa,za.toolTipValue),Zb!==Q&&(Sb="<b>"+Zb+S+"</b>"),Da!==Q&&(Tb="<b>"+Da+S+"</b>"),kb!==Q&&(Ob="<b>"+kb+S+"</b>"),lb!==Q&&(Pb="<b>"+lb+S+"</b>"),Aa=Ha.getCategoryFromId(x[La].columnid.toLowerCase()),Sa=qa.getCategoryFromId(x[La].rowid.toLowerCase()),L?(null===aa?ta=!1:void 0!==Y?(da=[1,2,5,6,7,14,93,94,95,96,97,98,112,113,114,115,116,117],R={formattedValue:aa,value:X.value,yaxisName:O,xaxisName:U,
displayValue:nb,percentValue:Ia?Wa:Q,tlLabel:bb,trLabel:Ib,blLabel:Ba,brLabel:Za,rowLabel:Sa.catObj&&Sa.catObj.label,columnLabel:Aa.catObj&&Aa.catObj.label,percentDataValue:Ia?Wa:Q,trtype:Da,tltype:Zb,brType:lb,blType:kb,colorRangeLabel:za.colorRangeLabel},ta=V(Y,da,R,X,D,R)):ta=(Ia?"<b>Value"+S+"</b>"+aa+"<br /><b>Percentage"+S+"</b>"+Wa:Jb)+(bb!==Q?"<br />"+(Sb+bb):Q)+(Ib!==Q?"<br />"+Tb+Ib:Q)+(Ba!==Q?"<br />"+Ob+Ba:Q)+(Za!==Q?"<br />"+Pb+Za:Q),za.toolText=ta,za.setTooltext=ta):za.toolText=!1);
!1===b.hasLegend||db&&!ja||this._addLegend()},init:function(a){var b=this.chart,c=b.components,d=a.parentyaxis&&a.parentyaxis.toLowerCase()===m?1:0,c=c.yAxis[d];if(!a)return!1;this.JSONData=a;this.yAxis=c;this.chartGraphics=b.chartGraphics;this.components={};this.graphics={};this.visible=1===e(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);this.configure()},_addLegend:function(){var a=this.components.data,b=this.chart,c=b.jsonData.chart,d,g,f=this.config.colorMap,n=this.components.colorRange,
r,m,w,v;m=b.components.legend;c=e(c.us3dlighting,c.useplotgradientcolor,1);m.emptyItems();m=0;for(w=f.length;m<w;m++)v=f[m],r=n.colorArr[m].code,d=W(r,60).replace(P,t),W(r,40),c?(g=W(r,40),g={FCcolor:{color:r+","+r+","+g,ratio:"0,70,30",angle:270,alpha:"100,100,100"}}):g={FCcolor:{color:r,angle:0,ratio:u,alpha:k}},d={fillColor:Z(g),label:v.config.label,rawFillColor:r,strokeColor:Z(d),datasetObj:this},f[m].legendItemId=b.components.legend.addItems(v,this.legendInteractivity,d);for(m=0;m<a.length;m++)for(c=
n.getColorObj(a[m].config.value).code,b=0;b<f.length;b++)if(f[b].config.code==c){a[m].legendItemId=f[b].legendItemId;a[m].datasetIndex=b;a[m].datasetName=f[b].config.label;break}},legendInteractivity:function(a,b){var c=this.config,d=a.config.visible,e=a.dataSet,g=b.config,k=b.graphics,f=c.itemHiddenStyle.color,c=c.itemStyle.color,n=g.fillColor,g=g.strokeColor;d?e.hide(a):e.show(a);d?(k.legendItemSymbol&&k.legendItemSymbol.attr({fill:f,stroke:f}),k.legendItemText&&k.legendItemText.attr({fill:f}),
k.legendIconLine&&k.legendIconLine.attr({stroke:f})):(k.legendItemSymbol&&k.legendItemSymbol.attr({fill:n,stroke:g}),k.legendItemText&&k.legendItemText.attr({fill:c}),k.legendIconLine&&k.legendIconLine.attr({stroke:n}))},hide:function(a){var b=this.components.data,c=this.chart.get(U,aa),d=c.animType,e=c.animObj,g=c.dummyObj,c=c.duration,k=this.components.colorRange,f,n,m,t,w;t=a.config.code;f=0;for(n=b.length;f<n;f++)w=k.getColorObj(b[f].config.value).code,m=b[f].config,t===w&&(b[f].graphics.element&&
b[f].graphics.element.animateWith(g,e,{"fill-opacity":0,"stroke-width":0},c,d),b[f].graphics.hotElement&&b[f].graphics.hotElement.hide(),b[f].graphics.valEle&&b[f].graphics.valEle.hide(),b[f].graphics.tlLabel&&b[f].graphics.tlLabel.hide(),b[f].graphics.trLabel&&b[f].graphics.trLabel.hide(),b[f].graphics.blLabel&&b[f].graphics.blLabel.hide(),b[f].graphics.brLabel&&b[f].graphics.brLabel.hide(),m.visible=!1,b[f].visible=!1);a.visible=!1;a.config.visible=!1},show:function(a){var b=this.components.data,
c=this.config,d=this.chart.get(U,aa),e=d.animType,g=d.animObj,k=d.dummyObj,d=d.duration,f,n,m=this.components.colorRange,t,w,v,x;v=a.config.code;t=0;for(w=b.length;t<w;t++)f=b[t].config,n=f.plotFillAlpha/100,x=m.getColorObj(b[t].config.value).code,v===x&&(b[t].graphics.element&&b[t].graphics.element.attr({visibility:M}).animateWith(k,g,{"fill-opacity":n,"stroke-width":c.plotBorderThickness},d,e),b[t].graphics.hotElement&&b[t].graphics.hotElement.show(),b[t].graphics.valEle&&b[t].graphics.valEle.show(),
b[t].graphics.tlLabel&&b[t].graphics.tlLabel.show(),b[t].graphics.trLabel&&b[t].graphics.trLabel.show(),b[t].graphics.blLabel&&b[t].graphics.blLabel.show(),b[t].graphics.brLabel&&b[t].graphics.brLabel.show(),f.visible=!0,b[t].visible=!0);a.visible=!0;a.config.visible=!0},updatePlot:function(a,b){var c=this.config,d=this.chart.get(U,aa),e=d.animType,g=d.animObj,k=d.dummyObj,d=d.duration,f,n,t=this.components.data,m,w,v;m=0;for(w=t.length;m<w;m++)f=t[m].config,n=f.plotFillAlpha/100,v=t[m].config.value,
v<a||v>b?f.visible&&(t[m].graphics.element&&t[m].graphics.element.animateWith(k,g,{"fill-opacity":0,"stroke-width":0},d,e),t[m].graphics.hotElement&&t[m].graphics.hotElement.hide(),t[m].graphics.valEle&&t[m].graphics.valEle.hide(),t[m].graphics.tlLabel&&t[m].graphics.tlLabel.hide(),t[m].graphics.trLabel&&t[m].graphics.trLabel.hide(),t[m].graphics.blLabel&&t[m].graphics.blLabel.hide(),t[m].graphics.brLabel&&t[m].graphics.brLabel.hide(),f.visible=!1,t[m].visible=!1):f.visible||(t[m].graphics.element&&
t[m].graphics.element.animateWith(k,g,{"fill-opacity":n,"stroke-width":c.plotBorderThickness},d,e),t[m].graphics.hotElement&&t[m].graphics.hotElement.show(),t[m].graphics.valEle&&t[m].graphics.valEle.show(),t[m].graphics.tlLabel&&t[m].graphics.tlLabel.show(),t[m].graphics.trLabel&&t[m].graphics.trLabel.show(),t[m].graphics.blLabel&&t[m].graphics.blLabel.show(),t[m].graphics.brLabel&&t[m].graphics.brLabel.show(),f.visible=!0,t[m].visible=!0)},_checkPointObj:function(a,b,c,d){var e=this.components.plotGrid,
g=this.chart.config,k=g.viewPortConfig,f=k.x,t=k.scaleX,k=g.plotborderthickness,g=g.showplotborder;a=e[b]&&e[b][a];k=g?k:0;b=k/2;b=0===b%2?b+1:Math.round(b);if(a&&a.config&&a.config.visible&&(c=c-(a._xPos-f*t)+b,d=d-a._yPos+b,d=0<=c&&c<=a._width+k&&0<=d&&d<=a._height+k))return{pointIndex:a._index,hovered:d,pointObj:a}},_getHoveredPlot:function(a,b){var c=this.chart,d=c.config,e=c.components.xAxis[0],g=c.components.canvas.config,g=Math.max(g.canvasPaddingLeft,g.canvasPadding),k=d.canvasLeft,c=c.components.yAxis[0].getValue(b+
c.config.canvasHeight/c.jsonData.rows.row.length/2-d.canvasTop-g),d=Math.floor(c),e=e.getValue(a-k-g),g=Math.round(e);return 0<g-e?.5<c-d?this._checkPointObj(g,d,a,b)||this._checkPointObj(g-1,d,a,b):this._checkPointObj(g,d-1,a,b)||this._checkPointObj(g,d,a,b):.5<c-d?this._checkPointObj(g+1,d,a,b)||this._checkPointObj(g,d,a,b):this._checkPointObj(g,d-1,a,b)||this._checkPointObj(g+1,d,a,b)||this._checkPointObj(g,d,a,b)},draw:function(){var b=this.config,c=this.JSONData.data,d,e,k,f=this.visible,t=this.chart,
m=t.getJobList(),w=t.components.paper,v=t.components.xAxis[0],x=t.components.yAxis[0],u=t.components.gradientLegend;d=t.graphics.datasetGroup;var z,A,C=t.graphics,E=t.config.showtooltip,D=t.get(U,aa),J=D.animType,H=D.animObj,P=D.dummyObj,K=D.duration,Q,W,V,Y=this.components.data,da;k=t.components.canvas.config.clip["clip-canvas"].slice(0);var la,Ea,ta,Fa=x.getAxisBase();e=x.yBasePos=x.getAxisPosition(Fa);V=0;var Fa=b.showShadow,wa=b.plotBorderThickness,na=b.plotRadius,ka=this.graphics.container;W=
this.graphics.dataLabelContainer;var pa=this.graphics.shadowContainer;ta=C.datalabelsGroup;var ia,C=t.components.legend.config.isActive,ga=this.components.plotGrid,ra,fa,ha,ca=[],ya=(this.components.removeDataArr||[]).length,xa=b.showHoverEffect,X;u&&u.enabled&&(u.resetLegend(),u.clearListeners());u.notifyWhenUpdate(this.updatePlot,this);ka||(ka=this.graphics.container=w.group(S,d),ka.attr({"clip-rect":k}),f||ka.hide());pa||(pa=this.graphics.shadowContainer=w.group(L,d).toBack(),f||pa.hide());W||
(W=this.graphics.dataLabelContainer=w.group(N,ta),f||W.hide());d=c&&c.length;ra=t.config.canvasWidth/t.jsonData.columns.column.length;W=t.config.canvasHeight/t.jsonData.rows.row.length;for(k=0;k<d;k++)if(da=Y[k],X=da.trackerConfig={},ta=da&&da.config,e=ta.setValue,u&&u.enabled&&!C&&(ta.visible=!0),fa=v.getCategoryFromId(c[k].columnid.toLowerCase()),ha=x.getCategoryFromId(c[k].rowid.toLowerCase()),fa.catObj&&ha.catObj&&ta.value!==n)if(b.mapByCategory||null!==e){z=fa.index.toString()+ha.index.toString();
ca.push(z);la=ta.setLink;ia=ta.colorArr;da.graphics||(Y[k].graphics={});Ea=ta.displayValue;z=v.getAxisPosition(fa.index)-ra/2;A=x.getAxisPosition(ha.index)-W/2;Q=ra;(V=ta.toolText)&&(ta.finalTooltext=V);da.graphics.valEle&&da.graphics.valEle.hide();da.graphics.tlLabel&&da.graphics.tlLabel.hide();da.graphics.trLabel&&da.graphics.trLabel.hide();da.graphics.blLabel&&da.graphics.blLabel.hide();da.graphics.brLabel&&da.graphics.brLabel.hide();X.eventArgs={index:k,link:la,value:ta.percentValue||e,displayValue:Ea,
columnId:fa.catObj.id,rowId:ha.catObj.id,tlLabel:ta.tlLabel,trLabel:ta.trLabel,blLabel:ta.blLabel,brLabel:ta.brLabel,toolText:V?V:"",id:n,datasetIndex:C?da.datasetIndex:void 0,datasetName:C?da.datasetName:void 0,visible:f};e=A;V=W;e={x:z,y:e,width:Q,height:V||1,r:na,ishot:!E,fill:ta.color,stroke:Z(ia[1]),"stroke-width":K?0:wa,"stroke-dasharray":void 0,"fill-opacity":K?0:ta.plotFillAlpha/100,"stroke-linejoin":R,visibility:ta.visible?M:I,cursor:la?"pointer":n};da._xPos=z;da._yPos=A;da._height=W;da._width=
Q;da._index=k;ga[ha.index][fa.index]=da;da.graphics.element?(e={x:z,y:A,width:Q,height:W||1},da=da.graphics.element,da.animateWith(P,H,e,K,D.animType),da.attr({ishot:!E,fill:ta.color,stroke:Z(ia[1]),"fill-opacity":ta.visible?ta.plotFillAlpha/100:0,"stroke-width":ta.visible?wa:0,"stroke-dasharray":void 0,"stroke-linejoin":R,visibility:ta.visible?M:I,cursor:la?"pointer":n}),ta.elemCreated=!1):(da=da.graphics.element=w.rect(e,ka),da.animateWith(P,H,{"fill-opacity":ta.plotFillAlpha/100,"stroke-width":wa},
K,J),ta.elemCreated=!0);da.shadow({opacity:Fa},pa).data("BBox",void 0);if(la||E)W<g&&(A-=(g-W)/2,W=g),X.attr={x:z,y:A,width:Q,height:W,r:na,cursor:la?"pointer":n,stroke:B,"stroke-width":wa,fill:B,ishot:!0,visibility:ta.visible?M:I};t.config.enablemousetracking&&da.data("eventArgs",X.eventArgs).data(O,xa).data("setRolloverAttr",ta.setRolloverAttr||{}).data("setRolloutAttr",ta.setRolloutAttr||{})}else da.graphics.element&&da.graphics.element.hide(),da.graphics.hotElement&&da.graphics.hotElement.hide();
this.drawn?this.drawLabel():m.labelDrawID.push(T.addJob(this.drawLabel.bind(this),a.priorityList.label));this.drawn=!0;ya&&this.remove()},drawLabel:function(){var a=this.chart,b=a.config,c=a.graphics,d=a.components.paper,e=a.linkedItems.smartLabel,g=a.config.dataLabelStyle,k=this.config,t=this.JSONData.data.length,m=this.components.data,w=this.visible,v,x,u,B,z,A,C=this.graphics.dataLabelContainer,E=this.graphics.tlLabelContainer,J=this.graphics.blLabelContainer,P=this.graphics.trLabelContainer,K=
this.graphics.brLabelContainer,T,L,Z,O,W,S,R,Y,la,wa,na,ka,pa,ia,a=a.get(U,aa),ga=a.animObj,ra=a.dummyObj,fa=a.duration,c=c.datalabelsGroup;C||(C=this.graphics.dataLabelContainer=d.group(N,c),w||C.hide());E||(E=this.graphics.tlLabelContainer=d.group("tlLabel",c));J||(J=this.graphics.blLabelContainer=d.group("blLabel",c));P||(P=this.graphics.trLabelContainer=d.group("trLabel",c));K||(K=this.graphics.brLabelContainer=d.group("brLabel",c));w=k.tlLabelStyle;c=k.trLabelStyle;T=k.blLabelStyle;L=k.brLabelStyle;
v={fontFamily:w.fontFamily,fontSize:w.fontSize,lineHeight:w.lineHeight,fontWeight:w.fontWeight,fontStyle:w.fontStyle};u={fontFamily:c.fontFamily,fontSize:c.fontSize,lineHeight:c.lineHeight,fontWeight:c.fontWeight,fontStyle:c.fontStyle};Z={fontFamily:T.fontFamily,fontSize:T.fontSize,lineHeight:T.lineHeight,fontWeight:T.fontWeight,fontStyle:T.fontStyle};O={fontFamily:L.fontFamily,fontSize:L.fontSize,lineHeight:L.lineHeight,fontWeight:L.fontWeight,fontStyle:L.fontStyle};e.useEllipsesOnOverflow(b.useEllipsesWhenOverflow);
e.setStyle(g);E.css(v);J.css(Z);P.css(u);K.css(O);for(v=0;v<t;v++)if(b=m[v],void 0!==b&&(u=b.graphics))if(u=b&&b.config,Z=u.setValue,k.mapByCategory||null!==Z){if(x=u.displayValue,Z=b.graphics.element)Z=b._width,O=b._height,W=b._xPos,S=b._yPos,e.setStyle(g),da(x)&&x!==Q&&u.showValue?(R=e.getSmartText(x,Z,O,!1),x=R.text,B=S+.5*O,z=W+.5*Z,b.graphics.valEle?(b.graphics.valEle.animateWith(ra,ga,{x:z,y:B},fa,a.animType),b.graphics.valEle.attr({text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:g.color,
direction:u.textDirection,"text-bound":[g.backgroundColor,g.borderColor,g.borderThickness,g.borderPadding,g.borderRadius,g.borderDash]})):(x={text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:g.color,direction:u.textDirection,x:z,y:B,"text-bound":[g.backgroundColor,g.borderColor,g.borderThickness,g.borderPadding,g.borderRadius,g.borderDash]},b.graphics.valEle=d.text(x,C)),u.visible&&b.graphics.valEle.show(),x=u.tlLabel,z=u.trLabel,Y=u.blLabel,la=u.brLabel,A=da(x)&&x!==Q,wa=da(z)&&z!==Q,na=
da(Y)&&Y!==Q,ka=da(la)&&la!==Q,pa=Z*(A&&wa?.5:.9),ia=.5*(O-(R&&R.height||0)),B=S+4,A?(e.setStyle(w),R=e.getSmartText(x,pa,ia,!1),x=R.text,A=W,b.graphics.tlLabel?(b.graphics.tlLabel.animateWith(ra,ga,{x:A+4,y:B},fa,a.animType),b.graphics.tlLabel.attr({text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:w.color,"text-anchor":H,"vertical-align":D,direction:u.textDirection,"text-bound":[w.backgroundColor,w.borderColor,w.borderThickness,w.borderPadding,w.borderRadius,w.borderDash]})):(x={text:x,title:R.tooltext||
n,visibility:u.visible?M:I,fill:w.color,"text-anchor":H,"vertical-align":D,direction:u.textDirection,x:A+4,y:B,"text-bound":[w.backgroundColor,w.borderColor,w.borderThickness,w.borderPadding,w.borderRadius,w.borderDash]},b.graphics.tlLabel=d.text(x,E)),u.visible&&b.graphics.tlLabel.show()):b.graphics.tlLabel&&(b.graphics.tlLabel.remove(),delete b.graphics.tlLabel),wa?(e.setStyle(c),R=e.getSmartText(z,pa,ia,!1),x=R.text,A=W+Z,b.graphics.trLabel?(b.graphics.trLabel.animateWith(ra,ga,{x:A-4,y:B},fa,
a.animType),b.graphics.trLabel.attr({text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:c.color,"text-anchor":f,"vertical-align":D,direction:u.textDirection,"text-bound":[c.backgroundColor,c.borderColor,c.borderThickness,c.borderPadding,c.borderRadius,c.borderDash]})):(x={text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:c.color,"text-anchor":f,"vertical-align":D,direction:u.textDirection,x:A-4,y:B,"text-bound":[c.backgroundColor,c.borderColor,c.borderThickness,c.borderPadding,c.borderRadius,
c.borderDash]},b.graphics.trLabel=d.text(x,P)),u.visible&&b.graphics.trLabel.show()):b.graphics.trLabel&&(b.graphics.trLabel.remove(),delete b.graphics.trLabel),B=S+O-4,na?(e.setStyle(T),R=e.getSmartText(Y,pa,ia,!1),x=R.text,A=W,b.graphics.blLabel?(b.graphics.blLabel.animateWith(ra,ga,{x:A+4,y:B},fa,a.animType),b.graphics.blLabel.attr({text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:T.color,"text-anchor":H,"vertical-align":V,direction:u.textDirection,"text-bound":[T.backgroundColor,T.borderColor,
T.borderThickness,T.borderPadding,T.borderRadius,T.borderDash]})):(x={text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:T.color,"text-anchor":H,"vertical-align":V,direction:u.textDirection,x:A+4,y:B,"text-bound":[T.backgroundColor,T.borderColor,T.borderThickness,T.borderPadding,T.borderRadius,T.borderDash]},b.graphics.blLabel=d.text(x,J)),u.visible&&b.graphics.blLabel.show()):b.graphics.blLabel&&(b.graphics.blLabel.remove(),delete b.graphics.blLabel),ka?(e.setStyle(T),R=e.getSmartText(la,pa,
ia,!1),x=R.text,A=W+Z-4,b.graphics.brLabel?(b.graphics.brLabel.animateWith(ra,ga,{x:A,y:B},fa,a.animType),b.graphics.brLabel.attr({text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:L.color,"text-anchor":f,"vertical-align":V,direction:u.textDirection,"text-bound":[L.backgroundColor,L.borderColor,L.borderThickness,L.borderPadding,L.borderRadius,L.borderDash]})):(x={text:x,title:R.tooltext||n,visibility:u.visible?M:I,fill:L.color,"text-anchor":f,"vertical-align":V,direction:u.textDirection,x:A,
y:B,"text-bound":[L.backgroundColor,L.borderColor,L.borderThickness,L.borderPadding,L.borderRadius,L.borderDash]},b.graphics.brLabel=d.text(x,K)),u.visible&&b.graphics.brLabel.show()):b.graphics.brLabel&&(b.graphics.brLabel.remove(),delete b.graphics.brLabel)):(b.graphics.valEle&&(b.graphics.valEle.remove(),delete b.graphics.valEle),b.graphics.tlLabel&&(b.graphics.tlLabel.remove(),delete b.graphics.tlLabel),b.graphics.trLabel&&(b.graphics.trLabel.remove(),delete b.graphics.trLabel),b.graphics.blLabel&&
(b.graphics.blLabel.remove(),delete b.graphics.blLabel),b.graphics.brLabel&&(b.graphics.brLabel.remove(),delete b.graphics.brLabel))}else b.graphics.valEle&&b.graphics.valEle.hide(),b.graphics.tlLabel&&b.graphics.tlLabel.hide(),b.graphics.trLabel&&b.graphics.trLabel.hide(),b.graphics.blLabel&&b.graphics.blLabel.hide(),b.graphics.brLabel&&b.graphics.brLabel.hide();this.labelDrawn=!0},remove:function(){var a=this.components,b=a.removeDataArr,c=a.pool||(a.pool={element:[],hotElement:[],label:[]}),d=
b.length,e,g=this.maxminFlag,k,f,t;for(t=0;t<d;t++)if(e=b[0],b.splice(0,1),e&&e.graphics){f=e.graphics;for(k in f)f[k].stop(),f[k].hide();e.graphics.element&&(c.element=c.element.concat(e.graphics.element));e.graphics.hotElement&&(c.hotElement=c.hotElement.concat(e.graphics.hotElement));e.graphics.label&&(c.label=c.label.concat(e.graphics.label))}a.pool=c;g&&this.setMaxMin()},getEventArgs:function(a){var b=a.dataset.config||{};return{datasetName:b.label,datasetIndex:a.index,visible:b.visible}}},"Column"])}]);
Y.register("module",["private","modules.renderer.js-dataset-kagi",function(){var a=this.hcLib,b=this.window.Image,z=a.preDefStr,U=z.configStr,aa=z.animationObjStr,O=z.dataLabelStr,S=z.hiddenStr,L=z.ROUND,N=z.POSITION_TOP,R=z.POSITION_BOTTOM,I=z.line,M=a.BLANKSTRING,u=a.pluck,A=a.pluckNumber,m=a.toRaphaelColor,H=a.schedular,D=a.each,z=a.TOUCH_THRESHOLD_PIXELS,f=a.CLICK_THRESHOLD_PIXELS,V=Math,K=V.round,Q=V.min,n=V.max,d=V.abs,w=a.hasTouch?z:f,e=a.POSITION_RIGHT;Y.register("component",["dataset","Kagi",
{type:"kagi",_parseShadowOptions:function(){var a=this.config;return{opacity:A(this.chart.jsonData.chart.showshadow,1)?a.alpha/100:0}},configure:function(){var b,f,t=this.chart,m=t.components.xAxis[0],n=0,w,x=[],c,z,C,D,g,J,I,v,k,q,h=a.getDashStyle,l,G,F,p,y,r,H,K,L,M;k=0;var O;this.__base__.configure.call(this);b=this.components;w=b.data;c=this.config;z=this.JSONData.data;t=t.jsonData.chart;C=c.maxValue;D=c.minValue;f=b.removeDataArr||(b.removeDataArr=[]);b=!1;g=0;J=A(t.reversalvalue,-1);I=A(t.reversalpercentage,
5);for(v=0;v<w.length;v+=1)w[v].config.__nullCount=k,null===w[v].config.setValue&&(f.push(w.splice(v,1)[0]),k++,--v);if(w.length){c.rallyColor=u(t.rallycolor,"FF0000");c.rallyAlpha=A(t.rallyalpha,t.linealpha,100);c.declineColor=u(t.declinecolor,"0000FF");c.declineAlpha=A(t.declinealpha,t.linealpha,100);c.canvasPadding=A(t.canvaspadding,15);c.maxHShiftPercent=A(t.maxhshiftpercent,10);c.rallyThickness=A(t.rallythickness,t.linethickness,2);v=A(t.rallydashlen,t.linedashlen,5);k=A(t.rallydashgap,t.linedashgap,
4);c.declineThickness=A(t.declinethickness,t.linethickness,2);f=A(t.declinedashlen,t.linedashlen,5);q=A(t.declinedashgap,t.linedashgap,4);c.lineDashed={"true":A(t.rallydashed,t.linedashed,0),"false":A(t.declinedashed,t.linedashed,0)};c.rallyDashed=A(t.rallydashed,t.linedashed,0)?h(v,k,c.rallyThickness):"none";c.declineDashed=A(t.declinedashed,t.linedashed,0)?h(f,q,c.declineThickness):"none";c.canvasPadding=A(t.canvaspadding,this.canvasPadding,15);J=0<J?J:I*(C-D)/100;h=w[0].config.setValue;C=function(a,
b){for(var c,d=1,e=w[0].config.setValue;d<a;)c=w[d].config.setValue,b?c<=e&&(w[d].config.isDefined=!1):c>=e&&(w[d].config.isDefined=!1),d+=1;w[0].config.vAlign=b?R:N;w[0].config.align="center"};D=z.length;for(I=v=0;I<D;I+=1,v+=1)if(l=z[I],!l||!l.vline)if(f=w[v]&&w[v].config,G&&(G=!1),f&&(f.isDefined=!0),l.tooltext||this.JSONData.plottooltext||t.plottooltext||f&&(f.toolText+=f.displayValue),v&&f){f.isShift=void 0;F=w[v-1].config;f.vAlign="middle";f.align=e;f.showLabel=!1;k=null;q=f.setValue;p=w[v+
1]&&w[v+1].config.setValue;y=d(h-q);b?q<H&&r?r=!1:q>K&&!r&&(r=!0):(q>h&&y>J?(r=!0,H=h,K=null,b=L=!0,C(v,r)):q<h&&y>J?(r=!1,H=null,K=h,L=!1,b=!0,C(v,r)):(L=r=null,b=!1),void 0!==F&&null!==F&&(F.isRally=r),null!=r&&(w[0].config.isRally=r));f.isRally=r;if(L&&q<h||!L&&q>h)k=h;M=k?k:q;y=d(M-p);p=null==L?null:L?M>p&&y>=J:M<p&&y>=J;if(F&&F.isShift)for(L?(H=h,O=R):L||(K=h,O=N),F=v;1<F;--F)if(w[F].y==h){w[F].vAlign=O;w[F].align="center";w[F].showLabel=!0;break}p?(g+=1,G=!0,L=!L,f.isShift=!0,h=M,x.push(z[v+
f.__nullCount]),n=this._appendCategory(n,v,x,0)):L&&q>h||!L&&q<h?h=q:k=h;f.plotValue=k;f.objParams={isRally:r,lastHigh:K,lastLow:H,isRallyInitialised:b}}this._appendCategory(n,v,x,1);x.push(l);m.setCategory(x);c.shiftCount=g+1}},_appendCategory:function(a,b,d,e){var f,m,n,c=this.JSONData.catData;if(a<c.length)for(f=a;f<c.length;f+=1,a=f){m=c[f];n=m.data;m=m.index-(f+1);if(m<b)n.lineposition=A(n.lineposition,e);else if(m>b)break;d.push(n)}return a},manageSpace:function(){},_getHoveredPlot:function(a,
b){for(var d=this.chart,e=d.components.xAxis[0],f=this.config,m=f.trackIndex,n=this.components.data,c=d.components.canvas.config,c=a-d.config.canvasLeft-Math.max(c.canvasPaddingLeft,c.canvasPadding),w,d=Math.floor(Math.max(e.getValue(c-f.maxRadius))),e=Math.ceil(Math.min(e.getValue(c+f.maxRadius)));e>=d;e--)for(c=(f=m[e])&&f.length;0<=c;c--)if(w=f[c],w=this.isWithinShape(n[w],w,a,b))return w},draw:function(){var d,e,f,u=this,z=u.graphics,A=u.JSONData;d=u.chart;var x=d.getJobList(),c=d.components,
E=d.config,C=u.config,M=C.trackIndex={},g=u.components,J=g.data,N=(g=g.removeDataArr)&&g.length,v=J&&J.length,g=J&&J.length,k=c.paper,q=c.xAxis[0],h,l,c=d.graphics,G=c.datalabelsGroup,F,p,y,r,R,V,Y=u.components.data,ba,fc,hc,Xa=z.container,Ra,ic=c.datasetGroup,Ya,c=C.shadow,ob,gc=z.dataLabelContainer,Na={},pb,ma,Oa,Pa=function(){Xa.lineGroup.attr({"clip-rect":null});Xa.lineShadowGroup.show();Xa.anchorShadowGroup.show();Xa.anchorGroup.show();gc&&gc.show()},Va=!0,va=q.getAxisPosition(0),Ea=q.getAxisPosition(1)-
va,ta={"clip-rect":[n(0,E.canvasLeft),n(0,E.canvasTop),n(1,E.canvasWidth),n(1,E.canvasHeight)]},Fa={"clip-rect":[n(0,E.canvasLeft),n(0,E.canvasTop),1,n(1,E.canvasHeight)]},E=C.rallyThickness,wa=C.declineThickness,na={stroke:m({color:C.rallyColor,alpha:C.rallyAlpha}),"stroke-linecap":L,"stroke-linejoin":L,"stroke-width":E,"stroke-dasharray":C.rallyDashed},ka={stroke:m({color:C.declineColor,alpha:C.declineAlpha}),"stroke-linecap":L,"stroke-linejoin":L,"stroke-width":wa,"stroke-dasharray":C.declineDashed},
pa={"true":E,"false":wa},ia=[],ga=[],ra=z.rallyElem,fa=z.declineElem,ha=u.visible,ca=q.getAxisPosition(0),ya=J[0]&&!!J[0].isRally,xa,va=va-Ea/2,X,ua,sa,za=z.lineElement,Ca=u.pool||(u.pool={});d=d.get(U,aa);var Ha=d.duration||0,qa=d.dummyObj,Aa=d.animObj,Sa=0,Ia=d.animType,ja;C.imagesLoaded=0;N&&u.remove();if(J.length){ra&&ra.show();fa&&fa.show();Xa||(Xa=u.graphics.container={lineShadowGroup:k.group("connector-shadow",ic).attr(Fa),anchorShadowGroup:k.group("anchor-shadow",ic).attr(Fa),lineGroup:k.group(I,
ic).attr(Fa),anchorGroup:k.group("anchors",ic).attr(Fa)},ha||(Xa.lineShadowGroup.hide(),Xa.anchorShadowGroup.hide(),Xa.lineGroup.hide(),Xa.anchorGroup.hide()));Y||(Y=u.components.data=[]);gc||(gc=u.graphics.dataLabelContainer=u.graphics.dataLabelContainer||k.group(O,G),ha||gc.hide());Q(v,g);if(J[0].config.setValue)X=J[0].config.plotY;else for(d=1;d<g;d+=1)if(r=J[d].config.setValue){X=J[d].config.plotY;break}ya=!!J[0].config.isRally;d=K(X)+pa[ya]%2/2;ya?ia.push("M",va,d,"H",ca):ga.push("M",va,d,"H",
ca);D(J,function(a,c){a=a.config;ba=Y[c];Oa=ba.config;e=a.trackerConfig={};f=ba.graphics;ja=f.image;Ya=Oa.hoverEffects;r=Oa.setValue;V=Oa.displayValue;ua=J[c+1]&&J[c+1].config||{};sa=["M",ca,X];ya=a.isRally;a.isShift&&(ca+=Ea,X=a.graphY,sa.push("H",ca),sa[2]=K(sa[2])+pa[ya]%2/2,sa=sa.toString(),ya?ia.push(sa):ga.push(sa),sa=["M",ca,X]);ua.isChanged&&(X=ua.ty,sa.push("V",X),sa[1]=K(sa[1])+pa[ya]%2/2,sa=sa.toString(),ya?ia.push(sa):ga.push(sa),sa=["M",ca,X]);xa=ua.isRally;ua.graphY!==sa[2]&&(sa.push("V",
ua.graphY),sa[1]=K(sa[1])+pa[xa]%2/2,sa=sa.toString(),xa?ia.push(sa):ga.push(sa));X=ua.graphY;h=ba._xPos=q.getAxisPosition(a.plotX);l=ba._yPos=a.plotY;M[a.plotX]?M[a.plotX].push(c):(M[a.plotX]=[],M[a.plotX].push(c));ba._index=a.plotX;Na=Oa.anchorProps;ma=Na.symbol;ob=Na.shadow;F=a.finalTooltext=a.toolText;y=Oa.setLink;void 0!==l&&!isNaN(l)&&a.isDefined?(R=a.eventArgs=a.eventArgs||{},R.index=c,R.link=y,R.value=r,R.displayValue=V,R.categoryLabel=Oa.label,R.toolText=F,R.id=C.userID,R.datasetIndex=0,
R.datasetName=A.seriesname,R.visible=ha,fc=hc={},Na.imageUrl?(pb=new b,Oa.anchorImageLoaded=!1,pb.onload=u._onAnchorImageLoad(u,c,R,h,l,ba),pb.onerror=u._onErrorSetter(u,c),pb.src=Na.imageUrl,Sa++):(ja&&ja.hide(),(p=f.element)?(p.animateWith(qa,Aa,{polypath:[ma[1]||2,h,l,Na.radius,Na.startAngle,0]},Ha,Ia),Va&&Pa(),Va=!1):(p=Ca.element&&Ca.element.length?f.element=Ca.element.shift():f.element=k.polypath(Xa.anchorGroup),p.attr({polypath:[ma[1]||2,h,l,Na.radius,Na.startAngle,0]})),p.attr({fill:m({color:Na.bgColor,
alpha:Na.bgAlpha}),stroke:m({color:Na.borderColor,alpha:Na.borderAlpha}),"stroke-width":Na.borderThickness,visibility:Na.radius?ha:S}).shadow(ob,Xa.anchorShadowGroup).data("anchorRadius",Na.radius).data("anchorHoverRadius",Ya.anchorRadius).data("hoverEnabled",Ya.enabled).data("eventArgs",R),Ra=n(Na.radius,Ya&&Ya.anchorRadius||0,w)+Na.borderThickness/2,e.trackerRadius=Ra),Ya.enabled&&(hc={polypath:[Ya.anchorSides||2,h,l,Ya.anchorRadius,Ya.startAngle,Ya.dip],fill:m({color:Ya.anchorColor,alpha:Ya.anchorBgAlpha}),
stroke:m({color:Ya.anchorBorderColor,alpha:Ya.anchorBorderAlpha}),"stroke-width":Ya.anchorBorderThickness},fc={polypath:[Na.sides,h,l,Na.radius,Na.startAngle,0],fill:m({color:Na.bgColor,alpha:Na.bgAlpha}),stroke:m({color:Na.borderColor,alpha:Na.borderAlpha}),"stroke-width":Na.borderThickness},p&&p.data("anchorRadius",Na.radius).data("anchorHoverRadius",Ya.anchorRadius).data("hoverEnabled",Ya.enabled).data("setRolloverAttr",hc).data("setRolloutAttr",fc).data("eventArgs",R))):(f.element&&f.element.hide(),
ja&&ja.hide())});za||(ra||(za=ra=z.rallyElem=k.path(Xa.lineGroup)),ra.animateWith(qa,Aa,{path:ia},Va?0:Ha,Ia).attr(na).shadow(E&&c,Xa.lineShadowGroup),fa||(za=fa=z.declineElem=k.path(Xa.lineGroup)),fa.animateWith(qa,Aa,{path:ga},Va?0:Ha,Ia).attr(ka).shadow(wa&&c,Xa.lineShadowGroup));Ha&&Va||(Va=!1);C.noOfImages=C.totalImages=Sa;0===Sa&&(u.drawn?u.drawLabel():x.labelDrawID.push(H.addJob(u.drawLabel.bind(u),a.priorityList.tracker)));u.drawn=!0;Xa.anchorGroup.animateWith(qa,Aa,ta,Ha,Ia);gc.hide();Xa.lineShadowGroup.animateWith(qa,
Aa,ta,Ha,Ia);Xa.anchorShadowGroup.animateWith(qa,Aa,ta,Ha,Ia);Xa.lineShadowGroup.animateWith(qa,Aa,ta,Ha,Ia);Xa.lineGroup.animateWith(qa,Aa,ta,Ha,Ia,Pa)}else ra&&ra.hide(),fa&&fa.hide()},hidingPosition:function(){return function(a){a=a.graphics.element;return{polypath:(a&&a.attr("polypath"))[3]=0,r:0,text:M}}}},"Line"])}]);Y.register("module",["private","modules.renderer.js-dataset-group-errorbar2d",function(){Y.register("component",["datasetGroup","errorbar2d",{},this.hcLib.preDefStr.column])}]);
Y.register("module",["private","modules.renderer.js-dataset-group-dragnode",function(){var a=this.hcLib,b=a.preDefStr,z=b.colors,U=z.FFFFFF,aa=z.c000000,O=b.configStr,S=b.animationObjStr,L=a.BLANKSTRING,N=a.BLANKSTRING,R=a.pluck,I=a.getFirstValue,M=a.extend2,u=a.HASHSTRING,A=a.hashify,m=a.each,H=a.componentDispose,D=function(a){return void 0!==a&&null!==a},b=Math,f=b.min,V=b.max,K=a.hasTouch,Q=a.COMMASTRING,b=a.graphics,n=b.parseColor,d=b.getValidColor;Y.register("component",["datasetGroup","Dragnode",
{init:function(){this.connectorSet=[];this.nodes={};this.datasets=[];this.components=[];this.graphics={};this.labelSet=[]},addDataset:function(a,b){var d=this.datasets[b];a.groupManager=this;a.datasetIndex=b;d||(this.datasets[b]={dataset:a})},addLabels:function(a,b){var d=this.labelSet[b];a.groupManager=this;d||(this.labelSet[b]={labels:a})},addConnectors:function(a,b){var d=this.connectorSet[b];a.groupManager=this;d||(this.connectorSet[b]={connectors:a})},showNodeAddUI:function(){var a=this.chart,
b=a.components.dataset,d=N,f,m,n;for(n=0;n<b.length;n++)m=b[n]||{},f=m.config,m=m.plotType,"dragnode"===m&&(d+='<option value="'+f.id+'">'+(f.name!==L&&void 0!==f.name&&f.name+Q+" "||L)+f.id+"</option>");this.showNodeUpdateUI(a,{dataset:{innerHTML:d}})},showConnectorAddUI:function(){var a=this.chart,b=this.nodes,d=N,f,m;for(m in b)f=b[m],f=f.config,f=f.id,d+='<option value="'+f+'">'+f+"</option>";this.showConnectorUpdateUI(a,{fromid:{innerHTML:d},toid:{innerHTML:d}})},draw:function(){var a=this.datasets,
b=this.connectorSet,d,f,m=this.labelSet,n;this.updateUIvisuals();d=0;for(n=a.length;d<n;d++)f=a[d].dataset,f.draw();d=0;for(n=b.length;d<n;d++)a=b[d].connectors,a.draw();d=0;for(n=m.length;d<n;d++)b=m[d].labels,b.draw();this.drawn=!0},getJSONData:function(){var a=this.datasets,b=this.connectorSet,d=this.labelSet,f={},m,n,u;f.dataset=[];f.connectors=[];f.labels=[];m=0;for(n=a.length;m<n;m++)u=a[m]&&a[m].dataset,f.dataset[m]||(f.dataset[m]=M({},u.JSONData)),f.dataset[m].data=u.getJSONData();m=0;for(n=
b.length;m<n;m++)u=b[m]&&b[m].connectors,f.connectors[m]||(f.connectors[m]=M({},u.JSONData)),f.connectors[m].connector=u.getJSONData();m=0;for(n=d.length;m<n;m++)u=d[m]&&d[m].labels,f.labels[m]||(f.labels[m]={label:[]}),f.labels[m].label=u.getJSONData();return f},clearLongPress:function(){this.data("move",!1);clearTimeout(this._longpressactive);delete this._longpressactive},createHtmlDialog:function(a,b,d,f,m,n,z){var B=a.components.paper,x=a.config.style.inCanvasStyle||{},c=a.config.width,E=a.config.height,
C=a.get(O,S).transposeAnimDuration,D={color:A(x.color),textAlign:"center",paddingTop:"1px",border:"1px solid #cccccc",borderRadius:"4px",cursor:"pointer",_cursor:"hand",backgroundColor:u+U,zIndex:21,"-webkit-border-radius":"4px"},g=z;g?C?g.animate({width:c,height:E},C,"normal"):g.attr({width:c,height:E}):g=B.html("div",{fill:"transparent",width:c,height:E},{fontSize:"10px",lineHeight:"15px",fontFamily:x.fontFamily},a.linkedItems.container);g.veil?C?g.veil.animate({width:c,height:E},C,"normal"):g.veil.attr({width:c,
height:E}):g.veil=B.html("div",{fill:aa,width:c,height:E,opacity:.3},void 0,g);a={x:(c-b)/2,y:(E-d)/2,fill:"efefef",strokeWidth:1,stroke:aa,width:b,height:d};g.dialog?C?g.dialog.animate({x:a.x,y:a.y,width:a.width,height:a.height},C,"normal"):g.dialog.attr(a):g.dialog=B.html("div",a,{borderRadius:"5px",boxShadow:"1px 1px 3px #000000","-webkit-border-radius":"5px","-webkit-box-shadow":"1px 1px 3px #000000",filter:'progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color="#000000")'},
g);a={x:b-70-5,y:d-23-5,width:65,height:17,text:"Submit",tabIndex:1};g.ok?C?g.ok.animate({x:a.x,y:a.y,width:a.width,height:a.height},C,"normal"):g.ok.attr(a):g.ok=B.html("div",a,D,g.dialog).on("click",f);f={x:b-140-5,y:d-23-5,width:65,height:17,text:"Cancel",tabIndex:2};g.cancel?C?g.cancel.animate({x:f.x,y:f.y,width:f.width,height:f.height},C,"normal"):g.cancel.attr(f):g.cancel=B.html("div",f,D,g.dialog).on("click",m);b={x:b-210-5,y:d-23-5,width:65,height:17,text:"Delete",tabIndex:3};g.remove?C?g.remove.animate({x:b.x,
y:b.y,width:b.width,height:b.height},C,"normal"):g.remove.attr(b):g.remove=B.html("div",b,D,g.dialog).on("click",n);g.handleKeyPress||(g.handleKeyPress=function(a){13===a.keyCode?g.ok.trigger(K?"touchStart":"click",a):27===a.keyCode&&g.cancel.trigger(K?"touchStart":"click",a)});return g},updateUIvisuals:function(){var a=this.graphics.cacheConnectorUpdateUI,b=this.chart,d=this.graphics.cacheLabelUpdateUI,f=this.graphics.cacheLabelDeleteUI,m=this.graphics.cacheUpdateUI;a&&this.createHtmlDialog(b,350,
215,void 0,void 0,void 0,a);m&&this.createHtmlDialog(b,350,215,void 0,void 0,void 0,m);d&&this.createHtmlDialog(b,350,215,void 0,void 0,void 0,d);f&&this.createHtmlDialog(b,350,215,void 0,void 0,void 0,f)},showConnectorUpdateUI:function(a,b,d){var f=a.components.paper,n=this.cacheConnectorUpdateUI,u={border:"1px solid #cccccc",fontSize:"10px",lineHeight:"15px",fontFamily:(a.config.style.inCanvasStyle||{}).fontFamily,padding:"2px"},z={textAlign:"right"},A=n&&n.fields,x=n&&n.labels,c,E,C,D=function(){var b=
n&&n.fields,b={from:b.fromid.val(),to:b.toid.val(),id:b.id.val()};a.deleteConnector(b);n.hide()},g;n?(n.attr({width:a.config.width,height:a.config.height}),n.veil.attr({width:a.config.width,height:a.config.height}),n.dialog.attr({x:(a.config.width-315)/2,y:(a.config.height-215)/2,width:315,height:215})):(n=this.graphics.cacheConnectorUpdateUI=this.createHtmlDialog(a,315,215,function(){var b=n&&n.fields,c;b&&(c={from:b.fromid.val(),to:b.toid.val(),id:b.id.val(),label:b.label.val(),color:b.color.val(),
alpha:b.alpha.val(),link:b.url.val(),tooltext:b.tooltext.val(),strength:b.strength.val(),arrowatstart:b.arratstart.val(),arrowatend:b.arratend.val(),dashed:b.dashed.val(),dashlen:b.dashlen.val(),dashgap:b.dashgap.val()},c.from?c.to?c.from!=c.to?(d?a.editConnector(c):a.addConnector(c),n.enableFields(),n.hide(),n.clearFields()):(n.error.attr({text:"Connector cannot start and end at the same node!"}),b.fromid.focus()):(n.error.attr({text:"Please select a valid connector end."}),b.toid.focus()):(n.error.attr({text:"Please select a valid connector start."}),
b.fromid.focus()))},function(){n.error.attr({text:N});n.enableFields();n.hide()},D),g=n.dialog,x=n.labels={},A=n.fields={});n.config=b;n.enableFields||(n.enableFields=function(){for(var a in b)b[a]&&b[a].disabled&&A[a]&&A[a].element.removeAttribute("disabled")});n.clearFields||(n.clearFields=function(){var a,b=n.fields;for(a in b)b[a].element.disabled||(b[a].element.value=N)});m(this.connectorUpdateUIDefinition,function(a){var d=a.key,m=b[d]||{};x[d]||(x[d]=f.html("label",{x:a.x,y:a.y,width:a.labelWidth||
45,text:a.text},z,g));if(!a.noInput){if(!(E=A[d])){E=A[d]=f.html(a.inputType||"input",{y:-2+(a.inputPaddingTop||0),x:a.labelWidth&&a.labelWidth+5||50,width:a.inputWidth||50,name:d||N},u);if("select"!==a.inputType)E.attr({type:a.type||"text"}).on("keyup",n.handleKeyPress);E.add(x[d])}(c=R(m.innerHTML,a.innerHTML))&&E.attr({innerHTML:c});void 0!==(C=R(m.val,a.val))&&E.val(C);m.disabled&&E.attr({disabled:"disabled"})}});n.checkDash=function(){var a=A.dashed&&A.dashed.val()?"show":"hide";x.dashgap&&x.dashgap[a]();
A.dashgap&&A.dashgap[a]();x.dashlen&&x.dashlen[a]();A.dashlen&&A.dashlen[a]()};n.checkDash();A.dashed.on("click",n.checkDash);n.error||(n.error=f.html("span",{color:"ff0000",x:10,y:170},void 0,g));n.remove[d?"show":"hide"]();a.animation?n.fadeIn("fast"):n.show()},labelUpdateUIDefinition:[{key:"label",text:"Label*",x:10,y:15,inputWidth:235},{key:"size",text:"Size",x:10,y:40},{key:"padding",text:"Padding",x:10,y:65},{key:"x",text:"Position",x:120,y:65,labelWidth:70,inputWidth:25},{key:"y",text:",",
x:225,y:65,labelWidth:10,inputWidth:25},{key:"xy",text:"(x, y)",x:260,y:65,noInput:!0},{key:"allowdrag",text:"Allow Drag",x:120,y:40,inputType:"checkbox",inputPaddingTop:3,inputWidth:15,labelWidth:70,val:1},{key:"color",text:"Color",x:10,y:90},{key:"alpha",text:"Alpha",x:145,y:90,inputWidth:30,val:a.HUNDREDSTRING},{key:"bordercolor",text:"Border Color",x:10,y:125,labelWidth:100},{key:"bgcolor",text:"Background Color",x:10,y:150,labelWidth:100}],showLabelUpdateUI:function(a,b){var d=a.components.paper,
f=this.graphics.cacheLabelUpdateUI,n={border:"1px solid #cccccc",fontSize:"10px",lineHeight:"15px",fontFamily:(a.config.style.inCanvasStyle||{}).fontFamily,padding:"2px"},u={textAlign:"right"},z=f&&f.fields,A=f&&f.labels,x,c,E;f||(f=this.graphics.cacheLabelUpdateUI=this.createHtmlDialog(a,315,205,function(){var b=f&&f.fields,c;b&&(c={text:b.label.val(),x:b.x.val(),y:b.y.val(),color:b.color.val(),alpha:b.alpha.val(),bgcolor:b.bgcolor.val(),bordercolor:b.bordercolor.val(),fontsize:b.size.val(),allowdrag:b.allowdrag.val(),
padding:b.padding.val()},c.text?(a.addLabel&&a.addLabel(c),f.hide()):(f.error.attr({text:"Label cannot be blank."}),b.label.focus()))},function(){f.error.attr({text:N});f.hide()}),E=f.dialog,A=f.labels={},z=f.fields={});m(this.labelUpdateUIDefinition,function(a){var m=a.key;A[m]||(A[m]=d.html("label",{x:a.x,y:a.y,width:a.labelWidth||45,text:a.text},u,E));a.noInput||((x=z[m])||(x=z[m]=d.html("input",{y:-2+(a.inputPaddingTop||0),x:a.labelWidth&&a.labelWidth+5||50,width:a.inputWidth||50,type:a.inputType||
"text",name:m||N},n,A[m]).on("keyup",f.handleKeyPress)),void 0!==(c=R(b[m],a.val))&&x.val(c))});f.error||(f.error=d.html("span",{color:"ff0000",x:10,y:180},void 0,E));a.animation?f.fadeIn("fast"):f.show();f.fields.label.focus()},showLabelDeleteUI:function(a){var b=this.chart,d=b.get(O,S).duration,f=b.components.paper,m=this.graphics.cacheLabelDeleteUI;m||(m=this.graphics.cacheLabelDeleteUI=this.createHtmlDialog(b,250,100,void 0,function(){m.hide()},function(){b.deleteLabel(a.config.index);m.hide()}),
m.message=f.html("span",{x:10,y:10,width:230,height:80}).add(m.dialog),m.ok.hide(),m.remove.translate(175).show());m.message.attr({text:'Would you really like to delete the label: "'+a.config.text+'"?'});d?m.fadeIn("fast"):m.show()},connectorUpdateUIDefinition:[{key:"fromid",text:"Connect From",inputType:"select",x:10,y:15,labelWidth:80,inputWidth:100},{key:"toid",text:"Connect To",inputType:"select",x:10,y:40,labelWidth:80,inputWidth:100},{key:"arratstart",text:"Arrow At Start",x:200,y:15,type:"checkbox",
inputPaddingTop:3,labelWidth:80,inputWidth:15},{key:"arratend",text:"Arrow At End",x:200,y:40,type:"checkbox",inputPaddingTop:3,labelWidth:80,inputWidth:15},{key:"label",text:"Label",x:10,y:75,labelWidth:40,inputWidth:120},{key:"id",text:"Node ID",x:190,y:75,inputWidth:55},{key:"color",text:"Color",x:10,y:100,labelWidth:40,inputWidth:35},{key:"alpha",text:"Alpha",x:110,y:100,inputWidth:25,labelWidth:35},{key:"strength",text:"Strength",x:190,y:100,inputWidth:55,val:"0.1"},{key:"url",text:"Link",x:10,
y:125,labelWidth:40,inputWidth:120},{key:"tooltext",text:"Tooltip",x:190,y:125,labelWidth:40,inputWidth:60},{key:"dashed",text:"Dashed",x:10,y:150,type:"checkbox",inputPaddingTop:3,inputWidth:15,labelWidth:40},{key:"dashgap",text:"Dash Gap",x:85,y:150,labelWidth:60,inputWidth:25},{key:"dashlen",text:"Dash Length",x:190,y:150,labelWidth:70,inputWidth:30}],nodeUpdateUIDefinition:[{key:"id",text:"Id",inputWidth:60,x:10,y:15},{key:"dataset",text:"dataset",inputType:"select",inputWidth:110,innerHTML:void 0,
x:170,y:15},{key:"x",text:"Value",x:10,y:40,inputWidth:21},{key:"y",text:",",x:88,y:40,inputWidth:21,labelWidth:5},{text:"(x, y)",x:125,y:40,labelWidth:33,noInput:!0},{key:"tooltip",text:"Tooltip",inputWidth:105,x:170,y:40},{key:"label",text:"Label",inputWidth:92,x:10,y:65},{key:"labelalign",text:"Align",labelWidth:70,inputWidth:110,inputType:"select",innerHTML:'<option></option><option value="top">Top</option><option value="middle">Middle</option><option value="bottom">Bottom</option>',x:145,y:63},
{key:"color",text:"Color",x:10,y:90,inputWidth:60},{key:"colorOut",innerHTML:"&nbsp;",x:85,y:90,inputWidth:15,inputType:"span"},{key:"alpha",text:"Alpha",x:170,y:90,inputWidth:20},{key:"draggable",text:"Allow Drag",value:!0,inputWidth:20,x:250,y:90,labelWidth:58,inputPaddingTop:3,type:"checkbox"},{key:"shape",text:"Shape",inputType:"select",inputWidth:97,innerHTML:'<option value="rect">Rectangle</option><option value="circ">Circle</option><option value="poly">Polygon</option>',x:10,y:115},{key:"rectHeight",
text:"Height",x:170,y:115,inputWidth:20},{key:"rectWidth",text:"Width",x:255,y:115,inputWidth:20},{key:"circPolyRadius",text:"Radius",x:170,y:115,inputWidth:20},{key:"polySides",text:"Sides",x:255,y:115,inputWidth:20},{key:"link",text:"Link",x:10,y:140,inputWidth:92},{key:"image",text:"Image",type:"checkbox",inputPaddingTop:4,inputWidth:20,x:10,y:170},{key:"imgUrl",text:"URL",inputWidth:105,x:170,y:170},{key:"imgWidth",text:"Width",inputWidth:20,x:10,y:195},{key:"imgHeight",text:"Height",inputWidth:20,
x:82,y:195},{key:"imgAlign",text:"Align",inputType:"select",inputWidth:75,innerHTML:'<option value="top">Top</option><option value="middle">Middle</option><option value="bottom">Bottom</option>',x:170,y:195}],showNodeUpdateUI:function(){var b=function(){for(var a=this.graphics.cacheUpdateUI,b=a.fields.shape,d=["rectWidth","rectHeight","circPolyRadius","polySides"],e=d.length,f;e--;)f=d[e],/rect|poly|circ/ig.test(f)&&(a.labels[f].hide(),a.fields[f].hide()),(new RegExp(R(b.val(),"rect"),"ig")).test(f)&&
(a.labels[f].show(),a.fields[f].show())},e=function(){var a=this.graphics.cacheUpdateUI.fields,b=d(a.color.val());b&&a.colorOut.css({background:n(b)})},f=function(b,d){var e=this.graphics.cacheUpdateUI,f=b.config.height,m=e.fields.image.val(),n=d?300:0,c=["imgWidth","imgHeight","imgAlign","imgUrl"],w,u,z;w=m?250:215;e.ok.hide();e.cancel.hide();e.remove.hide();e.error.hide();for(u=c.length;!m&&u--;)z=c[u],e.labels[z].hide(),e.fields[z].hide();a.danimate.animate(e.dialog.element,{top:(f-w)/2,height:w},
n,"linear",function(){for(u=c.length;u--&&m;)z=c[u],e.labels[z].show(),e.fields[z].show();e.ok.attr({y:w-23-5}).show();e.cancel.attr({y:w-23-5}).show();e.remove.attr({y:w-23-5});e.error.attr({y:w-23-5+4}).show();e.edit?e.remove.show():e.remove.hide()})};return function(a,d,n){var u=this,z=u.graphics,x=z.cacheUpdateUI,c=u.nodes,A=a.config,C=A.animation,H=a.components.paper,g={width:"80px",border:"1px solid #cccccc",fontSize:"10px",lineHeight:"15px",padding:"2px",fontFamily:(A.style.inCanvasStyle||
{}).fontFamily},J={textAlign:"right"},K=x&&x.fields,v=x&&x.labels,k,A=function(){var a=x&&x.fields,b=x.edit,d=u.chart,e=d.components,f,g,k;f=e.xAxis[0].config.axisRange.min;e=e.yAxis[0].config.axisRange.min;if(a){switch(a.shape.val()){case "circ":k="circle";break;case "poly":k="polygon";break;default:k="rectangle"}f={x:I(a.x.val(),f),y:I(a.y.val(),e),id:a.id.val(),datasetId:a.dataset.val(),name:a.label.val(),tooltext:a.tooltip.val(),color:a.color.val(),alpha:a.alpha.val(),labelalign:a.labelalign.val(),
allowdrag:a.draggable.val(),shape:k,width:a.rectWidth.val(),height:a.rectHeight.val(),radius:a.circPolyRadius.val(),numsides:a.polySides.val(),imagenode:a.image.val(),imagewidth:a.imgWidth.val(),imageheight:a.imgHeight.val(),imagealign:a.imgAlign.val(),imageurl:a.imgUrl.val(),link:a.link.val()};c[f.id]&&(g=!0);if(g&&void 0===b)x.error.attr({text:"ID already exist."}),a.label.focus();else{a=f.datasetId;if(a!==N||b)b?d.updateNode(f):d.addNode(f),x.hide(),x.visible=!1;return}}x.enableFields()},q=function(){x.hide();
x.visible=!1;x.enableFields();x.error.attr({text:L});x.visible=!1},h=function(){a.deleteNode(x.fields.id.val());x.hide();x.visible=!1};x||(x=z.cacheUpdateUI=this.createHtmlDialog(a,350,215,A,q,h),k=x.dialog,v=x.labels={},K=x.fields={});x.config=d;x.edit=n;x.error||(x.error=H.html("span",{color:"ff0000",x:30,y:228},void 0,k));x.enableFields||(x.enableFields=function(){for(var a in d)d[a]&&d[a].disabled&&K[a]&&K[a].element.removeAttribute("disabled")});x.clearFields||(x.clearFields=function(){var a,
b=x.fields;for(a in b)b[a].element.disabled||(b[a].element.value=N)});m(this.nodeUpdateUIDefinition,function(c){var h,m=c.key,p={},n=d[m]||{},q,z;!v[m]&&(v[m]=H.html("label",{x:c.x,y:c.y,width:c.labelWidth||45,text:c.text},J,k));if(!c.noInput){h=K[m];if(!h){g.border="checkbox"==c.type?L:"1px solid #cccccc";h=K[m]=H.html(c.inputType||"input",{x:c.labelWidth&&c.labelWidth+5||50,y:-2+(c.inputPaddingTop||0),width:c.inputWidth||50,name:m||N},g);if("select"!==c.inputType)h.attr({type:c.type||"text"}).on("keyup",
x.handleKeyPress);h.add(v[m])}D(q=I(n.innerHTML,c.innerHTML))&&(p.innerHTML=q);n.disabled?p.disabled="disabled":h.element&&(h.element.disabled=!1);h.attr(p);D(z=I(n.value,c.value))&&h.val(z);"shape"==m&&h.on("change",function(){b.call(u,a)});"image"==m&&h.on("click",function(){f.call(u,a,!0)});"color"==m&&h.on("keyup",function(){e.call(u,a)})}});e.call(this,a);f.call(this,a);b.call(this,a);C?x.fadeIn("fast"):x.show();x.visible=!0;x.fields[n?"label":"id"].focus()}}(),getDataLimits:function(){var a=
this.datasets,b,d=Infinity,m=-Infinity,n=-Infinity,u=Infinity,z;for(b=0;b<a.length;b++)z=a[b].dataset.config,m=V(m,z.yMax),d=f(d,z.yMin),n=V(n,z.xMax),u=f(u,z.xMin);return{max:m,min:d,xMax:n,xMin:u}},removeNodeDataset:function(a){this.datasets.splice(a)},removeConnectorSet:function(a){this.connectorSet.splice(a)},removeLabelSet:function(a){this.labelSet.splice(a)},_clearConnectors:function(){var a=this.nodes,b,d,f,m,n;for(b in a)if(f=a[b]){d=f.config.startConnectors||{};f=f.config.endConnectors||
{};for(n in d)m={graphics:d[n].graphics||{}},H.call(m);for(n in f)m={graphics:f[n].graphics||{}},H.call(m)}this.nodes={}}}])}]);Y.register("module",["private","modules.renderer.js-dataset-group-dragcolumn",function(){var a=this.hcLib,b=a.extend2,z=Math.ceil;Y.register("component",["datasetGroup","DragColumn",{getJSONData:function(){var a=this.chart,z=a.components.dataset,a=a.jsonData&&a.jsonData.dataset,O=[],S,L,N,R=z.length;for(N=0;N<R;N++)S=z[N],L=b({},a[N]),delete L.data,S=S.getJSONData(),O.push(b(L,
S));return O},_decidePlotableData:function(a,b,O,S){var L=this.stackSumValue&&this.stackSumValue[0],N,R,I,M;N=this.chart.config;var u,A,m=(a&&a.length)-b,H,D=N.isDataRestored,f,V=z(1/N.binSize*N.labelBinSize),K,Q,n,d;for(H=R=N=I=0;I<m&&O;I+=b,N++,R++){f=H%V;H++;n=d=void 0;for(M=I+b;M>=I+1;M--)A=a[M].config,u=L&&L[M]||A.setValue,D&&delete a[M].dragged,a[M].dragged||(A.labelSkip=!0,A.isSkipped=!0),0<=u?(n||(n=u,0===f&&delete A.labelSkip,K=M,delete A.isSkipped),n<u&&(n=u,K=M,delete A.isSkipped)):(d||
(d=u,0===f&&delete A.labelSkip,Q=M,delete A.isSkipped),d>u&&(d=u,Q=M,delete A.isSkipped));0===f&&(a[K]&&delete a[K].config.labelSkip,a[Q]&&delete a[Q].config.labelSkip)}S&&delete this.lastPlot}},a.preDefStr.column])}]);Y.register("module",["private","modules.renderer.js-dataset-group-dragarea",function(){var a=this.hcLib.extend2,b=Math.ceil;Y.register("component",["datasetGroup","DragArea",{getJSONData:function(){var b=this.chart,U=b.components.dataset,b=b.jsonData&&b.jsonData.dataset,Y=[],O,S,L,
N=U.length;for(L=0;L<N;L++)O=U[L],S=a({},b[L]),delete S.data,O=O.getJSONData(),Y.push(a(S,O));return Y},_decidePlotableData:function(a,U,Y){var O=this.chart.config,S=O.isDataRestored,L,N,R,I,M,u,A,m,H,D=(a&&a.length)-U,f,V,K=b(1/O.binSize*O.labelBinSize);for(f=L=O=N=0;N<D&&Y;N+=U,O++,L++){V=f%K;f++;u=A=m=H=void 0;for(R=N+U;R>=N+1;R--)M=a[R].config,I=M.setValue,S&&delete a[R].dragged,a[R].dragged||(M.labelSkip=!0,M.isSkipped=!0),m?m<I&&(u=R,m=I):(u=R,m=I),H?H>I&&(A=R,H=I):(A=R,H=I);delete a[A].config.isSkipped;
delete a[u].config.isSkipped;0===V&&(delete a[A].config.labelSkip,delete a[u].config.labelSkip)}}},"area"])}]);Y.register("module",["private","modules.renderer.js-dataset-group-dragline",function(){Y.register("component",["datasetGroup","DragLine",{_decidePlotableData:Y.get("component",["datasetGroup","DragArea"]).prototype._decidePlotableData},"line"])}]);Y.register("module",["private","modules.renderer.js-dataset-group-boxandwhisker2d",function(){var a=this.hcLib,b=a.extend2,a=a.preDefStr,z=a.configStr,
U=a.animationObjStr;Y.register("component",["datasetGroup","boxandwhisker2d",{draw:function(){var a=this.positionStackArr,O=a.length,S,L,N,R;S=this.chart;L=S.graphics.datasetGroup;var I=S.graphics;N=S.components.canvas.config.clip["clip-canvas"].slice(0);R=b([],S.components.canvas.config.clip["clip-canvas-init"]);var I=I.datalabelsGroup,M=S.get(z,U),u=M.animType,A=M.animObj,m=M.dummyObj,M=M.duration;S.fireInitialAnimation&&(L.attr({"clip-rect":R}),I.attr({"clip-rect":R}));S.fireInitialAnimation=!1;
L.animateWith(m,A,{"clip-rect":N},M,u);I.animateWith(m,A,{"clip-rect":N},M,u);this.preDrawCalculate();this.drawSumValueFlag=!0;for(S=0;S<O;S++)for(L=a[S],N=L.length,this.manageClip=!0,L=0;L<N;L++)R=a[S][L].dataSet,R.draw()}},a.column])}]);Y.register("module",["private","modules.renderer.js-dataset-group-heatmap",function(){Y.register("component",["datasetGroup","heatmap",{},this.hcLib.preDefStr.column])}])});

//# sourceMappingURL=http://localhost:3052/3.12.2/map/licensed/fusioncharts.powercharts.js.map
