Files
controls-web/controls-rework/OLD/charts/js/fusioncharts.charts.js
2026-02-17 09:29:34 -06:00

217 lines
102 KiB
JavaScript

/*
FusionCharts JavaScript Library
Copyright FusionCharts Technologies LLP
License Information at <http://www.fusioncharts.com/license>
FusionCharts JavaScript Library
Copyright FusionCharts Technologies LLP
License Information at <http://www.fusioncharts.com/license>
@version 3.11.0
*/
FusionCharts.register("module",["private","modules.renderer.js-charts",function(){function pa(c,D){for(var f=[],a=0,h=c.length;a<h;a++)f[a]=D.call(c[a],c[a],a,c);return f}function S(c,D){var f=D?360:n;c=(c||0)%f;return 0>c?f+c:c}function Ka(c,D,f,a,h){return Ja((D-f[1]-a.top)/h,c-f[0]-a.left)}function ma(c){this.config={};this.linkedItems={chart:c}}var I=this,W=I.hcLib,La=W.hasTouch,Ea=I.window,ja=Ea.document,la=W.Raphael,Ia=W.BLANKSTRING,ea=W.pluck,s=W.pluckNumber,Ta=W.getFirstValue,Ma=W.extend2,
na=W.toRaphaelColor,Ba=W.hasSVG,Ua=W.hashify,ra="createTouch"in ja,Ga=ra&&!(Ea.navigator.maxTouchPoints||Ea.navigator.msMaxTouchPoints),Fa=W.each,Na=W.plotEventHandler,za=W.componentDispose,xa=8===Ea.document.documentMode?"visible":"",sa=Math,fa=sa.sin,qa=sa.cos,Ja=sa.atan2,ua=sa.round,ka=sa.min,va=sa.max,wa=sa.abs,ya=sa.PI,Aa=sa.ceil,Ca=sa.floor,ta=ya/180,a=180/ya,b=Math.PI,d=b/2,n=2*b,l=b+d,k=W.getFirstColor,g=W.getFirstAlpha,N=W.graphics.getDarkColor,p=W.graphics.getLightColor,F=W.graphics.convertColor,
G=W.POSITION_BOTTOM,z=W.POSITION_RIGHT,m=W.chartAPI,q=W.COMMASTRING,r=W.ZEROSTRING,K=W.ONESTRING,B=!/fusioncharts\.com$/i.test(Ea.location.hostname),ba={},R={};m("column2d",{standaloneInit:!0,friendlyName:"Column Chart",creditLabel:B,defaultDatasetType:"column",applicableDSList:{column:!0},singleseries:!0},m.sscartesian);m("column3d",{friendlyName:"3D Column Chart",defaultDatasetType:"column3d",applicableDSList:{column3d:!0},defaultPlotShadow:1,creditLabel:B,is3D:!0,standaloneInit:!0,hasLegend:!1,
singleseries:!0,fireGroupEvent:!0,defaultZeroPlaneHighlighted:!1},m.sscartesian3d);m("bar2d",{friendlyName:"Bar Chart",isBar:!0,standaloneInit:!0,defaultDatasetType:"bar2d",creditLabel:B,applicableDSList:{bar2d:!0},singleseries:!0,spaceManager:m.barbase},m.ssbarcartesian);m("bar3d",{friendlyName:"3D Bar Chart",defaultDatasetType:"bar3d",applicableDSList:{bar3d:!0},defaultPlotShadow:1,fireGroupEvent:!0,standaloneInit:!0,creditLabel:B,is3D:!0,isBar:!0,singleseries:!0,defaultZeroPlaneHighlighted:!1},
m.ssbarcartesian3d);m("line",{friendlyName:"Line Chart",standaloneInit:!0,creditLabel:B,defaultPlotShadow:1,singleseries:!0,axisPaddingLeft:0,axisPaddingRight:0,defaultDatasetType:"line"},m.sscartesian,{zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0});m("area2d",{friendlyName:"Area Chart",standaloneInit:!0,creditLabel:B,defaultDatasetType:"area",singleseries:!0,defaultPlotShadow:0},m.sscartesian);m("pareto2d",{defaultDatasetType:"column2d",singleseries:!0,creditLabel:B,_createDatasets:function(){var c=
this.components,D=this.jsonData,f=this.is3D,a=c.numberFormatter,h=D.data||D.dataset&&D.dataset[0]&&D.dataset[0].data,e=h&&h.length,J=D.chart,b=this.defaultDatasetType,D=new (FusionCharts.get("component",["dataset","Pareto"])),d=s(J.showcumulativeline,1),P=[],t,v;if(h){for(J=0;J<e;J++)t=h[J],v=a.getCleanValue(t.value),null!==v&&"true"!==t.vline&&!0!==t.vline&&1!==t.vline&&"1"!==t.vline&&P.push(t);this.config.categories=P;a=c.dataset||(c.dataset=[]);(h=ea(b))&&h.toLowerCase();h=FusionCharts.register("component",
["datasetGroup","column"]);h=c[void 0]=new h;h.chart=this;h.init();if(e=f?FusionCharts.get("component",["dataset","Column3d"]):FusionCharts.get("component",["dataset","Column"]))(f=a[0])?(b=P.length,h=f.components.data.length,b<h&&f.removeData(b,h-b),f.JSONData={data:P},D.configure.call(f)):(f=new e,a.push(f),f.chart=this,f.index=J,h&&h.addDataSet(f,0,0),D.init(f,P,b));c=c.yAxis[1];if(d)c&&c.setAxisConfig({drawLabels:!0,drawPlotLines:!0,drawAxisName:!0,drawAxisLine:!0,drawPlotBands:!0,drawTrendLines:!0,
drawTrendLabels:!0}),c.show(),e=FusionCharts.get("component",["dataset","line"]),(f=a[1])?(b=P.length,h=f.components.data.length,b<h&&f.removeData(b,h-b),f.JSONData={data:P},D.configure.call(f)):(f=new e,a.push(f),f.chart=this,f.index=J,D.init(f,P,"line"));else{if(f=a[1])za.call(f),a.pop();c&&(c.setAxisConfig({drawLabels:!1,drawPlotLines:!1,drawAxisName:!1,drawAxisLine:!1,drawPlotBands:!1,drawTrendLines:!1,drawTrendLabels:!1}),c.hide())}}else this.setChartMessage()},_setCategories:function(){var c=
this.components,D=this.jsonData,f=D.dataset,a=c.numberFormatter,c=c.xAxis,D=D.data||f&&f[0].data||[],f=[],h,e=D.length,b,d={},oa=0,P;for(b=0;b<e;b++){h=D[b];P=a.getCleanValue(h.value,!0);if("true"===h.vline||"1"===h.vline||1===h.vline||!0===h.vline)d[oa]=h;else if(null===P)continue;else h.value=P,f.push(h);oa++}f.sort(function(c,f){return f.value-c.value});for(b in d)f.splice(b,0,d[b]);c[0].setCategory(f)},standaloneInit:!0,hasLegend:!1,isPercentage:!0},m.msdybasecartesian);m("pareto3d",{standaloneInit:!0,
is3D:!0,friendlyName:"3D Pareto Chart",creditLabel:B,fireGroupEvent:!0,defaultPlotShadow:1,singleseries:!0,hasLegend:!1,defaultDatasetType:"column3d",_createDatasets:m.pareto2d,_setCategories:m.pareto2d,use3dlineshift:1,isPercentage:!0},m.msdybasecartesian3d);m("pie2d",{friendlyName:"Pie Chart",standaloneInit:!0,defaultSeriesType:"pie",defaultPlotShadow:1,reverseLegend:1,alignCaptionWithCanvas:0,sliceOnLegendClick:!0,isSingleSeries:!0,dontShowLegendByDefault:!0,defaultDatasetType:"Pie2D",applicableDSList:{Pie2D:!0},
defaultZeroPlaneHighlighted:!1,creditLabel:B,_plotDragMove:function(c,D,f,a,h){var e=this.data("plotItem"),b=e.chart,e=e.seriesData,d=b.components.dataset[0].config;isNaN(c)||isNaN(D)||!d.enableRotation||e.singletonCase||e.isRightClicked||(c=Ka.call(h,f,a,e.pieCenter,e.chartPosition,1),e.isRotating||(e.dragStartAngle!==c&&(e.isRotating=!0),I.raiseEvent("RotationStart",{startingAngle:S(e.startingAngleOnDragStart,!0)},b.chartInstance)),d.startAngle+=c-e.dragStartAngle,e.dragStartAngle=c,e.moveDuration=
0,d.updateInited||(d.updateInited=!0,setTimeout(b._batchRotate||(b._batchRotate=function(){b._rotate();d.updateInited=!1}),50)))},_plotDragStart:function(c,D,f){var a=this.data("plotItem"),h=a.chart,a=a.seriesData,e=h.components.dataset[0].config,b=-e.startAngle;a.isRightClicked=La||0===f.button||1===f.button?!1:!0;if(e.enableRotation&&!a.isRightClicked){a.isRotating=!1;e=h.linkedItems.container;h={left:0,top:0};if(e.getBoundingClientRect)e=e.getBoundingClientRect(),h.top=e.top+(Ea.pageYOffset||ja.scrollTop||
0)-(ja.clientTop||0),h.left=e.left+(Ea.pageXOffset||ja.scrollLeft||0)-(ja.clientLeft||0);else for(;e;)h.left+=e.offsetLeft||0,h.top+=e.offsetTop||0,e!==ja.body&&e!==ja.documentElement&&(h.left-=e.scrollLeft||0,h.top-=e.scrollTop||0),e=e.offsetParent;a.chartPosition=h;c=Ka.call(f,c,D,a.pieCenter,a.chartPosition,1);a.dragStartAngle=c;a.startingAngleOnDragStart=b}},_plotDragEnd:function(c){var D=this.data("plotItem"),f=D.chart,a=D.seriesData,h=-a.startAngle;a.isRightClicked||(f.disposed||f._rotate(),
!a.isRotating&&f._plotGraphicClick.call(D.graphic,c),a.isRotating&&(setTimeout(function(){a.isRotating=!1},0),I.raiseEvent("RotationEnd",{startingAngle:S(h,!0),changeInAngle:h-a.startingAngleOnDragStart},f.chartInstance)))},_plotRollOver:function(c){var D=this.plotItem||this.data("plotItem"),f=D.chart,a=f.components.dataset[0].config,h,e;a.isRotating||(Na.call(this,f,c,"DataPlotRollOver"),f.onPlotHover(this,!0));a.isHovered=!0;(c=D.innerDiameter)&&(h=D.centerLabelConfig)&&(e=h.label)&&f.drawDoughnutCenterLabel(e,
D.center[0],D.center[1],c,c,h,!1)},onPlotHover:function(c,D){var f=c.data("plotItem"),a=f.center,h=f.rolloverProperties||{},e=D?h.color:f.color,b=D?h.borderWidth:f.borderWidth,d=D?h.borderColor:f.borderColor;e&&(D&&(e.cx=a[0],e.cy=a[1],e.r=f.radius),h.enabled&&f.graphic.attr({fill:na(e),"stroke-width":b,stroke:d}))},_plotRollOut:function(c){var D=this.plotItem||this.data("plotItem"),f=D.chart,a=f.components.dataset[0].config,h,e;a.isRotating||(Na.call(this,f,c,"DataPlotRollOut"),f.onPlotHover(this,
!1));a.isHovered=!1;(c=D.innerDiameter)&&(h=a.centerLabelConfig)&&((e=h.label)||!e)&&f.drawDoughnutCenterLabel(e,D.center[0],D.center[1],c,c,h,!1)},_rotate:function(){var c,D,f=this.components.dataset[0],a=f.config,h=f.components.data,e=this.config,b=a.slicingDistance,f=f.config,d=n/f.valueTotal,oa=e.canvasLeft+.5*e.canvasWidth,e=e.canvasTop+.5*e.canvasHeight,P=a.pieMinRadius,t=.5*(a.piePlotOptions.innerSize||0),v,u,A,l,g;v=(a.startAngle||0)%n;for(g=0;g<h.length;g+=1)A=h[g].config,l=h[g].graphics,
c=A.y,null!==c&&void 0!==c&&(u=v,v-=f.singletonCase?n:c*d,c=.5*(v+u),A.angle=c,A.transX=qa(c)*b,A.transY=fa(c)*b,A.slicedTranslation="t"+qa(c)*b+q+fa(c)*b,(D=A._rotateAttrs)||(D=A._rotateAttrs={ringpath:[],transform:Ia}),c=D.ringpath,c[0]=oa,c[1]=e,c[2]=P,c[3]=t,c[4]=v,c[5]=u,D.transform=A.sliced?A.slicedTranslation:Ia,l.element.attr(D));this.placeDataLabels(!0,h,a)},getPlotData:function(c,D){var f=this.components.dataset[0],a=f.components.data[c].config,f=f.config.userData||(f.config.userData=[]),
h,e;if(f[c])f=f[c];else{f=f[c]={};for(e in a)"object"!==typeof(h=a[e])&&"function"!==typeof h&&0!==e.indexOf("_")&&(f[e]=h);f.value=f.y;f.categoryLabel=f.label=f.seriesName;delete f.y;delete f.total;delete f.doNotSlice;delete f.name;delete f.seriesName;delete f.centerAngle;delete f.showInLegend;delete f.angle;delete f.endAngle;delete f.isVisible;delete f.setColor;delete f.slicedTranslation;delete f.startAngle;delete f.transX;delete f.transY;delete f.pValue}f.sliced=D;return f},_plotGraphicClick:function(c){var D,
f=this.element||this,a=f.plotItem||f.data("plotItem"),h=f.data("eventArgs")||{},e=a.chart,b=a.index,d=e.components.dataset[0],oa=d.config,P=oa.enableMultiSlicing,d=d.components.data[b],t=d.graphics,d=d.config,v=d.doNotSlice,u;D=d.slicedTranslation;var A=e.get("config","animationObj"),l=A.duration||200,g=A.dummyObj,n=A.animObj,A=A.animType;!oa.isRotating&&Na.call(f,e,c);if(!(oa.isRotating||oa.singletonCase||v||(c=!P&&e.sliceInOtherPies(b),(u=d.sliced)&&c))){if(ra&&!Ga){c=(new Date).getTime();if(a.lastSliceTimeStamp&&
400>c-a.lastSliceTimeStamp)return;a.lastSliceTimeStamp=c}c=t.element;a=t.connector;t=t.label||t.dataLabel;D="object"===typeof D?"t"+D:D;P=d.connectorPath;f=(u?-1:1)*d.transX;oa=(u?-1:1)*d.transY;v=c.data("eventArgs")||c.data("eventArgs",{});I.raiseEvent("slicingStart",{slicedState:u,dataIndex:"index"in h&&h.index,data:e.getPlotData(b,u)},e.chartInstance);c.animateWith(g,n,{transform:u?"t0,0":D},l,A,function(){I.raiseEvent("slicingEnd",{slicedState:u,dataIndex:"index"in h&&h.index,data:e.getPlotData(b,
u)},e.chartInstance)});t&&t.x&&((D=t.data("textPos"))||(D=t.data("textPos",{x:t.x,y:t.y})),t.animateWith(g,n,{x:t.x+(u?0:f)},l,A),D.x=t.x+(u?0:f));P&&(P[1]+=f,P[2]+=oa,P[4]+=f,P[6]+=f,a.animateWith(g,n,{path:P},l,A));return v.isSliced=u=d.sliced=!u}},sliceInOtherPies:function(c){var D=this.components.dataset[0],f=D.components.data,a=f.length,h=0,e;for(D.enableMultiSlicing=!0;a--;)a!==c&&(e=f[a]).config.sliced&&++h&&this._plotGraphicClick.call(e.graphics);D.enableMultiSlicing=!1;return!!h},placeDataLabels:function(){var c=
function(c,f){return c.point.value-f.point.value},D=function(c,f){return c.angle-f.angle},f=["start","start","end","end"],a=[-1,1,1,-1],h=[1,1,-1,-1];return function(e,J,g,oa){var P=this.config,t=this.components.dataset[0].config,v=P.canvasLeft,u=P.canvasTop,A=P.canvasWidth,m=v+.5*P.canvasWidth,k=u+.5*P.canvasHeight,q=this.linkedItems.smartLabel,p=t.dataLabelOptions,x=p.style,ia=s(Aa(parseFloat(x.lineHeight)),12),L=1===J.length?P.singletonPlaceValue:!1,G=p.skipOverlapLabels,N=p.manageLabelOverflow,
z=p.connectorPadding,r;r=oa&&oa.metrics||[m,k,2*t.pieMinRadius,t.innerSize||0];var F=r[1],M=r[0];oa=.5*r[2];var w=[[],[],[],[]],t=g.labelsRadius=oa+p.distance,k=m=parseInt(x.fontSize,10),C=k/2,z=[z,z,-z,-z];g=g.labelsMaxInQuadrant||(g.labelsMaxInQuadrant=Ca(t/k));var p=p.isSmartLineSlanted,y=r[3]/2,B,K,E,Q,H,O,Oa,T,Z,ca,ba,V,ga,aa,U,ha,S;r=Number.POSITIVE_INFINITY;var $,R;B=[];E=[];B=this.get("config","animationObj");var W=e?0:B.duration||0,ea=B.dummyObj,I=B.animObj,ja=B.animType;q.useEllipsesOnOverflow(P.useEllipsesWhenOverflow);
e||q.setStyle(x);if(1==J.length&&!y&&L)y=J[0],R=y.graphics,V=R.label,y.slicedTranslation=[v,u],V&&(V.attr({visibility:xa,"text-anchor":"middle",x:0,y:0,transform:["t",M,F]}),V.x=M,V.data("textPos",{x:M,y:F})),R.connector&&R.connector.attr({path:[]});else if(L)S=y+(oa-y)/2,Fa(J,function(c){$=c.config;R=c.graphics;if(V=R.label)V.attr({transform:"t0,0"}),ba=$.angle,ca=F+S*fa(ba),O=M+S*qa(ba),V.x=O,V._x=O,V.y=ca,c.sliced&&(ha=c.slicedTranslation,aa=ha[0]-v,U=ha[1]-u,O+=aa,ca+=U),V.animateWith(ea,I,{visibility:xa,
"text-anchor":"middle",x:0,y:0,transform:["t",O,ca]},W,ja)});else{Fa(J,function(c){$=c.config;R=c.graphics;if(V=R.label)V.attr({transform:"t0,0"}),ba=$.angle%n,0>ba&&(ba=n+ba),ga=0<=ba&&ba<d?1:ba<b?2:ba<l?3:0,w[ga].push({point:c,angle:ba})});for(J=e=4;J--;){if(G&&(x=w[J].length-g,0<x))for(w[J].sort(c),L=w[J].splice(0,x),x=0,E=L.length;x<E;x+=1)y=L[x].point,R=y.graphics,R.label.attr({visibility:"hidden"}),R.connector&&R.connector.attr({visibility:"hidden"});w[J].sort(D)}J=va(w[0].length,w[1].length,
w[2].length,w[3].length);x=va(ka(J,g)*k,t+k);E=w[0].concat(w[1]);B=w[2].concat(w[3]);for(J=E.length-1;0<=J;J--)L=E[J].point.config,delete L.clearance,delete L.clearanceShift,y=wa(x*fa(L.angle)),Math.abs(r-y)<2*ia&&(L.clearance=0,E[J+1].point.clearanceShift=ia/2),r=y;r=Number.POSITIVE_INFINITY;J=0;for(E=B.length;J<E;J++)L=B[J].point.config,delete L.clearance,delete L.clearanceShift,y=wa(x*fa(L.angle)),Math.abs(r-y)<2*ia&&(L.clearance=0,B[J-1].point.clearanceShift=ia/2),r=y;w[1].reverse();for(w[3].reverse();e--;){L=
w[e];E=L.length;G||(k=E>g?x/E:m,C=k/2);ia=E*k;r=x;for(J=0;J<E;J+=1,ia-=k)y=wa(x*fa(L[J].angle)),r<y?y=r:y<ia&&(y=ia),r=(L[J].oriY=y)-k;B=f[e];E=x-(E-1)*k;r=0;for(J=L.length-1;0<=J;--J,E+=k)if(y=L[J].point,ba=L[J].angle,$=y.config,R=y.graphics,Q=$.sliced,V=R.label,y=wa(x*fa(ba)),y<r?y=r:y>E&&(y=E),r=y+k,ia=void 0===$.clearance?2*Aa(s(parseFloat($.style.border),12),12):2*Aa(s(parseFloat($.style.border),$.clearance)),T=(y+L[J].oriY)/2,y=M+h[e]*t*qa(sa.asin(T/x)),T*=a[e],T+=F,Z=F+oa*fa(ba),H=M+oa*qa(ba),
(2>e&&y<H||1<e&&y>H)&&(y=H),O=y+z[e],ca=T-C-2,Oa=O+z[e],V.x=Oa,V._x=Oa,N&&(K=1<e?Oa-P.canvasLeft:P.canvasLeft+A-Oa,q.setStyle($.style),ia=s(Aa(parseFloat($.style.lineHeight)),12)+ia,ia=q.getSmartText($.displayValue,K,ia),void 0===$.clearance&&ia.height>k&&(T+=k),V.attr({text:ia.text}).tooltip(ia.tooltext)),V.y=ca,Q&&(aa=$.transX,U=$.transY,O+=aa,y+=aa,H+=aa,Z+=U,Oa+=aa),V.attr({"text-anchor":B,vAlign:"middle"}),$._textAttrs||($._textAttrs={}),$._textAttrs.x=Oa,$._textAttrs.y=T,(ia=V.data("textPos"))?
V.attr({x:ia.x,y:ia.y}).animateWith(ea,I,$._textAttrs,W):V.attr($._textAttrs),V.data("textPos",{x:Oa,y:T}),ia=R.connector)$.connectorPath=y=["M",H,Z,"L",p?y:H,T,O,T],(H=ia.data("connectorPath"))?ia.attr({path:H.path}).animateWith(ea,I,{path:y},W):ia.attr({path:y}),ia.data("connectorPath",{path:y})}}}}(),_spaceManager:function(){var c=this.config,D=this.components,f=D.dataset[0],a=f.components.data,h=f.config,e=D.legend,b=D.colorManager,d=this.linkedItems.smartLabel,g=h.dataLabelCounter,P=0,t=this.jsonData.chart,
D=s(t.managelabeloverflow,0),v=s(t.slicingdistance),u=h.preSliced||t.enableslicing!==r||t.showlegend===K&&t.interactivelegend!==r?wa(s(v,20)):0,A=s(t.pieradius,0),l=(v=s(t.enablesmartlabels,t.enablesmartlabel,1))?s(t.skipoverlaplabels,t.skipoverlaplabel,1):0,n=s(t.issmartlineslanted,1),m=g?s(t.labeldistance,t.nametbdistance,5):u,k=s(t.smartlabelclearance,5),x=c.width-(c.marginRight+c.marginLeft),q=c.height-(c.marginTop+c.marginBottom),p=ka(q,x),N=ea(t.smartlinecolor,b.getColor("plotFillColor")),B=
s(t.smartlinealpha,100),ba=s(t.smartlinethickness,.7),f=h.dataLabelOptions||(h.dataLabelOptions=f._parseDataLabelOptions()),b=f.style,b=g?s(parseInt(b.lineHeight,10),12):0,R=0===A?.15*p:A,da=2*R,M={bottom:0,right:0},w=h.pieYScale,p=h.pieSliceDepth;f.connectorWidth=ba;f.connectorPadding=s(t.connectorpadding,5);f.connectorColor=F(N,B);g&&(v&&(m=k),m+=u);k=da+2*(b+m);k=this._manageChartMenuBar(k<q?q-k:q/2);q-=(k.top||0)+(k.bottom||0);h.showLegend&&(this.hasLegend=!0,ea(t.legendposition,G).toLowerCase()!==
z?(M=e._manageLegendPosition(q/2),q-=M.bottom):(M=e._manageLegendPosition(q/2),x-=M.right));this._allocateSpace(M);d.useEllipsesOnOverflow(c.useEllipsesWhenOverflow);if(1!==g)for(;g--;)d.setStyle(a[g].config.style),c=d.getOriSize(a[g].config.displayValue),P=va(P,c.width);0===A?R=this._stubRadius(x,P,q,m):(h.slicingDistance=u,h.pieMinRadius=R,f.distance=m);a=q-2*(R*w+b);h.managedPieSliceDepth=p>a?p-a:h.pieSliceDepth;f.isSmartLineSlanted=n;f.enableSmartLabels=v;f.skipOverlapLabels=l;f.manageLabelOverflow=
D},_stubRadius:function(c,D,f,a){var b=this.components.dataset[0],e=b.config,d=e.dataLabelCounter,g=this.jsonData.chart,l=s(g.slicingdistance),P=e.preSliced||g.enableslicing!==r||g.showlegend===K&&g.interactivelegend!==r?wa(s(l,20)):0,g=s(g.pieradius,0),t=ka(f,c),b=e.dataLabelOptions||(e.dataLabelOptions=b._parseDataLabelOptions()),v=b.style,d=d?s(parseInt(v.lineHeight,10),12):0,g=0===g?.15*t:g,t=0,t=ka(c/2-D-P,f/2-d)-a;t>=g?g=t:l||(P=a=va(ka(a-(g-t),P),10));e.slicingDistance=P;e.pieMinRadius=g;b.distance=
a;return g},getDataSet:function(c){return this.components.dataset[c]},_startingAngle:function(c,D){var f,b=this.components.dataset[0].config,h=(f=b.startAngle)*-a+(0>-1*f?360:0);if(!isNaN(c)){if(b.singletonCase||b.isRotating)return;c+=D?h:0;b.startAngle=-c*ta;this._rotate(c);h=c}return ua(100*((h%=360)+(0>h?360:0)))/100},eiMethods:{isPlotItemSliced:function(c){var D,f,a,b=this.apiInstance;return b&&b.components.dataset&&(a=b.components.dataset[0])&&(D=a.components.data)&&D.length&&D[c]&&(f=D[c].config)&&
f.sliced},addData:function(){var c,a=this.apiInstance;return a&&a.components.dataset&&(c=a.components.dataset[0])&&c.addData.apply(c,arguments)},removeData:function(){var c,a=this.apiInstance;return a&&a.components.dataset&&(c=a.components.dataset[0])&&c.removeData.apply(c,arguments)},updateData:function(){var c,a=this.apiInstance;return a&&a.components.dataset&&(c=a.components.dataset[0])&&c.updateData.apply(c,arguments)},slicePlotItem:function(c,a){var f,b,h,e,d=this.apiInstance;return d&&d.components.dataset&&
(f=d.components.dataset[0])&&(b=f.components.data)&&(e=b.length)&&b[c=f.config.reversePlotOrder?e-c-1:c]&&(h=b[c].config)&&((!!a!==h.sliced||void 0===a)&&d._plotGraphicClick.call(b[c].graphics.element)||h.sliced)},centerLabel:function(c,a){var f=this.apiInstance,b=f.components.dataset[0],h=b.config,e=h.piePlotOptions.innerSize,d=h.pieCenter,g=d[0],d=d[1],h=h.centerLabelConfig,l;if("object"!==typeof a)a=h;else for(l in h)void 0===a[l]&&(a[l]=h[l]);a.label=c;b.centerLabelConfig=a;e&&f.drawDoughnutCenterLabel(c||
"",g,d,e,e,a,!0)},startingAngle:function(c,a){return this.apiInstance._startingAngle(c,a)}}},m.guageBase,{plotborderthickness:1,alphaanimation:0,singletonPlaceValue:!0});m("pie3d",{defaultDatasetType:"Pie3D",applicableDSList:{Pie3D:!0},is3D:!0,friendlyName:"3D Pie Chart",fireGroupEvent:!0,creditLabel:B,getPointColor:function(c){return c},_configureManager:function(){var c=this.components.dataset[0],a=c.config,f=c.components,c=f.Pie3DManager,f=f.data;c&&c.configure(a.pieSliceDepth,1===f.length,a.use3DLighting,
!1)},defaultPlotShadow:0,_preDrawCalculate:function(){var c,a,f=this.config,b=0,h=this.components.dataset[0],e=h.config;c=h.components;a=e.dataLabelOptions;var d=e.pie3DOptions=h._parsePie3DOptions(),g=ea(e.startAngle,0)%n,l=e.managedPieSliceDepth,P=e.slicedOffset=d.slicedOffset,t=f.canvasWidth,v=f.canvasHeight,u=[f.canvasLeft+.5*t,f.canvasTop+.5*v-.5*l],A,m,f=c.data,k,q=ka(t,v),p,x=a.distance;A=e.pieYScale;var r=e.slicedOffsetY||(e.slicedOffsetY=P*e.pieYScale);k=c.Pie3DManager;u.push(2*e.pieMinRadius,
d.innerSize||0);u=pa(u,function(c,a){return(p=/%$/.test(c))?[t,v-l,q,q][a]*parseInt(c,10)/100:c});u[2]/=2;u[3]/=2;u.push(u[2]*A);u.push((u[2]+u[3])/2);u.push(u[5]*A);h.getX=function(c,a){m=sa.asin((c-u[1])/(u[2]+x));return u[0]+(a?-1:1)*qa(m)*(u[2]+x)};e.center=u;Fa(f,function(c){b+=c.config.y});e.labelsRadius=u[2]+x;e.labelsRadiusY=e.labelsRadius*A;e.quadrantHeight=(v-l)/2;e.quadrantWidth=t/2;h=ua(1E3*g)/1E3;d=h+n;g=s(parseInt(a.style.fontSize,10),10)+4;e.maxLabels=Ca(e.quadrantHeight/g);e.labelFontSize=
g;e.connectorPadding=s(a.connectorPadding,5);e.isSmartLineSlanted=ea(a.isSmartLineSlanted,!0);e.connectorWidth=s(a.connectorWidth,1);e.enableSmartLabels=a.enableSmartLabels;k||(k=c.Pie3DManager=new ma(this),this.get("graphics","datasetGroup").trackTooltip(!0));this._configureManager();for(c=f.length-1;0<=c;--c)a=f[c],a=a.config,g=h,k=b?a.y/b:0,h=ua(1E3*(h+k*n))/1E3,h>d&&(h=d),A=h,a.shapeArgs={start:ua(1E3*g)/1E3,end:ua(1E3*A)/1E3},a.centerAngle=m=(A+g)/2%n,a.slicedTranslation=[ua(qa(m)*P),ua(fa(m)*
r)],g=qa(m)*u[2],e.radiusY=A=fa(m)*u[4],a.tooltipPos=[u[0]+.7*g,u[1]+A],a.percentage=100*k,a.total=b},placeDataLabels:function(){var c=function(c,a){return c.point.value-a.point.value},a=function(c,a){return c.angle-a.angle},f=["start","start","end","end"],g=[-1,1,1,-1],h=[1,1,-1,-1];return function(e){var J,m,k,P=this.config,t=this.components.dataset[0],v=t.config,u=t.components.data,A=v.piePlotOptions,q=P.canvasLeft,p=P.canvasTop,t=P.canvasWidth,r=q+.5*P.canvasWidth,G=p+.5*P.canvasHeight,x=this.linkedItems.smartLabel,
z=v.dataLabelOptions,L=z.style;J=s(Aa(parseFloat(L.lineHeight)),12);var N=Ta(z.placeInside,!1),F=z.skipOverlapLabels,B=z.manageLabelOverflow,K=z.connectorPadding,ba=z.distance,M=z.connectorWidth,w=[[],[],[],[]],C=parseInt(L.fontSize,10),y=C,Y=y/2,K=[K,K,-K,-K],X=z.isSmartLineSlanted,E,Q,H,O,R,T,Z,ca,S,V,ga,aa,U,ha,ba=0<ba,W=v.center||(v.center=[r,G,A.size,A.innerSize||0]),$=W[1],ea=W[0],A=W[2],r=W[4],G=v.labelsRadius,I=ua(100*v.labelsRadiusY)/100,ja=v.maxLabels,na=v.enableSmartLabels,ma=v.pieSliceDepth/
2,la=this.get("config","animationObj"),ra=e?0:la.duration,ta=la.dummyObj,pa=la.animObj,la=la.animType;x.useEllipsesOnOverflow(P.useEllipsesWhenOverflow);if(v.dataLabelCounter)if(e||x.setStyle(L),1==u.length)J=u[0],ha=J.graphics,U=J.config,ga=ha.label,T=ha.connector,U.slicedTranslation=[q,p],ga&&null!==U.y&&(ga.attr({visibility:xa,"text-anchor":"middle",x:ea,y:$+Y-2}),ga.x=ea),T&&T.hide();else if(N)Fa(u,function(c){ha=c.graphics;U=c.config;if((ga=ha.label)&&null!==U.y){V=U.angle;S=$+W[6]*fa(V)+Y-2;
R=ea+W[5]*qa(V);ga.x=R;ga._x=R;ga.y=S;if(U.sliced){c=c.slicedTranslation;var a=c[1]-p;R+=c[0]-q;S+=a}ga.attr({visibility:xa,align:"middle",x:R,y:S})}});else{Fa(u,function(c){ha=c.graphics;U=c.config;if(ga=ha.label)V=U.angle,0>V&&(V=n+V),aa=0<=V&&V<d?1:V<b?2:V<l?3:0,w[aa].push({point:c,angle:V})});for(v=P=4;v--;){if(F&&(u=w[v].length-ja,0<u))for(w[v].sort(c),N=w[v].splice(0,u),u=0,Q=N.length;u<Q;u+=1)J=N[u].point,ha=J.graphics,ha.label.attr({visibility:"hidden"}),ha.connector&&ha.connector.attr({visibility:"hidden"});
w[v].sort(a)}v=va(w[0].length,w[1].length,w[2].length,w[3].length);I=va(ka(v,ja)*y,I+y);w[1].reverse();w[3].reverse();for(x.setStyle(L);P--;){u=w[P];Q=u.length;F||(y=Q>ja?I/Q:C,Y=y/2);N=Q*y;L=I;for(v=0;v<Q;v+=1,N-=y)J=wa(I*fa(u[v].angle)),L<J?J=L:J<N&&(J=N),L=(u[v].oriY=J)-y;N=f[P];Q=I-(Q-1)*y;L=0;for(v=u.length-1;0<=v;--v,Q+=y)J=u[v].point,ha=J.graphics,U=J.config,null!==U.y&&(V=u[v].angle,k=U.sliced,ga=ha.label,J=wa(I*fa(V)),J<L?J=L:J>Q&&(J=Q),L=J+y,Z=(J+u[v].oriY)/2,H=ea+h[P]*G*qa(sa.asin(Z/I)),
Z*=g[P],Z+=$,ca=$+r*fa(V),O=ea+A*qa(V),(2>P&&H<O||1<P&&H>O)&&(H=O),R=H+K[P],S=Z+Y-2,T=R+K[P],ga.x=T,ga._x=T,B&&(E=1<P?T-q:q+t-T,x.setStyle(U.style),J=s(Aa(parseFloat(U.style.lineHeight)),12)+(2*Aa(parseFloat(U.style.border),12)||0),J=x.getSmartText(U.displayValue,E,J),ga.attr({text:J.text}).tooltip(J.tooltext)),V<b&&(Z+=ma,ca+=ma,S+=ma),ga.y=S,k&&(J=U.transX,k=U.transY,R+=J,H+=J,O+=J,ca+=k,T+=J),ga.attr({visibility:xa,"text-anchor":N}),(k=ga.data("textPos"))&&ga.attr({x:k.x,y:k.y}),J={x:T,y:Z},!e&&
k?ga.animateWith(ta,pa,J,ra,la):ga.attr(J),ga.data("textPos",{x:T,y:Z}),ba&&M&&na&&(T=ha.connector,U.connectorPath||(m=!0),U.connectorPath=J=["M",O,ca,"L",X?H:O,Z,R,Z],J={path:J,"stroke-width":M,stroke:z.connectorColor||"#606060",visibility:xa},T&&(e||m?T.attr(J):T.animateWith(ta,pa,J,ra,la))))}}}}(),animate:function(){var c,a,f,b,h=this,e=h.components.dataset[0],d=e.components.data;c=h.graphics.datasetGroup;var g=d.length;a=e.config.alphaAnimation;f=function(){h.disposed||h.disposing||h.placeDataLabels(!1)};
var l=h.get("config","animationObj"),e=l.duration||0,P=l.dummyObj,t=l.animObj,l=l.animType;if(a)c.attr({opacity:0}),c.animateWith(P,t,{opacity:1},e,l,f);else for(c=0;c<g;c++)if(a=d[c],f=a.graphics,a=a.config,b=a.shapeArgs,a=2*ya,f=f.element)f.attr({start:a,end:a}),f=b.start,b=b.end,(void 0).animateWith(P,t,{cx:f-a,cy:b-a},e,l)},_rotate:function(c){var a=this.components.dataset[0],f=a.config,a=a.components,b=a.data,h=f.slicedOffset,e=f.slicedOffsetY,d=f.startAngle,g;c=isNaN(c)?-f._lastAngle:c;g=(c-
d)%360;f.startAngle=s(c,f.startAngle)%360;g=-(g*ya)/180;a.Pie3DManager&&a.Pie3DManager.rotate(g);Fa(b,function(c){var a=[],f=c.config;c=c.graphics.element;var a=f.shapeArgs,b=a.start+=g,a=a.end+=g,D=f.angle=S((b+a)/2),b=f.sliced,a=qa(D),D=fa(D),a=f.slicedTranslation=[ua(a*h),ua(D*e)];f.transX=a[0];f.transY=a[1];f.slicedX=b?qa(g)*h:0;f.slicedY=b?fa(g)*e:0;c&&b&&c.attr({transform:"t"+a[0]+","+a[1]})});this.placeDataLabels(!0,b)},_plotRollOver:function(c){var a=this.data("plotItem"),f=a.chart,b=f.config,
h=f.components.dataset[0],e=h.components.data[a.index],a=e.graphics.element,e=e.config.hoverEffects;h.config.isRotating||(Na.call(a,f,c,"DataPlotRollOver"),e.enabled&&a.attr(e));b.isHovered=!0},_plotRollOut:function(c){var a=this.data("plotItem"),f=a.chart,b=f.config,h=f.components.dataset[0],e=h.components.data[a.index],a=e.config,e=e.graphics.element;h.config.isRotating||(Na.call(e,f,c,"DataPlotRollOut"),e.attr({color:a.color.color.split(",")[0],alpha:a._3dAlpha,borderWidth:a.borderWidth,borderColor:a.borderColor}));
b.isHovered=!1},_plotDragStart:function(c,a,f){var b=this.data("plotItem").chart.components.dataset[0].config;b.isRightClicked=La||0===f.button||1===f.button?!1:!0;b.enableRotation&&!b.isRightClicked&&(b.isRotating=!1,c=Ka.call(f,c,a,b.center,b.chartPosition,b.pieYScale),b.dragStartAngle=c,b._lastAngle=-b.startAngle,b.startingAngleOnDragStart=b.startAngle)},_plotDragEnd:function(c){var a=this.data("plotItem"),f=a.index,a=a.chart,b=a.config,h=a.components.dataset[0],e=h.config,h=h.components.Pie3DManager,
d=e.startAngle;e.isRightClicked||(e.isRotating?(setTimeout(function(){e.isRotating=!1},0),I.raiseEvent("rotationEnd",{startingAngle:S(d,!0),changeInAngle:d-e.startingAngleOnDragStart},a.chartInstance),!b.isHovered&&h.colorObjs[f]&&h.onPlotHover(f,!1)):a._plotGraphicClick.call(this,c))},_plotDragMove:function(c,a,f,b,h){var e=this.data("plotItem").chart,d=e.components.dataset[0].config;isNaN(c)||isNaN(a)||!d.enableRotation||d.singletonCase||d.isRightClicked||(c=Ka.call(h,f,b,d.center,d.chartPosition,
d.pieYScale),d.isRotating||(d.dragStartAngle!==c&&(d.isRotating=!0),I.raiseEvent("rotationStart",{startingAngle:S(d.startAngle,!0)},e.chartInstance)),a=c-d.dragStartAngle,d.dragStartAngle=c,d.moveDuration=0,d._lastAngle+=180*a/ya,c=(new Date).getTime(),d._lastTime&&!(d._lastTime+d.timerThreshold<c))||(d._lastTime||e._rotate(),d.timerId=setTimeout(function(){e.disposed&&e.disposing||e._rotate()},d.timerThreshold),d._lastTime=c)},_stubRadius:function(c,a,f,b){var h=this.components.dataset[0],e=h.config,
d=s(h.components.data&&h.components.data.length,0),g=h.config,l=s(g.slicingdistance),k=e.preSliced||g.enableslicing!==r||g.showlegend===K&&g.interactivelegend!==r?wa(s(l,20)):0,g=s(g.pieradius,0),t=ka(f,c),h=e.dataLabelOptions||(e.dataLabelOptions=h._parseDataLabelOptions()),v=h.style,d=d?s(parseInt(v.lineHeight,10),12):0,g=0===g?.15*t:g,t=0,t=e.pieYScale;f-=e.pieSliceDepth;t=ka(c/2-a-k,(f/2-d)/t)-b;t>=g?g=t:l||(k=b=va(ka(b-(g-t),k),10));e.slicingDistance=k;e.pieMinRadius=g;h.distance=b;return g},
_startingAngle:function(c,a){var f,b=this.components.dataset[0].config,h=(f=b.startAngle)+(0>f?360:0);if(!isNaN(c)){if(b.singletonCase||b.isRotating)return;c+=a?h:0;this._rotate(c);h=c}return ua(100*((h%=360)+(0>h?360:0)))/100}},m.pie2d,{plotborderthickness:.1,alphaanimation:1});m("doughnut2d",{friendlyName:"Doughnut Chart",defaultDatasetType:"Doughnut2D",creditLabel:B,applicableDSList:{Doughnut2D:!0},getPointColor:function(c,a,f){var b;c=k(c);a=g(a);100>f&&Ba?(b=N(c,Ca(100*(85-.2*(100-f)))/100),
c=p(c,Ca(100*(100-.5*f))/100),a={FCcolor:{color:b+","+c+","+c+","+b,alpha:a+","+a+","+a+","+a,radialGradient:!0,gradientUnits:"userSpaceOnUse",r:f}}):a={FCcolor:{color:c+","+c,alpha:a+","+a,ratio:"0,100"}};return a},drawDoughnutCenterLabel:function(c,a,f,b,h,e,d){var g=this.components,l=g.dataset[0].config;e=e||l.lastCenterLabelConfig;var g=g.paper,k=this.linkedItems.smartLabel,t=this.graphics,v=t.datasetGroup,u=e.padding,A=2*e.textPadding,m={fontFamily:e.font,fontSize:e.fontSize+"px",lineHeight:1.2*
e.fontSize+"px",fontWeight:e.bold?"bold":"",fontStyle:e.italic?"italic":""},n=1.414*(.5*b-u)-A;h=1.414*(.5*h-u)-A;var q;k.setStyle(m);k.useEllipsesOnOverflow(this.config.useEllipsesWhenOverflow);k=k.getSmartText(c,n,h);(h=t.doughnutCenterLabel)?(h.attr("text")!==c&&this.centerLabelChange(c),q=t.centerLabelOvalBg):(e.bgOval&&(t.centerLabelOvalBg=q=g.circle(a,f,.5*b-u,v)),h=t.doughnutCenterLabel=g.text(v).hover(this.centerLabelRollover,this.centerLabelRollout).click(this.centerLabelClick),h.chart=this);
c?(h.css(m).attr({x:a,y:f,text:k.text,visibility:xa,direction:l.textDirection,fill:na({FCcolor:{color:e.color,alpha:e.alpha}}),"text-bound":e.bgOval?"none":[na({FCcolor:{color:e.bgColor,alpha:e.bgAlpha}}),na({FCcolor:{color:e.borderColor,alpha:e.borderAlpha}}),e.borderThickness,e.textPadding,e.borderRadius]}).tooltip(e.toolText||k.tooltext),e.bgOval&&q&&q.attr({visibility:xa,fill:Ua(e.bgColor),"fill-opacity":e.bgAlpha/100,stroke:Ua(e.borderColor),"stroke-width":e.borderThickness,"stroke-opacity":e.borderAlpha/
100})):(h.attr("visibility","hidden"),q&&q.attr("visibility","hidden"));d&&(l.lastCenterLabelConfig=e,l.centerLabelConfig=e)},centerLabelRollover:function(){var c=this.chart,a=c.config,f=c.chartInstance,b=f.ref,h=c.components.dataset[0].config.lastCenterLabelConfig,a={height:a.height,width:a.width,pixelHeight:b.offsetHeight,pixelWidth:b.offsetWidth,id:f.id,renderer:f.args.renderer,container:c.linkedItems.container,centerLabelText:h&&h.label};this.attr("text")&&I.raiseEvent("centerLabelRollover",a,
f,this,c.hoverOnCenterLabel)},centerLabelRollout:function(){var c=this.chart,a=c.config,f=c.chartInstance,b=f.ref,h=c.components.dataset[0].config.lastCenterLabelConfig,a={height:a.height,width:a.width,pixelHeight:b.offsetHeight,pixelWidth:b.offsetWidth,id:f.id,renderer:f.args.renderer,container:c.linkedItems.container,centerLabelText:h&&h.label};this.attr("text")&&I.raiseEvent("centerLabelRollout",a,f,this,c.hoverOffCenterLabel)},centerLabelClick:function(){var c=this.chart,a=c.config,f=c.chartInstance,
b=f.ref,h=c.components.dataset[0].config.lastCenterLabelConfig,c={height:a.height,width:a.width,pixelHeight:b.offsetHeight,pixelWidth:b.offsetWidth,id:f.id,renderer:f.args.renderer,container:c.linkedItems.container,centerLabelText:h&&h.label};this.attr("text")&&I.raiseEvent("centerLabelClick",c,f)},centerLabelChange:function(c){var a=this.config,f=this.chartInstance,b=f.ref;I.raiseEvent("centerLabelChanged",{height:a.height,width:a.width,pixelHeight:b.offsetHeight,pixelWidth:b.offsetWidth,id:f.id,
renderer:f.args.renderer,container:this.linkedItems.container,centerLabelText:c},f)},hoverOnCenterLabel:function(){var c=this.chart.components.dataset[0].config.lastCenterLabelConfig;(c.hoverColor||c.hoverAlpha)&&this.attr({fill:na({FCcolor:{color:c.hoverColor||c.color,alpha:c.hoverAlpha||c.alpha}})})},hoverOffCenterLabel:function(){var c=this.chart.components.dataset[0].config.lastCenterLabelConfig;(c.hoverColor||c.hoverAlpha)&&this.attr({fill:na({FCcolor:{color:c.color,alpha:c.alpha}})})}},m.pie2d,
{singletonPlaceValue:!1});m("doughnut3d",{friendlyName:"3D Doughnut Chart",defaultDatasetType:"Doughnut3D",creditLabel:B,applicableDSList:{Doughnut3D:!0},_configureManager:function(){var c=this.components.dataset[0],a=c.config,f=c.components,c=f.Pie3DManager,f=f.data;c&&c.configure(a.pieSliceDepth,1===f.length,a.use3DLighting,!0)}},m.pie3d);m("mscolumn2d",{standaloneInit:!0,friendlyName:"Multi-series Column Chart",creditLabel:B,defaultDatasetType:"column",applicableDSList:{column:!0},eiMethods:{}},
m.mscartesian);m("mscolumn3d",{standaloneInit:!0,defaultDatasetType:"column3d",friendlyName:"Multi-series 3D Column Chart",applicableDSList:{column3d:!0},defaultPlotShadow:1,fireGroupEvent:!0,is3D:!0,creditLabel:B,defaultZeroPlaneHighlighted:!1},m.mscartesian3d);m("msbar2d",{standaloneInit:!0,friendlyName:"Multi-series Bar Chart",isBar:!0,hasLegend:!0,creditLabel:B,defaultDatasetType:"bar2d",applicableDSList:{bar2d:!0}},m.msbarcartesian);m("msbar3d",{standaloneInit:!0,defaultSeriesType:"bar3d",friendlyName:"Multi-series 3D Bar Chart",
fireGroupEvent:!0,defaultPlotShadow:1,is3D:!0,isBar:!0,hasLegend:!0,creditLabel:B,defaultZeroPlaneHighlighted:!1,defaultDatasetType:"bar3d",applicableDSList:{bar3d:!0}},m.msbarcartesian3d);m("msarea",{standaloneInit:!0,friendlyName:"Multi-series Area Chart",creditLabel:B,defaultDatasetType:"area",showValues:1,defaultPlotShadow:0,applicableDSList:{area:!0}},m.mscartesian);m("msline",{standaloneInit:!0,friendlyName:"Multi-series Line Chart",creditLabel:B,defaultDatasetType:"line",defaultPlotShadow:1,
axisPaddingLeft:0,axisPaddingRight:0,applicableDSList:{line:!0}},m.mscartesian,{zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0});m("stackedarea2d",{friendlyName:"Stacked Area Chart",isStacked:!0,showsum:0,creditLabel:B,areaAlpha:100},m.msarea);m("stackedcolumn2d",{friendlyName:"Stacked Column Chart",isStacked:!0,creditLabel:B},m.mscolumn2d);m("stackedcolumn3d",{friendlyName:"3D Stacked Column Chart",isStacked:!0,creditLabel:B},m.mscolumn3d);m("stackedbar2d",{friendlyName:"Stacked Bar Chart",
isStacked:!0,creditLabel:B},m.msbar2d);m("stackedbar3d",{friendlyName:"3D Stacked Bar Chart",isStacked:!0,creditLabel:B},m.msbar3d);m("marimekko",{standaloneInit:!0,friendlyName:"Marimekko Chart",isValueAbs:!0,distributedColumns:!0,stack100percent:!0,defaultDatasetType:"marimekko",applicableDSList:{marimekko:!0},isStacked:!0,showsum:1,creditLabel:B,_setAxisLimits:function(){var c=this.components,a=c.dataset,f=c.yAxis,c=c.xAxis,b,h=a.length,e,d=-Infinity,g=Infinity,l=Infinity,k=-Infinity,t,v,u={};
t=this.config.categories;var A=[],m=function(c){d=va(d,c.max);g=ka(g,c.min);k=va(k,c.xMax||-Infinity);l=ka(l,c.xMin||Infinity)};for(e=0;e<h;e++)b=a[e],(v=b.groupManager)?u[b.type]=v:A.push(b);for(v in u)a=u[v].getDataLimits(),m(a);h=A.length;for(e=0;e<h;e++)a=A[e].getDataLimits(),m(a);-Infinity===d&&(d=0);Infinity===g&&(g=0);f[0].setAxisConfig({isPercent:this.isStacked?this.config.stack100Percent:0});f[0].setDataLimit(d,g);if(-Infinity!==k||Infinity!==l)c[0].config.xaxisrange={max:k,min:l},c[0].setDataLimit(k,
l);f=u[v].getStackSumPercent();e=f.length;v=c[0].getCategoryLen();v>e&&t.splice(e,v-e);this._setCategories();e=c[0].getLimit();l=e.min;k=e.max;t=l;v=k-l;for(e=0;e<f.length;e++)a=f[e],h=v*a/100,a=t+h/2,c[0].updateCategory(e,{x:a}),t+=h}},m.mscartesian);m("msstackedcolumn2d",{standaloneInit:!0,isStacked:!0,defaultDatasetType:"column",applicableDSList:{column:!0},friendlyName:"Multi-series Stacked Column Chart",_createDatasets:function(){var c=this.components,a=this.jsonData,f=a.dataset,b=f&&f.length||
0,h,e,d,g=this.defaultDatasetType,l=this.applicableDSList,k,t,v,u,A,m,n=a.lineset||[],q=this.config,p=q.dataSetMap,x=q.lineSetMap,r=p&&p.length,z=c.legend,N=[],G=[],F=0;v=0;var B,s=-1,M,w=this.config.catLen,C=c.xAxis[0],y,K,R=c.dataset;if(f||0!==n.length){this.config.categories=a.categories&&a.categories[0].category;e=c.dataset=[];for(a=0;a<b;a++){A=f[a];s++;if(A.dataset)for(K=!0,m=A.dataset&&A.dataset.length||0,N[a]=[],h=0;h<m;h++){if(v=A.dataset[h],k=(k=ea(v.renderas,g))&&k.toLowerCase(),l[k]||
(k=g),d=FusionCharts.get("component",["dataset",k]))u="datasetGroup_"+k,t=FusionCharts.register("component",["datasetGroup",k]),k=c[u],t&&!k?(k=c[u]=new t,k.chart=this,k.init()):k&&p&&0!==p.length&&!B&&(k.init(),B=!0),p&&p[a]&&p[a][h]?(d=p[a][h],d.index=F,u=d.JSONData,t=u.data.length,u=v.data&&v.data.length||0,M=C.getCategoryLen(),y=w-M,t-=u,t=this._getDiff(t,u,y,M),u=t.diff,t=t.startIndex,0<u&&d.removeData(t,u,!1),d.JSONData=v,d.configure()):(d=new d,d.chart=this,d.index=F,d.init(v)),F++,N[a].push(d),
e.push(d),k&&k.addDataSet(d,s,h)}else m=h=0,s--;A=p&&p[a]&&p[a].length;if(A>m)for(v=h,A=A-m+h;v<A;v++)k=p[a][v],z.removeItem(k.legendItemId),za.call(k)}if(r>b)for(v=a,A=r-b+a;v<A;v++)for(m=p[v].length,h=0;h<m;h++)k=p[v][h],z.removeItem(k.legendItemId),za.call(k);q.dataSetMap=N;if(this.lineset){a=0;for(b=n.length;a<b;a++)f=n[a],d=FusionCharts.get("component",["dataset","line"]),d=new d,x&&x[a]?(d=x[a],d.index=F,u=d.JSONData,t=u.data.length,u=f.data&&f.data.length||0,t>u&&d.removeData(u,t-u,!1),d.JSONData=
f,d.configure()):(d.chart=this,d.index=F,d.init(f)),G.push(d),e.push(d),F++;n=x&&x.length;if(n>b)for(v=a,A=n-b+a;v<A;v++)k=x[v],z.removeItem(k.legendItemId),za.call(k);q.lineSetMap=G}K?this.config.catLen=C.getCategoryLen():(c.dataset=R,this.setChartMessage())}else this.setChartMessage()},creditLabel:B},m.mscartesian);m("mscombi2d",{friendlyName:"Multi-series Combination Chart",standaloneInit:!0,creditLabel:B,defaultDatasetType:"column",applicableDSList:{line:!0,area:!0,column:!0},_createDatasets:function(){var c=
this.components,a=this.jsonData,b=a.dataset,d=b&&b.length,h,e,g=this.defaultDatasetType,k=this.applicableDSList,l=this.components.legend,m=c.xAxis[0],t,v,u,A,n,q=this.isStacked,p,r,x=[],z={},N=this.config,G=this.config.catLen,F=N.datasetMap||(N.datasetMap={line:[],area:[],column:[],column3d:[],scrollcolumn2d:[]}),B={line:[],area:[],column:[],column3d:[],scrollcolumn2d:[]};b||this.setChartMessage();this.config.categories=a.categories&&a.categories[0].category;h=c.dataset=[];for(a=0;a<d;a++)if(n=b[a],
A=n.parentyaxis||"",v=(v=this.isDual&&"s"===A.toLowerCase()?"line"===this.defaultSecondaryDataset?this.sDefaultDatasetType:ea(n.renderas,this.sDefaultDatasetType):ea(n.renderas,g))&&v.toLowerCase(),k[v]||(v=g),u=FusionCharts.get("component",["dataset",v]))void 0===z[v]?z[v]=0:z[v]++,e="datasetGroup_"+v,A=FusionCharts.register("component",["datasetGroup",v]),(t=c[e])&&x.push(t),A&&!t&&(t=c[e]=new A,t.chart=this,t.init()),A=F[v],(e=A[0])?(t=m.getCategoryLen(),u=G-t,r=e.JSONData,p=r.data&&r.data.length,
r=n.data&&n.data.length||0,p-=r,u=this._getDiff(p,r,u,t),t=u.diff,u=u.startIndex,0<t&&e.removeData(u,t,!1),e.JSONData=n,e.configure(),A.splice(0,1)):(e=new u,e.chart=this,e.index=a,t&&(q?t.addDataSet(e,0,z[v]):t.addDataSet(e,z[v],0)),e.init(n)),B[v].push(e),h.push(e);for(b in F)if(A=F[b],g=A[0]&&A[0].groupManager,d=A.length,k=void 0===z[b]?0:z[b]+1,d)for(q&&g&&g.removeDataSet(0,k,d),c=0;c<d;c++)g&&!q&&g.removeDataSet(k,0,1),l.removeItem(A[c].legendItemId),"column"===A[c].type&&!0===this.is3D?(A[c].visible=
!1,A[c].draw()):za.call(A[c]);N.datasetMap=B;this.config.catLen=m.getCategoryLen()}},m.mscartesian);m("mscombi3d",{standaloneInit:!0,friendlyName:"Multi-series 3D Combination Chart",defaultDatasetType:"column3d",is3D:!0,creditLabel:B,defaultPlotShadow:1,applicableDSList:{column3d:!0,line:!0,area:!0},_createDatasets:m.mscombi2d},m.mscartesian3d);m("mscolumnline3d",{friendlyName:"Multi-series Column and Line Chart",use3dlineshift:1,is3D:!0,creditLabel:B,defaultPlotShadow:1,applicableDSList:{column3d:!0,
line:!0}},m.mscombi3d);m("stackedcolumn2dline",{friendlyName:"Stacked Column and Line Chart",isStacked:!0,stack100percent:0,defaultDatasetType:"column",creditLabel:B,applicableDSList:{line:!0,column:!0}},m.mscombi2d);m("stackedcolumn3dline",{friendlyName:"Stacked 3D Column and Line Chart",isStacked:!0,is3D:!0,use3dlineshift:1,creditLabel:B,stack100percent:0,applicableDSList:{column3d:!0,line:!0}},m.mscombi3d);m("mscombidy2d",{standaloneInit:!0,friendlyName:"Multi-series Dual Y-Axis Combination Chart",
defaultDatasetType:"column",sDefaultDatasetType:"line",_createDatasets:m.mscombi2d,isDual:!0,creditLabel:B,applicableDSList:{column:!0,line:!0,area:!0}},m.msdybasecartesian);m("mscolumn3dlinedy",{standaloneInit:!0,friendlyName:"Multi-series 3D Column and Line Chart",defaultDatasetType:"column3d",sDefaultDatasetType:"line",is3D:!0,isDual:!0,use3dlineshift:1,creditLabel:B,_createDatasets:m.mscombi2d,defaultPlotShadow:1,applicableDSList:{column3d:!0,line:!0}},m.msdybasecartesian3d);m("stackedcolumn3dlinedy",
{standaloneInit:!0,friendlyName:"Stacked 3D Column and Line Chart",isStacked:!0,is3D:!0,isDual:!0,use3dlineshift:1,defaultDatasetType:"column3d",creditLabel:B,sDefaultDatasetType:"line",defaultSecondaryDataset:"line",_createDatasets:m.mscombi2d,applicableDSList:{column3d:!0,line:!0}},m.msdybasecartesian3d);m("msstackedcolumn2dlinedy",{standaloneInit:!0,friendlyName:"Multi-series Dual Y-Axis Stacked Column and Line Chart",isDual:!0,stack100percent:0,isStacked:!0,defaultDatasetType:"column",sDefaultDatasetType:"line",
hasLineSet:!0,creditLabel:B,applicableDSList:{column:!0},lineset:!0,_createDatasets:m.msstackedcolumn2d},m.msdybasecartesian);m("scrollcolumn2d",{standaloneInit:!0,friendlyName:"Scrollable Multi-series Column Chart",tooltipConstraint:"plot",canvasborderthickness:1,creditLabel:B,defaultDatasetType:"scrollcolumn2d",applicableDSList:{scrollcolumn2d:!0},avgScrollPointWidth:40,hasScroll:!0,defaultPlotShadow:1,_manageScrollerPosition:function(){var c=this.config,a;a=this._scrollBar.get;var b=this.components.scrollBar,
d;a=a()[0];b.setConfiguaration(a.conf);a=c.scrollEnabled;d=b.getLogicalSpace();this._allocateSpace({bottom:c.shift=!1===a?0:d.height+b.conf.padding})},_resetViewPortConfig:function(){this.config.viewPortConfig={scaleX:1,scaleY:1,x:0,y:0}},updateManager:function(c){var a=this.config,b=this.config.viewPortConfig,d=b.scaleX,h=this.graphics.datasetGroup,e=this.graphics.datalabelsGroup,g=this.graphics.trackerGroup,k=a.canvasWidth*(d-1)*c,l=this.components.xAxis[0],m=this.graphics.sumLabelsLayer;b.x=k/
d;b="t"+-ua(k)+",0";a.lastScrollPosition=c;h.attr({transform:b});e.attr({transform:b});g.attr({transform:b});m&&m.attr({transform:b});c=l.getAxisConfig("animateAxis");l.setAxisConfig({animateAxis:!1});l.draw();l.setAxisConfig({animateAxis:c})},_createToolBox:function(){var c=this.components,a=this._scrollBar,b=a.get,d=a.add,h,e,g=c.scrollBar;m.mscartesian._createToolBox.call(this);h=c.tb;e=(c.toolBoxAPI||h.getAPIInstances(h.ALIGNMENT_HORIZONTAL)).Scroller;a.clear();d({isHorizontal:!0},{scroll:function(c){return function(){c.updateManager.apply(c,
arguments)}}(this)});a=b()[0];g||(c.scrollBar=(new e(a.conf,h.idCount,h.pId)).attachEventHandlers(a.handler))},_setAxisScale:function(){var c=this.config,a=this.components.xAxis[0].getCategoryLen(),b=this.jsonData,d=c.scrollOptions||(c.scrollOptions={}),h=this.components.dataset,e=h.length,g,k,l=0,m;m=c.canvasWidth;var t=c.scrollToEnd,v=c.lastScrollPosition,b=s(b.chart.numvisibleplot,Ca(c.width/this.avgScrollPointWidth));for(k=0;k<e;k++)g=h[k],"column"===g.type&&l++;this.isStacked&&(l=1);a*=l||1;
2<=b&&b<a?(c.viewPortConfig.scaleX=a/=b,m=m*(a-1)*(void 0!==v?v:t?1:0),c.viewPortConfig.x=m/a,d.vxLength=b/e,c.scrollEnabled=!0):c.scrollEnabled=!1},drawScrollBar:function(){var c=this,a=c.config,b=a.viewPortConfig,d=c.components,h=d.xAxis[0],e=h.config.axisData,g=h.config.axisRange,k=a.scrollOptions||(a.scrollOptions={}),l=g.max,m=g.min,t=k.vxLength,v=d.scrollBar,g=v.node,u=a.scrollToEnd,A=a.lastScrollPosition,n=b.scaleX,q,p,r,x,z;x=void 0!==A?A:u?1:0;b=a.canvasLeft;u=a.canvasTop;A=a.canvasHeight;
q=a.canvasWidth;d=d.canvas.config;p=d.canvasBorderWidth;r=e.showAxisLine?e.axisLineThickness||0:0;z=s(p,e.lineStartExtension);e=s(p,e.lineEndExtension);k.viewPortMin=m;k.viewPortMax=l;n=k.scrollRatio=1/n;t=k.windowedCanvasWidth=h.getAxisPosition(t);h=k.fullCanvasWidth=h.getAxisPosition(l-m)-t;!1!==a.scrollEnabled?(v.draw(b-z,u+A+p+r-2,{width:q+z+e,scrollRatio:n,roundEdges:d.isRoundEdges,fullCanvasWidth:h,windowedCanvasWidth:t,scrollPosition:x}),!g&&function(){var a;la.eve.on("raphael.scroll.start."+
v.node.id,function(b){a=b;I.raiseEvent("scrollstart",{scrollPosition:b},c.chartInstance)});la.eve.on("raphael.scroll.end."+v.node.id,function(b){I.raiseEvent("scrollend",{prevScrollPosition:a,scrollPosition:b},c.chartInstance)})}()):v&&v.node&&v.node.hide()},_drawDataset:function(){this._setClipping();m.mscartesian._drawDataset.call(this)},_setClipping:function(){var c=this.config,a=this.graphics.datasetGroup,b=this.graphics.datalabelsGroup,d=this.graphics.trackerGroup,h=c.viewPortConfig,e=this.graphics.sumLabelsLayer,
g=h.scaleX,k=this.get("config","animationObj"),l=k.duration,m=k.dummyObj,t=k.animObj,k=k.animType,h=h.x,c=c.height,v=this.components.canvas.config.clip["clip-canvas"],v=v&&v.slice(0)||[];this.config.clipSet?(a.animateWith(m,t,{"clip-rect":v},l,k),b.animateWith(m,t,{"clip-rect":v},l,k),d.attr({"clip-rect":v}),v[3]=c,v[1]=0,e&&e.animateWith(m,t,{"clip-rect":v},l,k)):(a.attr({"clip-rect":v}),b.attr({"clip-rect":v}),d.attr({"clip-rect":v}),v[3]=c,v[1]=0,e&&e.attr({"clip-rect":v}));a.attr({transform:"T"+
-(h*g)+",0"});b.attr({transform:"T"+-(h*g)+",0"});d.attr({transform:"T"+-(h*g)+",0"});e&&e.attr({transform:"T"+-(h*g)+",0"});this.config.clipSet=!0},configure:function(){var c=this.jsonData.chart,a;m.mscolumn2d.configure.call(this);a=this.config;a.scrollToEnd=s(c.scrolltoend,0);a.lastScrollPosition=void 0}},m.scrollbase);m("scrollarea2d",{friendlyName:"Scrollable Multi-series Area Chart",tooltipConstraint:"plot",canvasborderthickness:1,creditLabel:B,hasScroll:!0,defaultDatasetType:"scrollarea2d",
applicableDSList:{scrollarea2d:!0},avgScrollPointWidth:75,defaultPlotShadow:0,_setAxisScale:function(){var c=this.config,a=this.components.xAxis[0].getCategoryLen(),b=this.jsonData,d=c.scrollOptions||(c.scrollOptions={}),h;h=c.lastScrollPosition;var e=c.scrollToEnd,g=c.canvasWidth,b=s(b.chart.numvisibleplot,Ca(c.width/this.avgScrollPointWidth));2<=b&&b<a?(c.viewPortConfig.scaleX=a/=b,h=g*(a-1)*(void 0!==h?h:e?1:0),c.viewPortConfig.x=h/a,d.vxLength=b,c.scrollEnabled=!0):c.scrollEnabled=!1}},m.scrollcolumn2d);
m("scrollline2d",{friendlyName:"Scrollable Multi-series Line Chart",tooltipConstraint:"plot",canvasborderthickness:1,defaultDatasetType:"line",creditLabel:B,avgScrollPointWidth:75},m.scrollarea2d);m("scrollstackedcolumn2d",{friendlyName:"Scrollable Stacked Column Chart",canvasborderthickness:1,tooltipConstraint:"plot",avgScrollPointWidth:75,creditLabel:B,isStacked:!0},m.scrollcolumn2d);m("scrollcombi2d",{friendlyName:"Scrollable Combination Chart",tooltipConstraint:"plot",hasScroll:!0,canvasborderthickness:1,
avgScrollPointWidth:40,applicableDSList:{area:!0,line:!0,column:!0},creditLabel:B,_createDatasets:m.mscombi2d},m.scrollcolumn2d);m("scrollcombidy2d",{friendlyName:"Scrollable Dual Y-Axis Combination Chart",tooltipConstraint:"plot",canvasborderthickness:1,avgScrollPointWidth:40,hasScroll:!0,_drawDataset:m.scrollcolumn2d,updateManager:m.scrollcolumn2d,_setAxisScale:m.scrollcolumn2d,_createToolBox:m.scrollcolumn2d,_scrollBar:m.scrollcolumn2d,_manageScrollerPosition:m.scrollcolumn2d,drawScrollBar:m.scrollcolumn2d,
_setClipping:m.scrollcolumn2d,creditLabel:B,configure:m.scrollcolumn2d},m.mscombidy2d);m("scatter",{friendlyName:"Scatter Chart",isXY:!0,standaloneInit:!0,hasLegend:!0,defaultZeroPlaneHighlighted:!1,creditLabel:B,defaultDatasetType:"Scatter",applicableDSList:{Scatter:!0}},m.scatterBase);Ma(W.eventList,{zoomedOut:"FC_ZoomedOut"});m("bubble",{friendlyName:"Bubble Chart",standaloneInit:!0,defaultDatasetType:"bubble",creditLabel:B,applicableDSList:{bubble:!0},getDataLimits:function(){var c=this.components.dataset,
a,b,d,h=-Infinity,e=Infinity;a=0;for(d=c.length;a<d;a++)b=c[a],b=b.getDataLimits(),h=va(h,b.zMax||-Infinity),e=ka(e,b.zMin||Infinity);h=-Infinity===h?0:h;e=Infinity===e?0:e;return{zMax:h,zMin:e}}},m.scatter);la._availableAnimAttrs&&la._availableAnimAttrs.cx&&(la._availableAnimAttrs.innerR=la._availableAnimAttrs.depth=la._availableAnimAttrs.radiusYFactor=la._availableAnimAttrs.start=la._availableAnimAttrs.end=la._availableAnimAttrs.cx);ma.prototype={configure:function(c,a,b,d){var h=this.linkedItems.chart,
e=h.get("components","paper"),h=h.get("graphics","datasetGroup");"object"===typeof c&&(c=c.depth,a=c.hasOnePoint,b=c.use3DLighting,d=c.isDoughnut);this.renderer||(this.renderer=e);this.hasOnePoint=a;this.use3DLighting=b;this.isDoughnut=d;this.depth=c;!this.bottomBorderGroup&&(this.bottomBorderGroup=e.group("bottom-border",h));this.bottomBorderGroup.attr({transform:"t0,"+c});!this.slicingWallsBackGroup&&(this.slicingWallsBackGroup=e.group("slicingWalls-back-Side",h));!this.slicingWallsFrontGroup&&
(this.slicingWallsFrontGroup=e.group("slicingWalls-front-Side",h));!this.topGroup&&(this.topGroup=e.group("top-Side",h));!this.pointElemStore&&(this.pointElemStore=[]);!this.slicingWallsArr&&(this.slicingWallsArr=[]);this.moveCmdArr=["M"];this.lineCmdArr=["L"];this.closeCmdArr=["Z"];this.colorObjs=[]},getArcPath:function(c,a,b,d,h,e,g,k,l,m){return b==h&&d==e?[]:["A",g,k,0,m,l,h,e]},_parseSliceColor:function(c,a,b){var d,h,e,g,k,l,m,t,v,u,n,r,z,G,B;B=3;var x=(d=this.use3DLighting)?ba:R,s=b.radiusYFactor,
L=b.cx,K=b.cy,S=b.r,W=S*s,I=b.innerR||0,da=L+S,M=L-S,w=L+I,C=L-I;a=a||100;b=a/2;x[c]&&x[c][a]?x=x[c][a]:(x[c]||(x[c]={}),x[c][a]||(x[c][a]={}),x=x[c][a],d?(d=N(c,80),h=N(c,75),l=p(c,85),m=p(c,70),t=p(c,40),v=p(c,50),p(c,30),u=p(c,65),N(c,85),e=N(c,69),g=N(c,75),k=N(c,95)):(B=10,d=N(c,90),h=N(c,87),l=p(c,93),m=p(c,87),t=p(c,80),u=v=p(c,85),p(c,80),k=N(c,85),e=N(c,75),g=N(c,80)),n=h+q+l+q+m+q+l+q+h,z=a+q+a+q+a+q+a+q+a,r=h+q+c+q+l+q+c+q+h,G=b+q+b+q+b+q+b+q+b,t=h+q+c+q+t+q+c+q+h,e=g+q+l+q+v+q+l+q+e,g=
"FFFFFF"+q+"FFFFFF"+q+"FFFFFF"+q+"FFFFFF"+q+"FFFFFF",B=0+q+b/B+q+a/B+q+b/B+q+0,x.top=Ba?{FCcolor:{gradientUnits:"userSpaceOnUse",radialGradient:!0,color:u+q+k,alpha:a+q+a,ratio:"0,100"}}:{FCcolor:{gradientUnits:"objectBoundingBox",color:m+q+m+q+l+q+h,alpha:a+q+a+q+a+q+a,angle:-72,ratio:"0,8,15,77"}},x.frontOuter={FCcolor:{gradientUnits:"userSpaceOnUse",y1:0,y2:0,color:e,alpha:z,angle:0,ratio:"0,20,15,15,50"}},x.backOuter={FCcolor:{gradientUnits:"userSpaceOnUse",y1:0,y2:0,color:t,alpha:G,angle:0,ratio:"0,62,8,8,22"}},
x.frontInner={FCcolor:{gradientUnits:"userSpaceOnUse",y1:0,y2:0,color:r,alpha:G,angle:0,ratio:"0,25,5,5,65"}},x.backInner={FCcolor:{gradientUnits:"userSpaceOnUse",y1:0,y2:0,color:n,alpha:z,angle:0,ratio:"0,62,8,8,22"}},x.topBorder={FCcolor:{gradientUnits:"userSpaceOnUse",y1:0,y2:0,color:g,alpha:B,angle:0,ratio:"0,20,15,15,50"}},x.topInnerBorder={FCcolor:{gradientUnits:"userSpaceOnUse",y1:0,y2:0,color:g,alpha:B,angle:0,ratio:"0,50,15,15,20"}},x.bottom=na(F(c,b)),x.startSlice=na(F(d,a)),x.endSlice=
na(F(d,a)));if(x.cx!==L||x.cy!==K||x.rx!==S||x.radiusYFactor!==s||x.innerRx!==I)Ba&&(x.top.FCcolor.cx=L,x.top.FCcolor.cy=K,x.top.FCcolor.r=S,x.top.FCcolor.fx=L-.3*S,x.top.FCcolor.fy=K+1.2*W),x.topBorder.FCcolor.x1=x.backOuter.FCcolor.x1=x.frontOuter.FCcolor.x1=M,x.topBorder.FCcolor.x2=x.backOuter.FCcolor.x2=x.frontOuter.FCcolor.x2=da,x.topInnerBorder.FCcolor.x1=x.backInner.FCcolor.x1=x.frontInner.FCcolor.x1=C,x.topInnerBorder.FCcolor.x2=x.backInner.FCcolor.x2=x.frontInner.FCcolor.x2=w,x.cx=L,x.cy=
K,x.rx=S,x.radiusYFactor=s,x.innerRx=I;return x},rotate:function(a){var b=this.pointElemStore,d=0,g=b.length,h;if(!this.hasOnePoint){for(;d<g;d+=1)h=b[d],h=h._confObject,h.start+=a,h.end+=a,this._setSliceShape(h);this.refreshDrawing()}},removeSlice:function(a){var b=this.pointElemStore,d=a._confObject.elements,g=this.slicingWallsArr,h;h=b.length;var e;for(--h;0<=h;--h)e=b[h],e===a&&b.splice(h,1);h=g.length;for(--h;0<=h;--h)b=g[h],b!==d.startSlice&&b!==d.frontOuter1&&b!==d.frontOuter&&b!==d.backInner&&
b!==d.endSlice||g.splice(h,1);a.hide&&a.hide();this._slicePool||(this._slicePool=[]);this._slicePool.push(a);this.refreshDrawing()},useSliceFromPool:function(){var a=this._slicePool||(this._slicePool=[]),b=this.slicingWallsArr,d=!1;a.length&&(d=a.shift(),this.pointElemStore.push(d),d.show(),a=d._confObject.elements,b.push(a.startSlice,a.frontOuter1,a.frontOuter),a.backInner&&b.push(a.backInner),b.push(a.endSlice));return d},refreshDrawing:function(){var a=function(a,c){return a._conf.index-c._conf.index||
a._conf.cIndex-c._conf.cIndex||a._conf.isStart-c._conf.isStart||a._conf.si-c._conf.si};return function(){var g=this.slicingWallsArr,f=0,k,h=g.length,e,m,n,q,p=this.slicingWallsFrontGroup,t=this.slicingWallsBackGroup;g.sort(a);a:{var v=g[0]&&g[0]._conf.index,u,A;q=v<=b;e=1;for(k=g.length;e<k;e+=1)if(A=g[e]._conf.index,u=A<=b,u!=q||A<v)break a;e=0}for(;f<h;f+=1,e+=1)e===h&&(e=0),k=g[e],q=k._conf.index,q<d?p.appendChild(k):q<=b?(m?k.insertBefore(m):p.appendChild(k),m=k):q<=l?(n?k.insertBefore(n):t.appendChild(k),
n=k):t.appendChild(k)}}(),_setSliceShape:function(a,g){var f=this.getArcPath,k=a.start,h=a.end,e=S(k),m=S(h),q,p,r,t,v,u,A,z,N,G,F,x,B,L,s,K,R,ba=this.isDoughnut,da=a.radiusYFactor,M=a.cx,w=a.cy,C=a.r,y=C*da,Y=C+(Ba?-1:2),X=y+(Ba?-1:2),E=a.innerR||0,Q=E*da,H=this.depth,O=H+w,I=M+C,T=M-C,Z=M+E,ca=M-E,W=w-y,V=["M",ca,W,"L",ca,O+y,"Z"],da=a.elements,ga,aa,U,ha,ea,$="path",ja=(e+m)/2,ka=e>m;p=qa(e);r=fa(e);t=qa(m);v=fa(m);u=M+C*p;A=w+y*r;z=M+Y*p;N=w+X*r;ga=A+H;aa=M+C*t;U=w+y*v;G=M+Y*t;F=w+X*v;ha=U+H;
ba?(x=M+E*p,B=w+Q*r,K=B+H,L=M+E*t,s=w+Q*v,R=s+H,a.startSlice=["M",u,A,"L",u,ga,x,K,x,B,"Z"],a.endSlice=["M",aa,U,"L",aa,ha,L,R,L,s,"Z"]):(a.startSlice=["M",u,A,"L",u,ga,M,O,M,w,"Z"],a.endSlice=["M",aa,U,"L",aa,ha,M,O,M,w,"Z"]);Ba?(q=(e>m?n:0)+m-e,a.clipTopPath=ba?[["M",u,A,"A",C,y,0,q>b?1:0,1,aa,U,"L",L,s,"A",E,Q,0,q>b?1:0,0,x,B,"Z"]]:[["M",u,A,"A",C,y,0,q>b?1:0,1,aa,U,"L",M,w,"Z"]],a.clipOuterFrontPath1=[V],a.clipTopBorderPath=[["M",z,N,"A",Y,X,0,q>b?1:0,1,G,F,"L",aa,U,aa,U+1,"A",C,y,0,q>b?1:0,0,
u,A+1,"L",u,A,"Z"]],k!=h?e>m?e<b?(a.clipOuterFrontPath=[["M",I,w,"A",C,y,0,0,1,aa,U,"v",H,"A",C,y,0,0,0,I,w+H,"Z"]],a.clipOuterFrontPath1=[["M",T,w,"A",C,y,0,0,0,u,A,"v",H,"A",C,y,0,0,1,T,w+H,"Z"]],a.clipOuterBackPath=[["M",I,w,"A",C,y,0,1,0,T,w,"v",H,"A",C,y,0,1,1,I,w+H,"Z"]],ba&&(a.clipInnerBackPath=[["M",Z,w,"A",E,Q,0,1,0,ca,w,"v",H,"A",E,Q,0,1,1,Z,w+H,"Z"]],a.clipInnerFrontPath=[["M",Z,w,"A",E,Q,0,0,1,L,s,"v",H,"A",E,Q,0,0,0,Z,w+H,"Z","M",ca,w,"A",E,Q,0,0,0,x,B,"v",H,"A",E,Q,0,0,1,ca,w+H,"Z"]])):
m>b?(a.clipOuterFrontPath=[["M",I,w,"A",C,y,0,1,1,T,w,"v",H,"A",C,y,0,1,0,I,w+H,"Z"]],a.clipOuterBackPath=[["M",T,w,"A",C,y,0,0,1,aa,U,"v",H,"A",C,y,0,0,0,T,w+H,"Z","M",I,w,"A",C,y,0,0,0,u,A,"v",H,"A",C,y,0,0,1,I,w+H,"Z"]],ba&&(a.clipInnerFrontPath=[["M",Z,w,"A",E,Q,0,1,1,ca,w,"v",H,"A",E,Q,0,1,0,Z,w+H,"Z"]],a.clipInnerBackPath=[["M",ca,w,"A",E,Q,0,0,1,L,s,"v",H,"A",E,Q,0,0,0,ca,w+H,"Z","M",Z,w,"A",E,Q,0,0,0,x,B,"v",H,"A",E,Q,0,0,1,Z,w+H,"Z"]])):(a.clipOuterFrontPath=[["M",I,w,"A",C,y,0,0,1,aa,U,
"v",H,"A",C,y,0,0,0,I,w+H,"Z"]],a.clipOuterBackPath=[["M",u,A,"A",C,y,0,0,1,I,w,"v",H,"A",C,y,0,0,0,u,ga,"Z"]],ba&&(a.clipInnerFrontPath=[["M",Z,w,"A",E,Q,0,0,1,L,s,"v",H,"A",E,Q,0,0,0,Z,w+H,"Z"]],a.clipInnerBackPath=[["M",x,B,"A",E,Q,0,0,1,Z,w,"v",H,"A",E,Q,0,0,0,x,K,"Z"]])):e<b?m>b?(a.clipOuterFrontPath=[["M",u,A,"A",C,y,0,0,1,T,w,"v",H,"A",C,y,0,0,0,u,ga,"Z"]],a.clipOuterBackPath=[["M",T,w,"A",C,y,0,0,1,aa,U,"v",H,"A",C,y,0,0,0,T,w+H,"Z"]],ba&&(a.clipInnerFrontPath=[["M",x,B,"A",E,Q,0,0,1,ca,w,
"v",H,"A",E,Q,0,0,0,x,K,"Z"]],a.clipInnerBackPath=[["M",ca,w,"A",E,Q,0,0,1,L,s,"v",H,"A",E,Q,0,0,0,ca,w+H,"Z"]])):(a.clipOuterFrontPath=[["M",u,A,"A",C,y,0,0,1,aa,U,"v",H,"A",C,y,0,0,0,u,ga,"Z"]],a.clipOuterBackPath=[V],ba&&(a.clipInnerFrontPath=[["M",x,B,"A",E,Q,0,0,1,L,s,"v",H,"A",E,Q,0,0,0,x,K,"Z"]],a.clipInnerBackPath=[V])):(a.clipOuterFrontPath=[V],a.clipOuterBackPath=[["M",u,A,"A",C,y,0,0,1,aa,U,"v",H,"A",C,y,0,0,0,u,ga,"Z"]],ba&&(a.clipInnerFrontPath=[V],a.clipInnerBackPath=[["M",x,B,"A",E,
Q,0,0,1,L,s,"v",H,"A",E,Q,0,0,0,x,K,"Z"]])):a.clipOuterFrontPath=a.clipOuterBackPath=a.clipInnerBackPath=a.clipInnerFrontPath=[V],$="litepath",a.clipBottomBorderPath=a.clipTopPath,a.startSlice=[a.startSlice],a.endSlice=[a.endSlice]):(Y=this.moveCmdArr,X=this.lineCmdArr,p=this.closeCmdArr,H=[M,w],r=[T,w],W=[M,W],t=[I,w],v=[M,w+y],V=[T,O],ea=[I,O],z=[ca,w],N=[Z,w],G=[ca,O],F=[Z,O],a.clipOuterFrontPath1=[],k!=h?(e>m?e<b?(k=f(M,w,u,A,T,w,C,y,1,0),h=f(M,w,T,w,I,w,C,y,1,0),U=f(M,w,I,w,aa,U,C,y,1,0),a.clipOuterBackPath=
Y.concat(r,h,X,ea,f(M,O,I,O,T,O,C,y,0,0),p),a.clipOuterFrontPath1=Y.concat([u,A],k,X,V,f(M,O,T,O,u,ga,C,y,0,0),p),a.clipOuterFrontPath=Y.concat(t,U,X,[aa,ha],f(M,O,aa,ha,I,O,C,y,0,0),p),a.clipTopBorderPath=Y.concat([u,A],k,h,U),ba?(C=f(M,w,L,s,Z,w,E,Q,0,0),y=f(M,w,Z,w,ca,w,E,Q,0,0),B=f(M,w,ca,w,x,B,E,Q,0,0),a.clipInnerBackPath=Y.concat(N,y,X,G,f(M,O,ca,O,Z,O,E,Q,1,0),p),a.clipInnerFrontPath=Y.concat(z,B,X,[x,K],f(M,O,x,K,ca,O,E,Q,1,0),p,Y,[L,s],C,X,F,f(M,O,Z,O,L,R,E,Q,1,0),p),a.clipTopPath=a.clipTopBorderPath.concat(X,
[L,s],C,y,B,p),a.clipTopBorderPath=a.clipTopBorderPath.concat(Y,[L,s],C,y,B)):a.clipTopPath=a.clipTopBorderPath.concat(X,H,p)):m>b?(k=f(M,w,u,A,I,w,C,y,1,0),h=f(M,w,I,w,T,w,C,y,1,0),U=f(M,w,T,w,aa,U,C,y,1,0),a.clipOuterFrontPath=Y.concat(t,h,X,V,f(M,O,T,O,I,O,C,y,0,0),p),a.clipOuterBackPath=Y.concat([u,A],k,X,ea,f(M,O,I,O,u,ga,C,y,0,0),p,Y,r,U,X,[aa,ha],f(M,O,aa,ha,T,O,C,y,0,0),p),a.clipTopBorderPath=Y.concat([u,A],k,h,U),ba?(C=f(M,w,L,s,ca,w,E,Q,0,0),y=f(M,w,ca,w,Z,w,E,Q,0,0),B=f(M,w,Z,w,x,B,E,Q,
0,0),a.clipInnerFrontPath=Y.concat(z,y,X,F,f(M,O,Z,O,ca,O,E,Q,1,0),p),a.clipInnerBackPath=Y.concat(N,B,X,[x,K],f(M,O,x,K,Z,O,E,Q,1,0),p,Y,[L,s],C,X,G,f(M,O,ca,O,L,R,E,Q,1,0),p),a.clipTopPath=a.clipTopBorderPath.concat(X,[L,s],C,y,B,p),a.clipTopBorderPath=a.clipTopBorderPath.concat(Y,[L,s],C,y,B)):a.clipTopPath=a.clipTopBorderPath.concat(X,H,p)):(k=f(M,w,u,A,I,w,C,y,1,0),h=f(M,w,I,w,aa,U,C,y,1,0),a.clipOuterFrontPath=Y.concat(t,h,X,[aa,ha],f(M,O,aa,ha,I,O,C,y,0,0),p),a.clipOuterBackPath=Y.concat([u,
A],k,X,ea,f(M,O,I,O,u,ga,C,y,0,0),p),a.clipTopBorderPath=Y.concat([u,A],k,h),ba?(C=f(M,w,L,s,Z,w,E,Q,0,0),y=f(M,w,Z,w,x,B,E,Q,0,0),a.clipInnerFrontPath=Y.concat([L,s],C,X,F,f(M,O,Z,O,L,R,E,Q,1,0),p),a.clipInnerBackPath=Y.concat(N,y,X,[x,K],f(M,O,x,K,Z,O,E,Q,1,0),p),a.clipTopPath=a.clipTopBorderPath.concat(X,[L,s],C,y,p),a.clipTopBorderPath=a.clipTopBorderPath.concat(Y,[L,s],C,y)):a.clipTopPath=a.clipTopBorderPath.concat(X,H,p)):e<b?m>b?(k=f(M,w,u,A,T,w,C,y,1,0),h=f(M,w,T,w,aa,U,C,y,1,0),a.clipOuterBackPath=
Y.concat(r,h,X,[aa,ha],f(M,O,aa,ha,T,O,C,y,0,0),p),a.clipOuterFrontPath=Y.concat([u,A],k,X,V,f(M,O,T,O,u,ga,C,y,0,0),p),a.clipTopBorderPath=Y.concat([u,A],k,h),ba?(C=f(M,w,L,s,ca,w,E,Q,0,0),y=f(M,w,ca,w,x,B,E,Q,0,0),a.clipInnerBackPath=Y.concat([L,s],C,X,G,f(M,O,ca,O,L,R,E,Q,1,0),p),a.clipInnerFrontPath=Y.concat(z,y,X,[x,K],f(M,O,x,K,ca,O,E,Q,1,0),p),a.clipTopPath=a.clipTopBorderPath.concat(X,[L,s],C,y,p),a.clipTopBorderPath=a.clipTopBorderPath.concat(Y,[L,s],C,y)):a.clipTopPath=a.clipTopBorderPath.concat(X,
H,p)):(k=f(M,w,u,A,aa,U,C,y,1,0),a.clipOuterBackPath=Y.concat([u,A]),a.clipTopBorderPath=a.clipOuterBackPath.concat(k),a.clipOuterFrontPath=a.clipTopBorderPath.concat(X,[aa,ha],f(M,O,aa,ha,u,ga,C,y,0,0),p),ba?(C=f(M,w,L,s,x,B,E,Q,0,0),a.clipInnerBackPath=Y.concat([L,s]),a.clipTopPath=a.clipTopBorderPath.concat(X,[L,s],C,p),a.clipTopBorderPath=a.clipTopBorderPath.concat(Y,[L,s],C),a.clipInnerFrontPath=a.clipInnerBackPath.concat(C,X,[x,K],f(M,O,x,K,L,R,E,Q,1,0),p)):a.clipTopPath=a.clipTopBorderPath.concat(X,
H,p)):(k=f(M,w,u,A,aa,U,C,y,1,0),a.clipOuterFrontPath=Y.concat([u,A]),a.clipTopBorderPath=a.clipOuterFrontPath.concat(k),a.clipOuterBackPath=a.clipTopBorderPath.concat(X,[aa,ha],f(M,O,aa,ha,u,ga,C,y,0,0),p),ba?(C=f(M,w,L,s,x,B,E,Q,0,0),a.clipInnerFrontPath=Y.concat([L,s]),a.clipTopPath=a.clipTopBorderPath.concat(X,[L,s],C,p),a.clipTopBorderPath=a.clipTopBorderPath.concat(a.clipInnerFrontPath,C),a.clipInnerBackPath=a.clipInnerFrontPath.concat(C,X,[x,K],f(M,O,x,K,L,R,E,Q,1,0),p)):a.clipTopPath=a.clipTopBorderPath.concat(X,
H,p)),k=Y.concat(r,X,t),C=Y.concat(W,X,v),a.clipTopPath=a.clipTopPath.concat(k,C),a.clipOuterFrontPath=a.clipOuterFrontPath.concat(k),a.clipOuterFrontPath1=a.clipOuterFrontPath1.concat(k),a.clipOuterBackPath=a.clipOuterBackPath.concat(k),ba&&(C=Y.concat(z,X,N),a.clipInnerFrontPath=a.clipInnerFrontPath.concat(C),a.clipInnerBackPath=a.clipInnerBackPath.concat(C))):(a.clipTopPath=a.clipOuterFrontPath=a.clipOuterBackPath=[],ba&&(a.clipInnerFrontPath=a.clipInnerBackPath=[])),a.clipBottomBorderPath=a.clipTopBorderPath);
g||(da.startSlice._conf.index=e,da.endSlice._conf.index=m,da.backOuter._conf.index=x=ka&&(e<=l||m>l)||e<=l&&m>l?l:e>b?e:m,da.frontOuter._conf.index=f=m<=d?m:e>m||e<=d?d:e,da.frontOuter1._conf.index=e,da.frontOuter1._conf.cIndex=b,e>m?(da.backOuter._conf.cIndex=e<l?l:n,da.startSlice._conf.cIndex=e<b?(e+b)/2:(e+n)/2,da.endSlice._conf.cIndex=da.frontOuter._conf.cIndex=0):da.backOuter._conf.cIndex=da.startSlice._conf.cIndex=da.endSlice._conf.cIndex=da.frontOuter._conf.cIndex=ja,q>b?da.frontOuter1.show().attr($,
a.clipOuterFrontPath1):da.frontOuter1.hide(),a.thisElement._attr($,a.clipTopPath),da.bottom.attr($,a.clipTopPath),da.bottomBorder.attr($,a.clipBottomBorderPath),da.topBorder&&da.topBorder.attr($,a.clipTopBorderPath),da.frontOuter.attr($,a.clipOuterFrontPath),da.backOuter.attr($,a.clipOuterBackPath),ba&&(da.backInner.attr($,a.clipInnerBackPath),da.frontInner.attr($,a.clipInnerFrontPath),da.backInner._conf.index=x,da.frontInner._conf.index=f,e>m?(da.backInner._conf.cIndex=n,da.frontInner._conf.cIndex=
0):da.backInner._conf.cIndex=da.frontInner._conf.cIndex=ja),this.hasOnePoint?(da.startSlice.hide(),da.endSlice.hide()):(da.startSlice.attr($,a.startSlice).show(),da.endSlice.attr($,a.endSlice).show()))},_setSliceCosmetics:function(a){var b=a.thisElement,d=a.showBorderEffect,g=a.elements,h=F(a.borderColor,s(a.borderAlpha,a.alpha)),e=a.borderWidth,k;a.color&&(a=this._parseSliceColor(a.color,a.alpha,a),Ba?(k={fill:na(a.top),"stroke-width":0},d?g.topBorder.show().attr({fill:na(a.topBorder),"stroke-width":0}):
(g.topBorder.hide(),k.stroke=h,k["stroke-width"]=e),b._attr(k)):(b._attr({fill:na(a.top),"stroke-width":0}),g.topBorder.attr({stroke:h,"stroke-width":e})),g.bottom.attr({fill:na(a.bottom)}),g.bottomBorder.attr({stroke:h,"stroke-width":e}),g.frontOuter.attr({fill:na(a.frontOuter)}),g.frontOuter1.attr({fill:na(a.frontOuter)}),g.backOuter.attr({fill:na(a.backOuter)}),g.startSlice.attr({fill:na(a.startSlice),stroke:h,"stroke-width":e}),g.endSlice.attr({fill:na(a.endSlice),stroke:h,"stroke-width":e}),
this.isDoughnut&&(g.frontInner.attr({fill:na(a.frontInner)}),g.backInner.attr({fill:na(a.backInner)})))},createSlice:function(){var a={stroke:!0,strokeWidth:!0,"stroke-width":!0,dashstyle:!0,"stroke-dasharray":!0,translateX:!0,translateY:!0,"stroke-opacity":!0,fill:!0,opacity:!0,transform:!0,ishot:!0,cursor:!0,start:!0,end:!0,color:!0,alpha:!0,borderColor:!0,borderAlpha:!0,borderWidth:!0,rolloverProps:!0,showBorderEffect:!0,positionIndex:!0,cx:!0,cy:!0,radiusYFactor:!0,r:!0,innerR:!0},b=function(b,
d){var e,f,h=this,g=h._confObject,k={},l=g.elements,m,n,p,q=g.Pie3DManager,r;"string"===typeof b&&void 0!==d&&null!==d&&(e=b,b={},b[e]=d);if(b&&"string"!==typeof b){for(e in b)if(f=b[e],a[e])if(g[e]=f,"ishot"===e||"cursor"===e||"transform"===e)k[e]=f,r=!0;else if("start"===e||"end"===e||"cx"===e||"cy"===e||"radiusYFactor"===e||"r"===e||"innerR"===e)n=!0;else{if("color"===e||"alpha"===e||"borderColor"===e||"borderAlpha"===e||"borderWidth"===e)p=!0}else h._attr(e,f);n&&(q._setSliceShape(g),q.refreshDrawing());
(p||n)&&q._setSliceCosmetics(g);if(r){for(m in l)l[m].attr(k);h._attr(k)}}else h=a[b]?g[b]:h._attr(b);return h},d=function(a,b){var c=this._confObject.elements,d;for(d in c)c[d].on(a,b);return this._on(a,b)},g=function(a,b,c){var d,e=this._confObject.elements,f=-1<Ea.navigator.userAgent.toLowerCase().indexOf("android");for(d in e)f?"topBorder"!==d&&"frontOuter"!==d&&"startSlice"!==d&&"endSlice"!==d||e[d].drag(a,b,c):e[d].drag(a,b,c);return this._drag(a,b,c)},h=function(){var a=this._confObject.elements,
b;for(b in a)a[b].hide();return this._hide()},e=function(){var a=this._confObject.elements,b;for(b in a)a[b].show();return this._show()},k=function(){var a=this._confObject,b=a.elements,c;for(c in b)b[c].destroy();Ba&&(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()},l=function(a){var b=this._confObject.elements,c;for(c in b)b[c].tooltip(a);
return this._tooltip(a)},m=function(a,b){var c=this._confObject.elements,d;if(void 0===b)return this._data(a);for(d in c)c[d].data(a,b);return this._data(a,b)},n=0;return function(){var a=this.renderer,c,p={elements:{},Pie3DManager:this},q=this.slicingWallsArr,r=p.elements,z=Ba?"litepath":"path";c=a[z](this.topGroup);c._confObject=p;p.thisElement=c;c._destroy=c.destroy;c.destroy=k;c._show=c.show;c.show=e;c._hide=c.hide;c.hide=h;c._on=c.on;c.on=d;c._drag=c.drag;c.drag=g;c._attr=c.attr;c.attr=b;c._tooltip=
c.tooltip;c.tooltip=l;c._data=c.data;c.data=m;this.pointElemStore.push(c);r.topBorder=a[z](this.topGroup);r.bottom=a[z](this.bottomBorderGroup).attr({"stroke-width":0});r.bottomBorder=a[z](this.bottomBorderGroup);r.frontOuter=a[z](this.slicingWallsFrontGroup).attr({"stroke-width":0});r.backOuter=a[z](this.slicingWallsFrontGroup).attr({"stroke-width":0});r.startSlice=a[z](this.slicingWallsFrontGroup);r.endSlice=a[z](this.slicingWallsFrontGroup);r.frontOuter1=a[z](this.slicingWallsFrontGroup).attr({"stroke-width":0});
r.frontOuter._conf={si:n,isStart:.5};r.frontOuter1._conf={si:n,isStart:.5};r.startSlice._conf={si:n,isStart:0};r.endSlice._conf={si:n,isStart:1};r.backOuter._conf={si:n,isStart:.4};q.push(r.startSlice,r.frontOuter1,r.frontOuter,r.backOuter,r.endSlice);this.isDoughnut&&(r.frontInner=a[z](this.slicingWallsFrontGroup).attr({"stroke-width":0}),r.backInner=a[z](this.slicingWallsFrontGroup).attr({"stroke-width":0}),r.backInner._conf={si:n,isStart:.5},r.frontInner._conf={si:n,isStart:.4},q.push(r.frontInner,
r.backInner));n+=1;return c}}()};ma.prototype.constructor=ma},[3,2,2,"sr4"]]);
FusionCharts.register("module",["private","modules.renderer.js-zoomline",function(){var pa=this,S=pa.hcLib,Ka=S.hashify,ma=pa.window,I=ma.document,W=ma.Image,La=ma.MouseEvent,Ea=/msie/i.test(ma.navigator.userAgent)&&!ma.opera,ja=S.chartAPI,la=S.extend2,Ia=S.addEvent,ea=S.pluck,s=S.pluckNumber,Ta=S.getFirstColor,Ma=S.graphics.convertColor,na=S.bindSelectionEvent,Ba=S.parseUnsafeString,Ua=S.componentDispose,ra=S.Raphael,Ga=S.toRaphaelColor,Fa=S.hasTouch,Na=S.plotEventHandler,za=S.getMouseCoordinate,
xa=!/fusioncharts\.com$/i.test(ma.location.hostname),sa="rgba(192,192,192,"+(Ea?.002:1E-6)+")",fa=ma.Math,qa=fa.ceil,Ja=fa.floor,ua=fa.round,ka=fa.max,va=fa.min,wa=fa.cos,ya=fa.sin,Aa=ma.parseFloat,Ca=ma.parseInt,ta;la(S.eventList,{zoomed:"FC_Zoomed",pinned:"FC_Pinned",resetzoomchart:"FC_ResetZoomChart"});ja("zoomline",{standaloneInit:!0,canvasborderthickness:1,defaultDatasetType:"zoomline",applicableDSList:{zoomline:!0},friendlyName:"Zoomable and Panable Multi-series Line Chart",creditLabel:xa,_drawAxis:function(){var a=
this.components.yAxis||[],b,d;b=0;for(d=a.length;b<d;b++)a[b].draw()},_setCategories:function(){var a=this.config,b=this.jsonData,d=this.components.xAxis,n,l,k;l=a.cdmchar;var g=b.categories&&b.categories[0].category||[];if((a.cdm||"string"===typeof g)&&g.split){a=g.split(l);n=[];l=0;for(k=a.length;l<k;l+=1)n.push({label:a[l]});this.config.categories=b.categories[0].category=n}d[0].setAxisPadding(0,0);d[0].setCategory(n||g)},_createDatasets:function(){var a,b,d,n,l,k,g,N,p;l={};var s=this.config;
a=this.components;N=this.jsonData;var G=N.dataset,z=G&&G.length,m=s.cdmchar,q=s.cdm,r=this.defaultDatasetType,K=this.applicableDSList,s=this.components.legend.components.items||[];N=N.categories&&N.categories[0].category;G&&N||this.setChartMessage();this.config.categories=N;N=a.dataset||(a.dataset=[]);p=N.length;for(a=0;a<z;a++){g=G[a];if(q&&g.data&&g.data.split){k=g.data.split(m);n=[];b=0;for(d=k.length;b<d;b++)n.push({value:k[b]});g.data=n}b=g.parentyaxis||"";b=(b=this.isDual&&"s"===b.toLowerCase()?
ea(g.renderas,this.sDefaultDatasetType):ea(g.renderas,r))&&b.toLowerCase();K[b]||(b=r);if(d=FusionCharts.get("component",["dataset",b]))void 0===l[b]?l[b]=0:l[b]++,(b=N[a])?(d=(b.JSONData.data||[]).length,n=(g.data||[]).length,d>n&&b.removeData(n,d-n,!1),N[a].JSONData=g,N[a].configure(),N[a]._deleteGridImages&&N[a]._deleteGridImages()):(b=new d,N.push(b),b.chart=this,b.index=a,b.init(g))}if(p>z){l=p-z;b=a;for(z=l+a;b<z;b++)Ua.call(N[b]);N.splice(a,l);s.splice(a,l)}},isWithinCanvas:function(a,b){var d=
S.getMouseCoordinate(b.get("linkedItems","container"),a),n=d.chartX,l=d.chartY,k=b.get("config"),g=k.canvasLeft,N=k.canvasTop,p=k.canvasLeft+k.canvasWidth,k=k.canvasHeight+k.canvasTop;d.insideCanvas=!1;d.originalEvent=a;n>g&&n<p&&l>N&&l<k&&(d.insideCanvas=!0);return d},highlightPoint:function(a,b,d,n,l,k){var g=this,N=g.config,p=g.components,s=g.graphics,G=p.paper,z=s.tracker,m=(p=p.dataset[l])&&p.config;l=p&&m.zoomedRadius||0;var q=p&&m.hoverCosmetics,p=q&&q.fill,m=q&&q.borderColor,q=q&&q.borderThickness,
r={},r=function(a){S.plotEventHandler.call(this,g,a)},K=function(a){S.plotEventHandler.call(this,g,a,"dataplotRollover")},B=function(a){S.plotEventHandler.call(this,g,a,"dataplotRollout")};z||(z=s.tracker=G.circle(0,0,0,s.trackerGroup).attr({"clip-rect":N.canvasLeft+","+N.canvasTop+","+N.canvasWidth+","+N.canvasHeight}).click(r).trackTooltip(!0).hover(K,B));n&&z.data("eventArgs",{x:n.x,y:n.y,tooltip:n.tooltip,link:n.link});N.lastHoveredPoint=n;r=Number(a)?{r:l,fill:p,stroke:m,"stroke-width":q}:{r:l,
fill:sa,stroke:sa,"stroke-width":0};z.attr(r).tooltip(k).transform("t"+(b+N.canvasLeft)+","+(d+N.canvasTop));n&&g.fireMouseEvent("mouseover",z&&z.node,N.lastMouseEvent)},fireMouseEvent:function(a,b,d){var n;b&&a&&(d||(d={}),d.originalEvent&&(d=d.originalEvent),d.touches&&(d=d.touches[0]),b.dispatchEvent?(La?n=new La(a,{bubbles:!!d.bubbles,cancelable:!!d.cancelable,clientX:d.clientX||d.pageX&&d.pageX-I.body.scrollLeft-I.documentElement.scrollLeft||0,clientY:d.clientY||d.pageY&&d.pageY-I.body.scrollTop-
I.documentElement.scrollTop||0,screenX:d.screenX||0,screenY:d.screenY||0,pageX:d.pageX||0,pageY:d.pageY||0}):I.createEvent&&(n=I.createEvent("HTMLEvents"),n.initEvent(a,!!d.bubbles,!!d.cancelable)),n.eventName=a,n&&b.dispatchEvent(n)):I.createEventObject&&b.fireEvent&&(n=I.createEventObject(),n.eventType=a,n.eventName=a,b.fireEvent("on"+a,n)))},configure:function(){var a,b=this.jsonData.chart||{},d=this.components.colorManager,n=d.getColor("canvasBorderColor"),l;b.animation=0;b.showvalues=0;ja.msline.configure.call(this);
l=this.config;a=l.style;la(l,{useRoundEdges:s(b.useroundedges,0),animation:!1,zoomType:"x",canvasPadding:s(b.canvaspadding,0),scrollColor:Ta(ea(b.scrollcolor,d.getColor("altHGridColor"))),scrollShowButtons:!!s(b.scrollshowbuttons,1),scrollHeight:s(b.scrollheight,16)||16,scrollBarFlat:s(b.flatscrollbars,0),allowPinMode:s(b.allowpinmode,1),skipOverlapPoints:s(b.skipoverlappoints,1),showToolBarButtonTooltext:s(b.showtoolbarbuttontooltext,1),btnResetChartTooltext:ea(b.btnresetcharttooltext,"Reset Chart"),
btnZoomOutTooltext:ea(b.btnzoomouttooltext,"Zoom out one level"),btnSwitchToZoomModeTooltext:ea(b.btnswitchtozoommodetooltext,"<strong>Switch to Zoom Mode</strong><br/>Select a subset of data to zoom into it for detailed view"),btnSwitchToPinModeTooltext:ea(b.btnswitchtopinmodetooltext,"<strong>Switch to Pin Mode</strong><br/>Select a subset of data and compare with the rest of the view"),pinPaneFill:Ma(ea(b.pinpanebgcolor,n),s(b.pinpanebgalpha,15)),zoomPaneFill:Ma(ea(b.zoompanebgcolor,"#b9d5f1"),
s(b.zoompanebgalpha,30)),zoomPaneStroke:Ma(ea(b.zoompanebordercolor,"#3399ff"),s(b.zoompaneborderalpha,80)),showPeakData:s(b.showpeakdata,0),maxPeakDataLimit:s(b.maxpeakdatalimit,b.maxpeaklimit,null),minPeakDataLimit:s(b.minpeakdatalimit,b.minpeaklimit,null),crossline:{enabled:s(b.showcrossline,1),line:{"stroke-width":s(b.crosslinethickness,1),stroke:Ta(ea(b.crosslinecolor,"#000000")),"stroke-opacity":s(b.crosslinealpha,20)/100},labelEnabled:s(b.showcrosslinelabel,b.showcrossline,1),labelstyle:{fontSize:Aa(b.crosslinelabelsize)?
Aa(b.crosslinelabelsize)+"px":a.outCanfontSize,fontFamily:ea(b.crosslinelabelfont,a.outCanfontFamily)},valueEnabled:s(b.showcrosslinevalues,b.showcrossline,1),valuestyle:{fontSize:Aa(b.crosslinevaluesize)?Aa(b.crosslinevaluesize)+"px":a.inCanfontSize,fontFamily:ea(b.crosslinevaluefont,a.inCanvasStyle.fontFamily)}},useCrossline:s(b.usecrossline,1),tooltipSepChar:ea(b.tooltipsepchar,", "),showTerminalValidData:s(b.showterminalvaliddata,0),cdmchar:ea(b.dataseparator,"|"),cdm:s(b.compactdatamode,0)})},
getValuePixel:function(a){var b=this.config.viewPortConfig;return b.ddsi+Ja(a/b.ppp)},__toolbar:function(){var a,b,d,n,l=this,k=l.components,g=k.tb=new (FusionCharts.register("component",["toolbox","toolbox"])),N=g.getDefaultConfiguration(),p,F;g.init({iAPI:{chart:l},graphics:l.graphics,chart:l,components:k});a=k.toolBoxAPI||g.getAPIInstances(g.ALIGNMENT_HORIZONTAL);b=a.SymbolStore;d=a.ComponentGroup;n=a.Toolbar;p=a.Symbol;F=a.Scroller;g.graphics={};return{reInit:function(){g.init({iAPI:{chart:l},
graphics:l.graphics,chart:l,components:k})},addSymbol:function(a,b,d,g){a=new p(a);d&&g.setConfiguaration({buttons:la(la({},N),d)});b.tooltext=d.tooltip;b&&a.attachEventHandlers(b);g.addSymbol(a);return a},addScroll:function(a,b){var d=new F(a);b&&d.attachEventHandlers(b);return d},addComponentGroup:function(a,b){var g;g=new d;g.setConfiguaration({group:{fill:b?b.fill:Ma("EBEBEB",0),borderThickness:b?s(b.borderThickness,0):0}});return g},addToolBox:function(a){var b,d=new n;for(b=0;b<a.length;b+=
1)d.addComponent(a[b]);return d},setDrawingArea:function(a,b){a.drawingArea=b;return a},draw:function(a){var b,d,g;for(b=0;b<a.length;b+=1)d=a[b],g=d.drawingArea,d.draw(g.x,g.y)},registerSymbol:function(a,d){b.register(a,d)},getLogicalSpace:function(a){return a.getLogicalSpace()},getNode:function(a){return a.node}}},__preDraw:function(){var a,b,d,n,l,k,g,N,p,F,G=this,z=G.components,m=z.paper,q=G.graphics;b=q.imageContainer;var r=G.config,K=r.canvasLeft,B=r.canvasWidth;a=G.jsonData.chart;var ba=r.cdm;
d=z.xAxis[0];var R=r.viewPortConfig,c=G.components.canvas.config,D=ka(c.canvasPadding,c.canvasPaddingLeft,c.canvasPaddingRight);F=z.yAxis[0];N=q.datasetGroup;var c=r.canvasHeight,f=r.canvasTop,I=G.jsonData.chart,I=r.borderWidth||(r.borderWidth=s(I.showborder,1)?s(I.borderthickness,1):0),h=r.allowPinMode,e=r.crossline,R=d.getCategoryLen(),J=Ca(s(a.displaystartindex,1),10)-1,S=Ca(s(a.displayendindex,R||2),10)-1,W=0,P=z.dataset,t=P.length,z=q.crossline;r.updateAnimDuration=500;b.transform("t"+K+","+
f);b.attr({"clip-rect":K+","+f+","+B+","+c});r.status="zoom";r.maxZoomLimit=s(a.maxzoomlimit,1E3);r.viewPortHistory=[];1>(b=s(a.pixelsperpoint,15))&&(b=1);(d=s(a.pixelsperlabel,a.xaxisminlabelwidth,d.getAxisData("labels").rotation?20:60))<b&&(d=b);(0>J||J>=(R-1||1))&&(J=0);(S<=J||S>(R-1||1))&&(S=R-1||1);R=r.viewPortConfig=la(r.viewPortConfig,{amrd:s(a.anchorminrenderdistance,20),nvl:s(a.numvisiblelabels,0),cdm:ba,oppp:b,oppl:d,dsi:J,dei:S,vdl:S-J,clen:R,offset:0,step:1,llen:0,alen:0,ddsi:J,ddei:S,
ppc:0});if(R.clen){for(;t--;)a=P[t].config,W=ka(W,a.drawAnchors&&(a.anchorRadius||0)+(Number(a.anchorBorderThickness)||0)||0);r.overFlowingMarkerWidth=W;D=r.canvasPadding=ka(W,D);r._prezoomed=R.dei-R.dsi<R.clen-1;n=r._visw=r.canvasWidth-2*D;l=r._visx=r.canvasLeft+D;r._visout=-(r.height+c+1E3);r._ypvr=F&&F.getPVR()||0;a=r._yminValue=F.getLimit().min;k=r._ymin=F.getPixel(a);F=N.attr("clip-rect",[l-W,f,n+2*W,c]);q.scroll||(q.scroll=m.group("scroll").insertAfter(q.datasetGroup));h&&(N=ra.crispBound(0,
f-k,0,c,I),g=r["clip-pinrect"]=[N.x,f,N.width,N.height],p=(q.zoompin=m.group("zoompin")).insertBefore(F).transform(r._pingrouptransform=["T",l,k]).hide(),q.pinrect=m.rect(0,f-k,n,c,p).attr({"stroke-width":0,stroke:"none",fill:r.pinPaneFill,"shape-rendering":"crisp",ishot:!0}),q.pintracker=m.rect(q.trackerGroup).attr({transform:p.transform(),x:0,y:f-k,width:0,height:c,stroke:"none",fill:sa,ishot:!0,cursor:ra.svg&&"ew-resize"||"e-resize"}).hide().drag(function(a){var b=l+a+this.__pindragdelta,c=this.__pinboundleft,
d=this.__pinboundright,e=this.data("cliprect").slice(0);b<c?b=c:b>d&&(b=d);p.transform(["T",b,k]);q.pintracker.transform(p.transform());ra.svg||(e[0]=e[0]+b-l-this.__pindragdelta,p.attr("clip-rect",e));this.__pindragoffset=a},function(){this.__pinboundleft=0-g[0]+l+K;this.__pinboundright=this.__pinboundleft+n-g[2];this.data("cliprect",p.attr("clip-rect"));p._.clipispath=!0},function(){p._.clipispath=!1;this.__pindragdelta=this.__pindragoffset;delete this.__pindragoffset;delete this.__pinboundleft;
delete this.__pinboundright}));I++;N=ra.crispBound(K-I,f+c+I,B+I+I,r.scrollHeight,I);I--;na(G,{attr:{stroke:r.zoomPaneStroke,fill:r.zoomPaneFill,strokeWidth:0},selectionStart:function(){},selectionEnd:function(a){var b=a.selectionLeft-K;a=b+a.selectionWidth;q.crossline&&q.crossline.hide();G[r.viewPortConfig.pinned?"pinRangePixels":"zoomRangePixels"](b,a)}});e&&0!==e.enabled&&1===r.useCrossline?(z||(z=q.crossline=new ta),z.configure(G,e)):z&&z.hide()}},resetZoom:function(){var a=this.config.viewPortHistory,
b=a[0];if(!a.length)return!1;a.length=0;this.zoomTo(b.dsi,b.dei,b)&&pa.raiseEvent("zoomReset",this._zoomargs,this.chartInstance,[this.chartInstance.id]);return!0},eiMethods:{zoomOut:function(){var a;if(a=this.apiInstance)return a.zoomOut&&a.zoomOut()},zoomTo:function(a,b){var d;if(d=this.apiInstance)return d.zoomRange&&d.zoomRange(a,b)},resetChart:function(){var a;if(a=this.apiInstance)a.pinRangePixels&&a.pinRangePixels(),a.resetZoom&&a.resetZoom()},setZoomMode:function(a){var b;(b=this.apiInstance)&&
b.activatePin&&b.activatePin(!a)},getViewStartIndex:function(){var a;if(this.apiInstance&&(a=this.apiInstance.config.viewPortConfig))return a.ddsi},getViewEndIndex:function(){var a,b;if(this.apiInstance&&(a=this.apiInstance.config.viewPortConfig))return b=a.ddei-1,(b>=a.clen?a.clen:b)-1}},zoomOut:function(){var a,b,d=this.config;b=d.viewPortHistory;var n,l,k;a=b.pop();b=b[0]||d.viewPortConfig;a?(n=a.dsi,l=a.dei):d._prezoomed&&(n=0,l=b.clen-1);(k=this.zoomTo(n,l,a))&&pa.raiseEvent("zoomedout",k,this.chartInstance);
return!0},zoomRangePixels:function(a,b){var d=this.config,n=d.viewPortHistory,d=d.viewPortConfig,l=d.ppp,k=d.ddsi,g;n.push(d);(g=this.zoomTo(k+Ja(a/l),k+Ja(b/l)))?pa.raiseEvent("zoomedin",g,this.chartInstance):n.pop()},zoomRange:function(a,b){var d,n,l=this.config,k=l.viewPortConfig;n=this.components.xAxis[0];var g=l.viewPortHistory,s;g.push(k);d=n.getPixel(a);n=n.getPixel(b);k.x=d;k.scaleX=l.canvasWidth/(d-n);(s=this.zoomTo(+a,+b))?pa.raiseEvent("zoomedin",s,this.chartInstance):g.pop()},zoomTo:function(a,
b,d){var n,l;n=this.config;var k=this.components,g=n.viewPortConfig,s=n.canvasHeight;l=n.canvasLeft;var p=n.canvasTop,F=n.canvasBottom,G=n.viewPortHistory,z=g.clen,m=this.components.xAxis[0];0>a&&(a=0);a>=z-1&&(a=z-1);b<=a&&(b=a+1);b>z-1&&(b=z-1);if(a===b||a===g.dsi&&b===g.dei)return!1;this.pinRangePixels();g=la({},g);g.dsi=a;g.dei=b;g=n.viewPortConfig=g;d?this.updateVisual(d.x,d.y,d.scaleX,d.scaleY):(d=m.getPixel(a),n=m.getPixel(b),l=this.getOriginalPositions(d-l,p,n-l,F-p),this.zoomSelection(l[0],
0,l[2],s));k.scrollBar.node.attr({"scroll-ratio":g.vdl/(z-!!z),"scroll-position":[g.dsi/(z-g.vdl-1),!0]});k={level:G.length+1,startIndex:a,startLabel:m.getLabel(a).oriLabel,endIndex:b,endLabel:m.getLabel(b).oriLabel};pa.raiseEvent("zoomed",k,this.chartInstance,[this.chartInstance.id,a,b,k.startLabel,k.endLabel,k.level]);return k},activatePin:function(a){var b=this.config.viewPortConfig,d=this.components.tb.graphics.pinButton;if(b.pinned^(a=!!a))return a||this.pinRangePixels(),pa.raiseEvent("zoomModeChanged",
{pinModeActive:a},this.chartInstance,[]),this.updateButtonVisual(d.node,a?"pressed":"enable"),b.pinned=a},updateButtonVisual:function(a,b){return a.attr({disable:{config:{hover:{fill:"#FFFFFF","stroke-width":1,stroke:"#E3E3E3",cursor:"default"},normal:{fill:"#FFFFFF",stroke:"#E3E3E3","stroke-width":1,cursor:"default"},disable:{fill:"#FFFFFF","stroke-width":1,stroke:"#E3E3E3","stroke-opacity":1,cursor:"default"},pressed:{fill:"#FFFFFF","stroke-width":1,stroke:"#E3E3E3",cursor:"default"}},"button-disabled":!1,
stroke:"#E3E3E3","stroke-opacity":1},enable:{config:{hover:{fill:"#FFFFFF","stroke-width":1,stroke:"#aaaaaa",cursor:"pointer"},normal:{fill:"#FFFFFF",stroke:"#C2C2C2","stroke-width":1,cursor:"pointer"},disable:{fill:"#FFFFFF","stroke-width":1,stroke:"#E3E3E3","stroke-opacity":1,cursor:"pointer"},pressed:{fill:"#EFEFEF","stroke-width":1,stroke:"#C2C2C2",cursor:"pointer"}},"button-disabled":!1,fill:["#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF",!0],stroke:"#C2C2C2","stroke-opacity":1},pressed:{config:{pressed:{fill:["#FFFFFF",
"#FFFFFF","#FFFFFF","#FFFFFF",!0]}},fill:["#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF",!0],stroke:"#E3E3E3"}}[b])},pinRangePixels:function(a,b){var d,n=this.components,l=n.paper,k=this.graphics,g=this.config,s=g.canvasLeft,p=g.viewPortConfig,F=k.zoompin;d=k.pinrect;var G=g["clip-pinrect"],z=g._pingrouptransform,n=n.dataset,m=b-a,q,r,K,k=k.pintracker;if(p&&F&&d){if(a===b)return F.hide(),k.hide(),p.pinned=!1;for(K=n.length;K--;)q=n[K],d=q.graphics,r=d.pinline,r||(r=d.pinline=l.path(F)),r.attr({path:d.lineElement.attrs.path,
transform:["T",-g._visx,-g._ymin]}).attr(q.config.pin);G[0]=a+s;G[2]=m;F.attr({"clip-rect":G,transform:z}).show();k.__pindragdelta=0;k.show().attr({transform:z,x:a,width:m});this.getValuePixel(a);this.getValuePixel(b);return p.pinned=!0}},_createLayers:function(){var a,b=this.components.paper;ja.scatter._createLayers.call(this);a=this.graphics;a.imageContainer=b.group("dataset-orphan",a.dataSetGroup);this.__preDraw();this.toogleDragPan(!0)},getValue:function(a){var b=this.config,d=this.components,
n=b.viewPortConfig;a=this.getOriginalPositions(a.x,a.y,a.x,a.y);var l=d.xAxis[0].config.axisRange,d=d.yAxis[0].config.axisRange,k=l.min,g=d.max;return{x:k+(a[0]-b.canvasLeft)/(b.canvasWidth*n.scaleX/(l.max-k)),y:g-(a[1]-b.canvasTop)/(b.canvasHeight*n.scaleY/(g-d.min))}},getOriginalPositions:function(a,b,d,n){var l=this.config,k=l.viewPortConfig,g=k.scaleX,s=k.scaleY,p=k.x,k=k.y,F=va(a,d);a=ka(a,d);d=va(b,n);b=ka(b,n);a=a>l.canvasWidth?l.canvasWidth:a;b=b>l.canvasHeight?l.canvasHeight:b;F=0>F?0:F;
d=0>d?0:d;return[p+F/g,k+d/s,(a-F)/g,(b-d)/s]},zoomSelection:function(a,b,d,n){var l=this.config;d&&n&&(d=Math.abs(l.canvasWidth/d),n=Math.abs(l.canvasHeight/n),this.updateVisual(a,b,d,n))},updateVisual:function(a,b,d,n,l){var k=this.config,g=k.viewPortConfig,s=k.canvasWidth,p=k.canvasHeight,F=k.viewPortHistory.slice(-1)[0]||g,k=k.maxZoomLimit;g.x=isNaN(a)?a=F.x:a;g.y=isNaN(b)?b=F.y:b;g.scaleX=d||(d=F.scaleX);g.scaleY=n||(n=F.scaleY);d>k&&(g.x=va(a,s-s/k),g.scaleX=k);n>k&&(g.y=va(b,p-p/k),g.scaleY=
k);this.updateManager(l)},toogleDragPan:function(a){var b=this.config.viewPortConfig,d=b.status;a&&(b.status="zoom"===d?"pan":"zoom")},resize:function(){var a=this.config,b=this.graphics,d=this.components.canvas,n=d.graphics,l=n.canvasBorderElement,n=n.canvasElement,d=d.config.canvasBorderThickness,k=d/2,g=a.canvasHeight-=d,s=a.canvasWidth-=2*d,p=a.canvasLeft+=d;a.canvasBottom-=d;a.canvasRight-=d;n?n.attr({x:p,y:a.canvasTop,height:g,width:s}):this.drawCanvas();l&&l.attr({x:p-k,y:a.canvasTop-k,height:g+
d,width:s+d,"stroke-width":d});b.imageContainer.attr({"clip-rect":a.canvasLeft+","+a.canvasTop+","+a.canvasWidth+","+a.canvasHeight}).transform("t"+a.canvasLeft+","+a.canvasTop);b.trackerElem.attr({x:a.canvasLeft,y:a.canvasTop,width:a.canvasWidth,height:a.canvasHeight});b.tracker&&b.tracker.attr({"clip-rect":a.canvasLeft+","+a.canvasTop+","+a.canvasWidth+","+a.canvasHeight})},updateManager:function(a){var b,d=this.components,n=d.dataset,l=n.length,k=this.config,g=k.viewPortConfig,s=k._ypvr,p=k._visw,
F=this.components.xAxis[0],G=function(){return F.getPixel.apply(F,arguments)},z=F.getAxisData("labels").style,m,q,r,K,B=this.updateButtonVisual,I=d.tb.graphics,R=I.zoomOutButton,I=I.resetButton,c=k.viewPortHistory;!g&&(g=k.viewPortConfig);m=g.oppp;b=r=g.nvl;q=g.vdl=g.dei-g.dsi;r=g.ppl=b?p/b:g.oppl;p=g.step=(K=g.ppp=p/q)<m?qa(m/K):1;z=g.lskip=qa(ka(r,Aa(z.lineHeight))/K/p);void 0!==a?(r=(g.clen-q-1)*a,g.offset=(r-(r=Ca(r)))*K,q=r+q):(r=g.dsi,q=g.dei,g.offset=0);K=g.norm=r%p;g.ddsi=r-=K;g.ddei=q=q+
2*p-K;g.pvr=s;g._ymin=k._ymin;g._yminValue=k._yminValue;g.x=(G(r)-G(F.getLimit().min)+g.offset)/g.scaleX;q-r>F.getCategoryLen()?g.scaleX=1:g.scaleX=F.getCategoryLen()/Math.abs(q-r-p-.9);void 0!==a&&d.scrollBar.node.attr({"scroll-position":a});a=F._getVisibleConfig();a=Math.ceil((a.maxValue-a.minValue+1)/b);F.setLabelConfig({step:b?a:z*p});F.setAxisData({labelStep:b?a:z*p});F.setAxisConfig({animateAxis:!1});F.draw();F.setAxisConfig({animateAxis:!0});for(b=0;b<l;b+=1)n[b].draw();B(R.node,g.vdl===g.clen-
1?"disable":"enable");B(I.node,0<c.length?"enable":"disable");ma.FC_DEV_ENVIRONMENT&&ma.jQuery&&(FusionCharts["debugger"].enable()?(this.debug=this.debug||(ma.jQuery("#fc-zoominfo").length||ma.jQuery("body").append('<pre id="fc-zoominfo">'),ma.jQuery("#fc-zoominfo").css({position:"absolute",left:"10px",top:"0","pointer-events":"none",opacity:.7,width:"250px",zIndex:"999",border:"1px solid #cccccc","box-shadow":"1px 1px 3px #cccccc",background:"#ffffff"})),this.debug.text(JSON.stringify(g,0,2))):(this.debug&&
ma.jQuery("#fc-zoominfo").remove(),delete this.debug))},_drawDataset:function(){ja.zoomline.updateManager.call(this)},getParsedLabel:function(a){var b=this.xlabels;return b.parsed[a]||(b.parsed[a]=Ba(b.data[a]||""))},_createToolBox:function(){var a,b,d,n,l,k,g,s=this,p=s.config;g=p.allowPinMode;n=s.components;var F=p.showToolBarButtonTooltext;a=n.chartMenuBar;a&&a.drawn||(ja.scrollcolumn2d._createToolBox.call(s),a=n.tb,b=a.graphics||(a.graphics={}),d=n.toolBoxAPI||a.getAPIInstances(a.ALIGNMENT_HORIZONTAL),
d=d.Symbol,n=n.chartMenuBar.componentGroups[0],l=b.zoomOutButton=(new d("zoomOutIcon",void 0,a.idCount++,a.pId)).attachEventHandlers({click:function(){s.zoomOut()},tooltext:F&&p.btnZoomOutTooltext||""}),k=b.resetButton=(new d("resetIcon",void 0,a.idCount++,a.pId)).attachEventHandlers({click:function(){s.resetZoom()},tooltext:F&&p.btnResetChartTooltext||""}),g&&(g=b.pinButton=(new d("pinModeIcon",void 0,a.idCount++,a.pId)).attachEventHandlers({click:function(){s.activatePin(!p.viewPortConfig.pinned)},
tooltext:F&&p.btnSwitchToPinModeTooltext||""}),n.addSymbol(g,!0)),n.addSymbol(k,!0),n.addSymbol(l,!0))},_scrollBar:ja.scrollcolumn2d,_manageScrollerPosition:ja.scrollcolumn2d,draw:function(){var a,b,d,n,l,k,g,s,p,F,G=this,z=G.config,m=G.graphics||(G.graphics={});k=G.components;a=G.jsonData;n=a.dataset;var q=a.categories&&a.categories[0].category;ja.msline.draw.call(G);g=z.canvasLeft;s=z.canvasTop;p=z.canvasHeight;F=z.canvasWidth;a=z.borderWidth;b=z.useRoundEdges;d=z.viewPortConfig;n&&q&&(a++,n=ra.crispBound(g-
a,s+p+a,F+a+a,z.scrollHeight,a),a--,k=(l=k.scrollBar)&&l.node,l.draw(n.x+(b&&-1||a%2),n.y-(b&&4||2),{isHorizontal:!0,width:n.width-(!b&&2||0),height:n.height,showButtons:z.scrollShowButtons,scrollRatio:d.vdl/(d.clen-!!d.clen),scrollPosition:[d.dsi/(d.clen-d.vdl-1),!1],r:b&&2||0,parentLayer:m.parentGroup}),!k&&function(){var a;ra.eve.on("raphael.scroll.start."+l.node.id,function(b){a=b;G.crossline&&G.crossline.disable(!0);pa.raiseEvent("scrollstart",{scrollPosition:b},G.chartInstance)});ra.eve.on("raphael.scroll.end."+
l.node.id,function(b){G.crossline&&G.crossline.disable(!1);pa.raiseEvent("scrollend",{prevScrollPosition:a,scrollPosition:b},G.chartInstance)})}())}},ja.msline,{showValues:0});ja("zoomlinedy",{isDual:!0,standaloneInit:!0,defaultDatasetType:"zoomline",applicableDSList:{zoomline:!0},creditLabel:xa,friendlyName:"Zoomable and Panable Multi-series Dual-axis Line Chart",_spaceManager:ja.msdybasecartesian._spaceManager,_setAxisLimits:ja.msdybasecartesian._setAxisLimits,_createAxes:ja.msdybasecartesian._createAxes,
_feedAxesRawData:ja.msdybasecartesian._feedAxesRawData},ja.zoomline);FusionCharts.register("component",["dataset","zoomline",{_setConfigure:function(){var a=this.config,b=this.chart.jsonData.chart,d=this.JSONData;a.drawAnchors=s(b.drawanchors,b.showanchors,1);a.anchorRadius=s(d.anchorradius,b.anchorradius,a.lineThickness+2);this.__base__._setConfigure.apply(this,arguments)},configure:function(){var a,b,d={};a=this.chart.jsonData.chart;a.animation=0;a.showvalues=s(a.showvalues,0);this.__base__.configure.call(this);
b=this.config;a=b.lineThickness+s(a.pinlinethicknessdelta,1);d["stroke-width"]=0<a&&a||0;d["stroke-dasharray"]=[3,2];d.stroke=S.hashify(b.lineColor);d["stroke-opacity"]=b.lineAlpha/100;d["stroke-linejoin"]=b["stroke-linejoin"]="round";d["stroke-linecap"]=b["stroke-linecap"]="round";b.pin=d;b.animation=!1;b.transposeanimduration=0},draw:function(){var a,b,d=!1,n=!1,l=this,k=l.JSONData,g=l.chart,N=g.components,p=l.config,F=l.index||l.positionIndex,G=g.config,z=g.jsonData.chart,m=l.components,q=m.data,
r=q.length,K,B=N.paper,I=N.xAxis[0],R=l.yAxis,c,D,f=g.graphics,ja=f.datalabelsGroup,h=S.parseUnsafeString,e=S.getValidValue,J,fa,oa,P,t,v,u,A,$a,ab,Va=G.style,mb={fontFamily:Va.fontFamily,fontSize:Va.fontSize,lineHeight:Va.lineHeight,fontWeight:Va.fontWeight,fontStyle:Va.fontStyle,color:Va.color},x=p.lineThickness,ia=l.graphics.container,L=l.graphics.trackerContainer,la=function(a){Na.call(this,g,a)},ma=function(a,b){return function(c){b&&l._hoverPlotAnchor(a,"DataPlotRollOver",z);Na.call(this,g,
c,"DataPlotRollOver")}},na=function(a,b){return function(c){b&&l._hoverPlotAnchor(a,"DataPlotRollOut",z);Na.call(this,g,c,"DataPlotRollOut")}},qa=G.viewPortConfig,da=p.showTooltip,M,w=f.datasetGroup,C,y=p.shadow,Y,X=l.graphics.dataLabelContainer,E={},Q,H,O=g.is3D,ra=p.use3dlineshift,T,Z,ca,ta=R.getAxisBase(),V=R.yBasePos=R.getAxisPosition(ta),ga=I.getAxisPosition(0),aa=I.getAxisPosition(1)-ga,U,ha=O?10:0,pa=O&&ra?10:0,$=[ka(0,G.canvasLeft-ha),ka(0,G.canvasTop-pa),ka(1,G.canvasWidth+2*ha),ka(1,G.canvasHeight+
pa)],ua=[ka(0,G.canvasLeft-ha),ka(0,G.canvasTop-pa),1,ka(1,G.canvasHeight+2*pa)],wa=I.axisData&&I.axisData.scroll||{},Aa=g.hasScroll||!1,Ba,xa=p.lineDashStyle,ya={color:p.lineColor,alpha:p.lineAlpha};[Ga(ya),xa].join(":");var Ea,Fa,Ca,Ia=l.graphics.lineElement,za=l.visible,Ka,Ja,Ha=l.pool||(l.pool={element:[]}),Ma={},La={},Ta={},Ua=p.anchorRadius,gb,bb=[],hb,Da,Wa,Xa,cb,db,nb=G.showTerminalValidData,eb=G.viewPortConfig,ob=G.showPeakData,ib=G.maxPeakDataLimit,jb=G.minPeakDataLimit,pb=s(G.useCrossline,
0),Pa=eb.step,fb=I.getPixel(eb.step)-ga<eb.amrd,kb=function(a,b){var d=a.graphics;H=a.config;t=H.setValue;P=H.setLink;Ka=H.x||b;Z=e(h(ea(H.setLevelTooltext,k.plottooltext,z.plottooltext)));T=H.showValue;E=H.anchorProps;Y=E.shadow;u=H.displayValue;Ja=H.dip||0;a||(a=q[b]={graphics:{}});Ca={color:H.color,alpha:H.alpha};ca=H.dashStyle;c=H.xPos||I.getAxisPosition(Ka)-ha;D=l.visible?R.getAxisPosition(t)+pa:V;C=H.hoverEffects;E.isAnchorHoverRadius=C.anchorRadius;gb=I.getLabel(b);J=pb?"":H.toolText+(Z?"":
H.toolTipValue);v={index:b,link:P,value:t,displayValue:u,categoryLabel:gb,toolText:J,id:p.userID,datasetIndex:F,datasetName:k.seriesname,visible:za};null===H.setValue||fb||(E.imageUrl?(Q=new W,Q.onload=l._onAnchorImageLoad(l,b,v,c,D),Q.onerror=l._onErrorSetter(c,D,b,l),Q.src=E.imageUrl):(fa=d.element,fa||(fa=Ha.element&&Ha.element.length?d.element=Ha.element.shift():d.element=B.polypath(ia.anchorGroup)),fa.attr({polypath:[E.symbol[1]||2,c,D,E.radius,E.startAngle,Ja],fill:Ga({color:E.bgColor,alpha:E.bgAlpha}),
stroke:Ga({color:E.borderColor,alpha:E.borderAlpha}),"stroke-width":E.borderThickness,visibility:E.radius?za:"hidden"}).shadow(Y,ia.anchorShadowGroup).data("anchorRadius",E.radius).data("anchorHoverRadius",C.anchorRadius).data("setRolloverAttr",ab).data("setRolloutAttr",$a),fa[H.setValue?"show":"hide"]()),C.enabled&&(ab={polypath:[C.anchorSides||2,c,D,C.anchorRadius,C.startAngle,C.dip],fill:Ga({color:C.anchorColor,alpha:C.anchorBgAlpha}),stroke:Ga({color:C.anchorBorderColor,alpha:C.anchorBorderAlpha}),
"stroke-width":C.anchorBorderThickness},$a={polypath:[E.sides,c,D,E.radius,E.startAngle,Ja],fill:Ga({color:E.bgColor,alpha:E.bgAlpha}),stroke:Ga({color:E.borderColor,alpha:E.borderAlpha}),"stroke-width":E.borderThickness},fa&&fa.data("anchorRadius",E.radius).data("anchorHoverRadius",C.anchorRadius).data("setRolloverAttr",ab).data("setRolloutAttr",$a)),Ua=ka(E.radius,C&&C.anchorRadius||0),M={cx:c,cy:D,r:Ua,cursor:P?"pointer":"",stroke:sa,"stroke-width":E.borderThickness,fill:sa,ishot:!0,visibility:za},
E.imageUrl||!P&&!da||(oa=d.hotElement,oa||(oa=Ha.hotElement&&Ha.hotElement.length?d.hotElement=Ha.hotElement.shift():d.hotElement=B.circle(L)),oa.show().attr(M),(oa||fa).data("eventArgs",v).data("groupId",void 0).click(la).tooltip(J),C.enabled&&(oa||fa).hover(ma(a,C.enabled),na(a,C.enabled))));a._xPos=c;a._yPos=D;[Ga(Ca||ya),ca||xa].join(":");Ta=l.getLinePath([a],Ta);Ea=Ga(Ca||ya);Fa=ca||xa;ea(H.setColor,H.setAlpha,H.setDashed);[Ea,Fa].join(":");T&&!E.imageUrl&&l.drawLabel(b);bb.push(a)},qb=function(a,
b){var c=a&&a.length,d=a.slice().sort(function(a,b){return a.config.setValue-b.config.setValue}),e=d&&d.pop().config.setValue,f=d.length&&d.shift().config.setValue||e,d=0;if(e>ib||f<jb)for(;d<c;){fa=a[d];e=fa.config.setValue;if(e>ib||e<jb)e=b+d,kb(fa,e);d+=1}},Ya=function(b,c){--b;c+=1;var d;for(K=b;K<c;K+=1)for(d in a=q[K]&&q[K].graphics||{},q[K]&&(q[K].config.isRemoving=!0),a)Ha[d]||(Ha[d]=[]),a[d]&&(Ha[d].push(a[d].hide()),a[d]=void 0)},Za=qa.ddsi||0,Qa=qa.ddei||r,Ra=p._oldStartIndex,Sa=p._oldEndIndex,
rb=p._oldStep,lb=m.removeDataArr,sb=lb&&lb.length;w.line=w.line||B.group("line",w);w.lineConnector=w.lineConnector||B.group("line-connector",w);ia||(ia=l.graphics.container={lineShadowGroup:B.group("connector-shadow",w.line),anchorShadowGroup:B.group("anchor-shadow",w.lineConnector),lineGroup:B.group("line",w.line),anchorGroup:B.group("anchors",w.lineConnector)},za||(ia.lineShadowGroup.hide(),ia.anchorShadowGroup.hide(),ia.lineGroup.hide(),ia.anchorGroup.hide()));L||(L=l.graphics.trackerContainer=
B.group("line-hot",L).toBack(),za||L.hide());q||(q=l.components.data=[]);g._addCSSDefinition(".fusioncharts-datalabels .fusioncharts-label",mb);X||(X=l.graphics.dataLabelContainer=l.graphics.dataLabelContainer||B.group("datalabel",ja),za||X.hide());U=aa*r;fb&&!p._oldHideAnchors?Ya(Ra,Sa):Pa!==rb?Ya(Ra,Sa):(Za>Ra&&Ya(Ra,Za>Sa?Sa:Za),Qa<Sa&&Ya(Qa<Ra?Ra:Qa,Sa),(Za<Ra||Qa>Sa)&&Ya(Ra,Sa));p._oldHideAnchors=fb;p._oldEndIndex=Qa;p._oldStep=Pa;l.setVisibility(za);for(K=p._oldStartIndex=Za;K<=Qa;K+=Pa){A=
q[K]||{};H=A.config||{};H.isRemoving=!1;t=H.setValue||null;Wa=K;if(nb)if(0===K&&null===t){hb=0;for(Da=b=K;Da<r;)if(null!==q[Da].config.setValue||d?d=!0:Da++,null===q[b].config.setValue&&!n&&b<=r?(b+=Pa,hb++):n=!0,d&&n){d=n=!1;break}0!==Da%Pa&&(H=q[Da].config,Wa=Da)}else if(K>=r&&null===t){for(Da=b=K;0<Da&&(void 0!==q[Da]||d?d=!0:Da--,void 0===q[b]&&!n&&0<=b?b-=Pa:n=!0,!d||!n););0!==Da%Pa&&(H=q[Da].config,Wa=Da)}if(A=q[Wa])kb(A,Wa),ob&&1<Pa&&(Xa=va(K+1,Qa),db=va(Xa+Pa,Qa),cb=db===Qa?q.slice(Xa):q.slice(Xa,
db),cb.length&&qb(cb,Xa))}La=l.getLinePath(bb,{});Ma=l.getLinePath(bb,Ma);p.lastPath=La;Ia||(Ia=Ha.lineElement&&Ha.lineElement.length?l.graphics.lineElement=Ha.lineElement.shift():l.graphics.lineElement=B.path(ia.lineGroup));Ia.attr({path:La.getPathArr(),"stroke-dasharray":xa,"stroke-width":x,stroke:Ga(ya),"stroke-linecap":"round","stroke-linejoin":2<=x?"round":"miter"}).shadow(y,ia.lineShadowGroup);Aa&&(Ba=wa.startPercent,$[2]=U+ua[0],1===Ba&&(ua[0]=$[2],$[0]=0));$[3]+=pa;l.drawn=!0;sb&&l.remove()},
setVisibility:function(a,b){var d=this.graphics&&this.graphics.container,n=this.graphics&&this.graphics.trackerContainer,l=this.graphics&&this.graphics.dataLabelContainer,k=a?"show":"hide";d.lineGroup[k]();d.anchorGroup[k]();d.anchorShadowGroup[k]();d.lineShadowGroup[k]();n[k]();l[k]();b&&this.transposeLimits(a)},transposeLimits:function(a){var b=this.chart,d=this.yAxis;b._chartAnimation();this.visible=a;this._conatinerHidden=!a;b._setAxisLimits();d.draw();b._drawDataset()},hide:function(){this.setVisibility(!1,
!0)},show:function(){this.setVisibility(!0,!0)}},"Line"]);ta=function(){};ta.prototype.configure=function(a,b){var d,n,l,k=this,g=a.components,s=g.numberFormatter,p=g.paper,F=a.config;d=a.graphics;n=this.left=F._visx;l=this.top=F.canvasTop;var G=this.height=F.canvasHeight,z=this._visout=F._visout,m=this.plots=a.components.dataset,q=d.datalabelsGroup,r,K,B=b.labelstyle,I=b.valuestyle,R=g.yAxis[0],c=R.getLimit(),D=g.yAxis[1],f=D&&D.getLimit();K=this.tracker;var g=this.labels,S=this.positionLabel;r=
a.get("linkedItems");var h=r.container,e=r.eventListeners||(r.eventListeners=[]);k.width=F._visw;r=this.group;r||(r=this.group=p.group("crossline-labels",q),this.container=h);r.attr({transform:["T",n,F._ymin]});K||(K=k.tracker=h,e.push(Ia(h,"touchstart mousemove",function(b){var c=k.onMouseMove,d=k.onMouseOut;a.isWithinCanvas(b,a).insideCanvas?c.call(k,b):d.call(k,b)},k)),e.push(Ia(h,"mousedown",function(){k.onMouseDown()},k)),e.push(Ia(h,"mouseup",function(){k.onMouseUp()},k)),e.push(Ia(h,"mouseout",
function(){k.onMouseOut()},k)));K=this.line;K||(K=this.line=p.path(q).toBack());K.attr(la({path:["M",n,l,"l",0,G]},b.line));g||(g=this.labels=b.valueEnabled&&p.set());b.labelEnabled&&(S||(S=this.positionLabel=p.text("").insertAfter(d.datalabelsGroup)),S.attr({x:z,y:l+G+(F.scrollHeight||0)+2.5,"vertical-align":"top",direction:F.textDirection,text:""}).css(B));this.hide();this.ppixelRatio=-R.getPVR();this.spixelRatio=D&&-D.getPVR();this.yminValue=F._yminValue;this.pyaxisminvalue=c.min;this.pyaxismaxvalue=
c.max;this.syaxisminvalue=f&&f.min;this.syaxismaxvalue=f&&f.max;this.positionLabels=F.xlabels||{data:[],parsed:[]};this.chart=a;this.getZoomInfo=function(){return F.viewPortConfig};this.getDataIndexFromPixel=function(b){return Math.round(a.components.xAxis[0].getValue(b))};this.getPositionLabel=function(b){return a.components.xAxis[0].getLabel(b).oriLabel};if(b.valueEnabled){d=0;for(n=m.length;d<n;d+=1)l=m[d],l=Ka(l.config.lineColor),g[d]||(g[d]=g.items[d]=p.text(r)),g[d].attr({x:0,y:z,text:"",fill:l,
direction:F.textDirection}).css(I);for(;d<g.items.length;d+=1)g[d].remove(),delete g[d],g.items.splice(d,1);this.numberFormatter=s}else if(g.items.length){for(d=0;d<g.items.length;d+=1)g[d].remove(),delete g[d];g.length=0}};ta.prototype.disable=function(a){void 0!==a&&(this.disabled=!!a)&&this.visible&&this.hide();return this.disabled};ta.prototype.onMouseOut=function(){this.hide();this.position=void 0};ta.prototype.onMouseDown=function(){!Fa&&this.hide();this._mouseIsDown=!0};ta.prototype.onMouseUp=
function(){!Fa&&this.hide();delete this._mouseIsDown};ta.prototype.onMouseMove=function(a){if(!(this.disabled||this._mouseIsDown&&!Fa)){var b,d=this.getZoomInfo(),n=this.line,l=this.left,d=d.step,k=this.chart,g=k.components.xAxis[0],s=g.getCategoryLen(),p=k.get("config"),k=p.canvasLeft,p=p.canvasRight;a=za(this.container,a).chartX-l;var l=g.getLimit().min,F=g.config.axisData.axisDimention.x-k,G;G=(G=this.getDataIndexFromPixel(ua(a)))+((b=G%d)>d/2?d-b:-b);a=g.getPixel(G)-F-k;a<=p-k&&(n.transform(["T",
ua(a),0]),this.hidden&&this.show(),(G>=s||G<l)&&this.hide(),G!==this.position||this.hidden)&&(this.position=G,this.lineX=a,this.updateLabels())}};ta.prototype.updateLabels=function(){var a=this,b=a.labels,d=a.plots,n=a.width,l=a.position,k=a.lineX,g=Ja(k),s=a.ppixelRatio,p=a.spixelRatio,F=a.yminValue,G=a._visout,z=a.numberFormatter,m=a.pyaxisminvalue,q=a.pyaxismaxvalue,r=a.syaxisminvalue,I=a.syaxismaxvalue,B=function(){function b(){this.y=0;this.lRef=void 0;this.__index=this.__shift=0}function d(a){for(var b=
0;b<a;)this.push(b++);return this}function c(a){var b,c,d,e,f=Number.POSITIVE_INFINITY;for(b=0;b<this.length;b++)c=this[b]-a,0>c?d=q.NEG:d=q.POS,c=n(c),c<=f&&(f=c,e={absValue:c,noScaleSide:d});return e}function g(a){this.holes=d.call([],a)}var f=-1*a.height,k=F*s,h=0,e,l={},m,n=Math.abs,p=Math.floor,q={};"function"!=typeof Object.create&&(Object.create=function(){function a(){}var b=Object.prototype.hasOwnProperty;return function(c){var d,e,f;if("object"!=typeof c)throw new TypeError("Object prototype may only be an Object or null");
a.prototype=c;f=new a;a.prototype=null;if(1<arguments.length)for(e in d=Object(arguments[1]),d)b.call(d,e)&&(f[e]=d[e]);return f}}());Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){var c,d,e;if(null==this)throw new TypeError('"this" is null or not defined');d=Object(this);e=d.length>>>0;if(0===e)return-1;c=+b||0;Infinity===Math.abs(c)&&(c=0);if(c>=e)return-1;for(c=Math.max(0<=c?c:e-Math.abs(c),0);c<e;){if(c in d&&d[c]===a)return c;c++}return-1});Array.prototype.forEach||(Array.prototype.forEach=
function(a,b){var c,d,e,f,g;if(null==this)throw new TypeError(" this is null or not defined");e=Object(this);f=e.length>>>0;if("function"!==typeof a)throw new TypeError(a+" is not a function");1<arguments.length&&(c=b);for(d=0;d<f;)d in e&&(g=e[d],a.call(c,g,d,e)),d++});b.prototype.constructor=b;b.prototype.applyShift=function(a){this.__shift=a;this.lRef.calcY=this.y+=a*h};b.prototype.applyDirectIndex=function(a){this.__index=a;this.lRef.calcY=this.y=f-a*h*-1};try{Object.defineProperty(q,"POS",{enumerable:!1,
configurable:!1,get:function(){return 1}}),Object.defineProperty(q,"NEG",{enumerable:!1,configurable:!1,get:function(){return-1}})}catch(r){q.POS=1,q.NEG=-1}g.prototype=Object.create(Array.prototype);g.prototype.constructor=g;g.prototype.repositionHoles=function(){var a,b=0,c;for(a=this.holes.length=0;a<this.length;a++)c=this[a],!c&&(this.holes[b++]=a)};g.prototype.attachShift=function(a,d,e){var f,g=this.length;if(a===G)e.calcY=G;else if(g=d>g-1?g-1:d,f=this[g],d=new b,d.y=a,d.lRef=e,f){a=c.call(this.holes,
g);e=g+a.absValue*a.noScaleSide;if(a.noScaleSide===q.POS)return d.applyDirectIndex(e),this.splice(e,1,d),this.holes.splice(this.holes.indexOf(e),1),e;if(a.noScaleSide===q.NEG){a=this.splice(e+1,this.length-1);this.pop();a.forEach(function(a){a&&a.applyShift(-1)});for([].push.apply(this,a);this[e];)e++;this.push(0);this.repositionHoles();a=c.call(this.holes,e);e+=a.absValue*a.noScaleSide;d.applyDirectIndex(e);this.splice(e,1,d);this.repositionHoles();return this.length-1}}else d.applyDirectIndex(g),
this.splice(g,1,d),this.holes.splice(this.holes.indexOf(g),1)};try{Object.defineProperty(l,"top",{enumerable:!1,configurable:!1,get:function(){return f}}),Object.defineProperty(l,"bottom",{enumerable:!1,configurable:!1,get:function(){return k}})}catch(u){l.top=f,l.bottom=k}l.init=function(a,b){var c;h=a+2;f+=h/2;m=p(n(f)/h);e=new g(m);for(c=0;c<m;c++)e.push(0)};l.occupy=function(a,b){var c=p(n(f-a)/h);e.attachShift(a,c,b)};return l}();b&&(b[0].attr({text:z.yAxis("0")}),B.init(b[0].getBBox().height,
b.length),b.forEach(function(a,b){var c=d[b],g=c.components.data[l]&&c.components.data[l].config.setValue,f=c.config.parentYAxis;B.occupy(void 0===g||!c.visible||(f?g>I||g<r:g>q||g<m)?G:f?(g-r)*p:(g-m)*s,a)}));b&&b.forEach(function(a,b){var c=d[b];(c=z[c.config.parentYAxis?"sYAxis":"yAxis"](c.components.data[l]&&c.components.data[l].config.setValue))?(a.attr({text:c}),c=a.getBBox(),c=c.width,c=.5*c+10,a.attr({x:ka(0,va(g,n)),y:a.calcY,"text-anchor":k<=c&&"start"||k+c>=n&&"end"||"middle","text-bound":["rgba(255,255,255,0.8)",
"rgba(0,0,0,0.2)",1,2.5]})):a.attr({x:-n})});a.positionLabel&&a.positionLabel.attr({x:k+a.left,text:a.getPositionLabel(l),"text-bound":["rgba(255,255,255,1)","rgba(0,0,0,1)",1,2.5]})};ta.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"))};ta.prototype.hide=function(){this.hidden=!0;this.group.attr("visibility","hidden");this.line.attr("visibility",
"hidden");this.positionLabel&&this.positionLabel.attr("visibility","hidden")};ta.prototype.dispose=function(){for(var a in this)this.hasOwnProperty(a)&&delete this[a]};ra.addSymbol({pinModeIcon:function(a,b,d){var n=.5*d,l=a-d,k=a+d,g=a-n,s=a+n,p=a+.5,F=p+1,G=p+1.5,z=b-d,m=b+n,q=b-n,n=b+(d-n);return["M",l,z,"L",g,q,g,n,l,m,a-.5,m,a,b+d+.5,p,m,k,m,s,n,s,q,k,z,G,z,G,q,G,n,F,n,F,q,G,q,G,z,"Z"]},zoomOutIcon:function(a,b,d){a-=.2*d;b-=.2*d;var n=.8*d,l=ra.rad(43),k=ra.rad(48),g=a+n*wa(l),l=b+n*ya(l),s=
a+n*wa(k),k=b+n*ya(k),p=ra.rad(45),F=g+d*wa(p),G=l+d*ya(p),z=s+d*wa(p);d=k+d*ya(p);return["M",g,l,"A",n,n,0,1,0,s,k,"Z","M",g+1,l+1,"L",F,G,z,d,s+1,k+1,"Z","M",a-2,b,"L",a+2,b,"Z"]},resetIcon:function(a,b,d){var n=a-d,l=(fa.PI/2+fa.PI)/2;a+=d*wa(l);var l=b+d*ya(l),k=2*d/3;return["M",n,b,"A",d,d,0,1,1,a,l,"L",a+k,l-1,a+2,l+k-.5,a,l]}})}]);