=b?h=g/2:(h=01.5*Math.PI?\nd-=2*Math.PI:d<-Math.PI/2&&(d+=2*Math.PI);f.slicedTranslation={translateX:Math.round(Math.cos(d)*e),translateY:Math.round(Math.sin(d)*e)};var v=Math.cos(d)*a[2]/2;var w=Math.sin(d)*a[2]/2;r=Math.cos(d)*m;m*=Math.sin(d);f.tooltipPos=[a[0]+.7*v,a[1]+.7*w];f.half=d<-Math.PI/2||d>Math.PI/2?1:0;f.angle=d;v=Math.min(g,f.labelDistance/5);f.labelPosition={natural:{x:a[0]+r+Math.cos(d)*f.labelDistance,y:a[1]+m+Math.sin(d)*f.labelDistance},\"final\":{},alignment:f.half?\"right\":\"left\",connectorPosition:{breakAt:{x:a[0]+\nr+Math.cos(d)*v,y:a[1]+m+Math.sin(d)*v},touchingSliceAt:{x:a[0]+r,y:a[1]+m}}}}x(this,\"afterTranslate\")}});\"\"});e(b,\"masters/modules/variable-pie.src.js\",[],function(){})});\n//# sourceMappingURL=variable-pie.js.map","/*\n Highcharts JS v8.2.2 (2020-10-22)\n\n 3D features for Highcharts JS\n\n License: www.highcharts.com/license\n*/\n(function(b){\"object\"===typeof module&&module.exports?(b[\"default\"]=b,module.exports=b):\"function\"===typeof define&&define.amd?define(\"highcharts/highcharts-3d\",[\"highcharts\"],function(G){b(G);b.Highcharts=G;return b}):b(\"undefined\"!==typeof Highcharts?Highcharts:void 0)})(function(b){function G(b,u,w,J){b.hasOwnProperty(u)||(b[u]=J.apply(null,w))}b=b?b._modules:{};G(b,\"Extensions/Math3D.js\",[b[\"Core/Globals.js\"],b[\"Core/Utilities.js\"]],function(b,u){var w=u.pick,y=b.deg2rad,c=b.perspective3D=function(c,\nn,f){n=0g&&l-g>Math.PI/2+.0001?(z=z.concat(q(a,\nd,e,K,g,g+Math.PI/2,c,t)),z=z.concat(q(a,d,e,K,g+Math.PI/2,l,c,t))):l Math.PI/2+.0001?(z=z.concat(q(a,d,e,K,g,g-Math.PI/2,c,t)),z=z.concat(q(a,d,e,K,g-Math.PI/2,l,c,t))):[[\"C\",a+e*Math.cos(g)-e*F*v*Math.sin(g)+c,d+K*Math.sin(g)+K*F*v*Math.cos(g)+t,a+e*Math.cos(l)+e*F*v*Math.sin(l)+c,d+K*Math.sin(l)-K*F*v*Math.cos(l)+t,a+e*Math.cos(l)+c,d+K*Math.sin(l)+t]]}var n=b.animObject,f=u.parse,r=J.perspective,m=J.shapeArea,A=h.defined,y=h.extend,k=h.merge,a=h.objectEach,g=h.pick,C=Math.cos,d=Math.PI,\np=Math.sin,I=w.charts,L=w.deg2rad;var F=4*(Math.sqrt(2)-1)/3/(d/2);x.prototype.toLinePath=function(a,d){var e=[];a.forEach(function(a){e.push([\"L\",a.x,a.y])});a.length&&(e[0][0]=\"M\",d&&e.push([\"Z\"]));return e};x.prototype.toLineSegments=function(a){var d=[],e=!0;a.forEach(function(a){d.push(e?[\"M\",a.x,a.y]:[\"L\",a.x,a.y]);e=!e});return d};x.prototype.face3d=function(a){var d=this,e=this.createElement(\"path\");e.vertexes=[];e.insidePlotArea=!1;e.enabled=!0;e.attr=function(a){if(\"object\"===typeof a&&\n(A(a.enabled)||A(a.vertexes)||A(a.insidePlotArea))){this.enabled=g(a.enabled,this.enabled);this.vertexes=g(a.vertexes,this.vertexes);this.insidePlotArea=g(a.insidePlotArea,this.insidePlotArea);delete a.enabled;delete a.vertexes;delete a.insidePlotArea;var e=r(this.vertexes,I[d.chartIndex],this.insidePlotArea),l=d.toLinePath(e,!0);e=m(e);e=this.enabled&&0 a.faces.length;)e.faces.pop().destroy();for(;e.faces.length a.faces.length;)e.faces.pop().destroy();for(;e.faces.length a?{x:E[a].x,y:E[a].y+10,z:E[a].z}:E[0].x===E[7].x&&4<=a?{x:E[a].x+10,y:E[a].y,z:E[a].z}:0===z&&2>a||5m(l)?c=[l,0]:0>m(B)?c=[B,1]:g&&(f.push(g),c=0>m(a)?[l,0]:0>m(v)?[B,1]:[l,0]);return c};var C=D([3,2,1,0],[7,6,5,4],\"front\");a=C[0];var k=C[1];C=D([1,6,7,0],[4,5,2,3],\"top\");\nt=C[0];var F=C[1];C=D([1,2,5,6],[0,7,4,3],\"side\");D=C[0];C=C[1];1===C?b+=1E6*(v.plotWidth-g):C||(b+=1E6*g);b+=10*(!F||0<=B&&180>=B||360>B&&357.5Math.PI&&(a=2*Math.PI-a);return a}var e=a.x,c=a.y,b=a.start,l=a.end-.00001,f=a.r,t=a.innerR||0,z=a.depth||0,v=a.alpha,B=a.beta,m=Math.cos(b),\nE=Math.sin(b);a=Math.cos(l);var k=Math.sin(l),D=f*Math.cos(B);f*=Math.cos(v);var F=t*Math.cos(B),r=t*Math.cos(v);t=z*Math.sin(B);var h=z*Math.sin(v);z=[[\"M\",e+D*m,c+f*E]];z=z.concat(q(e,c,D,f,b,l,0,0));z.push([\"L\",e+F*a,c+r*k]);z=z.concat(q(e,c,F,r,l,b,0,0));z.push([\"Z\"]);var n=0-n?b:l>-n?-n:b;var H=l I&&bd-B&&b : {point.value}q(x([a,{x:a.x+h.x,y:a.y+h.y,z:a.z+h.z},{x:a.x+l.x,y:a.y+l.y,z:a.z+l.z}],g.chart))&&(h={x:-h.x,y:-h.y,z:-h.z}),a=x([{x:a.x,y:a.y,z:a.z},{x:a.x+h.x,y:a.y+h.y,z:a.z+h.z},{x:a.x+l.x,y:a.y+l.y,\nz:a.z+l.z}],g.chart),d.matrix=[a[1].x-a[0].x,a[1].y-a[0].y,a[2].x-a[0].x,a[2].y-a[0].y,d.x,d.y],d.matrix[4]-=d.x*d.matrix[0]+d.y*d.matrix[2],d.matrix[5]-=d.x*d.matrix[1]+d.y*d.matrix[3]);return d};c.prototype.swapZ=function(a,g){var c=this.axis;return c.isZAxis?(g=g?0:c.chart.plotLeft,{x:g+a.z,y:a.y,z:a.x-g}):a};return c}();return function(){function c(){}c.compose=function(a){f(!0,a.defaultOptions,c.defaultOptions);a.keepProps.push(\"axis3D\");n(a,\"init\",c.onInit);n(a,\"afterSetOptions\",c.onAfterSetOptions);\nn(a,\"drawCrosshair\",c.onDrawCrosshair);n(a,\"destroy\",c.onDestroy);a=a.prototype;m(a,\"getLinePath\",c.wrapGetLinePath);m(a,\"getPlotBandPath\",c.wrapGetPlotBandPath);m(a,\"getPlotLinePath\",c.wrapGetPlotLinePath);m(a,\"getSlotWidth\",c.wrapGetSlotWidth);m(a,\"getTitlePosition\",c.wrapGetTitlePosition);J.compose(w)};c.onAfterSetOptions=function(){var a=this.chart,c=this.options;a.is3d&&a.is3d()&&\"colorAxis\"!==this.coll&&(c.tickWidth=r(c.tickWidth,0),c.gridLineWidth=r(c.gridLineWidth,1))};c.onDestroy=function(){[\"backFrame\",\n\"bottomFrame\",\"sideFrame\"].forEach(function(a){this[a]&&(this[a]=this[a].destroy())},this)};c.onDrawCrosshair=function(a){this.chart.is3d()&&\"colorAxis\"!==this.coll&&a.point&&(a.point.crosshairPos=this.isXAxis?a.point.axisXpos:this.len-a.point.axisYpos)};c.onInit=function(){this.axis3D||(this.axis3D=new y(this))};c.wrapGetLinePath=function(a){return this.chart.is3d()&&\"colorAxis\"!==this.coll?[]:a.apply(this,[].slice.call(arguments,1))};c.wrapGetPlotBandPath=function(a){if(!this.chart.is3d()||\"colorAxis\"===\nthis.coll)return a.apply(this,[].slice.call(arguments,1));var c=arguments,b=c[2],d=[];c=this.getPlotLinePath({value:c[1]});b=this.getPlotLinePath({value:b});if(c&&b)for(var f=0;f a?-1:0},m=p([{x:e,y:k,z:l},{x:g,y:k,z:l},{x:g,y:k,z:0},{x:e,y:k,z:0}]),n=p([{x:e,y:h,z:0},{x:g,y:h,z:0},{x:g,y:h,z:l},{x:e,y:h,z:l}]),q=p([{x:e,y:h,z:0},{x:e,y:h,z:l},{x:e,y:k,z:l},{x:e,y:k,z:0}]),t=p([{x:g,y:h,z:l},{x:g,y:h,\nz:0},{x:g,y:k,z:0},{x:g,y:k,z:l}]),C=p([{x:e,y:k,z:0},{x:g,y:k,z:0},{x:g,y:h,z:0},{x:e,y:h,z:0}]);p=p([{x:e,y:h,z:l},{x:g,y:h,z:l},{x:g,y:k,z:l},{x:e,y:k,z:l}]);var u=!1,F=!1,w=!1,y=!1;[].concat(d.xAxis,d.yAxis,d.zAxis).forEach(function(a){a&&(a.horiz?a.opposite?F=!0:u=!0:a.opposite?y=!0:w=!0)});var x=function(d,b,c){for(var e=[\"size\",\"color\",\"visible\"],f={},g=0;g c*g[e][b]?e=h:c*g[h][b]===c*g[e][b]&&g[h].z l&&(q=Math.min(q,1-Math.abs((b+h)/(l+h))%1));c m&&(q=0>m?Math.min(q,(e+k)/(-m+\ne+k)):Math.min(q,1-(e+k)/(m+k)%1));g
this.pos&&(y(this.start)||y(this.end))){var a=this.start||[1,0,0,1,0,0],d=this.end||[1,0,0,1,0,0];var b=[];for(var c=0;6>c;c++)b.push(this.pos*d[c]+(1-this.pos)*a[c])}else b=this.end;this.elem.attr(this.prop,b,null,!0)};k(!0,m,b.defaultOptions);A(a,\"init\",e);A(a,\"addSeries\",d);A(a,\"afterDrawChartBox\",h);A(a,\"afterGetContainer\",n);A(a,\"afterInit\",q);A(a,\"afterSetChartSize\",C);A(a,\"beforeRedraw\",u);A(a,\"beforeRender\",\nw);g(c.Chart.prototype,\"isInsidePlot\",x);g(a,\"renderSeries\",J);g(a,\"setClassName\",l)}})(C||(C={}));C.compose(w,J);n.ZChartComposition.compose(w);u.compose(b);\"\";return C});G(b,\"Core/Series/Series3D.js\",[b[\"Core/Globals.js\"],b[\"Extensions/Math3D.js\"],b[\"Core/Utilities.js\"]],function(b,u,w){var y=u.perspective;u=w.addEvent;var c=w.pick;u(b.Series,\"afterTranslate\",function(){this.chart.is3d()&&this.translate3dPoints()});b.Series.prototype.translate3dPoints=function(){var b=this.chart,h=c(this.zAxis,\nb.options.zAxis[0]),q=[],n;for(n=0;n =h.min&&r<=h.max:!1}else f.plotZ=0;f.axisXpos=f.plotX;f.axisYpos=f.plotY;f.axisZpos=f.plotZ;q.push({x:f.plotX,y:f.plotY,z:f.plotZ})}b=y(q,b,!0);for(n=0;n n&&(g[a[1]]+=g[a[0]]+p,g[a[0]]=-p,n=0);n+g[a[1]]>b[a[0]+\"Axis\"].len&&0!==g[a[1]]&&(g[a[1]]=b[a[0]+\"Axis\"].len-g[a[0]]);if(0!==g[a[1]]&&(g[a[0]]>=b[a[0]+\"Axis\"].len||g[a[0]]+g[a[1]]<=p)){for(var d in g)g[d]=0;c.outside3dPlot=!0}});\"rect\"===c.shapeType&&(c.shapeType=\"cuboid\");g.z=d;g.depth=h;g.insidePlotArea=!0;m={x:g.x+g.width/2,y:g.y,z:d+h/2};a.inverted&&(m.x=g.height,m.y=c.clientX);c.plot3d=f([m],a,!0,!1)[0];k=f([{x:k[0],\ny:k[1],z:d+h/2}],a,!0,!1)[0];c.tooltipPos=[k.x,k.y]}});b.z=d};c(A,\"animate\",function(b){if(this.chart.is3d()){var a=arguments[1],c=this.yAxis,f=this,d=this.yAxis.reversed;y&&(a?f.data.forEach(function(a){null!==a.y&&(a.height=a.shapeArgs.height,a.shapey=a.shapeArgs.y,a.shapeArgs.height=1,d||(a.shapeArgs.y=a.stackY?a.plotY+c.translate(a.stackY):a.plotY+(a.negative?-a.height:a.height)))}):(f.data.forEach(function(a){null!==a.y&&(a.shapeArgs.height=a.height,a.shapeArgs.y=a.shapey,a.graphic&&a.graphic.animate(a.shapeArgs,\nf.options.animation))}),this.drawDataLabels()))}else b.apply(this,[].slice.call(arguments,1))});c(A,\"plotGroup\",function(b,a,c,f,d,h){\"dataLabelsGroup\"!==a&&this.chart.is3d()&&(this[a]&&delete this[a],h&&(this.chart.columnGroup||(this.chart.columnGroup=this.chart.renderer.g(\"columnGroup\").add(h)),this[a]=this.chart.columnGroup,this.chart.columnGroup.attr(this.getPlotBox()),this[a].survive=!0,\"group\"===a||\"markerGroup\"===a))&&(arguments[3]=\"visible\");return b.apply(this,Array.prototype.slice.call(arguments,\n1))});c(A,\"setVisible\",function(b,a){var c=this,f;c.chart.is3d()&&c.data.forEach(function(b){f=(b.visible=b.options.visible=a=\"undefined\"===typeof a?!r(c.visible,b.visible):a)?\"visible\":\"hidden\";c.options.data[c.data.indexOf(b)]=b.options;b.graphic&&b.graphic.attr({visibility:f})});b.apply(this,Array.prototype.slice.call(arguments,1))});A.handle3dGrouping=!0;w(m,\"afterInit\",function(){if(this.chart.is3d()&&this.handle3dGrouping){var b=this.options,a=b.grouping,c=b.stacking,f=r(this.yAxis.options.reversedStacks,\n!0),d=0;if(\"undefined\"===typeof a||a){a=x(this.chart,c);d=b.stack||0;for(c=0;c=n.alpha&&(k.y+=a.shapeArgs.width));k=f([k],g,!0,!1)[0];d.x=k.x-q;d.y=a.outside3dPlot?-9E9:k.y}b.apply(this,\n[].slice.call(arguments,1))});c(J.prototype,\"getStackBox\",function(c,a,g,h,d,m,n,q){var k=c.apply(this,[].slice.call(arguments,1));if(a.is3d()&&g.base){var p=+g.base.split(\",\")[0],r=a.series[p];p=a.options.chart.options3d;r&&r instanceof b.seriesTypes.column&&(r={x:k.x+(a.inverted?n:m/2),y:k.y,z:r.options.depth/2},a.inverted&&(k.width=0,90<=p.alpha&&270>=p.alpha&&(r.y+=m)),r=f([r],a,!0,!1)[0],k.x=r.x-m/2,k.y=r.y)}return k})});G(b,\"Series/Pie3DSeries.js\",[b[\"Core/Series/Series.js\"],b[\"Core/Globals.js\"],\nb[\"Core/Utilities.js\"]],function(b,u,w){var y=u.deg2rad,c=u.svg,x=w.pick;u=w.wrap;b=b.seriesTypes;u(b.pie.prototype,\"translate\",function(b){b.apply(this,[].slice.call(arguments,1));if(this.chart.is3d()){var c=this,h=c.options,f=h.depth||0,r=c.chart.options.chart.options3d,m=r.alpha,u=r.beta,w=h.stacking?(h.stack||0)*f:c._i*f;w+=f/2;!1!==h.grouping&&(w=0);c.data.forEach(function(b){var a=b.shapeArgs;b.shapeType=\"arc3d\";a.z=w;a.depth=.75*f;a.alpha=m;a.beta=u;a.center=c.center;a=(a.end+a.start)/2;b.slicedTranslation=\n{translateX:Math.round(Math.cos(a)*h.slicedOffset*Math.cos(m*y)),translateY:Math.round(Math.sin(a)*h.slicedOffset*Math.cos(m*y))}})}});u(b.pie.prototype.pointClass.prototype,\"haloPath\",function(b){var c=arguments;return this.series.chart.is3d()?[]:b.call(this,c[1])});u(b.pie.prototype,\"pointAttribs\",function(b,c,n){b=b.call(this,c,n);n=this.options;this.chart.is3d()&&!this.chart.styledMode&&(b.stroke=n.edgeColor||c.color||this.color,b[\"stroke-width\"]=x(n.edgeWidth,1));return b});u(b.pie.prototype,\n\"drawDataLabels\",function(b){if(this.chart.is3d()){var c=this.chart.options.chart.options3d;this.data.forEach(function(b){var f=b.shapeArgs,h=f.r,m=(f.start+f.end)/2;b=b.labelPosition;var n=b.connectorPosition,q=-h*(1-Math.cos((f.alpha||c.alpha)*y))*Math.sin(m),k=h*(Math.cos((f.beta||c.beta)*y)-1)*Math.cos(m);[b.natural,n.breakAt,n.touchingSliceAt].forEach(function(a){a.x+=k;a.y+=q})})}b.apply(this,[].slice.call(arguments,1))});u(b.pie.prototype,\"addPoint\",function(b){b.apply(this,[].slice.call(arguments,\n1));this.chart.is3d()&&this.update(this.userOptions,!0)});u(b.pie.prototype,\"animate\",function(b){if(this.chart.is3d()){var h=arguments[1],n=this.options.animation,f=this.center,r=this.group,m=this.markerGroup;c&&(!0===n&&(n={}),h?(r.oldtranslateX=x(r.oldtranslateX,r.translateX),r.oldtranslateY=x(r.oldtranslateY,r.translateY),h={translateX:f[0],translateY:f[1],scaleX:.001,scaleY:.001},r.attr(h),m&&(m.attrSetters=r.attrSetters,m.attr(h))):(h={translateX:r.oldtranslateX,translateY:r.oldtranslateY,scaleX:1,\nscaleY:1},r.animate(h,n),m&&m.animate(h,n)))}else b.apply(this,[].slice.call(arguments,1))})});G(b,\"Series/Scatter3DSeries.js\",[b[\"Core/Series/Series.js\"],b[\"Extensions/Math3D.js\"],b[\"Core/Series/Point.js\"]],function(b,u,w){var y=b.seriesTypes,c=u.pointCameraDistance;b.seriesType(\"scatter3d\",\"scatter\",{tooltip:{pointFormat:\"x: {point.x}
y: {point.y}
z: {point.z}
\"}},{pointAttribs:function(b){var h=y.scatter.prototype.pointAttribs.apply(this,arguments);this.chart.is3d()&&\nb&&(h.zIndex=c(b,this.chart));return h},axisTypes:[\"xAxis\",\"yAxis\",\"zAxis\"],pointArrayMap:[\"x\",\"y\",\"z\"],parallelArrays:[\"x\",\"y\",\"z\"],directTouch:!0},{applyOptions:function(){w.prototype.applyOptions.apply(this,arguments);\"undefined\"===typeof this.z&&(this.z=0);return this}});\"\"});G(b,\"masters/highcharts-3d.src.js\",[],function(){})});\n//# sourceMappingURL=highcharts-3d.js.map","/*\n Highcharts JS v8.2.2 (2020-10-22)\n\n Highcharts funnel module\n\n (c) 2010-2019 Torstein Honsi\n\n License: www.highcharts.com/license\n*/\n(function(b){\"object\"===typeof module&&module.exports?(b[\"default\"]=b,module.exports=b):\"function\"===typeof define&&define.amd?define(\"highcharts/modules/funnel\",[\"highcharts\"],function(d){b(d);b.Highcharts=d;return b}):b(\"undefined\"!==typeof Highcharts?Highcharts:void 0)})(function(b){function d(b,e,d,l){b.hasOwnProperty(e)||(b[e]=l.apply(null,d))}var e=b?b._modules:{};d(e,\"Series/FunnelSeries.js\",[e[\"Core/Series/Series.js\"],e[\"Core/Chart/Chart.js\"],e[\"Core/Globals.js\"],e[\"Core/Utilities.js\"]],function(e,\nd,q,l){var E=e.seriesTypes,F=q.noop;q=l.addEvent;var I=l.fireEvent,J=l.isArray,G=l.pick;e.seriesType(\"funnel\",\"pie\",{animation:!1,center:[\"50%\",\"50%\"],width:\"90%\",neckWidth:\"30%\",height:\"100%\",neckHeight:\"25%\",reversed:!1,size:!0,dataLabels:{connectorWidth:1,verticalAlign:\"middle\"},states:{select:{color:\"#cccccc\",borderColor:\"#000000\"}}},{animate:F,translate:function(){function a(a,c){return/%$/.test(a)?c*parseInt(a,10)/100:parseInt(a,10)}var w=0,c=this,h=c.chart,g=c.options,H=g.reversed,f=g.ignoreHiddenPoint,\nb=h.plotWidth;h=h.plotHeight;var e=0,d=g.center,k=a(d[0],b),m=a(d[1],h),l=a(g.width,b),t,u=a(g.height,h),y=a(g.neckWidth,b),q=a(g.neckHeight,h),z=m-u/2+u-q;b=c.data;var B,C,E=\"left\"===g.dataLabels.position?1:0,A,n,D,v,p,x,r;c.getWidthAt=function(a){var c=m-u/2;return a>z||u===q?y:y+(l-y)*(1-(a-c)/(u-q))};c.getX=function(a,f,b){return k+(f?-1:1)*(c.getWidthAt(H?2*m-a:a)/2+b.labelDistance)};c.center=[k,m,u];c.centerX=k;b.forEach(function(a){f&&!1===a.visible||(w+=a.y)});b.forEach(function(a){r=null;\nC=w?a.y/w:0;n=m-u/2+e*u;p=n+C*u;t=c.getWidthAt(n);A=k-t/2;D=A+t;t=c.getWidthAt(p);v=k-t/2;x=v+t;n>z?(A=v=k-y/2,D=x=k+y/2):p>z&&(r=p,t=c.getWidthAt(z),v=k-t/2,x=v+t,p=z);H&&(n=2*m-n,p=2*m-p,null!==r&&(r=2*m-r));B=[[\"M\",A,n],[\"L\",D,n],[\"L\",x,p]];null!==r&&B.push([\"L\",x,r],[\"L\",v,r]);B.push([\"L\",v,p],[\"Z\"]);a.shapeType=\"path\";a.shapeArgs={d:B};a.percentage=100*C;a.plotX=k;a.plotY=(n+(r||p))/2;a.tooltipPos=[k,a.plotY];a.dlBox={x:v,y:n,topWidth:D-A,bottomWidth:x-v,height:Math.abs(G(r,p)-n),width:NaN};\na.slice=F;a.half=E;f&&!1===a.visible||(e+=C)});I(c,\"afterTranslate\")},sortByAngle:function(a){a.sort(function(a,c){return a.plotY-c.plotY})},drawDataLabels:function(){var a=this.data,b=this.options.dataLabels.distance,c,h=a.length;for(this.center[2]-=2*b;h--;){var g=a[h];var e=(c=g.half)?1:-1;var f=g.plotY;g.labelDistance=G(g.options.dataLabels&&g.options.dataLabels.distance,b);this.maxLabelDistance=Math.max(g.labelDistance,this.maxLabelDistance||0);var d=this.getX(f,c,g);g.labelPosition={natural:{x:0,\ny:f},\"final\":{},alignment:c?\"right\":\"left\",connectorPosition:{breakAt:{x:d+(g.labelDistance-5)*e,y:f},touchingSliceAt:{x:d+g.labelDistance*e,y:f}}}}E[this.options.dataLabels.inside?\"column\":\"pie\"].prototype.drawDataLabels.call(this)},alignDataLabel:function(a,e,c,h,g){var d=a.series;h=d.options.reversed;var f=a.dlBox||a.shapeArgs,w=c.align,l=c.verticalAlign,q=((d.options||{}).dataLabels||{}).inside,k=d.center[1];d=d.getWidthAt((h?2*k-a.plotY:a.plotY)-f.height/2+e.height);d=\"middle\"===l?(f.topWidth-\nf.bottomWidth)/4:(d-f.bottomWidth)/2;k=f.y;var m=f.x;\"middle\"===l?k=f.y-f.height/2+e.height/2:\"top\"===l&&(k=f.y-f.height+e.height+c.padding);if(\"top\"===l&&!h||\"bottom\"===l&&h||\"middle\"===l)\"right\"===w?m=f.x-c.padding+d:\"left\"===w&&(m=f.x+c.padding-d);h={x:m,y:h?k-f.height:k,width:f.bottomWidth,height:f.height};c.verticalAlign=\"bottom\";q&&!a.visible||b.Series.prototype.alignDataLabel.call(this,a,e,c,h,g);q&&(!a.visible&&a.dataLabel&&(a.dataLabel.placed=!1),a.contrastColor&&e.css({color:a.contrastColor}))}});\nq(d,\"afterHideAllOverlappingLabels\",function(){this.series.forEach(function(a){var b=a.options&&a.options.dataLabels;J(b)&&(b=b[0]);a.is(\"pie\")&&a.placeDataLabels&&b&&!b.inside&&a.placeDataLabels()})});e.seriesType(\"pyramid\",\"funnel\",{neckWidth:\"0%\",neckHeight:\"0%\",reversed:!0});\"\"});d(e,\"masters/modules/funnel.src.js\",[],function(){})});\n//# sourceMappingURL=funnel.js.map","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{ref:\"chart\"})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import HighChart from \"highcharts\"\n\nexport default {\n\tcomputed: {\n\t\tformattedOptions() {\n\t\t\tlet chartTypeOptions\n\t\t\tswitch (this.chartType) {\n\t\t\t\tcase \"column\":\n\t\t\t\t\tchartTypeOptions = this.formatForColumn()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"comparecolumn\":\n\t\t\t\t\tchartTypeOptions = this.formatForCompare()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"bar\":\n\t\t\t\t\tchartTypeOptions = this.formatForBar()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"line\":\n\t\t\t\t\tchartTypeOptions = this.formatForLine()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"areaspline\":\n\t\t\t\t\tchartTypeOptions = this.formatForAreaSplin()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"area\":\n\t\t\t\t\tchartTypeOptions = this.formatForArea()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"pie\":\n\t\t\t\t\tchartTypeOptions = this.formatForPie()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"variablepie\":\n\t\t\t\t\tchartTypeOptions = this.formatForVariablePie()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"tree\":\n\t\t\t\t\tchartTypeOptions = this.formatForTree()\n\t\t\t\t\tbreak\n\t\t\t\tcase \"pyramid\":\n\t\t\t\t\tchartTypeOptions = this.formatForPyramid()\n\t\t\t\t\tbreak\n\t\t\t}\n\n\t\t\treturn HighChart.merge(\n\t\t\t\ttrue,\n\t\t\t\tthis.defaultOptions,\n\t\t\t\tchartTypeOptions,\n\t\t\t\tthis.plotOptions,\n\t\t\t\tthis.options.chartConfig || {}\n\t\t\t)\n\t\t}\n\t},\n\n\tmethods: {\n\t\tformatForCompare() {\n\t\t\tconst { series, ...data } = this.formatForColumn()\n\t\t\tseries[1].id = \"main\"\n\t\t\tseries[0].linkedTo = \"main\"\n\t\t\tseries[0].pointPlacement = -0.2\n\n\t\t\tseries[1].dataSorting = {\n\t\t\t\tenabled: true,\n\t\t\t\tmatchByName: true\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tchart: {\n\t\t\t\t\ttype: \"column\"\n\t\t\t\t},\n\t\t\t\tseries,\n\t\t\t\t...data\n\t\t\t}\n\t\t},\n\t\tgetColor(index) {\n\t\t\tlet colors = this.options.colors || []\n\t\t\tlet color = colors[index] || (index && colors[index % colors.length]) || colors[0]\n\t\t\treturn (color && { color }) || {}\n\t\t},\n\n\t\tgetSerieType(index) {\n\t\t\tlet series = this.options.serie_types || [\"column\"]\n\t\t\treturn { type: series[index] || (index && series[series.length % index]) }\n\t\t},\n\n\t\tdataLayoutCreator() {\n\t\t\tlet categories = {}\n\t\t\tlet series = []\n\n\t\t\tlet xLabels = typeof this.options.xLabel === \"string\" ? [this.options.xLabel] : this.options.xLabel\n\n\t\t\tthis.chartData.map((dataRow, index) => {\n\t\t\t\txLabels.forEach((label) => {\n\t\t\t\t\tif (!categories[label]) {\n\t\t\t\t\t\tcategories[label] = []\n\t\t\t\t\t}\n\n\t\t\t\t\tcategories[label].push(dataRow[label])\n\t\t\t\t})\n\t\t\t\tObject.entries(this.options.xPoints || {}).map(([seriesKey, seriesVal], serieIndex) => {\n\t\t\t\t\tif (index) {\n\t\t\t\t\t\tseries.find((s) => s.key === seriesKey).data.push(dataRow[seriesKey] || 0)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tseries.push({\n\t\t\t\t\t\t\tkey: seriesKey,\n\t\t\t\t\t\t\tname: this.$l(`platon.${seriesVal}`, seriesVal),\n\t\t\t\t\t\t\tdata: [dataRow[seriesKey] || 0],\n\t\t\t\t\t\t\t...this.getColor(series.length),\n\t\t\t\t\t\t\t...this.getSerieType(serieIndex),\n\t\t\t\t\t\t\tstack: Math.floor(\n\t\t\t\t\t\t\t\tserieIndex / Math.ceil(Object.values(this.options.xPoints).length / xLabels.length)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\n\t\t\treturn { categories, series, xLabels }\n\t\t},\n\n\t\tformatForColumn() {\n\t\t\tlet { series, xLabels } = this.dataLayoutCreator()\n\n\t\t\treturn {\n\t\t\t\txAxis: xLabels.map((xl, index) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: index,\n\t\t\t\t\t\ttitle: {\n\t\t\t\t\t\t\ttext: this.$l(`platon.${this.options.xTitle}`, this.options.xTitle || \"\")\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvisible: index === 0,\n\t\t\t\t\t\tcrosshair: true,\n\t\t\t\t\t\tcategories: this.options.chartConfig.xAxis.categories\n\t\t\t\t\t}\n\t\t\t\t}),\n\n\t\t\t\tyAxis: {\n\t\t\t\t\ttitle: {\n\t\t\t\t\t\ttext: this.$l(`platon.${this.options.yTitle}`, this.options.yTitle || \"\")\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tseries\n\t\t\t}\n\t\t},\n\n\t\tformatForBar() {\n\t\t\tlet { series, xLabels } = this.dataLayoutCreator()\n\n\t\t\treturn {\n\t\t\t\txAxis: xLabels.map((xl, index) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcategories: this.options.chartConfig.xAxis.categories\n\t\t\t\t\t}\n\t\t\t\t}),\n\n\t\t\t\tyAxis: {\n\t\t\t\t\ttitle: {\n\t\t\t\t\t\ttext: this.$l(`platon.${this.options.yTitle}`, this.options.yTitle || \"\")\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tseries\n\t\t\t}\n\t\t},\n\n\t\tformatForLine() {\n\t\t\treturn {\n\t\t\t\t...this.formatForColumn()\n\t\t\t}\n\t\t},\n\n\t\tformatForArea() {\n\t\t\tlet { series, categories, xLabels } = this.dataLayoutCreator()\n\t\t\tseries = series.map((item) => {\n\t\t\t\treturn {\n\t\t\t\t\t...item,\n\t\t\t\t\ttype: null\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn { series, categories, xLabels }\n\t\t},\n\n\t\tformatForAreaSplin() {\n\t\t\treturn {\n\t\t\t\t...this.formatForBar(),\n\t\t\t\t...{\n\t\t\t\t\ttooltip: {\n\t\t\t\t\t\tshared: true,\n\t\t\t\t\t\tvalueSuffix: this.options.suffix || \"\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tformatForPie() {\n\t\t\tlet series = []\n\n\t\t\tthis.chartData.map((dataRow) => {\n\t\t\t\tfor (const [seriesKey, seriesVal] of Object.entries(this.options.xPoints)) {\n\t\t\t\t\tseries.push({\n\t\t\t\t\t\tname: this.$l(`platon.${dataRow[seriesKey]}`, dataRow[seriesKey]),\n\t\t\t\t\t\ty: dataRow[seriesVal] || 0,\n\t\t\t\t\t\t...this.getColor(series.length).color\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t})\n\n\t\t\treturn {\n\t\t\t\taccessibility: {\n\t\t\t\t\tpoint: {\n\t\t\t\t\t\tvalueSuffix: this.options.suffix || \"\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tseries: [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: this.$l(`platon.${this.options.title}`, this.options.title || \"График\"),\n\t\t\t\t\t\tdata: series,\n\t\t\t\t\t\t...(this.options.semi ? { innerSize: \"50%\" } : {})\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\ttooltip: {\n\t\t\t\t\tpointFormat:\n\t\t\t\t\t\tthis.options.format || `{point.y} ${this.options.suffix} ({point.percentage:.1f}%)`\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tformatForVariablePie() {\n\t\t\tlet series = []\n\t\t\tlet [name, y, z] = this.options.serieFields || []\n\n\t\t\tlet zMin = 0\n\t\t\tlet zMax = 0\n\n\t\t\tthis.chartData.map((dataRow) => {\n\t\t\t\tseries.push({\n\t\t\t\t\tname: this.$l(`platon.${dataRow[name]}`, dataRow[name]),\n\t\t\t\t\ty: dataRow[y] || 0,\n\t\t\t\t\tz: dataRow[z] || 0,\n\t\t\t\t\t...this.getColor(series.length)\n\t\t\t\t})\n\n\t\t\t\tif (zMin > dataRow[y]) {\n\t\t\t\t\tzMin = dataRow[y]\n\t\t\t\t}\n\n\t\t\t\tif (zMax < dataRow[y]) {\n\t\t\t\t\tzMax = dataRow[y]\n\t\t\t\t}\n\t\t\t})\n\n\t\t\treturn {\n\t\t\t\taccessibility: {\n\t\t\t\t\tpoint: {\n\t\t\t\t\t\tvalueSuffix: this.options.suffix || \"\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tseries: [\n\t\t\t\t\t{\n\t\t\t\t\t\tzMin,\n\t\t\t\t\t\tzMax,\n\t\t\t\t\t\tinnerSize: \"30%\",\n\t\t\t\t\t\tname: this.$l(`platon.${this.options.title}`, this.options.title || \"График\"),\n\t\t\t\t\t\tdata: series\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\ttooltip: {\n\t\t\t\t\theaderFormat: \"\",\n\t\t\t\t\tpointFormat:\n\t\t\t\t\t\tthis.options.format || `{point.y} ${this.options.suffix} ({point.percentage:.1f}%)`\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tformatForPyramid() {\n\t\t\tlet series = []\n\t\t\tfor (const [seriesKey, seriesVal] of Object.entries(this.options.xPoints)) {\n\t\t\t\tthis.chartData.map((dataRow) => {\n\t\t\t\t\tseries.push({\n\t\t\t\t\t\ty: dataRow[seriesVal],\n\t\t\t\t\t\tname: dataRow[seriesKey],\n\t\t\t\t\t\tcolor: this.getColor(series.length).color\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\taccessibility: {\n\t\t\t\t\tpoint: {\n\t\t\t\t\t\tvalueSuffix: this.options.suffix || \"\"\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\tseries: [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: this.$l(`platon.${this.options.title}`, this.options.title || \"График\"),\n\t\t\t\t\t\tdata: series\n\t\t\t\t\t}\n\t\t\t\t],\n\n\t\t\t\ttooltip: {\n\t\t\t\t\tpointFormat: this.options.format || `{point.name} {point.y} ${this.options.suffix || \"\"}`\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tformatForTree() {\n\t\t\tlet series = []\n\n\t\t\tlet parent = 0\n\t\t\tthis.chartData.map((dataRow) => {\n\t\t\t\tseries.push({\n\t\t\t\t\tname: dataRow[this.options.pointFields.title],\n\t\t\t\t\t...(dataRow[this.options.pointFields.parent]\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tparent: dataRow[this.options.pointFields.parent].toString(),\n\t\t\t\t\t\t\t\tvalue: dataRow[this.options.pointFields.value]\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {\n\t\t\t\t\t\t\t\tid: dataRow[this.options.pointFields.id].toString(),\n\t\t\t\t\t\t\t\tcolor: this.getColor(parent++).color\n\t\t\t\t\t\t })\n\t\t\t\t})\n\t\t\t})\n\n\t\t\treturn {\n\t\t\t\taccessibility: {\n\t\t\t\t\tpoint: {\n\t\t\t\t\t\tvalueSuffix: this.options.suffix || \"\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tseries: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"treemap\",\n\t\t\t\t\t\tlayoutAlgorithm: \"stripes\",\n\t\t\t\t\t\talternateStartingDirection: true,\n\n\t\t\t\t\t\tlevels: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlevel: 1,\n\t\t\t\t\t\t\t\tlayoutAlgorithm: \"sliceAndDice\",\n\t\t\t\t\t\t\t\tdataLabels: {\n\t\t\t\t\t\t\t\t\tenabled: true,\n\t\t\t\t\t\t\t\t\talign: \"left\",\n\t\t\t\t\t\t\t\t\tverticalAlign: \"top\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t],\n\n\t\t\t\t\t\tdata: series\n\t\t\t\t\t}\n\t\t\t\t],\n\n\t\t\t\ttooltip: {\n\t\t\t\t\tpointFormat: this.options.format || `{point.name} {point.y} ${this.options.suffix || \"\"}`\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n","\n\n \n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlatonChart.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlatonChart.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PlatonChart.vue?vue&type=template&id=5eed99fc&\"\nimport script from \"./PlatonChart.vue?vue&type=script&lang=js&\"\nexport * from \"./PlatonChart.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/*\n Highcharts JS v8.2.2 (2020-10-22)\n\n (c) 2014-2019 Highsoft AS\n Authors: Jon Arild Nygard / Oystein Moseng\n\n License: www.highcharts.com/license\n*/\n(function(a){\"object\"===typeof module&&module.exports?(a[\"default\"]=a,module.exports=a):\"function\"===typeof define&&define.amd?define(\"highcharts/modules/treemap\",[\"highcharts\"],function(p){a(p);a.Highcharts=p;return a}):a(\"undefined\"!==typeof Highcharts?Highcharts:void 0)})(function(a){function p(a,c,g,y){a.hasOwnProperty(c)||(a[c]=y.apply(null,g))}a=a?a._modules:{};p(a,\"Mixins/ColorMapSeries.js\",[a[\"Core/Globals.js\"],a[\"Core/Series/Point.js\"],a[\"Core/Utilities.js\"]],function(a,c,g){var y=g.defined;\nreturn{colorMapPointMixin:{dataLabelOnNull:!0,isValid:function(){return null!==this.value&&Infinity!==this.value&&-Infinity!==this.value},setState:function(a){c.prototype.setState.call(this,a);this.graphic&&this.graphic.attr({zIndex:\"hover\"===a?1:0})}},colorMapSeriesMixin:{pointArrayMap:[\"value\"],axisTypes:[\"xAxis\",\"yAxis\",\"colorAxis\"],trackerGroups:[\"group\",\"markerGroup\",\"dataLabelsGroup\"],getSymbol:a.noop,parallelArrays:[\"x\",\"y\",\"value\"],colorKey:\"value\",pointAttribs:a.seriesTypes.column.prototype.pointAttribs,\ncolorAttribs:function(a){var g={};y(a.color)&&(g[this.colorProp||\"fill\"]=a.color);return g}}}});p(a,\"Mixins/DrawPoint.js\",[],function(){var a=function(a){return\"function\"===typeof a},c=function(g){var c,q=this,m=q.graphic,x=g.animatableAttribs,t=g.onComplete,h=g.css,f=g.renderer,z=null===(c=q.series)||void 0===c?void 0:c.options.animation;if(q.shouldDraw())m||(q.graphic=m=f[g.shapeType](g.shapeArgs).add(g.group)),m.css(h).attr(g.attribs).animate(x,g.isNew?!1:z,t);else if(m){var E=function(){q.graphic=\nm=m.destroy();a(t)&&t()};Object.keys(x).length?m.animate(x,void 0,function(){E()}):E()}};return{draw:c,drawPoint:function(a){(a.attribs=a.attribs||{})[\"class\"]=this.getClassName();c.call(this,a)},isFn:a}});p(a,\"Mixins/TreeSeries.js\",[a[\"Core/Color/Color.js\"],a[\"Core/Utilities.js\"]],function(a,c){var g=c.extend,p=c.isArray,q=c.isNumber,m=c.isObject,x=c.merge,t=c.pick;return{getColor:function(h,f){var z=f.index,g=f.mapOptionsToLevel,c=f.parentColor,m=f.parentColorIndex,q=f.series,v=f.colors,H=f.siblings,\nn=q.points,p=q.chart.options.chart,w;if(h){n=n[h.i];h=g[h.level]||{};if(g=n&&h.colorByPoint){var x=n.index%(v?v.length:p.colorCount);var F=v&&v[x]}if(!q.chart.styledMode){v=n&&n.options.color;p=h&&h.color;if(w=c)w=(w=h&&h.colorVariation)&&\"brightness\"===w.key?a.parse(c).brighten(z/H*w.to).get():c;w=t(v,p,F,w,q.color)}var y=t(n&&n.options.colorIndex,h&&h.colorIndex,x,m,f.colorIndex)}return{color:w,colorIndex:y}},getLevelOptions:function(a){var f=null;if(m(a)){f={};var h=q(a.from)?a.from:1;var c=a.levels;\nvar t={};var y=m(a.defaults)?a.defaults:{};p(c)&&(t=c.reduce(function(a,f){if(m(f)&&q(f.level)){var c=x({},f);var z=\"boolean\"===typeof c.levelIsConstant?c.levelIsConstant:y.levelIsConstant;delete c.levelIsConstant;delete c.level;f=f.level+(z?0:h-1);m(a[f])?g(a[f],c):a[f]=c}return a},{}));c=q(a.to)?a.to:1;for(a=0;a<=c;a++)f[a]=x({},y,m(t[a])?t[a]:{})}return f},setTreeValues:function E(a,c){var f=c.before,m=c.idRoot,q=c.mapIdToNode[m],v=c.points[a.i],p=v&&v.options||{},n=0,z=[];g(a,{levelDynamic:a.level-\n((\"boolean\"===typeof c.levelIsConstant?c.levelIsConstant:1)?0:q.level),name:t(v&&v.name,\"\"),visible:m===a.id||(\"boolean\"===typeof c.visible?c.visible:!1)});\"function\"===typeof f&&(a=f(a,c));a.children.forEach(function(f,m){var q=g({},c);g(q,{index:m,siblings:a.children.length,visible:a.visible});f=E(f,q);z.push(f);f.visible&&(n+=f.val)});a.visible=0{point.name}
\"},ignoreHiddenPoint:!0,layoutAlgorithm:\"sliceAndDice\",layoutStartingDirection:\"vertical\",alternateStartingDirection:!1,levelIsConstant:!0,drillUpButton:{position:{align:\"right\",x:-10,y:10}},traverseUpButton:{position:{align:\"right\",x:-10,y:10}},borderColor:\"#e6e6e6\",borderWidth:1,colorKey:\"colorValue\",opacity:.15,states:{hover:{borderColor:\"#999999\",\nbrightness:f.heatmap?0:.1,halo:!1,opacity:.75,shadow:!1}}},{pointArrayMap:[\"value\"],directTouch:!0,optionalAxis:\"colorAxis\",getSymbol:c,parallelArrays:[\"x\",\"y\",\"value\",\"colorValue\"],colorKey:\"colorValue\",trackerGroups:[\"group\",\"dataLabelsGroup\"],getListOfParents:function(b,d){b=F(b)?b:[];var e=F(d)?d:[];d=b.reduce(function(b,d,e){d=A(d.parent,\"\");\"undefined\"===typeof b[d]&&(b[d]=[]);b[d].push(e);return b},{\"\":[]});U(d,function(b,d,a){\"\"!==d&&-1===e.indexOf(d)&&(b.forEach(function(b){a[\"\"].push(b)}),\ndelete a[d])});return d},getTree:function(){var b=this.data.map(function(b){return b.id});b=this.getListOfParents(this.data,b);this.nodeMap={};return this.buildNode(\"\",-1,0,b)},hasData:function(){return!!this.processedXData.length},init:function(b,d){y&&(this.colorAttribs=y.colorAttribs);var e=v(this,\"setOptions\",function(b){b=b.userOptions;n(b.allowDrillToNode)&&!n(b.allowTraversingTree)&&(b.allowTraversingTree=b.allowDrillToNode,delete b.allowDrillToNode);n(b.drillUpButton)&&!n(b.traverseUpButton)&&\n(b.traverseUpButton=b.drillUpButton,delete b.drillUpButton)});D.prototype.init.call(this,b,d);delete this.opacity;this.eventsToUnbind.push(e);this.options.allowTraversingTree&&this.eventsToUnbind.push(v(this,\"click\",this.onClickDrillToNode))},buildNode:function(b,d,e,a,l){var c=this,k=[],u=c.points[d],K=0,r;(a[b]||[]).forEach(function(d){r=c.buildNode(c.points[d].id,d,e+1,a,b);K=Math.max(r.height+1,K);k.push(r)});d={id:b,i:d,children:k,height:K,level:e,parent:l,visible:!1};c.nodeMap[d.id]=d;u&&(u.node=\nd);return d},setTreeValues:function(b){var d=this,e=d.options,a=d.nodeMap[d.rootNode];e=\"boolean\"===typeof e.levelIsConstant?e.levelIsConstant:!0;var l=0,c=[],k=d.points[b.i];b.children.forEach(function(b){b=d.setTreeValues(b);c.push(b);b.ignore||(l+=b.val)});T(c,function(b,d){return(b.sortIndex||0)-(d.sortIndex||0)});var B=A(k&&k.options.value,l);k&&(k.value=B);w(b,{children:c,childrenTotal:l,ignore:!(A(k&&k.visible,!0)&&0r.lP.lR&&c.algorithmCalcPoints(b,!1,r,e,k);g===h&&c.algorithmCalcPoints(b,!0,r,e,k);g+=1});return e},algorithmFill:function(b,a,e){var d=[],c,f=a.direction,k=a.x,g=a.y,h=a.width,r=a.height,m,q,n,p;e.forEach(function(e){c=e.val/a.val*a.height*a.width;m=k;q=g;0===f?(p=r,n=c/p,h-=n,k+=n):(n=h,p=c/n,r-=p,\ng+=p);d.push({x:m,y:q,width:n,height:p});b&&(f=1-f)});return d},strip:function(b,a){return this.algorithmLowAspectRatio(!1,b,a)},squarified:function(b,a){return this.algorithmLowAspectRatio(!0,b,a)},sliceAndDice:function(b,a){return this.algorithmFill(!0,b,a)},stripes:function(b,a){return this.algorithmFill(!1,b,a)},translate:function(){var b=this,a=b.options,e=O(b);D.prototype.translate.call(b);var c=b.tree=b.getTree();var l=b.nodeMap[e];b.renderTraverseUpButton(e);b.mapOptionsToLevel=N({from:l.level+\n1,levels:a.levels,to:c.height,defaults:{levelIsConstant:b.options.levelIsConstant,colorByPoint:a.colorByPoint}});\"\"===e||l&&l.children.length||(b.setRootNode(\"\",!1),e=b.rootNode,l=b.nodeMap[e]);G(b.nodeMap[b.rootNode],function(a){var d=!1,e=a.parent;a.visible=!0;if(e||\"\"===e)d=b.nodeMap[e];return d});G(b.nodeMap[b.rootNode].children,function(b){var a=!1;b.forEach(function(b){b.visible=!0;b.children.length&&(a=(a||[]).concat(b.children))});return a});b.setTreeValues(c);b.axisRatio=b.xAxis.len/b.yAxis.len;\nb.nodeMap[\"\"].pointValues=e={x:0,y:0,width:100,height:100};b.nodeMap[\"\"].values=e=C(e,{width:e.width*b.axisRatio,direction:\"vertical\"===a.layoutStartingDirection?0:1,val:c.val});b.calculateChildrenAreas(c,e);b.colorAxis||a.colorByPoint||b.setColorRecursive(b.tree);a.allowTraversingTree&&(a=l.pointValues,b.xAxis.setExtremes(a.x,a.x+a.width,!1),b.yAxis.setExtremes(a.y,a.y+a.height,!1),b.xAxis.setScale(),b.yAxis.setScale());b.setPointValues()},drawDataLabels:function(){var b=this,a=b.mapOptionsToLevel,\ne,c;b.points.filter(function(b){return b.node.visible}).forEach(function(d){c=a[d.node.level];e={style:{}};d.node.isLeaf||(e.enabled=!1);c&&c.dataLabels&&(e=C(e,c.dataLabels),b._hasPointLabels=!0);d.shapeArgs&&(e.style.width=d.shapeArgs.width,d.dataLabel&&d.dataLabel.css({width:d.shapeArgs.width+\"px\"}));d.dlOptions=C(e,d.options.dataLabels)});D.prototype.drawDataLabels.call(this)},alignDataLabel:function(b,a,e){var d=e.style;!n(d.textOverflow)&&a.text&&a.getBBox().width>a.text.textWidth&&a.css({textOverflow:\"ellipsis\",\nwidth:d.width+=\"px\"});f.column.prototype.alignDataLabel.apply(this,arguments);b.dataLabel&&b.dataLabel.attr({zIndex:(b.node.zIndex||0)+1})},pointAttribs:function(b,a){var d=R(this.mapOptionsToLevel)?this.mapOptionsToLevel:{},c=b&&d[b.node.level]||{};d=this.options;var f=a&&d.states[a]||{},g=b&&b.getClassName()||\"\";b={stroke:b&&b.borderColor||c.borderColor||f.borderColor||d.borderColor,\"stroke-width\":A(b&&b.borderWidth,c.borderWidth,f.borderWidth,d.borderWidth),dashstyle:b&&b.borderDashStyle||c.borderDashStyle||\nf.borderDashStyle||d.borderDashStyle,fill:b&&b.color||this.color};-1!==g.indexOf(\"highcharts-above-level\")?(b.fill=\"none\",b[\"stroke-width\"]=0):-1!==g.indexOf(\"highcharts-internal-node-interactive\")?(a=A(f.opacity,d.opacity),b.fill=z(b.fill).setOpacity(a).get(),b.cursor=\"pointer\"):-1!==g.indexOf(\"highcharts-internal-node\")?b.fill=\"none\":a&&(b.fill=z(b.fill).brighten(f.brightness).get());return b},drawPoints:function(){var b=this,a=b.chart,e=a.renderer,c=a.styledMode,f=b.options,g=c?{}:f.shadow,k=f.borderRadius,\nh=a.pointCount