/* FusionCharts JavaScript Library Copyright FusionCharts Technologies LLP License Information at FusionCharts JavaScript Library Copyright FusionCharts Technologies LLP License Information at @version 3.4.0 */ FusionCharts.register("module",["private","modules.renderer.js-charts",function(){function Ha(a){var r={left:a.offsetLeft,top:a.offsetTop};for(a=a.offsetParent;a;)r.left+=a.offsetLeft,r.top+=a.offsetTop,a!==Na.body&&a!==Na.documentElement&&(r.left-=a.scrollLeft,r.top-=a.scrollTop),a=a.offsetParent;return r}function ha(a,r){for(var c=[],d=0,k=a.length;da?c+a:a}function Pa(a,r){return a<=X?a:r<=X?r:r>a?0: r}function Ua(a,r,c,d,k){return V((r-c[1]-d.top)/k,a-c[0]-d.left)}function Qa(a,r,c,d,k,b,t,la,e,G){"object"===typeof a&&(r=a.y,c=a.r,d=a.innerR,k=a.radiusYFactor,b=a.depth,t=a.seriesGroup,la=a.renderer,a=a.x);if(0>k||1<=k)k=0.6;a=a||0;r=r||0;c=c||1;d=d||0;b=b||0;this.renderer=la;this.hasOnePoint=e;this.use3DLighting=G;this.cx=a;this.cy=r;this.rx=c;this.ry=c*k;this.radiusYFactor=k;this.isDoughnut=0q&&(q=0);g(d.showlegend, 0)&&(k.legend.enabled=!0,k.legend.reversed=!Boolean(g(d.reverselegend,0)),r.showInLegend=!0);for(Q=0;Qr.pieYScale&&(r.pieYScale=1);100<=r.pieYScale&&(r.pieYScale=80);r.pieYScale/=100;r.pieSliceDepth=g(d.pieslicedepth, 15);1>r.pieSliceDepth&&(r.pieSliceDepth=1);r.managedPieSliceDepth=r.pieSliceDepth;r.enableMultiSlicing=!!G;t&&d.showplotborder!=Oa&&!la&&(r.showBorderEffect=1);for(Q=B.length-1;0<=Q;Q-=1){P=B[Q];O=w.getCleanValue(P.value,!0);z=aa(h(P.label,P.name,Y));u=h(P.color,b.getPlotColor(Q));F=h(P.alpha,d.plotfillalpha);D=h(P.bordercolor,W);ba=h(P.borderalpha,d.plotborderalpha,d.pieborderalpha);t&&(D||void 0!==ba)&&(r.showBorderEffect=0);D=h(D,sa(u,t?90:25)).split($)[0];ba=d.showplotborder==Fa?Fa:h(ba,F,"80"); F=h(F,Ma);f={opacity:Math.max(F,ba)/100};if(c=Boolean(g(P.issliced,d.issliced,0)))G||(-1!==Ca&&(r.data[B.length-Ca-1].sliced=!1),Ca=Q),a.preSliced=c;la=(E=g(P.dashed,S))?Ia(h(P.dashlen,N),h(P.dashgap,A),e):void 0;s=Da(aa(h(P.tooltext,a.tooltext)));X=w.percentValue(O/R*100);I=w.dataLabels(O)||Y;J=1===g(P.showlabel,m)?z:Y;v=1===(C=g(P.showvalue,y))?1===p?X:I:Y;V=Da(aa(P.displayvalue));v=void 0!==V&&C?V:v!==Y&&J!==Y?J+ga+v:h(J,v);void 0!==s?s=Ja(s,[1,2,3,5,6,7,14,24,25],{formattedValue:I,label:z,yaxisName:aa(d.yaxisname), xaxisName:aa(d.xaxisname),percentValue:X,sum:w.dataLabels(R),unformattedSum:R},P,d):(s=z,C=l?X:I,s=s!=Y?s+x+C:C);C=M?z:Y;K&&(L=ea?w.legendPercentValue(O/R*100):w.legendValue(O),C=n?L+(C&&U+C):(C&&C+U)+L);E=this.pointHoverOptions(P,r,{plotType:"pie",use3DLighting:Ta,color:u,alpha:F,borderWidth:e,borderColor:D,borderAlpha:ba,borderDashed:E,borderDashGap:h(P.dashgap,A),borderDashLen:g(P.dashlen,N),radius3D:q,shadow:f});z={label:h((T=P.centerlabel||d.centerlabel)&&this.replaceMacros(T,["\\$value","\\$percentValue", "\\$displayValue","\\$label"],[I,X,void 0===V?"":V,z]),""),font:ja.font,fontSize:g(P.centerlabelfontsize,ja.fontSize),color:ia(h(P.centerlabelcolor,ja.color)),alpha:g(P.centerlabelalpha,ja.alpha),bold:g(P.centerlabelbold,ja.bold),italic:g(P.centerlabelitalic,ja.italic),bgColor:h(P.centerlabelbgcolor,ja.bgColor),bgAlpha:g(P.centerlabelbgalpha,ja.bgAlpha),borderColor:h(P.centerlabelbordercolor,ja.borderColor),borderAlpha:g(P.centerlabelborderalpha,ja.borderAlpha),borderThickness:ja.borderThickness, borderRadius:ja.borderRadius,textPadding:ja.textPadding,padding:ja.padding,bgOval:ja.bgOval,shadow:ja.shadow,hoverColor:(na=h(P.centerlabelhovercolor,ja.hoverColor))&&ia(na),hoverAlpha:g(P.centerlabelhoveralpha,ja.hoverAlpha),toolText:h(P.centerlabeltooltext,"")};r.data.push({displayValue:v,categoryLabel:J,showInLegend:C!==Y,y:O,name:C,shadow:f,toolText:s,color:this.getPointColor(u,F,q),_3dAlpha:F,borderColor:va(D,ba),borderWidth:e,link:Da(P.link),sliced:c,dashStyle:la,doNotSlice:h(d.enableslicing, Oa)!=Oa,hoverEffects:E.enabled&&E.options,rolloverProperties:E.enabled&&E.rolloverOptions,centerLabelConfig:z})}H&&(r.reversePlotOrder=!0,r.data&&r.data.reverse());r.valueTotal=R;k.legend.enabled=d.showlegend===Oa?!0:!1;r.startAngle=g(d.startingangle,0);k.chart.startingAngle=h(1c&&Z?(d=Math.floor(85*(100-0.35*c))/100,d=pa(a,d),k=Math.floor(50*(100+c))/100,a=sa(a,k),r={FCcolor:{color:a+$+d,alpha:r+$+r,ratio:c+",100",radialGradient:!0,gradientUnits:"userSpaceOnUse"}}):r={FCcolor:{color:a+$+a,alpha:r+$+r,ratio:"0,100"}};return r},configureAxis:function(a,r){var c=0,d=a[oa],k=r.chart,b=a.xAxis.labels.style,t,la;t=(t=Ka(k.valuebordercolor,Y))?va(t,g(k.valueborderalpha,k.valuealpha, 100)):Y;b={fontFamily:h(k.valuefont,b.fontFamily),fontSize:h(k.valuefontsize,parseInt(b.fontSize,10))+Ya,lineHeight:b.lineHeight,color:va(h(k.valuefontcolor,b.color),g(k.valuefontalpha,k.valuealpha,100)),fontWeight:g(k.valuefontbold)?"bold":"normal",fontStyle:g(k.valuefontitalic)?"italic":"normal",border:t||k.valuebgcolor?g(k.valueborderthickness,1)+"px solid":void 0,borderColor:t,borderThickness:g(k.valueborderthickness,1),borderPadding:g(k.valueborderpadding,2),borderRadius:g(k.valueborderradius, 0),backgroundColor:k.valuebgcolor?va(k.valuebgcolor,g(k.valuebgalpha,k.valuealpha,100)):Y,borderDash:g(k.valueborderdashed,0)?Ia(g(k.valueborderdashlen,4),g(k.valueborderdashgap,2),g(k.valueborderthickness,1)):"none"};a.plotOptions.series.dataLabels.style=b;delete d.x;delete d[0];delete d[1];a.chart.plotBorderColor=a.chart.plotBackgroundColor=Xa;d=d.pieDATALabels=[];if(1===a.series.length&&(la=a.series[0].data)&&0<(c=a.series[0].data.length)&&a.plotOptions.series.dataLabels.enabled)for(;c--;)la[c]&& void 0!==Da(la[c].displayValue)&&d.push(la[c].displayValue)},spaceManager:function(a,r,c,d){var k=a[oa],b=k.is3d,t=this.name,la=this.colorManager,e=this.smartLabel||k.smartLabel,G=g(k.pieDATALabels&&k.pieDATALabels.length,0),f=0,q=r.chart,l=g(q.managelabeloverflow,0),m=k.preSliced||q.enableslicing!==Fa||q.showlegend===Oa&&q.interactivelegend!==Fa?g(q.slicingdistance,20):0,ra=g(q.pieradius,0),y=g(q.enablesmartlabels,q.enablesmartlabel,1),p=y?g(q.skipoverlaplabels,q.skipoverlaplabel,1):0,x=g(q.issmartlineslanted, 1),ga=G?g(q.labeldistance,q.nametbdistance,5):m,W=g(q.smartlabelclearance,5);c-=a.chart.marginRight+a.chart.marginLeft;var w=d-(a.chart.marginTop+a.chart.marginBottom);d=ba(w,c);var u=h(q.smartlinecolor,la.getColor("plotFillColor")),S=g(q.smartlinealpha,100),N=g(q.smartlinethickness,0.7),A=a.plotOptions.series.dataLabels,K=A.style,M=G?g(parseInt(K.lineHeight,10),12):0,la=a.series[0]||{},n=la.pieYScale,ea=la.pieSliceDepth;d=0===ra?0.15*d:ra;var H=0,H=2*d,U=g("doughnut2d"===t?0:q.placevaluesinside); A.connectorWidth=N;A.connectorPadding=g(q.connectorpadding,5);A.connectorColor=va(u,S);y&&G&&(ga=W+m);W=H+2*(M+ga);w-=this.titleSpaceManager(a,r,c,s(WH&&(H=0),H>=d?d=H:m=ga=ba(ga-(d-H),m));b&&(G=w-2*(d*n+M),ea>G&&(la.managedPieSliceDepth=ea-G));a.plotOptions.pie3d.slicedOffset=a.plotOptions.pie.slicedOffset=m;a.plotOptions.pie3d.size=a.plotOptions.pie.size=2*d;a.plotOptions.series.dataLabels.distance=ga;a.plotOptions.series.dataLabels.isSmartLineSlanted=x;a.plotOptions.series.dataLabels.enableSmartLabels=y;a.plotOptions.series.dataLabels.skipOverlapLabels=p;a.plotOptions.series.dataLabels.manageLabelOverflow=l;a.plotOptions.series.dataLabels.placeLabelsInside= U;if("doughnut2d"===t||"doughnut3d"===t)if(t=g(q.doughnutradius,0),G=(G=g(q.use3dlighting,1))?g(q.radius3d,q["3dradius"],50):100,100G&&(G=0),q=0===t||t>=d?d/2:t,a.plotOptions.pie3d.innerSize=a.plotOptions.pie.innerSize=2*q,0(k?-1:1)*b?360:0);if(!isNaN(a)){if(d.singletonCase|| d.isRotating)return;a+=r?t:0;k?((k=c.options.series[0]).startAngle=-a*T,c.rotate(d,k)):c.rotate(a);t=a}return z(100*((t%=360)+(0>t?360:0)))/100}}},za);p.pie2d.eiMethods.togglePieSlice=p.pie2d.eiMethods.sliceDataItem=p.pie2d.eiMethods.slicePlotItem;p.pie2d.eiMethods.enableSlicingMovement=p.pie2d.eiMethods.enablelink=function(){ca.raiseWarning(this,"1301081430","run","JSRenderer~enablelink()","Method deprecated.")};p("pie3d",{friendlyName:"3D Pie Chart",defaultSeriesType:"pie3d",rendererId:"pie3d", creditLabel:Aa,fireGroupEvent:!0,getPointColor:function(a){return a},defaultPlotShadow:0},p.pie2d);p("doughnut2d",{friendlyName:"Doughnut Chart",getPointColor:function(a,r,c){var d;a=ia(a);r=Wa(r);100>c&&Z?(d=pa(a,I(100*(85-0.2*(100-c)))/100),a=sa(a,I(100*(100-0.5*c))/100),r={FCcolor:{color:d+","+a+","+a+","+d,alpha:r+","+r+","+r+","+r,radialGradient:!0,gradientUnits:"userSpaceOnUse",r:c}}):r={FCcolor:{color:a+","+a,alpha:r+","+r,ratio:"0,100"}};return r}},p.pie2d);p("doughnut3d",{friendlyName:"3D Doughnut Chart", defaultSeriesType:"pie3d",rendererId:"pie3d",fireGroupEvent:!0,getPointColor:p.pie3d,defaultPlotShadow:0},p.doughnut2d);p("pareto2d",{standaloneInit:!0,friendlyName:"Pareto Chart",point:function(a,r,c,d,k){a=c.length;var b=0,t=0,e={},f=this.colorManager,G=/3d$/.test(k.chart.defaultSeriesType),Ta=this.isBar,q=h(360-d.plotfillangle,90),l=h(d.showplotborder,G?Fa:Oa)===Oa?G?1:g(d.plotborderthickness,1):0,m=k.chart.useRoundEdges,ra=h(d.tooltipsepchar,", "),y=h(d.plotbordercolor,f.getColor("plotBorderColor")).split($)[0], W=d.showplotborder==Fa?Fa:h(d.plotborderalpha,d.plotfillalpha,Ma),x=k.xAxis,p=g(d.showcumulativeline,1),Ba=k[oa],w=Ba.axisGridManager,u=Ba.x,S=d.showtooltip!=Fa,N=[],A=g(d.use3dlighting,1),K=k[oa].numberFormatter,M=g(d.showlinevalues,d.showvalues),n=g(d.plotborderdashed,0),ea,H=g(d.plotborderdashlen,5),U=g(d.plotborderdashgap,4),Q=aa(d.xaxisname),R=aa(d.yaxisname),B=Ba.numberFormatter,z=r,O,P,s,F,D,ba,C,v,J,X,I,E,V,L,ja,T,na,Ca,ma,fa,ta,da,Z,W=G?d.showplotborder?W:Fa:W,y=G?h(d.plotbordercolor,"#FFFFFF"): y;s=g(d.useplotgradientcolor,1)?cb(d.plotgradientcolor,f.getColor("plotGradientColor")):Y;for(ja=P=0;Pea?ba.n:ba.p:void 0,offsetScaleIndex:0,y:0>ea?270===m?4:l:-4,x:0,text:S.yAxis(Za(ea,10))}});t[H]&&(t[H].value=U,t[H]._weight=Q,t[H]._hideLabel=!1);H+=1;c.showXAxisPercentValues&&Hm.z?A:t)),qa=h(m.alpha,p),u=this.getPointStub(m,f,B,b,c,N),q=W?this.getPointColor(q,qa):va(q,qa),null!==w&&(K.zMax=K.zMax>w?K.zMax:w,K.zMin=K.zMin=T?(y=qa/T,B=T):(q=qa-2*(H+K),y=q/B):(E=parseInt(D.lineHeight,10),E=Math.max(E+2*z,A),B=qa/E,B>=T?(y=qa/T,B=T):(q=qa-2*(H+K),B=Math.floor(q/E),y=q/B));z=W-U-N-R-V-Q;t=U+N+R;q=h(k.basefont,"Verdana,sans");V=$a(k.basefontsize,10);ra=h(k.basefontcolor,ra.getColor("baseFontColor"));l=h(k.outcnvbasefont,q);x=$a(k.outcnvbasefontsize, V);G=x+Ya;k=h(k.outcnvbasefontcolor,ra).replace(/^#?([a-f0-9]+)/ig,"#$1");V+=Ya;ra=ra.replace(/^#?([a-f0-9]+)/ig,"#$1");L.trendStyle=L.outCanvasStyle={fontFamily:l,color:k,fontSize:G};eb(L.trendStyle);L.inCanvasStyle={fontFamily:q,fontSize:V,color:ra};c.tooltip.style={fontFamily:q,fontSize:V,lineHeight:void 0,color:ra};c.tooltip.shadow=!1;e.height=qa;e.width=W;e.rowHeight=y;e.labelX=t;e.colorBoxWidth=N;e.colorBoxHeight=A;e.colorBoxX=U;e.valueX=U+N+R+z+Q;e.valueColumnPadding=Q;e.textStyle=D;e.listRowDividerAttr= {"stroke-width":w,stroke:{FCcolor:{color:S,alpha:s}}};e.alternateRowColor={FCcolor:{color:d,alpha:u}};e.navButtonRadius=K;e.navButtonPadding=H;e.navButtonColor=M;e.navButtonHoverColor=ba;e.lineHeight=parseInt(D.lineHeight,10);qa=[];W=0;L=!0;for(t=0;tt?ta:0)+t-e,a.clipTopPath=this.isDoughnut?[f,q,n,m,K,M,0,c>X?1:0,1,O,P,W,z,w,m,H,U,0,c>X?1:0,0,x,ga,S]:[f,q,n,m,K,M,0,c>X?1:0,1,O,P,W,this.cx,this.cy,S],a.clipOuterFrontPath1=this.clipPathforNoClip,a.clipTopBorderPath=[f,h,s,m,J,C,0,c>X?1:0,1,y,ba,W,O,P,O,P+1,m,K,M,0,c>X?1:0,0,q,n+1,W,q,n,S],d!=k?e>t?eX?(a.clipOuterFrontPath=[f,this.rightX,A,m,K,M,0,1,1,this.leftX,A,"v",Q,m,K,M,0,1,0,this.rightX,A+Q,S],a.clipOuterBackPath=[f,this.leftX,A,m,K,M,0,0,1,O,P,"v",Q,m,K,M,0,0,0,this.leftX,A+Q,S,f,this.rightX,A,m,K,M,0,0,0,q,n,"v",Q,m,K,M,0,0,1,this.rightX,A+Q,S],this.isDoughnut&&(a.clipInnerFrontPath=[f,this.rightInnerX,A,m,H,U,0,1,1,this.leftInnerX,A,"v",Q,m,H,U,0,1,0,this.rightInnerX,A+Q,S],a.clipInnerBackPath=[f,this.leftInnerX,A,m,H,U,0,0,1, z,w,"v",Q,m,H,U,0,0,0,this.leftInnerX,A+Q,S,f,this.rightInnerX,A,m,H,U,0,0,0,x,ga,"v",Q,m,H,U,0,0,1,this.rightInnerX,A+Q,S])):(a.clipOuterFrontPath=[f,this.rightX,A,m,K,M,0,0,1,O,P,"v",Q,m,K,M,0,0,0,this.rightX,A+Q,S],a.clipOuterBackPath=[f,q,n,m,K,M,0,0,1,this.rightX,A,"v",Q,m,K,M,0,0,0,q,L,S],this.isDoughnut&&(a.clipInnerFrontPath=[f,this.rightInnerX,A,m,H,U,0,0,1,z,w,"v",Q,m,H,U,0,0,0,this.rightInnerX,A+Q,S],a.clipInnerBackPath=[f,x,ga,m,H,U,0,0,1,this.rightInnerX,A,"v",Q,m,H,U,0,0,0,x,E,S])): eX?(a.clipOuterFrontPath=[f,q,n,m,K,M,0,0,1,this.leftX,A,"v",Q,m,K,M,0,0,0,q,L,S],a.clipOuterBackPath=[f,this.leftX,A,m,K,M,0,0,1,O,P,"v",Q,m,K,M,0,0,0,this.leftX,A+Q,S],this.isDoughnut&&(a.clipInnerFrontPath=[f,x,ga,m,H,U,0,0,1,this.leftInnerX,A,"v",Q,m,H,U,0,0,0,x,E,S],a.clipInnerBackPath=[f,this.leftInnerX,A,m,H,U,0,0,1,z,w,"v",Q,m,H,U,0,0,0,this.leftInnerX,A+Q,S])):(a.clipOuterFrontPath=[f,q,n,m,K,M,0,0,1,O,P,"v",Q,m,K,M,0,0,0,q,L,S],a.clipOuterBackPath=this.clipPathforNoClip,this.isDoughnut&& (a.clipInnerFrontPath=[f,x,ga,m,H,U,0,0,1,z,w,"v",Q,m,H,U,0,0,0,x,E,S],a.clipInnerBackPath=this.clipPathforNoClip)):(a.clipOuterFrontPath=this.clipPathforNoClip,a.clipOuterBackPath=[f,q,n,m,K,M,0,0,1,O,P,"v",Q,m,K,M,0,0,0,q,L,S],this.isDoughnut&&(a.clipInnerFrontPath=this.clipPathforNoClip,a.clipInnerBackPath=[f,x,ga,m,H,U,0,0,1,z,w,"v",Q,m,H,U,0,0,0,x,E,S])):a.clipOuterFrontPath=a.clipOuterBackPath=a.clipInnerBackPath=a.clipInnerFrontPath=this.clipPathforNoClip,b||(a.elements.startSlice._conf.index= e,a.elements.endSlice._conf.index=t,a.elements.frontOuter._conf.index=Pa(t,e),a.elements.frontOuter1&&(a.elements.frontOuter1._conf.index=e,a.elements.frontOuter1.attr("litepath",[a.clipOuterFrontPath1])),a.thisElement.attr("litepath",[a.clipTopPath]),a.elements.bottom.attr("litepath",[a.clipTopPath]),a.elements.bottomBorder.attr("litepath",[a.clipTopPath]),a.elements.topBorder&&a.elements.topBorder.attr("litepath",[a.clipTopBorderPath]),a.elements.frontOuter.attr("litepath",[a.clipOuterFrontPath]), a.elements.backOuter.attr("litepath",[a.clipOuterBackPath]),this.isDoughnut&&(a.elements.backInner.attr("litepath",[a.clipInnerBackPath]),a.elements.frontInner.attr("litepath",[a.clipInnerFrontPath]),a.elements.backInner._conf.index=Pa(t,e)),this.hasOnePoint?(a.elements.startSlice.hide(),a.elements.endSlice.hide()):(a.elements.startSlice.attr("litepath",[a.startSlice]).show(),a.elements.endSlice.attr("litepath",[a.endSlice]).show()))):(h=this.moveCmdArr,s=this.lineCmdArr,y=this.closeCmdArr,F=this.centerPoint, ba=this.leftPoint,J=this.topPoint,C=this.rightPoint,Q=this.bottomPoint,D=this.leftDepthPoint,V=this.rightDepthPoint,l=this.leftInnerPoint,g=this.rightInnerPoint,G=this.leftInnerDepthPoint,p=this.rightInnerDepthPoint,a.clipOuterFrontPath1=[],d!=k?(e>t?eX?(d=c(N,A,q,n,this.rightX,A,K,M,1,0),k=c(N,A,this.rightX,A,this.leftX,A,K,M,1,0),P=c(N,A,this.leftX,A,O,P,K,M,1,0),a.clipOuterFrontPath=h.concat(C,k,s,D,c(N,R,this.leftX,R,this.rightX,R,K,M,0,0),y),a.clipOuterBackPath=h.concat([q,n],d,s,V,c(N,R,this.rightX,R,q,L,K,M,0,0),y,h,ba,P,s,[O,T],c(N,R,O,T,this.leftX, R,K,M,0,0),y),a.clipTopBorderPath=h.concat([q,n],d,k,P),this.isDoughnut?(q=c(N,A,z,w,this.leftInnerX,A,H,U,0,0),n=c(N,A,this.leftInnerX,A,this.rightInnerX,A,H,U,0,0),ga=c(N,A,this.rightInnerX,A,x,ga,H,U,0,0),a.clipInnerFrontPath=h.concat(l,n,s,p,c(N,R,this.rightInnerX,R,this.leftInnerX,R,H,U,1,0),y),a.clipInnerBackPath=h.concat(g,ga,s,[x,E],c(N,R,x,E,this.rightInnerX,R,H,U,1,0),y,h,[z,w],q,s,G,c(N,R,this.leftInnerX,R,z,I,H,U,1,0),y),a.clipTopPath=a.clipTopBorderPath.concat(s,[z,w],q,n,ga,y),a.clipTopBorderPath= a.clipTopBorderPath.concat(h,[z,w],q,n,ga)):a.clipTopPath=a.clipTopBorderPath.concat(s,F,y)):(d=c(N,A,q,n,this.rightX,A,K,M,1,0),k=c(N,A,this.rightX,A,O,P,K,M,1,0),a.clipOuterFrontPath=h.concat(C,k,s,[O,T],c(N,R,O,T,this.rightX,R,K,M,0,0),y),a.clipOuterBackPath=h.concat([q,n],d,s,V,c(N,R,this.rightX,R,q,L,K,M,0,0),y),a.clipTopBorderPath=h.concat([q,n],d,k),this.isDoughnut?(q=c(N,A,z,w,this.rightInnerX,A,H,U,0,0),n=c(N,A,this.rightInnerX,A,x,ga,H,U,0,0),a.clipInnerFrontPath=h.concat([z,w],q,s,p,c(N, R,this.rightInnerX,R,z,I,H,U,1,0),y),a.clipInnerBackPath=h.concat(g,n,s,[x,E],c(N,R,x,E,this.rightInnerX,R,H,U,1,0),y),a.clipTopPath=a.clipTopBorderPath.concat(s,[z,w],q,n,y),a.clipTopBorderPath=a.clipTopBorderPath.concat(h,[z,w],q,n)):a.clipTopPath=a.clipTopBorderPath.concat(s,F,y)):eX?(d=c(N,A,q,n,this.leftX,A,K,M,1,0),k=c(N,A,this.leftX,A,O,P,K,M,1,0),a.clipOuterBackPath=h.concat(ba,k,s,[O,T],c(N,R,O,T,this.leftX,R,K,M,0,0),y),a.clipOuterFrontPath=h.concat([q,n],d,s,D,c(N,R,this.leftX,R,q, L,K,M,0,0),y),a.clipTopBorderPath=h.concat([q,n],d,k),this.isDoughnut?(q=c(N,A,z,w,this.leftInnerX,A,H,U,0,0),n=c(N,A,this.leftInnerX,A,x,ga,H,U,0,0),a.clipInnerBackPath=h.concat([z,w],q,s,G,c(N,R,this.leftInnerX,R,z,I,H,U,1,0),y),a.clipInnerFrontPath=h.concat(l,n,s,[x,E],c(N,R,x,E,this.leftInnerX,R,H,U,1,0),y),a.clipTopPath=a.clipTopBorderPath.concat(s,[z,w],q,n,y),a.clipTopBorderPath=a.clipTopBorderPath.concat(h,[z,w],q,n)):a.clipTopPath=a.clipTopBorderPath.concat(s,F,y)):(d=c(N,A,q,n,O,P,K,M,1, 0),a.clipOuterBackPath=h.concat([q,n]),a.clipTopBorderPath=a.clipOuterBackPath.concat(d),a.clipOuterFrontPath=a.clipTopBorderPath.concat(s,[O,T],c(N,R,O,T,q,L,K,M,0,0),y),this.isDoughnut?(q=c(N,A,z,w,x,ga,H,U,0,0),a.clipInnerBackPath=h.concat([z,w]),a.clipTopPath=a.clipTopBorderPath.concat(s,[z,w],q,y),a.clipTopBorderPath=a.clipTopBorderPath.concat(h,[z,w],q),a.clipInnerFrontPath=a.clipInnerBackPath.concat(q,s,[x,E],c(N,R,x,E,z,I,H,U,1,0),y)):a.clipTopPath=a.clipTopBorderPath.concat(s,F,y)):(d=c(N, A,q,n,O,P,K,M,1,0),a.clipOuterFrontPath=h.concat([q,n]),a.clipTopBorderPath=a.clipOuterFrontPath.concat(d),a.clipOuterBackPath=a.clipTopBorderPath.concat(s,[O,T],c(N,R,O,T,q,L,K,M,0,0),y),this.isDoughnut?(q=c(N,A,z,w,x,ga,H,U,0,0),a.clipInnerFrontPath=h.concat([z,w]),a.clipTopPath=a.clipTopBorderPath.concat(s,[z,w],q,y),a.clipTopBorderPath=a.clipTopBorderPath.concat(a.clipInnerFrontPath,q),a.clipInnerBackPath=a.clipInnerFrontPath.concat(q,s,[x,E],c(N,R,x,E,z,I,H,U,1,0),y)):a.clipTopPath=a.clipTopBorderPath.concat(s, F,y)),d=h.concat(ba,s,C),q=h.concat(J,s,Q),a.clipTopPath=a.clipTopPath.concat(d,q),a.clipOuterFrontPath=a.clipOuterFrontPath.concat(d),a.clipOuterFrontPath1=a.clipOuterFrontPath1.concat(d),a.clipOuterBackPath=a.clipOuterBackPath.concat(d),this.isDoughnut&&(q=h.concat(l,s,g),a.clipInnerFrontPath=a.clipInnerFrontPath.concat(q),a.clipInnerBackPath=a.clipInnerBackPath.concat(q))):(a.clipTopPath=a.clipOuterFrontPath=a.clipOuterBackPath=[],this.isDoughnut&&(a.clipInnerFrontPath=a.clipInnerBackPath=[])), b||(a.elements.startSlice._conf.index=e,a.elements.endSlice._conf.index=t,a.elements.frontOuter._conf.index=Pa(t,e),a.elements.frontOuter1&&(a.elements.frontOuter1._conf.index=e,v.frontOuter1.attr({path:a.clipOuterFrontPath1})),a.thisElement.attr({path:a.clipTopPath}),v.topBorder.attr({path:a.clipTopBorderPath}),v.bottom.attr({path:a.clipTopPath}),v.bottomBorder.attr({path:a.clipTopBorderPath}),v.frontOuter.attr({path:a.clipOuterFrontPath}),v.backOuter.attr({path:a.clipOuterBackPath}),this.isDoughnut&& (v.frontInner.attr({path:a.clipInnerFrontPath}),v.backInner.attr({path:a.clipInnerBackPath})),this.hasOnePoint?(a.elements.startSlice.hide(),a.elements.endSlice.hide()):(a.elements.startSlice.attr({path:a.startSlice}).show(),a.elements.endSlice.attr({path:a.endSlice}).show())))},onPlotHover:function(a,b){var c=this.pointElemStore[a]._confObject,d=c.thisElement,k=c.elements,e=this.colorObjs[a],t=e.hoverProps,f=b?t.hoverColorObj:e.color,l=e.showBorderEffect,G=b?t.borderColor:e.borderColor,e=b?t.borderWidth: e.borderWidth;Z?(t={fill:C(f.top),"stroke-width":0},1!==l&&(t.stroke=G,t["stroke-width"]=e),d._attr(t),l&&k.topBorder.attr({fill:C(f.topBorder),"stroke-width":0})):(d._attr({fill:C(f.top),"stroke-width":0}),k.topBorder.attr({stroke:G,"stroke-width":e}));k.bottom.attr({fill:C(f.bottom),"stroke-width":0});k.bottomBorder.attr({stroke:G,"stroke-width":e});k.frontOuter.attr({fill:C(f.frontOuter),"stroke-width":0});k.backOuter.attr({fill:C(f.backOuter),"stroke-width":0});k.startSlice.attr({fill:C(f.startSlice), stroke:G,"stroke-width":e});k.endSlice.attr({fill:C(f.endSlice),stroke:G,"stroke-width":e});d=da(c.start);c=da(c.end);(d>c?ta:0)+c-d>X&&k.frontOuter1.attr({fill:C(f.frontOuter),"stroke-width":0});this.isDoughnut&&(k.frontInner.attr({fill:C(f.frontInner),"stroke-width":0}),k.backInner.attr({fill:C(f.backInner),"stroke-width":0}))},createSlice:function(){var a={stroke:!0,strokeWidth:!0,"stroke-width":!0,dashstyle:!0,"stroke-dasharray":!0,translateX:!0,translateY:!0,"stroke-opacity":!0,transform:!0, fill:!0,opacity:!0,ishot:!0,start:!0,end:!0,cursor:!0},b=function(c,b){var d,e,k=this,r=k._confObject,f,l=r.elements,m,g,n=r.Pie3DManager;"string"===typeof c&&void 0!==b&&null!==b&&(d=c,c={},c[d]=b);if(c&&"string"!==typeof c){void 0!==c.cx&&(c.start=c.cx);void 0!==c.cy&&(c.end=c.cy);for(d in c)if(e=c[d],a[d])if(r[d]=e,"ishot"===d||"cursor"===d){f={};f[d]=e;for(m in l)l[m].attr(f);k._attr(f)}else if("transform"===d){for(m in l)l[m].attr({transform:c[d]});k._attr({transform:c[d]})}else"stroke"===d|| "strokeWidth"===d||"stroke-width"===d||"dashstyle"===d||"stroke-dasharray"===d?(f={},f[d]=e,l.topBorder&&l.topBorder.attr(f),l.startSlice.attr(f),l.endSlice.attr(f),l.bottomBorder.attr(f)):"fill"===d||"start"!==d&&"end"!==d||(g=!0);else k._attr(d,e);g&&(n.updateSliceConf(r),n.refreshDrawing())}else k=k._attr(c);return k},c=function(a,c,b,d){var e=this._confObject.elements,k;for(k in e)if(b)e[k].drag(c,b,d);else e[k].on(a,c);return b?this.drag(c,b,d):this._on(a,c)},d=function(){var a=this._confObject.elements, c;for(c in a)a[c].hide();return this._hide()},e=function(){var a=this._confObject.elements,c;for(c in a)a[c].show();return this._show()},f=function(){var a=this._confObject,c=a.elements,b;for(b in c)c[b].destroy();Z&&(a.clipTop.destroy(),a.clipOuterFront.destroy(),a.clipOuterBack.destroy(),a.clipOuterFront1&&a.clipOuterFront1.destroy(),a.clipInnerFront&&a.clipInnerFront.destroy(),a.clipInnerBack&&a.clipInnerBack.destroy());return this._destroy()};return function(a,l,m,g,n,q,h,s,p,y){var W=this.renderer; m=this.parseColor(m,g);a={start:a,end:l,elements:{},Pie3DManager:this};l=this.slicingWallsArr;g=a.elements;var x,u=Z?"litepath":"path";y&&(this.colorObjs[h]={color:m,borderColor:n,borderWidth:q,showBorderEffect:!1},y.hoverColorObj=this.parseColor(y.color,y.alpha),this.colorObjs[h].hoverProps=y);this.updateSliceConf(a,!0);Z?(y={fill:C(m.top),"stroke-width":0},1!==p&&(y.stroke=n,y["stroke-width"]=q),y=W[u](a.clipTopPath,this.topGroup).attr(y),p&&(g.topBorder=W[u](a.clipTopBorderPath,this.topGroup).attr({fill:C(m.topBorder), "stroke-width":0}))):(y=W[u](a.clipTopPath,this.topGroup).attr({fill:C(m.top),"stroke-width":0}),g.topBorder=W[u](a.clipTopBorderPath,this.topGroup).attr({stroke:n,"stroke-width":q}));g.bottom=W[u](a.clipTopPath,this.bottomBorderGroup).attr({fill:C(m.bottom),"stroke-width":0});g.bottomBorder=W[u](Z?a.clipTopPath:a.clipTopBorderPath,this.bottomBorderGroup).attr({stroke:n,"stroke-width":q});g.frontOuter=W[u](a.clipOuterFrontPath,this.slicingWallsFrontGroup).attr({fill:C(m.frontOuter),"stroke-width":0}); g.backOuter=W[u](a.clipOuterBackPath,this.outerBackGroup).attr({fill:C(m.backOuter),"stroke-width":0});g.startSlice=W[u](a.startSlice,this.slicingWallsFrontGroup).attr({fill:C(m.startSlice),stroke:n,"stroke-width":q});g.endSlice=W[u](a.endSlice,this.slicingWallsFrontGroup).attr({fill:C(m.endSlice),stroke:n,"stroke-width":q});n=da(a.start);q=da(a.end);p=(n>q?ta:0)+q-n;p>X&&(g.frontOuter1=W[u](a.clipOuterFrontPath1,this.slicingWallsFrontGroup).attr({fill:C(m.frontOuter),"stroke-width":0}),g.frontOuter1._conf= {index:n,isStart:0.5,pIndex:h},Z&&(a.clipOuterFront1=a.clipOuterFrontPath1));g.frontOuter._conf={index:Pa(q,n),isStart:0.5,pIndex:h};g.startSlice._conf={index:n,isStart:0,pIndex:h};g.endSlice._conf={index:q,isStart:1,pIndex:h};this.hasOnePoint&&(g.startSlice.hide(),g.endSlice.hide());this.isDoughnut?(g.frontInner=W[u](a.clipInnerFrontPath,this.innerFrontGroup).attr({fill:C(m.frontInner),"stroke-width":0}),g.backInner=W[u](a.clipInnerBackPath,this.innerBackGroup).attr({fill:C(m.backInner),"stroke-width":0}), g.backInner._conf={index:Pa(q,n),isStart:0.5,pIndex:h},p>X?Z?l.push(g.startSlice,g.frontOuter1,g.frontOuter,g.backInner,g.endSlice):l.push(g.startSlice,g.frontOuter1,g.frontOuter,g.endSlice):Z?l.push(g.startSlice,g.frontOuter,g.backInner,g.endSlice):l.push(g.startSlice,g.frontOuter,g.endSlice)):p>X?l.push(g.startSlice,g.frontOuter1,g.frontOuter,g.endSlice):l.push(g.startSlice,g.frontOuter,g.endSlice);if(void 0!==s){for(x in g)g[x].tooltip(s);y.tooltip(s)}Z&&(a.clipTop=a.clipTopPath,a.clipOuterFront= a.clipOuterFrontPath,a.clipOuterBack=a.clipOuterBackPath,this.isDoughnut&&(a.clipInnerFront=a.clipInnerFrontPath,a.clipInnerBack=a.clipInnerBackPath));y._confObject=a;a.thisElement=y;y._destroy=y.destroy;y.destroy=f;y._show=y.show;y.show=e;y._hide=y.hide;y.hide=d;y._on=y.on;y.on=c;y._attr=y.attr;y.attr=b;this.pointElemStore.push(y);return y}}()};Qa.prototype.constructor=Qa;p("renderer.pie3d",{type:"pie3d",isHovered:!1,translate:function(){var a=0,b=this.options,c=b.series[0],d=b.plotOptions.series.dataLabels, e=b.plotOptions.pie3d,f=h(c.startAngle,0)%360,l=c.managedPieSliceDepth,m=c.slicedOffset=e.slicedOffset,W=this.canvasWidth,G=this.canvasHeight,p=[this.canvasLeft+0.5*W,this.canvasTop+0.5*G-0.5*l],q,s,S,E,y,b=c.data,L,x=ba(W,G),X,C,w,v=d.distance,J=c.pieYScale,N=c.pieSliceDepth,A=c.slicedOffsetY=m*J;p.push(e.size,e.innerSize||0);p=ha(p,function(a,c){return(X=/%$/.test(a))?[W,G-l,x,x][c]*parseInt(a,10)/100:a});p[2]/=2;p[3]/=2;p.push(p[2]*J);p.push((p[2]+p[3])/2);p.push(p[5]*J);c.getX=function(a,c){S= n.asin((a-p[1])/(p[2]+v));return p[0]+(c?-1:1)*u(S)*(p[2]+v)};c.center=p;wa(b,function(c){a+=c.y});c.labelsRadius=p[2]+v;c.labelsRadiusY=c.labelsRadius*J;c.quadrantHeight=(G-l)/2;c.quadrantWidth=W/2;E=-f*T;E=z(1E3*E)/1E3;y=E+ta;e=g(parseInt(d.style.fontSize,10),10)+4;c.maxLabels=I(c.quadrantHeight/e);c.labelFontSize=e;c.connectorPadding=g(d.connectorPadding,5);c.isSmartLineSlanted=h(d.isSmartLineSlanted,!0);c.connectorWidth=g(d.connectorWidth,1);c.enableSmartLabels=d.enableSmartLabels;c.Pie3DManager|| (c.Pie3DManager=new Qa(p[0],p[1],p[2],p[3],J,N,this.layers.dataset,this.paper,1===c.data.length,c.use3DLighting));wa(b,function(b){q=E;L=a?b.y/a:0;E=z(1E3*(E+L*ta))/1E3;E>y&&(E=y);s=E;b.shapeArgs={start:z(1E3*q)/1E3,end:z(1E3*s)/1E3};b.centerAngle=S=(s+q)/2%ta;b.slicedTranslation=[z(u(S)*m),z(B(S)*A)];C=u(S)*p[2];c.radiusY=w=B(S)*p[4];b.tooltipPos=[p[0]+0.7*C,p[1]+w];b.percentage=100*L;b.total=a})},drawPlotPie3d:function(a,b){this.translate();var c=this,d=a.items,e=a.data,f=c.options,l=f.plotOptions, m=l.series,n=c.layers,p=c.elements.plots[0],h=c.datasets[0],l=l.series.dataLabels,q=m.dataLabels.style,m=g(a.moveDuration,m.animation.duration),W=c.paper,s=f.tooltip||{},s=s&&!1!==s.enabled,z=h.slicedOffset,y=h.slicedOffsetY,S=c.plotGraphicClick,x=c.plotDragMove,E=c.plotDragStart,ba=c.plotDragEnd,w=c.plotMouseDown,I=c.plotMouseUp,L=c.plotRollOver,N=c.plotRollOut,A=!!c.datasets[0].enableRotation,K=b.showBorderEffect,M=e.length,f=f.chart.usePerPointLabelColor,T={fontFamily:q.fontFamily,fontSize:q.fontSize, lineHeight:q.lineHeight,fontWeight:q.fontWeight,fontStyle:q.fontStyle},J=function(a){return function(){c.legendClick(a,!0,!1)}},H=function(a){return function(){return c.getEventArgs(a)}},U=function(a){return function(c,b,d,e,k){x.call(a,c,b,d,e,k)}},Q=function(a){return function(c,b,d){E.call(a,c,b,d)}},R=function(a){return function(){ba.call(a)}},v=function(a){return function(){w.call(a)}},X=function(a){return function(c){I.call(a,c)}},O=function(a){return function(c){N.call(a,c)}},P=function(a){return function(c){L.call(a, c)}},V,F,D,na,$,Y,fa,ia,ta,da,Z,aa;e&&M||(e=[]);p.singletonCase=1===M;p.chartPosition=Ha(c.container);p.pieCenter=h.center;p.timerThreshold=30;for(aa=-1;++aaca&&(ca=ta+ca),M=0<=ca&&casa?xa/aa:La,pa=Ga/2);O=aa*Ga;I=xa;for(ea=0;eaaa&&(V=aa),I=V+Ga,D=(V+fa[ea].oriY)/2,V=Y+e[L]*ha*u(n.asin(D/xa)),D*=d[L],D+=$,Z=$+A*B(ca),da=Y+N*u(ca),(2>L&&Vda)&&(V=da),F=V+y[L],ka=D+pa-2,x=F+y[L],ya.x=x,ya._x=x,J&&(R=1Switch to Zoom Mode
Select a subset of data to zoom into it for detailed view"),btnSwitchToPinModeTooltext:ka(l.btnswitchtopinmodetooltext,"Switch to Pin Mode
Select a subset of data and compare with the rest of the view"),pinPaneFill:Y(ka(l.pinpanebgcolor,f),J(l.pinpanebgalpha,15)),zoomPaneFill:Y(ka(l.zoompanebgcolor,"#b9d5f1"),J(l.zoompanebgalpha, 30)),zoomPaneStroke:Y(ka(l.zoompanebordercolor,"#3399ff"),J(l.zoompaneborderalpha,80)),crossline:{enabled:J(l.showcrossline,1),line:{"stroke-width":J(l.crosslinethickness,1),stroke:Na(ka(l.crosslinecolor,"#000000")),"stroke-opacity":J(l.crosslinealpha,20)/100},labelEnabled:J(l.showcrosslinelabel,l.showcrossline,1),labelstyle:{fontSize:za(l.crosslinelabelsize)?za(l.crosslinelabelsize)+"px":e.outCanvasStyle.fontSize,fontFamily:ka(l.crosslinelabelfont,e.outCanvasStyle.fontFamily)},valueEnabled:J(l.showcrosslinevalues, l.showcrossline,1),valuestyle:{fontSize:za(l.crosslinevaluesize)?za(l.crosslinevaluesize)+"px":e.inCanvasStyle.fontSize,fontFamily:ka(l.crosslinevaluefont,e.inCanvasStyle.fontFamily)}}});return b},preSeriesAddition:function(){var b=this.dataObj,e=b.chart,l=this.hcJSON,f=l[aa],g=this.smartLabel,m=J(e.compactdatamode,0),h=ka(e.dataseparator,"|"),n=J(e.showlabels,1),B=e.labeldisplay&&e.labeldisplay.toLowerCase(),u=n&&J(e.labelheight),V="rotate"===B?270:J(e.rotatelabels,1)?270:0,z=l.xAxis.labels.style, ba=za(z.lineHeight),s=l.chart.labelPadding=J(e.labelpadding,0.2*ba)+l.chart.plotBorderWidth,v,L,E,I=0,C=-1,T,fa,X;0>u&&(u=void 0);0>s&&(s=(l.chart.plotBorderWidth||0)+2);v=(v=b.categories)&&v[0]||{};b=v.category;delete v.category;l.categories=B=ca({data:L=m&&b&&b.split&&b.split(h)||b||[],rotate:V,wrap:"none"!==B},v);void 0!==b&&(v.category=b);v=L.length||0;if(T=!m&&n&&0!==u&&v||0){for(;T--;)L[T]=L[T]&&(E=L[T].label||"")&&((fa=E.length)>I&&(I=fa,C=T,E)||E)||"";I&&(E=L[C])}else if(m&&v&&!u)if(V){m= da.document.createElement("div");u=da.document.createElement("span");m.setAttribute("class","fusioncharts-zoomline-localsmartlabel");m.style.cssText="display:block;width:1px;position:absolute;";for(X in z)m.style[X]=z[X];u.innerHTML=b.replace(/\s*/g,"").replace(/\{br\}/ig,"
").replace(RegExp(Ja(h),"g")," ");m.appendChild(u);da.document.body.appendChild(m);u=u.offsetWidth||void 0;m.parentNode.removeChild(m)}else E=L[v-1]||L[0];void 0!==u&&0!==u||!n||(E?(g.setStyle(z),E=g.getSmartText(E),u=V?E.width: E.height):u=ba*(V&&3||1));u>0.3*f.height&&(u=0.3*f.height);B.labelHeight=u&&u+6||0;B.show=u&&n||0;B.css=ca({},z);V?(B.css.rotation=V,B.css["text-anchor"]="end"):B.css["vertical-align"]="top";l.xAxis.min=0;l.xAxis.max=v&&v-1||0;u+=J(e.scrollheight,16)||16;l.chart.marginBottom+=s;f.marginBottomExtraSpace+=u;ka(e.caption,e.subcaption)||(f.marginTopExtraSpace+=16)},series:function(){var b=this.dataObj,e=b.chart,l=b.dataset,f=this.hcJSON,g=f[aa],m=g[0],S=f.series,n=J(e.yaxismaxvalue),B=J(e.yaxisminvalue), u=J(e.forceyaxislimits,0),V=J(e.compactdatamode,0),z=ka(e.dataseparator,"|"),ba=Ja(e.indecimalseparator),s=Ja(e.inthousandseparator),v=J(e.drawanchors,e.showanchors,1),L=!!J(e.showlegend,1),E,I,C,T,fa,X=Infinity,Y=-Infinity,ca;fa=f.categories.data.length;if(l&&l.length&&fa){ba&&(ba=RegExp(ba,"g"));s&&(s=RegExp(s,"g"));!s&&!ba&&V&&u&&void 0!==n&&void 0!==B?(u=!0,Y=Za(n,B),X=db(B,n)):u=!1;n=0;for(B=l.length;nfa&&(T.length=fa);ca=T.length;if(V){if(!u)for(;ca--;)I=za(T[ca]),isNaN(I)&&(I=void 0),I>Y&&(Y=I),I<=X&&(X=I),T[ca]=I}else for(;ca--;)I=T[ca]&&T[ca].value||"",s&&(I=I.replace(s,"")),ba&&(I=I.replace(ba,".")),I=za(I),isNaN(I)&&(I=void 0),I>Y&&(Y=I),I<=X&&(X=I),T[ca]=I;S.push(I={index:n,type:"zoomline",data:T,name:E.seriesname||"",showInLegend:E.seriesname&&J(E.includeinlegend,1)&&L||!1,showAnchors:J(E.drawanchors,E.showanchors,v),visible:!J(E.initiallyhidden,0), lineWidth:2});T.length=fa;void 0!==C&&(E.data=C);I.attrs=this.seriesGraphicsAttrs(E);E=I.attrs.anchors;I.color=I.attrs.graphics.stroke;I.ancorRadius=E.r+E["stroke-width"]/2;I.marker={fillColor:E.fill,lineColor:E.stroke,lineWidth:1,symbol:"circle"}}-Infinity!==Y&&Infinity!==X||(Y=X=void 0);u=Va(J(e.displaystartindex,1),10)-1;z=Va(J(e.displayendindex,fa||2),10)-1;1>(l=J(e.pixelsperpoint,15))&&(l=1);(S=J(e.pixelsperlabel,e.xaxisminlabelwidth,f.categories.rotate?20:60))u||u>=(fa-1||1))&& (u=0);(z<=u||z>(fa-1||1))&&(z=fa-1||1);f.stepZoom={cnd:J(e.connectnulldata,0),amrd:J(e.anchorminrenderdistance,20),nvl:J(e.numvisiblelabels,0),cdm:V,oppp:l,oppl:S,dsi:u,dei:z,vdl:z-u,dmax:m.max=Y,dmin:m.min=X,clen:fa,offset:0,step:1,llen:0,alen:0,ddsi:u,ddei:z,ppc:0};this.configureAxis(f,b);b.trendlines&&h(b.trendlines,f.yAxis,g,!1,this.isBar)}},seriesGraphicsAttrs:function(b){var e=this.dataObj.chart,l="0"!=(b.dashed||e.linedashed||"0"),f,h,l={"stroke-width":J(b.linethickness,e.linethickness,2), stroke:Na(ka(b.color,e.linecolor,this.colorManager.getPlotColor())),"stroke-opacity":J(b.alpha,e.linealpha,100)/100,"stroke-dasharray":l?[J(b.linedashlen,e.linedashlen,5),J(b.linedashgap,e.linedashgap,4)]:"none","stroke-linejoin":"round","stroke-linecap":"round"};f=ca({},l);h=l["stroke-width"]+J(e.pinlinethicknessdelta,1);f["stroke-width"]=0=e.clen?e.clen:b)-1}}},Ua.msline);Qa("renderer.zoomline",{resetZoom:function(){var b=this._zoomhistory,e=this.options.stepZoom;if(!b.length)return!1;b.length=0;this.zoomTo(e.dsi,e.dei)&&v("zoomReset",this._zoomargs,this.fusionCharts,[this.fusionCharts.id]);return!0},zoomOut:function(){var b=this._zoomhistory.pop(),e=this.options.stepZoom, l,f,g;b?(l=b.dsi,f=b.dei):this._prezoomed&&(l=0,f=e.clen-1);(g=this.zoomTo(l,f))&&Ha.raiseEvent("zoomedout",g,this.fusionCharts);return!0},zoomRangePixels:function(b,e){var l=this._zoomhistory,f=this._zoominfo,g=f.ppp,f=f.ddsi,m;l.push(this._zoominfo);(m=this.zoomTo(f+C(b/g),f+C(e/g)))?Ha.raiseEvent("zoomedin",m,this.fusionCharts):l.pop()},zoomRange:function(b,e){var l=this._zoomhistory,f;l.push(this._zoominfo);(f=this.zoomTo(+b,+e))?Ha.raiseEvent("zoomedin",f,this.fusionCharts):l.pop()},zoomTo:function(b, e){var l=this.xlabels.data,f=this._zoominfo,g=this._zoomhistory,m=f.clen;0>b&&(b=0);b>=m-1&&(b=m-1);e<=b&&(e=b+1);e>m-1&&(e=m-1);if(b===e||b===f.dsi&&e===f.dei)return!1;this.pinRangePixels();f=ca({},f);f.dsi=b;f.dei=e;f=this._zoominfo=f;this.updatePlotZoomline();this.zoomOutButton[f.vdl===f.clen-1?"hide":"show"]();this.resetButton[g.length?"show":"hide"]();this.elements.zoomscroller.attr({"scroll-ratio":f.vdl/(m-!!m),"scroll-position":[f.dsi/(m-f.vdl-1),!0]});l={level:g.length+1,startIndex:b,startLabel:l[b], endIndex:e,endLabel:l[e]};v("zoomed",l,this.fusionCharts,[this.fusionCharts.id,b,e,l.startLabel,l.endLabel,l.level]);return l},activatePin:function(b){var e=this._zoominfo,l=this.options.chart,f=this.pinButton;if(f&&e.pinned^(b=!!b))return b||this.pinRangePixels(),v("zoomModeChanged",{pinModeActive:b},this.fusionCharts,[]),l.showToolBarButtonTooltext&&f.tooltip(l[b&&"btnSwitchToZoomModeTooltext"||"btnSwitchToPinModeTooltext"]||""),f.attr("button-active",b),e.pinned=b},pinRangePixels:function(b,e){var l= this.paper,f=this.elements,h=this.xlabels.data,m=this._zoominfo,S=this.layers.zoompin,n=f.pinrect,B=f["clip-pinrect"],u=this._pingrouptransform,V=this.plots,z=e-b,ba,s;if(m&&S&&n){if(b===e)return S.hide(),f.pintracker.hide(),this.pinButton.attr("button-active",!1),m.pinned=!1;for(s=V.length;s--;)n=V[s],ba=n.pinline,ba||(ba=n.pinline=l.path(void 0,S).attr(n.attrPin)),ba.attr("path",n.graphic.attrs.path);B[0]=b+(g.svg?this.canvasLeft:0);B[2]=z;S.attr({"clip-rect":B,transform:u}).show();f.pintracker.__pindragdelta= 0;f.pintracker.show().attr({transform:u,x:b,width:z});b=this.getValuePixel(b);e=this.getValuePixel(e);v("pinned",{startIndex:b,endIndex:e,startLabel:h[b],endLabel:h[e]},this.fusionCharts,[this.fusionCharts.id,b,e,h[b],h[e]]);return m.pinned=!0}},getValuePixel:function(b){var e=this._zoominfo;return e.ddsi+C(b/e.ppp)},getParsedLabel:function(b){var e=this.xlabels;return e.parsed[b]||(e.parsed[b]=Da(e.data[b]||""))},drawGraph:function(){var b=this,e=b.paper,l=b.canvasLeft,f=b.canvasTop,h=b.canvasWidth, m=b.canvasHeight,S=b.options,n=S.chart,B=n.plotBorderWidth,u=n.useRoundEdges,V=n.showToolBarButtonTooltext,z=n.crossline,v=b.layers,s=b.toolbar,C=b.elements,L=n.allowPinMode,E,I=S.categories,J=!1,T,Y,X,aa,da,Z;Z=b._zoominfo=ca({},S.stepZoom);b._zoomhistory=[];Z.clen&&(J=b._prezoomed=Z.dei-Z.dsil&&(e=l);Y.transform(["T",e,E]);C.pintracker.transform(Y.transform());this.__pindragoffset=b},function(){this.__pinboundleft=0-T[0]+aa+(g.svg&&l||0);this.__pinboundright=this.__pinboundleft+da-T[2];Y._.clipispath=!0},function(){Y._.clipispath=!1;this.__pindragdelta=this.__pindragoffset;delete this.__pindragoffset;delete this.__pinboundleft;delete this.__pinboundright}),b.pinButton=s.add("pinModeIcon",function(){b.activatePin(!b._zoominfo.pinned)}, {tooltip:V&&n.btnSwitchToPinModeTooltext||""})),B++,L=g.crispBound(l-B,f+m+B,h+B+B,n.scrollHeight,B),B--,C.zoomscroller=e.scroller(L.x+(u&&-1||B%2),L.y-(u&&4||2),L.width-(!u&&2||0),L.height,!0,{showButtons:n.scrollShowButtons,scrollRatio:Z.vdl/(Z.clen-!!Z.clen),scrollPosition:[Z.dsi/(Z.clen-Z.vdl-1),!1],displayStyleFlat:n.scrollBarFlat},X).attr({fill:n.scrollColor,r:u&&2||0}).scroll(b.updatePlotZoomline,b),u&&C.zoomscroller.shadow(!0),function(){var e;g.eve.on("raphael.scroll.start."+C.zoomscroller.id, function(f){e=f;b.crossline&&b.crossline.disable(!0);Ha.raiseEvent("scrollstart",{scrollPosition:f},b.logic.chartInstance)});g.eve.on("raphael.scroll.end."+C.zoomscroller.id,function(f){b.crossline&&b.crossline.disable(!1);Ha.raiseEvent("scrollend",{prevScrollPosition:e,scrollPosition:f},b.logic.chartInstance)})}(),bb(b,{attr:{stroke:n.zoomPaneStroke,fill:n.zoomPaneFill,strokeWidth:0},selectionStart:function(){},selectionEnd:function(e){var f=e.selectionLeft-l;e=f+e.selectionWidth;b.crossline&&b.crossline.hide(); b[b._zoominfo.pinned?"pinRangePixels":"zoomRangePixels"](f,e)}}),b.zoomOutButton=s.add("zoomOutIcon",function(){b.zoomOut()},{tooltip:V&&n.btnZoomOutTooltext||""})[J&&"show"||"hide"](),b.resetButton=s.add("resetIcon",function(){b.resetZoom()},{tooltip:V&&n.btnResetChartTooltext||""}).hide(),L=b.resetButton.attr("fill"),L[2]="rgba(255,255,255,0)",b.resetButton.attr("fill",[L[0],L[1],L[2],L[3]]),z&&0!==z.enabled&&(b.crossline=new ua(b,z)),b.updatePlotZoomline())},drawPlotZoomline:function(b,e){var l= this.paper,f=this._yzero||(this._yzero=this.yAxis[0].getAxisPosition(0)),g=e.attrs,m=e.visible,h=m?"show":"hide",n=this.layers.dataset,B=b.group||(b.group=l.group("plot-zoomline-dataset",n)),n=b.anchorGroup||(b.anchorGroup=l.group("plot-zoomline-anchors",n)),l=b.graphic||(b.graphic=l.path(void 0,B)),f=["T",this._visx,f];B.transform(f)[h]();n.transform(f)[h]();b.graphic=l.attr(g.graphics).shadow(g.shadow);b.attrPin=g.pin;b.visible=m;b.anchors=[];b.anchors.show=e.showAnchors;b.anchors.attrs=g.anchors; b.anchors.attrsShadow=g.anchorShadow;b.anchors.left=-(g.anchors.r+0.5*g.anchors["stroke-width"]);b.anchors.right=this._visw-b.anchors.right},updatePlotZoomline:function(b,e){var l=this.paper,f=this._ypvr,g=this._visw,m=this.xlabels,h=m.css,n=m.group,B=this.plots,u,v,z,C,s,J,L;!e&&(e=this._zoominfo);z=e.oppp;C=e.vdl=e.dei-e.dsi;s=e.ppl=e.nvl?g/e.nvl:e.oppl;g=e.step=(v=e.ppp=g/C)C)for(s=C,C=f;s'),da.jQuery("#fc-zoominfo").css({position:"absolute",left:"10px",top:"0","pointer-events":"none",opacity:0.7,width:"250px",zIndex:"999",border:"1px solid #cccccc","box-shadow":"1px 1px 3px #cccccc",background:"#ffffff"})), this.debug.text(JSON.stringify(e,0,2))):(this.debug&&da.jQuery("#fc-zoominfo").remove(),delete this.debug))},drawPlotZoomlineGraphics:function(b,e,g,f,h){var m=this.smartLabel,v=[],n=!b.cnd,B=b.ddei,u=b.clen,C=b.step,z=b.lskip,J=b.ppp,s=b.offset,Y=b.pvr,L=this._visw,E=this._visout,I=this._lcmd,aa="M",T,Z,X=h&&h[0],ca,da;f=f[0];var ha={},ka={},ia,oa=0,ua,wa,pa=-b.norm;b=b.ddsi;var sa=0;X&&(h.group.transform(["T",-s,0]),wa=h.wrap,ca=h._height,da=h._width,wa&&m.setStyle(h.css));for(;b<=B;b+=C,pa+=C)ua= oa/3+sa,ia=pa*J,void 0===(T=e[b])?(n&&(aa="M"),Z=E,h=ia-s,T=E,sa++):(v[oa++]=aa,v[oa++]=Z=h=ia-s,v[oa++]=T*=Y,aa="L"),f&&(f=f.attr((ha.cx=Z,ha.cy=T,ha)).next),!X||ua%z||(ua=X.attrs,Z=this.getParsedLabel(b),h=0>h||h>L?E:ia,X._prevtext===Z?delete ka.text:ka.text=X._prevtext=Z,ua[I]===h?delete ka[I]:ka[I]=h,wa&&Z&&(ka.text=m.getSmartText(Z,da,ca).text),X=X.attr(ka).next);B>=u&&(void 0!==(T=e[u-1])&&(v[oa++]="L",v[oa++]=(pa-(B-u))*J-s,v[oa++]=T*Y),f&&f.attr((ha.cx=E,ha.cy=E,ha)));g.attr("path",v)},legendClick:function(b){var e= !b.visible,g=e?"show":"hide";b.group[g]();b.anchorGroup[g]();this.base.legendClick.apply(this,arguments);return b.visible=e},dispose:function(){var b;this.crossline&&(this.crossline.dispose(),delete this.crossline);(b=this.elements.pintracker)&&(b.undrag(),delete this.elements.pintracker);delete this.zoomOutButton;delete this.resetButton;delete this.pinButton;this.xlabels&&(this.xlabels.length=0);delete this.xlabels;this.base.dispose.apply(this)}},Qa["renderer.cartesian"]);ua=function(b,e){var g= b.paper,f=this.left=b._visx,h=this.width=b._visw,m=this.top=b.canvasTop,v=this.height=b.canvasHeight,n=this._visout=b._visout,B=this.plots=b.plots,u=b.layers.dataset,C,z=e.labelstyle,J=e.valuestyle;C=this.group=g.group("crossline-labels",u).attr({transform:["T",f,b._yzero]});this.tracker=g.rect(f,m,h,v,u).attr({stroke:"none","stroke-width":0,fill:oa}).toFront().mousedown(this.onMouseDown,this).mouseup(this.onMouseUp,this,!0).mouseout(this.onMouseOut,this).mousemove(this.onMouseMove,this);Ka&&this.tracker.touchstart(this.onMouseMove, this);this.container=b.container;this.line=g.path(void 0,u).attr(ca({path:["M",f,m,"l",0,v]},e.line)).toBack();f=this.labels=e.valueEnabled&&g.set();e.labelEnabled&&(this.positionLabel=g.text(n,m+v+(b.options.chart.scrollHeight||0)+2.5,"").insertAfter(b.xlabels.group.parent).css(z).attr({"vertical-align":"top","text-bound":["rgba(255,255,255,1)","rgba(0,0,0,1)",1,2.5]}));this.hide();this.pixelRatio=b._ypvr;this.positionLabels=b.xlabels||{data:[],parsed:[]};this.getZoomInfo=function(){return b._zoominfo}; this.getDataIndexFromPixel=function(e){return b.getValuePixel(e)};this.getPositionLabel=function(e){return b.getParsedLabel(e)};if(e.valueEnabled)for(m=0,v=B.length;m=h&&"start"||h>=g&&"end"||"middle"})});this.positionLabel&&this.positionLabel.attr({x:h+this.left,text:this.getPositionLabel(f)})};ua.prototype.show=function(){this.disabled||(this.hidden=!1,this.group.attr("visibility", "visible"),this.line.attr("visibility","visible"),this.positionLabel&&this.positionLabel.attr("visibility","visible"))};ua.prototype.hide=function(){this.hidden=!0;this.group.attr("visibility","hidden");this.line.attr("visibility","hidden");this.positionLabel&&this.positionLabel.attr("visibility","hidden")};ua.prototype.dispose=function(){for(var b in this)this.hasOwnProperty(b)&&delete this[b]};g.addSymbol({pinModeIcon:function(b,e,g){var f=0.5*g,h=b-g,m=b+g,v=b-f,n=b+f,B=b+0.5,u=B+1,C=B+1.5,z=e- g,J=e+f,s=e-f,f=e+(g-f);return["M",h,z,"L",v,s,v,f,h,J,b-0.5,J,b,e+g+0.5,B,J,m,J,n,f,n,s,m,z,C,z,C,s,C,f,u,f,u,s,C,s,C,z,"Z"]},zoomOutIcon:function(b,e,l){b-=0.2*l;e-=0.2*l;var f=0.8*l,h=g.rad(43),m=g.rad(48),v=b+f*Z(h),h=e+f*wa(h),n=b+f*Z(m),m=e+f*wa(m),B=g.rad(45),u=v+l*Z(B),C=h+l*wa(B),z=n+l*Z(B);l=m+l*wa(B);return["M",v,h,"A",f,f,0,1,0,n,m,"Z","M",v+1,h+1,"L",u,C,z,l,n+1,m+1,"Z","M",b-2,e,"L",b+2,e,"Z"]},resetIcon:function(b,e,g){var f=b-g,h=(Ea.PI/2+Ea.PI)/2;b+=g*Z(h);var h=e+g*wa(h),m=2*g/3; return["M",f,e,"A",g,g,0,1,1,b,h,"L",b+m,h-1,b+2,h+m-0.5,b,h]}})}]);