/* Highcharts JS v7.0.3 (2019-02-06) (c) 2009-2018 Torstein Honsi License: www.highcharts.com/license */ (function(z){"object"===typeof module&&module.exports?(z["default"]=z,module.exports=z):"function"===typeof define&&define.amd?define(function(){return z}):z("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(z){(function(a){function w(a,b){this.init(a,b)}var x=a.CenteredSeriesMixin,g=a.extend,h=a.merge,u=a.splat;g(w.prototype,{coll:"pane",init:function(a,b){this.chart=b;this.background=[];b.pane.push(this);this.setOptions(a)},setOptions:function(a){this.options=h(this.defaultOptions,this.chart.angular? {background:{}}:void 0,a)},render:function(){var a=this.options,b=this.options.background,d=this.chart.renderer;this.group||(this.group=d.g("pane-group").attr({zIndex:a.zIndex||0}).add());this.updateCenter();if(b)for(b=u(b),a=Math.max(b.length,this.background.length||0),d=0;da.len*a.tickInterval/(a.max-a.min)&&(m=0),e=v>m&&v<180-m?"left": v>180+m&&v<360-m?"right":"center"):e="center",f.attr({align:e})),c.pos.x=b.x+k.x,c.pos.y=b.y+l)}),e(m,"getMarkPath",function(c,a,f,k,b,m,e){var l=this.axis;l.isRadial?(c=l.getPosition(this.pos,l.center[2]/2+k),a=["M",a,f,"L",c.x,c.y]):a=c.call(this,a,f,k,b,m,e);return a}))})(z);(function(a){var w=a.pick,x=a.extend,g=a.isArray,h=a.defined,u=a.seriesType,p=a.seriesTypes,b=a.Series.prototype,d=a.Point.prototype;u("arearange","area",{lineWidth:1,threshold:null,tooltip:{pointFormat:'\x3cspan style\x3d"color:{series.color}"\x3e\u25cf\x3c/span\x3e {series.name}: \x3cb\x3e{point.low}\x3c/b\x3e - \x3cb\x3e{point.high}\x3c/b\x3e\x3cbr/\x3e'}, trackByArea:!0,dataLabels:{align:null,verticalAlign:null,xLow:0,xHigh:0,yLow:0,yHigh:0}},{pointArrayMap:["low","high"],toYData:function(a){return[a.low,a.high]},pointValKey:"low",deferTranslatePolar:!0,highToXY:function(a){var c=this.chart,b=this.xAxis.postTranslate(a.rectPlotX,this.yAxis.len-a.plotHigh);a.plotHighX=b.x-c.plotLeft;a.plotHigh=b.y-c.plotTop;a.plotLowX=a.plotX},translate:function(){var a=this,c=a.yAxis,b=!!a.modifyValue;p.area.prototype.translate.apply(a);a.points.forEach(function(e){var v= e.low,m=e.high,l=e.plotY;null===m||null===v?(e.isNull=!0,e.plotY=null):(e.plotLow=l,e.plotHigh=c.translate(b?a.modifyValue(m,e):m,0,1,0,1),b&&(e.yBottom=e.plotHigh))});this.chart.polar&&this.points.forEach(function(c){a.highToXY(c);c.tooltipPos=[(c.plotHighX+c.plotLowX)/2,(c.plotHigh+c.plotLow)/2]})},getGraphPath:function(a){var c=[],b=[],e,v=p.area.prototype.getGraphPath,m,l,n;n=this.options;var f=this.chart.polar&&!1!==n.connectEnds,k=n.connectNulls,d=n.step;a=a||this.points;for(e=a.length;e--;)m= a[e],m.isNull||f||k||a[e+1]&&!a[e+1].isNull||b.push({plotX:m.plotX,plotY:m.plotY,doCurve:!1}),l={polarPlotY:m.polarPlotY,rectPlotX:m.rectPlotX,yBottom:m.yBottom,plotX:w(m.plotHighX,m.plotX),plotY:m.plotHigh,isNull:m.isNull},b.push(l),c.push(l),m.isNull||f||k||a[e-1]&&!a[e-1].isNull||b.push({plotX:m.plotX,plotY:m.plotY,doCurve:!1});a=v.call(this,a);d&&(!0===d&&(d="left"),n.step={left:"right",center:"center",right:"left"}[d]);c=v.call(this,c);b=v.call(this,b);n.step=d;n=[].concat(a,c);this.chart.polar|| "M"!==b[0]||(b[0]="L");this.graphPath=n;this.areaPath=a.concat(b);n.isArea=!0;n.xMap=a.xMap;this.areaPath.xMap=a.xMap;return n},drawDataLabels:function(){var a=this.points,c=a.length,d,h=[],v=this.options.dataLabels,m,l,n=this.chart.inverted,f,k;g(v)?1m.plotLow,m.y=m.high,m._plotY= m.plotY,m.plotY=m.plotHigh,h[d]=m.dataLabel,m.dataLabel=m.dataLabelUpper,m.below=l,n?f.align||(f.align=l?"right":"left"):f.verticalAlign||(f.verticalAlign=l?"top":"bottom");this.options.dataLabels=f;b.drawDataLabels&&b.drawDataLabels.apply(this,arguments);for(d=c;d--;)if(m=a[d])m.dataLabelUpper=m.dataLabel,m.dataLabel=h[d],delete m.dataLabels,m.y=m.low,m.plotY=m._plotY}if(k.enabled||this._hasPointLabels){for(d=c;d--;)if(m=a[d])l=k.inside?m.plotHighm.plotLow,m.below=!l,n?k.align|| (k.align=l?"left":"right"):k.verticalAlign||(k.verticalAlign=l?"bottom":"top");this.options.dataLabels=k;b.drawDataLabels&&b.drawDataLabels.apply(this,arguments)}if(f.enabled)for(d=c;d--;)if(m=a[d])m.dataLabels=[m.dataLabelUpper,m.dataLabel].filter(function(f){return!!f});this.options.dataLabels=v},alignDataLabel:function(){p.column.prototype.alignDataLabel.apply(this,arguments)},drawPoints:function(){var d=this.points.length,c,q;b.drawPoints.apply(this,arguments);for(q=0;qn&&(n*=-1,y-=n);v?(q=b.barX+c,b.shapeType="path",b.shapeArgs={d:a.polarArc(y+n,y,q,q+b.pointWidth)}):(f.height=n,f.y=y,b.tooltipPos=t.inverted?[d.len+d.pos-t.plotLeft-y-n/2,e.len+e.pos-t.plotTop-f.x-f.width/2,n]:[e.left-t.plotLeft+f.x+f.width/2,d.pos-t.plotTop+y+n/2,n])})},directTouch:!0,trackerGroups:["group","dataLabelsGroup"],drawGraph:g,getSymbol:g,crispCol:function(){return p.crispCol.apply(this,arguments)},drawPoints:function(){return p.drawPoints.apply(this, arguments)},drawTracker:function(){return p.drawTracker.apply(this,arguments)},getColumnMetrics:function(){return p.getColumnMetrics.apply(this,arguments)},pointAttribs:function(){return p.pointAttribs.apply(this,arguments)},animate:function(){return p.animate.apply(this,arguments)},polarArc:function(){return p.polarArc.apply(this,arguments)},translate3dPoints:function(){return p.translate3dPoints.apply(this,arguments)},translate3dShapes:function(){return p.translate3dShapes.apply(this,arguments)}}, {setState:p.pointClass.prototype.setState})})(z);(function(a){var w=a.pick,x=a.seriesType,g=a.seriesTypes.column.prototype;x("columnpyramid","column",{},{translate:function(){var a=this,u=a.chart,p=a.options,b=a.dense=2>a.closestPointRange*a.xAxis.transA,b=a.borderWidth=w(p.borderWidth,b?0:1),d=a.yAxis,e=p.threshold,c=a.translatedThreshold=d.getThreshold(e),q=w(p.minPointLength,5),t=a.getColumnMetrics(),v=t.width,m=a.barW=Math.max(v,1+2*b),l=a.pointXOffset=t.offset;u.inverted&&(c-=.5);p.pointPadding&& (m=Math.ceil(m));g.translate.apply(a);a.points.forEach(function(b){var f=w(b.yBottom,c),k=999+Math.abs(f),n=Math.min(Math.max(-k,b.plotY),d.len+k),k=b.plotX+l,y=m/2,B=Math.min(n,f),f=Math.max(n,f)-B,h,r,t,g,x,D;b.barX=k;b.pointWidth=v;b.tooltipPos=u.inverted?[d.len+d.pos-u.plotLeft-n,a.xAxis.len-k-y,f]:[k+y,n+d.pos-u.plotTop,f];n=e+(b.total||b.y);"percent"===p.stacking&&(n=e+(0>b.y)?-100:100);n=d.toPixels(n,!0);h=u.plotHeight-n-(u.plotHeight-c);r=y*(B-n)/h;t=y*(B+f-n)/h;h=k-r+y;r=k+r+y;g=k+t+y;t= k-t+y;x=B-q;D=B+f;0>b.y&&(x=B,D=B+f+q);u.inverted&&(g=u.plotWidth-B,h=n-(u.plotWidth-c),r=y*(n-g)/h,t=y*(n-(g-f))/h,h=k+y+r,r=h-2*r,g=k-t+y,t=k+t+y,x=B,D=B+f-q,0>b.y&&(D=B+f+q));b.shapeType="path";b.shapeArgs={x:h,y:x,width:r-h,height:f,d:["M",h,x,"L",r,x,g,D,t,D,"Z"]}})}})})(z);(function(a){var w=a.isNumber,x=a.merge,g=a.pick,h=a.pInt,u=a.Series,p=a.seriesType,b=a.TrackerMixin;p("gauge","line",{dataLabels:{enabled:!0,defer:!1,y:15,borderRadius:3,crop:!1,verticalAlign:"top",zIndex:2,borderWidth:1, borderColor:"#cccccc"},dial:{},pivot:{},tooltip:{headerFormat:""},showInLegend:!1},{angular:!0,directTouch:!0,drawGraph:a.noop,fixedBox:!0,forceDL:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],translate:function(){var a=this.yAxis,b=this.options,c=a.center;this.generatePoints();this.points.forEach(function(d){var e=x(b.dial,d.dial),v=h(g(e.radius,80))*c[2]/200,m=h(g(e.baseLength,70))*v/100,l=h(g(e.rearLength,10))*v/100,n=e.baseWidth||3,f=e.topWidth||1,k=b.overshoot,C=a.startAngleRad+ a.translate(d.y,null,null,null,!0);w(k)?(k=k/180*Math.PI,C=Math.max(a.startAngleRad-k,Math.min(a.endAngleRad+k,C))):!1===b.wrap&&(C=Math.max(a.startAngleRad,Math.min(a.endAngleRad,C)));C=180*C/Math.PI;d.shapeType="path";d.shapeArgs={d:e.path||["M",-l,-n/2,"L",m,-n/2,v,-f/2,v,f/2,m,n/2,-l,n/2,"z"],translateX:c[0],translateY:c[1],rotation:C};d.plotX=c[0];d.plotY=c[1]})},drawPoints:function(){var a=this,b=a.chart,c=a.yAxis.center,q=a.pivot,h=a.options,v=h.pivot,m=b.renderer;a.points.forEach(function(c){var l= c.graphic,f=c.shapeArgs,k=f.d,d=x(h.dial,c.dial);l?(l.animate(f),f.d=k):(c.graphic=m[c.shapeType](f).attr({rotation:f.rotation,zIndex:1}).addClass("highcharts-dial").add(a.group),b.styledMode||c.graphic.attr({stroke:d.borderColor||"none","stroke-width":d.borderWidth||0,fill:d.backgroundColor||"#000000"}))});q?q.animate({translateX:c[0],translateY:c[1]}):(a.pivot=m.circle(0,0,g(v.radius,5)).attr({zIndex:2}).addClass("highcharts-pivot").translate(c[0],c[1]).add(a.group),b.styledMode||a.pivot.attr({"stroke-width":v.borderWidth|| 0,stroke:v.borderColor||"#cccccc",fill:v.backgroundColor||"#000000"}))},animate:function(a){var b=this;a||(b.points.forEach(function(a){var c=a.graphic;c&&(c.attr({rotation:180*b.yAxis.startAngleRad/Math.PI}),c.animate({rotation:a.shapeArgs.rotation},b.options.animation))}),b.animate=null)},render:function(){this.group=this.plotGroup("group","series",this.visible?"visible":"hidden",this.options.zIndex,this.chart.seriesGroup);u.prototype.render.call(this);this.group.clip(this.chart.clipRect)},setData:function(a, b){u.prototype.setData.call(this,a,!1);this.processData();this.generatePoints();g(b,!0)&&this.chart.redraw()},drawTracker:b&&b.drawTrackerPoint},{setState:function(a){this.state=a}})})(z);(function(a){var w=a.noop,x=a.pick,g=a.seriesType,h=a.seriesTypes;g("boxplot","column",{threshold:null,tooltip:{pointFormat:'\x3cspan style\x3d"color:{point.color}"\x3e\u25cf\x3c/span\x3e \x3cb\x3e {series.name}\x3c/b\x3e\x3cbr/\x3eMaximum: {point.high}\x3cbr/\x3eUpper quartile: {point.q3}\x3cbr/\x3eMedian: {point.median}\x3cbr/\x3eLower quartile: {point.q1}\x3cbr/\x3eMinimum: {point.low}\x3cbr/\x3e'}, whiskerLength:"50%",fillColor:"#ffffff",lineWidth:1,medianWidth:2,whiskerWidth:2},{pointArrayMap:["low","q1","median","q3","high"],toYData:function(a){return[a.low,a.q1,a.median,a.q3,a.high]},pointValKey:"high",pointAttribs:function(){return{}},drawDataLabels:w,translate:function(){var a=this.yAxis,g=this.pointArrayMap;h.column.prototype.translate.apply(this);this.points.forEach(function(b){g.forEach(function(d){null!==b[d]&&(b[d+"Plot"]=a.translate(b[d],0,1,0,1))})})},drawPoints:function(){var a= this,h=a.options,b=a.chart,d=b.renderer,e,c,q,g,v,m,l=0,n,f,k,C,y=!1!==a.doQuartiles,B,F=a.options.whiskerLength;a.points.forEach(function(r){var t=r.graphic,p=t?"animate":"attr",u=r.shapeArgs,w={},E={},A={},z={},G=r.color||a.color;void 0!==r.plotY&&(n=u.width,f=Math.floor(u.x),k=f+n,C=Math.round(n/2),e=Math.floor(y?r.q1Plot:r.lowPlot),c=Math.floor(y?r.q3Plot:r.lowPlot),q=Math.floor(r.highPlot),g=Math.floor(r.lowPlot),t||(r.graphic=t=d.g("point").add(a.group),r.stem=d.path().addClass("highcharts-boxplot-stem").add(t), F&&(r.whiskers=d.path().addClass("highcharts-boxplot-whisker").add(t)),y&&(r.box=d.path(void 0).addClass("highcharts-boxplot-box").add(t)),r.medianShape=d.path(void 0).addClass("highcharts-boxplot-median").add(t)),b.styledMode||(E.stroke=r.stemColor||h.stemColor||G,E["stroke-width"]=x(r.stemWidth,h.stemWidth,h.lineWidth),E.dashstyle=r.stemDashStyle||h.stemDashStyle,r.stem.attr(E),F&&(A.stroke=r.whiskerColor||h.whiskerColor||G,A["stroke-width"]=x(r.whiskerWidth,h.whiskerWidth,h.lineWidth),r.whiskers.attr(A)), y&&(w.fill=r.fillColor||h.fillColor||G,w.stroke=h.lineColor||G,w["stroke-width"]=h.lineWidth||0,r.box.attr(w)),z.stroke=r.medianColor||h.medianColor||G,z["stroke-width"]=x(r.medianWidth,h.medianWidth,h.lineWidth),r.medianShape.attr(z)),m=r.stem.strokeWidth()%2/2,l=f+C+m,r.stem[p]({d:["M",l,c,"L",l,q,"M",l,e,"L",l,g]}),y&&(m=r.box.strokeWidth()%2/2,e=Math.floor(e)+m,c=Math.floor(c)+m,f+=m,k+=m,r.box[p]({d:["M",f,c,"L",f,e,"L",k,e,"L",k,c,"L",f,c,"z"]})),F&&(m=r.whiskers.strokeWidth()%2/2,q+=m,g+=m, B=/%$/.test(F)?C*parseFloat(F)/100:F/2,r.whiskers[p]({d:["M",l-B,q,"L",l+B,q,"M",l-B,g,"L",l+B,g]})),v=Math.round(r.medianPlot),m=r.medianShape.strokeWidth()%2/2,v+=m,r.medianShape[p]({d:["M",f,v,"L",k,v]}))})},setStackedPoints:w})})(z);(function(a){var w=a.noop,x=a.seriesType,g=a.seriesTypes;x("errorbar","boxplot",{color:"#000000",grouping:!1,linkedTo:":previous",tooltip:{pointFormat:'\x3cspan style\x3d"color:{point.color}"\x3e\u25cf\x3c/span\x3e {series.name}: \x3cb\x3e{point.low}\x3c/b\x3e - \x3cb\x3e{point.high}\x3c/b\x3e\x3cbr/\x3e'}, whiskerWidth:null},{type:"errorbar",pointArrayMap:["low","high"],toYData:function(a){return[a.low,a.high]},pointValKey:"high",doQuartiles:!1,drawDataLabels:g.arearange?function(){var a=this.pointValKey;g.arearange.prototype.drawDataLabels.call(this);this.data.forEach(function(h){h.y=h[a]})}:w,getColumnMetrics:function(){return this.linkedParent&&this.linkedParent.columnMetrics||g.column.prototype.getColumnMetrics.call(this)}})})(z);(function(a){var w=a.correctFloat,x=a.isNumber,g=a.pick,h=a.objectEach, u=a.arrayMin,p=a.arrayMax,b=a.addEvent,d=a.Chart,e=a.Point,c=a.Series,q=a.seriesType,t=a.seriesTypes;b(a.Axis,"afterInit",function(){this.isXAxis||(this.waterfallStacks={})});b(d,"beforeRedraw",function(){for(var a=this.axes,b=this.series,c=b.length;c--;)b[c].options.stacking&&(a.forEach(function(a){a.isXAxis||(a.waterfallStacks={})}),c=0)});q("waterfall","column",{dataLabels:{inside:!0},lineWidth:1,lineColor:"#333333",dashStyle:"Dot",borderColor:"#333333",states:{hover:{lineWidthPlus:0}}},{pointValKey:"y", showLine:!0,generatePoints:function(){var a,b,c,d;t.column.prototype.generatePoints.apply(this);c=0;for(b=this.points.length;ck.height&&(k.y+=k.height,k.height*=-1)),f.plotY=k.y=Math.round(k.y)-this.borderWidth%2/2,k.height=Math.max(Math.round(k.height),.001),f.yBottom=k.y+k.height,k.height<=p&&!f.isNull?(k.height= p,k.y-=u,f.plotY=k.y,f.minPointLengthOffset=0>f.y?-u:u):(f.isNull&&(k.width=0),f.minPointLengthOffset=0),k=f.plotY+(f.negative?k.height:0),this.chart.inverted?f.tooltipPos[0]=b.len-k:f.tooltipPos[1]=k},processData:function(a){var b=this.options,l=this.yData,d=b.data,f,k=l.length,e=b.threshold||0,v,h,q,r,g,t;for(t=h=v=q=r=0;tr.y&&!e||0=c&&a.renderRange(b)});a.legendSymbol.add(a.legendItem);a.legendItem.add(a.legendGroup);a.hideOverlappingLabels()},renderRange:function(a){var b=this.options,c=b.labels,f=this.chart.renderer, d=this.symbols,e=d.labels,l=a.center,g=Math.abs(a.radius),m=b.connectorDistance,h=c.align,n=c.style.fontSize,m=this.legend.options.rtl||"left"===h?-m:m,c=b.connectorWidth,q=this.ranges[0].radius,v=l-g-b.borderWidth/2+c/2,t,n=n/2-(this.fontMetrics.h-n)/2,p=f.styledMode;"center"===h&&(m=0,b.connectorDistance=0,a.labelStyle.align="center");h=v+b.labels.y;t=q+m+b.labels.x;d.bubbleItems.push(f.circle(q,l+((v%1?1:.5)-(c%2?0:.5)),g).attr(p?{}:a.bubbleStyle).addClass((p?"highcharts-color-"+this.options.seriesIndex+ " ":"")+"highcharts-bubble-legend-symbol "+(b.className||"")).add(this.legendSymbol));d.connectors.push(f.path(f.crispLine(["M",q,v,"L",q+m,v],b.connectorWidth)).attr(p?{}:a.connectorStyle).addClass((p?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(b.connectorClassName||"")).add(this.legendSymbol));a=f.text(this.formatLabel(a),t,h+n).attr(p?{}:a.labelStyle).addClass("highcharts-bubble-legend-labels "+(b.labels.className||"")).add(this.legendSymbol);e.push(a); a.placed=!0;a.alignAttr={x:t,y:h+n}},getMaxLabelSize:function(){var a,b;this.symbols.labels.forEach(function(c){b=c.getBBox(!0);a=a?b.width>a.width?b:a:b});return a||{}},formatLabel:function(b){var c=this.options,f=c.labels.formatter;return(c=c.labels.format)?a.format(c,b):f?f.call(b):d(b.value,1)},hideOverlappingLabels:function(){var a=this.chart,b=this.symbols;!this.options.labels.allowOverlap&&b&&(a.hideOverlappingLabels(b.labels),b.labels.forEach(function(a,c){a.newOpacity?a.newOpacity!==a.oldOpacity&& b.connectors[c].show():b.connectors[c].hide()}))},getRanges:function(){var a=this.legend.bubbleLegend,k,d=a.options.ranges,e,g=Number.MAX_VALUE,m=-Number.MAX_VALUE;a.chart.series.forEach(function(a){a.isBubble&&!a.ignoreSeries&&(e=a.zData.filter(b),e.length&&(g=t(a.options.zMin,Math.min(g,Math.max(l(e),!1===a.options.displayNegative?a.options.zThreshold:-Number.MAX_VALUE))),m=t(a.options.zMax,Math.max(m,n(e)))))});k=g===m?[{value:m}]:[{value:g},{value:(g+m)/2},{value:m,autoRanges:!0}];d.length&&d[0].radius&& k.reverse();k.forEach(function(a,b){d&&d[b]&&(k[b]=c(!1,d[b],a))});return k},predictBubbleSizes:function(){var a=this.chart,b=this.fontMetrics,c=a.legend.options,d="horizontal"===c.layout,e=d?a.legend.lastLineHeight:0,l=a.plotSizeX,g=a.plotSizeY,m=a.series[this.options.seriesIndex],a=Math.ceil(m.minPxSize),h=Math.ceil(m.maxPxSize),m=m.options.maxSize,n=Math.min(g,l);if(c.floating||!/%$/.test(m))b=h;else if(m=parseFloat(m),b=(n+e-b.h/2)*m/100/(m/100+1),d&&g-b>=l||!d&&l-b>=g)b=h;return[a,Math.ceil(b)]}, updateRanges:function(a,b){var c=this.legend.options.bubbleLegend;c.minSize=a;c.maxSize=b;c.ranges=this.getRanges()},correctSizes:function(){var a=this.legend,b=this.chart.series[this.options.seriesIndex];1c.height&&(c.height=a[l].itemHeight);c.step=e}return b};x.prototype.retranslateItems=function(a){var b,c,d,f=this.options.rtl,e=0;this.allItems.forEach(function(l,k){b=l.legendGroup.translateX;c=l._legendItemPos[1];if((d=l.movementX)||f&&l.ranges)d=f?b-l.options.maxSize/2:b+d,l.legendGroup.attr({translateX:d});k>a[e].step&&e++;l.legendGroup.attr({translateY:Math.round(c+ a[e].height/2)});l._legendItemPos[1]=c+a[e].height/2})};h(w,"legendItemClick",function(){var a=this.chart,b=this.visible,c=this.chart.legend;c&&c.bubbleLegend&&(this.visible=!b,this.ignoreSeries=b,a=0<=a.getVisibleBubbleSeriesIndex(),c.bubbleLegend.visible!==a&&(c.update({bubbleLegend:{enabled:a}}),c.bubbleLegend.visible=a),this.visible=b)});u(g.prototype,"drawChartBox",function(a,b,c){var d=this.legend,f=0<=this.getVisibleBubbleSeriesIndex(),l;d&&d.options.enabled&&d.bubbleLegend&&d.options.bubbleLegend.autoRanges&& f?(l=d.bubbleLegend.options,f=d.bubbleLegend.predictBubbleSizes(),d.bubbleLegend.updateRanges(f[0],f[1]),l.placed||(d.group.placed=!1,d.allItems.forEach(function(a){a.legendGroup.translateY=null})),d.render(),this.getMargins(),this.axes.forEach(function(a){a.render();l.placed||(a.setScale(),a.updateNames(),e(a.ticks,function(a){a.isNew=!0;a.isNewLabel=!0}))}),l.placed=!0,this.getMargins(),a.call(this,b,c),d.bubbleLegend.correctSizes(),d.retranslateItems(d.getLinesHeights())):(a.call(this,b,c),d&& d.options.enabled&&d.bubbleLegend&&(d.render(),d.retranslateItems(d.getLinesHeights())))})})(z);(function(a){var w=a.arrayMax,x=a.arrayMin,g=a.Axis,h=a.color,u=a.isNumber,p=a.noop,b=a.pick,d=a.pInt,e=a.Point,c=a.Series,q=a.seriesType,t=a.seriesTypes;q("bubble","scatter",{dataLabels:{formatter:function(){return this.point.z},inside:!0,verticalAlign:"middle"},animationLimit:250,marker:{lineColor:null,lineWidth:1,fillOpacity:.5,radius:null,states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,maxSize:"20%", softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"},{pointArrayMap:["y","z"],parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",bubblePadding:!0,zoneAxis:"z",directTouch:!0,isBubble:!0,pointAttribs:function(a,b){var d=this.options.marker.fillOpacity;a=c.prototype.pointAttribs.call(this,a,b);1!==d&&(a.fill=h(a.fill).setOpacity(d).get("rgba"));return a},getRadii:function(a, b,c){var d,f=this.zData,e=c.minPxSize,l=c.maxPxSize,m=[],g;d=0;for(c=f.length;d=this.minPxSize/2?(d.marker=a.extend(d.marker,{radius:e,width:2*e,height:2*e}),d.dlBox={x:d.plotX-e,y:d.plotY-e,width:2*e,height:2*e}):d.shapeArgs=d.plotY=d.dlBox=void 0},alignDataLabel:t.column.prototype.alignDataLabel, buildKDTree:p,applyZones:p},{haloPath:function(a){return e.prototype.haloPath.call(this,0===a?0:(this.marker?this.marker.radius||0:0)+a)},ttBelow:!1});g.prototype.beforePadding=function(){var c=this,e=this.len,g=this.chart,h=0,f=e,k=this.isXAxis,q=k?"xData":"yData",t=this.min,p={},z=Math.min(g.plotWidth,g.plotHeight),r=Number.MAX_VALUE,I=-Number.MAX_VALUE,J=this.max-t,H=e/J,D=[];this.series.forEach(function(e){var f=e.options;!e.bubblePadding||!e.visible&&g.options.chart.ignoreHiddenSeries||(c.allowZoomOutside= !0,D.push(e),k&&(["minSize","maxSize"].forEach(function(a){var b=f[a],c=/%$/.test(b),b=d(b);p[a]=c?z*b/100:b}),e.minPxSize=p.minSize,e.maxPxSize=Math.max(p.maxSize,p.minSize),e=e.zData.filter(a.isNumber),e.length&&(r=b(f.zMin,Math.min(r,Math.max(x(e),!1===f.displayNegative?f.zThreshold:-Number.MAX_VALUE))),I=b(f.zMax,Math.max(I,w(e))))))});D.forEach(function(a){var b=a[q],d=b.length,e;k&&a.getRadii(r,I,a);if(0Math.sqrt(g*g+p*p)-Math.abs(a[2]+h[2])},positionBubble:function(a,h,u){var g=Math.sqrt,b=Math.asin,d=Math.acos,e=Math.pow,c=Math.abs,g=g(e(a[0]-h[0],2)+e(a[1]-h[1],2)),d=d((e(g,2)+e(u[2]+h[2],2)-e(u[2]+a[2],2))/(2*(u[2]+h[2])*g)),b=b(c(a[0]-h[0])/g);a=(0>a[1]-h[1]?0:Math.PI)+d+b*(0>(a[0]-h[0])*(a[1]-h[1])? 1:-1);return[h[0]+(h[2]+u[2])*Math.sin(a),h[1]-(h[2]+u[2])*Math.cos(a),u[2],u[3],u[4]]},placeBubbles:function(a){var g=this.checkOverlap,u=this.positionBubble,p=[],b=1,d=0,e=0,c,q;c=a.sort(function(a,b){return b[2]-a[2]});if(!c.length)return[];if(2>c.length)return[0,0,c[0][0],c[0][1],c[0][2]];p.push([[0,0,c[0][2],c[0][3],c[0][4]]]);p.push([[0,0-c[1][2]-c[0][2],c[1][2],c[1][3],c[1][4]]]);for(q=2;qd?a.length-1+d:0;d=0>b-1?a.length-(1+g):b-1;g=b+1>a.length-1?g:b+1;h=a[d];g=a[g];m=h.plotX;h=h.plotY;l=g.plotX;n=g.plotY;g=a[b].plotX;b=a[b].plotY;m=(1.5*g+m)/2.5;h=(1.5*b+h)/2.5;l=(1.5* g+l)/2.5;f=(1.5*b+n)/2.5;n=Math.sqrt(Math.pow(m-g,2)+Math.pow(h-b,2));k=Math.sqrt(Math.pow(l-g,2)+Math.pow(f-b,2));m=Math.atan2(h-b,m-g);f=Math.PI/2+(m+Math.atan2(f-b,l-g))/2;Math.abs(m-f)>Math.PI/2&&(f-=Math.PI);m=g+Math.cos(f)*n;h=b+Math.sin(f)*n;l=g+Math.cos(Math.PI+f)*k;f=b+Math.sin(Math.PI+f)*k;g={rightContX:l,rightContY:f,leftContX:m,leftContY:h,plotX:g,plotY:b};e&&(g.prevPointCont=this.getConnectors(a,d,!1,c));return g},u.toXY=function(a){var b,e=this.chart,c=a.plotX;b=a.plotY;a.rectPlotX= c;a.rectPlotY=b;b=this.xAxis.postTranslate(a.plotX,this.yAxis.len-b);a.plotX=a.polarPlotX=b.x-e.plotLeft;a.plotY=a.polarPlotY=b.y-e.plotTop;this.kdByAngle?(e=(c/Math.PI*180+this.xAxis.pane.options.startAngle)%360,0>e&&(e+=360),a.clientX=e):a.clientX=a.plotX},g.spline&&(h(g.spline.prototype,"getPointSpline",function(a,d,e,c){this.chart.polar?c?(a=this.getConnectors(d,c,!0,this.connectEnds),a=["C",a.prevPointCont.rightContX,a.prevPointCont.rightContY,a.leftContX,a.leftContY,a.plotX,a.plotY]):a=["M", e.plotX,e.plotY]:a=a.call(this,d,e,c);return a}),g.areasplinerange&&(g.areasplinerange.prototype.getPointSpline=g.spline.prototype.getPointSpline)),a.addEvent(x,"afterTranslate",function(){var b=this.chart,d,e;if(b.polar){(this.kdByAngle=b.tooltip&&b.tooltip.shared)?this.searchPoint=this.searchPointByAngle:this.options.findNearestPointBy="xy";if(!this.preventPostTranslate)for(d=this.points,e=d.length;e--;)this.toXY(d[e]);this.hasClipCircleSetter||(this.hasClipCircleSetter=!!a.addEvent(this,"afterRender", function(){var c;b.polar&&(c=this.yAxis.center,this.group.clip(b.renderer.clipCircle(c[0],c[1],c[2]/2)),this.setClip=a.noop)}))}},{order:2}),h(u,"getGraphPath",function(a,d){var b=this,c,g,h;if(this.chart.polar){d=d||this.points;for(c=0;cb.center[1]}),h(g,"alignDataLabel",function(a,d,e,c,g,h){this.chart.polar?(a=d.rectPlotX/Math.PI*180,null===c.align&& (c.align=20a?"left":200a?"right":"center"),null===c.verticalAlign&&(c.verticalAlign=45>a||315a?"top":"middle"),u.alignDataLabel.call(this,d,e,c,g,h)):a.call(this,d,e,c,g,h)})),h(p,"getCoordinates",function(a,d){var b=this.chart,c={xAxis:[],yAxis:[]};b.polar?b.axes.forEach(function(a){var e=a.isXAxis,g=a.center,h=d.chartX-g[0]-b.plotLeft,g=d.chartY-g[1]-b.plotTop;c[e?"xAxis":"yAxis"].push({axis:a,value:a.translate(e?Math.PI-Math.atan2(h,g):Math.sqrt(Math.pow(h, 2)+Math.pow(g,2)),!0)})}):c=a.call(this,d);return c}),a.SVGRenderer.prototype.clipCircle=function(b,d,e){var c=a.uniqueKey(),g=this.createElement("clipPath").attr({id:c}).add(this.defs);b=this.circle(b,d,e).add(g);b.id=c;b.clipPath=g;return b},a.addEvent(a.Chart,"getAxes",function(){this.pane||(this.pane=[]);a.splat(this.options.pane).forEach(function(b){new a.Pane(b,this)},this)}),a.addEvent(a.Chart,"afterDrawChartBox",function(){this.pane.forEach(function(a){a.render()})}),h(a.Chart.prototype,"get", function(b,d){return a.find(this.pane,function(a){return a.options.id===d})||b.call(this,d)}))})(z)});