/* Highcharts JS v7.1.1 (2019-04-09) (c) 2009-2018 Torstein Honsi License: www.highcharts.com/license */ (function(r){"object"===typeof module&&module.exports?(r["default"]=r,module.exports=r):"function"===typeof define&&define.amd?define("highcharts/highcharts-more",["highcharts"],function(y){r(y);r.Highcharts=y;return r}):r("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(r){function y(a,p,l,e){a.hasOwnProperty(p)||(a[p]=e.apply(null,l))}r=r?r._modules:{};y(r,"parts-more/Pane.js",[r["parts/Globals.js"]],function(a){function p(b,f){this.init(b,f)}var l=a.CenteredSeriesMixin,e=a.extend, h=a.merge,b=a.splat;e(p.prototype,{coll:"pane",init:function(b,f){this.chart=f;this.background=[];f.pane.push(this);this.setOptions(b)},setOptions:function(b){this.options=h(this.defaultOptions,this.chart.angular?{background:{}}:void 0,b)},render:function(){var a=this.options,f=this.options.background,c=this.chart.renderer;this.group||(this.group=c.g("pane-group").attr({zIndex:a.zIndex||0}).add());this.updateCenter();if(f)for(f=b(f),a=Math.max(f.length,this.background.length||0),c=0;c-Math.PI/2&&a-Math.PI&&0>a||a>Math.PI?-10:10));return u},getPlotLinePath:function(d,b){var k=this,m=k.center,q=k.chart,n=k.getPosition(d),u,v,a;k.isCircular?a=["M",m[0]+q.plotLeft,m[1]+q.plotTop,"L",n.x,n.y]:"circle"===k.options.gridLineInterpolation?(d=k.translate(d),a=k.getLinePath(0,d)):(q.xAxis.forEach(function(d){d.pane===k.pane&&(u=d)}),a=[],d=k.translate(d),m=u.tickPositions,u.autoConnect&&(m=m.concat([m[0]])),b&&(m=[].concat(m).reverse()),m.forEach(function(k, m){v=u.getPosition(k,d);a.push(m?"L":"M",v.x,v.y)}));return a},getTitlePosition:function(){var d=this.center,b=this.chart,k=this.options.title;return{x:b.plotLeft+d[0]+(k.x||0),y:b.plotTop+d[1]-{high:.5,middle:.25,low:0}[k.align]*d[2]+(k.y||0)}}};p(l,"init",function(b){var q=this,k=this.chart,m=k.angular,n=k.polar,u=this.isXAxis,a=m&&u,c,f=k.options;b=b.userOptions.pane||0;b=this.pane=k.pane&&k.pane[b];if(m){if(e(this,a?x:d),c=!u)this.defaultRadialOptions=this.defaultRadialGaugeOptions}else n&&(e(this, d),this.defaultRadialOptions=(c=u)?this.defaultRadialXOptions:h(this.defaultYAxisOptions,this.defaultRadialYOptions));m||n?(this.isRadial=!0,k.inverted=!1,f.chart.zoomType=null,k.labelCollectors.push(function(){if(q.isRadial&&q.tickPositions&&!0!==q.options.labels.allowOverlap)return q.tickPositions.map(function(d){return q.ticks[d]&&q.ticks[d].label}).filter(function(d){return!!d})})):this.isRadial=!1;b&&c&&(b.axis=this);this.isCircular=c});p(l,"afterInit",function(){var d=this.chart,b=this.options, k=this.pane,m=k&&k.options;d.angular&&this.isXAxis||!k||!d.angular&&!d.polar||(this.angleRad=(b.angle||0)*Math.PI/180,this.startAngleRad=(m.startAngle-90)*Math.PI/180,this.endAngleRad=(g(m.endAngle,m.startAngle+360)-90)*Math.PI/180,this.offset=b.offset||0)});p(l,"autoLabelAlign",function(d){this.isRadial&&(d.align=void 0,d.preventDefault())});p(c,"afterGetPosition",function(d){this.axis.getPosition&&e(d.pos,this.axis.getPosition(this.pos))});p(c,"afterGetLabelPosition",function(d){var b=this.axis, k=this.label,m=b.options.labels,q=m.y,n,u=20,a=m.align,c=(b.translate(this.pos)+b.startAngleRad+Math.PI/2)/Math.PI*180%360;b.isRadial&&(n=b.getPosition(this.pos,b.center[2]/2+g(m.distance,-25)),"auto"===m.rotation?k.attr({rotation:c}):null===q&&(q=b.chart.renderer.fontMetrics(k.styles&&k.styles.fontSize).b-k.getBBox().height/2),null===a&&(b.isCircular?(this.label.getBBox().width>b.len*b.tickInterval/(b.max-b.min)&&(u=0),a=c>u&&c<180-u?"left":c>180+u&&c<360-u?"right":"center"):a="center",k.attr({align:a})), d.pos.x=n.x+m.x,d.pos.y=n.y+q)});t(n,"getMarkPath",function(d,b,k,m,q,n,a){var u=this.axis;u.isRadial?(d=u.getPosition(this.pos,u.center[2]/2+m),b=["M",b,k,"L",d.x,d.y]):b=d.call(this,b,k,m,q,n,a);return b})});y(r,"parts-more/AreaRangeSeries.js",[r["parts/Globals.js"]],function(a){var p=a.pick,l=a.extend,e=a.isArray,h=a.defined,b=a.seriesType,g=a.seriesTypes,f=a.Series.prototype,c=a.Point.prototype;b("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(b){return[b.low,b.high]},pointValKey:"low",deferTranslatePolar:!0,highToXY:function(b){var a=this.chart,c=this.xAxis.postTranslate(b.rectPlotX,this.yAxis.len-b.plotHigh);b.plotHighX=c.x-a.plotLeft;b.plotHigh=c.y-a.plotTop;b.plotLowX=b.plotX},translate:function(){var b=this,a=b.yAxis,c=!!b.modifyValue;g.area.prototype.translate.apply(b);b.points.forEach(function(d){var q= d.low,n=d.high,u=d.plotY;null===n||null===q?(d.isNull=!0,d.plotY=null):(d.plotLow=u,d.plotHigh=a.translate(c?b.modifyValue(n,d):n,0,1,0,1),c&&(d.yBottom=d.plotHigh))});this.chart.polar&&this.points.forEach(function(d){b.highToXY(d);d.tooltipPos=[(d.plotHighX+d.plotLowX)/2,(d.plotHigh+d.plotLow)/2]})},getGraphPath:function(b){var a=[],c=[],d,q=g.area.prototype.getGraphPath,n,u,v;v=this.options;var k=this.chart.polar&&!1!==v.connectEnds,m=v.connectNulls,f=v.step;b=b||this.points;for(d=b.length;d--;)n= b[d],n.isNull||k||m||b[d+1]&&!b[d+1].isNull||c.push({plotX:n.plotX,plotY:n.plotY,doCurve:!1}),u={polarPlotY:n.polarPlotY,rectPlotX:n.rectPlotX,yBottom:n.yBottom,plotX:p(n.plotHighX,n.plotX),plotY:n.plotHigh,isNull:n.isNull},c.push(u),a.push(u),n.isNull||k||m||b[d-1]&&!b[d-1].isNull||c.push({plotX:n.plotX,plotY:n.plotY,doCurve:!1});b=q.call(this,b);f&&(!0===f&&(f="left"),v.step={left:"right",center:"center",right:"left"}[f]);a=q.call(this,a);c=q.call(this,c);v.step=f;v=[].concat(b,a);this.chart.polar|| "M"!==c[0]||(c[0]="L");this.graphPath=v;this.areaPath=b.concat(c);v.isArea=!0;v.xMap=b.xMap;this.areaPath.xMap=b.xMap;return v},drawDataLabels:function(){var b=this.points,a=b.length,c,d=[],q=this.options.dataLabels,n,u,v=this.chart.inverted,k,m;e(q)?1n.plotLow,n.y=n.high,n._plotY= n.plotY,n.plotY=n.plotHigh,d[c]=n.dataLabel,n.dataLabel=n.dataLabelUpper,n.below=u,v?k.align||(k.align=u?"right":"left"):k.verticalAlign||(k.verticalAlign=u?"top":"bottom");this.options.dataLabels=k;f.drawDataLabels&&f.drawDataLabels.apply(this,arguments);for(c=a;c--;)if(n=b[c])n.dataLabelUpper=n.dataLabel,n.dataLabel=d[c],delete n.dataLabels,n.y=n.low,n.plotY=n._plotY}if(m.enabled||this._hasPointLabels){for(c=a;c--;)if(n=b[c])u=m.inside?n.plotHighn.plotLow,n.below=!u,v?m.align|| (m.align=u?"left":"right"):m.verticalAlign||(m.verticalAlign=u?"bottom":"top");this.options.dataLabels=m;f.drawDataLabels&&f.drawDataLabels.apply(this,arguments)}if(k.enabled)for(c=a;c--;)if(n=b[c])n.dataLabels=[n.dataLabelUpper,n.dataLabel].filter(function(d){return!!d});this.options.dataLabels=q},alignDataLabel:function(){g.column.prototype.alignDataLabel.apply(this,arguments)},drawPoints:function(){var b=this.points.length,c,e;f.drawPoints.apply(this,arguments);for(e=0;ef&&(f*=-1,g-=f);q?(p=v.barX+e,v.shapeType="path",v.shapeArgs={d:b.polarArc(g+f,g,p,p+v.pointWidth)}):(k.height=f,k.y=g,v.tooltipPos=d.inverted?[c.len+c.pos-d.plotLeft-g-f/2,a.len+a.pos-d.plotTop-k.x-k.width/2,f]:[a.left-d.plotLeft+k.x+k.width/2,c.pos-d.plotTop+g+f/2,f])})},directTouch:!0,trackerGroups:["group", "dataLabelsGroup"],drawGraph:e,getSymbol:e,crispCol:function(){return g.crispCol.apply(this,arguments)},drawPoints:function(){return g.drawPoints.apply(this,arguments)},drawTracker:function(){return g.drawTracker.apply(this,arguments)},getColumnMetrics:function(){return g.getColumnMetrics.apply(this,arguments)},pointAttribs:function(){return g.pointAttribs.apply(this,arguments)},animate:function(){return g.animate.apply(this,arguments)},polarArc:function(){return g.polarArc.apply(this,arguments)}, translate3dPoints:function(){return g.translate3dPoints.apply(this,arguments)},translate3dShapes:function(){return g.translate3dShapes.apply(this,arguments)}},{setState:g.pointClass.prototype.setState})});y(r,"parts-more/ColumnPyramidSeries.js",[r["parts/Globals.js"]],function(a){var p=a.pick,l=a.seriesType,e=a.seriesTypes.column.prototype;l("columnpyramid","column",{},{translate:function(){var a=this,b=a.chart,g=a.options,f=a.dense=2>a.closestPointRange*a.xAxis.transA,f=a.borderWidth=p(g.borderWidth, f?0:1),c=a.yAxis,l=g.threshold,w=a.translatedThreshold=c.getThreshold(l),x=p(g.minPointLength,5),d=a.getColumnMetrics(),q=d.width,n=a.barW=Math.max(q,1+2*f),u=a.pointXOffset=d.offset;b.inverted&&(w-=.5);g.pointPadding&&(n=Math.ceil(n));e.translate.apply(a);a.points.forEach(function(d){var k=p(d.yBottom,w),m=999+Math.abs(k),f=Math.min(Math.max(-m,d.plotY),c.len+m),m=d.plotX+u,e=n/2,v=Math.min(f,k),k=Math.max(f,k)-v,h,B,t,z,r,C;d.barX=m;d.pointWidth=q;d.tooltipPos=b.inverted?[c.len+c.pos-b.plotLeft- f,a.xAxis.len-m-e,k]:[m+e,f+c.pos-b.plotTop,k];f=l+(d.total||d.y);"percent"===g.stacking&&(f=l+(0>d.y)?-100:100);f=c.toPixels(f,!0);h=b.plotHeight-f-(b.plotHeight-w);B=e*(v-f)/h;t=e*(v+k-f)/h;h=m-B+e;B=m+B+e;z=m+t+e;t=m-t+e;r=v-x;C=v+k;0>d.y&&(r=v,C=v+k+x);b.inverted&&(z=b.plotWidth-v,h=f-(b.plotWidth-w),B=e*(f-z)/h,t=e*(f-(z-k))/h,h=m+e+B,B=h-2*B,z=m-t+e,t=m+t+e,r=v,C=v+k-x,0>d.y&&(C=v+k+x));d.shapeType="path";d.shapeArgs={x:h,y:r,width:B-h,height:k,d:["M",h,r,"L",B,r,z,C,t,C,"Z"]}})}})});y(r,"parts-more/GaugeSeries.js", [r["parts/Globals.js"]],function(a){var p=a.isNumber,l=a.merge,e=a.pick,h=a.pInt,b=a.Series,g=a.seriesType,f=a.TrackerMixin;g("gauge","line",{dataLabels:{borderColor:"#cccccc",borderRadius:3,borderWidth:1,crop:!1,defer:!1,enabled:!0,verticalAlign:"top",y:15,zIndex:2},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 b=this.yAxis,a=this.options, f=b.center;this.generatePoints();this.points.forEach(function(c){var d=l(a.dial,c.dial),q=h(e(d.radius,80))*f[2]/200,n=h(e(d.baseLength,70))*q/100,u=h(e(d.rearLength,10))*q/100,v=d.baseWidth||3,k=d.topWidth||1,m=a.overshoot,g=b.startAngleRad+b.translate(c.y,null,null,null,!0);p(m)?(m=m/180*Math.PI,g=Math.max(b.startAngleRad-m,Math.min(b.endAngleRad+m,g))):!1===a.wrap&&(g=Math.max(b.startAngleRad,Math.min(b.endAngleRad,g)));g=180*g/Math.PI;c.shapeType="path";c.shapeArgs={d:d.path||["M",-u,-v/2,"L", n,-v/2,q,-k/2,q,k/2,n,v/2,-u,v/2,"z"],translateX:f[0],translateY:f[1],rotation:g};c.plotX=f[0];c.plotY=f[1]})},drawPoints:function(){var b=this,a=b.chart,f=b.yAxis.center,g=b.pivot,d=b.options,q=d.pivot,n=a.renderer;b.points.forEach(function(q){var c=q.graphic,k=q.shapeArgs,m=k.d,f=l(d.dial,q.dial);c?(c.animate(k),k.d=m):(q.graphic=n[q.shapeType](k).attr({rotation:k.rotation,zIndex:1}).addClass("highcharts-dial").add(b.group),a.styledMode||q.graphic.attr({stroke:f.borderColor||"none","stroke-width":f.borderWidth|| 0,fill:f.backgroundColor||"#000000"}))});g?g.animate({translateX:f[0],translateY:f[1]}):(b.pivot=n.circle(0,0,e(q.radius,5)).attr({zIndex:2}).addClass("highcharts-pivot").translate(f[0],f[1]).add(b.group),a.styledMode||b.pivot.attr({"stroke-width":q.borderWidth||0,stroke:q.borderColor||"#cccccc",fill:q.backgroundColor||"#000000"}))},animate:function(b){var a=this;b||(a.points.forEach(function(b){var c=b.graphic;c&&(c.attr({rotation:180*a.yAxis.startAngleRad/Math.PI}),c.animate({rotation:b.shapeArgs.rotation}, a.options.animation))}),a.animate=null)},render:function(){this.group=this.plotGroup("group","series",this.visible?"visible":"hidden",this.options.zIndex,this.chart.seriesGroup);b.prototype.render.call(this);this.group.clip(this.chart.clipRect)},setData:function(a,f){b.prototype.setData.call(this,a,!1);this.processData();this.generatePoints();e(f,!0)&&this.chart.redraw()},hasData:function(){return!!this.points.length},drawTracker:f&&f.drawTrackerPoint},{setState:function(b){this.state=b}})});y(r, "parts-more/BoxPlotSeries.js",[r["parts/Globals.js"]],function(a){var p=a.noop,l=a.pick,e=a.seriesType,h=a.seriesTypes;e("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(b){return[b.low,b.q1,b.median,b.q3,b.high]},pointValKey:"high",pointAttribs:function(){return{}},drawDataLabels:p,translate:function(){var b=this.yAxis,a=this.pointArrayMap;h.column.prototype.translate.apply(this);this.points.forEach(function(f){a.forEach(function(a){null!==f[a]&&(f[a+"Plot"]=b.translate(f[a],0,1,0,1))})})},drawPoints:function(){var b=this,a=b.options,f=b.chart,c=f.renderer,e,h,p,d,q,n, u=0,v,k,m,I,E=!1!==b.doQuartiles,F,D=b.options.whiskerLength;b.points.forEach(function(g){var t=g.graphic,B=t?"animate":"attr",w=g.shapeArgs,x={},r={},A={},y={},G=g.color||b.color;void 0!==g.plotY&&(v=w.width,k=Math.floor(w.x),m=k+v,I=Math.round(v/2),e=Math.floor(E?g.q1Plot:g.lowPlot),h=Math.floor(E?g.q3Plot:g.lowPlot),p=Math.floor(g.highPlot),d=Math.floor(g.lowPlot),t||(g.graphic=t=c.g("point").add(b.group),g.stem=c.path().addClass("highcharts-boxplot-stem").add(t),D&&(g.whiskers=c.path().addClass("highcharts-boxplot-whisker").add(t)), E&&(g.box=c.path(void 0).addClass("highcharts-boxplot-box").add(t)),g.medianShape=c.path(void 0).addClass("highcharts-boxplot-median").add(t)),f.styledMode||(r.stroke=g.stemColor||a.stemColor||G,r["stroke-width"]=l(g.stemWidth,a.stemWidth,a.lineWidth),r.dashstyle=g.stemDashStyle||a.stemDashStyle,g.stem.attr(r),D&&(A.stroke=g.whiskerColor||a.whiskerColor||G,A["stroke-width"]=l(g.whiskerWidth,a.whiskerWidth,a.lineWidth),g.whiskers.attr(A)),E&&(x.fill=g.fillColor||a.fillColor||G,x.stroke=a.lineColor|| G,x["stroke-width"]=a.lineWidth||0,g.box.attr(x)),y.stroke=g.medianColor||a.medianColor||G,y["stroke-width"]=l(g.medianWidth,a.medianWidth,a.lineWidth),g.medianShape.attr(y)),n=g.stem.strokeWidth()%2/2,u=k+I+n,g.stem[B]({d:["M",u,h,"L",u,p,"M",u,e,"L",u,d]}),E&&(n=g.box.strokeWidth()%2/2,e=Math.floor(e)+n,h=Math.floor(h)+n,k+=n,m+=n,g.box[B]({d:["M",k,h,"L",k,e,"L",m,e,"L",m,h,"L",k,h,"z"]})),D&&(n=g.whiskers.strokeWidth()%2/2,p+=n,d+=n,F=/%$/.test(D)?I*parseFloat(D)/100:D/2,g.whiskers[B]({d:["M", u-F,p,"L",u+F,p,"M",u-F,d,"L",u+F,d]})),q=Math.round(g.medianPlot),n=g.medianShape.strokeWidth()%2/2,q+=n,g.medianShape[B]({d:["M",k,q,"L",m,q]}))})},setStackedPoints:p})});y(r,"parts-more/ErrorBarSeries.js",[r["parts/Globals.js"]],function(a){var p=a.noop,l=a.seriesType,e=a.seriesTypes;l("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:e.arearange?function(){var a=this.pointValKey;e.arearange.prototype.drawDataLabels.call(this);this.data.forEach(function(b){b.y=b[a]})}:p,getColumnMetrics:function(){return this.linkedParent&&this.linkedParent.columnMetrics||e.column.prototype.getColumnMetrics.call(this)}})});y(r,"parts-more/WaterfallSeries.js",[r["parts/Globals.js"]],function(a){var p= a.correctFloat,l=a.isNumber,e=a.pick,h=a.objectEach,b=a.arrayMin,g=a.arrayMax,f=a.addEvent,c=a.Chart,t=a.Point,w=a.Series,x=a.seriesType,d=a.seriesTypes;f(a.Axis,"afterInit",function(){this.isXAxis||(this.waterfallStacks={})});f(c,"beforeRedraw",function(){for(var b=this.axes,d=this.series,a=d.length;a--;)d[a].options.stacking&&(b.forEach(function(b){b.isXAxis||(b.waterfallStacks={})}),a=0)});x("waterfall","column",{dataLabels:{inside:!0},lineWidth:1,lineColor:"#333333",dashStyle:"Dot",borderColor:"#333333", states:{hover:{lineWidthPlus:0}}},{pointValKey:"y",showLine:!0,generatePoints:function(){var b,a,c,f;d.column.prototype.generatePoints.apply(this);c=0;for(a=this.points.length;cm.height&&(m.y+=m.height,m.height*=-1)),k.plotY=m.y=Math.round(m.y)-this.borderWidth%2/2,m.height=Math.max(Math.round(m.height), .001),k.yBottom=m.y+m.height,m.height<=w&&!k.isNull?(m.height=w,m.y-=x,k.plotY=m.y,k.minPointLengthOffset=0>k.y?-x:x):(k.isNull&&(m.width=0),k.minPointLengthOffset=0),m=k.plotY+(k.negative?m.height:0),this.chart.inverted?k.tooltipPos[0]=a.len-m:k.tooltipPos[1]=m},processData:function(b){var d=this.options,a=this.yData,c=d.data,k,m=a.length,q=d.threshold||0,f,g,e,h,t,l;for(l=g=f=e=h=0;lp.y&&!f||0=d&&this.renderRange(b)},this);this.legendSymbol.add(this.legendItem);this.legendItem.add(this.legendGroup);this.hideOverlappingLabels()},renderRange:function(b){var d=this.options,a=d.labels,c=this.chart.renderer,k=this.symbols,f=k.labels,e=b.center,q=Math.abs(b.radius),g=d.connectorDistance,n=a.align,u=a.style.fontSize,g=this.legend.options.rtl||"left"===n?-g:g,a=d.connectorWidth,h=this.ranges[0].radius,p=e-q-d.borderWidth/2+a/2,v,u=u/2-(this.fontMetrics.h- u)/2,l=c.styledMode;"center"===n&&(g=0,d.connectorDistance=0,b.labelStyle.align="center");n=p+d.labels.y;v=h+g+d.labels.x;k.bubbleItems.push(c.circle(h,e+((p%1?1:.5)-(a%2?0:.5)),q).attr(l?{}:b.bubbleStyle).addClass((l?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-symbol "+(d.className||"")).add(this.legendSymbol));k.connectors.push(c.path(c.crispLine(["M",h,p,"L",h+g,p],d.connectorWidth)).attr(l?{}:b.connectorStyle).addClass((l?"highcharts-color-"+this.options.seriesIndex+ " ":"")+"highcharts-bubble-legend-connectors "+(d.connectorClassName||"")).add(this.legendSymbol));b=c.text(this.formatLabel(b),v,n+u).attr(l?{}:b.labelStyle).addClass("highcharts-bubble-legend-labels "+(d.labels.className||"")).add(this.legendSymbol);f.push(b);b.placed=!0;b.alignAttr={x:v,y:n+u}},getMaxLabelSize:function(){var b,d;this.symbols.labels.forEach(function(a){d=a.getBBox(!0);b=b?d.width>b.width?d:b:d});return b||{}},formatLabel:function(b){var d=this.options,k=d.labels.formatter;return(d= d.labels.format)?a.format(d,b):k?k.call(b):c(b.value,1)},hideOverlappingLabels:function(){var b=this.chart,d=this.symbols;!this.options.labels.allowOverlap&&d&&(b.hideOverlappingLabels(d.labels),d.labels.forEach(function(b,a){b.newOpacity?b.newOpacity!==b.oldOpacity&&d.connectors[a].show():d.connectors[a].hide()}))},getRanges:function(){var b=this.legend.bubbleLegend,a,c=b.options.ranges,e,q=Number.MAX_VALUE,g=-Number.MAX_VALUE;b.chart.series.forEach(function(b){b.isBubble&&!b.ignoreSeries&&(e=b.zData.filter(f), e.length&&(q=d(b.options.zMin,Math.min(q,Math.max(u(e),!1===b.options.displayNegative?b.options.zThreshold:-Number.MAX_VALUE))),g=d(b.options.zMax,Math.max(g,v(e)))))});a=q===g?[{value:g}]:[{value:q},{value:(q+g)/2},{value:g,autoRanges:!0}];c.length&&c[0].radius&&a.reverse();a.forEach(function(b,d){c&&c[d]&&(a[d]=w(!1,c[d],b))});return a},predictBubbleSizes:function(){var b=this.chart,d=this.fontMetrics,a=b.legend.options,c="horizontal"===a.layout,f=c?b.legend.lastLineHeight:0,e=b.plotSizeX,q=b.plotSizeY, g=b.series[this.options.seriesIndex],b=Math.ceil(g.minPxSize),n=Math.ceil(g.maxPxSize),g=g.options.maxSize,u=Math.min(q,e);if(a.floating||!/%$/.test(g))d=n;else if(g=parseFloat(g),d=(u+f-d.h/2)*g/100/(g/100+1),c&&q-d>=e||!c&&e-d>=q)d=n;return[b,Math.ceil(d)]},updateRanges:function(b,d){var a=this.legend.options.bubbleLegend;a.minSize=b;a.maxSize=d;a.ranges=this.getRanges()},correctSizes:function(){var b=this.legend,d=this.chart.series[this.options.seriesIndex];1a.height&&(a.height=b[e].itemHeight);a.step=f}return d};l.prototype.retranslateItems=function(b){var d, a,c,f=this.options.rtl,e=0;this.allItems.forEach(function(k,g){d=k.legendGroup.translateX;a=k._legendItemPos[1];if((c=k.movementX)||f&&k.ranges)c=f?d-k.options.maxSize/2:d+c,k.legendGroup.attr({translateX:c});g>b[e].step&&e++;k.legendGroup.attr({translateY:Math.round(a+b[e].height/2)});k._legendItemPos[1]=a+b[e].height/2})};h(p,"legendItemClick",function(){var b=this.chart,d=this.visible,a=this.chart.legend;a&&a.bubbleLegend&&(this.visible=!d,this.ignoreSeries=d,b=0<=b.getVisibleBubbleSeriesIndex(), a.bubbleLegend.visible!==b&&(a.update({bubbleLegend:{enabled:b}}),a.bubbleLegend.visible=b),this.visible=d)});b(e.prototype,"drawChartBox",function(b,d,a){var c=this.legend,f=0<=this.getVisibleBubbleSeriesIndex(),e;c&&c.options.enabled&&c.bubbleLegend&&c.options.bubbleLegend.autoRanges&&f?(e=c.bubbleLegend.options,f=c.bubbleLegend.predictBubbleSizes(),c.bubbleLegend.updateRanges(f[0],f[1]),e.placed||(c.group.placed=!1,c.allItems.forEach(function(b){b.legendGroup.translateY=null})),c.render(),this.getMargins(), this.axes.forEach(function(b){b.render();e.placed||(b.setScale(),b.updateNames(),t(b.ticks,function(b){b.isNew=!0;b.isNewLabel=!0}))}),e.placed=!0,this.getMargins(),b.call(this,d,a),c.bubbleLegend.correctSizes(),c.retranslateItems(c.getLinesHeights())):(b.call(this,d,a),c&&c.options.enabled&&c.bubbleLegend&&(c.render(),c.retranslateItems(c.getLinesHeights())))})});y(r,"parts-more/BubbleSeries.js",[r["parts/Globals.js"]],function(a){var p=a.arrayMax,l=a.arrayMin,e=a.Axis,h=a.color,b=a.isNumber,g=a.noop, f=a.pick,c=a.pInt,t=a.Point,w=a.Series,x=a.seriesType,d=a.seriesTypes;x("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(b,d){var a=this.options.marker.fillOpacity;b=w.prototype.pointAttribs.call(this,b,d);1!==a&&(b.fill=h(b.fill).setOpacity(a).get("rgba"));return b},getRadii:function(b,d,a){var c,f=this.zData,e=a.minPxSize,g=a.maxPxSize,q=[],n;c=0;for(a=f.length;c=this.minPxSize/2?(e.marker=a.extend(e.marker,{radius:g,width:2*g,height:2*g}),e.dlBox={x:e.plotX-g,y:e.plotY-g,width:2*g,height:2*g}):e.shapeArgs=e.plotY=e.dlBox=void 0},alignDataLabel:d.column.prototype.alignDataLabel,buildKDTree:g,applyZones:g},{haloPath:function(b){return t.prototype.haloPath.call(this, 0===b?0:(this.marker?this.marker.radius||0:0)+b)},ttBelow:!1});e.prototype.beforePadding=function(){var d=this,e=this.len,g=this.chart,h=0,k=e,m=this.isXAxis,t=m?"xData":"yData",w=this.min,x={},r=Math.min(g.plotWidth,g.plotHeight),B=Number.MAX_VALUE,y=-Number.MAX_VALUE,z=this.max-w,H=e/z,C=[];this.series.forEach(function(b){var e=b.options;!b.bubblePadding||!b.visible&&g.options.chart.ignoreHiddenSeries||(d.allowZoomOutside=!0,C.push(b),m&&(["minSize","maxSize"].forEach(function(b){var d=e[b],a=/%$/.test(d), d=c(d);x[b]=a?r*d/100:d}),b.minPxSize=x.minSize,b.maxPxSize=Math.max(x.maxSize,x.minSize),b=b.zData.filter(a.isNumber),b.length&&(B=f(e.zMin,Math.min(B,Math.max(l(b),!1===e.displayNegative?e.zThreshold:-Number.MAX_VALUE))),y=f(e.zMax,Math.max(y,p(b))))))});C.forEach(function(a){var c=a[t],e=c.length,f;m&&a.getRadii(B,y,a);if(0a?1:0)},barycenter:function(){var a=this.options.gravitationalConstant,l=this.barycenter.xFactor,e=this.barycenter.yFactor,l=(l-(this.box.left+ this.box.width)/2)*a,e=(e-(this.box.top+this.box.height)/2)*a;this.nodes.forEach(function(a){a.fixedPosition||(a.plotX-=l/a.mass/a.degree,a.plotY-=e/a.mass/a.degree)})},repulsive:function(a,l,e){l=l*this.diffTemperature/a.mass/a.degree;a.fixedPosition||(a.plotX+=e.x*l,a.plotY+=e.y*l)},attractive:function(a,l,e){var h=a.getMass(),b=-e.x*l*this.diffTemperature;l=-e.y*l*this.diffTemperature;a.fromNode.fixedPosition||(a.fromNode.plotX-=b*h.fromNode/a.fromNode.degree,a.fromNode.plotY-=l*h.fromNode/a.fromNode.degree); a.toNode.fixedPosition||(a.toNode.plotX+=b*h.toNode/a.toNode.degree,a.toNode.plotY+=l*h.toNode/a.toNode.degree)},integrate:function(a,l){var e=-a.options.friction,h=a.options.maxSpeed,b=(l.plotX+l.dispX-l.prevX)*e,e=(l.plotY+l.dispY-l.prevY)*e,g=Math.abs,f=g(b)/(b||1),g=g(e)/(e||1),b=f*Math.min(h,Math.abs(b)),e=g*Math.min(h,Math.abs(e));l.prevX=l.plotX+l.dispX;l.prevY=l.plotY+l.dispY;l.plotX+=b;l.plotY+=e;l.temperature=a.vectorLength({x:b,y:e})},getK:function(a){return Math.pow(a.box.width*a.box.height/ a.nodes.length,.5)}},euler:{attractiveForceFunction:function(a,l){return a*a/l},repulsiveForceFunction:function(a,l){return l*l/a},barycenter:function(){var a=this.options.gravitationalConstant,l=this.barycenter.xFactor,e=this.barycenter.yFactor;this.nodes.forEach(function(h){if(!h.fixedPosition){var b=h.getDegree(),b=b*(1+b/2);h.dispX+=(l-h.plotX)*a*b/h.degree;h.dispY+=(e-h.plotY)*a*b/h.degree}})},repulsive:function(a,l,e,h){a.dispX+=e.x/h*l/a.degree;a.dispY+=e.y/h*l/a.degree},attractive:function(a, l,e,h){var b=a.getMass(),g=e.x/h*l;l*=e.y/h;a.fromNode.fixedPosition||(a.fromNode.dispX-=g*b.fromNode/a.fromNode.degree,a.fromNode.dispY-=l*b.fromNode/a.fromNode.degree);a.toNode.fixedPosition||(a.toNode.dispX+=g*b.toNode/a.toNode.degree,a.toNode.dispY+=l*b.toNode/a.toNode.degree)},integrate:function(a,l){var e;l.dispX+=l.dispX*a.options.friction;l.dispY+=l.dispY*a.options.friction;e=l.temperature=a.vectorLength({x:l.dispX,y:l.dispY});0!==e&&(l.plotX+=l.dispX/e*Math.min(Math.abs(l.dispX),a.temperature), l.plotY+=l.dispY/e*Math.min(Math.abs(l.dispY),a.temperature))},getK:function(a){return Math.pow(a.box.width*a.box.height/a.nodes.length,.3)}}}});y(r,"modules/networkgraph/QuadTree.js",[r["parts/Globals.js"]],function(a){var p=a.QuadTreeNode=function(a){this.box=a;this.boxSize=Math.min(a.width,a.height);this.nodes=[];this.body=this.isInternal=!1;this.isEmpty=!0};a.extend(p.prototype,{insert:function(a,h){this.isInternal?this.nodes[this.getBoxPosition(a)].insert(a,h-1):(this.isEmpty=!1,this.body?h? (this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,h-1),this.body=!0),this.nodes[this.getBoxPosition(a)].insert(a,h-1)):this.nodes.push(a):(this.isInternal=!1,this.body=a))},updateMassAndCenter:function(){var a=0,h=0,b=0;this.isInternal?(this.nodes.forEach(function(e){e.isEmpty||(a+=e.mass,h+=e.plotX*e.mass,b+=e.plotY*e.mass)}),h/=a,b/=a):this.body&&(a=this.body.mass,h=this.body.plotX,b=this.body.plotY);this.mass=a;this.plotX=h;this.plotY= b},divideBox:function(){var a=this.box.width/2,h=this.box.height/2;this.nodes[0]=new p({left:this.box.left,top:this.box.top,width:a,height:h});this.nodes[1]=new p({left:this.box.left+a,top:this.box.top,width:a,height:h});this.nodes[2]=new p({left:this.box.left+a,top:this.box.top+h,width:a,height:h});this.nodes[3]=new p({left:this.box.left,top:this.box.top+h,width:a,height:h})},getBoxPosition:function(a){var e=a.plotYMath.abs(this.systemTemperature-this.prevSystemTemperature)||0>=this.temperature},getSystemTemperature:function(){return this.nodes.reduce(function(a,e){return a+e.temperature},0)},vectorLength:function(a){return Math.sqrt(a.x*a.x+a.y*a.y)}, getDistR:function(a,e){a=this.getDistXY(a,e);return this.vectorLength(a)},getDistXY:function(a,e){var b=a.plotX-e.plotX;a=a.plotY-e.plotY;return{x:b,y:a,absX:Math.abs(b),absY:Math.abs(a)}}});e(h,"predraw",function(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(function(a){a.stop()})});e(h,"render",function(){function b(a){a.maxIterations--&&isFinite(a.temperature)&&!a.isStable()&&!a.options.enableSimulation&&(a.beforeStep&&a.beforeStep(),a.step(),e=!1,f=!0)}var e,f=!1;if(this.graphLayoutsLookup){a.setAnimation(!1, this);for(this.graphLayoutsLookup.forEach(function(a){a.start()});!e;)e=!0,this.graphLayoutsLookup.forEach(b);f&&this.series.forEach(function(a){a&&a.layout&&a.render()})}})});y(r,"modules/networkgraph/draggable-nodes.js",[r["parts/Globals.js"]],function(a){var p=a.Chart,l=a.addEvent;a.dragNodesMixin={onMouseDown:function(a,h){h=this.chart.pointer.normalize(h);a.fixedPosition={chartX:h.chartX,chartY:h.chartY,plotX:a.plotX,plotY:a.plotY};a.inDragMode=!0},onMouseMove:function(a,h){if(a.fixedPosition&& a.inDragMode){var b=this.chart,e=b.pointer.normalize(h);h=a.fixedPosition.chartX-e.chartX;e=a.fixedPosition.chartY-e.chartY;if(5c&&(d.degree+=.01,d.neighbours++,b=a.repulsiveForce(-c/Math.sqrt(d.neighbours),a.k,d,k)),a.force("repulsive",d,b*k.mass,f,k,c))})})},applyLimitBox:function(a){var b,d;this.options.splitSeries&&!a.isParentNode&&this.options.parentNodeLimit&&(b=this.getDistXY(a,a.series.parentNode),d=a.series.parentNodeRadius-a.marker.radius-this.vectorLength(b),0>d&&d>-2*a.marker.radius&&(a.plotX-=.01*b.x,a.plotY-=.01*b.y));t.prototype.applyLimitBox.apply(this,arguments)},isStable:function(){return.00001> Math.abs(this.systemTemperature-this.prevSystemTemperature)||0>=this.temperature||0this.systemTemperature/this.nodes.length}});p("packedbubble","bubble",{minSize:"10%",maxSize:"50%",sizeBy:"area",zoneAxis:"y",tooltip:{pointFormat:"Value: {point.value}"},draggable:!0,useSimulation:!0,dataLabels:{formatter:function(){return this.point.value},parentNodeFormatter:function(){return this.name},parentNodeTextPath:{enabled:!0},padding:0},layoutAlgorithm:{initialPositions:"circle", initialPositionRadius:20,bubblePadding:5,parentNodeLimit:!1,seriesInteraction:!0,dragBetweenSeries:!1,parentNodeOptions:{maxIterations:400,gravitationalConstant:.03,maxSpeed:50,initialPositionRadius:100,seriesInteraction:!0,marker:{fillColor:null,fillOpacity:1,lineWidth:1,lineColor:null,symbol:"circle"}},enableSimulation:!0,type:"packedbubble",integration:"packedbubble",maxIterations:1E3,splitSeries:!1,maxSpeed:5,gravitationalConstant:.01,friction:-.981}},{hasDraggableNodes:!0,forces:["barycenter", "repulsive"],pointArrayMap:["value"],pointValKey:"value",isCartesian:!1,axisTypes:[],noSharedTooltip:!0,accumulateAllPoints:function(a){var b=a.chart,d=[],c,f;for(c=0;cMath.sqrt(d*d+c*c)-Math.abs(a[2]+b[2])},positionBubble:function(a,b,c){var d= Math.sqrt,f=Math.asin,e=Math.acos,g=Math.pow,h=Math.abs,d=d(g(a[0]-b[0],2)+g(a[1]-b[1],2)),e=e((g(d,2)+g(c[2]+b[2],2)-g(c[2]+a[2],2))/(2*(c[2]+b[2])*d)),f=f(h(a[0]-b[0])/d);a=(0>a[1]-b[1]?0:Math.PI)+e+f*(0>(a[0]-b[0])*(a[1]-b[1])?1:-1);return[b[0]+(b[2]+c[2])*Math.sin(a),b[1]-(b[2]+c[2])*Math.cos(a),c[2],c[3],c[4]]},placeBubbles:function(a){var b=this.checkOverlap,d=this.positionBubble,c=[],f=1,e=0,g=0,h;h=[];var l;a=a.sort(function(a,b){return b[2]-a[2]});if(1===a.length)h=[0,0,a[0][0],a[0][1],a[0][2]]; else if(a.length){c.push([[0,0,a[0][2],a[0][3],a[0][4]]]);c.push([[0,0-a[1][2]-a[0][2],a[1][2],a[1][3],a[1][4]]]);for(l=2;le&&(e=b),bd&&(e.series.addPoint(a.merge(b.options,{plotX:b.plotX,plotY:b.plotY}),!1),f.removeNode(b),b.remove()))});x.onMouseUp.apply(this,arguments)}},destroy:function(){this.parentNode&&(this.parentNodeLayout.removeNode(this.parentNode),this.parentNode.dataLabel&&(this.parentNode.dataLabel=this.parentNode.dataLabel.destroy()));a.Series.prototype.destroy.apply(this,arguments)},alignDataLabel:a.Series.prototype.alignDataLabel}, {destroy:function(){this.series.layout&&this.series.layout.removeNode(this);return e.prototype.destroy.apply(this,arguments)}});g(f,"beforeRedraw",function(){this.allDataPoints&&delete this.allDataPoints})});y(r,"parts-more/Polar.js",[r["parts/Globals.js"]],function(a){var p=a.pick,l=a.Series,e=a.seriesTypes,h=a.wrap,b=l.prototype,g=a.Pointer.prototype;b.searchPointByAngle=function(a){var b=this.chart,f=this.xAxis.pane.center;return this.searchKDTree({clientX:180+-180/Math.PI*Math.atan2(a.chartX- f[0]-b.plotLeft,a.chartY-f[1]-b.plotTop)})};b.getConnectors=function(a,b,e,g){var c,d,f,h,l,t,k,m;d=g?1:0;c=0<=b&&b<=a.length-1?b:0>b?a.length-1+b:0;b=0>c-1?a.length-(1+d):c-1;d=c+1>a.length-1?d:c+1;f=a[b];d=a[d];h=f.plotX;f=f.plotY;l=d.plotX;t=d.plotY;d=a[c].plotX;c=a[c].plotY;h=(1.5*d+h)/2.5;f=(1.5*c+f)/2.5;l=(1.5*d+l)/2.5;k=(1.5*c+t)/2.5;t=Math.sqrt(Math.pow(h-d,2)+Math.pow(f-c,2));m=Math.sqrt(Math.pow(l-d,2)+Math.pow(k-c,2));h=Math.atan2(f-c,h-d);k=Math.PI/2+(h+Math.atan2(k-c,l-d))/2;Math.abs(h- k)>Math.PI/2&&(k-=Math.PI);h=d+Math.cos(k)*t;f=c+Math.sin(k)*t;l=d+Math.cos(Math.PI+k)*m;k=c+Math.sin(Math.PI+k)*m;d={rightContX:l,rightContY:k,leftContX:h,leftContY:f,plotX:d,plotY:c};e&&(d.prevPointCont=this.getConnectors(a,b,!1,g));return d};b.toXY=function(a){var b,f=this.chart,e=a.plotX;b=a.plotY;a.rectPlotX=e;a.rectPlotY=b;b=this.xAxis.postTranslate(a.plotX,this.yAxis.len-b);a.plotX=a.polarPlotX=b.x-f.plotLeft;a.plotY=a.polarPlotY=b.y-f.plotTop;this.kdByAngle?(f=(e/Math.PI*180+this.xAxis.pane.options.startAngle)% 360,0>f&&(f+=360),a.clientX=f):a.clientX=a.plotX};e.spline&&(h(e.spline.prototype,"getPointSpline",function(a,b,e,g){this.chart.polar?g?(a=this.getConnectors(b,g,!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,b,e,g);return a}),e.areasplinerange&&(e.areasplinerange.prototype.getPointSpline=e.spline.prototype.getPointSpline));a.addEvent(l,"afterTranslate",function(){var b=this.chart,c, e;if(b.polar){(this.kdByAngle=b.tooltip&&b.tooltip.shared)?this.searchPoint=this.searchPointByAngle:this.options.findNearestPointBy="xy";if(!this.preventPostTranslate)for(c=this.points,e=c.length;e--;)this.toXY(c[e]),!b.hasParallelCoordinates&&!this.yAxis.reversed&&c[e].yb.center[1]}),h(e,"alignDataLabel",function(a,c,e,g,h,d){this.chart.polar?(a=c.rectPlotX/Math.PI*180,null===g.align&&(g.align=20a?"left":200a?"right":"center"),null===g.verticalAlign&& (g.verticalAlign=45>a||315a?"top":"middle"),b.alignDataLabel.call(this,c,e,g,h,d)):a.call(this,c,e,g,h,d)}));h(g,"getCoordinates",function(a,b){var c=this.chart,e={xAxis:[],yAxis:[]};c.polar?c.axes.forEach(function(a){var d=a.isXAxis,f=a.center,g=b.chartX-f[0]-c.plotLeft,f=b.chartY-f[1]-c.plotTop;e[d?"xAxis":"yAxis"].push({axis:a,value:a.translate(d?Math.PI-Math.atan2(g,f):Math.sqrt(Math.pow(g,2)+Math.pow(f,2)),!0)})}):e=a.call(this,b);return e});a.SVGRenderer.prototype.clipCircle= function(b,c,e){var f=a.uniqueKey(),g=this.createElement("clipPath").attr({id:f}).add(this.defs);b=this.circle(b,c,e).add(g);b.id=f;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,c){return a.find(this.pane,function(a){return a.options.id===c})||b.call(this, c)})});y(r,"masters/highcharts-more.src.js",[],function(){})}); //# sourceMappingURL=highcharts-more.js.map