/*
 Highstock JS v8.0.4 (2020-03-10)

 (c) 2009-2018 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(U,P){"object"===typeof module&&module.exports?(P["default"]=P,module.exports=U.document?P(U):P):"function"===typeof define&&define.amd?define("highcharts/highstock",function(){return P(U)}):(U.Highcharts&&U.Highcharts.error(16,!0),U.Highcharts=P(U))})("undefined"!==typeof window?window:this,function(U){function P(f,m,J,r){f.hasOwnProperty(m)||(f[m]=r.apply(null,J))}var y={};P(y,"parts/Globals.js",[],function(){var f="undefined"!==typeof U?U:"undefined"!==typeof window?window:{},m=f.document,
J=f.navigator&&f.navigator.userAgent||"",r=m&&m.createElementNS&&!!m.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,E=/(edge|msie|trident)/i.test(J)&&!f.opera,N=-1!==J.indexOf("Firefox"),F=-1!==J.indexOf("Chrome"),C=N&&4>parseInt(J.split("Firefox/")[1],10);return{product:"Highcharts",version:"8.0.4",deg2rad:2*Math.PI/360,doc:m,hasBidiBug:C,hasTouch:!!f.TouchEvent,isMS:E,isWebKit:-1!==J.indexOf("AppleWebKit"),isFirefox:N,isChrome:F,isSafari:!F&&-1!==J.indexOf("Safari"),isTouchDevice:/(Mobile|Android|Windows Phone)/.test(J),
SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:r,win:f,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[],dateFormats:{}}});P(y,"parts/Utilities.js",[y["parts/Globals.js"]],function(f){function m(){var d,a=arguments,b={},c=function(d,a){"object"!==typeof d&&(d={});Y(a,function(b,h){!t(b,!0)||k(b)||n(b)?d[h]=a[h]:d[h]=c(d[h]||{},b)});return d};!0===a[0]&&(b=a[1],a=Array.prototype.slice.call(a,2));var h=a.length;for(d=0;d<
h;d++)b=c(b,a[d]);return b}function J(d,a,b){var h;x(a)?c(b)?d.setAttribute(a,b):d&&d.getAttribute&&((h=d.getAttribute(a))||"class"!==a||(h=d.getAttribute(a+"Name"))):Y(a,function(a,b){d.setAttribute(b,a)});return h}function r(){for(var d=arguments,a=d.length,b=0;b<a;b++){var c=d[b];if("undefined"!==typeof c&&null!==c)return c}}function E(d,a){if(!d)return a;var b=d.split(".").reverse();if(1===b.length)return a[d];for(d=b.pop();"undefined"!==typeof d&&"undefined"!==typeof a&&null!==a;)a=a[d],d=b.pop();
return a}f.timers=[];var N=f.charts,F=f.doc,C=f.win,B=f.error=function(d,a,b,c){var h=q(d),e=h?"Highcharts error #"+d+": www.highcharts.com/errors/"+d+"/":d.toString(),K=function(){if(a)throw Error(e);C.console&&console.log(e)};if("undefined"!==typeof c){var l="";h&&(e+="?");f.objectEach(c,function(d,a){l+="\n"+a+": "+d;h&&(e+=encodeURI(a)+"="+encodeURI(d))});e+=l}b?f.fireEvent(b,"displayError",{code:d,message:e,params:c},K):K()},L=function(){function d(d,a,b){this.options=a;this.elem=d;this.prop=
b}d.prototype.dSetter=function(){var d=this.paths[0],a=this.paths[1],b=[],c=this.now,h=d.length;if(1===c)b=this.toD;else if(h===a.length&&1>c)for(;h--;){var e=parseFloat(d[h]);b[h]=isNaN(e)||"A"===a[h-4]||"A"===a[h-5]?a[h]:c*parseFloat(""+(a[h]-e))+e}else b=a;this.elem.attr("d",b,null,!0)};d.prototype.update=function(){var d=this.elem,a=this.prop,b=this.now,c=this.options.step;if(this[a+"Setter"])this[a+"Setter"]();else d.attr?d.element&&d.attr(a,b,null,!0):d.style[a]=b+this.unit;c&&c.call(d,b,this)};
d.prototype.run=function(d,a,b){var c=this,h=c.options,e=function(d){return e.stopped?!1:c.step(d)},K=C.requestAnimationFrame||function(d){setTimeout(d,13)},l=function(){for(var d=0;d<f.timers.length;d++)f.timers[d]()||f.timers.splice(d--,1);f.timers.length&&K(l)};d!==a||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=d,this.end=a,this.unit=b,this.now=this.start,this.pos=0,e.elem=this.elem,e.prop=this.prop,e()&&1===f.timers.push(e)&&K(l)):(delete h.curAnim[this.prop],h.complete&&
0===Object.keys(h.curAnim).length&&h.complete.call(this.elem))};d.prototype.step=function(d){var a=+new Date,b=this.options,c=this.elem,h=b.complete,e=b.duration,K=b.curAnim;if(c.attr&&!c.element)d=!1;else if(d||a>=e+this.startTime){this.now=this.end;this.pos=1;this.update();var l=K[this.prop]=!0;Y(K,function(d){!0!==d&&(l=!1)});l&&h&&h.call(c);d=!1}else this.pos=b.easing((a-this.startTime)/e),this.now=this.start+(this.end-this.start)*this.pos,this.update(),d=!0;return d};d.prototype.initPath=function(d,
a,b){function c(d){for(p=d.length;p--;){var a="M"===d[p]||"L"===d[p];var b=/[a-zA-Z]/.test(d[p+3]);a&&b&&d.splice(p+1,0,d[p+1],d[p+2],d[p+1],d[p+2])}}function h(d,a){for(;d.length<k;){d[0]=a[k-d.length];var b=d.slice(0,G);[].splice.apply(d,[0,0].concat(b));O&&(b=d.slice(d.length-G),[].splice.apply(d,[d.length,0].concat(b)),p--)}d[0]="M"}function e(d,a){for(var b=(k-d.length)/G;0<b&&b--;)I=d.slice().splice(d.length/v-G,G*v),I[0]=a[k-G-b*G],g&&(I[G-6]=I[G-2],I[G-5]=I[G-1]),[].splice.apply(d,[d.length/
v,0].concat(I)),O&&b--}a=a||"";var K=d.startX,l=d.endX,g=-1<a.indexOf("C"),G=g?7:3,I,p;a=a.split(" ");b=b.slice();var O=d.isArea,v=O?2:1;g&&(c(a),c(b));if(K&&l){for(p=0;p<K.length;p++)if(K[p]===l[0]){var u=p;break}else if(K[0]===l[l.length-K.length+p]){u=p;var S=!0;break}else if(K[K.length-1]===l[l.length-K.length+p]){u=K.length-p;break}"undefined"===typeof u&&(a=[])}if(a.length&&q(u)){var k=b.length+u*v*G;S?(h(a,b),e(b,a)):(h(b,a),e(a,b))}return[a,b]};d.prototype.fillSetter=function(){f.Fx.prototype.strokeSetter.apply(this,
arguments)};d.prototype.strokeSetter=function(){this.elem.attr(this.prop,f.color(this.start).tweenTo(f.color(this.end),this.pos),null,!0)};return d}();f.Fx=L;f.merge=m;var z=f.pInt=function(d,a){return parseInt(d,a||10)},x=f.isString=function(d){return"string"===typeof d},A=f.isArray=function(d){d=Object.prototype.toString.call(d);return"[object Array]"===d||"[object Array Iterator]"===d},t=f.isObject=function(d,a){return!!d&&"object"===typeof d&&(!a||!A(d))},n=f.isDOMElement=function(d){return t(d)&&
"number"===typeof d.nodeType},k=f.isClass=function(d){var a=d&&d.constructor;return!(!t(d,!0)||n(d)||!a||!a.name||"Object"===a.name)},q=f.isNumber=function(d){return"number"===typeof d&&!isNaN(d)&&Infinity>d&&-Infinity<d},e=f.erase=function(d,a){for(var b=d.length;b--;)if(d[b]===a){d.splice(b,1);break}},c=f.defined=function(d){return"undefined"!==typeof d&&null!==d};f.attr=J;var g=f.splat=function(d){return A(d)?d:[d]},p=f.syncTimeout=function(d,a,b){if(0<a)return setTimeout(d,a,b);d.call(0,b);return-1},
b=f.clearTimeout=function(d){c(d)&&clearTimeout(d)},a=f.extend=function(d,a){var b;d||(d={});for(b in a)d[b]=a[b];return d};f.pick=r;var v=f.css=function(d,b){f.isMS&&!f.svg&&b&&"undefined"!==typeof b.opacity&&(b.filter="alpha(opacity="+100*b.opacity+")");a(d.style,b)},D=f.createElement=function(d,b,c,h,e){d=F.createElement(d);b&&a(d,b);e&&v(d,{padding:"0",border:"none",margin:"0"});c&&v(d,c);h&&h.appendChild(d);return d},w=f.extendClass=function(d,b){var c=function(){};c.prototype=new d;a(c.prototype,
b);return c},l=f.pad=function(d,a,b){return Array((a||2)+1-String(d).replace("-","").length).join(b||"0")+d},h=f.relativeLength=function(d,a,b){return/%$/.test(d)?a*parseFloat(d)/100+(b||0):parseFloat(d)},u=f.wrap=function(d,a,b){var c=d[a];d[a]=function(){var d=Array.prototype.slice.call(arguments),a=arguments,h=this;h.proceed=function(){c.apply(h,arguments.length?arguments:a)};d.unshift(c);d=b.apply(this,d);h.proceed=null;return d}},H=f.format=function(d,a,b){var c="{",h=!1,e=[],K=/f$/,l=/\.([0-9])/,
g=f.defaultOptions.lang,G=b&&b.time||f.time;for(b=b&&b.numberFormatter||X;d;){var p=d.indexOf(c);if(-1===p)break;var I=d.slice(0,p);if(h){I=I.split(":");c=E(I.shift()||"",a);if(I.length&&"number"===typeof c)if(I=I.join(":"),K.test(I)){var O=parseInt((I.match(l)||["","-1"])[1],10);null!==c&&(c=b(c,O,g.decimalPoint,-1<I.indexOf(",")?g.thousandsSep:""))}else c=G.dateFormat(I,c);e.push(c)}else e.push(I);d=d.slice(p+1);c=(h=!h)?"}":"{"}e.push(d);return e.join("")},M=f.getMagnitude=function(d){return Math.pow(10,
Math.floor(Math.log(d)/Math.LN10))},Q=f.normalizeTickInterval=function(d,a,b,c,h){var e=d;b=r(b,1);var K=d/b;a||(a=h?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===c&&(1===b?a=a.filter(function(d){return 0===d%1}):.1>=b&&(a=[1/b])));for(c=0;c<a.length&&!(e=a[c],h&&e*b>=d||!h&&K<=(a[c]+(a[c+1]||a[c]))/2);c++);return e=V(e*b,-Math.round(Math.log(.001)/Math.LN10))},G=f.stableSort=function(d,a){var b=d.length,c,h;for(h=0;h<b;h++)d[h].safeI=h;d.sort(function(d,b){c=a(d,b);return 0===c?d.safeI-b.safeI:
c});for(h=0;h<b;h++)delete d[h].safeI},d=f.arrayMin=function(d){for(var a=d.length,b=d[0];a--;)d[a]<b&&(b=d[a]);return b},I=f.arrayMax=function(d){for(var a=d.length,b=d[0];a--;)d[a]>b&&(b=d[a]);return b},O=f.destroyObjectProperties=function(d,a){Y(d,function(b,c){b&&b!==a&&b.destroy&&b.destroy();delete d[c]})},T=f.discardElement=function(d){var a=f.garbageBin;a||(a=D("div"));d&&a.appendChild(d);a.innerHTML=""},V=f.correctFloat=function(d,a){return parseFloat(d.toPrecision(a||14))},W=f.setAnimation=
function(d,a){a.renderer.globalAnimation=r(d,a.options.chart.animation,!0)},R=f.animObject=function(d){return t(d)?m(d):{duration:d?500:0}},K=f.timeUnits={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5,month:24192E5,year:314496E5},X=f.numberFormat=function(d,a,b,c){d=+d||0;a=+a;var h=f.defaultOptions.lang,e=(d.toString().split(".")[1]||"").split("e")[0].length,K=d.toString().split("e");if(-1===a)a=Math.min(e,20);else if(!q(a))a=2;else if(a&&K[1]&&0>K[1]){var l=a+ +K[1];0<=l?(K[0]=
(+K[0]).toExponential(l).split("e")[0],a=l):(K[0]=K[0].split(".")[0]||0,d=20>a?(K[0]*Math.pow(10,K[1])).toFixed(a):0,K[1]=0)}var g=(Math.abs(K[1]?K[0]:d)+Math.pow(10,-Math.max(a,e)-1)).toFixed(a);e=String(z(g));l=3<e.length?e.length%3:0;b=r(b,h.decimalPoint);c=r(c,h.thousandsSep);d=(0>d?"-":"")+(l?e.substr(0,l)+c:"");d+=e.substr(l).replace(/(\d{3})(?=\d)/g,"$1"+c);a&&(d+=b+g.slice(-a));K[1]&&0!==+d&&(d+="e"+K[1]);return d};Math.easeInOutSine=function(d){return-.5*(Math.cos(Math.PI*d)-1)};var ba=f.getStyle=
function(d,a,b){if("width"===a)return a=Math.min(d.offsetWidth,d.scrollWidth),b=d.getBoundingClientRect&&d.getBoundingClientRect().width,b<a&&b>=a-1&&(a=Math.floor(b)),Math.max(0,a-f.getStyle(d,"padding-left")-f.getStyle(d,"padding-right"));if("height"===a)return Math.max(0,Math.min(d.offsetHeight,d.scrollHeight)-f.getStyle(d,"padding-top")-f.getStyle(d,"padding-bottom"));C.getComputedStyle||B(27,!0);if(d=C.getComputedStyle(d,void 0))d=d.getPropertyValue(a),r(b,"opacity"!==a)&&(d=z(d));return d},
Z=f.inArray=function(d,a,b){return a.indexOf(d,b)},S=f.find=Array.prototype.find?function(d,a){return d.find(a)}:function(d,a){var b,c=d.length;for(b=0;b<c;b++)if(a(d[b],b))return d[b]};f.keys=Object.keys;var aa=f.offset=function(d){var a=F.documentElement;d=d.parentElement||d.parentNode?d.getBoundingClientRect():{top:0,left:0};return{top:d.top+(C.pageYOffset||a.scrollTop)-(a.clientTop||0),left:d.left+(C.pageXOffset||a.scrollLeft)-(a.clientLeft||0)}},ca=f.stop=function(d,a){for(var b=f.timers.length;b--;)f.timers[b].elem!==
d||a&&a!==f.timers[b].prop||(f.timers[b].stopped=!0)},Y=f.objectEach=function(d,a,b){for(var c in d)Object.hasOwnProperty.call(d,c)&&a.call(b||d[c],d[c],c,d)};Y({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(d,a){f[a]=function(a){return Array.prototype[d].apply(a,[].slice.call(arguments,1))}});var fa=f.addEvent=function(d,a,b,c){void 0===c&&(c={});var h=d.addEventListener||f.addEventListenerPolyfill;var e="function"===typeof d&&d.prototype?d.prototype.protoEvents=d.prototype.protoEvents||
{}:d.hcEvents=d.hcEvents||{};f.Point&&d instanceof f.Point&&d.series&&d.series.chart&&(d.series.chart.runTrackerClick=!0);h&&h.call(d,a,b,!1);e[a]||(e[a]=[]);e[a].push({fn:b,order:"number"===typeof c.order?c.order:Infinity});e[a].sort(function(d,a){return d.order-a.order});return function(){da(d,a,b)}},da=f.removeEvent=function(d,a,b){function c(a,b){var c=d.removeEventListener||f.removeEventListenerPolyfill;c&&c.call(d,a,b,!1)}function h(b){var h;if(d.nodeName){if(a){var e={};e[a]=!0}else e=b;Y(e,
function(d,a){if(b[a])for(h=b[a].length;h--;)c(a,b[a][h].fn)})}}var e;["protoEvents","hcEvents"].forEach(function(K,l){var g=(l=l?d:d.prototype)&&l[K];g&&(a?(e=g[a]||[],b?(g[a]=e.filter(function(d){return b!==d.fn}),c(a,b)):(h(g),g[a]=[])):(h(g),l[K]={}))})},ha=f.fireEvent=function(d,b,c,h){var e;c=c||{};if(F.createEvent&&(d.dispatchEvent||d.fireEvent)){var K=F.createEvent("Events");K.initEvent(b,!0,!0);a(K,c);d.dispatchEvent?d.dispatchEvent(K):d.fireEvent(b,K)}else c.target||a(c,{preventDefault:function(){c.defaultPrevented=
!0},target:d,type:b}),function(a,b){void 0===a&&(a=[]);void 0===b&&(b=[]);var h=0,K=0,l=a.length+b.length;for(e=0;e<l;e++)!1===(a[h]?b[K]?a[h].order<=b[K].order?a[h++]:b[K++]:a[h++]:b[K++]).fn.call(d,c)&&c.preventDefault()}(d.protoEvents&&d.protoEvents[b],d.hcEvents&&d.hcEvents[b]);h&&!c.defaultPrevented&&h.call(d,c)},ia=f.animate=function(d,a,b){var c,h="",e,K;if(!t(b)){var l=arguments;b={duration:l[2],easing:l[3],complete:l[4]}}q(b.duration)||(b.duration=400);b.easing="function"===typeof b.easing?
b.easing:Math[b.easing]||Math.easeInOutSine;b.curAnim=m(a);Y(a,function(l,g){ca(d,g);K=new L(d,b,g);e=null;"d"===g?(K.paths=K.initPath(d,d.d,a.d),K.toD=a.d,c=0,e=1):d.attr?c=d.attr(g):(c=parseFloat(ba(d,g))||0,"opacity"!==g&&(h="px"));e||(e=l);e&&e.match&&e.match("px")&&(e=e.replace(/px/g,""));K.run(c,e,h)})},y=f.seriesType=function(d,a,b,c,h){var e=f.getOptions(),K=f.seriesTypes;e.plotOptions[d]=m(e.plotOptions[a],b);K[d]=w(K[a]||function(){},c);K[d].prototype.type=d;h&&(K[d].prototype.pointClass=
w(f.Point,h));return K[d]},ea=f.uniqueKey=function(){var d=Math.random().toString(36).substring(2,9),a=0;return function(){return"highcharts-"+d+"-"+a++}}(),ja=f.isFunction=function(d){return"function"===typeof d};C.jQuery&&(C.jQuery.fn.highcharts=function(){var d=[].slice.call(arguments);if(this[0])return d[0]?(new (f[x(d[0])?d.shift():"Chart"])(this[0],d[0],d[1]),this):N[J(this[0],"data-highcharts-chart")]});return{Fx:L,addEvent:fa,animate:ia,animObject:R,arrayMax:I,arrayMin:d,attr:J,clamp:function(d,
a,b){return d>a?d<b?d:b:a},clearTimeout:b,correctFloat:V,createElement:D,css:v,defined:c,destroyObjectProperties:O,discardElement:T,erase:e,error:B,extend:a,extendClass:w,find:S,fireEvent:ha,format:H,getMagnitude:M,getNestedProperty:E,getStyle:ba,inArray:Z,isArray:A,isClass:k,isDOMElement:n,isFunction:ja,isNumber:q,isObject:t,isString:x,merge:m,normalizeTickInterval:Q,numberFormat:X,objectEach:Y,offset:aa,pad:l,pick:r,pInt:z,relativeLength:h,removeEvent:da,seriesType:y,setAnimation:W,splat:g,stableSort:G,
stop:ca,syncTimeout:p,timeUnits:K,uniqueKey:ea,wrap:u}});P(y,"parts/Color.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.isNumber,r=m.merge,E=m.pInt;m=function(){function f(m){this.parsers=[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(f){return[E(f[1]),E(f[2]),E(f[3]),parseFloat(f[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(f){return[E(f[1]),E(f[2]),
E(f[3]),1]}}];this.rgba=[];if(!(this instanceof f))return new f(m);this.init(m)}f.parse=function(m){return new f(m)};f.prototype.init=function(m){var C,B;if((this.input=m=f.names[m&&m.toLowerCase?m.toLowerCase():""]||m)&&m.stops)this.stops=m.stops.map(function(x){return new f(x[1])});else{if(m&&m.charAt&&"#"===m.charAt()){var r=m.length;m=parseInt(m.substr(1),16);7===r?C=[(m&16711680)>>16,(m&65280)>>8,m&255,1]:4===r&&(C=[(m&3840)>>4|(m&3840)>>8,(m&240)>>4|m&240,(m&15)<<4|m&15,1])}if(!C)for(B=this.parsers.length;B--&&
!C;){var z=this.parsers[B];(r=z.regex.exec(m))&&(C=z.parse(r))}}this.rgba=C||[]};f.prototype.get=function(f){var m=this.input,B=this.rgba;if("undefined"!==typeof this.stops){var F=r(m);F.stops=[].concat(F.stops);this.stops.forEach(function(z,x){F.stops[x]=[F.stops[x][0],z.get(f)]})}else F=B&&J(B[0])?"rgb"===f||!f&&1===B[3]?"rgb("+B[0]+","+B[1]+","+B[2]+")":"a"===f?B[3]:"rgba("+B.join(",")+")":m;return F};f.prototype.brighten=function(f){var m,B=this.rgba;if(this.stops)this.stops.forEach(function(m){m.brighten(f)});
else if(J(f)&&0!==f)for(m=0;3>m;m++)B[m]+=E(255*f),0>B[m]&&(B[m]=0),255<B[m]&&(B[m]=255);return this};f.prototype.setOpacity=function(f){this.rgba[3]=f;return this};f.prototype.tweenTo=function(f,m){var B=this.rgba,r=f.rgba;r.length&&B&&B.length?(f=1!==r[3]||1!==B[3],m=(f?"rgba(":"rgb(")+Math.round(r[0]+(B[0]-r[0])*(1-m))+","+Math.round(r[1]+(B[1]-r[1])*(1-m))+","+Math.round(r[2]+(B[2]-r[2])*(1-m))+(f?","+(r[3]+(B[3]-r[3])*(1-m)):"")+")"):m=f.input||"none";return m};f.names={white:"#ffffff",black:"#000000"};
return f}();f.Color=m;f.color=m.parse;return f.Color});P(y,"parts/SvgRenderer.js",[y["parts/Globals.js"],y["parts/Color.js"],y["parts/Utilities.js"]],function(f,m,J){var r=m.parse,E=J.addEvent,N=J.animate,F=J.animObject,C=J.attr,B=J.createElement,L=J.css,z=J.defined,x=J.destroyObjectProperties,A=J.erase,t=J.extend,n=J.inArray,k=J.isArray,q=J.isNumber,e=J.isObject,c=J.isString,g=J.merge,p=J.objectEach,b=J.pick,a=J.pInt,v=J.removeEvent,D=J.splat,w=J.stop,l=J.uniqueKey,h=f.charts,u=f.deg2rad,H=f.doc,
M=f.hasTouch,Q=f.isFirefox,G=f.isMS,d=f.isWebKit,I=f.noop,O=f.svg,T=f.SVG_NS,V=f.symbolSizes,W=f.win;var R=f.SVGElement=function(){return this};t(R.prototype,{opacity:1,SVG_NS:T,textProps:"direction fontSize fontWeight fontFamily fontStyle color lineHeight width textAlign textDecoration textOverflow textOutline cursor".split(" "),init:function(d,a){this.element="span"===a?B(a):H.createElementNS(this.SVG_NS,a);this.renderer=d;f.fireEvent(this,"afterInit")},animate:function(d,a,c){var h=F(b(a,this.renderer.globalAnimation,
!0));b(H.hidden,H.msHidden,H.webkitHidden,!1)&&(h.duration=0);0!==h.duration?(c&&(h.complete=c),N(this,d,h)):(this.attr(d,void 0,c),p(d,function(d,a){h.step&&h.step.call(this,d,{prop:a,pos:1})},this));return this},complexColor:function(d,a,b){var c=this.renderer,h,e,K,G,I,O,v,u,w,X,D,H=[],n;f.fireEvent(this.renderer,"complexColor",{args:arguments},function(){d.radialGradient?e="radialGradient":d.linearGradient&&(e="linearGradient");e&&(K=d[e],I=c.gradients,v=d.stops,X=b.radialReference,k(K)&&(d[e]=
K={x1:K[0],y1:K[1],x2:K[2],y2:K[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===e&&X&&!z(K.gradientUnits)&&(G=K,K=g(K,c.getRadialAttr(X,G),{gradientUnits:"userSpaceOnUse"})),p(K,function(d,a){"id"!==a&&H.push(a,d)}),p(v,function(d){H.push(d)}),H=H.join(","),I[H]?D=I[H].attr("id"):(K.id=D=l(),I[H]=O=c.createElement(e).attr(K).add(c.defs),O.radAttr=G,O.stops=[],v.forEach(function(d){0===d[1].indexOf("rgba")?(h=r(d[1]),u=h.get("rgb"),w=h.get("a")):(u=d[1],w=1);d=c.createElement("stop").attr({offset:d[0],
"stop-color":u,"stop-opacity":w}).add(O);O.stops.push(d)})),n="url("+c.url+"#"+D+")",b.setAttribute(a,n),b.gradient=H,d.toString=function(){return n})})},applyTextOutline:function(d){var a=this.element,b;-1!==d.indexOf("contrast")&&(d=d.replace(/contrast/g,this.renderer.getContrast(a.style.fill)));d=d.split(" ");var c=d[d.length-1];if((b=d[0])&&"none"!==b&&f.svg){this.fakeTS=!0;d=[].slice.call(a.getElementsByTagName("tspan"));this.ySetter=this.xSetter;b=b.replace(/(^[\d\.]+)(.*?)$/g,function(d,a,
b){return 2*a+b});this.removeTextOutline(d);var h=a.textContent?/^[\u0591-\u065F\u066A-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC]/.test(a.textContent):!1;var e=a.firstChild;d.forEach(function(d,K){0===K&&(d.setAttribute("x",a.getAttribute("x")),K=a.getAttribute("y"),d.setAttribute("y",K||0),null===K&&a.setAttribute("y",0));K=d.cloneNode(!0);C(h&&!Q?d:K,{"class":"highcharts-text-outline",fill:c,stroke:c,"stroke-width":b,"stroke-linejoin":"round"});a.insertBefore(K,e)});h&&Q&&d[0]&&(d=d[0].cloneNode(!0),d.textContent=
" ",a.insertBefore(d,e))}},removeTextOutline:function(d){for(var a=d.length,b;a--;)b=d[a],"highcharts-text-outline"===b.getAttribute("class")&&A(d,this.element.removeChild(b))},symbolCustomAttribs:"x y width height r start end innerR anchorX anchorY rounded".split(" "),attr:function(d,a,b,c){var h=this.element,e,K=this,l,g,G=this.symbolCustomAttribs;if("string"===typeof d&&"undefined"!==typeof a){var I=d;d={};d[I]=a}"string"===typeof d?K=(this[d+"Getter"]||this._defaultGetter).call(this,d,h):(p(d,
function(a,b){l=!1;c||w(this,b);this.symbolName&&-1!==n(b,G)&&(e||(this.symbolAttr(d),e=!0),l=!0);!this.rotation||"x"!==b&&"y"!==b||(this.doTransform=!0);l||(g=this[b+"Setter"]||this._defaultSetter,g.call(this,a,b,h),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(b)&&this.updateShadows(b,a,g))},this),this.afterSetters());b&&b.call(this);return K},afterSetters:function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)},updateShadows:function(d,
a,b){for(var c=this.shadows,h=c.length;h--;)b.call(c[h],"height"===d?Math.max(a-(c[h].cutHeight||0),0):"d"===d?this.d:a,d,c[h])},addClass:function(d,a){var b=a?"":this.attr("class")||"";d=(d||"").split(/ /g).reduce(function(d,a){-1===b.indexOf(a)&&d.push(a);return d},b?[b]:[]).join(" ");d!==b&&this.attr("class",d);return this},hasClass:function(d){return-1!==(this.attr("class")||"").split(" ").indexOf(d)},removeClass:function(d){return this.attr("class",(this.attr("class")||"").replace(c(d)?new RegExp(" ?"+
d+" ?"):d,""))},symbolAttr:function(d){var a=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(c){a[c]=b(d[c],a[c])});a.attr({d:a.renderer.symbols[a.symbolName](a.x,a.y,a.width,a.height,a)})},clip:function(d){return this.attr("clip-path",d?"url("+this.renderer.url+"#"+d.id+")":"none")},crisp:function(d,a){a=a||d.strokeWidth||0;var b=Math.round(a)%2/2;d.x=Math.floor(d.x||this.x||0)+b;d.y=Math.floor(d.y||this.y||0)+b;d.width=Math.floor((d.width||this.width||
0)-2*b);d.height=Math.floor((d.height||this.height||0)-2*b);z(d.strokeWidth)&&(d.strokeWidth=a);return d},css:function(d){var b=this.styles,c={},h=this.element,e="",l=!b,g=["textOutline","textOverflow","width"];d&&d.color&&(d.fill=d.color);b&&p(d,function(d,a){d!==b[a]&&(c[a]=d,l=!0)});if(l){b&&(d=t(b,c));if(d)if(null===d.width||"auto"===d.width)delete this.textWidth;else if("text"===h.nodeName.toLowerCase()&&d.width)var G=this.textWidth=a(d.width);this.styles=d;G&&!O&&this.renderer.forExport&&delete d.width;
if(h.namespaceURI===this.SVG_NS){var K=function(d,a){return"-"+a.toLowerCase()};p(d,function(d,a){-1===g.indexOf(a)&&(e+=a.replace(/([A-Z])/g,K)+":"+d+";")});e&&C(h,"style",e)}else L(h,d);this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),d&&d.textOutline&&this.applyTextOutline(d.textOutline))}return this},getStyle:function(d){return W.getComputedStyle(this.element||this,"").getPropertyValue(d)},strokeWidth:function(){if(!this.renderer.styledMode)return this["stroke-width"]||
0;var d=this.getStyle("stroke-width"),b=0;if(d.indexOf("px")===d.length-2)b=a(d);else if(""!==d){var c=H.createElementNS(T,"rect");C(c,{width:d,"stroke-width":0});this.element.parentNode.appendChild(c);b=c.getBBox().width;c.parentNode.removeChild(c)}return b},on:function(d,a){var b,c,h=this.element,e;M&&"click"===d?(h.ontouchstart=function(d){b=d.touches[0].clientX;c=d.touches[0].clientY},h.ontouchend=function(d){b&&4<=Math.sqrt(Math.pow(b-d.changedTouches[0].clientX,2)+Math.pow(c-d.changedTouches[0].clientY,
2))||a.call(h,d);e=!0;d.preventDefault()},h.onclick=function(d){e||a.call(h,d)}):h["on"+d]=a;return this},setRadialReference:function(d){var a=this.renderer.gradients[this.element.gradient];this.element.radialReference=d;a&&a.radAttr&&a.animate(this.renderer.getRadialAttr(d,a.radAttr));return this},translate:function(d,a){return this.attr({translateX:d,translateY:a})},invert:function(d){this.inverted=d;this.updateTransform();return this},updateTransform:function(){var d=this.translateX||0,a=this.translateY||
0,c=this.scaleX,h=this.scaleY,e=this.inverted,l=this.rotation,g=this.matrix,G=this.element;e&&(d+=this.width,a+=this.height);d=["translate("+d+","+a+")"];z(g)&&d.push("matrix("+g.join(",")+")");e?d.push("rotate(90) scale(-1,1)"):l&&d.push("rotate("+l+" "+b(this.rotationOriginX,G.getAttribute("x"),0)+" "+b(this.rotationOriginY,G.getAttribute("y")||0)+")");(z(c)||z(h))&&d.push("scale("+b(c,1)+" "+b(h,1)+")");d.length&&G.setAttribute("transform",d.join(" "))},toFront:function(){var d=this.element;d.parentNode.appendChild(d);
return this},align:function(d,a,h){var e,l={};var g=this.renderer;var G=g.alignedObjects;var I,K;if(d){if(this.alignOptions=d,this.alignByTranslate=a,!h||c(h))this.alignTo=e=h||"renderer",A(G,this),G.push(this),h=null}else d=this.alignOptions,a=this.alignByTranslate,e=this.alignTo;h=b(h,g[e],g);e=d.align;g=d.verticalAlign;G=(h.x||0)+(d.x||0);var p=(h.y||0)+(d.y||0);"right"===e?I=1:"center"===e&&(I=2);I&&(G+=(h.width-(d.width||0))/I);l[a?"translateX":"x"]=Math.round(G);"bottom"===g?K=1:"middle"===
g&&(K=2);K&&(p+=(h.height-(d.height||0))/K);l[a?"translateY":"y"]=Math.round(p);this[this.placed?"animate":"attr"](l);this.placed=!0;this.alignAttr=l;return this},getBBox:function(d,a){var c,h=this.renderer,e=this.element,l=this.styles,g=this.textStr,G,I=h.cache,K=h.cacheKeys,p=e.namespaceURI===this.SVG_NS;a=b(a,this.rotation,0);var O=h.styledMode?e&&R.prototype.getStyle.call(e,"font-size"):l&&l.fontSize;if(z(g)){var v=g.toString();-1===v.indexOf("<")&&(v=v.replace(/[0-9]/g,"0"));v+=["",a,O,this.textWidth,
l&&l.textOverflow].join()}v&&!d&&(c=I[v]);if(!c){if(p||h.forExport){try{(G=this.fakeTS&&function(d){[].forEach.call(e.querySelectorAll(".highcharts-text-outline"),function(a){a.style.display=d})})&&G("none"),c=e.getBBox?t({},e.getBBox()):{width:e.offsetWidth,height:e.offsetHeight},G&&G("")}catch(ea){""}if(!c||0>c.width)c={width:0,height:0}}else c=this.htmlGetBBox();h.isSVG&&(d=c.width,h=c.height,p&&(c.height=h={"11px,17":14,"13px,20":16}[l&&l.fontSize+","+Math.round(h)]||h),a&&(l=a*u,c.width=Math.abs(h*
Math.sin(l))+Math.abs(d*Math.cos(l)),c.height=Math.abs(h*Math.cos(l))+Math.abs(d*Math.sin(l))));if(v&&0<c.height){for(;250<K.length;)delete I[K.shift()];I[v]||K.push(v);I[v]=c}}return c},show:function(d){return this.attr({visibility:d?"inherit":"visible"})},hide:function(d){d?this.attr({y:-9999}):this.attr({visibility:"hidden"});return this},fadeOut:function(d){var a=this;a.animate({opacity:0},{duration:d||150,complete:function(){a.attr({y:-9999})}})},add:function(d){var a=this.renderer,b=this.element;
d&&(this.parentGroup=d);this.parentInverted=d&&d.inverted;"undefined"!==typeof this.textStr&&a.buildText(this);this.added=!0;if(!d||d.handleZ||this.zIndex)var c=this.zIndexSetter();c||(d?d.element:a.box).appendChild(b);if(this.onAdd)this.onAdd();return this},safeRemoveChild:function(d){var a=d.parentNode;a&&a.removeChild(d)},destroy:function(){var d=this,a=d.element||{},b=d.renderer,c=b.isSVG&&"SPAN"===a.nodeName&&d.parentGroup,h=a.ownerSVGElement,e=d.clipPath;a.onclick=a.onmouseout=a.onmouseover=
a.onmousemove=a.point=null;w(d);e&&h&&([].forEach.call(h.querySelectorAll("[clip-path],[CLIP-PATH]"),function(d){-1<d.getAttribute("clip-path").indexOf(e.element.id)&&d.removeAttribute("clip-path")}),d.clipPath=e.destroy());if(d.stops){for(h=0;h<d.stops.length;h++)d.stops[h]=d.stops[h].destroy();d.stops=null}d.safeRemoveChild(a);for(b.styledMode||d.destroyShadows();c&&c.div&&0===c.div.childNodes.length;)a=c.parentGroup,d.safeRemoveChild(c.div),delete c.div,c=a;d.alignTo&&A(b.alignedObjects,d);p(d,
function(a,b){d[b]&&d[b].parentGroup===d&&d[b].destroy&&d[b].destroy();delete d[b]})},shadow:function(d,a,c){var h=[],e,l=this.element;if(!d)this.destroyShadows();else if(!this.shadows){var g=b(d.width,3);var G=(d.opacity||.15)/g;var I=this.parentInverted?"(-1,-1)":"("+b(d.offsetX,1)+", "+b(d.offsetY,1)+")";for(e=1;e<=g;e++){var p=l.cloneNode(0);var O=2*g+1-2*e;C(p,{stroke:d.color||"#000000","stroke-opacity":G*e,"stroke-width":O,transform:"translate"+I,fill:"none"});p.setAttribute("class",(p.getAttribute("class")||
"")+" highcharts-shadow");c&&(C(p,"height",Math.max(C(p,"height")-O,0)),p.cutHeight=O);a?a.element.appendChild(p):l.parentNode&&l.parentNode.insertBefore(p,l);h.push(p)}this.shadows=h}return this},destroyShadows:function(){(this.shadows||[]).forEach(function(d){this.safeRemoveChild(d)},this);this.shadows=void 0},xGetter:function(d){"circle"===this.element.nodeName&&("x"===d?d="cx":"y"===d&&(d="cy"));return this._defaultGetter(d)},_defaultGetter:function(d){d=b(this[d+"Value"],this[d],this.element?
this.element.getAttribute(d):null,0);/^[\-0-9\.]+$/.test(d)&&(d=parseFloat(d));return d},dSetter:function(d,a,b){d&&d.join&&(d=d.join(" "));/(NaN| {2}|^$)/.test(d)&&(d="M 0 0");this[a]!==d&&(b.setAttribute(a,d),this[a]=d)},dashstyleSetter:function(d){var b,c=this["stroke-width"];"inherit"===c&&(c=1);if(d=d&&d.toLowerCase()){d=d.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,
"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(b=d.length;b--;)d[b]=a(d[b])*c;d=d.join(",").replace(/NaN/g,"none");this.element.setAttribute("stroke-dasharray",d)}},alignSetter:function(d){var a={left:"start",center:"middle",right:"end"};a[d]&&(this.alignValue=d,this.element.setAttribute("text-anchor",a[d]))},opacitySetter:function(d,a,b){this[a]=d;b.setAttribute(a,d)},titleSetter:function(d){var a=this.element.getElementsByTagName("title")[0];a||(a=H.createElementNS(this.SVG_NS,"title"),
this.element.appendChild(a));a.firstChild&&a.removeChild(a.firstChild);a.appendChild(H.createTextNode(String(b(d,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")))},textSetter:function(d){d!==this.textStr&&(delete this.bBox,delete this.textPxLength,this.textStr=d,this.added&&this.renderer.buildText(this))},setTextPath:function(d,a){var b=this.element,c={textAnchor:"text-anchor"},h=!1,e=this.textPathWrapper,G=!e;a=g(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},
a);var O=a.attributes;if(d&&a&&a.enabled){e&&null===e.element.parentNode?(G=!0,e=e.destroy()):e&&this.removeTextOutline.call(e.parentGroup,[].slice.call(b.getElementsByTagName("tspan")));this.options&&this.options.padding&&(O.dx=-this.options.padding);e||(this.textPathWrapper=e=this.renderer.createElement("textPath"),h=!0);var v=e.element;(a=d.element.getAttribute("id"))||d.element.setAttribute("id",a=l());if(G)for(d=b.getElementsByTagName("tspan");d.length;)d[0].setAttribute("y",0),q(O.dx)&&d[0].setAttribute("x",
-O.dx),v.appendChild(d[0]);h&&e.add({element:this.text?this.text.element:b});v.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+a);z(O.dy)&&(v.parentNode.setAttribute("dy",O.dy),delete O.dy);z(O.dx)&&(v.parentNode.setAttribute("dx",O.dx),delete O.dx);p(O,function(d,a){v.setAttribute(c[a]||a,d)});b.removeAttribute("transform");this.removeTextOutline.call(e,[].slice.call(b.getElementsByTagName("tspan")));this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0});
this.applyTextOutline=this.updateTransform=I}else e&&(delete this.updateTransform,delete this.applyTextOutline,this.destroyTextPath(b,d),this.updateTransform(),this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this},destroyTextPath:function(d,a){var b=d.getElementsByTagName("text")[0];if(b){if(b.removeAttribute("dx"),b.removeAttribute("dy"),a.element.setAttribute("id",""),b.getElementsByTagName("textPath").length){for(d=this.textPathWrapper.element.childNodes;d.length;)b.appendChild(d[0]);
b.removeChild(this.textPathWrapper.element)}}else if(d.getAttribute("dx")||d.getAttribute("dy"))d.removeAttribute("dx"),d.removeAttribute("dy");this.textPathWrapper=this.textPathWrapper.destroy()},fillSetter:function(d,a,b){"string"===typeof d?b.setAttribute(a,d):d&&this.complexColor(d,a,b)},visibilitySetter:function(d,a,b){"inherit"===d?b.removeAttribute(a):this[a]!==d&&b.setAttribute(a,d);this[a]=d},zIndexSetter:function(d,b){var c=this.renderer,h=this.parentGroup,e=(h||c).element||c.box,l=this.element,
g=!1;c=e===c.box;var G=this.added;var I;z(d)?(l.setAttribute("data-z-index",d),d=+d,this[b]===d&&(G=!1)):z(this[b])&&l.removeAttribute("data-z-index");this[b]=d;if(G){(d=this.zIndex)&&h&&(h.handleZ=!0);b=e.childNodes;for(I=b.length-1;0<=I&&!g;I--){h=b[I];G=h.getAttribute("data-z-index");var p=!z(G);if(h!==l)if(0>d&&p&&!c&&!I)e.insertBefore(l,b[I]),g=!0;else if(a(G)<=d||p&&(!z(d)||0<=d))e.insertBefore(l,b[I+1]||null),g=!0}g||(e.insertBefore(l,b[c?3:0]||null),g=!0)}return g},_defaultSetter:function(d,
a,b){b.setAttribute(a,d)}});R.prototype.yGetter=R.prototype.xGetter;R.prototype.translateXSetter=R.prototype.translateYSetter=R.prototype.rotationSetter=R.prototype.verticalAlignSetter=R.prototype.rotationOriginXSetter=R.prototype.rotationOriginYSetter=R.prototype.scaleXSetter=R.prototype.scaleYSetter=R.prototype.matrixSetter=function(d,a){this[a]=d;this.doTransform=!0};R.prototype["stroke-widthSetter"]=R.prototype.strokeSetter=function(d,a,b){this[a]=d;this.stroke&&this["stroke-width"]?(R.prototype.fillSetter.call(this,
this.stroke,"stroke",b),b.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===a&&0===d&&this.hasStroke?(b.removeAttribute("stroke"),this.hasStroke=!1):this.renderer.styledMode&&this["stroke-width"]&&(b.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)};m=f.SVGRenderer=function(){this.init.apply(this,arguments)};t(m.prototype,{Element:R,SVG_NS:T,init:function(a,b,c,h,e,l,g){var G=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"});
g||G.css(this.getStyle(h));h=G.element;a.appendChild(h);C(a,"dir","ltr");-1===a.innerHTML.indexOf("xmlns")&&C(h,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=h;this.boxWrapper=G;this.alignedObjects=[];this.url=(Q||d)&&H.getElementsByTagName("base").length?W.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(H.createTextNode("Created with Highcharts 8.0.4"));this.defs=this.createElement("defs").add();
this.allowHTML=l;this.forExport=e;this.styledMode=g;this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount=0;this.setSize(b,c,!1);var I;Q&&a.getBoundingClientRect&&(b=function(){L(a,{left:0,top:0});I=a.getBoundingClientRect();L(a,{left:Math.ceil(I.left)-I.left+"px",top:Math.ceil(I.top)-I.top+"px"})},b(),this.unSubPixelFix=E(W,"resize",b))},definition:function(d){function a(d,c){var h;D(d).forEach(function(d){var e=b.createElement(d.tagName),l={};p(d,function(d,a){"tagName"!==a&&"children"!==
a&&"textContent"!==a&&(l[a]=d)});e.attr(l);e.add(c||b.defs);d.textContent&&e.element.appendChild(H.createTextNode(d.textContent));a(d.children||[],e);h=e});return h}var b=this;return a(d)},getStyle:function(d){return this.style=t({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},d)},setStyle:function(d){this.boxWrapper.css(this.getStyle(d))},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var d=this.defs;this.box=null;
this.boxWrapper=this.boxWrapper.destroy();x(this.gradients||{});this.gradients=null;d&&(this.defs=d.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=null},createElement:function(d){var a=new this.Element;a.init(this,d);return a},draw:I,getRadialAttr:function(d,a){return{cx:d[0]-d[2]/2+a.cx*d[2],cy:d[1]-d[2]/2+a.cy*d[2],r:a.r*d[2]}},truncate:function(d,a,b,c,h,e,l){var g=this,G=d.rotation,I,p=c?1:0,O=(b||c).length,v=O,u=[],k=function(d){a.firstChild&&a.removeChild(a.firstChild);
d&&a.appendChild(H.createTextNode(d))},w=function(e,G){G=G||e;if("undefined"===typeof u[G])if(a.getSubStringLength)try{u[G]=h+a.getSubStringLength(0,c?G+1:G)}catch(ka){""}else g.getSpanWidth&&(k(l(b||c,e)),u[G]=h+g.getSpanWidth(d,a));return u[G]},D;d.rotation=0;var K=w(a.textContent.length);if(D=h+K>e){for(;p<=O;)v=Math.ceil((p+O)/2),c&&(I=l(c,v)),K=w(v,I&&I.length-1),p===O?p=O+1:K>e?O=v-1:p=v;0===O?k(""):b&&O===b.length-1||k(I||l(b||c,v))}c&&c.splice(0,v);d.actualWidth=K;d.rotation=G;return D},escapes:{"&":"&amp;",
"<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},buildText:function(d){var c=d.element,h=this,e=h.forExport,l=b(d.textStr,"").toString(),g=-1!==l.indexOf("<"),G=c.childNodes,I,v=C(c,"x"),u=d.styles,k=d.textWidth,w=u&&u.lineHeight,D=u&&u.textOutline,K=u&&"ellipsis"===u.textOverflow,n=u&&"nowrap"===u.whiteSpace,q=u&&u.fontSize,V,f=G.length;u=k&&!d.added&&this.box;var M=function(d){var b;h.styledMode||(b=/(px|em)$/.test(d&&d.style.fontSize)?d.style.fontSize:q||h.style.fontSize||12);return w?a(w):h.fontMetrics(b,
d.getAttribute("style")?d:c).h},t=function(d,a){p(h.escapes,function(b,c){a&&-1!==a.indexOf(b)||(d=d.toString().replace(new RegExp(b,"g"),c))});return d},W=function(d,a){var b=d.indexOf("<");d=d.substring(b,d.indexOf(">")-b);b=d.indexOf(a+"=");if(-1!==b&&(b=b+a.length+1,a=d.charAt(b),'"'===a||"'"===a))return d=d.substring(b+1),d.substring(0,d.indexOf(a))},x=/<br.*?>/g;var Q=[l,K,n,w,D,q,k].join();if(Q!==d.textCache){for(d.textCache=Q;f--;)c.removeChild(G[f]);g||D||K||k||-1!==l.indexOf(" ")&&(!n||
x.test(l))?(u&&u.appendChild(c),g?(l=h.styledMode?l.replace(/<(b|strong)>/g,'<span class="highcharts-strong">').replace(/<(i|em)>/g,'<span class="highcharts-emphasized">'):l.replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">'),l=l.replace(/<a/g,"<span").replace(/<\/(b|strong|i|em|a)>/g,"</span>").split(x)):l=[l],l=l.filter(function(d){return""!==d}),l.forEach(function(a,b){var l=0,g=0;a=a.replace(/^\s+|\s+$/g,"").replace(/<span/g,"|||<span").replace(/<\/span>/g,
"</span>|||");var G=a.split("|||");G.forEach(function(a){if(""!==a||1===G.length){var p={},u=H.createElementNS(h.SVG_NS,"tspan"),w,D;(w=W(a,"class"))&&C(u,"class",w);if(w=W(a,"style"))w=w.replace(/(;| |^)color([ :])/,"$1fill$2"),C(u,"style",w);(D=W(a,"href"))&&!e&&(C(u,"onclick",'location.href="'+D+'"'),C(u,"class","highcharts-anchor"),h.styledMode||L(u,{cursor:"pointer"}));a=t(a.replace(/<[a-zA-Z\/](.|\n)*?>/g,"")||" ");if(" "!==a){u.appendChild(H.createTextNode(a));l?p.dx=0:b&&null!==v&&(p.x=v);
C(u,p);c.appendChild(u);!l&&V&&(!O&&e&&L(u,{display:"block"}),C(u,"dy",M(u)));if(k){var S=a.replace(/([^\^])-/g,"$1- ").split(" ");p=!n&&(1<G.length||b||1<S.length);D=0;var f=M(u);if(K)I=h.truncate(d,u,a,void 0,0,Math.max(0,k-parseInt(q||12,10)),function(d,a){return d.substring(0,a)+"\u2026"});else if(p)for(;S.length;)S.length&&!n&&0<D&&(u=H.createElementNS(T,"tspan"),C(u,{dy:f,x:v}),w&&C(u,"style",w),u.appendChild(H.createTextNode(S.join(" ").replace(/- /g,"-"))),c.appendChild(u)),h.truncate(d,u,
null,S,0===D?g:0,k,function(d,a){return S.slice(0,a).join(" ").replace(/- /g,"-")}),g=d.actualWidth,D++}l++}}});V=V||c.childNodes.length}),K&&I&&d.attr("title",t(d.textStr,["&lt;","&gt;"])),u&&u.removeChild(c),D&&d.applyTextOutline&&d.applyTextOutline(D)):c.appendChild(H.createTextNode(t(l)))}},getContrast:function(d){d=r(d).rgba;d[0]*=1;d[1]*=1.2;d[2]*=.5;return 459<d[0]+d[1]+d[2]?"#000000":"#FFFFFF"},button:function(d,a,b,c,h,e,l,I,p,O){var v=this.label(d,a,b,p,null,null,O,null,"button"),u=0,k=
this.styledMode;v.attr(g({padding:8,r:2},h));if(!k){h=g({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontWeight:"normal"}},h);var w=h.style;delete h.style;e=g(h,{fill:"#e6e6e6"},e);var D=e.style;delete e.style;l=g(h,{fill:"#e6ebf5",style:{color:"#000000",fontWeight:"bold"}},l);var K=l.style;delete l.style;I=g(h,{style:{color:"#cccccc"}},I);var H=I.style;delete I.style}E(v.element,G?"mouseover":"mouseenter",function(){3!==u&&v.setState(1)});E(v.element,
G?"mouseout":"mouseleave",function(){3!==u&&v.setState(u)});v.setState=function(d){1!==d&&(v.state=u=d);v.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][d||0]);k||v.attr([h,e,l,I][d||0]).css([w,D,K,H][d||0])};k||v.attr(h).css(t({cursor:"default"},w));return v.on("click",function(d){3!==u&&c.call(v,d)})},crispLine:function(d,a){d[1]===d[4]&&(d[1]=d[4]=Math.round(d[1])-a%2/2);d[2]===d[5]&&(d[2]=d[5]=Math.round(d[2])+
a%2/2);return d},path:function(d){var a=this.styledMode?{}:{fill:"none"};k(d)?a.d=d:e(d)&&t(a,d);return this.createElement("path").attr(a)},circle:function(d,a,b){d=e(d)?d:"undefined"===typeof d?{}:{x:d,y:a,r:b};a=this.createElement("circle");a.xSetter=a.ySetter=function(d,a,b){b.setAttribute("c"+a,d)};return a.attr(d)},arc:function(d,a,b,c,h,l){e(d)?(c=d,a=c.y,b=c.r,d=c.x):c={innerR:c,start:h,end:l};d=this.symbol("arc",d,a,b,b,c);d.r=b;return d},rect:function(d,a,b,c,h,l){h=e(d)?d.r:h;var g=this.createElement("rect");
d=e(d)?d:"undefined"===typeof d?{}:{x:d,y:a,width:Math.max(b,0),height:Math.max(c,0)};this.styledMode||("undefined"!==typeof l&&(d.strokeWidth=l,d=g.crisp(d)),d.fill="none");h&&(d.r=h);g.rSetter=function(d,a,b){g.r=d;C(b,{rx:d,ry:d})};g.rGetter=function(){return g.r};return g.attr(d)},setSize:function(d,a,c){var h=this.alignedObjects,e=h.length;this.width=d;this.height=a;for(this.boxWrapper.animate({width:d,height:a},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},
duration:b(c,!0)?void 0:0});e--;)h[e].align()},g:function(d){var a=this.createElement("g");return d?a.attr({"class":"highcharts-"+d}):a},image:function(d,a,b,c,h,e){var l={preserveAspectRatio:"none"},g=function(d,a){d.setAttributeNS?d.setAttributeNS("http://www.w3.org/1999/xlink","href",a):d.setAttribute("hc-svg-href",a)},G=function(a){g(I.element,d);e.call(I,a)};1<arguments.length&&t(l,{x:a,y:b,width:c,height:h});var I=this.createElement("image").attr(l);e?(g(I.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),
l=new W.Image,E(l,"load",G),l.src=d,l.complete&&G({})):g(I.element,d);return I},symbol:function(d,a,c,e,l,g){var G=this,I=/^url\((.*?)\)$/,p=I.test(d),O=!p&&(this.symbols[d]?d:"circle"),v=O&&this.symbols[O],u=z(a)&&v&&v.call(this.symbols,Math.round(a),Math.round(c),e,l,g);if(v){var k=this.path(u);G.styledMode||k.attr("fill","none");t(k,{symbolName:O,x:a,y:c,width:e,height:l});g&&t(k,g)}else if(p){var w=d.match(I)[1];k=this.image(w);k.imgwidth=b(V[w]&&V[w].width,g&&g.width);k.imgheight=b(V[w]&&V[w].height,
g&&g.height);var D=function(){k.attr({width:k.width,height:k.height})};["width","height"].forEach(function(d){k[d+"Setter"]=function(d,a){var b={},c=this["img"+a],h="width"===a?"translateX":"translateY";this[a]=d;z(c)&&(g&&"within"===g.backgroundSize&&this.width&&this.height&&(c=Math.round(c*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(a,c),this.alignByTranslate||(b[h]=((this[a]||0)-c)/2,this.attr(b)))}});z(a)&&k.attr({x:a,y:c});k.isImg=!0;
z(k.imgwidth)&&z(k.imgheight)?D():(k.attr({width:0,height:0}),B("img",{onload:function(){var d=h[G.chartIndex];0===this.width&&(L(this,{position:"absolute",top:"-999em"}),H.body.appendChild(this));V[w]={width:this.width,height:this.height};k.imgwidth=this.width;k.imgheight=this.height;k.element&&D();this.parentNode&&this.parentNode.removeChild(this);G.imgCount--;if(!G.imgCount&&d&&!d.hasLoaded)d.onload()},src:w}),this.imgCount++)}return k},symbols:{circle:function(d,a,b,c){return this.arc(d+b/2,a+
c/2,b/2,c/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},square:function(d,a,b,c){return["M",d,a,"L",d+b,a,d+b,a+c,d,a+c,"Z"]},triangle:function(d,a,b,c){return["M",d+b/2,a,"L",d+b,a+c,d,a+c,"Z"]},"triangle-down":function(d,a,b,c){return["M",d,a,"L",d+b,a,d+b/2,a+c,"Z"]},diamond:function(d,a,b,c){return["M",d+b/2,a,"L",d+b,a+c/2,d+b/2,a+c,d,a+c/2,"Z"]},arc:function(d,a,c,h,e){var l=e.start,g=e.r||c,G=e.r||h||c,I=e.end-.001;c=e.innerR;h=b(e.open,.001>Math.abs(e.end-e.start-2*Math.PI));var p=Math.cos(l),
O=Math.sin(l),v=Math.cos(I);I=Math.sin(I);l=b(e.longArc,.001>e.end-l-Math.PI?0:1);g=["M",d+g*p,a+G*O,"A",g,G,0,l,b(e.clockwise,1),d+g*v,a+G*I];z(c)&&g.push(h?"M":"L",d+c*v,a+c*I,"A",c,c,0,l,z(e.clockwise)?1-e.clockwise:0,d+c*p,a+c*O);g.push(h?"":"Z");return g},callout:function(d,a,b,c,h){var e=Math.min(h&&h.r||0,b,c),l=e+6,g=h&&h.anchorX;h=h&&h.anchorY;var G=["M",d+e,a,"L",d+b-e,a,"C",d+b,a,d+b,a,d+b,a+e,"L",d+b,a+c-e,"C",d+b,a+c,d+b,a+c,d+b-e,a+c,"L",d+e,a+c,"C",d,a+c,d,a+c,d,a+c-e,"L",d,a+e,"C",
d,a,d,a,d+e,a];g&&g>b?h>a+l&&h<a+c-l?G.splice(13,3,"L",d+b,h-6,d+b+6,h,d+b,h+6,d+b,a+c-e):G.splice(13,3,"L",d+b,c/2,g,h,d+b,c/2,d+b,a+c-e):g&&0>g?h>a+l&&h<a+c-l?G.splice(33,3,"L",d,h+6,d-6,h,d,h-6,d,a+e):G.splice(33,3,"L",d,c/2,g,h,d,c/2,d,a+e):h&&h>c&&g>d+l&&g<d+b-l?G.splice(23,3,"L",g+6,a+c,g,a+c+6,g-6,a+c,d+e,a+c):h&&0>h&&g>d+l&&g<d+b-l&&G.splice(3,3,"L",g-6,a,g,a-6,g+6,a,b-e,a);return G}},clipRect:function(d,a,b,c){var h=l()+"-",e=this.createElement("clipPath").attr({id:h}).add(this.defs);d=this.rect(d,
a,b,c,0).add(e);d.id=h;d.clipPath=e;d.count=0;return d},text:function(d,a,b,c){var h={};if(c&&(this.allowHTML||!this.forExport))return this.html(d,a,b);h.x=Math.round(a||0);b&&(h.y=Math.round(b));z(d)&&(h.text=d);d=this.createElement("text").attr(h);c||(d.xSetter=function(d,a,b){var c=b.getElementsByTagName("tspan"),h=b.getAttribute(a),e;for(e=0;e<c.length;e++){var l=c[e];l.getAttribute(a)===h&&l.setAttribute(a,d)}b.setAttribute(a,d)});return d},fontMetrics:function(d,b){d=!this.styledMode&&/px/.test(d)||
!W.getComputedStyle?d||b&&b.style&&b.style.fontSize||this.style&&this.style.fontSize:b&&R.prototype.getStyle.call(b,"font-size");d=/px/.test(d)?a(d):12;b=24>d?d+3:Math.round(1.2*d);return{h:b,b:Math.round(.8*b),f:d}},rotCorr:function(d,a,b){var c=d;a&&b&&(c=Math.max(c*Math.cos(a*u),4));return{x:-d/3*Math.sin(a*u),y:c}},label:function(d,a,b,c,h,e,l,G,I){var p=this,O=p.styledMode,u=p.g("button"!==I&&"label"),k=u.text=p.text("",0,0,l).attr({zIndex:1}),w,D,H=0,n=3,V=0,T,f,M,S,W,x={},Q,K,m=/^url\((.*?)\)$/.test(c),
aa=O||m,A=function(){return O?w.strokeWidth()%2/2:(Q?parseInt(Q,10):0)%2/2};I&&u.addClass("highcharts-"+I);var r=function(){var d=k.element.style,a={};D=("undefined"===typeof T||"undefined"===typeof f||W)&&z(k.textStr)&&k.getBBox();u.width=(T||D.width||0)+2*n+V;u.height=(f||D.height||0)+2*n;K=n+Math.min(p.fontMetrics(d&&d.fontSize,k).b,D?D.height:Infinity);aa&&(w||(u.box=w=p.symbols[c]||m?p.symbol(c):p.rect(),w.addClass(("button"===I?"":"highcharts-label-box")+(I?" highcharts-"+I+"-box":"")),w.add(u),
d=A(),a.x=d,a.y=(G?-K:0)+d),a.width=Math.round(u.width),a.height=Math.round(u.height),w.attr(t(a,x)),x={})};var B=function(){var d=V+n;var a=G?0:K;z(T)&&D&&("center"===W||"right"===W)&&(d+={center:.5,right:1}[W]*(T-D.width));if(d!==k.x||a!==k.y)k.attr("x",d),k.hasBoxWidthChanged&&(D=k.getBBox(!0),r()),"undefined"!==typeof a&&k.attr("y",a);k.x=d;k.y=a};var X=function(d,a){w?w.attr(d,a):x[d]=a};u.onAdd=function(){k.add(u);u.attr({text:d||0===d?d:"",x:a,y:b});w&&z(h)&&u.attr({anchorX:h,anchorY:e})};
u.widthSetter=function(d){T=q(d)?d:null};u.heightSetter=function(d){f=d};u["text-alignSetter"]=function(d){W=d};u.paddingSetter=function(d){z(d)&&d!==n&&(n=u.padding=d,B())};u.paddingLeftSetter=function(d){z(d)&&d!==V&&(V=d,B())};u.alignSetter=function(d){d={left:0,center:.5,right:1}[d];d!==H&&(H=d,D&&u.attr({x:M}))};u.textSetter=function(d){"undefined"!==typeof d&&k.attr({text:d});r();B()};u["stroke-widthSetter"]=function(d,a){d&&(aa=!0);Q=this["stroke-width"]=d;X(a,d)};O?u.rSetter=function(d,a){X(a,
d)}:u.strokeSetter=u.fillSetter=u.rSetter=function(d,a){"r"!==a&&("fill"===a&&d&&(aa=!0),u[a]=d);X(a,d)};u.anchorXSetter=function(d,a){h=u.anchorX=d;X(a,Math.round(d)-A()-M)};u.anchorYSetter=function(d,a){e=u.anchorY=d;X(a,d-S)};u.xSetter=function(d){u.x=d;H&&(d-=H*((T||D.width)+2*n),u["forceAnimate:x"]=!0);M=Math.round(d);u.attr("translateX",M)};u.ySetter=function(d){S=u.y=Math.round(d);u.attr("translateY",S)};var C=u.css;l={css:function(d){if(d){var a={};d=g(d);u.textProps.forEach(function(b){"undefined"!==
typeof d[b]&&(a[b]=d[b],delete d[b])});k.css(a);"width"in a&&r();"fontSize"in a&&(r(),B())}return C.call(u,d)},getBBox:function(){return{width:D.width+2*n,height:D.height+2*n,x:D.x-n,y:D.y-n}},destroy:function(){v(u.element,"mouseenter");v(u.element,"mouseleave");k&&(k=k.destroy());w&&(w=w.destroy());R.prototype.destroy.call(u);u=p=r=B=X=null}};O||(l.shadow=function(d){d&&(r(),w&&w.shadow(d));return u});return t(u,l)}});f.Renderer=m});P(y,"parts/Html.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],
function(f,m){var J=m.attr,r=m.createElement,E=m.css,N=m.defined,F=m.extend,C=m.pick,B=m.pInt,L=f.isFirefox,z=f.isMS,x=f.isWebKit,A=f.SVGElement;m=f.SVGRenderer;var t=f.win;F(A.prototype,{htmlCss:function(n){var k="SPAN"===this.element.tagName&&n&&"width"in n,q=C(k&&n.width,void 0);if(k){delete n.width;this.textWidth=q;var e=!0}n&&"ellipsis"===n.textOverflow&&(n.whiteSpace="nowrap",n.overflow="hidden");this.styles=F(this.styles,n);E(this.element,n);e&&this.htmlUpdateTransform();return this},htmlGetBBox:function(){var n=
this.element;return{x:n.offsetLeft,y:n.offsetTop,width:n.offsetWidth,height:n.offsetHeight}},htmlUpdateTransform:function(){if(this.added){var n=this.renderer,k=this.element,q=this.translateX||0,e=this.translateY||0,c=this.x||0,g=this.y||0,p=this.textAlign||"left",b={left:0,center:.5,right:1}[p],a=this.styles,v=a&&a.whiteSpace;E(k,{marginLeft:q,marginTop:e});!n.styledMode&&this.shadows&&this.shadows.forEach(function(a){E(a,{marginLeft:q+1,marginTop:e+1})});this.inverted&&[].forEach.call(k.childNodes,
function(a){n.invertChild(a,k)});if("SPAN"===k.tagName){a=this.rotation;var D=this.textWidth&&B(this.textWidth),w=[a,p,k.innerHTML,this.textWidth,this.textAlign].join(),l;(l=D!==this.oldTextWidth)&&!(l=D>this.oldTextWidth)&&((l=this.textPxLength)||(E(k,{width:"",whiteSpace:v||"nowrap"}),l=k.offsetWidth),l=l>D);l&&(/[ \-]/.test(k.textContent||k.innerText)||"ellipsis"===k.style.textOverflow)?(E(k,{width:D+"px",display:"block",whiteSpace:v||"normal"}),this.oldTextWidth=D,this.hasBoxWidthChanged=!0):
this.hasBoxWidthChanged=!1;w!==this.cTT&&(v=n.fontMetrics(k.style.fontSize,k).b,!N(a)||a===(this.oldRotation||0)&&p===this.oldAlign||this.setSpanRotation(a,b,v),this.getSpanCorrection(!N(a)&&this.textPxLength||k.offsetWidth,v,b,a,p));E(k,{left:c+(this.xCorr||0)+"px",top:g+(this.yCorr||0)+"px"});this.cTT=w;this.oldRotation=a;this.oldAlign=p}}else this.alignOnAdd=!0},setSpanRotation:function(n,k,q){var e={},c=this.renderer.getTransformKey();e[c]=e.transform="rotate("+n+"deg)";e[c+(L?"Origin":"-origin")]=
e.transformOrigin=100*k+"% "+q+"px";E(this.element,e)},getSpanCorrection:function(n,k,q){this.xCorr=-n*q;this.yCorr=-k}});F(m.prototype,{getTransformKey:function(){return z&&!/Edge/.test(t.navigator.userAgent)?"-ms-transform":x?"-webkit-transform":L?"MozTransform":t.opera?"-o-transform":""},html:function(n,k,q){var e=this.createElement("span"),c=e.element,g=e.renderer,p=g.isSVG,b=function(a,b){["opacity","visibility"].forEach(function(c){a[c+"Setter"]=function(e,l,h){var g=a.div?a.div.style:b;A.prototype[c+
"Setter"].call(this,e,l,h);g&&(g[l]=e)}});a.addedSetters=!0};e.textSetter=function(a){a!==c.innerHTML&&(delete this.bBox,delete this.oldTextWidth);this.textStr=a;c.innerHTML=C(a,"");e.doTransform=!0};p&&b(e,e.element.style);e.xSetter=e.ySetter=e.alignSetter=e.rotationSetter=function(a,b){"align"===b&&(b="textAlign");e[b]=a;e.doTransform=!0};e.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)};e.attr({text:n,x:Math.round(k),y:Math.round(q)}).css({position:"absolute"});
g.styledMode||e.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize});c.style.whiteSpace="nowrap";e.css=e.htmlCss;p&&(e.add=function(a){var p=g.box.parentNode,k=[];if(this.parentGroup=a){var w=a.div;if(!w){for(;a;)k.push(a),a=a.parentGroup;k.reverse().forEach(function(a){function c(b,c){a[c]=b;"translateX"===c?g.left=b+"px":g.top=b+"px";a.doTransform=!0}var l=J(a.element,"class");w=a.div=a.div||r("div",l?{className:l}:void 0,{position:"absolute",left:(a.translateX||0)+"px",top:(a.translateY||
0)+"px",display:a.display,opacity:a.opacity,pointerEvents:a.styles&&a.styles.pointerEvents},w||p);var g=w.style;F(a,{classSetter:function(a){return function(b){this.element.setAttribute("class",b);a.className=b}}(w),on:function(){k[0].div&&e.on.apply({element:k[0].div},arguments);return a},translateXSetter:c,translateYSetter:c});a.addedSetters||b(a)})}}else w=p;w.appendChild(c);e.added=!0;e.alignOnAdd&&e.htmlUpdateTransform();return e});return e}})});P(y,"parts/Tick.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],
function(f,m){var J=m.clamp,r=m.correctFloat,E=m.defined,N=m.destroyObjectProperties,F=m.extend,C=m.isNumber,B=m.merge,L=m.objectEach,z=m.pick,x=f.fireEvent,A=f.deg2rad;m=function(){function t(n,k,q,e,c){this.isNewLabel=this.isNew=!0;this.axis=n;this.pos=k;this.type=q||"";this.parameters=c||{};this.tickmarkOffset=this.parameters.tickmarkOffset;this.options=this.parameters.options;q||e||this.addLabel()}t.prototype.addLabel=function(){var n=this,k=n.axis,q=k.options,e=k.chart,c=k.categories,g=k.names,
p=n.pos,b=z(n.options&&n.options.labels,q.labels),a=k.tickPositions,v=p===a[0],D=p===a[a.length-1];g=this.parameters.category||(c?z(c[p],g[p],p):p);var w=n.label;c=(!b.step||1===b.step)&&1===k.tickInterval;a=a.info;var l,h;if(k.isDatetimeAxis&&a){var u=e.time.resolveDTLFormat(q.dateTimeLabelFormats[!q.grid&&a.higherRanks[p]||a.unitName]);var H=u.main}n.isFirst=v;n.isLast=D;n.formatCtx={axis:k,chart:e,isFirst:v,isLast:D,dateTimeLabelFormat:H,tickPositionInfo:a,value:k.isLog?r(k.lin2log(g)):g,pos:p};
q=k.labelFormatter.call(n.formatCtx,this.formatCtx);if(h=u&&u.list)n.shortenLabel=function(){for(l=0;l<h.length;l++)if(w.attr({text:k.labelFormatter.call(F(n.formatCtx,{dateTimeLabelFormat:h[l]}))}),w.getBBox().width<k.getSlotWidth(n)-2*z(b.padding,5))return;w.attr({text:""})};c&&k._addedPlotLB&&k.isXAxis&&n.moveLabel(q,b);E(w)||n.movedLabel?w&&w.textStr!==q&&!c&&(!w.textWidth||b.style&&b.style.width||w.styles.width||w.css({width:null}),w.attr({text:q}),w.textPxLength=w.getBBox().width):(n.label=
w=n.createLabel({x:0,y:0},q,b),n.rotation=0)};t.prototype.createLabel=function(n,k,q){var e=this.axis,c=e.chart;if(n=E(k)&&q.enabled?c.renderer.text(k,n.x,n.y,q.useHTML).add(e.labelGroup):null)c.styledMode||n.css(B(q.style)),n.textPxLength=n.getBBox().width;return n};t.prototype.destroy=function(){N(this,this.axis)};t.prototype.getPosition=function(n,k,q,e){var c=this.axis,g=c.chart,p=e&&g.oldChartHeight||g.chartHeight;n={x:n?r(c.translate(k+q,null,null,e)+c.transB):c.left+c.offset+(c.opposite?(e&&
g.oldChartWidth||g.chartWidth)-c.right-c.left:0),y:n?p-c.bottom+c.offset-(c.opposite?c.height:0):r(p-c.translate(k+q,null,null,e)-c.transB)};n.y=J(n.y,-1E5,1E5);x(this,"afterGetPosition",{pos:n});return n};t.prototype.getLabelPosition=function(n,k,q,e,c,g,p,b){var a=this.axis,v=a.transA,D=a.isLinked&&a.linkedParent?a.linkedParent.reversed:a.reversed,w=a.staggerLines,l=a.tickRotCorr||{x:0,y:0},h=c.y,u=e||a.reserveSpaceDefault?0:-a.labelOffset*("center"===a.labelAlign?.5:1),H={};E(h)||(h=0===a.side?
q.rotation?-8:-q.getBBox().height:2===a.side?l.y+8:Math.cos(q.rotation*A)*(l.y-q.getBBox(!1,0).height/2));n=n+c.x+u+l.x-(g&&e?g*v*(D?-1:1):0);k=k+h-(g&&!e?g*v*(D?1:-1):0);w&&(q=p/(b||1)%w,a.opposite&&(q=w-q-1),k+=a.labelOffset/w*q);H.x=n;H.y=Math.round(k);x(this,"afterGetLabelPosition",{pos:H,tickmarkOffset:g,index:p});return H};t.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0};t.prototype.getMarkPath=function(n,k,q,e,c,g){return g.crispLine(["M",
n,k,"L",n+(c?0:-q),k+(c?q:0)],e)};t.prototype.handleOverflow=function(n){var k=this.axis,q=k.options.labels,e=n.x,c=k.chart.chartWidth,g=k.chart.spacing,p=z(k.labelLeft,Math.min(k.pos,g[3]));g=z(k.labelRight,Math.max(k.isRadial?0:k.pos+k.len,c-g[1]));var b=this.label,a=this.rotation,v={left:0,center:.5,right:1}[k.labelAlign||b.attr("align")],D=b.getBBox().width,w=k.getSlotWidth(this),l=w,h=1,u,H={};if(a||"justify"!==z(q.overflow,"justify"))0>a&&e-v*D<p?u=Math.round(e/Math.cos(a*A)-p):0<a&&e+v*D>g&&
(u=Math.round((c-e)/Math.cos(a*A)));else if(c=e+(1-v)*D,e-v*D<p?l=n.x+l*(1-v)-p:c>g&&(l=g-n.x+l*v,h=-1),l=Math.min(w,l),l<w&&"center"===k.labelAlign&&(n.x+=h*(w-l-v*(w-Math.min(D,l)))),D>l||k.autoRotation&&(b.styles||{}).width)u=l;u&&(this.shortenLabel?this.shortenLabel():(H.width=Math.floor(u),(q.style||{}).textOverflow||(H.textOverflow="ellipsis"),b.css(H)))};t.prototype.moveLabel=function(n,k){var q=this,e=q.label,c=!1,g=q.axis,p=g.reversed,b=g.chart.inverted;e&&e.textStr===n?(q.movedLabel=e,c=
!0,delete q.label):L(g.ticks,function(a){c||a.isNew||a===q||!a.label||a.label.textStr!==n||(q.movedLabel=a.label,c=!0,a.labelPos=q.movedLabel.xy,delete a.label)});if(!c&&(q.labelPos||e)){var a=q.labelPos||e.xy;e=b?a.x:p?0:g.width+g.left;g=b?p?g.width+g.left:0:a.y;q.movedLabel=q.createLabel({x:e,y:g},n,k);q.movedLabel&&q.movedLabel.attr({opacity:0})}};t.prototype.render=function(n,k,q){var e=this.axis,c=e.horiz,g=this.pos,p=z(this.tickmarkOffset,e.tickmarkOffset);g=this.getPosition(c,g,p,k);p=g.x;
var b=g.y;e=c&&p===e.pos+e.len||!c&&b===e.pos?-1:1;q=z(q,1);this.isActive=!0;this.renderGridLine(k,q,e);this.renderMark(g,q,e);this.renderLabel(g,k,q,n);this.isNew=!1;f.fireEvent(this,"afterRender")};t.prototype.renderGridLine=function(n,k,q){var e=this.axis,c=e.options,g=this.gridLine,p={},b=this.pos,a=this.type,v=z(this.tickmarkOffset,e.tickmarkOffset),D=e.chart.renderer,w=a?a+"Grid":"grid",l=c[w+"LineWidth"],h=c[w+"LineColor"];c=c[w+"LineDashStyle"];g||(e.chart.styledMode||(p.stroke=h,p["stroke-width"]=
l,c&&(p.dashstyle=c)),a||(p.zIndex=1),n&&(k=0),this.gridLine=g=D.path().attr(p).addClass("highcharts-"+(a?a+"-":"")+"grid-line").add(e.gridGroup));if(g&&(q=e.getPlotLinePath({value:b+v,lineWidth:g.strokeWidth()*q,force:"pass",old:n})))g[n||this.isNew?"attr":"animate"]({d:q,opacity:k})};t.prototype.renderMark=function(n,k,q){var e=this.axis,c=e.options,g=e.chart.renderer,p=this.type,b=p?p+"Tick":"tick",a=e.tickSize(b),v=this.mark,D=!v,w=n.x;n=n.y;var l=z(c[b+"Width"],!p&&e.isXAxis?1:0);c=c[b+"Color"];
a&&(e.opposite&&(a[0]=-a[0]),D&&(this.mark=v=g.path().addClass("highcharts-"+(p?p+"-":"")+"tick").add(e.axisGroup),e.chart.styledMode||v.attr({stroke:c,"stroke-width":l})),v[D?"attr":"animate"]({d:this.getMarkPath(w,n,a[0],v.strokeWidth()*q,e.horiz,g),opacity:k}))};t.prototype.renderLabel=function(n,k,q,e){var c=this.axis,g=c.horiz,p=c.options,b=this.label,a=p.labels,v=a.step;c=z(this.tickmarkOffset,c.tickmarkOffset);var D=!0,w=n.x;n=n.y;b&&C(w)&&(b.xy=n=this.getLabelPosition(w,n,b,g,a,c,e,v),this.isFirst&&
!this.isLast&&!z(p.showFirstLabel,1)||this.isLast&&!this.isFirst&&!z(p.showLastLabel,1)?D=!1:!g||a.step||a.rotation||k||0===q||this.handleOverflow(n),v&&e%v&&(D=!1),D&&C(n.y)?(n.opacity=q,b[this.isNewLabel?"attr":"animate"](n),this.isNewLabel=!1):(b.attr("y",-9999),this.isNewLabel=!0))};t.prototype.replaceMovedLabel=function(){var n=this.label,k=this.axis,q=k.reversed,e=this.axis.chart.inverted;if(n&&!this.isNew){var c=e?n.xy.x:q?k.left:k.width+k.left;q=e?q?k.width+k.top:k.top:n.xy.y;n.animate({x:c,
y:q,opacity:0},void 0,n.destroy);delete this.label}k.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel};return t}();f.Tick=m;return f.Tick});P(y,"parts/Time.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.defined,r=m.error,E=m.extend,N=m.isObject,F=m.merge,C=m.objectEach,B=m.pad,L=m.pick,z=m.splat,x=m.timeUnits,A=f.win;m=function(){function t(n){this.options={};this.variableTimezone=this.useUTC=!1;this.Date=A.Date;this.getTimezoneOffset=this.timezoneOffsetFunction();
this.update(n)}t.prototype.get=function(n,k){if(this.variableTimezone||this.timezoneOffset){var q=k.getTime(),e=q-this.getTimezoneOffset(k);k.setTime(e);n=k["getUTC"+n]();k.setTime(q);return n}return this.useUTC?k["getUTC"+n]():k["get"+n]()};t.prototype.set=function(n,k,q){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===n||"Seconds"===n||"Minutes"===n)return k["setUTC"+n](q);var e=this.getTimezoneOffset(k);e=k.getTime()-e;k.setTime(e);k["setUTC"+n](q);n=this.getTimezoneOffset(k);
e=k.getTime()+n;return k.setTime(e)}return this.useUTC?k["setUTC"+n](q):k["set"+n](q)};t.prototype.update=function(n){var k=L(n&&n.useUTC,!0);this.options=n=F(!0,this.options||{},n);this.Date=n.Date||A.Date||Date;this.timezoneOffset=(this.useUTC=k)&&n.timezoneOffset;this.getTimezoneOffset=this.timezoneOffsetFunction();this.variableTimezone=!(k&&!n.getTimezoneOffset&&!n.timezone)};t.prototype.makeTime=function(n,k,q,e,c,g){if(this.useUTC){var p=this.Date.UTC.apply(0,arguments);var b=this.getTimezoneOffset(p);
p+=b;var a=this.getTimezoneOffset(p);b!==a?p+=a-b:b-36E5!==this.getTimezoneOffset(p-36E5)||f.isSafari||(p-=36E5)}else p=(new this.Date(n,k,L(q,1),L(e,0),L(c,0),L(g,0))).getTime();return p};t.prototype.timezoneOffsetFunction=function(){var n=this,k=this.options,q=A.moment;if(!this.useUTC)return function(e){return 6E4*(new Date(e.toString())).getTimezoneOffset()};if(k.timezone){if(q)return function(e){return 6E4*-q.tz(e,k.timezone).utcOffset()};r(25)}return this.useUTC&&k.getTimezoneOffset?function(e){return 6E4*
k.getTimezoneOffset(e.valueOf())}:function(){return 6E4*(n.timezoneOffset||0)}};t.prototype.dateFormat=function(n,k,q){var e;if(!J(k)||isNaN(k))return(null===(e=f.defaultOptions.lang)||void 0===e?void 0:e.invalidDate)||"";n=L(n,"%Y-%m-%d %H:%M:%S");var c=this;e=new this.Date(k);var g=this.get("Hours",e),p=this.get("Day",e),b=this.get("Date",e),a=this.get("Month",e),v=this.get("FullYear",e),D=f.defaultOptions.lang,w=null===D||void 0===D?void 0:D.weekdays,l=null===D||void 0===D?void 0:D.shortWeekdays;
e=E({a:l?l[p]:w[p].substr(0,3),A:w[p],d:B(b),e:B(b,2," "),w:p,b:D.shortMonths[a],B:D.months[a],m:B(a+1),o:a+1,y:v.toString().substr(2,2),Y:v,H:B(g),k:g,I:B(g%12||12),l:g%12||12,M:B(this.get("Minutes",e)),p:12>g?"AM":"PM",P:12>g?"am":"pm",S:B(e.getSeconds()),L:B(Math.floor(k%1E3),3)},f.dateFormats);C(e,function(a,b){for(;-1!==n.indexOf("%"+b);)n=n.replace("%"+b,"function"===typeof a?a.call(c,k):a)});return q?n.substr(0,1).toUpperCase()+n.substr(1):n};t.prototype.resolveDTLFormat=function(n){return N(n,
!0)?n:(n=z(n),{main:n[0],from:n[1],to:n[2]})};t.prototype.getTimeTicks=function(n,k,q,e){var c=this,g=[],p={};var b=new c.Date(k);var a=n.unitRange,v=n.count||1,D;e=L(e,1);if(J(k)){c.set("Milliseconds",b,a>=x.second?0:v*Math.floor(c.get("Milliseconds",b)/v));a>=x.second&&c.set("Seconds",b,a>=x.minute?0:v*Math.floor(c.get("Seconds",b)/v));a>=x.minute&&c.set("Minutes",b,a>=x.hour?0:v*Math.floor(c.get("Minutes",b)/v));a>=x.hour&&c.set("Hours",b,a>=x.day?0:v*Math.floor(c.get("Hours",b)/v));a>=x.day&&
c.set("Date",b,a>=x.month?1:Math.max(1,v*Math.floor(c.get("Date",b)/v)));if(a>=x.month){c.set("Month",b,a>=x.year?0:v*Math.floor(c.get("Month",b)/v));var w=c.get("FullYear",b)}a>=x.year&&c.set("FullYear",b,w-w%v);a===x.week&&(w=c.get("Day",b),c.set("Date",b,c.get("Date",b)-w+e+(w<e?-7:0)));w=c.get("FullYear",b);e=c.get("Month",b);var l=c.get("Date",b),h=c.get("Hours",b);k=b.getTime();c.variableTimezone&&(D=q-k>4*x.month||c.getTimezoneOffset(k)!==c.getTimezoneOffset(q));k=b.getTime();for(b=1;k<q;)g.push(k),
k=a===x.year?c.makeTime(w+b*v,0):a===x.month?c.makeTime(w,e+b*v):!D||a!==x.day&&a!==x.week?D&&a===x.hour&&1<v?c.makeTime(w,e,l,h+b*v):k+a*v:c.makeTime(w,e,l+b*v*(a===x.day?1:7)),b++;g.push(k);a<=x.hour&&1E4>g.length&&g.forEach(function(a){0===a%18E5&&"000000000"===c.dateFormat("%H%M%S%L",a)&&(p[a]="day")})}g.info=E(n,{higherRanks:p,totalRange:a*v});return g};t.defaultOptions={Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0};return t}();f.Time=m;return f.Time});P(y,
"parts/Options.js",[y["parts/Globals.js"],y["parts/Time.js"],y["parts/Color.js"],y["parts/Utilities.js"]],function(f,m,J,r){J=J.parse;var E=r.merge;f.defaultOptions={colors:"#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1".split(" "),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),
weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),decimalPoint:".",numericSymbols:"kMGTPE".split(""),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{},time:m.defaultOptions,chart:{styledMode:!1,borderRadius:0,colorCount:10,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}},width:null,height:null,borderColor:"#335cad",backgroundColor:"#ffffff",
plotBorderColor:"#cccccc"},title:{text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{text:"",align:"center",widthAdjust:-44},caption:{margin:15,text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},labels:{style:{position:"absolute",color:"#333333"}},legend:{enabled:!0,align:"center",alignColumns:!0,layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{activeColor:"#003399",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",
cursor:"pointer",fontSize:"12px",fontWeight:"bold",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#cccccc"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:f.svg,
borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},footerFormat:"",padding:8,snap:f.isTouchDevice?25:10,headerFormat:'<span style="font-size: 10px">{point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:J("#f7f7f7").setOpacity(.85).get(),
borderWidth:1,shadow:!0,style:{color:"#333333",cursor:"default",fontSize:"12px",whiteSpace:"nowrap"}},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"9px"},text:"Highcharts.com"}};f.setOptions=function(m){f.defaultOptions=E(!0,f.defaultOptions,m);(m.time||m.global)&&f.time.update(E(f.defaultOptions.global,f.defaultOptions.time,m.global,m.time));return f.defaultOptions};f.getOptions=
function(){return f.defaultOptions};f.defaultPlotOptions=f.defaultOptions.plotOptions;f.time=new m(E(f.defaultOptions.global,f.defaultOptions.time));f.dateFormat=function(m,r,C){return f.time.dateFormat(m,r,C)};""});P(y,"parts/Axis.js",[y["parts/Globals.js"],y["parts/Color.js"],y["parts/Tick.js"],y["parts/Utilities.js"]],function(f,m,J,r){var E=m.parse,N=r.addEvent,F=r.animObject,C=r.arrayMax,B=r.arrayMin,L=r.clamp,z=r.correctFloat,x=r.defined,A=r.destroyObjectProperties,t=r.error,n=r.extend,k=r.fireEvent,
q=r.format,e=r.getMagnitude,c=r.isArray,g=r.isFunction,p=r.isNumber,b=r.isString,a=r.merge,v=r.normalizeTickInterval,D=r.objectEach,w=r.pick,l=r.relativeLength,h=r.removeEvent,u=r.splat,H=r.syncTimeout,M=f.defaultOptions,Q=f.deg2rad;m=function(){this.init.apply(this,arguments)};n(m.prototype,{defaultOptions:{dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e. %b"},week:{main:"%e. %b"},
month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,labels:{enabled:!0,indentation:10,x:0,style:{color:"#666666",cursor:"default",fontSize:"11px"}},maxPadding:.01,minorTickLength:2,minorTickPosition:"outside",minPadding:.01,showEmpty:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",style:{color:"#666666"}},type:"linear",minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#ccd6eb",
lineWidth:1,gridLineColor:"#e6e6e6",tickColor:"#ccd6eb"},defaultYAxisOptions:{endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){var a=this.axis.chart.numberFormatter;return a(this.total,-1)},style:{color:"#000000",fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},defaultLeftAxisOptions:{labels:{x:-15},
title:{rotation:270}},defaultRightAxisOptions:{labels:{x:15},title:{rotation:90}},defaultBottomAxisOptions:{labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},defaultTopAxisOptions:{labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},init:function(a,d){var b=d.isX,c=this;c.chart=a;c.horiz=a.inverted&&!c.isZAxis?!b:b;c.isXAxis=b;c.coll=c.coll||(b?"xAxis":"yAxis");k(this,"init",{userOptions:d});c.opposite=d.opposite;c.side=d.side||(c.horiz?c.opposite?0:2:c.opposite?1:3);c.setOptions(d);
var h=this.options,e=h.type;c.labelFormatter=h.labels.formatter||c.defaultLabelFormatter;c.userOptions=d;c.minPixelPadding=0;c.reversed=h.reversed;c.visible=!1!==h.visible;c.zoomEnabled=!1!==h.zoomEnabled;c.hasNames="category"===e||!0===h.categories;c.categories=h.categories||c.hasNames;c.names||(c.names=[],c.names.keys={});c.plotLinesAndBandsGroups={};c.isLog="logarithmic"===e;c.isDatetimeAxis="datetime"===e;c.positiveValuesOnly=c.isLog&&!c.allowNegativeLog;c.isLinked=x(h.linkedTo);c.ticks={};c.labelEdge=
[];c.minorTicks={};c.plotLinesAndBands=[];c.alternateBands={};c.len=0;c.minRange=c.userMinRange=h.minRange||h.maxZoom;c.range=h.range;c.offset=h.offset||0;c.stacks={};c.oldStacks={};c.stacksTouched=0;c.max=null;c.min=null;c.crosshair=w(h.crosshair,u(a.options.tooltip.crosshairs)[b?0:1],!1);d=c.options.events;-1===a.axes.indexOf(c)&&(b?a.axes.splice(a.xAxis.length,0,c):a.axes.push(c),a[c.coll].push(c));c.series=c.series||[];a.inverted&&!c.isZAxis&&b&&"undefined"===typeof c.reversed&&(c.reversed=!0);
D(d,function(d,a){g(d)&&N(c,a,d)});c.lin2log=h.linearToLogConverter||c.lin2log;c.isLog&&(c.val2lin=c.log2lin,c.lin2val=c.lin2log);k(this,"afterInit")},setOptions:function(b){this.options=a(this.defaultOptions,"yAxis"===this.coll&&this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],a(M[this.coll],b));k(this,"afterSetOptions",{userOptions:b})},defaultLabelFormatter:function(){var a=this.axis,d=this.value,
b=a.chart.time,c=a.categories,h=this.dateTimeLabelFormat,e=M.lang,l=e.numericSymbols;e=e.numericSymbolMagnitude||1E3;var g=l&&l.length,p=a.options.labels.format;a=a.isLog?Math.abs(d):a.tickInterval;var u=this.chart,v=u.numberFormatter;if(p)var k=q(p,this,u);else if(c)k=d;else if(h)k=b.dateFormat(h,d);else if(g&&1E3<=a)for(;g--&&"undefined"===typeof k;)b=Math.pow(e,g+1),a>=b&&0===10*d%b&&null!==l[g]&&0!==d&&(k=v(d/b,-1)+l[g]);"undefined"===typeof k&&(k=1E4<=Math.abs(d)?v(d,-1):v(d,-1,void 0,""));return k},
getSeriesExtremes:function(){var a=this,d=a.chart,b;k(this,"getSeriesExtremes",null,function(){a.hasVisibleSeries=!1;a.dataMin=a.dataMax=a.threshold=null;a.softThreshold=!a.isXAxis;a.buildStacks&&a.buildStacks();a.series.forEach(function(c){if(c.visible||!d.options.chart.ignoreHiddenSeries){var h=c.options,e=h.threshold;a.hasVisibleSeries=!0;a.positiveValuesOnly&&0>=e&&(e=null);if(a.isXAxis){if(h=c.xData,h.length){b=c.getXExtremes(h);var l=b.min;var g=b.max;p(l)||l instanceof Date||(h=h.filter(p),
b=c.getXExtremes(h),l=b.min,g=b.max);h.length&&(a.dataMin=Math.min(w(a.dataMin,l),l),a.dataMax=Math.max(w(a.dataMax,g),g))}}else if(c.getExtremes(),g=c.dataMax,l=c.dataMin,x(l)&&x(g)&&(a.dataMin=Math.min(w(a.dataMin,l),l),a.dataMax=Math.max(w(a.dataMax,g),g)),x(e)&&(a.threshold=e),!h.softThreshold||a.positiveValuesOnly)a.softThreshold=!1}})});k(this,"afterGetSeriesExtremes")},translate:function(a,d,b,c,h,e){var l=this.linkedParent||this,g=1,G=0,I=c?l.oldTransA:l.transA;c=c?l.oldMin:l.min;var u=l.minPixelPadding;
h=(l.isOrdinal||l.isBroken||l.isLog&&h)&&l.lin2val;I||(I=l.transA);b&&(g*=-1,G=l.len);l.reversed&&(g*=-1,G-=g*(l.sector||l.len));d?(a=(a*g+G-u)/I+c,h&&(a=l.lin2val(a))):(h&&(a=l.val2lin(a)),a=p(c)?g*(a-c)*I+G+g*u+(p(e)?I*e:0):void 0);return a},toPixels:function(a,d){return this.translate(a,!1,!this.horiz,null,!0)+(d?0:this.pos)},toValue:function(a,d){return this.translate(a-(d?0:this.pos),!0,!this.horiz,null,!0)},getPlotLinePath:function(a){var d=this,b=d.chart,c=d.left,h=d.top,e=a.old,l=a.value,
g=a.translatedValue,G=a.lineWidth,u=a.force,v,D,H,n,q=e&&b.oldChartHeight||b.chartHeight,f=e&&b.oldChartWidth||b.chartWidth,M,t=d.transB,x=function(d,a,b){if("pass"!==u&&d<a||d>b)u?d=L(d,a,b):M=!0;return d};a={value:l,lineWidth:G,old:e,force:u,acrossPanes:a.acrossPanes,translatedValue:g};k(this,"getPlotLinePath",a,function(a){g=w(g,d.translate(l,null,null,e));g=L(g,-1E5,1E5);v=H=Math.round(g+t);D=n=Math.round(q-g-t);p(g)?d.horiz?(D=h,n=q-d.bottom,v=H=x(v,c,c+d.width)):(v=c,H=f-d.right,D=n=x(D,h,h+
d.height)):(M=!0,u=!1);a.path=M&&!u?null:b.renderer.crispLine(["M",v,D,"L",H,n],G||1)});return a.path},getLinearTickPositions:function(a,d,b){var c=z(Math.floor(d/a)*a);b=z(Math.ceil(b/a)*a);var h=[],e;z(c+a)===c&&(e=20);if(this.single)return[d];for(d=c;d<=b;){h.push(d);d=z(d+a,e);if(d===l)break;var l=d}return h},getMinorTickInterval:function(){var a=this.options;return!0===a.minorTicks?w(a.minorTickInterval,"auto"):!1===a.minorTicks?null:a.minorTickInterval},getMinorTickPositions:function(){var a=
this,d=a.options,b=a.tickPositions,c=a.minorTickInterval,h=[],e=a.pointRangePadding||0,l=a.min-e;e=a.max+e;var g=e-l;if(g&&g/c<a.len/3)if(a.isLog)this.paddedTicks.forEach(function(d,b,e){b&&h.push.apply(h,a.getLogTickPositions(c,e[b-1],e[b],!0))});else if(a.isDatetimeAxis&&"auto"===this.getMinorTickInterval())h=h.concat(a.getTimeTicks(a.normalizeTimeTickInterval(c),l,e,d.startOfWeek));else for(d=l+(b[0]-l)%c;d<=e&&d!==h[0];d+=c)h.push(d);0!==h.length&&a.trimTicks(h);return h},adjustForMinRange:function(){var a=
this.options,d=this.min,b=this.max,c,h,e,l,g;this.isXAxis&&"undefined"===typeof this.minRange&&!this.isLog&&(x(a.min)||x(a.max)?this.minRange=null:(this.series.forEach(function(d){l=d.xData;for(h=g=d.xIncrement?1:l.length-1;0<h;h--)if(e=l[h]-l[h-1],"undefined"===typeof c||e<c)c=e}),this.minRange=Math.min(5*c,this.dataMax-this.dataMin)));if(b-d<this.minRange){var p=this.dataMax-this.dataMin>=this.minRange;var u=this.minRange;var v=(u-b+d)/2;v=[d-v,w(a.min,d-v)];p&&(v[2]=this.isLog?this.log2lin(this.dataMin):
this.dataMin);d=C(v);b=[d+u,w(a.max,d+u)];p&&(b[2]=this.isLog?this.log2lin(this.dataMax):this.dataMax);b=B(b);b-d<u&&(v[0]=b-u,v[1]=w(a.min,b-u),d=C(v))}this.min=d;this.max=b},getClosest:function(){var a;this.categories?a=1:this.series.forEach(function(d){var b=d.closestPointRange,c=d.visible||!d.chart.options.chart.ignoreHiddenSeries;!d.noSharedTooltip&&x(b)&&c&&(a=x(a)?Math.min(a,b):b)});return a},nameToX:function(a){var d=c(this.categories),b=d?this.categories:this.names,h=a.options.x;a.series.requireSorting=
!1;x(h)||(h=!1===this.options.uniqueNames?a.series.autoIncrement():d?b.indexOf(a.name):w(b.keys[a.name],-1));if(-1===h){if(!d)var e=b.length}else e=h;"undefined"!==typeof e&&(this.names[e]=a.name,this.names.keys[a.name]=e);return e},updateNames:function(){var a=this,d=this.names;0<d.length&&(Object.keys(d.keys).forEach(function(a){delete d.keys[a]}),d.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(d){d.xIncrement=null;if(!d.points||d.isDirtyData)a.max=Math.max(a.max,d.xData.length-
1),d.processData(),d.generatePoints();d.data.forEach(function(b,c){if(b&&b.options&&"undefined"!==typeof b.name){var h=a.nameToX(b);"undefined"!==typeof h&&h!==b.x&&(b.x=h,d.xData[c]=h)}})}))},setAxisTranslation:function(a){var d=this,c=d.max-d.min,h=d.axisPointRange||0,e=0,l=0,g=d.linkedParent,p=!!d.categories,u=d.transA,G=d.isXAxis;if(G||p||h){var v=d.getClosest();g?(e=g.minPointOffset,l=g.pointRangePadding):d.series.forEach(function(a){var c=p?1:G?w(a.options.pointRange,v,0):d.axisPointRange||
0,g=a.options.pointPlacement;h=Math.max(h,c);if(!d.single||p)a=a.is("xrange")?!G:G,e=Math.max(e,a&&b(g)?0:c/2),l=Math.max(l,a&&"on"===g?0:c)});g=d.ordinalSlope&&v?d.ordinalSlope/v:1;d.minPointOffset=e*=g;d.pointRangePadding=l*=g;d.pointRange=Math.min(h,d.single&&p?1:c);G&&(d.closestPointRange=v)}a&&(d.oldTransA=u);d.translationSlope=d.transA=u=d.staticScale||d.len/(c+l||1);d.transB=d.horiz?d.left:d.bottom;d.minPixelPadding=u*e;k(this,"afterSetAxisTranslation")},minFromRange:function(){return this.max-
this.range},setTickInterval:function(a){var d=this,b=d.chart,c=d.options,h=d.isLog,l=d.isDatetimeAxis,g=d.isXAxis,u=d.isLinked,G=c.maxPadding,D=c.minPadding,H=c.tickInterval,n=c.tickPixelInterval,q=d.categories,f=p(d.threshold)?d.threshold:null,M=d.softThreshold;l||q||u||this.getTickAmount();var Q=w(d.userMin,c.min);var m=w(d.userMax,c.max);if(u){d.linkedParent=b[d.coll][c.linkedTo];var A=d.linkedParent.getExtremes();d.min=w(A.min,A.dataMin);d.max=w(A.max,A.dataMax);c.type!==d.linkedParent.options.type&&
t(11,1,b)}else{if(!M&&x(f))if(d.dataMin>=f)A=f,D=0;else if(d.dataMax<=f){var r=f;G=0}d.min=w(Q,A,d.dataMin);d.max=w(m,r,d.dataMax)}h&&(d.positiveValuesOnly&&!a&&0>=Math.min(d.min,w(d.dataMin,d.min))&&t(10,1,b),d.min=z(d.log2lin(d.min),16),d.max=z(d.log2lin(d.max),16));d.range&&x(d.max)&&(d.userMin=d.min=Q=Math.max(d.dataMin,d.minFromRange()),d.userMax=m=d.max,d.range=null);k(d,"foundExtremes");d.beforePadding&&d.beforePadding();d.adjustForMinRange();!(q||d.axisPointRange||d.usePercentage||u)&&x(d.min)&&
x(d.max)&&(b=d.max-d.min)&&(!x(Q)&&D&&(d.min-=b*D),!x(m)&&G&&(d.max+=b*G));p(d.userMin)||(p(c.softMin)&&c.softMin<d.min&&(d.min=Q=c.softMin),p(c.floor)&&(d.min=Math.max(d.min,c.floor)));p(d.userMax)||(p(c.softMax)&&c.softMax>d.max&&(d.max=m=c.softMax),p(c.ceiling)&&(d.max=Math.min(d.max,c.ceiling)));M&&x(d.dataMin)&&(f=f||0,!x(Q)&&d.min<f&&d.dataMin>=f?d.min=d.options.minRange?Math.min(f,d.max-d.minRange):f:!x(m)&&d.max>f&&d.dataMax<=f&&(d.max=d.options.minRange?Math.max(f,d.min+d.minRange):f));d.tickInterval=
d.min===d.max||"undefined"===typeof d.min||"undefined"===typeof d.max?1:u&&!H&&n===d.linkedParent.options.tickPixelInterval?H=d.linkedParent.tickInterval:w(H,this.tickAmount?(d.max-d.min)/Math.max(this.tickAmount-1,1):void 0,q?1:(d.max-d.min)*n/Math.max(d.len,n));g&&!a&&d.series.forEach(function(a){a.processData(d.min!==d.oldMin||d.max!==d.oldMax)});d.setAxisTranslation(!0);d.beforeSetTickPositions&&d.beforeSetTickPositions();d.postProcessTickInterval&&(d.tickInterval=d.postProcessTickInterval(d.tickInterval));
d.pointRange&&!H&&(d.tickInterval=Math.max(d.pointRange,d.tickInterval));a=w(c.minTickInterval,d.isDatetimeAxis&&d.closestPointRange);!H&&d.tickInterval<a&&(d.tickInterval=a);l||h||H||(d.tickInterval=v(d.tickInterval,null,e(d.tickInterval),w(c.allowDecimals,!(.5<d.tickInterval&&5>d.tickInterval&&1E3<d.max&&9999>d.max)),!!this.tickAmount));this.tickAmount||(d.tickInterval=d.unsquish());this.setTickPositions()},setTickPositions:function(){var a=this.options,d=a.tickPositions;var b=this.getMinorTickInterval();
var c=a.tickPositioner,h=a.startOnTick,e=a.endOnTick;this.tickmarkOffset=this.categories&&"between"===a.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval="auto"===b&&this.tickInterval?this.tickInterval/5:b;this.single=this.min===this.max&&x(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==a.allowDecimals);this.tickPositions=b=d&&d.slice();!b&&(!this.ordinalPositions&&(this.max-this.min)/this.tickInterval>Math.max(2*this.len,200)?(b=[this.min,this.max],t(19,!1,
this.chart)):b=this.isDatetimeAxis?this.getTimeTicks(this.normalizeTimeTickInterval(this.tickInterval,a.units),this.min,this.max,a.startOfWeek,this.ordinalPositions,this.closestPointRange,!0):this.isLog?this.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max),b.length>this.len&&(b=[b[0],b.pop()],b[0]===b[1]&&(b.length=1)),this.tickPositions=b,c&&(c=c.apply(this,[this.min,this.max])))&&(this.tickPositions=b=c);this.paddedTicks=b.slice(0);
this.trimTicks(b,h,e);this.isLinked||(this.single&&2>b.length&&!this.categories&&!this.series.some(function(d){return d.is("heatmap")&&"between"===d.options.pointPlacement})&&(this.min-=.5,this.max+=.5),d||c||this.adjustTickAmount());k(this,"afterSetTickPositions")},trimTicks:function(a,d,b){var c=a[0],h=a[a.length-1],e=!this.isOrdinal&&this.minPointOffset||0;k(this,"trimTicks");if(!this.isLinked){if(d&&-Infinity!==c)this.min=c;else for(;this.min-e>a[0];)a.shift();if(b)this.max=h;else for(;this.max+
e<a[a.length-1];)a.pop();0===a.length&&x(c)&&!this.options.tickPositions&&a.push((h+c)/2)}},alignToOthers:function(){var a={},d,b=this.options;!1===this.chart.options.chart.alignTicks||!1===b.alignTicks||!1===b.startOnTick||!1===b.endOnTick||this.isLog||this.chart[this.coll].forEach(function(b){var c=b.options;c=[b.horiz?c.left:c.top,c.width,c.height,c.pane].join();b.series.length&&(a[c]?d=!0:a[c]=1)});return d},getTickAmount:function(){var a=this.options,d=a.tickAmount,b=a.tickPixelInterval;!x(a.tickInterval)&&
this.len<b&&!this.isRadial&&!this.isLog&&a.startOnTick&&a.endOnTick&&(d=2);!d&&this.alignToOthers()&&(d=Math.ceil(this.len/b)+1);4>d&&(this.finalTickAmt=d,d=5);this.tickAmount=d},adjustTickAmount:function(){var a=this.options,d=this.tickInterval,b=this.tickPositions,c=this.tickAmount,h=this.finalTickAmt,e=b&&b.length,l=w(this.threshold,this.softThreshold?0:null),g;if(this.hasData()){if(e<c){for(g=this.min;b.length<c;)b.length%2||g===l?b.push(z(b[b.length-1]+d)):b.unshift(z(b[0]-d));this.transA*=(e-
1)/(c-1);this.min=a.startOnTick?b[0]:Math.min(this.min,b[0]);this.max=a.endOnTick?b[b.length-1]:Math.max(this.max,b[b.length-1])}else e>c&&(this.tickInterval*=2,this.setTickPositions());if(x(h)){for(d=a=b.length;d--;)(3===h&&1===d%2||2>=h&&0<d&&d<a-1)&&b.splice(d,1);this.finalTickAmt=void 0}}},setScale:function(){var a=this.series.some(function(d){return d.isDirtyData||d.isDirty||d.xAxis&&d.xAxis.isDirty}),d;this.oldMin=this.min;this.oldMax=this.max;this.oldAxisLength=this.len;this.setAxisSize();
(d=this.len!==this.oldAxisLength)||a||this.isLinked||this.forceRedraw||this.userMin!==this.oldUserMin||this.userMax!==this.oldUserMax||this.alignToOthers()?(this.resetStacks&&this.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.oldUserMin=this.userMin,this.oldUserMax=this.userMax,this.isDirty||(this.isDirty=d||this.min!==this.oldMin||this.max!==this.oldMax)):this.cleanStacks&&this.cleanStacks();k(this,"afterSetScale")},setExtremes:function(a,d,b,c,h){var e=this,
l=e.chart;b=w(b,!0);e.series.forEach(function(d){delete d.kdTree});h=n(h,{min:a,max:d});k(e,"setExtremes",h,function(){e.userMin=a;e.userMax=d;e.eventArgs=h;b&&l.redraw(c)})},zoom:function(a,d){var b=this.dataMin,c=this.dataMax,h=this.options,e=Math.min(b,w(h.min,b)),l=Math.max(c,w(h.max,c));a={newMin:a,newMax:d};k(this,"zoom",a,function(d){var a=d.newMin,h=d.newMax;if(a!==this.min||h!==this.max)this.allowZoomOutside||(x(b)&&(a<e&&(a=e),a>l&&(a=l)),x(c)&&(h<e&&(h=e),h>l&&(h=l))),this.displayBtn="undefined"!==
typeof a||"undefined"!==typeof h,this.setExtremes(a,h,!1,void 0,{trigger:"zoom"});d.zoomed=!0});return a.zoomed},setAxisSize:function(){var a=this.chart,d=this.options,b=d.offsets||[0,0,0,0],c=this.horiz,h=this.width=Math.round(l(w(d.width,a.plotWidth-b[3]+b[1]),a.plotWidth)),e=this.height=Math.round(l(w(d.height,a.plotHeight-b[0]+b[2]),a.plotHeight)),g=this.top=Math.round(l(w(d.top,a.plotTop+b[0]),a.plotHeight,a.plotTop));d=this.left=Math.round(l(w(d.left,a.plotLeft+b[3]),a.plotWidth,a.plotLeft));
this.bottom=a.chartHeight-e-g;this.right=a.chartWidth-h-d;this.len=Math.max(c?h:e,0);this.pos=c?d:g},getExtremes:function(){var a=this.isLog;return{min:a?z(this.lin2log(this.min)):this.min,max:a?z(this.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(a){var d=this.isLog,b=d?this.lin2log(this.min):this.min;d=d?this.lin2log(this.max):this.max;null===a||-Infinity===a?a=b:Infinity===a?a=d:b>a?a=b:d<a&&(a=d);return this.translate(a,
0,1,0,1)},autoLabelAlign:function(a){var d=(w(a,0)-90*this.side+720)%360;a={align:"center"};k(this,"autoLabelAlign",a,function(a){15<d&&165>d?a.align="right":195<d&&345>d&&(a.align="left")});return a.align},tickSize:function(a){var d=this.options,b=d[a+"Length"],c=w(d[a+"Width"],"tick"===a&&this.isXAxis&&!this.categories?1:0);if(c&&b){"inside"===d[a+"Position"]&&(b=-b);var h=[b,c]}a={tickSize:h};k(this,"afterTickSize",a);return a.tickSize},labelMetrics:function(){var a=this.tickPositions&&this.tickPositions[0]||
0;return this.chart.renderer.fontMetrics(this.options.labels.style&&this.options.labels.style.fontSize,this.ticks[a]&&this.ticks[a].label)},unsquish:function(){var a=this.options.labels,d=this.horiz,b=this.tickInterval,c=b,h=this.len/(((this.categories?1:0)+this.max-this.min)/b),e,l=a.rotation,g=this.labelMetrics(),p,u=Number.MAX_VALUE,v,k=this.max-this.min,D=function(d){var a=d/(h||1);a=1<a?Math.ceil(a):1;a*b>k&&Infinity!==d&&Infinity!==h&&k&&(a=Math.ceil(k/b));return z(a*b)};d?(v=!a.staggerLines&&
!a.step&&(x(l)?[l]:h<w(a.autoRotationLimit,80)&&a.autoRotation))&&v.forEach(function(d){if(d===l||d&&-90<=d&&90>=d){p=D(Math.abs(g.h/Math.sin(Q*d)));var a=p+Math.abs(d/360);a<u&&(u=a,e=d,c=p)}}):a.step||(c=D(g.h));this.autoRotation=v;this.labelRotation=w(e,l);return c},getSlotWidth:function(a){var d=this.chart,b=this.horiz,c=this.options.labels,h=Math.max(this.tickPositions.length-(this.categories?0:1),1),e=d.margin[3];return a&&a.slotWidth||b&&2>(c.step||0)&&!c.rotation&&(this.staggerLines||1)*this.len/
h||!b&&(c.style&&parseInt(c.style.width,10)||e&&e-d.spacing[3]||.33*d.chartWidth)},renderUnsquish:function(){var a=this.chart,d=a.renderer,c=this.tickPositions,h=this.ticks,e=this.options.labels,l=e&&e.style||{},g=this.horiz,p=this.getSlotWidth(),u=Math.max(1,Math.round(p-2*(e.padding||5))),v={},k=this.labelMetrics(),w=e.style&&e.style.textOverflow,D=0;b(e.rotation)||(v.rotation=e.rotation||0);c.forEach(function(d){d=h[d];d.movedLabel&&d.replaceMovedLabel();d&&d.label&&d.label.textPxLength>D&&(D=
d.label.textPxLength)});this.maxLabelLength=D;if(this.autoRotation)D>u&&D>k.h?v.rotation=this.labelRotation:this.labelRotation=0;else if(p){var H=u;if(!w){var n="clip";for(u=c.length;!g&&u--;){var q=c[u];if(q=h[q].label)q.styles&&"ellipsis"===q.styles.textOverflow?q.css({textOverflow:"clip"}):q.textPxLength>p&&q.css({width:p+"px"}),q.getBBox().height>this.len/c.length-(k.h-k.f)&&(q.specificTextOverflow="ellipsis")}}}v.rotation&&(H=D>.5*a.chartHeight?.33*a.chartHeight:D,w||(n="ellipsis"));if(this.labelAlign=
e.align||this.autoLabelAlign(this.labelRotation))v.align=this.labelAlign;c.forEach(function(d){var a=(d=h[d])&&d.label,b=l.width,c={};a&&(a.attr(v),d.shortenLabel?d.shortenLabel():H&&!b&&"nowrap"!==l.whiteSpace&&(H<a.textPxLength||"SPAN"===a.element.tagName)?(c.width=H,w||(c.textOverflow=a.specificTextOverflow||n),a.css(c)):a.styles&&a.styles.width&&!c.width&&!b&&a.css({width:null}),delete a.specificTextOverflow,d.rotation=v.rotation)},this);this.tickRotCorr=d.rotCorr(k.b,this.labelRotation||0,0!==
this.side)},hasData:function(){return this.series.some(function(a){return a.hasData()})||this.options.showEmpty&&x(this.min)&&x(this.max)},addTitle:function(b){var d=this.chart.renderer,c=this.horiz,h=this.opposite,e=this.options.title,l,g=this.chart.styledMode;this.axisTitle||((l=e.textAlign)||(l=(c?{low:"left",middle:"center",high:"right"}:{low:h?"right":"left",middle:"center",high:h?"left":"right"})[e.align]),this.axisTitle=d.text(e.text,0,0,e.useHTML).attr({zIndex:7,rotation:e.rotation||0,align:l}).addClass("highcharts-axis-title"),
g||this.axisTitle.css(a(e.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0);g||e.style.width||this.isRadial||this.axisTitle.css({width:this.len});this.axisTitle[b?"show":"hide"](b)},generateTick:function(a){var d=this.ticks;d[a]?d[a].addLabel():d[a]=new J(this,a)},getOffset:function(){var a=this,d=a.chart,b=d.renderer,c=a.options,h=a.tickPositions,e=a.ticks,l=a.horiz,g=a.side,p=d.inverted&&!a.isZAxis?[1,0,3,2][g]:g,u,v=0,H=0,n=c.title,q=c.labels,f=0,M=d.axisOffset;d=d.clipOffset;
var t=[-1,1,1,-1][g],Q=c.className,z=a.axisParent;var m=a.hasData();a.showAxis=u=m||w(c.showEmpty,!0);a.staggerLines=a.horiz&&q.staggerLines;a.axisGroup||(a.gridGroup=b.g("grid").attr({zIndex:c.gridZIndex||1}).addClass("highcharts-"+this.coll.toLowerCase()+"-grid "+(Q||"")).add(z),a.axisGroup=b.g("axis").attr({zIndex:c.zIndex||2}).addClass("highcharts-"+this.coll.toLowerCase()+" "+(Q||"")).add(z),a.labelGroup=b.g("axis-labels").attr({zIndex:q.zIndex||7}).addClass("highcharts-"+a.coll.toLowerCase()+
"-labels "+(Q||"")).add(z));m||a.isLinked?(h.forEach(function(d,b){a.generateTick(d,b)}),a.renderUnsquish(),a.reserveSpaceDefault=0===g||2===g||{1:"left",3:"right"}[g]===a.labelAlign,w(q.reserveSpace,"center"===a.labelAlign?!0:null,a.reserveSpaceDefault)&&h.forEach(function(d){f=Math.max(e[d].getLabelSize(),f)}),a.staggerLines&&(f*=a.staggerLines),a.labelOffset=f*(a.opposite?-1:1)):D(e,function(d,a){d.destroy();delete e[a]});if(n&&n.text&&!1!==n.enabled&&(a.addTitle(u),u&&!1!==n.reserveSpace)){a.titleOffset=
v=a.axisTitle.getBBox()[l?"height":"width"];var A=n.offset;H=x(A)?0:w(n.margin,l?5:10)}a.renderLine();a.offset=t*w(c.offset,M[g]?M[g]+(c.margin||0):0);a.tickRotCorr=a.tickRotCorr||{x:0,y:0};b=0===g?-a.labelMetrics().h:2===g?a.tickRotCorr.y:0;H=Math.abs(f)+H;f&&(H=H-b+t*(l?w(q.y,a.tickRotCorr.y+8*t):q.x));a.axisTitleMargin=w(A,H);a.getMaxLabelDimensions&&(a.maxLabelDimensions=a.getMaxLabelDimensions(e,h));l=this.tickSize("tick");M[g]=Math.max(M[g],a.axisTitleMargin+v+t*a.offset,H,h&&h.length&&l?l[0]+
t*a.offset:0);c=c.offset?0:2*Math.floor(a.axisLine.strokeWidth()/2);d[p]=Math.max(d[p],c);k(this,"afterGetOffset")},getLinePath:function(a){var d=this.chart,b=this.opposite,c=this.offset,h=this.horiz,e=this.left+(b?this.width:0)+c;c=d.chartHeight-this.bottom-(b?this.height:0)+c;b&&(a*=-1);return d.renderer.crispLine(["M",h?this.left:e,h?c:this.top,"L",h?d.chartWidth-this.right:e,h?c:d.chartHeight-this.bottom],a)},renderLine:function(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),
this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))},getTitlePosition:function(){var a=this.horiz,d=this.left,b=this.top,c=this.len,h=this.options.title,e=a?d:b,l=this.opposite,g=this.offset,p=h.x||0,u=h.y||0,v=this.axisTitle,w=this.chart.renderer.fontMetrics(h.style&&h.style.fontSize,v);v=Math.max(v.getBBox(null,0).height-w.h-1,0);c={low:e+(a?0:c),middle:e+c/2,high:e+(a?c:0)}[h.align];d=(a?b+this.height:d)+(a?1:-1)*(l?-1:1)*this.axisTitleMargin+
[-v,v,w.f,-v][this.side];a={x:a?c+p:d+(l?this.width:0)+g+p,y:a?d+u-(l?this.height:0)+g:c+u};k(this,"afterGetTitlePosition",{titlePosition:a});return a},renderMinorTick:function(a){var d=this.chart.hasRendered&&p(this.oldMin),b=this.minorTicks;b[a]||(b[a]=new J(this,a,"minor"));d&&b[a].isNew&&b[a].render(null,!0);b[a].render(null,!1,1)},renderTick:function(a,d){var b=this.isLinked,c=this.ticks,h=this.chart.hasRendered&&p(this.oldMin);if(!b||a>=this.min&&a<=this.max)c[a]||(c[a]=new J(this,a)),h&&c[a].isNew&&
c[a].render(d,!0,-1),c[a].render(d)},render:function(){var a=this,d=a.chart,b=a.options,c=a.isLog,h=a.isLinked,e=a.tickPositions,l=a.axisTitle,g=a.ticks,u=a.minorTicks,v=a.alternateBands,w=b.stackLabels,n=b.alternateGridColor,q=a.tickmarkOffset,M=a.axisLine,t=a.showAxis,x=F(d.renderer.globalAnimation),Q,z;a.labelEdge.length=0;a.overlap=!1;[g,u,v].forEach(function(d){D(d,function(d){d.isActive=!1})});if(a.hasData()||h)a.minorTickInterval&&!a.categories&&a.getMinorTickPositions().forEach(function(d){a.renderMinorTick(d)}),
e.length&&(e.forEach(function(d,b){a.renderTick(d,b)}),q&&(0===a.min||a.single)&&(g[-1]||(g[-1]=new J(a,-1,null,!0)),g[-1].render(-1))),n&&e.forEach(function(b,h){z="undefined"!==typeof e[h+1]?e[h+1]+q:a.max-q;0===h%2&&b<a.max&&z<=a.max+(d.polar?-q:q)&&(v[b]||(v[b]=new f.PlotLineOrBand(a)),Q=b+q,v[b].options={from:c?a.lin2log(Q):Q,to:c?a.lin2log(z):z,color:n},v[b].render(),v[b].isActive=!0)}),a._addedPlotLB||((b.plotLines||[]).concat(b.plotBands||[]).forEach(function(d){a.addPlotBandOrLine(d)}),a._addedPlotLB=
!0);[g,u,v].forEach(function(a){var b,c=[],h=x.duration;D(a,function(d,a){d.isActive||(d.render(a,!1,0),d.isActive=!1,c.push(a))});H(function(){for(b=c.length;b--;)a[c[b]]&&!a[c[b]].isActive&&(a[c[b]].destroy(),delete a[c[b]])},a!==v&&d.hasRendered&&h?h:0)});M&&(M[M.isPlaced?"animate":"attr"]({d:this.getLinePath(M.strokeWidth())}),M.isPlaced=!0,M[t?"show":"hide"](t));l&&t&&(b=a.getTitlePosition(),p(b.y)?(l[l.isNew?"attr":"animate"](b),l.isNew=!1):(l.attr("y",-9999),l.isNew=!0));w&&w.enabled&&a.renderStackTotals();
a.isDirty=!1;k(this,"afterRender")},redraw:function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(a){a.render()}));this.series.forEach(function(a){a.isDirty=!0})},keepProps:"extKey hcEvents names series userMax userMin".split(" "),destroy:function(a){var d=this,b=d.stacks,c=d.plotLinesAndBands,e;k(this,"destroy",{keepEvents:a});a||h(d);D(b,function(d,a){A(d);b[a]=null});[d.ticks,d.minorTicks,d.alternateBands].forEach(function(d){A(d)});if(c)for(a=c.length;a--;)c[a].destroy();
"stackTotalGroup axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(a){d[a]&&(d[a]=d[a].destroy())});for(e in d.plotLinesAndBandsGroups)d.plotLinesAndBandsGroups[e]=d.plotLinesAndBandsGroups[e].destroy();D(d,function(a,b){-1===d.keepProps.indexOf(b)&&delete d[b]})},drawCrosshair:function(a,d){var b=this.crosshair,c=w(b.snap,!0),h,e=this.cross,l=this.chart;k(this,"drawCrosshair",{e:a,point:d});a||(a=this.cross&&this.cross.e);if(this.crosshair&&!1!==(x(d)||
!c)){c?x(d)&&(h=w("colorAxis"!==this.coll?d.crosshairPos:null,this.isXAxis?d.plotX:this.len-d.plotY)):h=a&&(this.horiz?a.chartX-this.pos:this.len-a.chartY+this.pos);if(x(h)){var g={value:d&&(this.isXAxis?d.x:w(d.stackY,d.y)),translatedValue:h};l.polar&&n(g,{isCrosshair:!0,chartX:a&&a.chartX,chartY:a&&a.chartY,point:d});g=this.getPlotLinePath(g)||null}if(!x(g)){this.hideCrosshair();return}c=this.categories&&!this.isRadial;e||(this.cross=e=l.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+
(c?"category ":"thin ")+b.className).attr({zIndex:w(b.zIndex,2)}).add(),l.styledMode||(e.attr({stroke:b.color||(c?E("#ccd6eb").setOpacity(.25).get():"#cccccc"),"stroke-width":w(b.width,1)}).css({"pointer-events":"none"}),b.dashStyle&&e.attr({dashstyle:b.dashStyle})));e.show().attr({d:g});c&&!b.width&&e.attr({"stroke-width":this.transA});this.cross.e=a}else this.hideCrosshair();k(this,"afterDrawCrosshair",{e:a,point:d})},hideCrosshair:function(){this.cross&&this.cross.hide();k(this,"afterHideCrosshair")}});
return f.Axis=m});P(y,"parts/DateTimeAxis.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.getMagnitude,r=m.normalizeTickInterval,E=m.timeUnits;f=f.Axis;f.prototype.getTimeTicks=function(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)};f.prototype.normalizeTimeTickInterval=function(f,m){var C=m||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,
2]],["month",[1,2,3,4,6]],["year",null]];m=C[C.length-1];var B=E[m[0]],F=m[1],z;for(z=0;z<C.length&&!(m=C[z],B=E[m[0]],F=m[1],C[z+1]&&f<=(B*F[F.length-1]+E[C[z+1][0]])/2);z++);B===E.year&&f<5*B&&(F=[1,2,5]);f=r(f/B,F,"year"===m[0]?Math.max(J(f/B),1):1);return{unitRange:B,count:f,unitName:m[0]}}});P(y,"parts/LogarithmicAxis.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.getMagnitude,r=m.normalizeTickInterval,E=m.pick;f=f.Axis;f.prototype.getLogTickPositions=function(f,m,
C,B){var F=this.options,z=this.len,x=[];B||(this._minorAutoInterval=null);if(.5<=f)f=Math.round(f),x=this.getLinearTickPositions(f,m,C);else if(.08<=f){z=Math.floor(m);var A,t;for(F=.3<f?[1,2,4]:.15<f?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];z<C+1&&!t;z++){var n=F.length;for(A=0;A<n&&!t;A++){var k=this.log2lin(this.lin2log(z)*F[A]);k>m&&(!B||q<=C)&&"undefined"!==typeof q&&x.push(q);q>C&&(t=!0);var q=k}}}else m=this.lin2log(m),C=this.lin2log(C),f=B?this.getMinorTickInterval():F.tickInterval,f=E("auto"===f?
null:f,this._minorAutoInterval,F.tickPixelInterval/(B?5:1)*(C-m)/((B?z/this.tickPositions.length:z)||1)),f=r(f,null,J(f)),x=this.getLinearTickPositions(f,m,C).map(this.log2lin),B||(this._minorAutoInterval=f/5);B||(this.tickInterval=f);return x};f.prototype.log2lin=function(f){return Math.log(f)/Math.LN10};f.prototype.lin2log=function(f){return Math.pow(10,f)}});P(y,"parts/PlotLineOrBand.js",[y["parts/Globals.js"],y["parts/Axis.js"],y["parts/Utilities.js"]],function(f,m,J){var r=J.arrayMax,E=J.arrayMin,
N=J.defined,F=J.destroyObjectProperties,C=J.erase,B=J.extend,L=J.merge,z=J.objectEach,x=J.pick,A=function(){function t(n,k){this.axis=n;k&&(this.options=k,this.id=k.id)}t.prototype.render=function(){f.fireEvent(this,"render");var n=this,k=n.axis,q=k.horiz,e=n.options,c=e.label,g=n.label,p=e.to,b=e.from,a=e.value,v=N(b)&&N(p),D=N(a),w=n.svgElem,l=!w,h=[],u=e.color,H=x(e.zIndex,0),M=e.events;h={"class":"highcharts-plot-"+(v?"band ":"line ")+(e.className||"")};var t={},G=k.chart.renderer,d=v?"bands":
"lines";k.isLog&&(b=k.log2lin(b),p=k.log2lin(p),a=k.log2lin(a));k.chart.styledMode||(D?(h.stroke=u||"#999999",h["stroke-width"]=x(e.width,1),e.dashStyle&&(h.dashstyle=e.dashStyle)):v&&(h.fill=u||"#e6ebf5",e.borderWidth&&(h.stroke=e.borderColor,h["stroke-width"]=e.borderWidth)));t.zIndex=H;d+="-"+H;(u=k.plotLinesAndBandsGroups[d])||(k.plotLinesAndBandsGroups[d]=u=G.g("plot-"+d).attr(t).add());l&&(n.svgElem=w=G.path().attr(h).add(u));if(D)h=k.getPlotLinePath({value:a,lineWidth:w.strokeWidth(),acrossPanes:e.acrossPanes});
else if(v)h=k.getPlotBandPath(b,p,e);else return;(l||!w.d)&&h&&h.length?(w.attr({d:h}),M&&z(M,function(d,a){w.on(a,function(d){M[a].apply(n,[d])})})):w&&(h?(w.show(!0),w.animate({d:h})):w.d&&(w.hide(),g&&(n.label=g=g.destroy())));c&&(N(c.text)||N(c.formatter))&&h&&h.length&&0<k.width&&0<k.height&&!h.isFlat?(c=L({align:q&&v&&"center",x:q?!v&&4:10,verticalAlign:!q&&v&&"middle",y:q?v?16:10:v?6:-4,rotation:q&&!v&&90},c),this.renderLabel(c,h,v,H)):g&&g.hide();return n};t.prototype.renderLabel=function(n,
k,q,e){var c=this.label,g=this.axis.chart.renderer;c||(c={align:n.textAlign||n.align,rotation:n.rotation,"class":"highcharts-plot-"+(q?"band":"line")+"-label "+(n.className||"")},c.zIndex=e,e=this.getLabelText(n),this.label=c=g.text(e,0,0,n.useHTML).attr(c).add(),this.axis.chart.styledMode||c.css(n.style));g=k.xBounds||[k[1],k[4],q?k[6]:k[1]];k=k.yBounds||[k[2],k[5],q?k[7]:k[2]];q=E(g);e=E(k);c.align(n,!1,{x:q,y:e,width:r(g)-q,height:r(k)-e});c.show(!0)};t.prototype.getLabelText=function(n){return N(n.formatter)?
n.formatter.call(this):n.text};t.prototype.destroy=function(){C(this.axis.plotLinesAndBands,this);delete this.axis;F(this)};return t}();B(m.prototype,{getPlotBandPath:function(f,n){var k=this.getPlotLinePath({value:n,force:!0,acrossPanes:this.options.acrossPanes}),q=this.getPlotLinePath({value:f,force:!0,acrossPanes:this.options.acrossPanes}),e=[],c=this.horiz,g=1;f=f<this.min&&n<this.min||f>this.max&&n>this.max;if(q&&k){if(f){var p=q.toString()===k.toString();g=0}for(f=0;f<q.length;f+=6)c&&k[f+1]===
q[f+1]?(k[f+1]+=g,k[f+4]+=g):c||k[f+2]!==q[f+2]||(k[f+2]+=g,k[f+5]+=g),e.push("M",q[f+1],q[f+2],"L",q[f+4],q[f+5],k[f+4],k[f+5],k[f+1],k[f+2],"z"),e.isFlat=p}return e},addPlotBand:function(f){return this.addPlotBandOrLine(f,"plotBands")},addPlotLine:function(f){return this.addPlotBandOrLine(f,"plotLines")},addPlotBandOrLine:function(f,n){var k=(new A(this,f)).render(),q=this.userOptions;if(k){if(n){var e=q[n]||[];e.push(f);q[n]=e}this.plotLinesAndBands.push(k)}return k},removePlotBandOrLine:function(f){for(var n=
this.plotLinesAndBands,k=this.options,q=this.userOptions,e=n.length;e--;)n[e].id===f&&n[e].destroy();[k.plotLines||[],q.plotLines||[],k.plotBands||[],q.plotBands||[]].forEach(function(c){for(e=c.length;e--;)c[e].id===f&&C(c,c[e])})},removePlotBand:function(f){this.removePlotBandOrLine(f)},removePlotLine:function(f){this.removePlotBandOrLine(f)}});f.PlotLineOrBand=A;return f.PlotLineOrBand});P(y,"parts/Tooltip.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.clamp,r=m.css,
E=m.defined,N=m.discardElement,F=m.extend,C=m.format,B=m.isNumber,L=m.isString,z=m.merge,x=m.pick,A=m.splat,t=m.syncTimeout,n=m.timeUnits;"";var k=f.doc,q=function(){function e(c,e){this.crosshairs=[];this.distance=0;this.isHidden=!0;this.isSticky=!1;this.now={};this.options={};this.outside=!1;this.chart=c;this.init(c,e)}e.prototype.applyFilter=function(){var c=this.chart;c.renderer.definition({tagName:"filter",id:"drop-shadow-"+c.index,opacity:.5,children:[{tagName:"feGaussianBlur","in":"SourceAlpha",
stdDeviation:1},{tagName:"feOffset",dx:1,dy:1},{tagName:"feComponentTransfer",children:[{tagName:"feFuncA",type:"linear",slope:.3}]},{tagName:"feMerge",children:[{tagName:"feMergeNode"},{tagName:"feMergeNode","in":"SourceGraphic"}]}]});c.renderer.definition({tagName:"style",textContent:".highcharts-tooltip-"+c.index+"{filter:url(#drop-shadow-"+c.index+")}"})};e.prototype.bodyFormatter=function(c){return c.map(function(c){var e=c.series.tooltipOptions;return(e[(c.point.formatPrefix||"point")+"Formatter"]||
c.point.tooltipFormatter).call(c.point,e[(c.point.formatPrefix||"point")+"Format"]||"")})};e.prototype.cleanSplit=function(c){this.chart.series.forEach(function(e){var g=e&&e.tt;g&&(!g.isActive||c?e.tt=g.destroy():g.isActive=!1)})};e.prototype.defaultFormatter=function(c){var e=this.points||A(this);var p=[c.tooltipFooterHeaderFormatter(e[0])];p=p.concat(c.bodyFormatter(e));p.push(c.tooltipFooterHeaderFormatter(e[0],!0));return p};e.prototype.destroy=function(){this.label&&(this.label=this.label.destroy());
this.split&&this.tt&&(this.cleanSplit(this.chart,!0),this.tt=this.tt.destroy());this.renderer&&(this.renderer=this.renderer.destroy(),N(this.container));m.clearTimeout(this.hideTimer);m.clearTimeout(this.tooltipTimeout)};e.prototype.getAnchor=function(c,e){var g=this.chart,b=g.pointer,a=g.inverted,v=g.plotTop,k=g.plotLeft,w=0,l=0,h,u;c=A(c);this.followPointer&&e?("undefined"===typeof e.chartX&&(e=b.normalize(e)),c=[e.chartX-k,e.chartY-v]):c[0].tooltipPos?c=c[0].tooltipPos:(c.forEach(function(b){h=
b.series.yAxis;u=b.series.xAxis;w+=b.plotX+(!a&&u?u.left-k:0);l+=(b.plotLow?(b.plotLow+b.plotHigh)/2:b.plotY)+(!a&&h?h.top-v:0)}),w/=c.length,l/=c.length,c=[a?g.plotWidth-l:w,this.shared&&!a&&1<c.length&&e?e.chartY-v:a?g.plotHeight-w:l]);return c.map(Math.round)};e.prototype.getDateFormat=function(c,e,p,b){var a=this.chart.time,g=a.dateFormat("%m-%d %H:%M:%S.%L",e),k={millisecond:15,second:12,minute:9,hour:6,day:3},w="millisecond";for(l in n){if(c===n.week&&+a.dateFormat("%w",e)===p&&"00:00:00.000"===
g.substr(6)){var l="week";break}if(n[l]>c){l=w;break}if(k[l]&&g.substr(k[l])!=="01-01 00:00:00.000".substr(k[l]))break;"week"!==l&&(w=l)}if(l)var h=a.resolveDTLFormat(b[l]).main;return h};e.prototype.getLabel=function(){var c,e=this,p=this.chart.renderer,b=this.chart.styledMode,a=this.options,v="tooltip"+(E(a.className)?" "+a.className:""),k=(null===(c=a.style)||void 0===c?void 0:c.pointerEvents)||(!this.followPointer&&a.stickOnContact?"auto":"none"),w;c=function(){e.inContact=!0};var l=function(){var a=
e.chart.hoverSeries;e.inContact=!1;if(a&&a.onMouseOut)a.onMouseOut()};if(!this.label){this.outside&&(this.container=w=f.doc.createElement("div"),w.className="highcharts-tooltip-container",r(w,{position:"absolute",top:"1px",pointerEvents:k,zIndex:3}),f.doc.body.appendChild(w),this.renderer=p=new f.Renderer(w,0,0,{},void 0,void 0,p.styledMode));this.split?this.label=p.g(v):(this.label=p.label("",0,0,a.shape||"callout",null,null,a.useHTML,null,v).attr({padding:a.padding,r:a.borderRadius}),b||this.label.attr({fill:a.backgroundColor,
"stroke-width":a.borderWidth}).css(a.style).css({pointerEvents:k}).shadow(a.shadow));b&&(this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index));if(e.outside&&!e.split){var h={x:this.label.xSetter,y:this.label.ySetter};this.label.xSetter=function(a,b){h[b].call(this.label,e.distance);w.style.left=a+"px"};this.label.ySetter=function(a,b){h[b].call(this.label,e.distance);w.style.top=a+"px"}}this.label.on("mouseenter",c).on("mouseleave",l).attr({zIndex:8}).add()}return this.label};
e.prototype.getPosition=function(c,e,p){var b=this.chart,a=this.distance,g={},D=b.inverted&&p.h||0,w,l=this.outside,h=l?k.documentElement.clientWidth-2*a:b.chartWidth,u=l?Math.max(k.body.scrollHeight,k.documentElement.scrollHeight,k.body.offsetHeight,k.documentElement.offsetHeight,k.documentElement.clientHeight):b.chartHeight,f=b.pointer.getChartPosition(),n=b.containerScaling,q=function(d){return n?d*n.scaleX:d},G=function(d){return n?d*n.scaleY:d},d=function(d){var g="x"===d;return[d,g?h:u,g?c:
e].concat(l?[g?q(c):G(e),g?f.left-a+q(p.plotX+b.plotLeft):f.top-a+G(p.plotY+b.plotTop),0,g?h:u]:[g?c:e,g?p.plotX+b.plotLeft:p.plotY+b.plotTop,g?b.plotLeft:b.plotTop,g?b.plotLeft+b.plotWidth:b.plotTop+b.plotHeight])},I=d("y"),O=d("x"),t=!this.followPointer&&x(p.ttBelow,!b.inverted===!!p.negative),z=function(d,b,c,h,e,l,p){var u="y"===d?G(a):q(a),v=(c-h)/2,k=h<e-a,w=e+a+h<b,I=e-u-c+v;e=e+u-v;if(t&&w)g[d]=e;else if(!t&&k)g[d]=I;else if(k)g[d]=Math.min(p-h,0>I-D?I:I-D);else if(w)g[d]=Math.max(l,e+D+c>
b?e:e+D);else return!1},m=function(d,b,c,h,e){var l;e<a||e>b-a?l=!1:g[d]=e<c/2?1:e>b-h/2?b-h-2:e-c/2;return l},A=function(d){var a=I;I=O;O=a;w=d},K=function(){!1!==z.apply(0,I)?!1!==m.apply(0,O)||w||(A(!0),K()):w?g.x=g.y=0:(A(!0),K())};(b.inverted||1<this.len)&&A();K();return g};e.prototype.getXDateFormat=function(c,e,p){e=e.dateTimeLabelFormats;var b=p&&p.closestPointRange;return(b?this.getDateFormat(b,c.x,p.options.startOfWeek,e):e.day)||e.year};e.prototype.hide=function(c){var e=this;m.clearTimeout(this.hideTimer);
c=x(c,this.options.hideDelay,500);this.isHidden||(this.hideTimer=t(function(){e.getLabel()[c?"fadeOut":"hide"]();e.isHidden=!0},c))};e.prototype.init=function(c,e){this.chart=c;this.options=e;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.split=e.split&&!c.inverted&&!c.polar;this.shared=e.shared||this.split;this.outside=x(e.outside,!(!c.scrollablePixelsX&&!c.scrollablePixelsY))};e.prototype.isStickyOnContact=function(){return!(this.followPointer||!this.options.stickOnContact||!this.inContact)};
e.prototype.move=function(c,e,p,b){var a=this,g=a.now,k=!1!==a.options.animation&&!a.isHidden&&(1<Math.abs(c-g.x)||1<Math.abs(e-g.y)),w=a.followPointer||1<a.len;F(g,{x:k?(2*g.x+c)/3:c,y:k?(g.y+e)/2:e,anchorX:w?void 0:k?(2*g.anchorX+p)/3:p,anchorY:w?void 0:k?(g.anchorY+b)/2:b});a.getLabel().attr(g);a.drawTracker();k&&(m.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){a&&a.move(c,e,p,b)},32))};e.prototype.refresh=function(c,e){var g=this.chart,b=this.options,a=c,v={},k=[],
w=b.formatter||this.defaultFormatter;v=this.shared;var l=g.styledMode;if(b.enabled){m.clearTimeout(this.hideTimer);this.followPointer=A(a)[0].series.tooltipOptions.followPointer;var h=this.getAnchor(a,e);e=h[0];var u=h[1];!v||a.series&&a.series.noSharedTooltip?v=a.getLabelConfig():(g.pointer.applyInactiveState(a),a.forEach(function(a){a.setState("hover");k.push(a.getLabelConfig())}),v={x:a[0].category,y:a[0].y},v.points=k,a=a[0]);this.len=k.length;g=w.call(v,this);w=a.series;this.distance=x(w.tooltipOptions.distance,
16);!1===g?this.hide():(this.split?this.renderSplit(g,A(c)):(c=this.getLabel(),b.style.width&&!l||c.css({width:this.chart.spacingBox.width}),c.attr({text:g&&g.join?g.join(""):g}),c.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+x(a.colorIndex,w.colorIndex)),l||c.attr({stroke:b.borderColor||a.color||w.color||"#666666"}),this.updatePosition({plotX:e,plotY:u,negative:a.negative,ttBelow:a.ttBelow,h:h[2]||0})),this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=
!1);f.fireEvent(this,"refresh")}};e.prototype.renderSplit=function(c,e){function g(d,a,b,c,e){void 0===e&&(e=!0);b?(a=r?0:C,d=J(d-c/2,m.left,m.right-c)):(a-=K,d=e?d-c-I:d+I,d=J(d,e?d:m.left,m.right));return{x:d,y:a}}var b=this,a=b.chart,v=b.chart,k=v.plotHeight,w=v.plotLeft,l=v.plotTop,h=v.pointer,u=v.renderer,n=v.scrollablePixelsY,q=void 0===n?0:n;n=v.scrollingContainer;n=void 0===n?{scrollLeft:0,scrollTop:0}:n;var t=n.scrollLeft,G=n.scrollTop,d=v.styledMode,I=b.distance,O=b.options,z=b.options.positioner,
m={left:t,right:t+v.chartWidth,top:G,bottom:G+v.chartHeight},A=b.getLabel(),r=!(!a.xAxis[0]||!a.xAxis[0].opposite),K=l+G,B=0,C=k-q;L(c)&&(c=[!1,c]);c=c.slice(0,e.length+1).reduce(function(a,c,h){if(!1!==c&&""!==c){h=e[h-1]||{isHeader:!0,plotX:e[0].plotX,plotY:k,series:{}};var p=h.isHeader,v=p?b:h.series,D=v.tt,n=h.isHeader;var f=h.series;var H="highcharts-color-"+x(h.colorIndex,f.colorIndex,"none");D||(D={padding:O.padding,r:O.borderRadius},d||(D.fill=O.backgroundColor,D["stroke-width"]=O.borderWidth),
D=u.label("",0,0,O[n?"headerShape":"shape"]||"callout",void 0,void 0,O.useHTML).addClass((n?"highcharts-tooltip-header ":"")+"highcharts-tooltip-box "+H).attr(D).add(A));D.isActive=!0;D.attr({text:c});d||D.css(O.style).shadow(O.shadow).attr({stroke:O.borderColor||h.color||f.color||"#333333"});c=v.tt=D;n=c.getBBox();v=n.width+c.strokeWidth();p&&(B=n.height,C+=B,r&&(K-=B));f=h.plotX;f=void 0===f?0:f;H=h.plotY;H=void 0===H?0:H;var M=h.series;if(h.isHeader){f=w+f;var t=l+k/2}else D=M.xAxis,M=M.yAxis,
f=D.pos+J(f,-I,D.len+I),M.pos+H>=G+l&&M.pos+H<=G+l+k-q&&(t=M.pos+H);f=J(f,m.left-I,m.right+I);"number"===typeof t?(n=n.height+1,H=z?z.call(b,v,n,h):g(f,t,p,v),a.push({align:z?0:void 0,anchorX:f,anchorY:t,boxWidth:v,point:h,rank:x(H.rank,p?1:0),size:n,target:H.y,tt:c,x:H.x})):c.isActive=!1}return a},[]);!z&&c.some(function(d){return d.x<m.left})&&(c=c.map(function(d){var a=g(d.anchorX,d.anchorY,d.point.isHeader,d.boxWidth,!1);return F(d,{target:a.y,x:a.x})}));b.cleanSplit();f.distribute(c,C);c.forEach(function(d){var a=
d.pos;d.tt.attr({visibility:"undefined"===typeof a?"hidden":"inherit",x:d.x,y:a+K,anchorX:d.anchorX,anchorY:d.anchorY})});c=b.container;a=b.renderer;b.outside&&c&&a&&(v=A.getBBox(),a.setSize(v.width+v.x,v.height+v.y,!1),h=h.getChartPosition(),c.style.left=h.left+"px",c.style.top=h.top+"px")};e.prototype.drawTracker=function(){if(this.followPointer||!this.options.stickOnContact)this.tracker&&this.tracker.destroy();else{var c=this.chart,e=this.label,p=c.hoverPoint;if(e&&p){var b={x:0,y:0,width:0,height:0};
p=this.getAnchor(p);var a=e.getBBox();p[0]+=c.plotLeft-e.translateX;p[1]+=c.plotTop-e.translateY;b.x=Math.min(0,p[0]);b.y=Math.min(0,p[1]);b.width=0>p[0]?Math.max(Math.abs(p[0]),a.width-p[0]):Math.max(Math.abs(p[0]),a.width);b.height=0>p[1]?Math.max(Math.abs(p[1]),a.height-Math.abs(p[1])):Math.max(Math.abs(p[1]),a.height);this.tracker?this.tracker.attr(b):(this.tracker=e.renderer.rect(b).addClass("highcharts-tracker").add(e),c.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}}};e.prototype.styledModeFormat=
function(c){return c.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex}"')};e.prototype.tooltipFooterHeaderFormatter=function(c,e){var g=e?"footer":"header",b=c.series,a=b.tooltipOptions,v=a.xDateFormat,k=b.xAxis,w=k&&"datetime"===k.options.type&&B(c.key),l=a[g+"Format"];e={isFooter:e,labelConfig:c};f.fireEvent(this,"headerFormatter",e,function(e){w&&!v&&(v=this.getXDateFormat(c,a,k));w&&v&&(c.point&&
c.point.tooltipDateKeys||["key"]).forEach(function(a){l=l.replace("{point."+a+"}","{point."+a+":"+v+"}")});b.chart.styledMode&&(l=this.styledModeFormat(l));e.text=C(l,{point:c,series:b},this.chart)});return e.text};e.prototype.update=function(c){this.destroy();z(!0,this.chart.options.tooltip.userOptions,c);this.init(this.chart,z(!0,this.options,c))};e.prototype.updatePosition=function(c){var e=this.chart,p=e.pointer,b=this.getLabel(),a=c.plotX+e.plotLeft,v=c.plotY+e.plotTop;p=p.getChartPosition();
c=(this.options.positioner||this.getPosition).call(this,b.width,b.height,c);if(this.outside){var k=(this.options.borderWidth||0)+2*this.distance;this.renderer.setSize(b.width+k,b.height+k,!1);if(e=e.containerScaling)r(this.container,{transform:"scale("+e.scaleX+", "+e.scaleY+")"}),a*=e.scaleX,v*=e.scaleY;a+=p.left-c.x;v+=p.top-c.y}this.move(Math.round(c.x),Math.round(c.y||0),a,v)};return e}();f.Tooltip=q;return f.Tooltip});P(y,"parts/Pointer.js",[y["parts/Globals.js"],y["parts/Utilities.js"],y["parts/Tooltip.js"],
y["parts/Color.js"]],function(f,m,J,r){var E=m.addEvent,N=m.attr,F=m.css,C=m.defined,B=m.extend,L=m.find,z=m.fireEvent,x=m.isNumber,A=m.isObject,t=m.objectEach,n=m.offset,k=m.pick,q=m.splat,e=r.parse,c=f.charts,g=f.noop;m=function(){function p(b,a){this.lastValidTouch={};this.pinchDown=[];this.runChartClick=!1;this.chart=b;this.hasDragged=!1;this.options=a;this.unbindContainerMouseLeave=function(){};this.init(b,a)}p.prototype.applyInactiveState=function(b){var a=[],c;(b||[]).forEach(function(b){c=
b.series;a.push(c);c.linkedParent&&a.push(c.linkedParent);c.linkedSeries&&(a=a.concat(c.linkedSeries));c.navigatorSeries&&a.push(c.navigatorSeries)});this.chart.series.forEach(function(b){-1===a.indexOf(b)?b.setState("inactive",!0):b.options.inactiveOtherPoints&&b.setAllPointsToState("inactive")})};p.prototype.destroy=function(){var b=this;"undefined"!==typeof b.unDocMouseMove&&b.unDocMouseMove();this.unbindContainerMouseLeave();f.chartCount||(f.unbindDocumentMouseUp&&(f.unbindDocumentMouseUp=f.unbindDocumentMouseUp()),
f.unbindDocumentTouchEnd&&(f.unbindDocumentTouchEnd=f.unbindDocumentTouchEnd()));clearInterval(b.tooltipTimeout);t(b,function(a,c){b[c]=null})};p.prototype.drag=function(b){var a=this.chart,c=a.options.chart,g=b.chartX,p=b.chartY,l=this.zoomHor,h=this.zoomVert,u=a.plotLeft,k=a.plotTop,n=a.plotWidth,f=a.plotHeight,q=this.selectionMarker,d=this.mouseDownX||0,I=this.mouseDownY||0,O=A(c.panning)?c.panning&&c.panning.enabled:c.panning,t=c.panKey&&b[c.panKey+"Key"];if(!q||!q.touch)if(g<u?g=u:g>u+n&&(g=
u+n),p<k?p=k:p>k+f&&(p=k+f),this.hasDragged=Math.sqrt(Math.pow(d-g,2)+Math.pow(I-p,2)),10<this.hasDragged){var x=a.isInsidePlot(d-u,I-k);a.hasCartesianSeries&&(this.zoomX||this.zoomY)&&x&&!t&&!q&&(this.selectionMarker=q=a.renderer.rect(u,k,l?1:n,h?1:f,0).attr({"class":"highcharts-selection-marker",zIndex:7}).add(),a.styledMode||q.attr({fill:c.selectionMarkerFill||e("#335cad").setOpacity(.25).get()}));q&&l&&(g-=d,q.attr({width:Math.abs(g),x:(0<g?0:g)+d}));q&&h&&(g=p-I,q.attr({height:Math.abs(g),y:(0<
g?0:g)+I}));x&&!q&&O&&a.pan(b,c.panning)}};p.prototype.dragStart=function(b){var a=this.chart;a.mouseIsDown=b.type;a.cancelClick=!1;a.mouseDownX=this.mouseDownX=b.chartX;a.mouseDownY=this.mouseDownY=b.chartY};p.prototype.drop=function(b){var a=this,c=this.chart,e=this.hasPinched;if(this.selectionMarker){var g={originalEvent:b,xAxis:[],yAxis:[]},l=this.selectionMarker,h=l.attr?l.attr("x"):l.x,p=l.attr?l.attr("y"):l.y,k=l.attr?l.attr("width"):l.width,n=l.attr?l.attr("height"):l.height,f;if(this.hasDragged||
e)c.axes.forEach(function(c){if(c.zoomEnabled&&C(c.min)&&(e||a[{xAxis:"zoomX",yAxis:"zoomY"}[c.coll]])){var d=c.horiz,l="touchend"===b.type?c.minPixelPadding:0,u=c.toValue((d?h:p)+l);d=c.toValue((d?h+k:p+n)-l);g[c.coll].push({axis:c,min:Math.min(u,d),max:Math.max(u,d)});f=!0}}),f&&z(c,"selection",g,function(a){c.zoom(B(a,e?{animation:!1}:null))});x(c.index)&&(this.selectionMarker=this.selectionMarker.destroy());e&&this.scaleGroups()}c&&x(c.index)&&(F(c.container,{cursor:c._cursor}),c.cancelClick=
10<this.hasDragged,c.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])};p.prototype.findNearestKDPoint=function(b,a,c){var e=this.chart,g=e.hoverPoint;e=e.tooltip;if(g&&e&&e.isStickyOnContact())return g;var l;b.forEach(function(b){var e=!(b.noSharedTooltip&&a)&&0>b.options.findNearestPointBy.indexOf("y");b=b.searchPoint(c,e);if((e=A(b,!0))&&!(e=!A(l,!0))){e=l.distX-b.distX;var h=l.dist-b.dist,g=(b.series.group&&b.series.group.zIndex)-(l.series.group&&l.series.group.zIndex);e=0<(0!==
e&&a?e:0!==h?h:0!==g?g:l.series.index>b.series.index?-1:1)}e&&(l=b)});return l};p.prototype.getChartCoordinatesFromPoint=function(b,a){var c=b.series,e=c.xAxis;c=c.yAxis;var g=k(b.clientX,b.plotX),l=b.shapeArgs;if(e&&c)return a?{chartX:e.len+e.pos-g,chartY:c.len+c.pos-b.plotY}:{chartX:g+e.pos,chartY:b.plotY+c.pos};if(l&&l.x&&l.y)return{chartX:l.x,chartY:l.y}};p.prototype.getChartPosition=function(){return this.chartPosition||(this.chartPosition=n(this.chart.container))};p.prototype.getCoordinates=
function(b){var a={xAxis:[],yAxis:[]};this.chart.axes.forEach(function(c){a[c.isXAxis?"xAxis":"yAxis"].push({axis:c,value:c.toValue(b[c.horiz?"chartX":"chartY"])})});return a};p.prototype.getHoverData=function(b,a,c,e,g,l){var h,p=[];e=!(!e||!b);var v=a&&!a.stickyTracking,w={chartX:l?l.chartX:void 0,chartY:l?l.chartY:void 0,shared:g};z(this,"beforeGetHoverData",w);v=v?[a]:c.filter(function(a){return w.filter?w.filter(a):a.visible&&!(!g&&a.directTouch)&&k(a.options.enableMouseTracking,!0)&&a.stickyTracking});
a=(h=e||!l?b:this.findNearestKDPoint(v,g,l))&&h.series;h&&(g&&!a.noSharedTooltip?(v=c.filter(function(a){return w.filter?w.filter(a):a.visible&&!(!g&&a.directTouch)&&k(a.options.enableMouseTracking,!0)&&!a.noSharedTooltip}),v.forEach(function(a){var b=L(a.points,function(d){return d.x===h.x&&!d.isNull});A(b)&&(a.chart.isBoosting&&(b=a.getPoint(b)),p.push(b))})):p.push(h));w={hoverPoint:h};z(this,"afterGetHoverData",w);return{hoverPoint:w.hoverPoint,hoverSeries:a,hoverPoints:p}};p.prototype.getPointFromEvent=
function(b){b=b.target;for(var a;b&&!a;)a=b.point,b=b.parentNode;return a};p.prototype.onTrackerMouseOut=function(b){var a=this.chart.hoverSeries;b=b.relatedTarget||b.toElement;this.isDirectTouch=!1;if(!(!a||!b||a.stickyTracking||this.inClass(b,"highcharts-tooltip")||this.inClass(b,"highcharts-series-"+a.index)&&this.inClass(b,"highcharts-tracker")))a.onMouseOut()};p.prototype.inClass=function(b,a){for(var c;b;){if(c=N(b,"class")){if(-1!==c.indexOf(a))return!0;if(-1!==c.indexOf("highcharts-container"))return!1}b=
b.parentNode}};p.prototype.init=function(b,a){this.options=a;this.chart=b;this.runChartClick=a.chart.events&&!!a.chart.events.click;this.pinchDown=[];this.lastValidTouch={};J&&(b.tooltip=new J(b,a.tooltip),this.followTouchMove=k(a.tooltip.followTouchMove,!0));this.setDOMEvents()};p.prototype.normalize=function(b,a){var c=b.touches,e=c?c.length?c.item(0):c.changedTouches[0]:b;a||(a=this.getChartPosition());c=e.pageX-a.left;a=e.pageY-a.top;if(e=this.chart.containerScaling)c/=e.scaleX,a/=e.scaleY;return B(b,
{chartX:Math.round(c),chartY:Math.round(a)})};p.prototype.onContainerClick=function(b){var a=this.chart,c=a.hoverPoint,e=a.plotLeft,g=a.plotTop;b=this.normalize(b);a.cancelClick||(c&&this.inClass(b.target,"highcharts-tracker")?(z(c.series,"click",B(b,{point:c})),a.hoverPoint&&c.firePointEvent("click",b)):(B(b,this.getCoordinates(b)),a.isInsidePlot(b.chartX-e,b.chartY-g)&&z(a,"click",b)))};p.prototype.onContainerMouseDown=function(b){b=this.normalize(b);2!==b.button&&(this.zoomOption(b),b.preventDefault&&
b.preventDefault(),this.dragStart(b))};p.prototype.onContainerMouseLeave=function(b){var a=c[f.hoverChartIndex];a&&(b.relatedTarget||b.toElement)&&(a.pointer.reset(),a.pointer.chartPosition=void 0)};p.prototype.onContainerMouseMove=function(b){var a=this.chart;C(f.hoverChartIndex)&&c[f.hoverChartIndex]&&c[f.hoverChartIndex].mouseIsDown||(f.hoverChartIndex=a.index);b=this.normalize(b);b.preventDefault||(b.returnValue=!1);"mousedown"===a.mouseIsDown&&this.drag(b);a.openMenu||!this.inClass(b.target,
"highcharts-tracker")&&!a.isInsidePlot(b.chartX-a.plotLeft,b.chartY-a.plotTop)||this.runPointActions(b)};p.prototype.onDocumentTouchEnd=function(b){c[f.hoverChartIndex]&&c[f.hoverChartIndex].pointer.drop(b)};p.prototype.onContainerTouchMove=function(b){this.touch(b)};p.prototype.onContainerTouchStart=function(b){this.zoomOption(b);this.touch(b,!0)};p.prototype.onDocumentMouseMove=function(b){var a=this.chart,c=this.chartPosition,e=a.tooltip;b=this.normalize(b,c);!c||e&&e.isStickyOnContact()||a.isInsidePlot(b.chartX-
a.plotLeft,b.chartY-a.plotTop)||this.inClass(b.target,"highcharts-tracker")||this.reset()};p.prototype.onDocumentMouseUp=function(b){c[f.hoverChartIndex]&&c[f.hoverChartIndex].pointer.drop(b)};p.prototype.pinch=function(b){var a=this,c=a.chart,e=a.pinchDown,p=b.touches||[],l=p.length,h=a.lastValidTouch,u=a.hasZoom,n=a.selectionMarker,f={},q=1===l&&(a.inClass(b.target,"highcharts-tracker")&&c.runTrackerClick||a.runChartClick),G={};1<l&&(a.initiated=!0);u&&a.initiated&&!q&&b.preventDefault();[].map.call(p,
function(d){return a.normalize(d)});"touchstart"===b.type?([].forEach.call(p,function(d,a){e[a]={chartX:d.chartX,chartY:d.chartY}}),h.x=[e[0].chartX,e[1]&&e[1].chartX],h.y=[e[0].chartY,e[1]&&e[1].chartY],c.axes.forEach(function(d){if(d.zoomEnabled){var a=c.bounds[d.horiz?"h":"v"],b=d.minPixelPadding,e=d.toPixels(Math.min(k(d.options.min,d.dataMin),d.dataMin)),h=d.toPixels(Math.max(k(d.options.max,d.dataMax),d.dataMax)),l=Math.max(e,h);a.min=Math.min(d.pos,Math.min(e,h)-b);a.max=Math.max(d.pos+d.len,
l+b)}}),a.res=!0):a.followTouchMove&&1===l?this.runPointActions(a.normalize(b)):e.length&&(n||(a.selectionMarker=n=B({destroy:g,touch:!0},c.plotBox)),a.pinchTranslate(e,p,f,n,G,h),a.hasPinched=u,a.scaleGroups(f,G),a.res&&(a.res=!1,this.reset(!1,0)))};p.prototype.pinchTranslate=function(b,a,c,e,g,l){this.zoomHor&&this.pinchTranslateDirection(!0,b,a,c,e,g,l);this.zoomVert&&this.pinchTranslateDirection(!1,b,a,c,e,g,l)};p.prototype.pinchTranslateDirection=function(b,a,c,e,g,l,h,p){var u=this.chart,k=
b?"x":"y",v=b?"X":"Y",w="chart"+v,d=b?"width":"height",n=u["plot"+(b?"Left":"Top")],f,q,D=p||1,t=u.inverted,x=u.bounds[b?"h":"v"],z=1===a.length,m=a[0][w],A=c[0][w],r=!z&&a[1][w],S=!z&&c[1][w];c=function(){"number"===typeof S&&20<Math.abs(m-r)&&(D=p||Math.abs(A-S)/Math.abs(m-r));q=(n-A)/D+m;f=u["plot"+(b?"Width":"Height")]/D};c();a=q;if(a<x.min){a=x.min;var B=!0}else a+f>x.max&&(a=x.max-f,B=!0);B?(A-=.8*(A-h[k][0]),"number"===typeof S&&(S-=.8*(S-h[k][1])),c()):h[k]=[A,S];t||(l[k]=q-n,l[d]=f);l=t?
1/D:D;g[d]=f;g[k]=a;e[t?b?"scaleY":"scaleX":"scale"+v]=D;e["translate"+v]=l*n+(A-l*m)};p.prototype.reset=function(b,a){var c=this.chart,e=c.hoverSeries,g=c.hoverPoint,l=c.hoverPoints,h=c.tooltip,p=h&&h.shared?l:g;b&&p&&q(p).forEach(function(a){a.series.isCartesian&&"undefined"===typeof a.plotX&&(b=!1)});if(b)h&&p&&q(p).length&&(h.refresh(p),h.shared&&l?l.forEach(function(a){a.setState(a.state,!0);a.series.isCartesian&&(a.series.xAxis.crosshair&&a.series.xAxis.drawCrosshair(null,a),a.series.yAxis.crosshair&&
a.series.yAxis.drawCrosshair(null,a))}):g&&(g.setState(g.state,!0),c.axes.forEach(function(a){a.crosshair&&g.series[a.coll]===a&&a.drawCrosshair(null,g)})));else{if(g)g.onMouseOut();l&&l.forEach(function(a){a.setState()});if(e)e.onMouseOut();h&&h.hide(a);this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove());c.axes.forEach(function(a){a.hideCrosshair()});this.hoverX=c.hoverPoints=c.hoverPoint=null}};p.prototype.runPointActions=function(b,a){var e=this.chart,g=e.tooltip&&e.tooltip.options.enabled?
e.tooltip:void 0,p=g?g.shared:!1,l=a||e.hoverPoint,h=l&&l.series||e.hoverSeries;h=this.getHoverData(l,h,e.series,(!b||"touchmove"!==b.type)&&(!!a||h&&h.directTouch&&this.isDirectTouch),p,b);l=h.hoverPoint;var u=h.hoverPoints;a=(h=h.hoverSeries)&&h.tooltipOptions.followPointer;p=p&&h&&!h.noSharedTooltip;if(l&&(l!==e.hoverPoint||g&&g.isHidden)){(e.hoverPoints||[]).forEach(function(a){-1===u.indexOf(a)&&a.setState()});if(e.hoverSeries!==h)h.onMouseOver();this.applyInactiveState(u);(u||[]).forEach(function(a){a.setState("hover")});
e.hoverPoint&&e.hoverPoint.firePointEvent("mouseOut");if(!l.series)return;l.firePointEvent("mouseOver");e.hoverPoints=u;e.hoverPoint=l;g&&g.refresh(p?u:l,b)}else a&&g&&!g.isHidden&&(l=g.getAnchor([{}],b),g.updatePosition({plotX:l[0],plotY:l[1]}));this.unDocMouseMove||(this.unDocMouseMove=E(e.container.ownerDocument,"mousemove",function(a){var b=c[f.hoverChartIndex];if(b)b.pointer.onDocumentMouseMove(a)}));e.axes.forEach(function(a){var c=k(a.crosshair.snap,!0),e=c?L(u,function(b){return b.series[a.coll]===
a}):void 0;e||!c?a.drawCrosshair(b,e):a.hideCrosshair()})};p.prototype.scaleGroups=function(b,a){var c=this.chart,e;c.series.forEach(function(g){e=b||g.getPlotBox();g.xAxis&&g.xAxis.zoomEnabled&&g.group&&(g.group.attr(e),g.markerGroup&&(g.markerGroup.attr(e),g.markerGroup.clip(a?c.clipRect:null)),g.dataLabelsGroup&&g.dataLabelsGroup.attr(e))});c.clipRect.attr(a||c.clipBox)};p.prototype.setDOMEvents=function(){var b=this,a=b.chart.container,c=a.ownerDocument;a.onmousedown=function(a){b.onContainerMouseDown(a)};
a.onmousemove=function(a){b.onContainerMouseMove(a)};a.onclick=function(a){b.onContainerClick(a)};this.unbindContainerMouseLeave=E(a,"mouseleave",b.onContainerMouseLeave);f.unbindDocumentMouseUp||(f.unbindDocumentMouseUp=E(c,"mouseup",b.onDocumentMouseUp));f.hasTouch&&(E(a,"touchstart",function(a){b.onContainerTouchStart(a)}),E(a,"touchmove",function(a){b.onContainerTouchMove(a)}),f.unbindDocumentTouchEnd||(f.unbindDocumentTouchEnd=E(c,"touchend",b.onDocumentTouchEnd)))};p.prototype.touch=function(b,
a){var c=this.chart,e;if(c.index!==f.hoverChartIndex)this.onContainerMouseLeave({relatedTarget:!0});f.hoverChartIndex=c.index;if(1===b.touches.length)if(b=this.normalize(b),(e=c.isInsidePlot(b.chartX-c.plotLeft,b.chartY-c.plotTop))&&!c.openMenu){a&&this.runPointActions(b);if("touchmove"===b.type){a=this.pinchDown;var g=a[0]?4<=Math.sqrt(Math.pow(a[0].chartX-b.chartX,2)+Math.pow(a[0].chartY-b.chartY,2)):!1}k(g,!0)&&this.pinch(b)}else a&&this.reset();else 2===b.touches.length&&this.pinch(b)};p.prototype.zoomOption=
function(b){var a=this.chart,c=a.options.chart,e=c.zoomType||"";a=a.inverted;/touch/.test(b.type)&&(e=k(c.pinchType,e));this.zoomX=b=/x/.test(e);this.zoomY=e=/y/.test(e);this.zoomHor=b&&!a||e&&a;this.zoomVert=e&&!a||b&&a;this.hasZoom=b||e};return p}();f.Pointer=m;return f.Pointer});P(y,"parts/MSPointer.js",[y["parts/Globals.js"],y["parts/Pointer.js"],y["parts/Utilities.js"]],function(f,m,J){function r(){var k=[];k.item=function(k){return this[k]};B(t,function(f){k.push({pageX:f.pageX,pageY:f.pageY,
target:f.target})});return k}function E(k,n,e,c){"touch"!==k.pointerType&&k.pointerType!==k.MSPOINTER_TYPE_TOUCH||!z[f.hoverChartIndex]||(c(k),c=z[f.hoverChartIndex].pointer,c[n]({type:e,target:k.currentTarget,preventDefault:A,touches:r()}))}var N=this&&this.__extends||function(){var k=function(f,e){k=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,e){c.__proto__=e}||function(c,e){for(var g in e)e.hasOwnProperty(g)&&(c[g]=e[g])};return k(f,e)};return function(f,e){function c(){this.constructor=
f}k(f,e);f.prototype=null===e?Object.create(e):(c.prototype=e.prototype,new c)}}(),F=J.addEvent,C=J.css,B=J.objectEach,L=J.removeEvent,z=f.charts,x=f.doc,A=f.noop,t={},n=!!f.win.PointerEvent;return function(k){function f(){return null!==k&&k.apply(this,arguments)||this}N(f,k);f.prototype.batchMSEvents=function(e){e(this.chart.container,n?"pointerdown":"MSPointerDown",this.onContainerPointerDown);e(this.chart.container,n?"pointermove":"MSPointerMove",this.onContainerPointerMove);e(x,n?"pointerup":
"MSPointerUp",this.onDocumentPointerUp)};f.prototype.destroy=function(){this.batchMSEvents(L);k.prototype.destroy.call(this)};f.prototype.init=function(e,c){k.prototype.init.call(this,e,c);this.hasZoom&&C(e.container,{"-ms-touch-action":"none","touch-action":"none"})};f.prototype.onContainerPointerDown=function(e){E(e,"onContainerTouchStart","touchstart",function(c){t[c.pointerId]={pageX:c.pageX,pageY:c.pageY,target:c.currentTarget}})};f.prototype.onContainerPointerMove=function(e){E(e,"onContainerTouchMove",
"touchmove",function(c){t[c.pointerId]={pageX:c.pageX,pageY:c.pageY};t[c.pointerId].target||(t[c.pointerId].target=c.currentTarget)})};f.prototype.onDocumentPointerUp=function(e){E(e,"onDocumentTouchEnd","touchend",function(c){delete t[c.pointerId]})};f.prototype.setDOMEvents=function(){k.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(F)};return f}(m)});P(y,"parts/Legend.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.addEvent,
r=m.css,E=m.defined,N=m.discardElement,F=m.find,C=m.fireEvent,B=m.format,L=m.isNumber,z=m.merge,x=m.pick,A=m.relativeLength,t=m.setAnimation,n=m.stableSort,k=m.syncTimeout;m=m.wrap;var q=f.isFirefox,e=f.marginNames,c=f.win,g=function(){function c(b,a){this.allItems=[];this.contentGroup=this.box=void 0;this.display=!1;this.group=void 0;this.offsetWidth=this.maxLegendWidth=this.maxItemWidth=this.legendWidth=this.legendHeight=this.lastLineHeight=this.lastItemY=this.itemY=this.itemX=this.itemMarginTop=
this.itemMarginBottom=this.itemHeight=this.initialItemY=0;this.options={};this.padding=0;this.pages=[];this.proximate=!1;this.scrollGroup=void 0;this.widthOption=this.totalItemWidth=this.titleHeight=this.symbolWidth=this.symbolHeight=0;this.chart=b;this.init(b,a)}c.prototype.init=function(b,a){this.chart=b;this.setOptions(a);a.enabled&&(this.render(),J(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=J(this.chart,"render",function(){this.legend.proximatePositions();
this.legend.positionItems()}):this.unchartrender&&this.unchartrender())};c.prototype.setOptions=function(b){var a=x(b.padding,8);this.options=b;this.chart.styledMode||(this.itemStyle=b.itemStyle,this.itemHiddenStyle=z(this.itemStyle,b.itemHiddenStyle));this.itemMarginTop=b.itemMarginTop||0;this.itemMarginBottom=b.itemMarginBottom||0;this.padding=a;this.initialItemY=a-5;this.symbolWidth=x(b.symbolWidth,16);this.pages=[];this.proximate="proximate"===b.layout&&!this.chart.inverted;this.baseline=void 0};
c.prototype.update=function(b,a){var c=this.chart;this.setOptions(z(!0,this.options,b));this.destroy();c.isDirtyLegend=c.isDirtyBox=!0;x(a,!0)&&c.redraw();C(this,"afterUpdate")};c.prototype.colorizeItem=function(b,a){b.legendGroup[a?"removeClass":"addClass"]("highcharts-legend-item-hidden");if(!this.chart.styledMode){var c=this.options,e=b.legendItem,g=b.legendLine,l=b.legendSymbol,h=this.itemHiddenStyle.color;c=a?c.itemStyle.color:h;var p=a?b.color||h:h,k=b.options&&b.options.marker,f={fill:p};e&&
e.css({fill:c,color:c});g&&g.attr({stroke:p});l&&(k&&l.isMarker&&(f=b.pointAttribs(),a||(f.stroke=f.fill=h)),l.attr(f))}C(this,"afterColorizeItem",{item:b,visible:a})};c.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()};c.prototype.positionItem=function(b){var a=this.options,c=a.symbolPadding;a=!a.rtl;var e=b._legendItemPos,g=e[0];e=e[1];var l=b.checkbox;if((b=b.legendGroup)&&b.element)b[E(b.translateY)?"animate":"attr"]({translateX:a?
g:this.legendWidth-g-2*c-4,translateY:e});l&&(l.x=g,l.y=e)};c.prototype.destroyItem=function(b){var a=b.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(a){b[a]&&(b[a]=b[a].destroy())});a&&N(b.checkbox)};c.prototype.destroy=function(){function b(a){this[a]&&(this[a]=this[a].destroy())}this.getAllItems().forEach(function(a){["legendItem","legendGroup"].forEach(b,a)});"clipRect up down pager nav box title group".split(" ").forEach(b,this);this.display=null};c.prototype.positionCheckboxes=
function(){var b=this.group&&this.group.alignAttr,a=this.clipHeight||this.legendHeight,c=this.titleHeight;if(b){var e=b.translateY;this.allItems.forEach(function(g){var l=g.checkbox;if(l){var h=e+c+l.y+(this.scrollOffset||0)+3;r(l,{left:b.translateX+g.checkboxOffset+l.x-20+"px",top:h+"px",display:this.proximate||h>e-6&&h<e+a-6?"":"none"})}},this)}};c.prototype.renderTitle=function(){var b=this.options,a=this.padding,c=b.title,e=0;c.text&&(this.title||(this.title=this.chart.renderer.label(c.text,a-
3,a-4,null,null,null,b.useHTML,null,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(c.style),this.title.add(this.group)),c.width||this.title.css({width:this.maxLegendWidth+"px"}),b=this.title.getBBox(),e=b.height,this.offsetWidth=b.width,this.contentGroup.attr({translateY:e}));this.titleHeight=e};c.prototype.setText=function(b){var a=this.options;b.legendItem.attr({text:a.labelFormat?B(a.labelFormat,b,this.chart):a.labelFormatter.call(b)})};c.prototype.renderItem=function(b){var a=
this.chart,c=a.renderer,e=this.options,g=this.symbolWidth,l=e.symbolPadding,h=this.itemStyle,p=this.itemHiddenStyle,k="horizontal"===e.layout?x(e.itemDistance,20):0,f=!e.rtl,n=b.legendItem,q=!b.series,d=!q&&b.series.drawLegendSymbol?b.series:b,I=d.options;I=this.createCheckboxForItem&&I&&I.showCheckbox;k=g+l+k+(I?20:0);var O=e.useHTML,t=b.options.className;n||(b.legendGroup=c.g("legend-item").addClass("highcharts-"+d.type+"-series highcharts-color-"+b.colorIndex+(t?" "+t:"")+(q?" highcharts-series-"+
b.index:"")).attr({zIndex:1}).add(this.scrollGroup),b.legendItem=n=c.text("",f?g+l:-l,this.baseline||0,O),a.styledMode||n.css(z(b.visible?h:p)),n.attr({align:f?"left":"right",zIndex:2}).add(b.legendGroup),this.baseline||(this.fontMetrics=c.fontMetrics(a.styledMode?12:h.fontSize,n),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,n.attr("y",this.baseline)),this.symbolHeight=e.symbolHeight||this.fontMetrics.f,d.drawLegendSymbol(this,b),this.setItemEvents&&this.setItemEvents(b,n,O));I&&!b.checkbox&&
this.createCheckboxForItem&&this.createCheckboxForItem(b);this.colorizeItem(b,b.visible);!a.styledMode&&h.width||n.css({width:(e.itemWidth||this.widthOption||a.spacingBox.width)-k});this.setText(b);a=n.getBBox();b.itemWidth=b.checkboxOffset=e.itemWidth||b.legendItemWidth||a.width+k;this.maxItemWidth=Math.max(this.maxItemWidth,b.itemWidth);this.totalItemWidth+=b.itemWidth;this.itemHeight=b.itemHeight=Math.round(b.legendItemHeight||a.height||this.symbolHeight)};c.prototype.layoutItem=function(b){var a=
this.options,c=this.padding,e="horizontal"===a.layout,g=b.itemHeight,l=this.itemMarginBottom,h=this.itemMarginTop,p=e?x(a.itemDistance,20):0,k=this.maxLegendWidth;a=a.alignColumns&&this.totalItemWidth>k?this.maxItemWidth:b.itemWidth;e&&this.itemX-c+a>k&&(this.itemX=c,this.lastLineHeight&&(this.itemY+=h+this.lastLineHeight+l),this.lastLineHeight=0);this.lastItemY=h+this.itemY+l;this.lastLineHeight=Math.max(g,this.lastLineHeight);b._legendItemPos=[this.itemX,this.itemY];e?this.itemX+=a:(this.itemY+=
h+g+l,this.lastLineHeight=g);this.offsetWidth=this.widthOption||Math.max((e?this.itemX-c-(b.checkbox?0:p):a)+c,this.offsetWidth)};c.prototype.getAllItems=function(){var b=[];this.chart.series.forEach(function(a){var c=a&&a.options;a&&x(c.showInLegend,E(c.linkedTo)?!1:void 0,!0)&&(b=b.concat(a.legendItems||("point"===c.legendType?a.data:a)))});C(this,"afterGetAllItems",{allItems:b});return b};c.prototype.getAlignment=function(){var b=this.options;return this.proximate?b.align.charAt(0)+"tv":b.floating?
"":b.align.charAt(0)+b.verticalAlign.charAt(0)+b.layout.charAt(0)};c.prototype.adjustMargins=function(b,a){var c=this.chart,g=this.options,p=this.getAlignment();p&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(l,h){l.test(p)&&!E(b[h])&&(c[e[h]]=Math.max(c[e[h]],c.legend[(h+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][h]*g[h%2?"x":"y"]+x(g.margin,12)+a[h]+(c.titleOffset[h]||0)))})};c.prototype.proximatePositions=function(){var b=this.chart,a=[],c="left"===this.options.align;
this.allItems.forEach(function(e){var g=c;if(e.yAxis&&e.points){e.xAxis.options.reversed&&(g=!g);var l=F(g?e.points:e.points.slice(0).reverse(),function(a){return L(a.plotY)});g=this.itemMarginTop+e.legendItem.getBBox().height+this.itemMarginBottom;var h=e.yAxis.top-b.plotTop;e.visible?(l=l?l.plotY:e.yAxis.height,l+=h-.3*g):l=h+e.yAxis.height;a.push({target:l,size:g,item:e})}},this);f.distribute(a,b.plotHeight);a.forEach(function(a){a.item._legendItemPos[1]=b.plotTop-b.spacing[0]+a.pos})};c.prototype.render=
function(){var b=this.chart,a=b.renderer,c=this.group,e,g=this.box,l=this.options,h=this.padding;this.itemX=h;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=A(l.width,b.spacingBox.width-h);var p=b.spacingBox.width-2*h-l.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(p/=2);this.maxLegendWidth=this.widthOption||p;c||(this.group=c=a.g("legend").attr({zIndex:7}).add(),this.contentGroup=a.g().attr({zIndex:1}).add(c),this.scrollGroup=a.g().add(this.contentGroup));
this.renderTitle();p=this.getAllItems();n(p,function(a,b){return(a.options&&a.options.legendIndex||0)-(b.options&&b.options.legendIndex||0)});l.reversed&&p.reverse();this.allItems=p;this.display=e=!!p.length;this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0;p.forEach(this.renderItem,this);p.forEach(this.layoutItem,this);p=(this.widthOption||this.offsetWidth)+h;var k=this.lastItemY+this.lastLineHeight+this.titleHeight;k=this.handleOverflow(k);k+=h;g||(this.box=g=a.rect().addClass("highcharts-legend-box").attr({r:l.borderRadius}).add(c),
g.isNew=!0);b.styledMode||g.attr({stroke:l.borderColor,"stroke-width":l.borderWidth||0,fill:l.backgroundColor||"none"}).shadow(l.shadow);0<p&&0<k&&(g[g.isNew?"attr":"animate"](g.crisp.call({},{x:0,y:0,width:p,height:k},g.strokeWidth())),g.isNew=!1);g[e?"show":"hide"]();b.styledMode&&"none"===c.getStyle("display")&&(p=k=0);this.legendWidth=p;this.legendHeight=k;e&&(a=b.spacingBox,g=a.y,/(lth|ct|rth)/.test(this.getAlignment())&&0<b.titleOffset[0]?g+=b.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&
0<b.titleOffset[2]&&(g-=b.titleOffset[2]),g!==a.y&&(a=z(a,{y:g})),c.align(z(l,{width:p,height:k,verticalAlign:this.proximate?"top":l.verticalAlign}),!0,a));this.proximate||this.positionItems();C(this,"afterRender")};c.prototype.handleOverflow=function(b){var a=this,c=this.chart,e=c.renderer,g=this.options,l=g.y,h=this.padding;l=c.spacingBox.height+("top"===g.verticalAlign?-l:l)-h;var p=g.maxHeight,k,f=this.clipRect,n=g.navigation,q=x(n.animation,!0),d=n.arrowSize||12,I=this.nav,O=this.pages,t,z=this.allItems,
m=function(d){"number"===typeof d?f.attr({height:d}):f&&(a.clipRect=f.destroy(),a.contentGroup.clip());a.contentGroup.div&&(a.contentGroup.div.style.clip=d?"rect("+h+"px,9999px,"+(h+d)+"px,0)":"auto")},A=function(b){a[b]=e.circle(0,0,1.3*d).translate(d/2,d/2).add(I);c.styledMode||a[b].attr("fill","rgba(0,0,0,0.0001)");return a[b]};"horizontal"!==g.layout||"middle"===g.verticalAlign||g.floating||(l/=2);p&&(l=Math.min(l,p));O.length=0;b>l&&!1!==n.enabled?(this.clipHeight=k=Math.max(l-20-this.titleHeight-
h,0),this.currentPage=x(this.currentPage,1),this.fullHeight=b,z.forEach(function(d,a){var b=d._legendItemPos[1],c=Math.round(d.legendItem.getBBox().height),e=O.length;if(!e||b-O[e-1]>k&&(t||b)!==O[e-1])O.push(t||b),e++;d.pageIx=e-1;t&&(z[a-1].pageIx=e-1);a===z.length-1&&b+c-O[e-1]>k&&b!==t&&(O.push(b),d.pageIx=e);b!==t&&(t=b)}),f||(f=a.clipRect=e.clipRect(0,h,9999,0),a.contentGroup.clip(f)),m(k),I||(this.nav=I=e.g().attr({zIndex:1}).add(this.group),this.up=e.symbol("triangle",0,0,d,d).add(I),A("upTracker").on("click",
function(){a.scroll(-1,q)}),this.pager=e.text("",15,10).addClass("highcharts-legend-navigation"),c.styledMode||this.pager.css(n.style),this.pager.add(I),this.down=e.symbol("triangle-down",0,0,d,d).add(I),A("downTracker").on("click",function(){a.scroll(1,q)})),a.scroll(0),b=l):I&&(m(),this.nav=I.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0);return b};c.prototype.scroll=function(b,a){var c=this,e=this.chart,g=this.pages,l=g.length,h=this.currentPage+b;b=this.clipHeight;var p=this.options.navigation,
n=this.pager,q=this.padding;h>l&&(h=l);0<h&&("undefined"!==typeof a&&t(a,e),this.nav.attr({translateX:q,translateY:b+this.padding+7+this.titleHeight,visibility:"visible"}),[this.up,this.upTracker].forEach(function(a){a.attr({"class":1===h?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),n.attr({text:h+"/"+l}),[this.down,this.downTracker].forEach(function(a){a.attr({x:18+this.pager.getBBox().width,"class":h===l?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),
e.styledMode||(this.up.attr({fill:1===h?p.inactiveColor:p.activeColor}),this.upTracker.css({cursor:1===h?"default":"pointer"}),this.down.attr({fill:h===l?p.inactiveColor:p.activeColor}),this.downTracker.css({cursor:h===l?"default":"pointer"})),this.scrollOffset=-g[h-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=h,this.positionCheckboxes(),a=f.animObject(x(a,e.renderer.globalAnimation,!0)),k(function(){C(c,"afterScroll",{currentPage:h})},a.duration||
0))};return c}();(/Trident\/7\.0/.test(c.navigator&&c.navigator.userAgent)||q)&&m(g.prototype,"positionItem",function(c,b){var a=this,e=function(){b._legendItemPos&&c.call(a,b)};e();a.bubbleLegend||setTimeout(e)});f.Legend=g;return f.Legend});P(y,"parts/Chart.js",[y["parts/Globals.js"],y["parts/Legend.js"],y["parts/MSPointer.js"],y["parts/Pointer.js"],y["parts/Time.js"],y["parts/Utilities.js"]],function(f,m,J,r,E,N){var F=N.addEvent,C=N.animate,B=N.animObject,L=N.attr,z=N.createElement,x=N.css,A=
N.defined,t=N.discardElement,n=N.erase,k=N.error,q=N.extend,e=N.find,c=N.fireEvent,g=N.getStyle,p=N.isArray,b=N.isFunction,a=N.isNumber,v=N.isObject,D=N.isString,w=N.merge,l=N.numberFormat,h=N.objectEach,u=N.pick,H=N.pInt,M=N.relativeLength,Q=N.removeEvent,G=N.setAnimation,d=N.splat,I=N.syncTimeout,O=N.uniqueKey,T=f.doc,V=f.Axis,W=f.defaultOptions,R=f.charts,K=f.marginNames,X=f.seriesTypes,y=f.win,Z=f.Chart=function(){this.getArgs.apply(this,arguments)};f.chart=function(a,d,b){return new Z(a,d,b)};
q(Z.prototype,{callbacks:[],getArgs:function(){var a=[].slice.call(arguments);if(D(a[0])||a[0].nodeName)this.renderTo=a.shift();this.init(a[0],a[1])},init:function(a,d){var e,g=a.series,p=a.plotOptions||{};c(this,"init",{args:arguments},function(){a.series=null;e=w(W,a);h(e.plotOptions,function(a,d){v(a)&&(a.tooltip=p[d]&&w(p[d].tooltip)||void 0)});e.tooltip.userOptions=a.chart&&a.chart.forExport&&a.tooltip.userOptions||a.tooltip;e.series=a.series=g;this.userOptions=a;var k=e.chart,u=k.events;this.margin=
[];this.spacing=[];this.bounds={h:{},v:{}};this.labelCollectors=[];this.callback=d;this.isResizing=0;this.options=e;this.axes=[];this.series=[];this.time=a.time&&Object.keys(a.time).length?new E(a.time):f.time;this.numberFormatter=k.numberFormatter||l;this.styledMode=k.styledMode;this.hasCartesianSeries=k.showAxes;var n=this;n.index=R.length;R.push(n);f.chartCount++;u&&h(u,function(a,d){b(a)&&F(n,d,a)});n.xAxis=[];n.yAxis=[];n.pointCount=n.colorCounter=n.symbolCounter=0;c(n,"afterInit");n.firstRender()})},
initSeries:function(a){var d=this.options.chart;d=a.type||d.type||d.defaultSeriesType;var b=X[d];b||k(17,!0,this,{missingModuleFor:d});d=new b;d.init(this,a);return d},setSeriesData:function(){this.getSeriesOrderByLinks().forEach(function(a){a.points||a.data||!a.enabledDataSorting||a.setData(a.options.data,!1)})},getSeriesOrderByLinks:function(){return this.series.concat().sort(function(a,d){return a.linkedSeries.length||d.linkedSeries.length?d.linkedSeries.length-a.linkedSeries.length:0})},orderSeries:function(a){var d=
this.series;for(a=a||0;a<d.length;a++)d[a]&&(d[a].index=a,d[a].name=d[a].getName())},isInsidePlot:function(a,d,b){var e=b?d:a;a=b?a:d;e={x:e,y:a,isInsidePlot:0<=e&&e<=this.plotWidth&&0<=a&&a<=this.plotHeight};c(this,"afterIsInsidePlot",e);return e.isInsidePlot},redraw:function(a){c(this,"beforeRedraw");var d=this.axes,b=this.series,e=this.pointer,h=this.legend,g=this.userOptions.legend,l=this.isDirtyLegend,p=this.hasCartesianSeries,k=this.isDirtyBox,u=this.renderer,f=u.isHidden(),n=[];this.setResponsive&&
this.setResponsive(!1);G(this.hasRendered?a:!1,this);f&&this.temporaryDisplay();this.layOutTitles();for(a=b.length;a--;){var I=b[a];if(I.options.stacking){var v=!0;if(I.isDirty){var w=!0;break}}}if(w)for(a=b.length;a--;)I=b[a],I.options.stacking&&(I.isDirty=!0);b.forEach(function(a){a.isDirty&&("point"===a.options.legendType?(a.updateTotals&&a.updateTotals(),l=!0):g&&(g.labelFormatter||g.labelFormat)&&(l=!0));a.isDirtyData&&c(a,"updatedData")});l&&h&&h.options.enabled&&(h.render(),this.isDirtyLegend=
!1);v&&this.getStacks();p&&d.forEach(function(a){a.updateNames();a.setScale()});this.getMargins();p&&(d.forEach(function(a){a.isDirty&&(k=!0)}),d.forEach(function(a){var d=a.min+","+a.max;a.extKey!==d&&(a.extKey=d,n.push(function(){c(a,"afterSetExtremes",q(a.eventArgs,a.getExtremes()));delete a.eventArgs}));(k||v)&&a.redraw()}));k&&this.drawChartBox();c(this,"predraw");b.forEach(function(a){(k||a.isDirty)&&a.visible&&a.redraw();a.isDirtyData=!1});e&&e.reset(!0);u.draw();c(this,"redraw");c(this,"render");
f&&this.temporaryDisplay(!0);n.forEach(function(a){a.call()})},get:function(a){function d(d){return d.id===a||d.options&&d.options.id===a}var b=this.series,c;var h=e(this.axes,d)||e(this.series,d);for(c=0;!h&&c<b.length;c++)h=e(b[c].points||[],d);return h},getAxes:function(){var a=this,b=this.options,e=b.xAxis=d(b.xAxis||{});b=b.yAxis=d(b.yAxis||{});c(this,"getAxes");e.forEach(function(a,d){a.index=d;a.isX=!0});b.forEach(function(a,d){a.index=d});e.concat(b).forEach(function(d){new V(a,d)});c(this,
"afterGetAxes")},getSelectedPoints:function(){var a=[];this.series.forEach(function(d){a=a.concat(d.getPointsCollection().filter(function(a){return u(a.selectedStaging,a.selected)}))});return a},getSelectedSeries:function(){return this.series.filter(function(a){return a.selected})},setTitle:function(a,d,b){this.applyDescription("title",a);this.applyDescription("subtitle",d);this.applyDescription("caption",void 0);this.layOutTitles(b)},applyDescription:function(a,d){var b=this,c="title"===a?{color:"#333333",
fontSize:this.options.isStock?"16px":"18px"}:{color:"#666666"};c=this.options[a]=w(!this.styledMode&&{style:c},this.options[a],d);var e=this[a];e&&d&&(this[a]=e=e.destroy());c&&!e&&(e=this.renderer.text(c.text,0,0,c.useHTML).attr({align:c.align,"class":"highcharts-"+a,zIndex:c.zIndex||4}).add(),e.update=function(d){b[{title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"}[a]](d)},this.styledMode||e.css(c.style),this[a]=e)},layOutTitles:function(a){var d=[0,0,0],b=this.renderer,e=this.spacingBox;
["title","subtitle","caption"].forEach(function(a){var c=this[a],h=this.options[a],g=h.verticalAlign||"top";a="title"===a?-3:"top"===g?d[0]+2:0;if(c){if(!this.styledMode)var l=h.style.fontSize;l=b.fontMetrics(l,c).b;c.css({width:(h.width||e.width+(h.widthAdjust||0))+"px"});var p=Math.round(c.getBBox(h.useHTML).height);c.align(q({y:"bottom"===g?l:a+l,height:p},h),!1,"spacingBox");h.floating||("top"===g?d[0]=Math.ceil(d[0]+p):"bottom"===g&&(d[2]=Math.ceil(d[2]+p)))}},this);d[0]&&"top"===(this.options.title.verticalAlign||
"top")&&(d[0]+=this.options.title.margin);d[2]&&"bottom"===this.options.caption.verticalAlign&&(d[2]+=this.options.caption.margin);var h=!this.titleOffset||this.titleOffset.join(",")!==d.join(",");this.titleOffset=d;c(this,"afterLayOutTitles");!this.isDirtyBox&&h&&(this.isDirtyBox=this.isDirtyLegend=h,this.hasRendered&&u(a,!0)&&this.isDirtyBox&&this.redraw())},getChartSize:function(){var a=this.options.chart,d=a.width;a=a.height;var b=this.renderTo;A(d)||(this.containerWidth=g(b,"width"));A(a)||(this.containerHeight=
g(b,"height"));this.chartWidth=Math.max(0,d||this.containerWidth||600);this.chartHeight=Math.max(0,M(a,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))},temporaryDisplay:function(a){var d=this.renderTo;if(a)for(;d&&d.style;)d.hcOrigStyle&&(x(d,d.hcOrigStyle),delete d.hcOrigStyle),d.hcOrigDetached&&(T.body.removeChild(d),d.hcOrigDetached=!1),d=d.parentNode;else for(;d&&d.style;){T.body.contains(d)||d.parentNode||(d.hcOrigDetached=!0,T.body.appendChild(d));if("none"===g(d,"display",
!1)||d.hcOricDetached)d.hcOrigStyle={display:d.style.display,height:d.style.height,overflow:d.style.overflow},a={display:"block",overflow:"hidden"},d!==this.renderTo&&(a.height=0),x(d,a),d.offsetWidth||d.style.setProperty("display","block","important");d=d.parentNode;if(d===T.body)break}},setClassName:function(a){this.container.className="highcharts-container "+(a||"")},getContainer:function(){var d=this.options,b=d.chart;var e=this.renderTo;var h=O(),g,l;e||(this.renderTo=e=b.renderTo);D(e)&&(this.renderTo=
e=T.getElementById(e));e||k(13,!0,this);var p=H(L(e,"data-highcharts-chart"));a(p)&&R[p]&&R[p].hasRendered&&R[p].destroy();L(e,"data-highcharts-chart",this.index);e.innerHTML="";b.skipClone||e.offsetWidth||this.temporaryDisplay();this.getChartSize();p=this.chartWidth;var u=this.chartHeight;x(e,{overflow:"hidden"});this.styledMode||(g=q({position:"relative",overflow:"hidden",width:p+"px",height:u+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},b.style));
this.container=e=z("div",{id:h},g,e);this._cursor=e.style.cursor;this.renderer=new (f[b.renderer]||f.Renderer)(e,p,u,null,b.forExport,d.exporting&&d.exporting.allowHTML,this.styledMode);G(void 0,this);this.setClassName(b.className);if(this.styledMode)for(l in d.defs)this.renderer.definition(d.defs[l]);else this.renderer.setStyle(b.style);this.renderer.chartIndex=this.index;c(this,"afterGetContainer")},getMargins:function(a){var d=this.spacing,b=this.margin,e=this.titleOffset;this.resetMargins();e[0]&&
!A(b[0])&&(this.plotTop=Math.max(this.plotTop,e[0]+d[0]));e[2]&&!A(b[2])&&(this.marginBottom=Math.max(this.marginBottom,e[2]+d[2]));this.legend&&this.legend.display&&this.legend.adjustMargins(b,d);c(this,"getMargins");a||this.getAxisMargins()},getAxisMargins:function(){var a=this,d=a.axisOffset=[0,0,0,0],b=a.colorAxis,c=a.margin,e=function(a){a.forEach(function(a){a.visible&&a.getOffset()})};a.hasCartesianSeries?e(a.axes):b&&b.length&&e(b);K.forEach(function(b,e){A(c[e])||(a[b]+=d[e])});a.setChartSize()},
reflow:function(a){var d=this,b=d.options.chart,c=d.renderTo,e=A(b.width)&&A(b.height),h=b.width||g(c,"width");b=b.height||g(c,"height");c=a?a.target:y;if(!e&&!d.isPrinting&&h&&b&&(c===y||c===T)){if(h!==d.containerWidth||b!==d.containerHeight)N.clearTimeout(d.reflowTimeout),d.reflowTimeout=I(function(){d.container&&d.setSize(void 0,void 0,!1)},a?100:0);d.containerWidth=h;d.containerHeight=b}},setReflow:function(a){var d=this;!1===a||this.unbindReflow?!1===a&&this.unbindReflow&&(this.unbindReflow=
this.unbindReflow()):(this.unbindReflow=F(y,"resize",function(a){d.options&&d.reflow(a)}),F(this,"destroy",this.unbindReflow))},setSize:function(a,d,b){var e=this,h=e.renderer;e.isResizing+=1;G(b,e);b=h.globalAnimation;e.oldChartHeight=e.chartHeight;e.oldChartWidth=e.chartWidth;"undefined"!==typeof a&&(e.options.chart.width=a);"undefined"!==typeof d&&(e.options.chart.height=d);e.getChartSize();e.styledMode||(b?C:x)(e.container,{width:e.chartWidth+"px",height:e.chartHeight+"px"},b);e.setChartSize(!0);
h.setSize(e.chartWidth,e.chartHeight,b);e.axes.forEach(function(a){a.isDirty=!0;a.setScale()});e.isDirtyLegend=!0;e.isDirtyBox=!0;e.layOutTitles();e.getMargins();e.redraw(b);e.oldChartHeight=null;c(e,"resize");I(function(){e&&c(e,"endResize",null,function(){--e.isResizing})},B(b).duration||0)},setChartSize:function(a){var d=this.inverted,b=this.renderer,e=this.chartWidth,h=this.chartHeight,g=this.options.chart,l=this.spacing,p=this.clipOffset,k,u,f,n;this.plotLeft=k=Math.round(this.plotLeft);this.plotTop=
u=Math.round(this.plotTop);this.plotWidth=f=Math.max(0,Math.round(e-k-this.marginRight));this.plotHeight=n=Math.max(0,Math.round(h-u-this.marginBottom));this.plotSizeX=d?n:f;this.plotSizeY=d?f:n;this.plotBorderWidth=g.plotBorderWidth||0;this.spacingBox=b.spacingBox={x:l[3],y:l[0],width:e-l[3]-l[1],height:h-l[0]-l[2]};this.plotBox=b.plotBox={x:k,y:u,width:f,height:n};e=2*Math.floor(this.plotBorderWidth/2);d=Math.ceil(Math.max(e,p[3])/2);b=Math.ceil(Math.max(e,p[0])/2);this.clipBox={x:d,y:b,width:Math.floor(this.plotSizeX-
Math.max(e,p[1])/2-d),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(e,p[2])/2-b))};a||this.axes.forEach(function(a){a.setAxisSize();a.setAxisTranslation()});c(this,"afterSetChartSize",{skipAxes:a})},resetMargins:function(){c(this,"resetMargins");var a=this,d=a.options.chart;["margin","spacing"].forEach(function(b){var c=d[b],e=v(c)?c:[c,c,c,c];["Top","Right","Bottom","Left"].forEach(function(c,h){a[b][h]=u(d[b+c],e[h])})});K.forEach(function(d,b){a[d]=u(a.margin[b],a.spacing[b])});a.axisOffset=
[0,0,0,0];a.clipOffset=[0,0,0,0]},drawChartBox:function(){var a=this.options.chart,d=this.renderer,b=this.chartWidth,e=this.chartHeight,h=this.chartBackground,g=this.plotBackground,l=this.plotBorder,p=this.styledMode,k=this.plotBGImage,u=a.backgroundColor,f=a.plotBackgroundColor,n=a.plotBackgroundImage,I,v=this.plotLeft,q=this.plotTop,w=this.plotWidth,O=this.plotHeight,H=this.plotBox,G=this.clipRect,t=this.clipBox,x="animate";h||(this.chartBackground=h=d.rect().addClass("highcharts-background").add(),
x="attr");if(p)var D=I=h.strokeWidth();else{D=a.borderWidth||0;I=D+(a.shadow?8:0);u={fill:u||"none"};if(D||h["stroke-width"])u.stroke=a.borderColor,u["stroke-width"]=D;h.attr(u).shadow(a.shadow)}h[x]({x:I/2,y:I/2,width:b-I-D%2,height:e-I-D%2,r:a.borderRadius});x="animate";g||(x="attr",this.plotBackground=g=d.rect().addClass("highcharts-plot-background").add());g[x](H);p||(g.attr({fill:f||"none"}).shadow(a.plotShadow),n&&(k?(n!==k.attr("href")&&k.attr("href",n),k.animate(H)):this.plotBGImage=d.image(n,
v,q,w,O).add()));G?G.animate({width:t.width,height:t.height}):this.clipRect=d.clipRect(t);x="animate";l||(x="attr",this.plotBorder=l=d.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add());p||l.attr({stroke:a.plotBorderColor,"stroke-width":a.plotBorderWidth||0,fill:"none"});l[x](l.crisp({x:v,y:q,width:w,height:O},-l.strokeWidth()));this.isDirtyBox=!1;c(this,"afterDrawChartBox")},propFromSeries:function(){var a=this,d=a.options.chart,b,c=a.options.series,e,h;["inverted","angular","polar"].forEach(function(g){b=
X[d.type||d.defaultSeriesType];h=d[g]||b&&b.prototype[g];for(e=c&&c.length;!h&&e--;)(b=X[c[e].type])&&b.prototype[g]&&(h=!0);a[g]=h})},linkSeries:function(){var a=this,d=a.series;d.forEach(function(a){a.linkedSeries.length=0});d.forEach(function(d){var b=d.options.linkedTo;D(b)&&(b=":previous"===b?a.series[d.index-1]:a.get(b))&&b.linkedParent!==d&&(b.linkedSeries.push(d),d.linkedParent=b,b.enabledDataSorting&&d.setDataSortingOptions(),d.visible=u(d.options.visible,b.options.visible,d.visible))});
c(this,"afterLinkSeries")},renderSeries:function(){this.series.forEach(function(a){a.translate();a.render()})},renderLabels:function(){var a=this,d=a.options.labels;d.items&&d.items.forEach(function(b){var c=q(d.style,b.style),e=H(c.left)+a.plotLeft,h=H(c.top)+a.plotTop+12;delete c.left;delete c.top;a.renderer.text(b.html,e,h).attr({zIndex:2}).css(c).add()})},render:function(){var a=this.axes,d=this.colorAxis,b=this.renderer,c=this.options,e=0,h=function(a){a.forEach(function(a){a.visible&&a.render()})};
this.setTitle();this.legend=new m(this,c.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();c=this.plotWidth;a.some(function(a){if(a.horiz&&a.visible&&a.options.labels.enabled&&a.series.length)return e=21,!0});var g=this.plotHeight=Math.max(this.plotHeight-e,0);a.forEach(function(a){a.setScale()});this.getAxisMargins();var l=1.1<c/this.plotWidth;var p=1.05<g/this.plotHeight;if(l||p)a.forEach(function(a){(a.horiz&&l||!a.horiz&&p)&&a.setTickInterval(!0)}),this.getMargins();
this.drawChartBox();this.hasCartesianSeries?h(a):d&&d.length&&h(d);this.seriesGroup||(this.seriesGroup=b.g("series-group").attr({zIndex:3}).add());this.renderSeries();this.renderLabels();this.addCredits();this.setResponsive&&this.setResponsive();this.updateContainerScaling();this.hasRendered=!0},addCredits:function(a){var d=this;a=w(!0,this.options.credits,a);a.enabled&&!this.credits&&(this.credits=this.renderer.text(a.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){a.href&&
(y.location.href=a.href)}).attr({align:a.position.align,zIndex:8}),d.styledMode||this.credits.css(a.style),this.credits.add().align(a.position),this.credits.update=function(a){d.credits=d.credits.destroy();d.addCredits(a)})},updateContainerScaling:function(){var a=this.container;if(a.offsetWidth&&a.offsetHeight&&a.getBoundingClientRect){var d=a.getBoundingClientRect(),b=d.width/a.offsetWidth;a=d.height/a.offsetHeight;1!==b||1!==a?this.containerScaling={scaleX:b,scaleY:a}:delete this.containerScaling}},
destroy:function(){var a=this,d=a.axes,b=a.series,e=a.container,g,l=e&&e.parentNode;c(a,"destroy");a.renderer.forExport?n(R,a):R[a.index]=void 0;f.chartCount--;a.renderTo.removeAttribute("data-highcharts-chart");Q(a);for(g=d.length;g--;)d[g]=d[g].destroy();this.scroller&&this.scroller.destroy&&this.scroller.destroy();for(g=b.length;g--;)b[g]=b[g].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(d){var b=
a[d];b&&b.destroy&&(a[d]=b.destroy())});e&&(e.innerHTML="",Q(e),l&&t(e));h(a,function(d,b){delete a[b]})},firstRender:function(){var a=this,d=a.options;if(!a.isReadyToRender||a.isReadyToRender()){a.getContainer();a.resetMargins();a.setChartSize();a.propFromSeries();a.getAxes();(p(d.series)?d.series:[]).forEach(function(d){a.initSeries(d)});a.linkSeries();a.setSeriesData();c(a,"beforeRender");r&&(a.pointer=f.hasTouch||!y.PointerEvent&&!y.MSPointerEvent?new r(a,d):new J(a,d));a.render();if(!a.renderer.imgCount&&
!a.hasLoaded)a.onload();a.temporaryDisplay(!0)}},onload:function(){this.callbacks.concat([this.callback]).forEach(function(a){a&&"undefined"!==typeof this.index&&a.apply(this,[this])},this);c(this,"load");c(this,"render");A(this.index)&&this.setReflow(this.options.chart.reflow);this.hasLoaded=!0}})});P(y,"parts/ScrollablePlotArea.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.addEvent,r=m.createElement,E=m.pick,y=m.stop;m=f.Chart;"";J(m,"afterSetChartSize",function(m){var r=
this.options.chart.scrollablePlotArea,B=r&&r.minWidth;r=r&&r.minHeight;if(!this.renderer.forExport){if(B){if(this.scrollablePixelsX=B=Math.max(0,B-this.chartWidth)){this.plotWidth+=B;this.inverted?(this.clipBox.height+=B,this.plotBox.height+=B):(this.clipBox.width+=B,this.plotBox.width+=B);var F={1:{name:"right",value:B}}}}else r&&(this.scrollablePixelsY=B=Math.max(0,r-this.chartHeight))&&(this.plotHeight+=B,this.inverted?(this.clipBox.width+=B,this.plotBox.width+=B):(this.clipBox.height+=B,this.plotBox.height+=
B),F={2:{name:"bottom",value:B}});F&&!m.skipAxes&&this.axes.forEach(function(z){F[z.side]?z.getPlotLinePath=function(){var x=F[z.side].name,m=this[x];this[x]=m-F[z.side].value;var t=f.Axis.prototype.getPlotLinePath.apply(this,arguments);this[x]=m;return t}:(z.setAxisSize(),z.setAxisTranslation())})}});J(m,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()});m.prototype.setUpScrolling=function(){var f=
this,m={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(m.overflowX="auto");this.scrollablePixelsY&&(m.overflowY="auto");this.scrollingContainer=r("div",{className:"highcharts-scrolling"},m,this.renderTo);J(this.scrollingContainer,"scroll",function(){f.pointer&&delete f.pointer.chartPosition});this.innerContainer=r("div",{className:"highcharts-inner-container"},null,this.scrollingContainer);this.innerContainer.appendChild(this.container);this.setUpScrolling=
null};m.prototype.moveFixedElements=function(){var f=this.container,m=this.fixedRenderer,r=".highcharts-contextbutton .highcharts-credits .highcharts-legend .highcharts-legend-checkbox .highcharts-navigator-series .highcharts-navigator-xaxis .highcharts-navigator-yaxis .highcharts-navigator .highcharts-reset-zoom .highcharts-scrollbar .highcharts-subtitle .highcharts-title".split(" "),E;this.scrollablePixelsX&&!this.inverted?E=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?E=".highcharts-xaxis":
this.scrollablePixelsY&&!this.inverted?E=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(E=".highcharts-yaxis");r.push(E,E+"-labels");r.forEach(function(z){[].forEach.call(f.querySelectorAll(z),function(f){(f.namespaceURI===m.SVG_NS?m.box:m.box.parentNode).appendChild(f);f.style.pointerEvents="auto"})})};m.prototype.applyFixed=function(){var m,C=!this.fixedDiv,B=this.options.chart.scrollablePlotArea;C?(this.fixedDiv=r("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",
pointerEvents:"none",zIndex:2},null,!0),this.renderTo.insertBefore(this.fixedDiv,this.renderTo.firstChild),this.renderTo.style.overflow="visible",this.fixedRenderer=m=new f.Renderer(this.fixedDiv,this.chartWidth,this.chartHeight),this.scrollableMask=m.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":E(B.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),this.moveFixedElements(),J(this,"afterShowResetZoom",this.moveFixedElements),J(this,"afterLayOutTitles",
this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight);m=this.chartWidth+(this.scrollablePixelsX||0);var L=this.chartHeight+(this.scrollablePixelsY||0);y(this.container);this.container.style.width=m+"px";this.container.style.height=L+"px";this.renderer.boxWrapper.attr({width:m,height:L,viewBox:[0,0,m,L].join(" ")});this.chartBackground.attr({width:m,height:L});this.scrollablePixelsY&&(this.scrollingContainer.style.height=this.chartHeight+"px");C&&(B.scrollPositionX&&
(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*B.scrollPositionX),B.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*B.scrollPositionY));L=this.axisOffset;C=this.plotTop-L[0]-1;B=this.plotLeft-L[3]-1;m=this.plotTop+this.plotHeight+L[2]+1;L=this.plotLeft+this.plotWidth+L[1]+1;var z=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),x=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);C=this.scrollablePixelsX?["M",0,C,"L",this.plotLeft-1,C,"L",this.plotLeft-
1,m,"L",0,m,"Z","M",z,C,"L",this.chartWidth,C,"L",this.chartWidth,m,"L",z,m,"Z"]:this.scrollablePixelsY?["M",B,0,"L",B,this.plotTop-1,"L",L,this.plotTop-1,"L",L,0,"Z","M",B,x,"L",B,this.chartHeight,"L",L,this.chartHeight,"L",L,x,"Z"]:["M",0,0];"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:C})}});P(y,"mixins/legend-symbol.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.merge,r=m.pick;f.LegendSymbolMixin={drawRectangle:function(f,m){var F=f.symbolHeight,
C=f.options.squareSymbol;m.legendSymbol=this.chart.renderer.rect(C?(f.symbolWidth-F)/2:0,f.baseline-F+1,C?F:f.symbolWidth,F,r(f.options.symbolRadius,F/2)).addClass("highcharts-point").attr({zIndex:3}).add(m.legendGroup)},drawLineMarker:function(f){var m=this.options,F=m.marker,C=f.symbolWidth,B=f.symbolHeight,E=B/2,z=this.chart.renderer,x=this.legendGroup;f=f.baseline-Math.round(.3*f.fontMetrics.b);var A={};this.chart.styledMode||(A={"stroke-width":m.lineWidth||0},m.dashStyle&&(A.dashstyle=m.dashStyle));
this.legendLine=z.path(["M",0,f,"L",C,f]).addClass("highcharts-graph").attr(A).add(x);F&&!1!==F.enabled&&C&&(m=Math.min(r(F.radius,E),E),0===this.symbol.indexOf("url")&&(F=J(F,{width:B,height:B}),m=0),this.legendSymbol=F=z.symbol(this.symbol,C/2-m,f-m,2*m,2*m,F).addClass("highcharts-point").add(x),F.isMarker=!0)}};return f.LegendSymbolMixin});P(y,"parts/Point.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){"";var J=m.animObject,r=m.defined,E=m.erase,y=m.extend,F=m.format,C=m.getNestedProperty,
B=m.isArray,L=m.isNumber,z=m.isObject,x=m.syncTimeout,A=m.pick,t=m.removeEvent,n=m.uniqueKey,k=f.fireEvent;m=function(){function f(){this.colorIndex=this.category=void 0;this.formatPrefix="point";this.id=void 0;this.isNull=!1;this.percentage=this.options=this.name=void 0;this.selected=!1;this.total=this.series=void 0;this.visible=!0;this.x=void 0}f.prototype.animateBeforeDestroy=function(){var e=this,c={x:e.startXPos,opacity:0},g,p=e.getGraphicalProps();p.singular.forEach(function(b){g="dataLabel"===
b;e[b]=e[b].animate(g?{x:e[b].startXPos,y:e[b].startYPos,opacity:0}:c)});p.plural.forEach(function(b){e[b].forEach(function(a){a.element&&a.animate(y({x:e.startXPos},a.startYPos?{x:a.startXPos,y:a.startYPos}:{}))})})};f.prototype.applyOptions=function(e,c){var g=this.series,p=g.options.pointValKey||g.pointValKey;e=f.prototype.optionsToObject.call(this,e);y(this,e);this.options=this.options?y(this.options,e):e;e.group&&delete this.group;e.dataLabels&&delete this.dataLabels;p&&(this.y=f.prototype.getNestedProperty.call(this,
p));this.formatPrefix=(this.isNull=A(this.isValid&&!this.isValid(),null===this.x||!L(this.y)))?"null":"point";this.selected&&(this.state="select");"name"in this&&"undefined"===typeof c&&g.xAxis&&g.xAxis.hasNames&&(this.x=g.xAxis.nameToX(this));"undefined"===typeof this.x&&g&&(this.x="undefined"===typeof c?g.autoIncrement(this):c);return this};f.prototype.destroy=function(){function e(){if(c.graphic||c.dataLabel||c.dataLabels)t(c),c.destroyElements();for(k in c)c[k]=null}var c=this,g=c.series,p=g.chart;
g=g.options.dataSorting;var b=p.hoverPoints,a=J(c.series.chart.renderer.globalAnimation),k;c.legendItem&&p.legend.destroyItem(c);b&&(c.setState(),E(b,c),b.length||(p.hoverPoints=null));if(c===p.hoverPoint)c.onMouseOut();g&&g.enabled?(this.animateBeforeDestroy(),x(e,a.duration)):e();p.pointCount--};f.prototype.destroyElements=function(e){var c=this;e=c.getGraphicalProps(e);e.singular.forEach(function(e){c[e]=c[e].destroy()});e.plural.forEach(function(e){c[e].forEach(function(c){c.element&&c.destroy()});
delete c[e]})};f.prototype.firePointEvent=function(e,c,g){var p=this,b=this.series.options;(b.point.events[e]||p.options&&p.options.events&&p.options.events[e])&&p.importEvents();"click"===e&&b.allowPointSelect&&(g=function(a){p.select&&p.select(null,a.ctrlKey||a.metaKey||a.shiftKey)});k(p,e,c,g)};f.prototype.getClassName=function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+("undefined"!==
typeof this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")};f.prototype.getGraphicalProps=function(e){var c=this,g=[],p,b={singular:[],plural:[]};e=e||{graphic:1,dataLabel:1};e.graphic&&g.push("graphic","shadowGroup");e.dataLabel&&g.push("dataLabel","dataLabelUpper","connector");for(p=g.length;p--;){var a=g[p];c[a]&&b.singular.push(a)}["dataLabel",
"connector"].forEach(function(a){var g=a+"s";e[a]&&c[g]&&b.plural.push(g)});return b};f.prototype.getLabelConfig=function(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}};f.prototype.getNestedProperty=function(e){if(e)return 0===e.indexOf("custom.")?C(e,this.options):this[e]};f.prototype.getZone=function(){var e=this.series,c=e.zones;e=e.zoneAxis||
"y";var g=0,p;for(p=c[g];this[e]>=p.value;)p=c[++g];this.nonZonedColor||(this.nonZonedColor=this.color);this.color=p&&p.color&&!this.options.color?p.color:this.nonZonedColor;return p};f.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType};f.prototype.init=function(e,c,g){this.series=e;this.applyOptions(c,g);this.id=r(this.id)?this.id:n();this.resolveColor();e.chart.pointCount++;k(this,"afterInit");return this};f.prototype.optionsToObject=
function(e){var c={},g=this.series,p=g.options.keys,b=p||g.pointArrayMap||["y"],a=b.length,k=0,n=0;if(L(e)||null===e)c[b[0]]=e;else if(B(e))for(!p&&e.length>a&&(g=typeof e[0],"string"===g?c.name=e[0]:"number"===g&&(c.x=e[0]),k++);n<a;)p&&"undefined"===typeof e[k]||(0<b[n].indexOf(".")?f.prototype.setNestedProperty(c,e[k],b[n]):c[b[n]]=e[k]),k++,n++;else"object"===typeof e&&(c=e,e.dataLabels&&(g._hasPointLabels=!0),e.marker&&(g._hasPointMarkers=!0));return c};f.prototype.resolveColor=function(){var e=
this.series;var c=e.chart.options.chart.colorCount;var g=e.chart.styledMode;g||this.options.color||(this.color=e.color);e.options.colorByPoint?(g||(c=e.options.colors||e.chart.options.colors,this.color=this.color||c[e.colorCounter],c=c.length),g=e.colorCounter,e.colorCounter++,e.colorCounter===c&&(e.colorCounter=0)):g=e.colorIndex;this.colorIndex=A(this.colorIndex,g)};f.prototype.setNestedProperty=function(e,c,g){g.split(".").reduce(function(e,b,a,g){e[b]=g.length-1===a?c:z(e[b],!0)?e[b]:{};return e[b]},
e);return e};f.prototype.tooltipFormatter=function(e){var c=this.series,g=c.tooltipOptions,p=A(g.valueDecimals,""),b=g.valuePrefix||"",a=g.valueSuffix||"";c.chart.styledMode&&(e=c.chart.tooltip.styledModeFormat(e));(c.pointArrayMap||["y"]).forEach(function(c){c="{point."+c;if(b||a)e=e.replace(RegExp(c+"}","g"),b+c+"}"+a);e=e.replace(RegExp(c+"}","g"),c+":,."+p+"f}")});return F(e,{point:this,series:this.series},c.chart)};return f}();f.Point=m;return f.Point});P(y,"parts/Series.js",[y["parts/Globals.js"],
y["mixins/legend-symbol.js"],y["parts/Point.js"],y["parts/Utilities.js"]],function(f,m,J,r){"";var E=r.addEvent,y=r.animObject,F=r.arrayMax,C=r.arrayMin,B=r.clamp,L=r.correctFloat,z=r.defined,x=r.erase,A=r.error,t=r.extend,n=r.find,k=r.fireEvent,q=r.getNestedProperty,e=r.isArray,c=r.isFunction,g=r.isNumber,p=r.isString,b=r.merge,a=r.objectEach,v=r.pick,D=r.removeEvent,w=r.seriesType,l=r.splat,h=r.syncTimeout,u=f.defaultOptions,H=f.defaultPlotOptions,M=f.seriesTypes,Q=f.SVGElement,G=f.win;f.Series=
w("line",null,{lineWidth:2,allowPointSelect:!1,showCheckbox:!1,animation:{duration:1E3},events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{align:"center",formatter:function(){var a=this.series.chart.numberFormatter;return"number"!==typeof this.y?"":a(this.y,-1)},padding:5,style:{fontSize:"11px",
fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:50},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1E3,findNearestPointBy:"x"},{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,eventsToUnbind:[],
isCartesian:!0,parallelArrays:["x","y"],pointClass:J,requireSorting:!0,sorted:!0,init:function(d,b){k(this,"init",{options:b});var e=this,h=d.series,g;this.eventOptions=this.eventOptions||{};e.chart=d;e.options=b=e.setOptions(b);e.linkedSeries=[];e.bindAxes();t(e,{name:b.name,state:"",visible:!1!==b.visible,selected:!0===b.selected});var l=b.events;a(l,function(a,d){c(a)&&e.eventOptions[d]!==a&&(c(e.eventOptions[d])&&D(e,d,e.eventOptions[d]),e.eventOptions[d]=a,E(e,d,a))});if(l&&l.click||b.point&&
b.point.events&&b.point.events.click||b.allowPointSelect)d.runTrackerClick=!0;e.getColor();e.getSymbol();e.parallelArrays.forEach(function(a){e[a+"Data"]||(e[a+"Data"]=[])});e.isCartesian&&(d.hasCartesianSeries=!0);h.length&&(g=h[h.length-1]);e._i=v(g&&g._i,-1)+1;d.orderSeries(this.insert(h));b.dataSorting&&b.dataSorting.enabled?e.setDataSortingOptions():e.points||e.data||e.setData(b.data,!1);k(this,"afterInit")},is:function(a){return M[a]&&this instanceof M[a]},insert:function(a){var d=this.options.index,
b;if(g(d)){for(b=a.length;b--;)if(d>=v(a[b].options.index,a[b]._i)){a.splice(b+1,0,this);break}-1===b&&a.unshift(this);b+=1}else a.push(this);return v(b,a.length-1)},bindAxes:function(){var a=this,b=a.options,c=a.chart,e;k(this,"bindAxes",null,function(){(a.axisTypes||[]).forEach(function(d){c[d].forEach(function(c){e=c.options;if(b[d]===e.index||"undefined"!==typeof b[d]&&b[d]===e.id||"undefined"===typeof b[d]&&0===e.index)a.insert(c.series),a[d]=c,c.isDirty=!0});a[d]||a.optionalAxis===d||A(18,!0,
c)})});k(this,"afterBindAxes")},updateParallelArrays:function(a,b){var d=a.series,c=arguments,e=g(b)?function(c){var e="y"===c&&d.toYData?d.toYData(a):a[c];d[c+"Data"][b]=e}:function(a){Array.prototype[b].apply(d[a+"Data"],Array.prototype.slice.call(c,2))};d.parallelArrays.forEach(e)},hasData:function(){return this.visible&&"undefined"!==typeof this.dataMax&&"undefined"!==typeof this.dataMin||this.visible&&this.yData&&0<this.yData.length},autoIncrement:function(){var a=this.options,b=this.xIncrement,
c,e=a.pointIntervalUnit,h=this.chart.time;b=v(b,a.pointStart,0);this.pointInterval=c=v(this.pointInterval,a.pointInterval,1);e&&(a=new h.Date(b),"day"===e?h.set("Date",a,h.get("Date",a)+c):"month"===e?h.set("Month",a,h.get("Month",a)+c):"year"===e&&h.set("FullYear",a,h.get("FullYear",a)+c),c=a.getTime()-b);this.xIncrement=b+c;return b},setDataSortingOptions:function(){var a=this.options;t(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1});z(a.pointRange)||(a.pointRange=1)},setOptions:function(a){var d=
this.chart,c=d.options,e=c.plotOptions,h=d.userOptions||{};a=b(a);d=d.styledMode;var g={plotOptions:e,userOptions:a};k(this,"setOptions",g);var l=g.plotOptions[this.type],p=h.plotOptions||{};this.userOptions=g.userOptions;h=b(l,e.series,h.plotOptions&&h.plotOptions[this.type],a);this.tooltipOptions=b(u.tooltip,u.plotOptions.series&&u.plotOptions.series.tooltip,u.plotOptions[this.type].tooltip,c.tooltip.userOptions,e.series&&e.series.tooltip,e[this.type].tooltip,a.tooltip);this.stickyTracking=v(a.stickyTracking,
p[this.type]&&p[this.type].stickyTracking,p.series&&p.series.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:h.stickyTracking);null===l.marker&&delete h.marker;this.zoneAxis=h.zoneAxis;c=this.zones=(h.zones||[]).slice();!h.negativeColor&&!h.negativeFillColor||h.zones||(e={value:h[this.zoneAxis+"Threshold"]||h.threshold||0,className:"highcharts-negative"},d||(e.color=h.negativeColor,e.fillColor=h.negativeFillColor),c.push(e));c.length&&z(c[c.length-1].value)&&c.push(d?{}:{color:this.color,
fillColor:this.fillColor});k(this,"afterSetOptions",{options:h});return h},getName:function(){return v(this.options.name,"Series "+(this.index+1))},getCyclic:function(a,b,c){var d=this.chart,e=this.userOptions,h=a+"Index",g=a+"Counter",l=c?c.length:v(d.options.chart[a+"Count"],d[a+"Count"]);if(!b){var p=v(e[h],e["_"+h]);z(p)||(d.series.length||(d[g]=0),e["_"+h]=p=d[g]%l,d[g]+=1);c&&(b=c[p])}"undefined"!==typeof p&&(this[h]=p);this[a]=b},getColor:function(){this.chart.styledMode?this.getCyclic("color"):
this.options.colorByPoint?this.options.color=null:this.getCyclic("color",this.options.color||H[this.type].color,this.chart.options.colors)},getPointsCollection:function(){return(this.hasGroupedData?this.points:this.data)||[]},getSymbol:function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},findPointIndex:function(a,b){var d=a.id,c=a.x,e=this.points,h,l=this.options.dataSorting;if(d)var p=this.chart.get(d);else if(this.linkedParent||this.enabledDataSorting){var k=
l&&l.matchByName?"name":"index";p=n(e,function(d){return!d.touched&&d[k]===a[k]});if(!p)return}if(p){var u=p&&p.index;"undefined"!==typeof u&&(h=!0)}"undefined"===typeof u&&g(c)&&(u=this.xData.indexOf(c,b));-1!==u&&"undefined"!==typeof u&&this.cropped&&(u=u>=this.cropStart?u-this.cropStart:u);!h&&e[u]&&e[u].touched&&(u=void 0);return u},drawLegendSymbol:m.drawLineMarker,updateData:function(a,b){var d=this.options,c=d.dataSorting,e=this.points,h=[],l,p,k,u=this.requireSorting,f=a.length===e.length,
n=!0;this.xIncrement=null;a.forEach(function(a,b){var p=z(a)&&this.pointClass.prototype.optionsToObject.call({series:this},a)||{};var n=p.x;if(p.id||g(n)){if(n=this.findPointIndex(p,k),-1===n||"undefined"===typeof n?h.push(a):e[n]&&a!==d.data[n]?(e[n].update(a,!1,null,!1),e[n].touched=!0,u&&(k=n+1)):e[n]&&(e[n].touched=!0),!f||b!==n||c&&c.enabled||this.hasDerivedData)l=!0}else h.push(a)},this);if(l)for(a=e.length;a--;)(p=e[a])&&!p.touched&&p.remove&&p.remove(!1,b);else!f||c&&c.enabled?n=!1:(a.forEach(function(a,
d){e[d].update&&a!==e[d].y&&e[d].update(a,!1,null,!1)}),h.length=0);e.forEach(function(a){a&&(a.touched=!1)});if(!n)return!1;h.forEach(function(a){this.addPoint(a,!1,null,null,!1)},this);null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=F(this.xData),this.autoIncrement());return!0},setData:function(a,b,c,h){var d=this,l=d.points,k=l&&l.length||0,u,f=d.options,n=d.chart,I=f.dataSorting,w=null,q=d.xAxis;w=f.turboThreshold;var H=this.xData,m=this.yData,G=(u=d.pointArrayMap)&&u.length,
t=f.keys,x=0,D=1,z;a=a||[];u=a.length;b=v(b,!0);I&&I.enabled&&(a=this.sortData(a));!1!==h&&u&&k&&!d.cropped&&!d.hasGroupedData&&d.visible&&!d.isSeriesBoosting&&(z=this.updateData(a,c));if(!z){d.xIncrement=null;d.colorCounter=0;this.parallelArrays.forEach(function(a){d[a+"Data"].length=0});if(w&&u>w)if(w=d.getFirstValidPoint(a),g(w))for(c=0;c<u;c++)H[c]=this.autoIncrement(),m[c]=a[c];else if(e(w))if(G)for(c=0;c<u;c++)h=a[c],H[c]=h[0],m[c]=h.slice(1,G+1);else for(t&&(x=t.indexOf("x"),D=t.indexOf("y"),
x=0<=x?x:0,D=0<=D?D:1),c=0;c<u;c++)h=a[c],H[c]=h[x],m[c]=h[D];else A(12,!1,n);else for(c=0;c<u;c++)"undefined"!==typeof a[c]&&(h={series:d},d.pointClass.prototype.applyOptions.apply(h,[a[c]]),d.updateParallelArrays(h,c));m&&p(m[0])&&A(14,!0,n);d.data=[];d.options.data=d.userOptions.data=a;for(c=k;c--;)l[c]&&l[c].destroy&&l[c].destroy();q&&(q.minRange=q.userMinRange);d.isDirty=n.isDirtyBox=!0;d.isDirtyData=!!l;c=!1}"point"===f.legendType&&(this.processData(),this.generatePoints());b&&n.redraw(c)},
sortData:function(a){var d=this,b=d.options.dataSorting.sortKey||"y",c=function(a,d){return z(d)&&a.pointClass.prototype.optionsToObject.call({series:a},d)||{}};a.forEach(function(b,e){a[e]=c(d,b);a[e].index=e},this);a.concat().sort(function(a,d){a=q(b,a);d=q(b,d);return d<a?-1:d>a?1:0}).forEach(function(a,d){a.x=d},this);d.linkedSeries&&d.linkedSeries.forEach(function(d){var b=d.options,e=b.data;b.dataSorting&&b.dataSorting.enabled||!e||(e.forEach(function(b,h){e[h]=c(d,b);a[h]&&(e[h].x=a[h].x,e[h].index=
h)}),d.setData(e,!1))});return a},processData:function(a){var d=this.xData,b=this.yData,c=d.length;var e=0;var h=this.xAxis,g=this.options;var l=g.cropThreshold;var p=this.getExtremesFromAll||g.getExtremesFromAll,k=this.isCartesian;g=h&&h.val2lin;var u=h&&h.isLog,f=this.requireSorting;if(k&&!this.isDirty&&!h.isDirty&&!this.yAxis.isDirty&&!a)return!1;if(h){a=h.getExtremes();var n=a.min;var v=a.max}if(k&&this.sorted&&!p&&(!l||c>l||this.forceCrop))if(d[c-1]<n||d[0]>v)d=[],b=[];else if(this.yData&&(d[0]<
n||d[c-1]>v)){e=this.cropData(this.xData,this.yData,n,v);d=e.xData;b=e.yData;e=e.start;var w=!0}for(l=d.length||1;--l;)if(c=u?g(d[l])-g(d[l-1]):d[l]-d[l-1],0<c&&("undefined"===typeof q||c<q))var q=c;else 0>c&&f&&(A(15,!1,this.chart),f=!1);this.cropped=w;this.cropStart=e;this.processedXData=d;this.processedYData=b;this.closestPointRange=this.basePointRange=q},cropData:function(a,b,c,e,h){var d=a.length,g=0,l=d,p;h=v(h,this.cropShoulder);for(p=0;p<d;p++)if(a[p]>=c){g=Math.max(0,p-h);break}for(c=p;c<
d;c++)if(a[c]>e){l=c+h;break}return{xData:a.slice(g,l),yData:b.slice(g,l),start:g,end:l}},generatePoints:function(){var a=this.options,b=a.data,c=this.data,e,h=this.processedXData,g=this.processedYData,p=this.pointClass,u=h.length,f=this.cropStart||0,n=this.hasGroupedData;a=a.keys;var v=[],w;c||n||(c=[],c.length=b.length,c=this.data=c);a&&n&&(this.options.keys=!1);for(w=0;w<u;w++){var q=f+w;if(n){var H=(new p).init(this,[h[w]].concat(l(g[w])));H.dataGroup=this.groupMap[w];H.dataGroup.options&&(H.options=
H.dataGroup.options,t(H,H.dataGroup.options),delete H.dataLabels)}else(H=c[q])||"undefined"===typeof b[q]||(c[q]=H=(new p).init(this,b[q],h[w]));H&&(H.index=q,v[w]=H)}this.options.keys=a;if(c&&(u!==(e=c.length)||n))for(w=0;w<e;w++)w!==f||n||(w+=u),c[w]&&(c[w].destroyElements(),c[w].plotX=void 0);this.data=c;this.points=v;k(this,"afterGeneratePoints")},getXExtremes:function(a){return{min:C(a),max:F(a)}},getExtremes:function(a){var d=this.xAxis,b=this.yAxis,c=this.processedXData||this.xData,h=[],l=
0,p=0;var u=0;var f=this.requireSorting?this.cropShoulder:0,n=b?b.positiveValuesOnly:!1,v;a=a||this.stackedYData||this.processedYData||[];b=a.length;d&&(u=d.getExtremes(),p=u.min,u=u.max);for(v=0;v<b;v++){var w=c[v];var q=a[v];var H=(g(q)||e(q))&&(q.length||0<q||!n);w=this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!d||(c[v+f]||w)>=p&&(c[v-f]||w)<=u;if(H&&w)if(H=q.length)for(;H--;)g(q[H])&&(h[l++]=q[H]);else h[l++]=q}this.dataMin=C(h);this.dataMax=F(h);k(this,"afterGetExtremes")},
getFirstValidPoint:function(a){for(var d=null,b=a.length,c=0;null===d&&c<b;)d=a[c],c++;return d},translate:function(){this.processedXData||this.processData();this.generatePoints();var a=this.options,b=a.stacking,c=this.xAxis,h=c.categories,l=this.enabledDataSorting,p=this.yAxis,u=this.points,f=u.length,n=!!this.modifyValue,w,q=this.pointPlacementToXValue(),H=!!q,m=a.threshold,G=a.startFromThreshold?m:0,t,x=this.zoneAxis||"y",D=Number.MAX_VALUE;for(w=0;w<f;w++){var M=u[w],Q=M.x,A=M.y,r=M.low,C=b&&
p.stacks[(this.negStacks&&A<(G?0:m)?"-":"")+this.stackKey];p.positiveValuesOnly&&null!==A&&0>=A&&(M.isNull=!0);M.plotX=t=L(B(c.translate(Q,0,0,0,1,q,"flags"===this.type),-1E5,1E5));if(b&&this.visible&&C&&C[Q]){var F=this.getStackIndicator(F,Q,this.index);if(!M.isNull){var J=C[Q];var E=J.points[F.key]}}e(E)&&(r=E[0],A=E[1],r===G&&F.key===C[Q].base&&(r=v(g(m)&&m,p.min)),p.positiveValuesOnly&&0>=r&&(r=null),M.total=M.stackTotal=J.total,M.percentage=J.total&&M.y/J.total*100,M.stackY=A,this.irregularWidths||
J.setOffset(this.pointXOffset||0,this.barW||0));M.yBottom=z(r)?B(p.translate(r,0,1,0,1),-1E5,1E5):null;n&&(A=this.modifyValue(A,M));M.plotY="number"===typeof A&&Infinity!==A?B(p.translate(A,0,1,0,1),-1E5,1E5):void 0;M.isInside=this.isPointInside(M);M.clientX=H?L(c.translate(Q,0,0,0,1,q)):t;M.negative=M[x]<(a[x+"Threshold"]||m||0);M.category=h&&"undefined"!==typeof h[M.x]?h[M.x]:M.x;if(!M.isNull&&!1!==M.visible){"undefined"!==typeof y&&(D=Math.min(D,Math.abs(t-y)));var y=t}M.zone=this.zones.length&&
M.getZone();!M.graphic&&this.group&&l&&(M.isNew=!0)}this.closestPointRangePx=D;k(this,"afterTranslate")},getValidPoints:function(a,b,c){var d=this.chart;return(a||this.points||[]).filter(function(a){return b&&!d.isInsidePlot(a.plotX,a.plotY,d.inverted)?!1:!1!==a.visible&&(c||!a.isNull)})},getClipBox:function(a,b){var d=this.options,c=this.chart,e=c.inverted,h=this.xAxis,g=h&&this.yAxis;a&&!1===d.clip&&g?a=e?{y:-c.chartWidth+g.len+g.pos,height:c.chartWidth,width:c.chartHeight,x:-c.chartHeight+h.len+
h.pos}:{y:-g.pos,height:c.chartHeight,width:c.chartWidth,x:-h.pos}:(a=this.clipBox||c.clipBox,b&&(a.width=c.plotSizeX,a.x=0));return b?{width:a.width,x:a.x}:a},setClip:function(a){var d=this.chart,b=this.options,c=d.renderer,e=d.inverted,h=this.clipBox,g=this.getClipBox(a),l=this.sharedClipKey||["_sharedClip",a&&a.duration,a&&a.easing,g.height,b.xAxis,b.yAxis].join(),p=d[l],k=d[l+"m"];a&&(g.width=0,e&&(g.x=d.plotHeight+(!1!==b.clip?0:d.plotTop)));p?d.hasLoaded||p.attr(g):(a&&(d[l+"m"]=k=c.clipRect(e?
d.plotSizeX+99:-99,e?-d.plotLeft:-d.plotTop,99,e?d.chartWidth:d.chartHeight)),d[l]=p=c.clipRect(g),p.count={length:0});a&&!p.count[this.index]&&(p.count[this.index]=!0,p.count.length+=1);if(!1!==b.clip||a)this.group.clip(a||h?p:d.clipRect),this.markerGroup.clip(k),this.sharedClipKey=l;a||(p.count[this.index]&&(delete p.count[this.index],--p.count.length),0===p.count.length&&l&&d[l]&&(h||(d[l]=d[l].destroy()),d[l+"m"]&&(d[l+"m"]=d[l+"m"].destroy())))},animate:function(a){var d=this.chart,b=y(this.options.animation);
if(!d.hasRendered)if(a)this.setClip(b);else{var c=this.sharedClipKey;a=d[c];var e=this.getClipBox(b,!0);a&&a.animate(e,b);d[c+"m"]&&d[c+"m"].animate({width:e.width+99,x:e.x-(d.inverted?0:99)},b)}},afterAnimate:function(){this.setClip();k(this,"afterAnimate");this.finishedAnimating=!0},drawPoints:function(){var a=this.points,b=this.chart,c,e,h=this.options.marker,g=this[this.specialGroup]||this.markerGroup,l=this.xAxis,p=v(h.enabled,!l||l.isRadial?!0:null,this.closestPointRangePx>=h.enabledThreshold*
h.radius);if(!1!==h.enabled||this._hasPointMarkers)for(c=0;c<a.length;c++){var k=a[c];var u=(e=k.graphic)?"animate":"attr";var f=k.marker||{};var n=!!k.marker;if((p&&"undefined"===typeof f.enabled||f.enabled)&&!k.isNull&&!1!==k.visible){var w=v(f.symbol,this.symbol);var q=this.markerAttribs(k,k.selected&&"select");this.enabledDataSorting&&(k.startXPos=l.reversed?-q.width:l.width);var H=!1!==k.isInside;e?e[H?"show":"hide"](H).animate(q):H&&(0<q.width||k.hasImage)&&(k.graphic=e=b.renderer.symbol(w,
q.x,q.y,q.width,q.height,n?f:h).add(g),this.enabledDataSorting&&b.hasRendered&&(e.attr({x:k.startXPos}),u="animate"));e&&"animate"===u&&e[H?"show":"hide"](H).animate(q);if(e&&!b.styledMode)e[u](this.pointAttribs(k,k.selected&&"select"));e&&e.addClass(k.getClassName(),!0)}else e&&(k.graphic=e.destroy())}},markerAttribs:function(a,b){var d=this.options.marker,c=a.marker||{},e=c.symbol||d.symbol,h=v(c.radius,d.radius);b&&(d=d.states[b],b=c.states&&c.states[b],h=v(b&&b.radius,d&&d.radius,h+(d&&d.radiusPlus||
0)));a.hasImage=e&&0===e.indexOf("url");a.hasImage&&(h=0);a={x:Math.floor(a.plotX)-h,y:a.plotY-h};h&&(a.width=a.height=2*h);return a},pointAttribs:function(a,b){var d=this.options.marker,c=a&&a.options,e=c&&c.marker||{},h=this.color,g=c&&c.color,l=a&&a.color;c=v(e.lineWidth,d.lineWidth);var p=a&&a.zone&&a.zone.color;a=1;h=g||p||l||h;g=e.fillColor||d.fillColor||h;h=e.lineColor||d.lineColor||h;b=b||"normal";d=d.states[b];b=e.states&&e.states[b]||{};c=v(b.lineWidth,d.lineWidth,c+v(b.lineWidthPlus,d.lineWidthPlus,
0));g=b.fillColor||d.fillColor||g;h=b.lineColor||d.lineColor||h;a=v(b.opacity,d.opacity,a);return{stroke:h,"stroke-width":c,fill:g,opacity:a}},destroy:function(d){var b=this,c=b.chart,e=/AppleWebKit\/533/.test(G.navigator.userAgent),h,g,l=b.data||[],p,u;k(b,"destroy");this.removeEvents(d);(b.axisTypes||[]).forEach(function(a){(u=b[a])&&u.series&&(x(u.series,b),u.isDirty=u.forceRedraw=!0)});b.legendItem&&b.chart.legend.destroyItem(b);for(g=l.length;g--;)(p=l[g])&&p.destroy&&p.destroy();b.points=null;
r.clearTimeout(b.animationTimeout);a(b,function(a,d){a instanceof Q&&!a.survive&&(h=e&&"group"===d?"hide":"destroy",a[h]())});c.hoverSeries===b&&(c.hoverSeries=null);x(c.series,b);c.orderSeries();a(b,function(a,c){d&&"hcEvents"===c||delete b[c]})},getGraphPath:function(a,b,c){var d=this,e=d.options,h=e.step,g,l=[],p=[],k;a=a||d.points;(g=a.reversed)&&a.reverse();(h={right:1,center:2}[h]||h&&3)&&g&&(h=4-h);a=this.getValidPoints(a,!1,!(e.connectNulls&&!b&&!c));a.forEach(function(g,u){var f=g.plotX,
n=g.plotY,v=a[u-1];(g.leftCliff||v&&v.rightCliff)&&!c&&(k=!0);g.isNull&&!z(b)&&0<u?k=!e.connectNulls:g.isNull&&!b?k=!0:(0===u||k?u=["M",g.plotX,g.plotY]:d.getPointSpline?u=d.getPointSpline(a,g,u):h?(u=1===h?["L",v.plotX,n]:2===h?["L",(v.plotX+f)/2,v.plotY,"L",(v.plotX+f)/2,n]:["L",f,v.plotY],u.push("L",f,n)):u=["L",f,n],p.push(g.x),h&&(p.push(g.x),2===h&&p.push(g.x)),l.push.apply(l,u),k=!1)});l.xMap=p;return d.graphPath=l},drawGraph:function(){var a=this,b=this.options,c=(this.gappedPath||this.getGraphPath).call(this),
e=this.chart.styledMode,h=[["graph","highcharts-graph"]];e||h[0].push(b.lineColor||this.color||"#cccccc",b.dashStyle);h=a.getZonesGraphs(h);h.forEach(function(d,h){var g=d[0],l=a[g],p=l?"animate":"attr";l?(l.endX=a.preventGraphAnimation?null:c.xMap,l.animate({d:c})):c.length&&(a[g]=l=a.chart.renderer.path(c).addClass(d[1]).attr({zIndex:1}).add(a.group));l&&!e&&(g={stroke:d[2],"stroke-width":b.lineWidth,fill:a.fillGraph&&a.color||"none"},d[3]?g.dashstyle=d[3]:"square"!==b.linecap&&(g["stroke-linecap"]=
g["stroke-linejoin"]="round"),l[p](g).shadow(2>h&&b.shadow));l&&(l.startX=c.xMap,l.isArea=c.isArea)})},getZonesGraphs:function(a){this.zones.forEach(function(d,b){b=["zone-graph-"+b,"highcharts-graph highcharts-zone-graph-"+b+" "+(d.className||"")];this.chart.styledMode||b.push(d.color||this.color,d.dashStyle||this.options.dashStyle);a.push(b)},this);return a},applyZones:function(){var a=this,b=this.chart,c=b.renderer,e=this.zones,h,g,l=this.clips||[],p,k=this.graph,u=this.area,f=Math.max(b.chartWidth,
b.chartHeight),n=this[(this.zoneAxis||"y")+"Axis"],w=b.inverted,q,H,m,t=!1;if(e.length&&(k||u)&&n&&"undefined"!==typeof n.min){var G=n.reversed;var x=n.horiz;k&&!this.showLine&&k.hide();u&&u.hide();var M=n.getExtremes();e.forEach(function(d,e){h=G?x?b.plotWidth:0:x?0:n.toPixels(M.min)||0;h=B(v(g,h),0,f);g=B(Math.round(n.toPixels(v(d.value,M.max),!0)||0),0,f);t&&(h=g=n.toPixels(M.max));q=Math.abs(h-g);H=Math.min(h,g);m=Math.max(h,g);n.isXAxis?(p={x:w?m:H,y:0,width:q,height:f},x||(p.x=b.plotHeight-
p.x)):(p={x:0,y:w?m:H,width:f,height:q},x&&(p.y=b.plotWidth-p.y));w&&c.isVML&&(p=n.isXAxis?{x:0,y:G?H:m,height:p.width,width:b.chartWidth}:{x:p.y-b.plotLeft-b.spacingBox.x,y:0,width:p.height,height:b.chartHeight});l[e]?l[e].animate(p):l[e]=c.clipRect(p);k&&a["zone-graph-"+e].clip(l[e]);u&&a["zone-area-"+e].clip(l[e]);t=d.value>M.max;a.resetZones&&0===g&&(g=void 0)});this.clips=l}else a.visible&&(k&&k.show(!0),u&&u.show(!0))},invertGroups:function(a){function d(){["group","markerGroup"].forEach(function(d){b[d]&&
(c.renderer.isVML&&b[d].attr({width:b.yAxis.len,height:b.xAxis.len}),b[d].width=b.yAxis.len,b[d].height=b.xAxis.len,b[d].invert(b.isRadialSeries?!1:a))})}var b=this,c=b.chart;b.xAxis&&(b.eventsToUnbind.push(E(c,"resize",d)),d(),b.invertGroups=d)},plotGroup:function(a,b,c,e,h){var d=this[a],g=!d;g&&(this[a]=d=this.chart.renderer.g().attr({zIndex:e||.1}).add(h));d.addClass("highcharts-"+b+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(z(this.colorIndex)?"highcharts-color-"+this.colorIndex+
" ":"")+(this.options.className||"")+(d.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0);d.attr({visibility:c})[g?"attr":"animate"](this.getPlotBox());return d},getPlotBox:function(){var a=this.chart,b=this.xAxis,c=this.yAxis;a.inverted&&(b=c,c=this.xAxis);return{translateX:b?b.left:a.plotLeft,translateY:c?c.top:a.plotTop,scaleX:1,scaleY:1}},removeEvents:function(a){a?this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind.length=0):D(this)},render:function(){var a=
this,b=a.chart,c=a.options,e=!a.finishedAnimating&&b.renderer.isSVG&&y(c.animation).duration,g=a.visible?"inherit":"hidden",l=c.zIndex,p=a.hasRendered,u=b.seriesGroup,f=b.inverted;k(this,"render");var n=a.plotGroup("group","series",g,l,u);a.markerGroup=a.plotGroup("markerGroup","markers",g,l,u);e&&a.animate&&a.animate(!0);n.inverted=a.isCartesian||a.invertable?f:!1;a.drawGraph&&(a.drawGraph(),a.applyZones());a.visible&&a.drawPoints();a.drawDataLabels&&a.drawDataLabels();a.redrawPoints&&a.redrawPoints();
a.drawTracker&&!1!==a.options.enableMouseTracking&&a.drawTracker();a.invertGroups(f);!1===c.clip||a.sharedClipKey||p||n.clip(b.clipRect);e&&a.animate&&a.animate();p||(a.animationTimeout=h(function(){a.afterAnimate()},e||0));a.isDirty=!1;a.hasRendered=!0;k(a,"afterRender")},redraw:function(){var a=this.chart,b=this.isDirty||this.isDirtyData,c=this.group,e=this.xAxis,h=this.yAxis;c&&(a.inverted&&c.attr({width:a.plotWidth,height:a.plotHeight}),c.animate({translateX:v(e&&e.left,a.plotLeft),translateY:v(h&&
h.top,a.plotTop)}));this.translate();this.render();b&&delete this.kdTree},kdAxisArray:["clientX","plotY"],searchPoint:function(a,b){var d=this.xAxis,c=this.yAxis,e=this.chart.inverted;return this.searchKDTree({clientX:e?d.len-a.chartY+d.pos:a.chartX-d.pos,plotY:e?c.len-a.chartX+c.pos:a.chartY-c.pos},b,a)},buildKDTree:function(a){function d(a,c,e){var h;if(h=a&&a.length){var g=b.kdAxisArray[c%e];a.sort(function(a,d){return a[g]-d[g]});h=Math.floor(h/2);return{point:a[h],left:d(a.slice(0,h),c+1,e),
right:d(a.slice(h+1),c+1,e)}}}this.buildingKdTree=!0;var b=this,c=-1<b.options.findNearestPointBy.indexOf("y")?2:1;delete b.kdTree;h(function(){b.kdTree=d(b.getValidPoints(null,!b.directTouch),c,c);b.buildingKdTree=!1},b.options.kdNow||a&&"touchstart"===a.type?0:1)},searchKDTree:function(a,b,c){function d(a,b,c,p){var k=b.point,u=e.kdAxisArray[c%p],f=k;var n=z(a[h])&&z(k[h])?Math.pow(a[h]-k[h],2):null;var v=z(a[g])&&z(k[g])?Math.pow(a[g]-k[g],2):null;v=(n||0)+(v||0);k.dist=z(v)?Math.sqrt(v):Number.MAX_VALUE;
k.distX=z(n)?Math.sqrt(n):Number.MAX_VALUE;u=a[u]-k[u];v=0>u?"left":"right";n=0>u?"right":"left";b[v]&&(v=d(a,b[v],c+1,p),f=v[l]<f[l]?v:k);b[n]&&Math.sqrt(u*u)<f[l]&&(a=d(a,b[n],c+1,p),f=a[l]<f[l]?a:f);return f}var e=this,h=this.kdAxisArray[0],g=this.kdAxisArray[1],l=b?"distX":"dist";b=-1<e.options.findNearestPointBy.indexOf("y")?2:1;this.kdTree||this.buildingKdTree||this.buildKDTree(c);if(this.kdTree)return d(a,this.kdTree,b,b)},pointPlacementToXValue:function(){var a=this.options,b=a.pointRange,
c=this.xAxis;a=a.pointPlacement;"between"===a&&(a=c.reversed?-.5:.5);return g(a)?a*v(b,c.pointRange):0},isPointInside:function(a){return"undefined"!==typeof a.plotY&&"undefined"!==typeof a.plotX&&0<=a.plotY&&a.plotY<=this.yAxis.len&&0<=a.plotX&&a.plotX<=this.xAxis.len}});""});P(y,"parts/Stacking.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var J=m.correctFloat,r=m.defined,E=m.destroyObjectProperties,y=m.format,F=m.objectEach,C=m.pick;m=f.Axis;var B=f.Chart,L=f.Series;f.StackItem=
function(f,m,A,t,n){var k=f.chart.inverted;this.axis=f;this.isNegative=A;this.options=m=m||{};this.x=t;this.total=null;this.points={};this.stack=n;this.rightCliff=this.leftCliff=0;this.alignOptions={align:m.align||(k?A?"left":"right":"center"),verticalAlign:m.verticalAlign||(k?"middle":A?"bottom":"top"),y:m.y,x:m.x};this.textAlign=m.textAlign||(k?A?"right":"left":"center")};f.StackItem.prototype={destroy:function(){E(this,this.axis)},render:function(f){var m=this.axis.chart,z=this.options,t=z.format;
t=t?y(t,this,m):z.formatter.call(this);this.label?this.label.attr({text:t,visibility:"hidden"}):(this.label=m.renderer.label(t,null,null,z.shape,null,null,z.useHTML,!1,"stack-labels"),t={text:t,rotation:z.rotation,padding:C(z.padding,5),visibility:"hidden"},this.label.attr(t),m.styledMode||this.label.css(z.style),this.label.added||this.label.add(f));this.label.labelrank=m.plotHeight},setOffset:function(f,m,A,t,n){var k=this.axis,q=k.chart;t=k.translate(k.usePercentage?100:t?t:this.total,0,0,0,1);
A=k.translate(A?A:0);A=r(t)&&Math.abs(t-A);f=C(n,q.xAxis[0].translate(this.x))+f;k=r(t)&&this.getStackBox(q,this,f,t,m,A,k);m=this.label;A=this.isNegative;f="justify"===C(this.options.overflow,"justify");var e=this.textAlign;m&&k&&(n=m.getBBox(),t=m.padding,e="left"===e?q.inverted?-t:t:"right"===e?n.width:q.inverted&&"center"===e?n.width/2:q.inverted?A?n.width+t:-t:n.width/2,A=q.inverted?n.height/2:A?-t:n.height,this.alignOptions.x=C(this.options.x,0),this.alignOptions.y=C(this.options.y,0),k.x-=
e,k.y-=A,m.align(this.alignOptions,null,k),q.isInsidePlot(m.alignAttr.x+e-this.alignOptions.x,m.alignAttr.y+A-this.alignOptions.y)?m.show():(m.alignAttr.y=-9999,f=!1),f&&L.prototype.justifyDataLabel.call(this.axis,m,this.alignOptions,m.alignAttr,n,k),m.attr({x:m.alignAttr.x,y:m.alignAttr.y}),C(!f&&this.options.crop,!0)&&((q=q.isInsidePlot(m.x-t+m.width,m.y)&&q.isInsidePlot(m.x+t,m.y))||m.hide()))},getStackBox:function(f,m,A,t,n,k,q){var e=m.axis.reversed,c=f.inverted;f=q.height+q.pos-(c?f.plotLeft:
f.plotTop);m=m.isNegative&&!e||!m.isNegative&&e;return{x:c?m?t:t-k:A,y:c?f-A-n:m?f-t-k:f-t,width:c?k:n,height:c?n:k}}};B.prototype.getStacks=function(){var f=this,m=f.inverted;f.yAxis.forEach(function(f){f.stacks&&f.hasVisibleSeries&&(f.oldStacks=f.stacks)});f.series.forEach(function(x){var t=x.xAxis&&x.xAxis.options||{};!x.options.stacking||!0!==x.visible&&!1!==f.options.chart.ignoreHiddenSeries||(x.stackKey=[x.type,C(x.options.stack,""),m?t.top:t.left,m?t.height:t.width].join())})};m.prototype.buildStacks=
function(){var m=this.series,x=C(this.options.reversedStacks,!0),A=m.length,t;if(!this.isXAxis){this.usePercentage=!1;for(t=A;t--;){var n=m[x?t:A-t-1];n.setStackedPoints()}for(t=0;t<A;t++)m[t].modifyStacks();f.fireEvent(this,"afterBuildStacks")}};m.prototype.renderStackTotals=function(){var f=this.chart,m=f.renderer,A=this.stacks,t=this.stackTotalGroup;t||(this.stackTotalGroup=t=m.g("stack-labels").attr({visibility:"visible",zIndex:6}).add());t.translate(f.plotLeft,f.plotTop);F(A,function(f){F(f,
function(k){k.render(t)})})};m.prototype.resetStacks=function(){var f=this,m=f.stacks;f.isXAxis||F(m,function(m){F(m,function(t,n){t.touched<f.stacksTouched?(t.destroy(),delete m[n]):(t.total=null,t.cumulative=null)})})};m.prototype.cleanStacks=function(){if(!this.isXAxis){if(this.oldStacks)var f=this.stacks=this.oldStacks;F(f,function(f){F(f,function(f){f.cumulative=f.total})})}};L.prototype.setStackedPoints=function(){if(this.options.stacking&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var m=
this.processedXData,x=this.processedYData,A=[],t=x.length,n=this.options,k=n.threshold,q=C(n.startFromThreshold&&k,0),e=n.stack;n=n.stacking;var c=this.stackKey,g="-"+c,p=this.negStacks,b=this.yAxis,a=b.stacks,v=b.oldStacks,D,w;b.stacksTouched+=1;for(w=0;w<t;w++){var l=m[w];var h=x[w];var u=this.getStackIndicator(u,l,this.index);var H=u.key;var M=(D=p&&h<(q?0:k))?g:c;a[M]||(a[M]={});a[M][l]||(v[M]&&v[M][l]?(a[M][l]=v[M][l],a[M][l].total=null):a[M][l]=new f.StackItem(b,b.options.stackLabels,D,l,e));
M=a[M][l];null!==h?(M.points[H]=M.points[this.index]=[C(M.cumulative,q)],r(M.cumulative)||(M.base=H),M.touched=b.stacksTouched,0<u.index&&!1===this.singleStacks&&(M.points[H][0]=M.points[this.index+","+l+",0"][0])):M.points[H]=M.points[this.index]=null;"percent"===n?(D=D?c:g,p&&a[D]&&a[D][l]?(D=a[D][l],M.total=D.total=Math.max(D.total,M.total)+Math.abs(h)||0):M.total=J(M.total+(Math.abs(h)||0))):M.total=J(M.total+(h||0));M.cumulative=C(M.cumulative,q)+(h||0);null!==h&&(M.points[H].push(M.cumulative),
A[w]=M.cumulative)}"percent"===n&&(b.usePercentage=!0);this.stackedYData=A;b.oldStacks={}}};L.prototype.modifyStacks=function(){var f=this,m=f.stackKey,A=f.yAxis.stacks,t=f.processedXData,n,k=f.options.stacking;f[k+"Stacker"]&&[m,"-"+m].forEach(function(q){for(var e=t.length,c,g;e--;)if(c=t[e],n=f.getStackIndicator(n,c,f.index,q),g=(c=A[q]&&A[q][c])&&c.points[n.key])f[k+"Stacker"](g,c,e)})};L.prototype.percentStacker=function(f,m,A){m=m.total?100/m.total:0;f[0]=J(f[0]*m);f[1]=J(f[1]*m);this.stackedYData[A]=
f[1]};L.prototype.getStackIndicator=function(f,m,A,t){!r(f)||f.x!==m||t&&f.key!==t?f={x:m,index:0,key:t}:f.index++;f.key=[A,m,f.index].join();return f}});P(y,"parts/Dynamics.js",[y["parts/Globals.js"],y["parts/Point.js"],y["parts/Time.js"],y["parts/Utilities.js"]],function(f,m,J,r){var E=r.addEvent,y=r.animate,F=r.createElement,C=r.css,B=r.defined,L=r.erase,z=r.error,x=r.extend,A=r.fireEvent,t=r.isArray,n=r.isNumber,k=r.isObject,q=r.isString,e=r.merge,c=r.objectEach,g=r.pick,p=r.relativeLength,b=
r.setAnimation,a=r.splat,v=f.Axis;r=f.Chart;var D=f.Series,w=f.seriesTypes;f.cleanRecursively=function(a,b){var e={};c(a,function(c,h){if(k(a[h],!0)&&!a.nodeType&&b[h])c=f.cleanRecursively(a[h],b[h]),Object.keys(c).length&&(e[h]=c);else if(k(a[h])||a[h]!==b[h])e[h]=a[h]});return e};x(r.prototype,{addSeries:function(a,b,c){var e,h=this;a&&(b=g(b,!0),A(h,"addSeries",{options:a},function(){e=h.initSeries(a);h.isDirtyLegend=!0;h.linkSeries();e.enabledDataSorting&&e.setData(a.data,!1);A(h,"afterAddSeries",
{series:e});b&&h.redraw(c)}));return e},addAxis:function(a,b,c,e){return this.createAxis(b?"xAxis":"yAxis",{axis:a,redraw:c,animation:e})},addColorAxis:function(a,b,c){return this.createAxis("colorAxis",{axis:a,redraw:b,animation:c})},createAxis:function(b,c){var h=this.options,l="colorAxis"===b,p=c.redraw,k=c.animation;c=e(c.axis,{index:this[b].length,isX:"xAxis"===b});var n=l?new f.ColorAxis(this,c):new v(this,c);h[b]=a(h[b]||{});h[b].push(c);l&&(this.isDirtyLegend=!0,this.axes.forEach(function(a){a.series=
[]}),this.series.forEach(function(a){a.bindAxes();a.isDirtyData=!0}));g(p,!0)&&this.redraw(k);return n},showLoading:function(a){var b=this,c=b.options,e=b.loadingDiv,l=c.loading,p=function(){e&&C(e,{left:b.plotLeft+"px",top:b.plotTop+"px",width:b.plotWidth+"px",height:b.plotHeight+"px"})};e||(b.loadingDiv=e=F("div",{className:"highcharts-loading highcharts-loading-hidden"},null,b.container),b.loadingSpan=F("span",{className:"highcharts-loading-inner"},null,e),E(b,"redraw",p));e.className="highcharts-loading";
b.loadingSpan.innerHTML=g(a,c.lang.loading,"");b.styledMode||(C(e,x(l.style,{zIndex:10})),C(b.loadingSpan,l.labelStyle),b.loadingShown||(C(e,{opacity:0,display:""}),y(e,{opacity:l.style.opacity||.5},{duration:l.showDuration||0})));b.loadingShown=!0;p()},hideLoading:function(){var a=this.options,b=this.loadingDiv;b&&(b.className="highcharts-loading highcharts-loading-hidden",this.styledMode||y(b,{opacity:0},{duration:a.loading.hideDuration||100,complete:function(){C(b,{display:"none"})}}));this.loadingShown=
!1},propsRequireDirtyBox:"backgroundColor borderColor borderWidth borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow".split(" "),propsRequireReflow:"margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft".split(" "),propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip".split(" "),collectionsWithUpdate:["xAxis","yAxis","zAxis",
"series"],update:function(b,h,k,v){var l=this,u={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},w,d,m,H=b.isResponsiveOptions,t=[];A(l,"update",{options:b});H||l.setResponsive(!1,!0);b=f.cleanRecursively(b,l.options);e(!0,l.userOptions,b);if(w=b.chart){e(!0,l.options.chart,w);"className"in w&&l.setClassName(w.className);"reflow"in w&&l.setReflow(w.reflow);if("inverted"in w||"polar"in w||"type"in w){l.propFromSeries();var D=!0}"alignTicks"in w&&(D=!0);c(w,function(a,
b){-1!==l.propsRequireUpdateSeries.indexOf("chart."+b)&&(d=!0);-1!==l.propsRequireDirtyBox.indexOf(b)&&(l.isDirtyBox=!0);H||-1===l.propsRequireReflow.indexOf(b)||(m=!0)});!l.styledMode&&"style"in w&&l.renderer.setStyle(w.style)}!l.styledMode&&b.colors&&(this.options.colors=b.colors);b.plotOptions&&e(!0,this.options.plotOptions,b.plotOptions);b.time&&this.time===f.time&&(this.time=new J(b.time));c(b,function(a,b){if(l[b]&&"function"===typeof l[b].update)l[b].update(a,!1);else if("function"===typeof l[u[b]])l[u[b]](a);
"chart"!==b&&-1!==l.propsRequireUpdateSeries.indexOf(b)&&(d=!0)});this.collectionsWithUpdate.forEach(function(d){if(b[d]){if("series"===d){var c=[];l[d].forEach(function(a,d){a.options.isInternal||c.push(g(a.options.index,d))})}a(b[d]).forEach(function(a,b){(b=B(a.id)&&l.get(a.id)||l[d][c?c[b]:b])&&b.coll===d&&(b.update(a,!1),k&&(b.touched=!0));!b&&k&&l.collectionsWithInit[d]&&(l.collectionsWithInit[d][0].apply(l,[a].concat(l.collectionsWithInit[d][1]||[]).concat([!1])).touched=!0)});k&&l[d].forEach(function(a){a.touched||
a.options.isInternal?delete a.touched:t.push(a)})}});t.forEach(function(a){a.remove&&a.remove(!1)});D&&l.axes.forEach(function(a){a.update({},!1)});d&&l.getSeriesOrderByLinks().forEach(function(a){a.chart&&a.update({},!1)},this);b.loading&&e(!0,l.options.loading,b.loading);D=w&&w.width;w=w&&w.height;q(w)&&(w=p(w,D||l.chartWidth));m||n(D)&&D!==l.chartWidth||n(w)&&w!==l.chartHeight?l.setSize(D,w,v):g(h,!0)&&l.redraw(v);A(l,"afterUpdate",{options:b,redraw:h,animation:v})},setSubtitle:function(a,b){this.applyDescription("subtitle",
a);this.layOutTitles(b)},setCaption:function(a,b){this.applyDescription("caption",a);this.layOutTitles(b)}});r.prototype.collectionsWithInit={xAxis:[r.prototype.addAxis,[!0]],yAxis:[r.prototype.addAxis,[!1]],series:[r.prototype.addSeries]};x(m.prototype,{update:function(a,b,c,e){function h(){l.applyOptions(a);var e=d&&l.hasDummyGraphic;e=null===l.y?!e:e;d&&e&&(l.graphic=d.destroy(),delete l.hasDummyGraphic);k(a,!0)&&(d&&d.element&&a&&a.marker&&"undefined"!==typeof a.marker.symbol&&(l.graphic=d.destroy()),
a&&a.dataLabels&&l.dataLabel&&(l.dataLabel=l.dataLabel.destroy()),l.connector&&(l.connector=l.connector.destroy()));u=l.index;p.updateParallelArrays(l,u);n.data[u]=k(n.data[u],!0)||k(a,!0)?l.options:g(a,n.data[u]);p.isDirty=p.isDirtyData=!0;!p.fixedBox&&p.hasCartesianSeries&&(f.isDirtyBox=!0);"point"===n.legendType&&(f.isDirtyLegend=!0);b&&f.redraw(c)}var l=this,p=l.series,d=l.graphic,u,f=p.chart,n=p.options;b=g(b,!0);!1===e?h():l.firePointEvent("update",{options:a},h)},remove:function(a,b){this.series.removePoint(this.series.data.indexOf(this),
a,b)}});x(D.prototype,{addPoint:function(a,b,c,e,p){var h=this.options,l=this.data,d=this.chart,k=this.xAxis;k=k&&k.hasNames&&k.names;var u=h.data,f=this.xData,n;b=g(b,!0);var w={series:this};this.pointClass.prototype.applyOptions.apply(w,[a]);var v=w.x;var q=f.length;if(this.requireSorting&&v<f[q-1])for(n=!0;q&&f[q-1]>v;)q--;this.updateParallelArrays(w,"splice",q,0,0);this.updateParallelArrays(w,q);k&&w.name&&(k[v]=w.name);u.splice(q,0,a);n&&(this.data.splice(q,0,null),this.processData());"point"===
h.legendType&&this.generatePoints();c&&(l[0]&&l[0].remove?l[0].remove(!1):(l.shift(),this.updateParallelArrays(w,"shift"),u.shift()));!1!==p&&A(this,"addPoint",{point:w});this.isDirtyData=this.isDirty=!0;b&&d.redraw(e)},removePoint:function(a,c,e){var h=this,l=h.data,p=l[a],k=h.points,d=h.chart,u=function(){k&&k.length===l.length&&k.splice(a,1);l.splice(a,1);h.options.data.splice(a,1);h.updateParallelArrays(p||{series:h},"splice",a,1);p&&p.destroy();h.isDirty=!0;h.isDirtyData=!0;c&&d.redraw()};b(e,
d);c=g(c,!0);p?p.firePointEvent("remove",null,u):u()},remove:function(a,b,c,e){function h(){l.destroy(e);l.remove=null;p.isDirtyLegend=p.isDirtyBox=!0;p.linkSeries();g(a,!0)&&p.redraw(b)}var l=this,p=l.chart;!1!==c?A(l,"remove",null,h):h()},update:function(a,b){a=f.cleanRecursively(a,this.userOptions);A(this,"update",{options:a});var c=this,h=c.chart,l=c.userOptions,p=c.initialType||c.type,k=a.type||l.type||h.options.chart.type,d=!(this.hasDerivedData||a.dataGrouping||k&&k!==this.type||"undefined"!==
typeof a.pointStart||a.pointInterval||a.pointIntervalUnit||a.keys),n=w[p].prototype,v,q=["group","markerGroup","dataLabelsGroup","transformGroup"],m=["eventOptions","navigatorSeries","baseSeries"],t=c.finishedAnimating&&{animation:!1},D={};d&&(m.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","_hasPointMarkers","_hasPointLabels","mapMap","mapData","minY","maxY","minX","maxX"),!1!==a.visible&&m.push("area","graph"),c.parallelArrays.forEach(function(a){m.push(a+"Data")}),
a.data&&(a.dataSorting&&x(c.options.dataSorting,a.dataSorting),this.setData(a.data,!1)));a=e(l,t,{index:"undefined"===typeof l.index?c.index:l.index,pointStart:g(l.pointStart,c.xData[0])},!d&&{data:c.options.data},a);d&&a.data&&(a.data=c.options.data);m=q.concat(m);m.forEach(function(a){m[a]=c[a];delete c[a]});c.remove(!1,null,!1,!0);for(v in n)c[v]=void 0;w[k||p]?x(c,w[k||p].prototype):z(17,!0,h,{missingModuleFor:k||p});m.forEach(function(a){c[a]=m[a]});c.init(h,a);if(d&&this.points){var r=c.options;
!1===r.visible?(D.graphic=1,D.dataLabel=1):c._hasPointLabels||(k=r.marker,n=r.dataLabels,k&&(!1===k.enabled||"symbol"in k)&&(D.graphic=1),n&&!1===n.enabled&&(D.dataLabel=1));this.points.forEach(function(a){a&&a.series&&(a.resolveColor(),Object.keys(D).length&&a.destroyElements(D),!1===r.showInLegend&&a.legendItem&&h.legend.destroyItem(a))},this)}a.zIndex!==l.zIndex&&q.forEach(function(d){c[d]&&c[d].attr({zIndex:a.zIndex})});c.initialType=p;h.linkSeries();A(this,"afterUpdate");g(b,!0)&&h.redraw(d?
void 0:!1)},setName:function(a){this.name=this.options.name=this.userOptions.name=a;this.chart.isDirtyLegend=!0}});x(v.prototype,{update:function(a,b){var h=this.chart,l=a&&a.events||{};a=e(this.userOptions,a);h.options[this.coll].indexOf&&(h.options[this.coll][h.options[this.coll].indexOf(this.userOptions)]=a);c(h.options[this.coll].events,function(a,b){"undefined"===typeof l[b]&&(l[b]=void 0)});this.destroy(!0);this.init(h,x(a,{events:l}));h.isDirtyBox=!0;g(b,!0)&&h.redraw()},remove:function(a){for(var b=
this.chart,c=this.coll,e=this.series,l=e.length;l--;)e[l]&&e[l].remove(!1);L(b.axes,this);L(b[c],this);t(b.options[c])?b.options[c].splice(this.options.index,1):delete b.options[c];b[c].forEach(function(a,b){a.options.index=a.userOptions.index=b});this.destroy();b.isDirtyBox=!0;g(a,!0)&&b.redraw()},setTitle:function(a,b){this.update({title:a},b)},setCategories:function(a,b){this.update({categories:a},b)}})});P(y,"parts/AreaSeries.js",[y["parts/Globals.js"],y["parts/Color.js"],y["mixins/legend-symbol.js"],
y["parts/Utilities.js"]],function(f,m,J,r){var E=m.parse,y=r.objectEach,F=r.pick;m=r.seriesType;var C=f.Series;m("area","line",{softThreshold:!1,threshold:0},{singleStacks:!1,getStackPoints:function(f){var m=[],z=[],x=this.xAxis,A=this.yAxis,t=A.stacks[this.stackKey],n={},k=this.index,q=A.series,e=q.length,c=F(A.options.reversedStacks,!0)?1:-1,g;f=f||this.points;if(this.options.stacking){for(g=0;g<f.length;g++)f[g].leftNull=f[g].rightNull=void 0,n[f[g].x]=f[g];y(t,function(b,a){null!==b.total&&z.push(a)});
z.sort(function(b,a){return b-a});var p=q.map(function(b){return b.visible});z.forEach(function(b,a){var f=0,q,w;if(n[b]&&!n[b].isNull)m.push(n[b]),[-1,1].forEach(function(l){var h=1===l?"rightNull":"leftNull",f=0,v=t[z[a+l]];if(v)for(g=k;0<=g&&g<e;)q=v.points[g],q||(g===k?n[b][h]=!0:p[g]&&(w=t[b].points[g])&&(f-=w[1]-w[0])),g+=c;n[b][1===l?"rightCliff":"leftCliff"]=f});else{for(g=k;0<=g&&g<e;){if(q=t[b].points[g]){f=q[1];break}g+=c}f=A.translate(f,0,1,0,1);m.push({isNull:!0,plotX:x.translate(b,0,
0,0,1),x:b,plotY:f,yBottom:f})}})}return m},getGraphPath:function(f){var m=C.prototype.getGraphPath,z=this.options,x=z.stacking,A=this.yAxis,t,n=[],k=[],q=this.index,e=A.stacks[this.stackKey],c=z.threshold,g=Math.round(A.getThreshold(z.threshold));z=F(z.connectNulls,"percent"===x);var p=function(b,p,l){var h=f[b];b=x&&e[h.x].points[q];var u=h[l+"Null"]||0;l=h[l+"Cliff"]||0;h=!0;if(l||u){var w=(u?b[0]:b[1])+l;var v=b[0]+l;h=!!u}else!x&&f[p]&&f[p].isNull&&(w=v=c);"undefined"!==typeof w&&(k.push({plotX:a,
plotY:null===w?g:A.getThreshold(w),isNull:h,isCliff:!0}),n.push({plotX:a,plotY:null===v?g:A.getThreshold(v),doCurve:!1}))};f=f||this.points;x&&(f=this.getStackPoints(f));for(t=0;t<f.length;t++){x||(f[t].leftCliff=f[t].rightCliff=f[t].leftNull=f[t].rightNull=void 0);var b=f[t].isNull;var a=F(f[t].rectPlotX,f[t].plotX);var v=F(f[t].yBottom,g);if(!b||z)z||p(t,t-1,"left"),b&&!x&&z||(k.push(f[t]),n.push({x:t,plotX:a,plotY:v})),z||p(t,t+1,"right")}t=m.call(this,k,!0,!0);n.reversed=!0;b=m.call(this,n,!0,
!0);b.length&&(b[0]="L");b=t.concat(b);m=m.call(this,k,!1,z);b.xMap=t.xMap;this.areaPath=b;return m},drawGraph:function(){this.areaPath=[];C.prototype.drawGraph.apply(this);var f=this,m=this.areaPath,z=this.options,x=[["area","highcharts-area",this.color,z.fillColor]];this.zones.forEach(function(m,t){x.push(["zone-area-"+t,"highcharts-area highcharts-zone-area-"+t+" "+m.className,m.color||f.color,m.fillColor||z.fillColor])});x.forEach(function(x){var t=x[0],n=f[t],k=n?"animate":"attr",q={};n?(n.endX=
f.preventGraphAnimation?null:m.xMap,n.animate({d:m})):(q.zIndex=0,n=f[t]=f.chart.renderer.path(m).addClass(x[1]).add(f.group),n.isArea=!0);f.chart.styledMode||(q.fill=F(x[3],E(x[2]).setOpacity(F(z.fillOpacity,.75)).get()));n[k](q);n.startX=m.xMap;n.shiftUnit=z.step?2:1})},drawLegendSymbol:J.drawRectangle});""});P(y,"parts/SplineSeries.js",[y["parts/Utilities.js"]],function(f){var m=f.pick;f=f.seriesType;f("spline","line",{},{getPointSpline:function(f,r,E){var y=r.plotX,F=r.plotY,C=f[E-1];E=f[E+1];
if(C&&!C.isNull&&!1!==C.doCurve&&!r.isCliff&&E&&!E.isNull&&!1!==E.doCurve&&!r.isCliff){f=C.plotY;var B=E.plotX;E=E.plotY;var J=0;var z=(1.5*y+C.plotX)/2.5;var x=(1.5*F+f)/2.5;B=(1.5*y+B)/2.5;var A=(1.5*F+E)/2.5;B!==z&&(J=(A-x)*(B-y)/(B-z)+F-A);x+=J;A+=J;x>f&&x>F?(x=Math.max(f,F),A=2*F-x):x<f&&x<F&&(x=Math.min(f,F),A=2*F-x);A>E&&A>F?(A=Math.max(E,F),x=2*F-A):A<E&&A<F&&(A=Math.min(E,F),x=2*F-A);r.rightContX=B;r.rightContY=A}r=["C",m(C.rightContX,C.plotX),m(C.rightContY,C.plotY),m(z,y),m(x,F),y,F];C.rightContX=
C.rightContY=null;return r}});""});P(y,"parts/AreaSplineSeries.js",[y["parts/Globals.js"],y["mixins/legend-symbol.js"],y["parts/Utilities.js"]],function(f,m,y){y=y.seriesType;var r=f.seriesTypes.area.prototype;y("areaspline","spline",f.defaultPlotOptions.area,{getStackPoints:r.getStackPoints,getGraphPath:r.getGraphPath,drawGraph:r.drawGraph,drawLegendSymbol:m.drawRectangle});""});P(y,"parts/ColumnSeries.js",[y["parts/Globals.js"],y["parts/Color.js"],y["mixins/legend-symbol.js"],y["parts/Utilities.js"]],
function(f,m,y,r){"";var E=m.parse,J=r.animObject,F=r.clamp,C=r.defined,B=r.extend,L=r.isNumber,z=r.merge,x=r.pick;m=r.seriesType;var A=f.Series;m("column","line",{borderRadius:0,crisp:!0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},select:{color:"#cccccc",borderColor:"#000000"}},dataLabels:{align:null,verticalAlign:null,y:null},softThreshold:!1,startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,
borderColor:"#ffffff"},{cropShoulder:0,directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){A.prototype.init.apply(this,arguments);var f=this,n=f.chart;n.hasRendered&&n.series.forEach(function(k){k.type===f.type&&(k.isDirty=!0)})},getColumnMetrics:function(){var f=this,n=f.options,k=f.xAxis,q=f.yAxis,e=k.options.reversedStacks;e=k.reversed&&!e||!k.reversed&&e;var c,g={},p=0;!1===n.grouping?p=1:f.chart.series.forEach(function(a){var b=a.yAxis,e=a.options;if(a.type===
f.type&&(a.visible||!f.chart.options.chart.ignoreHiddenSeries)&&q.len===b.len&&q.pos===b.pos){if(e.stacking){c=a.stackKey;"undefined"===typeof g[c]&&(g[c]=p++);var h=g[c]}else!1!==e.grouping&&(h=p++);a.columnIndex=h}});var b=Math.min(Math.abs(k.transA)*(k.ordinalSlope||n.pointRange||k.closestPointRange||k.tickInterval||1),k.len),a=b*n.groupPadding,v=(b-2*a)/(p||1);n=Math.min(n.maxPointWidth||k.len,x(n.pointWidth,v*(1-2*n.pointPadding)));f.columnMetrics={width:n,offset:(v-n)/2+(a+((f.columnIndex||
0)+(e?1:0))*v-b/2)*(e?-1:1)};return f.columnMetrics},crispCol:function(f,n,k,q){var e=this.chart,c=this.borderWidth,g=-(c%2?.5:0);c=c%2?.5:1;e.inverted&&e.renderer.isVML&&(c+=1);this.options.crisp&&(k=Math.round(f+k)+g,f=Math.round(f)+g,k-=f);q=Math.round(n+q)+c;g=.5>=Math.abs(n)&&.5<q;n=Math.round(n)+c;q-=n;g&&q&&(--n,q+=1);return{x:f,y:n,width:k,height:q}},translate:function(){var f=this,n=f.chart,k=f.options,q=f.dense=2>f.closestPointRange*f.xAxis.transA;q=f.borderWidth=x(k.borderWidth,q?0:1);
var e=f.xAxis,c=f.yAxis,g=k.threshold,p=f.translatedThreshold=c.getThreshold(g),b=x(k.minPointLength,5),a=f.getColumnMetrics(),v=a.width,m=f.barW=Math.max(v,1+2*q),w=f.pointXOffset=a.offset,l=f.dataMin,h=f.dataMax;n.inverted&&(p-=.5);k.pointPadding&&(m=Math.ceil(m));A.prototype.translate.apply(f);f.points.forEach(function(a){var k=x(a.yBottom,p),u=999+Math.abs(k),q=v,D=a.plotX;u=F(a.plotY,-u,c.len+u);var d=a.plotX+w,t=m,z=Math.min(u,k),r=Math.max(u,k)-z;if(b&&Math.abs(r)<b){r=b;var A=!c.reversed&&
!a.negative||c.reversed&&a.negative;a.y===g&&f.dataMax<=g&&c.min<g&&l!==h&&(A=!A);z=Math.abs(z-p)>b?k-b:p-(A?b:0)}C(a.options.pointWidth)&&(q=t=Math.ceil(a.options.pointWidth),d-=Math.round((q-v)/2));a.barX=d;a.pointWidth=q;a.tooltipPos=n.inverted?[c.len+c.pos-n.plotLeft-u,e.len+e.pos-n.plotTop-(D||0)-w-t/2,r]:[d+t/2,u+c.pos-n.plotTop,r];a.shapeType=f.pointClass.prototype.shapeType||"rect";a.shapeArgs=f.crispCol.apply(f,a.isNull?[d,p,t,0]:[d,z,t,r])})},getSymbol:f.noop,drawLegendSymbol:y.drawRectangle,
drawGraph:function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},pointAttribs:function(f,n){var k=this.options,q=this.pointAttrToOptions||{};var e=q.stroke||"borderColor";var c=q["stroke-width"]||"borderWidth",g=f&&f.color||this.color,p=f&&f[e]||k[e]||this.color||g,b=f&&f[c]||k[c]||this[c]||0;q=f&&f.options.dashStyle||k.dashStyle;var a=x(f&&f.opacity,k.opacity,1);if(f&&this.zones.length){var v=f.getZone();g=f.options.color||v&&(v.color||f.nonZonedColor)||this.color;v&&
(p=v.borderColor||p,q=v.dashStyle||q,b=v.borderWidth||b)}n&&f&&(f=z(k.states[n],f.options.states&&f.options.states[n]||{}),n=f.brightness,g=f.color||"undefined"!==typeof n&&E(g).brighten(f.brightness).get()||g,p=f[e]||p,b=f[c]||b,q=f.dashStyle||q,a=x(f.opacity,a));e={fill:g,stroke:p,"stroke-width":b,opacity:a};q&&(e.dashstyle=q);return e},drawPoints:function(){var f=this,n=this.chart,k=f.options,q=n.renderer,e=k.animationLimit||250,c;f.points.forEach(function(g){var p=g.graphic,b=!!p,a=p&&n.pointCount<
e?"animate":"attr";if(L(g.plotY)&&null!==g.y){c=g.shapeArgs;p&&g.hasNewShapeType()&&(p=p.destroy());f.enabledDataSorting&&(g.startXPos=f.xAxis.reversed?-(c?c.width:0):f.xAxis.width);p||(g.graphic=p=q[g.shapeType](c).add(g.group||f.group))&&f.enabledDataSorting&&n.hasRendered&&n.pointCount<e&&(p.attr({x:g.startXPos}),b=!0,a="animate");if(p&&b)p[a](z(c));if(k.borderRadius)p[a]({r:k.borderRadius});n.styledMode||p[a](f.pointAttribs(g,g.selected&&"select")).shadow(!1!==g.allowShadow&&k.shadow,null,k.stacking&&
!k.borderRadius);p.addClass(g.getClassName(),!0)}else p&&(g.graphic=p.destroy())})},animate:function(f){var n=this,k=this.yAxis,q=n.options,e=this.chart.inverted,c={},g=e?"translateX":"translateY";if(f)c.scaleY=.001,f=F(k.toPixels(q.threshold),k.pos,k.pos+k.len),e?c.translateX=f-k.len:c.translateY=f,n.clipBox&&n.setClip(),n.group.attr(c);else{var p=n.group.attr(g);n.group.animate({scaleY:1},B(J(n.options.animation),{step:function(b,a){n.group&&(c[g]=p+a.pos*(k.pos-p),n.group.attr(c))}}))}},remove:function(){var f=
this,n=f.chart;n.hasRendered&&n.series.forEach(function(k){k.type===f.type&&(k.isDirty=!0)});A.prototype.remove.apply(f,arguments)}});""});P(y,"parts/BarSeries.js",[y["parts/Utilities.js"]],function(f){f=f.seriesType;f("bar","column",null,{inverted:!0});""});P(y,"parts/ScatterSeries.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.addEvent;m=m.seriesType;var r=f.Series;m("scatter","line",{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">\u25cf</span> <span style="font-size: 10px"> {series.name}</span><br/>',
pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}},{sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,drawGraph:function(){this.options.lineWidth&&r.prototype.drawGraph.call(this)},applyJitter:function(){var f=this,m=this.options.jitter,r=this.points.length;m&&this.points.forEach(function(C,B){["x","y"].forEach(function(y,z){var x="plot"+y.toUpperCase();if(m[y]&&!C.isNull){var A=f[y+"Axis"];var t=m[y]*A.transA;
if(A&&!A.isLog){var n=Math.max(0,C[x]-t);A=Math.min(A.len,C[x]+t);z=1E4*Math.sin(B+z*r);C[x]=n+(A-n)*(z-Math.floor(z));"x"===y&&(C.clientX=C.plotX)}}})})}});y(r,"afterTranslate",function(){this.applyJitter&&this.applyJitter()});""});P(y,"mixins/centered-series.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.isNumber,r=m.pick,E=m.relativeLength,N=f.deg2rad;f.CenteredSeriesMixin={getCenter:function(){var f=this.options,m=this.chart,B=2*(f.slicedOffset||0),y=m.plotWidth-2*B,
z=m.plotHeight-2*B,x=f.center,A=Math.min(y,z),t=f.size,n=f.innerSize||0;"string"===typeof t&&(t=parseFloat(t));"string"===typeof n&&(n=parseFloat(n));f=[r(x[0],"50%"),r(x[1],"50%"),r(t&&0>t?void 0:f.size,"100%"),r(n&&0>n?void 0:f.innerSize||0,"0%")];m.angular&&(f[3]=0);for(x=0;4>x;++x)t=f[x],m=2>x||2===x&&/%$/.test(t),f[x]=E(t,[y,z,A,f[2]][x])+(m?B:0);f[3]>f[2]&&(f[3]=f[2]);return f},getStartAndEndRadians:function(f,m){f=y(f)?f:0;m=y(m)&&m>f&&360>m-f?m:f+360;return{start:N*(f+-90),end:N*(m+-90)}}}});
P(y,"parts/PieSeries.js",[y["parts/Globals.js"],y["mixins/legend-symbol.js"],y["parts/Point.js"],y["parts/Utilities.js"]],function(f,m,y,r){var E=r.addEvent,J=r.clamp,F=r.defined,C=r.fireEvent,B=r.isNumber,L=r.merge,z=r.pick,x=r.relativeLength,A=r.seriesType,t=r.setAnimation;r=f.CenteredSeriesMixin;var n=r.getStartAndEndRadians,k=f.noop,q=f.Series;A("pie","line",{center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{allowOverlap:!0,connectorPadding:5,connectorShape:"fixedOffset",crookDistance:"70%",
distance:30,enabled:!0,formatter:function(){return this.point.isNull?void 0:this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}},{isCartesian:!1,requireSorting:!1,directTouch:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],
pointAttribs:f.seriesTypes.column.prototype.pointAttribs,animate:function(e){var c=this,g=c.points,f=c.startAngleRad;e||g.forEach(function(b){var a=b.graphic,e=b.shapeArgs;a&&e&&(a.attr({r:z(b.startR,c.center&&c.center[3]/2),start:f,end:f}),a.animate({r:e.r,start:e.start,end:e.end},c.options.animation))})},hasData:function(){return!!this.processedXData.length},updateTotals:function(){var e,c=0,g=this.points,f=g.length,b=this.options.ignoreHiddenPoint;for(e=0;e<f;e++){var a=g[e];c+=b&&!a.visible?0:
a.isNull?0:a.y}this.total=c;for(e=0;e<f;e++)a=g[e],a.percentage=0<c&&(a.visible||!b)?a.y/c*100:0,a.total=c},generatePoints:function(){q.prototype.generatePoints.call(this);this.updateTotals()},getX:function(e,c,g){var f=this.center,b=this.radii?this.radii[g.index]:f[2]/2;e=Math.asin(J((e-f[1])/(b+g.labelDistance),-1,1));return f[0]+(c?-1:1)*Math.cos(e)*(b+g.labelDistance)+(0<g.labelDistance?(c?-1:1)*this.options.dataLabels.padding:0)},translate:function(e){this.generatePoints();var c=0,g=this.options,
f=g.slicedOffset,b=f+(g.borderWidth||0),a=n(g.startAngle,g.endAngle),k=this.startAngleRad=a.start;a=(this.endAngleRad=a.end)-k;var m=this.points,w=g.dataLabels.distance;g=g.ignoreHiddenPoint;var l,h=m.length;e||(this.center=e=this.getCenter());for(l=0;l<h;l++){var u=m[l];var q=k+c*a;if(!g||u.visible)c+=u.percentage/100;var t=k+c*a;u.shapeType="arc";u.shapeArgs={x:e[0],y:e[1],r:e[2]/2,innerR:e[3]/2,start:Math.round(1E3*q)/1E3,end:Math.round(1E3*t)/1E3};u.labelDistance=z(u.options.dataLabels&&u.options.dataLabels.distance,
w);u.labelDistance=x(u.labelDistance,u.shapeArgs.r);this.maxLabelDistance=Math.max(this.maxLabelDistance||0,u.labelDistance);t=(t+q)/2;t>1.5*Math.PI?t-=2*Math.PI:t<-Math.PI/2&&(t+=2*Math.PI);u.slicedTranslation={translateX:Math.round(Math.cos(t)*f),translateY:Math.round(Math.sin(t)*f)};var r=Math.cos(t)*e[2]/2;var G=Math.sin(t)*e[2]/2;u.tooltipPos=[e[0]+.7*r,e[1]+.7*G];u.half=t<-Math.PI/2||t>Math.PI/2?1:0;u.angle=t;q=Math.min(b,u.labelDistance/5);u.labelPosition={natural:{x:e[0]+r+Math.cos(t)*u.labelDistance,
y:e[1]+G+Math.sin(t)*u.labelDistance},"final":{},alignment:0>u.labelDistance?"center":u.half?"right":"left",connectorPosition:{breakAt:{x:e[0]+r+Math.cos(t)*q,y:e[1]+G+Math.sin(t)*q},touchingSliceAt:{x:e[0]+r,y:e[1]+G}}}}C(this,"afterTranslate")},drawEmpty:function(){var e=this.options;if(0===this.total){var c=this.center[0];var g=this.center[1];this.graph||(this.graph=this.chart.renderer.circle(c,g,0).addClass("highcharts-graph").add(this.group));this.graph.animate({"stroke-width":e.borderWidth,
cx:c,cy:g,r:this.center[2]/2,fill:e.fillColor||"none",stroke:e.color||"#cccccc"},this.options.animation)}else this.graph&&(this.graph=this.graph.destroy())},redrawPoints:function(){var e=this,c=e.chart,g=c.renderer,f,b,a,k,n=e.options.shadow;this.drawEmpty();!n||e.shadowGroup||c.styledMode||(e.shadowGroup=g.g("shadow").attr({zIndex:-1}).add(e.group));e.points.forEach(function(p){var l={};b=p.graphic;if(!p.isNull&&b){k=p.shapeArgs;f=p.getTranslate();if(!c.styledMode){var h=p.shadowGroup;n&&!h&&(h=
p.shadowGroup=g.g("shadow").add(e.shadowGroup));h&&h.attr(f);a=e.pointAttribs(p,p.selected&&"select")}p.delayedRendering?(b.setRadialReference(e.center).attr(k).attr(f),c.styledMode||b.attr(a).attr({"stroke-linejoin":"round"}).shadow(n,h),p.delayedRendering=!1):(b.setRadialReference(e.center),c.styledMode||L(!0,l,a),L(!0,l,k,f),b.animate(l));b.attr({visibility:p.visible?"inherit":"hidden"});b.addClass(p.getClassName())}else b&&(p.graphic=b.destroy())})},drawPoints:function(){var e=this.chart.renderer;
this.points.forEach(function(c){c.graphic&&c.hasNewShapeType()&&(c.graphic=c.graphic.destroy());c.graphic||(c.graphic=e[c.shapeType](c.shapeArgs).add(c.series.group),c.delayedRendering=!0)})},searchPoint:k,sortByAngle:function(e,c){e.sort(function(e,f){return"undefined"!==typeof e.angle&&(f.angle-e.angle)*c})},drawLegendSymbol:m.drawRectangle,getCenter:r.getCenter,getSymbol:k,drawGraph:null},{init:function(){y.prototype.init.apply(this,arguments);var e=this;e.name=z(e.name,"Slice");var c=function(c){e.slice("select"===
c.type)};E(e,"select",c);E(e,"unselect",c);return e},isValid:function(){return B(this.y)&&0<=this.y},setVisible:function(e,c){var g=this,f=g.series,b=f.chart,a=f.options.ignoreHiddenPoint;c=z(c,a);e!==g.visible&&(g.visible=g.options.visible=e="undefined"===typeof e?!g.visible:e,f.options.data[f.data.indexOf(g)]=g.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(a){if(g[a])g[a][e?"show":"hide"](!0)}),g.legendItem&&b.legend.colorizeItem(g,e),e||"hover"!==g.state||g.setState(""),
a&&(f.isDirty=!0),c&&b.redraw())},slice:function(e,c,g){var f=this.series;t(g,f.chart);z(c,!0);this.sliced=this.options.sliced=F(e)?e:!this.sliced;f.options.data[f.data.indexOf(this)]=this.options;this.graphic.animate(this.getTranslate());this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())},getTranslate:function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}},haloPath:function(e){var c=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(c.x,
c.y,c.r+e,c.r+e,{innerR:c.r-1,start:c.start,end:c.end})},connectorShapes:{fixedOffset:function(e,c,g){var f=c.breakAt;c=c.touchingSliceAt;return["M",e.x,e.y].concat(g.softConnector?["C",e.x+("left"===e.alignment?-5:5),e.y,2*f.x-c.x,2*f.y-c.y,f.x,f.y]:["L",f.x,f.y]).concat(["L",c.x,c.y])},straight:function(e,c){c=c.touchingSliceAt;return["M",e.x,e.y,"L",c.x,c.y]},crookedLine:function(e,c,g){c=c.touchingSliceAt;var f=this.series,b=f.center[0],a=f.chart.plotWidth,k=f.chart.plotLeft;f=e.alignment;var n=
this.shapeArgs.r;g=x(g.crookDistance,1);g="left"===f?b+n+(a+k-b-n)*(1-g):k+(b-n)*g;b=["L",g,e.y];if("left"===f?g>e.x||g<c.x:g<e.x||g>c.x)b=[];return["M",e.x,e.y].concat(b).concat(["L",c.x,c.y])}},getConnectorPath:function(){var e=this.labelPosition,c=this.series.options.dataLabels,g=c.connectorShape,f=this.connectorShapes;f[g]&&(g=f[g]);return g.call(this,{x:e.final.x,y:e.final.y,alignment:e.alignment},e.connectorPosition,c)}});""});P(y,"parts/DataLabels.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],
function(f,m){var y=m.animObject,r=m.arrayMax,E=m.clamp,N=m.defined,F=m.extend,C=m.format,B=m.isArray,L=m.merge,z=m.objectEach,x=m.pick,A=m.relativeLength,t=m.splat,n=m.stableSort;m=f.noop;var k=f.Series,q=f.seriesTypes;f.distribute=function(e,c,g){function p(a,b){return a.target-b.target}var b,a=!0,k=e,m=[];var w=0;var l=k.reducedLen||c;for(b=e.length;b--;)w+=e[b].size;if(w>l){n(e,function(a,b){return(b.rank||0)-(a.rank||0)});for(w=b=0;w<=l;)w+=e[b].size,b++;m=e.splice(b-1,e.length)}n(e,p);for(e=
e.map(function(a){return{size:a.size,targets:[a.target],align:x(a.align,.5)}});a;){for(b=e.length;b--;)a=e[b],w=(Math.min.apply(0,a.targets)+Math.max.apply(0,a.targets))/2,a.pos=E(w-a.size*a.align,0,c-a.size);b=e.length;for(a=!1;b--;)0<b&&e[b-1].pos+e[b-1].size>e[b].pos&&(e[b-1].size+=e[b].size,e[b-1].targets=e[b-1].targets.concat(e[b].targets),e[b-1].align=.5,e[b-1].pos+e[b-1].size>c&&(e[b-1].pos=c-e[b-1].size),e.splice(b,1),a=!0)}k.push.apply(k,m);b=0;e.some(function(a){var e=0;if(a.targets.some(function(){k[b].pos=
a.pos+e;if("undefined"!==typeof g&&Math.abs(k[b].pos-k[b].target)>g)return k.slice(0,b+1).forEach(function(a){delete a.pos}),k.reducedLen=(k.reducedLen||c)-.1*c,k.reducedLen>.1*c&&f.distribute(k,c,g),!0;e+=k[b].size;b++}))return!0});n(k,p)};k.prototype.drawDataLabels=function(){function e(a,b){var d=b.filter;return d?(b=d.operator,a=a[d.property],d=d.value,">"===b&&a>d||"<"===b&&a<d||">="===b&&a>=d||"<="===b&&a<=d||"=="===b&&a==d||"==="===b&&a===d?!0:!1):!0}function c(a,b){var d=[],c;if(B(a)&&!B(b))d=
a.map(function(a){return L(a,b)});else if(B(b)&&!B(a))d=b.map(function(d){return L(a,d)});else if(B(a)||B(b))for(c=Math.max(a.length,b.length);c--;)d[c]=L(a[c],b[c]);else d=L(a,b);return d}var g=this,p=g.chart,b=g.options,a=b.dataLabels,k=g.points,n,w=g.hasRendered||0,l=y(b.animation).duration,h=Math.min(l,200),u=!p.renderer.forExport&&x(a.defer,0<h),m=p.renderer;a=c(c(p.options.plotOptions&&p.options.plotOptions.series&&p.options.plotOptions.series.dataLabels,p.options.plotOptions&&p.options.plotOptions[g.type]&&
p.options.plotOptions[g.type].dataLabels),a);f.fireEvent(this,"drawDataLabels");if(B(a)||a.enabled||g._hasPointLabels){var q=g.plotGroup("dataLabelsGroup","data-labels",u&&!w?"hidden":"inherit",a.zIndex||6);u&&(q.attr({opacity:+w}),w||setTimeout(function(){var a=g.dataLabelsGroup;a&&(g.visible&&q.show(!0),a[b.animation?"animate":"attr"]({opacity:1},{duration:h}))},l-h));k.forEach(function(h){n=t(c(a,h.dlOptions||h.options&&h.options.dataLabels));n.forEach(function(a,d){var c=a.enabled&&(!h.isNull||
h.dataLabelOnNull)&&e(h,a),l=h.dataLabels?h.dataLabels[d]:h.dataLabel,f=h.connectors?h.connectors[d]:h.connector,k=x(a.distance,h.labelDistance),u=!l;if(c){var n=h.getLabelConfig();var w=x(a[h.formatPrefix+"Format"],a.format);n=N(w)?C(w,n,p):(a[h.formatPrefix+"Formatter"]||a.formatter).call(n,a);w=a.style;var v=a.rotation;p.styledMode||(w.color=x(a.color,w.color,g.color,"#000000"),"contrast"===w.color?(h.contrastColor=m.getContrast(h.color||g.color),w.color=!N(k)&&a.inside||0>k||b.stacking?h.contrastColor:
"#000000"):delete h.contrastColor,b.cursor&&(w.cursor=b.cursor));var H={r:a.borderRadius||0,rotation:v,padding:a.padding,zIndex:1};p.styledMode||(H.fill=a.backgroundColor,H.stroke=a.borderColor,H["stroke-width"]=a.borderWidth);z(H,function(a,d){"undefined"===typeof a&&delete H[d]})}!l||c&&N(n)?c&&N(n)&&(l?H.text=n:(h.dataLabels=h.dataLabels||[],l=h.dataLabels[d]=v?m.text(n,0,-9999,a.useHTML).addClass("highcharts-data-label"):m.label(n,0,-9999,a.shape,null,null,a.useHTML,null,"data-label"),d||(h.dataLabel=
l),l.addClass(" highcharts-data-label-color-"+h.colorIndex+" "+(a.className||"")+(a.useHTML?" highcharts-tracker":""))),l.options=a,l.attr(H),p.styledMode||l.css(w).shadow(a.shadow),l.added||l.add(q),a.textPath&&!a.useHTML&&(l.setTextPath(h.getDataLabelPath&&h.getDataLabelPath(l)||h.graphic,a.textPath),h.dataLabelPath&&!a.textPath.enabled&&(h.dataLabelPath=h.dataLabelPath.destroy())),g.alignDataLabel(h,l,a,null,u)):(h.dataLabel=h.dataLabel&&h.dataLabel.destroy(),h.dataLabels&&(1===h.dataLabels.length?
delete h.dataLabels:delete h.dataLabels[d]),d||delete h.dataLabel,f&&(h.connector=h.connector.destroy(),h.connectors&&(1===h.connectors.length?delete h.connectors:delete h.connectors[d])))})})}f.fireEvent(this,"afterDrawDataLabels")};k.prototype.alignDataLabel=function(e,c,g,f,b){var a=this,p=this.chart,k=this.isCartesian&&p.inverted,n=this.enabledDataSorting,l=x(e.dlBox&&e.dlBox.centerX,e.plotX,-9999),h=x(e.plotY,-9999),u=c.getBBox(),m=g.rotation,q=g.align,t=p.isInsidePlot(l,Math.round(h),k),z="justify"===
x(g.overflow,n?"none":"justify"),d=this.visible&&!1!==e.visible&&(e.series.forceDL||n&&!z||t||g.inside&&f&&p.isInsidePlot(l,k?f.x+1:f.y+f.height-1,k));var r=function(d){n&&a.xAxis&&!z&&a.setDataLabelStartPos(e,c,b,t,d)};if(d){var A=p.renderer.fontMetrics(p.styledMode?void 0:g.style.fontSize,c).b;f=F({x:k?this.yAxis.len-h:l,y:Math.round(k?this.xAxis.len-l:h),width:0,height:0},f);F(g,{width:u.width,height:u.height});m?(z=!1,l=p.renderer.rotCorr(A,m),l={x:f.x+g.x+f.width/2+l.x,y:f.y+g.y+{top:0,middle:.5,
bottom:1}[g.verticalAlign]*f.height},r(l),c[b?"attr":"animate"](l).attr({align:q}),r=(m+720)%360,r=180<r&&360>r,"left"===q?l.y-=r?u.height:0:"center"===q?(l.x-=u.width/2,l.y-=u.height/2):"right"===q&&(l.x-=u.width,l.y-=r?0:u.height),c.placed=!0,c.alignAttr=l):(r(f),c.align(g,null,f),l=c.alignAttr);z&&0<=f.height?this.justifyDataLabel(c,g,l,u,f,b):x(g.crop,!0)&&(d=p.isInsidePlot(l.x,l.y)&&p.isInsidePlot(l.x+u.width,l.y+u.height));if(g.shape&&!m)c[b?"attr":"animate"]({anchorX:k?p.plotWidth-e.plotY:
e.plotX,anchorY:k?p.plotHeight-e.plotX:e.plotY})}b&&n&&(c.placed=!1);d||n&&!z||(c.hide(!0),c.placed=!1)};k.prototype.setDataLabelStartPos=function(e,c,g,f,b){var a=this.chart,p=a.inverted,k=this.xAxis,n=k.reversed,l=p?c.height/2:c.width/2;e=(e=e.pointWidth)?e/2:0;k=p?b.x:n?-l-e:k.width-l+e;b=p?n?this.yAxis.height-l+e:-l-e:b.y;c.startXPos=k;c.startYPos=b;f?"hidden"===c.visibility&&(c.show(),c.attr({opacity:0}).animate({opacity:1})):c.attr({opacity:1}).animate({opacity:0},void 0,c.hide);a.hasRendered&&
(g&&c.attr({x:c.startXPos,y:c.startYPos}),c.placed=!0)};k.prototype.justifyDataLabel=function(e,c,g,f,b,a){var p=this.chart,k=c.align,n=c.verticalAlign,l=e.box?0:e.padding||0;var h=g.x+l;if(0>h){"right"===k?(c.align="left",c.inside=!0):c.x=-h;var u=!0}h=g.x+f.width-l;h>p.plotWidth&&("left"===k?(c.align="right",c.inside=!0):c.x=p.plotWidth-h,u=!0);h=g.y+l;0>h&&("bottom"===n?(c.verticalAlign="top",c.inside=!0):c.y=-h,u=!0);h=g.y+f.height-l;h>p.plotHeight&&("top"===n?(c.verticalAlign="bottom",c.inside=
!0):c.y=p.plotHeight-h,u=!0);u&&(e.placed=!a,e.align(c,null,b));return u};q.pie&&(q.pie.prototype.dataLabelPositioners={radialDistributionY:function(e){return e.top+e.distributeBox.pos},radialDistributionX:function(e,c,g,f){return e.getX(g<c.top+2||g>c.bottom-2?f:g,c.half,c)},justify:function(e,c,g){return g[0]+(e.half?-1:1)*(c+e.labelDistance)},alignToPlotEdges:function(e,c,g,f){e=e.getBBox().width;return c?e+f:g-e-f},alignToConnectors:function(e,c,g,f){var b=0,a;e.forEach(function(c){a=c.dataLabel.getBBox().width;
a>b&&(b=a)});return c?b+f:g-b-f}},q.pie.prototype.drawDataLabels=function(){var e=this,c=e.data,g,p=e.chart,b=e.options.dataLabels||{},a=b.connectorPadding,n,m=p.plotWidth,w=p.plotHeight,l=p.plotLeft,h=Math.round(p.chartWidth/3),u,q=e.center,t=q[2]/2,z=q[1],G,d,A,B,C=[[],[]],y,E,J,F,P=[0,0,0,0],ba=e.dataLabelPositioners,Z;e.visible&&(b.enabled||e._hasPointLabels)&&(c.forEach(function(a){a.dataLabel&&a.visible&&a.dataLabel.shortened&&(a.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),
a.dataLabel.shortened=!1)}),k.prototype.drawDataLabels.apply(e),c.forEach(function(a){a.dataLabel&&(a.visible?(C[a.half].push(a),a.dataLabel._pos=null,!N(b.style.width)&&!N(a.options.dataLabels&&a.options.dataLabels.style&&a.options.dataLabels.style.width)&&a.dataLabel.getBBox().width>h&&(a.dataLabel.css({width:.7*h}),a.dataLabel.shortened=!0)):(a.dataLabel=a.dataLabel.destroy(),a.dataLabels&&1===a.dataLabels.length&&delete a.dataLabels))}),C.forEach(function(c,h){var k=c.length,u=[],n;if(k){e.sortByAngle(c,
h-.5);if(0<e.maxLabelDistance){var v=Math.max(0,z-t-e.maxLabelDistance);var H=Math.min(z+t+e.maxLabelDistance,p.plotHeight);c.forEach(function(a){0<a.labelDistance&&a.dataLabel&&(a.top=Math.max(0,z-t-a.labelDistance),a.bottom=Math.min(z+t+a.labelDistance,p.plotHeight),n=a.dataLabel.getBBox().height||21,a.distributeBox={target:a.labelPosition.natural.y-a.top+n/2,size:n,rank:a.y},u.push(a.distributeBox))});v=H+n-v;f.distribute(u,v,v/5)}for(F=0;F<k;F++){g=c[F];A=g.labelPosition;G=g.dataLabel;J=!1===
g.visible?"hidden":"inherit";E=v=A.natural.y;u&&N(g.distributeBox)&&("undefined"===typeof g.distributeBox.pos?J="hidden":(B=g.distributeBox.size,E=ba.radialDistributionY(g)));delete g.positionIndex;if(b.justify)y=ba.justify(g,t,q);else switch(b.alignTo){case "connectors":y=ba.alignToConnectors(c,h,m,l);break;case "plotEdges":y=ba.alignToPlotEdges(G,h,m,l);break;default:y=ba.radialDistributionX(e,g,E,v)}G._attr={visibility:J,align:A.alignment};Z=g.options.dataLabels||{};G._pos={x:y+x(Z.x,b.x)+({left:a,
right:-a}[A.alignment]||0),y:E+x(Z.y,b.y)-10};A.final.x=y;A.final.y=E;x(b.crop,!0)&&(d=G.getBBox().width,v=null,y-d<a&&1===h?(v=Math.round(d-y+a),P[3]=Math.max(v,P[3])):y+d>m-a&&0===h&&(v=Math.round(y+d-m+a),P[1]=Math.max(v,P[1])),0>E-B/2?P[0]=Math.max(Math.round(-E+B/2),P[0]):E+B/2>w&&(P[2]=Math.max(Math.round(E+B/2-w),P[2])),G.sideOverflow=v)}}}),0===r(P)||this.verifyDataLabelOverflow(P))&&(this.placeDataLabels(),this.points.forEach(function(a){Z=L(b,a.options.dataLabels);if(n=x(Z.connectorWidth,
1)){var d;u=a.connector;if((G=a.dataLabel)&&G._pos&&a.visible&&0<a.labelDistance){J=G._attr.visibility;if(d=!u)a.connector=u=p.renderer.path().addClass("highcharts-data-label-connector  highcharts-color-"+a.colorIndex+(a.className?" "+a.className:"")).add(e.dataLabelsGroup),p.styledMode||u.attr({"stroke-width":n,stroke:Z.connectorColor||a.color||"#666666"});u[d?"attr":"animate"]({d:a.getConnectorPath()});u.attr("visibility",J)}else u&&(a.connector=u.destroy())}}))},q.pie.prototype.placeDataLabels=
function(){this.points.forEach(function(e){var c=e.dataLabel,g;c&&e.visible&&((g=c._pos)?(c.sideOverflow&&(c._attr.width=Math.max(c.getBBox().width-c.sideOverflow,0),c.css({width:c._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),c.shortened=!0),c.attr(c._attr),c[c.moved?"animate":"attr"](g),c.moved=!0):c&&c.attr({y:-9999}));delete e.distributeBox},this)},q.pie.prototype.alignDataLabel=m,q.pie.prototype.verifyDataLabelOverflow=function(e){var c=this.center,
g=this.options,f=g.center,b=g.minSize||80,a=null!==g.size;if(!a){if(null!==f[0])var k=Math.max(c[2]-Math.max(e[1],e[3]),b);else k=Math.max(c[2]-e[1]-e[3],b),c[0]+=(e[3]-e[1])/2;null!==f[1]?k=E(k,b,c[2]-Math.max(e[0],e[2])):(k=E(k,b,c[2]-e[0]-e[2]),c[1]+=(e[0]-e[2])/2);k<c[2]?(c[2]=k,c[3]=Math.min(A(g.innerSize||0,k),k),this.translate(c),this.drawDataLabels&&this.drawDataLabels()):a=!0}return a});q.column&&(q.column.prototype.alignDataLabel=function(e,c,g,f,b){var a=this.chart.inverted,p=e.series,
n=e.dlBox||e.shapeArgs,m=x(e.below,e.plotY>x(this.translatedThreshold,p.yAxis.len)),l=x(g.inside,!!this.options.stacking);n&&(f=L(n),0>f.y&&(f.height+=f.y,f.y=0),n=f.y+f.height-p.yAxis.len,0<n&&n<f.height&&(f.height-=n),a&&(f={x:p.yAxis.len-f.y-f.height,y:p.xAxis.len-f.x-f.width,width:f.height,height:f.width}),l||(a?(f.x+=m?0:f.width,f.width=0):(f.y+=m?f.height:0,f.height=0)));g.align=x(g.align,!a||l?"center":m?"right":"left");g.verticalAlign=x(g.verticalAlign,a||l?"middle":m?"top":"bottom");k.prototype.alignDataLabel.call(this,
e,c,g,f,b);g.inside&&e.contrastColor&&c.css({color:e.contrastColor})})});P(y,"modules/overlapping-datalabels.src.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.addEvent,r=m.fireEvent,E=m.isArray,N=m.objectEach,F=m.pick;f=f.Chart;y(f,"render",function(){var f=[];(this.labelCollectors||[]).forEach(function(m){f=f.concat(m())});(this.yAxis||[]).forEach(function(m){m.options.stackLabels&&!m.options.stackLabels.allowOverlap&&N(m.stacks,function(m){N(m,function(m){f.push(m.label)})})});
(this.series||[]).forEach(function(m){var r=m.options.dataLabels;m.visible&&(!1!==r.enabled||m._hasPointLabels)&&(m.nodes||m.points).forEach(function(m){m.visible&&(E(m.dataLabels)?m.dataLabels:m.dataLabel?[m.dataLabel]:[]).forEach(function(x){var z=x.options;x.labelrank=F(z.labelrank,m.labelrank,m.shapeArgs&&m.shapeArgs.height);z.allowOverlap||f.push(x)})})});this.hideOverlappingLabels(f)});f.prototype.hideOverlappingLabels=function(f){var m=this,C=f.length,z=m.renderer,x,A,t,n=!1;var k=function(c){var e=
c.box?0:c.padding||0;var f=0;if(c&&(!c.alignAttr||c.placed)){var b=c.alignAttr||{x:c.attr("x"),y:c.attr("y")};var a=c.parentGroup;c.width||(f=c.getBBox(),c.width=f.width,c.height=f.height,f=z.fontMetrics(null,c.element).h);return{x:b.x+(a.translateX||0)+e,y:b.y+(a.translateY||0)+e-f,width:c.width-2*e,height:c.height-2*e}}};for(A=0;A<C;A++)if(x=f[A])x.oldOpacity=x.opacity,x.newOpacity=1,x.absoluteBox=k(x);f.sort(function(c,e){return(e.labelrank||0)-(c.labelrank||0)});for(A=0;A<C;A++){var q=(k=f[A])&&
k.absoluteBox;for(x=A+1;x<C;++x){var e=(t=f[x])&&t.absoluteBox;!q||!e||k===t||0===k.newOpacity||0===t.newOpacity||e.x>q.x+q.width||e.x+e.width<q.x||e.y>q.y+q.height||e.y+e.height<q.y||((k.labelrank<t.labelrank?k:t).newOpacity=0)}}f.forEach(function(c){var e;if(c){var f=c.newOpacity;c.oldOpacity!==f&&(c.alignAttr&&c.placed?(f?c.show(!0):e=function(){c.hide(!0);c.placed=!1},n=!0,c.alignAttr.opacity=f,c[c.isOld?"animate":"attr"](c.alignAttr,null,e),r(m,"afterHideOverlappingLabel")):c.attr({opacity:f}));
c.isOld=!0}});n&&r(m,"afterHideAllOverlappingLabels")}});P(y,"parts/Interaction.js",[y["parts/Globals.js"],y["parts/Legend.js"],y["parts/Point.js"],y["parts/Utilities.js"]],function(f,m,y,r){var E=r.addEvent,J=r.createElement,F=r.css,C=r.defined,B=r.extend,L=r.fireEvent,z=r.isArray,x=r.isFunction,A=r.isObject,t=r.merge,n=r.objectEach,k=r.pick;r=f.Chart;var q=f.defaultOptions,e=f.defaultPlotOptions,c=f.hasTouch,g=f.Series,p=f.seriesTypes,b=f.svg;f=f.TrackerMixin={drawTrackerPoint:function(){var a=
this,b=a.chart,e=b.pointer,g=function(a){var b=e.getPointFromEvent(a);"undefined"!==typeof b&&(e.isDirectTouch=!0,b.onMouseOver(a))},l;a.points.forEach(function(a){l=z(a.dataLabels)?a.dataLabels:a.dataLabel?[a.dataLabel]:[];a.graphic&&(a.graphic.element.point=a);l.forEach(function(b){b.div?b.div.point=a:b.element.point=a})});a._hasTracking||(a.trackerGroups.forEach(function(h){if(a[h]){a[h].addClass("highcharts-tracker").on("mouseover",g).on("mouseout",function(a){e.onTrackerMouseOut(a)});if(c)a[h].on("touchstart",
g);!b.styledMode&&a.options.cursor&&a[h].css(F).css({cursor:a.options.cursor})}}),a._hasTracking=!0);L(this,"afterDrawTracker")},drawTrackerGraph:function(){var a=this,e=a.options,g=e.trackByArea,f=[].concat(g?a.areaPath:a.graphPath),l=f.length,h=a.chart,k=h.pointer,p=h.renderer,n=h.options.tooltip.snap,m=a.tracker,q,d=function(){if(h.hoverSeries!==a)a.onMouseOver()},t="rgba(192,192,192,"+(b?.0001:.002)+")";if(l&&!g)for(q=l+1;q--;)"M"===f[q]&&f.splice(q+1,0,f[q+1]-n,f[q+2],"L"),(q&&"M"===f[q]||q===
l)&&f.splice(q,0,"L",f[q-2]+n,f[q-1]);m?m.attr({d:f}):a.graph&&(a.tracker=p.path(f).attr({visibility:a.visible?"visible":"hidden",zIndex:2}).addClass(g?"highcharts-tracker-area":"highcharts-tracker-line").add(a.group),h.styledMode||a.tracker.attr({"stroke-linejoin":"round",stroke:t,fill:g?t:"none","stroke-width":a.graph.strokeWidth()+(g?0:2*n)}),[a.tracker,a.markerGroup].forEach(function(a){a.addClass("highcharts-tracker").on("mouseover",d).on("mouseout",function(a){k.onTrackerMouseOut(a)});e.cursor&&
!h.styledMode&&a.css({cursor:e.cursor});if(c)a.on("touchstart",d)}));L(this,"afterDrawTracker")}};p.column&&(p.column.prototype.drawTracker=f.drawTrackerPoint);p.pie&&(p.pie.prototype.drawTracker=f.drawTrackerPoint);p.scatter&&(p.scatter.prototype.drawTracker=f.drawTrackerPoint);B(m.prototype,{setItemEvents:function(a,b,c){var e=this,g=e.chart.renderer.boxWrapper,h=a instanceof y,f="highcharts-legend-"+(h?"point":"series")+"-active",k=e.chart.styledMode;(c?[b,a.legendSymbol]:[a.legendGroup]).forEach(function(c){if(c)c.on("mouseover",
function(){a.visible&&e.allItems.forEach(function(b){a!==b&&b.setState("inactive",!h)});a.setState("hover");a.visible&&g.addClass(f);k||b.css(e.options.itemHoverStyle)}).on("mouseout",function(){e.chart.styledMode||b.css(t(a.visible?e.itemStyle:e.itemHiddenStyle));e.allItems.forEach(function(b){a!==b&&b.setState("",!h)});g.removeClass(f);a.setState()}).on("click",function(b){var c=function(){a.setVisible&&a.setVisible();e.allItems.forEach(function(d){a!==d&&d.setState(a.visible?"inactive":"",!h)})};
g.removeClass(f);b={browserEvent:b};a.firePointEvent?a.firePointEvent("legendItemClick",b,c):L(a,"legendItemClick",b,c)})})},createCheckboxForItem:function(a){a.checkbox=J("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:a.selected,defaultChecked:a.selected},this.options.itemCheckboxStyle,this.chart.container);E(a.checkbox,"click",function(b){L(a.series||a,"checkboxClick",{checked:b.target.checked,item:a},function(){a.select()})})}});B(r.prototype,{showResetZoom:function(){function a(){b.zoomOut()}
var b=this,c=q.lang,e=b.options.chart.resetZoomButton,g=e.theme,h=g.states,f="chart"===e.relativeTo||"spaceBox"===e.relativeTo?null:"plotBox";L(this,"beforeShowResetZoom",null,function(){b.resetZoomButton=b.renderer.button(c.resetZoom,null,null,a,g,h&&h.hover).attr({align:e.position.align,title:c.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(e.position,!1,f)});L(this,"afterShowResetZoom")},zoomOut:function(){L(this,"selection",{resetSelection:!0},this.zoom)},zoom:function(a){var b=
this,c,e=b.pointer,g=!1,h=b.inverted?e.mouseDownX:e.mouseDownY;!a||a.resetSelection?(b.axes.forEach(function(a){c=a.zoom()}),e.initiated=!1):a.xAxis.concat(a.yAxis).forEach(function(a){var l=a.axis,f=b.inverted?l.left:l.top,k=b.inverted?f+l.width:f+l.height,d=l.isXAxis,p=!1;if(!d&&h>=f&&h<=k||d||!C(h))p=!0;e[d?"zoomX":"zoomY"]&&p&&(c=l.zoom(a.min,a.max),l.displayBtn&&(g=!0))});var f=b.resetZoomButton;g&&!f?b.showResetZoom():!g&&A(f)&&(b.resetZoomButton=f.destroy());c&&b.redraw(k(b.options.chart.animation,
a&&a.animation,100>b.pointCount))},pan:function(a,b){var c=this,e=c.hoverPoints,g=c.options.chart,h;b="object"===typeof b?b:{enabled:b,type:"x"};g&&g.panning&&(g.panning=b);var f=b.type;L(this,"pan",{originalEvent:a},function(){e&&e.forEach(function(a){a.setState()});var b=[1];"xy"===f?b=[1,0]:"y"===f&&(b=[0]);b.forEach(function(b){var e=c[b?"xAxis":"yAxis"][0],g=e.options,d=e.horiz,l=a[d?"chartX":"chartY"];d=d?"mouseDownX":"mouseDownY";var f=c[d],k=(e.pointRange||0)/2,p=e.reversed&&!c.inverted||
!e.reversed&&c.inverted?-1:1,n=e.getExtremes(),u=e.toValue(f-l,!0)+k*p;p=e.toValue(f+e.len-l,!0)-k*p;var m=p<u;f=m?p:u;u=m?u:p;p=Math.min(n.dataMin,k?n.min:e.toValue(e.toPixels(n.min)-e.minPixelPadding));k=Math.max(n.dataMax,k?n.max:e.toValue(e.toPixels(n.max)+e.minPixelPadding));if(!g.ordinal){b&&(g=p-f,0<g&&(u+=g,f=p),g=u-k,0<g&&(u=k,f-=g));if(e.series.length&&f!==n.min&&u!==n.max&&b||e.panningState&&f>=e.panningState.startMin&&u<=e.panningState.startMax)e.setExtremes(f,u,!1,!1,{trigger:"pan"}),
h=!0;c[d]=l}});h&&c.redraw(!1);F(c.container,{cursor:"move"})})}});B(y.prototype,{select:function(a,b){var c=this,e=c.series,g=e.chart;this.selectedStaging=a=k(a,!c.selected);c.firePointEvent(a?"select":"unselect",{accumulate:b},function(){c.selected=c.options.selected=a;e.options.data[e.data.indexOf(c)]=c.options;c.setState(a&&"select");b||g.getSelectedPoints().forEach(function(a){var b=a.series;a.selected&&a!==c&&(a.selected=a.options.selected=!1,b.options.data[b.data.indexOf(a)]=a.options,a.setState(g.hoverPoints&&
b.options.inactiveOtherPoints?"inactive":""),a.firePointEvent("unselect"))})});delete this.selectedStaging},onMouseOver:function(a){var b=this.series.chart,c=b.pointer;a=a?c.normalize(a):c.getChartCoordinatesFromPoint(this,b.inverted);c.runPointActions(a,this)},onMouseOut:function(){var a=this.series.chart;this.firePointEvent("mouseOut");this.series.options.inactiveOtherPoints||(a.hoverPoints||[]).forEach(function(a){a.setState()});a.hoverPoints=a.hoverPoint=null},importEvents:function(){if(!this.hasImportedEvents){var a=
this,b=t(a.series.options.point,a.options).events;a.events=b;n(b,function(b,c){x(b)&&E(a,c,b)});this.hasImportedEvents=!0}},setState:function(a,b){var c=this.series,g=this.state,f=c.options.states[a||"normal"]||{},h=e[c.type].marker&&c.options.marker,p=h&&!1===h.enabled,n=h&&h.states&&h.states[a||"normal"]||{},m=!1===n.enabled,q=c.stateMarkerGraphic,v=this.marker||{},d=c.chart,t=c.halo,x,z=h&&c.markerAttribs;a=a||"";if(!(a===this.state&&!b||this.selected&&"select"!==a||!1===f.enabled||a&&(m||p&&!1===
n.enabled)||a&&v.states&&v.states[a]&&!1===v.states[a].enabled)){this.state=a;z&&(x=c.markerAttribs(this,a));if(this.graphic){g&&this.graphic.removeClass("highcharts-point-"+g);a&&this.graphic.addClass("highcharts-point-"+a);if(!d.styledMode){var r=c.pointAttribs(this,a);var A=k(d.options.chart.animation,f.animation);c.options.inactiveOtherPoints&&((this.dataLabels||[]).forEach(function(a){a&&a.animate({opacity:r.opacity},A)}),this.connector&&this.connector.animate({opacity:r.opacity},A));this.graphic.animate(r,
A)}x&&this.graphic.animate(x,k(d.options.chart.animation,n.animation,h.animation));q&&q.hide()}else{if(a&&n){g=v.symbol||c.symbol;q&&q.currentSymbol!==g&&(q=q.destroy());if(x)if(q)q[b?"animate":"attr"]({x:x.x,y:x.y});else g&&(c.stateMarkerGraphic=q=d.renderer.symbol(g,x.x,x.y,x.width,x.height).add(c.markerGroup),q.currentSymbol=g);!d.styledMode&&q&&q.attr(c.pointAttribs(this,a))}q&&(q[a&&this.isInside?"show":"hide"](),q.element.point=this)}a=f.halo;f=(q=this.graphic||q)&&q.visibility||"inherit";a&&
a.size&&q&&"hidden"!==f&&!this.isCluster?(t||(c.halo=t=d.renderer.path().add(q.parentGroup)),t.show()[b?"animate":"attr"]({d:this.haloPath(a.size)}),t.attr({"class":"highcharts-halo highcharts-color-"+k(this.colorIndex,c.colorIndex)+(this.className?" "+this.className:""),visibility:f,zIndex:-1}),t.point=this,d.styledMode||t.attr(B({fill:this.color||c.color,"fill-opacity":a.opacity},a.attributes))):t&&t.point&&t.point.haloPath&&t.animate({d:t.point.haloPath(0)},null,t.hide);L(this,"afterSetState")}},
haloPath:function(a){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-a,this.plotY-a,2*a,2*a)}});B(g.prototype,{onMouseOver:function(){var a=this.chart,b=a.hoverSeries;if(b&&b!==this)b.onMouseOut();this.options.events.mouseOver&&L(this,"mouseOver");this.setState("hover");a.hoverSeries=this},onMouseOut:function(){var a=this.options,b=this.chart,c=b.tooltip,e=b.hoverPoint;b.hoverSeries=null;if(e)e.onMouseOut();this&&a.events.mouseOut&&L(this,"mouseOut");!c||this.stickyTracking||
c.shared&&!this.noSharedTooltip||c.hide();b.series.forEach(function(a){a.setState("",!0)})},setState:function(a,b){var c=this,e=c.options,g=c.graph,h=e.inactiveOtherPoints,f=e.states,p=e.lineWidth,n=e.opacity,m=k(f[a||"normal"]&&f[a||"normal"].animation,c.chart.options.chart.animation);e=0;a=a||"";if(c.state!==a&&([c.group,c.markerGroup,c.dataLabelsGroup].forEach(function(b){b&&(c.state&&b.removeClass("highcharts-series-"+c.state),a&&b.addClass("highcharts-series-"+a))}),c.state=a,!c.chart.styledMode)){if(f[a]&&
!1===f[a].enabled)return;a&&(p=f[a].lineWidth||p+(f[a].lineWidthPlus||0),n=k(f[a].opacity,n));if(g&&!g.dashstyle)for(f={"stroke-width":p},g.animate(f,m);c["zone-graph-"+e];)c["zone-graph-"+e].attr(f),e+=1;h||[c.group,c.markerGroup,c.dataLabelsGroup,c.labelBySeries].forEach(function(a){a&&a.animate({opacity:n},m)})}b&&h&&c.points&&c.setAllPointsToState(a)},setAllPointsToState:function(a){this.points.forEach(function(b){b.setState&&b.setState(a)})},setVisible:function(a,b){var c=this,e=c.chart,g=c.legendItem,
h=e.options.chart.ignoreHiddenSeries,f=c.visible;var k=(c.visible=a=c.options.visible=c.userOptions.visible="undefined"===typeof a?!f:a)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(a){if(c[a])c[a][k]()});if(e.hoverSeries===c||(e.hoverPoint&&e.hoverPoint.series)===c)c.onMouseOut();g&&e.legend.colorizeItem(c,a);c.isDirty=!0;c.options.stacking&&e.series.forEach(function(a){a.options.stacking&&a.visible&&(a.isDirty=!0)});c.linkedSeries.forEach(function(b){b.setVisible(a,
!1)});h&&(e.isDirtyBox=!0);L(c,k);!1!==b&&e.redraw()},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(a){this.selected=a=this.options.selected="undefined"===typeof a?!this.selected:a;this.checkbox&&(this.checkbox.checked=a);L(this,a?"select":"unselect")},drawTracker:f.drawTrackerGraph})});P(y,"parts/Responsive.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.find,r=m.isArray,E=m.isObject,N=m.merge,F=m.objectEach,C=m.pick,B=m.splat,
L=m.uniqueKey;f=f.Chart;f.prototype.setResponsive=function(f,m){var x=this.options.responsive,t=[],n=this.currentResponsive;!m&&x&&x.rules&&x.rules.forEach(function(f){"undefined"===typeof f._id&&(f._id=L());this.matchResponsiveRule(f,t)},this);m=N.apply(0,t.map(function(f){return y(x.rules,function(k){return k._id===f}).chartOptions}));m.isResponsiveOptions=!0;t=t.toString()||void 0;t!==(n&&n.ruleIds)&&(n&&this.update(n.undoOptions,f,!0),t?(n=this.currentOptions(m),n.isResponsiveOptions=!0,this.currentResponsive=
{ruleIds:t,mergedOptions:m,undoOptions:n},this.update(m,f,!0)):this.currentResponsive=void 0)};f.prototype.matchResponsiveRule=function(f,m){var x=f.condition;(x.callback||function(){return this.chartWidth<=C(x.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=C(x.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=C(x.minWidth,0)&&this.chartHeight>=C(x.minHeight,0)}).call(this)&&m.push(f._id)};f.prototype.currentOptions=function(f){function m(f,k,q,e){var c;F(f,function(g,f){if(!e&&-1<z.collectionsWithUpdate.indexOf(f))for(g=
B(g),q[f]=[],c=0;c<g.length;c++)k[f][c]&&(q[f][c]={},m(g[c],k[f][c],q[f][c],e+1));else E(g)?(q[f]=r(g)?[]:{},m(g,k[f]||{},q[f],e+1)):q[f]="undefined"===typeof k[f]?null:k[f]})}var z=this,t={};m(f,this.options,t,0);return t}});P(y,"masters/highcharts.src.js",[y["parts/Globals.js"]],function(f){return f});P(y,"parts/Scrollbar.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.addEvent,r=m.correctFloat,E=m.defined,N=m.destroyObjectProperties,F=m.fireEvent,C=m.merge,B=m.pick,L=
m.removeEvent;m=f.Axis;var z=f.defaultOptions,x=f.hasTouch,A,t={height:f.isTouchDevice?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,margin:10,minWidth:6,step:.2,zIndex:3,barBackgroundColor:"#cccccc",barBorderWidth:1,barBorderColor:"#cccccc",buttonArrowColor:"#333333",buttonBackgroundColor:"#e6e6e6",buttonBorderColor:"#cccccc",buttonBorderWidth:1,rifleColor:"#333333",trackBackgroundColor:"#f2f2f2",trackBorderColor:"#f2f2f2",trackBorderWidth:1};z.scrollbar=C(!0,t,z.scrollbar);f.swapXY=
A=function(f,n){var e=f.length;if(n)for(n=0;n<e;n+=3){var c=f[n+1];f[n+1]=f[n+2];f[n+2]=c}return f};var n=function(){function f(f,e,c){this._events=[];this.from=this.chartY=this.chartX=0;this.scrollbar=this.group=void 0;this.scrollbarButtons=[];this.scrollbarGroup=void 0;this.scrollbarLeft=0;this.scrollbarRifles=void 0;this.scrollbarStrokeWidth=1;this.to=this.size=this.scrollbarTop=0;this.track=void 0;this.trackBorderWidth=1;this.userOptions={};this.y=this.x=0;this.chart=c;this.options=e;this.renderer=
c.renderer;this.init(f,e,c)}f.prototype.addEvents=function(){var f=this.options.inverted?[1,0]:[0,1],e=this.scrollbarButtons,c=this.scrollbarGroup.element,g=this.track.element,k=this.mouseDownHandler.bind(this),b=this.mouseMoveHandler.bind(this),a=this.mouseUpHandler.bind(this);f=[[e[f[0]].element,"click",this.buttonToMinClick.bind(this)],[e[f[1]].element,"click",this.buttonToMaxClick.bind(this)],[g,"click",this.trackClick.bind(this)],[c,"mousedown",k],[c.ownerDocument,"mousemove",b],[c.ownerDocument,
"mouseup",a]];x&&f.push([c,"touchstart",k],[c.ownerDocument,"touchmove",b],[c.ownerDocument,"touchend",a]);f.forEach(function(a){y.apply(null,a)});this._events=f};f.prototype.buttonToMaxClick=function(f){var e=(this.to-this.from)*B(this.options.step,.2);this.updatePosition(this.from+e,this.to+e);F(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:f})};f.prototype.buttonToMinClick=function(f){var e=r(this.to-this.from)*B(this.options.step,.2);this.updatePosition(r(this.from-e),
r(this.to-e));F(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:f})};f.prototype.cursorToScrollbarPosition=function(f){var e=this.options;e=e.minWidth>this.calculatedWidth?e.minWidth:0;return{chartX:(f.chartX-this.x-this.xOffset)/(this.barWidth-e),chartY:(f.chartY-this.y-this.yOffset)/(this.barWidth-e)}};f.prototype.destroy=function(){var f=this.chart.scroller;this.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(e){this[e]&&this[e].destroy&&
(this[e]=this[e].destroy())},this);f&&this===f.scrollbar&&(f.scrollbar=null,N(f.scrollbarButtons))};f.prototype.drawScrollbarButton=function(f){var e=this.renderer,c=this.scrollbarButtons,g=this.options,k=this.size;var b=e.g().add(this.group);c.push(b);b=e.rect().addClass("highcharts-scrollbar-button").add(b);this.chart.styledMode||b.attr({stroke:g.buttonBorderColor,"stroke-width":g.buttonBorderWidth,fill:g.buttonBackgroundColor});b.attr(b.crisp({x:-.5,y:-.5,width:k+1,height:k+1,r:g.buttonBorderRadius},
b.strokeWidth()));b=e.path(A(["M",k/2+(f?-1:1),k/2-3,"L",k/2+(f?-1:1),k/2+3,"L",k/2+(f?2:-2),k/2],g.vertical)).addClass("highcharts-scrollbar-arrow").add(c[f]);this.chart.styledMode||b.attr({fill:g.buttonArrowColor})};f.prototype.init=function(f,e,c){this.scrollbarButtons=[];this.renderer=f;this.userOptions=e;this.options=C(t,e);this.chart=c;this.size=B(this.options.size,this.options.height);e.enabled&&(this.render(),this.addEvents())};f.prototype.mouseDownHandler=function(f){f=this.chart.pointer.normalize(f);
f=this.cursorToScrollbarPosition(f);this.chartX=f.chartX;this.chartY=f.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=!0};f.prototype.mouseMoveHandler=function(f){var e=this.chart.pointer.normalize(f),c=this.options.vertical?"chartY":"chartX",g=this.initPositions||[];!this.grabbedCenter||f.touches&&0===f.touches[0][c]||(e=this.cursorToScrollbarPosition(e)[c],c=this[c],c=e-c,this.hasDragged=!0,this.updatePosition(g[0]+c,g[1]+c),this.hasDragged&&F(this,"changed",{from:this.from,to:this.to,
trigger:"scrollbar",DOMType:f.type,DOMEvent:f}))};f.prototype.mouseUpHandler=function(f){this.hasDragged&&F(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:f.type,DOMEvent:f});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};f.prototype.position=function(f,e,c,g){var k=this.options.vertical,b=0,a=this.rendered?"animate":"attr";this.x=f;this.y=e+this.trackBorderWidth;this.width=c;this.xOffset=this.height=g;this.yOffset=b;k?(this.width=this.yOffset=c=b=this.size,
this.xOffset=e=0,this.barWidth=g-2*c,this.x=f+=this.options.margin):(this.height=this.xOffset=g=e=this.size,this.barWidth=c-2*g,this.y+=this.options.margin);this.group[a]({translateX:f,translateY:this.y});this.track[a]({width:c,height:g});this.scrollbarButtons[1][a]({translateX:k?0:c-e,translateY:k?g-b:0})};f.prototype.removeEvents=function(){this._events.forEach(function(f){L.apply(null,f)});this._events.length=0};f.prototype.render=function(){var f=this.renderer,e=this.options,c=this.size,g=this.chart.styledMode,
k;this.group=k=f.g("scrollbar").attr({zIndex:e.zIndex,translateY:-99999}).add();this.track=f.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:e.trackBorderRadius||0,height:c,width:c}).add(k);g||this.track.attr({fill:e.trackBackgroundColor,stroke:e.trackBorderColor,"stroke-width":e.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%2/2});this.scrollbarGroup=f.g().add(k);this.scrollbar=f.rect().addClass("highcharts-scrollbar-thumb").attr({height:c,
width:c,r:e.barBorderRadius||0}).add(this.scrollbarGroup);this.scrollbarRifles=f.path(A(["M",-3,c/4,"L",-3,2*c/3,"M",0,c/4,"L",0,2*c/3,"M",3,c/4,"L",3,2*c/3],e.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);g||(this.scrollbar.attr({fill:e.barBackgroundColor,stroke:e.barBorderColor,"stroke-width":e.barBorderWidth}),this.scrollbarRifles.attr({stroke:e.rifleColor,"stroke-width":1}));this.scrollbarStrokeWidth=this.scrollbar.strokeWidth();this.scrollbarGroup.translate(-this.scrollbarStrokeWidth%
2/2,-this.scrollbarStrokeWidth%2/2);this.drawScrollbarButton(0);this.drawScrollbarButton(1)};f.prototype.setRange=function(f,e){var c=this.options,g=c.vertical,k=c.minWidth,b=this.barWidth,a,n=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(E(b)){f=Math.max(f,0);var m=Math.ceil(b*f);this.calculatedWidth=a=r(b*Math.min(e,1)-m);a<k&&(m=(b-k+a)*f,a=k);k=Math.floor(m+this.xOffset+this.yOffset);b=a/2-.5;this.from=f;this.to=e;g?(this.scrollbarGroup[n]({translateY:k}),
this.scrollbar[n]({height:a}),this.scrollbarRifles[n]({translateY:b}),this.scrollbarTop=k,this.scrollbarLeft=0):(this.scrollbarGroup[n]({translateX:k}),this.scrollbar[n]({width:a}),this.scrollbarRifles[n]({translateX:b}),this.scrollbarLeft=k,this.scrollbarTop=0);12>=a?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===c.showFull&&(0>=f&&1<=e?this.group.hide():this.group.show());this.rendered=!0}};f.prototype.trackClick=function(f){var e=this.chart.pointer.normalize(f),c=this.to-this.from,
g=this.y+this.scrollbarTop,k=this.x+this.scrollbarLeft;this.options.vertical&&e.chartY>g||!this.options.vertical&&e.chartX>k?this.updatePosition(this.from+c,this.to+c):this.updatePosition(this.from-c,this.to-c);F(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:f})};f.prototype.update=function(f){this.destroy();this.init(this.chart.renderer,C(!0,this.options,f),this.chart)};f.prototype.updatePosition=function(f,e){1<e&&(f=r(1-r(e-f)),e=1);0>f&&(e=r(e-f),f=0);this.from=f;this.to=
e};return f}();f.Scrollbar||(y(m,"afterInit",function(){var k=this;k.options&&k.options.scrollbar&&k.options.scrollbar.enabled&&(k.options.scrollbar.vertical=!k.horiz,k.options.startOnTick=k.options.endOnTick=!1,k.scrollbar=new n(k.chart.renderer,k.options.scrollbar,k.chart),y(k.scrollbar,"changed",function(n){var e=Math.min(B(k.options.min,k.min),k.min,k.dataMin),c=Math.max(B(k.options.max,k.max),k.max,k.dataMax)-e;if(k.horiz&&!k.reversed||!k.horiz&&k.reversed){var g=e+c*this.to;e+=c*this.from}else g=
e+c*(1-this.from),e+=c*(1-this.to);B(this.options.liveRedraw,f.svg&&!f.isTouchDevice&&!this.chart.isBoosting)||"mouseup"===n.DOMType||!E(n.DOMType)?k.setExtremes(e,g,!0,"mousemove"!==n.DOMType,n):this.setRange(this.from,this.to)}))}),y(m,"afterRender",function(){var f=Math.min(B(this.options.min,this.min),this.min,B(this.dataMin,this.min)),n=Math.max(B(this.options.max,this.max),this.max,B(this.dataMax,this.max)),e=this.scrollbar,c=this.axisTitleMargin+(this.titleOffset||0),g=this.chart.scrollbarsOffsets,
p=this.options.margin||0;e&&(this.horiz?(this.opposite||(g[1]+=c),e.position(this.left,this.top+this.height+2+g[1]-(this.opposite?p:0),this.width,this.height),this.opposite||(g[1]+=p),c=1):(this.opposite&&(g[0]+=c),e.position(this.left+this.width+2+g[0]-(this.opposite?0:p),this.top,this.width,this.height),this.opposite&&(g[0]+=p),c=0),g[c]+=e.size+e.options.margin,isNaN(f)||isNaN(n)||!E(this.min)||!E(this.max)||this.min===this.max?e.setRange(0,1):(g=(this.min-f)/(n-f),f=(this.max-f)/(n-f),this.horiz&&
!this.reversed||!this.horiz&&this.reversed?e.setRange(g,f):e.setRange(1-f,1-g)))}),y(m,"afterGetOffset",function(){var f=this.horiz?2:1,n=this.scrollbar;n&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[f]+=n.size+n.options.margin)}),f.Scrollbar=n);return f.Scrollbar});P(y,"parts/Navigator.js",[y["parts/Globals.js"],y["parts/Color.js"],y["parts/Scrollbar.js"],y["parts/Utilities.js"]],function(f,m,y,r){m=m.parse;var E=r.addEvent,J=r.clamp,F=r.correctFloat,C=r.defined,B=r.destroyObjectProperties,
L=r.erase,z=r.extend,x=r.find,A=r.isArray,t=r.isNumber,n=r.merge,k=r.pick,q=r.removeEvent,e=r.splat,c=f.Axis;r=f.Chart;var g=f.defaultOptions,p=f.hasTouch,b=f.isTouchDevice,a=f.Series,v=function(a){for(var b=[],c=1;c<arguments.length;c++)b[c-1]=arguments[c];b=[].filter.call(b,t);if(b.length)return Math[a].apply(0,b)};var D="undefined"===typeof f.seriesTypes.areaspline?"line":"areaspline";z(g,{navigator:{height:40,margin:25,maskInside:!0,handles:{width:7,height:15,symbols:["navigator-handle","navigator-handle"],
enabled:!0,lineWidth:1,backgroundColor:"#f2f2f2",borderColor:"#999999"},maskFill:m("#6685c2").setOpacity(.3).get(),outlineColor:"#cccccc",outlineWidth:1,series:{type:D,fillOpacity:.05,lineWidth:1,compare:null,dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,smoothed:!0,units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,
zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{overscroll:0,className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"#e6e6e6",gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:"#999999"},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},
tickLength:0,tickWidth:0}}});f.Renderer.prototype.symbols["navigator-handle"]=function(a,b,c,e,f){a=f.width/2;b=Math.round(a/3)+.5;f=f.height;return["M",-a-1,.5,"L",a,.5,"L",a,f+.5,"L",-a-1,f+.5,"L",-a-1,.5,"M",-b,4,"L",-b,f-3,"M",b-1,4,"L",b-1,f-3]};c.prototype.toFixedRange=function(a,b,c,e){var h=this.chart&&this.chart.fixedRange,f=(this.pointRange||0)/2;a=k(c,this.translate(a,!0,!this.horiz));b=k(e,this.translate(b,!0,!this.horiz));var g=h&&(b-a)/h;C(c)||(a=F(a+f));C(e)||(b=F(b-f));.7<g&&1.3>g&&
(e?a=b-h:b=a+h);t(a)&&t(b)||(a=b=void 0);return{min:a,max:b}};var w=function(){function a(a){this.zoomedMin=this.zoomedMax=this.yAxis=this.xAxis=this.top=this.size=this.shades=this.rendered=this.range=this.outlineHeight=this.outline=this.opposite=this.navigatorSize=this.navigatorSeries=this.navigatorOptions=this.navigatorGroup=this.navigatorEnabled=this.left=this.height=this.handles=this.chart=this.baseSeries=void 0;this.init(a)}a.prototype.drawHandle=function(a,b,c,e){var h=this.navigatorOptions.handles.height;
this.handles[b][e](c?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(a,10)+.5-h)}:{translateX:Math.round(this.left+parseInt(a,10)),translateY:Math.round(this.top+this.height/2-h/2-1)})};a.prototype.drawOutline=function(a,b,c,e){var h=this.navigatorOptions.maskInside,f=this.outline.strokeWidth(),d=f/2;f=f%2/2;var g=this.outlineHeight,l=this.scrollbarHeight,k=this.size,p=this.left-l,n=this.top;c?(p-=d,c=n+b+f,b=n+a+f,a=["M",p+g,n-l-f,"L",p+g,c,"L",p,c,"L",p,b,
"L",p+g,b,"L",p+g,n+k+l].concat(h?["M",p+g,c-d,"L",p+g,b+d]:[])):(a+=p+l-f,b+=p+l-f,n+=d,a=["M",p,n,"L",a,n,"L",a,n+g,"L",b,n+g,"L",b,n,"L",p+k+2*l,n].concat(h?["M",a-d,n,"L",b+d,n]:[]));this.outline[e]({d:a})};a.prototype.drawMasks=function(a,b,c,e){var h=this.left,f=this.top,d=this.height;if(c){var g=[h,h,h];var l=[f,f+a,f+b];var k=[d,d,d];var p=[a,b-a,this.size-b]}else g=[h,h+a,h+b],l=[f,f,f],k=[a,b-a,this.size-b],p=[d,d,d];this.shades.forEach(function(a,d){a[e]({x:g[d],y:l[d],width:k[d],height:p[d]})})};
a.prototype.renderElements=function(){var a=this,b=a.navigatorOptions,c=b.maskInside,e=a.chart,f=e.renderer,g,d={cursor:e.inverted?"ns-resize":"ew-resize"};a.navigatorGroup=g=f.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();[!c,c,!c].forEach(function(c,h){a.shades[h]=f.rect().addClass("highcharts-navigator-mask"+(1===h?"-inside":"-outside")).add(g);e.styledMode||a.shades[h].attr({fill:c?b.maskFill:"rgba(0,0,0,0)"}).css(1===h&&d)});a.outline=f.path().addClass("highcharts-navigator-outline").add(g);
e.styledMode||a.outline.attr({"stroke-width":b.outlineWidth,stroke:b.outlineColor});b.handles.enabled&&[0,1].forEach(function(c){b.handles.inverted=e.inverted;a.handles[c]=f.symbol(b.handles.symbols[c],-b.handles.width/2-1,0,b.handles.width,b.handles.height,b.handles);a.handles[c].attr({zIndex:7-c}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][c]).add(g);if(!e.styledMode){var h=b.handles;a.handles[c].attr({fill:h.backgroundColor,stroke:h.borderColor,"stroke-width":h.lineWidth}).css(d)}})};
a.prototype.update=function(a){(this.series||[]).forEach(function(a){a.baseSeries&&delete a.baseSeries.navigatorSeries});this.destroy();n(!0,this.chart.options.navigator,this.options,a);this.init(this.chart)};a.prototype.render=function(a,b,c,e){var h=this.chart,f=this.scrollbarHeight,d,g=this.xAxis,l=g.pointRange||0;var p=g.fake?h.xAxis[0]:g;var n=this.navigatorEnabled,u,m=this.rendered;var q=h.inverted;var w=h.xAxis[0].minRange,v=h.xAxis[0].options.maxRange;if(!this.hasDragged||C(c)){a=F(a-l/2);
b=F(b+l/2);if(!t(a)||!t(b))if(m)c=0,e=k(g.width,p.width);else return;this.left=k(g.left,h.plotLeft+f+(q?h.plotWidth:0));this.size=u=d=k(g.len,(q?h.plotHeight:h.plotWidth)-2*f);h=q?f:d+2*f;c=k(c,g.toPixels(a,!0));e=k(e,g.toPixels(b,!0));t(c)&&Infinity!==Math.abs(c)||(c=0,e=h);a=g.toValue(c,!0);b=g.toValue(e,!0);var x=Math.abs(F(b-a));x<w?this.grabbedLeft?c=g.toPixels(b-w-l,!0):this.grabbedRight&&(e=g.toPixels(a+w+l,!0)):C(v)&&F(x-l)>v&&(this.grabbedLeft?c=g.toPixels(b-v-l,!0):this.grabbedRight&&(e=
g.toPixels(a+v+l,!0)));this.zoomedMax=J(Math.max(c,e),0,u);this.zoomedMin=J(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(c,e),0,u);this.range=this.zoomedMax-this.zoomedMin;u=Math.round(this.zoomedMax);c=Math.round(this.zoomedMin);n&&(this.navigatorGroup.attr({visibility:"visible"}),m=m&&!this.hasDragged?"animate":"attr",this.drawMasks(c,u,q,m),this.drawOutline(c,u,q,m),this.navigatorOptions.handles.enabled&&(this.drawHandle(c,0,q,m),this.drawHandle(u,1,q,m)));this.scrollbar&&(q?(q=this.top-
f,p=this.left-f+(n||!p.opposite?0:(p.titleOffset||0)+p.axisTitleMargin),f=d+2*f):(q=this.top+(n?this.height:-f),p=this.left-f),this.scrollbar.position(p,q,h,f),this.scrollbar.setRange(this.zoomedMin/(d||1),this.zoomedMax/(d||1)));this.rendered=!0}};a.prototype.addMouseEvents=function(){var a=this,b=a.chart,c=b.container,e=[],f,g;a.mouseMoveHandler=f=function(b){a.onMouseMove(b)};a.mouseUpHandler=g=function(b){a.onMouseUp(b)};e=a.getPartsEvents("mousedown");e.push(E(b.renderTo,"mousemove",f),E(c.ownerDocument,
"mouseup",g));p&&(e.push(E(b.renderTo,"touchmove",f),E(c.ownerDocument,"touchend",g)),e.concat(a.getPartsEvents("touchstart")));a.eventsToUnbind=e;a.series&&a.series[0]&&e.push(E(a.series[0].xAxis,"foundExtremes",function(){b.navigator.modifyNavigatorAxisExtremes()}))};a.prototype.getPartsEvents=function(a){var b=this,c=[];["shades","handles"].forEach(function(e){b[e].forEach(function(h,f){c.push(E(h.element,a,function(a){b[e+"Mousedown"](a,f)}))})});return c};a.prototype.shadesMousedown=function(a,
b){a=this.chart.pointer.normalize(a);var c=this.chart,e=this.xAxis,h=this.zoomedMin,f=this.left,d=this.size,g=this.range,l=a.chartX;c.inverted&&(l=a.chartY,f=this.top);if(1===b)this.grabbedCenter=l,this.fixedWidth=g,this.dragOffset=l-h;else{a=l-f-g/2;if(0===b)a=Math.max(0,a);else if(2===b&&a+g>=d)if(a=d-g,this.reversedExtremes){a-=g;var k=this.getUnionExtremes().dataMin}else var p=this.getUnionExtremes().dataMax;a!==h&&(this.fixedWidth=g,b=e.toFixedRange(a,a+g,k,p),C(b.min)&&c.xAxis[0].setExtremes(Math.min(b.min,
b.max),Math.max(b.min,b.max),!0,null,{trigger:"navigator"}))}};a.prototype.handlesMousedown=function(a,b){this.chart.pointer.normalize(a);a=this.chart;var c=a.xAxis[0],e=this.reversedExtremes;0===b?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=e?c.min:c.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=e?c.max:c.min);a.fixedRange=null};a.prototype.onMouseMove=function(a){var c=this,e=c.chart,h=c.left,g=c.navigatorSize,l=c.range,d=c.dragOffset,
p=e.inverted;a.touches&&0===a.touches[0].pageX||(a=e.pointer.normalize(a),e=a.chartX,p&&(h=c.top,e=a.chartY),c.grabbedLeft?(c.hasDragged=!0,c.render(0,0,e-h,c.otherHandlePos)):c.grabbedRight?(c.hasDragged=!0,c.render(0,0,c.otherHandlePos,e-h)):c.grabbedCenter&&(c.hasDragged=!0,e<d?e=d:e>g+d-l&&(e=g+d-l),c.render(0,0,e-d,e-d+l)),c.hasDragged&&c.scrollbar&&k(c.scrollbar.options.liveRedraw,f.svg&&!b&&!this.chart.isBoosting)&&(a.DOMType=a.type,setTimeout(function(){c.onMouseUp(a)},0)))};a.prototype.onMouseUp=
function(a){var b=this.chart,c=this.xAxis,e=this.scrollbar,f=a.DOMEvent||a,h=b.inverted,d=this.rendered&&!this.hasDragged?"animate":"attr",g=Math.round(this.zoomedMax),l=Math.round(this.zoomedMin);if(this.hasDragged&&(!e||!e.hasDragged)||"scrollbar"===a.trigger){e=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var k=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var p=this.fixedExtreme;this.zoomedMax===this.size&&(p=this.reversedExtremes?e.dataMin:e.dataMax);0===this.zoomedMin&&
(k=this.reversedExtremes?e.dataMax:e.dataMin);c=c.toFixedRange(this.zoomedMin,this.zoomedMax,k,p);C(c.min)&&b.xAxis[0].setExtremes(Math.min(c.min,c.max),Math.max(c.min,c.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:f})}"mousemove"!==a.DOMType&&"touchmove"!==a.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null);this.navigatorEnabled&&(this.shades&&this.drawMasks(l,
g,h,d),this.outline&&this.drawOutline(l,g,h,d),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(l,0,h,d),this.drawHandle(g,1,h,d)))};a.prototype.removeEvents=function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};a.prototype.removeBaseSeriesEvents=function(){var a=this.baseSeries||[];this.navigatorEnabled&&a[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&
a.forEach(function(a){q(a,"updatedData",this.updatedDataHandler)},this),a[0].xAxis&&q(a[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};a.prototype.init=function(a){var b=a.options,e=b.navigator,f=e.enabled,h=b.scrollbar,g=h.enabled;b=f?e.height:0;var d=g?h.height:0;this.handles=[];this.shades=[];this.chart=a;this.setBaseSeries();this.height=b;this.scrollbarHeight=d;this.scrollbarEnabled=g;this.navigatorEnabled=f;this.navigatorOptions=e;this.scrollbarOptions=h;this.outlineHeight=b+d;this.opposite=
k(e.opposite,!(f||!a.inverted));var l=this;f=l.baseSeries;h=a.xAxis.length;g=a.yAxis.length;var p=f&&f[0]&&f[0].xAxis||a.xAxis[0]||{options:{}};a.isDirtyBox=!0;l.navigatorEnabled?(l.xAxis=new c(a,n({breaks:p.options.breaks,ordinal:p.options.ordinal},e.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:h,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},a.inverted?{offsets:[d,0,-d,0],width:b}:{offsets:[0,
-d,0,d],height:b})),l.yAxis=new c(a,n(e.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:g,isInternal:!0,zoomEnabled:!1},a.inverted?{width:b}:{height:b})),f||e.series.data?l.updateNavigatorSeries(!1):0===a.series.length&&(l.unbindRedraw=E(a,"beforeRedraw",function(){0<a.series.length&&!l.series&&(l.setBaseSeries(),l.unbindRedraw())})),l.reversedExtremes=a.inverted&&!l.xAxis.reversed||!a.inverted&&l.xAxis.reversed,l.renderElements(),l.addMouseEvents()):l.xAxis={translate:function(b,c){var e=
a.xAxis[0],f=e.getExtremes(),h=e.len-2*d,g=v("min",e.options.min,f.dataMin);e=v("max",e.options.max,f.dataMax)-g;return c?b*e/h+g:h*(b-g)/e},toPixels:function(a){return this.translate(a)},toValue:function(a){return this.translate(a,!0)},toFixedRange:c.prototype.toFixedRange,fake:!0};a.options.scrollbar.enabled&&(a.scrollbar=l.scrollbar=new y(a.renderer,n(a.options.scrollbar,{margin:l.navigatorEnabled?0:10,vertical:a.inverted}),a),E(l.scrollbar,"changed",function(b){var d=l.size,c=d*this.to;d*=this.from;
l.hasDragged=l.scrollbar.hasDragged;l.render(0,0,d,c);(a.options.scrollbar.liveRedraw||"mousemove"!==b.DOMType&&"touchmove"!==b.DOMType)&&setTimeout(function(){l.onMouseUp(b)})}));l.addBaseSeriesEvents();l.addChartEvents()};a.prototype.getUnionExtremes=function(a){var b=this.chart.xAxis[0],c=this.xAxis,e=c.options,f=b.options,h;a&&null===b.dataMin||(h={dataMin:k(e&&e.min,v("min",f.min,b.dataMin,c.dataMin,c.min)),dataMax:k(e&&e.max,v("max",f.max,b.dataMax,c.dataMax,c.max))});return h};a.prototype.setBaseSeries=
function(a,b){var c=this.chart,e=this.baseSeries=[];a=a||c.options&&c.options.navigator.baseSeries||(c.series.length?x(c.series,function(a){return!a.options.isInternal}).index:0);(c.series||[]).forEach(function(b,c){b.options.isInternal||!b.options.showInNavigator&&(c!==a&&b.options.id!==a||!1===b.options.showInNavigator)||e.push(b)});this.xAxis&&!this.xAxis.fake&&this.updateNavigatorSeries(!0,b)};a.prototype.updateNavigatorSeries=function(a,b){var c=this,f=c.chart,h=c.baseSeries,l,d,p=c.navigatorOptions.series,
m,u={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:"navigator-x-axis",yAxis:"navigator-y-axis",showInLegend:!1,stacking:!1,isInternal:!0,states:{inactive:{opacity:1}}},w=c.series=(c.series||[]).filter(function(a){var b=a.baseSeries;return 0>h.indexOf(b)?(b&&(q(b,"updatedData",c.updatedDataHandler),delete b.navigatorSeries),a.chart&&a.destroy(),!1):!0});h&&h.length&&h.forEach(function(a){var e=a.navigatorSeries,q=z({color:a.color,visible:a.visible},A(p)?g.navigator.series:
p);e&&!1===c.navigatorOptions.adaptToUpdatedData||(u.name="Navigator "+h.length,l=a.options||{},m=l.navigatorOptions||{},d=n(l,u,q,m),d.pointRange=k(q.pointRange,m.pointRange,g.plotOptions[d.type||"line"].pointRange),q=m.data||q.data,c.hasNavigatorData=c.hasNavigatorData||!!q,d.data=q||l.data&&l.data.slice(0),e&&e.options?e.update(d,b):(a.navigatorSeries=f.initSeries(d),a.navigatorSeries.baseSeries=a,w.push(a.navigatorSeries)))});if(p.data&&(!h||!h.length)||A(p))c.hasNavigatorData=!1,p=e(p),p.forEach(function(a,
b){u.name="Navigator "+(w.length+1);d=n(g.navigator.series,{color:f.series[b]&&!f.series[b].options.isInternal&&f.series[b].color||f.options.colors[b]||f.options.colors[0]},u,a);d.data=a.data;d.data&&(c.hasNavigatorData=!0,w.push(f.initSeries(d)))});a&&this.addBaseSeriesEvents()};a.prototype.addBaseSeriesEvents=function(){var a=this,b=a.baseSeries||[];b[0]&&b[0].xAxis&&E(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes);b.forEach(function(b){E(b,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,
!1)});E(b,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)});!1!==this.navigatorOptions.adaptToUpdatedData&&b.xAxis&&E(b,"updatedData",this.updatedDataHandler);E(b,"remove",function(){this.navigatorSeries&&(L(a.series,this.navigatorSeries),C(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)})},this)};a.prototype.getBaseSeriesMin=function(a){return this.baseSeries.reduce(function(a,b){return Math.min(a,b.xData?b.xData[0]:a)},a)};
a.prototype.modifyNavigatorAxisExtremes=function(){var a=this.xAxis,b;"undefined"!==typeof a.getExtremes&&(!(b=this.getUnionExtremes(!0))||b.dataMin===a.min&&b.dataMax===a.max||(a.min=b.dataMin,a.max=b.dataMax))};a.prototype.modifyBaseAxisExtremes=function(){var a=this.chart.navigator,b=this.getExtremes(),c=b.dataMin,e=b.dataMax;b=b.max-b.min;var f=a.stickToMin,g=a.stickToMax,d=k(this.options.overscroll,0),l=a.series&&a.series[0],p=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(f){var n=
c;var m=n+b}g&&(m=e+d,f||(n=Math.max(m-b,a.getBaseSeriesMin(l&&l.xData?l.xData[0]:-Number.MAX_VALUE))));p&&(f||g)&&t(n)&&(this.min=this.userMin=n,this.max=this.userMax=m)}a.stickToMin=a.stickToMax=null};a.prototype.updatedDataHandler=function(){var a=this.chart.navigator,b=this.navigatorSeries,c=a.getBaseSeriesMin(this.xData[0]);a.stickToMax=a.reversedExtremes?0===Math.round(a.zoomedMin):Math.round(a.zoomedMax)>=Math.round(a.size);a.stickToMin=t(this.xAxis.min)&&this.xAxis.min<=c&&(!this.chart.fixedRange||
!a.stickToMax);b&&!a.hasNavigatorData&&(b.options.pointStart=this.xData[0],b.setData(this.options.data,!1,null,!1))};a.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(E(this.chart,"redraw",function(){var a=this.navigator,b=a&&(a.baseSeries&&a.baseSeries[0]&&a.baseSeries[0].xAxis||a.scrollbar&&this.xAxis[0]);b&&a.render(b.min,b.max)}),E(this.chart,"getMargins",function(){var a=this.navigator,b=a.opposite?"plotTop":"marginBottom";this.inverted&&
(b=a.opposite?"marginRight":"plotLeft");this[b]=(this[b]||0)+(a.navigatorEnabled||!this.inverted?a.outlineHeight:0)+a.navigatorOptions.margin}))};a.prototype.destroy=function(){this.removeEvents();this.xAxis&&(L(this.chart.xAxis,this.xAxis),L(this.chart.axes,this.xAxis));this.yAxis&&(L(this.chart.yAxis,this.yAxis),L(this.chart.axes,this.yAxis));(this.series||[]).forEach(function(a){a.destroy&&a.destroy()});"series xAxis yAxis shades outline scrollbarTrack scrollbarRifles scrollbarGroup scrollbar navigatorGroup rendered".split(" ").forEach(function(a){this[a]&&
this[a].destroy&&this[a].destroy();this[a]=null},this);[this.handles].forEach(function(a){B(a)},this)};return a}();f.Navigator||(f.Navigator=w,E(c,"zoom",function(a){var c=this.chart.options,e=c.chart.zoomType,f=c.chart.pinchType,g=c.navigator;c=c.rangeSelector;this.isXAxis&&(g&&g.enabled||c&&c.enabled)&&("y"===e?a.zoomed=!1:(!b&&"xy"===e||b&&"xy"===f)&&this.options.range&&(e=this.previousZoom,C(a.newMin)?this.previousZoom=[this.min,this.max]:e&&(a.newMin=e[0],a.newMax=e[1],delete this.previousZoom)));
"undefined"!==typeof a.zoomed&&a.preventDefault()}),E(r,"beforeShowResetZoom",function(){var a=this.options,c=a.navigator,e=a.rangeSelector;if((c&&c.enabled||e&&e.enabled)&&(!b&&"x"===a.chart.zoomType||b&&"x"===a.chart.pinchType))return!1}),E(r,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new w(this)}),E(r,"afterSetChartSize",function(){var a=this.legend,b=this.navigator;if(b){var c=a&&a.options;var e=b.xAxis;var f=b.yAxis;var g=
b.scrollbarHeight;this.inverted?(b.left=b.opposite?this.chartWidth-g-b.height:this.spacing[3]+g,b.top=this.plotTop+g):(b.left=this.plotLeft+g,b.top=b.navigatorOptions.top||this.chartHeight-b.height-g-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(c&&"bottom"===c.verticalAlign&&c.enabled&&!c.floating?a.legendHeight+k(c.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0));e&&f&&(this.inverted?e.options.left=f.options.left=b.left:e.options.top=f.options.top=
b.top,e.setAxisSize(),f.setAxisSize())}}),E(r,"update",function(a){var b=a.options.navigator||{},c=a.options.scrollbar||{};this.navigator||this.scroller||!b.enabled&&!c.enabled||(n(!0,this.options.navigator,b),n(!0,this.options.scrollbar,c),delete a.options.navigator,delete a.options.scrollbar)}),E(r,"afterUpdate",function(a){this.navigator||this.scroller||!this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new w(this),k(a.redraw,!0)&&this.redraw(a.animation))}),
E(r,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),E(a,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),r.prototype.callbacks.push(function(a){var b=a.navigator;b&&a.xAxis[0]&&(a=a.xAxis[0].getExtremes(),b.render(a.min,a.max))}));f.Navigator=w;return f.Navigator});P(y,"parts/OrdinalAxis.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.addEvent,r=m.css,E=m.defined,N=m.extend,
F=m.pick,C=m.timeUnits,B=f.Axis;m=f.Chart;var L=f.noop;y(f.Series,"updatedData",function(){var f=this.xAxis;f&&f.options.ordinal&&delete f.ordinalIndex});B.prototype.getTimeTicks=function(f,m,r,t,n,k,q){var e=0,c,g,p={},b=[],a=-Number.MAX_VALUE,v=this.options.tickPixelInterval,x=this.chart.time,w=[];if(!this.options.ordinal&&!this.options.breaks||!n||3>n.length||"undefined"===typeof m)return x.getTimeTicks.apply(x,arguments);var l=n.length;for(c=0;c<l;c++){var h=c&&n[c-1]>r;n[c]<m&&(e=c);if(c===l-
1||n[c+1]-n[c]>5*k||h){if(n[c]>a){for(g=x.getTimeTicks(f,n[e],n[c],t);g.length&&g[0]<=a;)g.shift();g.length&&(a=g[g.length-1]);w.push(b.length);b=b.concat(g)}e=c+1}if(h)break}g=g.info;if(q&&g.unitRange<=C.hour){c=b.length-1;for(e=1;e<c;e++)if(x.dateFormat("%d",b[e])!==x.dateFormat("%d",b[e-1])){p[b[e]]="day";var u=!0}u&&(p[b[0]]="day");g.higherRanks=p}g.segmentStarts=w;b.info=g;if(q&&E(v)){e=w=b.length;u=[];var z;for(x=[];e--;)c=this.translate(b[e]),z&&(x[e]=z-c),u[e]=z=c;x.sort();x=x[Math.floor(x.length/
2)];x<.6*v&&(x=null);e=b[w-1]>r?w-1:w;for(z=void 0;e--;)c=u[e],w=Math.abs(z-c),z&&w<.8*v&&(null===x||w<.8*x)?(p[b[e]]&&!p[b[e+1]]?(w=e+1,z=c):w=e,b.splice(w,1)):z=c}return b};N(B.prototype,{beforeSetTickPositions:function(){var f=[],m,r=!1,t=this.getExtremes(),n=t.min,k=t.max,q,e=this.isXAxis&&!!this.options.breaks;t=this.options.ordinal;var c=Number.MAX_VALUE,g=this.chart.options.chart.ignoreHiddenSeries,p;if(t||e){this.series.forEach(function(a,k){m=[];if(!(g&&!1===a.visible||!1===a.takeOrdinalPosition&&
!e)&&(f=f.concat(a.processedXData),b=f.length,f.sort(function(a,b){return a-b}),c=Math.min(c,F(a.closestPointRange,c)),b)){for(k=0;k<b-1;)f[k]!==f[k+1]&&m.push(f[k+1]),k++;m[0]!==f[0]&&m.unshift(f[0]);f=m}a.isSeriesBoosting&&(p=!0)});p&&(f.length=0);var b=f.length;if(2<b){var a=f[1]-f[0];for(q=b-1;q--&&!r;)f[q+1]-f[q]!==a&&(r=!0);!this.options.keepOrdinalPadding&&(f[0]-n>a||k-f[f.length-1]>a)&&(r=!0)}else this.options.overscroll&&(2===b?c=f[1]-f[0]:1===b?(c=this.options.overscroll,f=[f[0],f[0]+c]):
c=this.overscrollPointsRange);r?(this.options.overscroll&&(this.overscrollPointsRange=c,f=f.concat(this.getOverscrollPositions())),this.ordinalPositions=f,a=this.ordinal2lin(Math.max(n,f[0]),!0),q=Math.max(this.ordinal2lin(Math.min(k,f[f.length-1]),!0),1),this.ordinalSlope=k=(k-n)/(q-a),this.ordinalOffset=n-a*k):(this.overscrollPointsRange=F(this.closestPointRange,this.overscrollPointsRange),this.ordinalPositions=this.ordinalSlope=this.ordinalOffset=void 0)}this.isOrdinal=t&&r;this.groupIntervalFactor=
null},val2lin:function(f,m){var x=this.ordinalPositions;if(x){var t=x.length,n;for(n=t;n--;)if(x[n]===f){var k=n;break}for(n=t-1;n--;)if(f>x[n]||0===n){f=(f-x[n])/(x[n+1]-x[n]);k=n+f;break}m=m?k:this.ordinalSlope*(k||0)+this.ordinalOffset}else m=f;return m},lin2val:function(f,m){var x=this.ordinalPositions;if(x){var t=this.ordinalSlope,n=this.ordinalOffset,k=x.length-1;if(m)if(0>f)f=x[0];else if(f>k)f=x[k];else{k=Math.floor(f);var q=f-k}else for(;k--;)if(m=t*k+n,f>=m){t=t*(k+1)+n;q=(f-m)/(t-m);break}return"undefined"!==
typeof q&&"undefined"!==typeof x[k]?x[k]+(q?q*(x[k+1]-x[k]):0):f}return f},getExtendedPositions:function(){var f=this,m=f.chart,r=f.series[0].currentDataGrouping,t=f.ordinalIndex,n=r?r.count+r.unitName:"raw",k=f.options.overscroll,q=f.getExtremes(),e;t||(t=f.ordinalIndex={});if(!t[n]){var c={series:[],chart:m,getExtremes:function(){return{min:q.dataMin,max:q.dataMax+k}},options:{ordinal:!0},val2lin:B.prototype.val2lin,ordinal2lin:B.prototype.ordinal2lin};f.series.forEach(function(g){e={xAxis:c,xData:g.xData.slice(),
chart:m,destroyGroupedData:L};e.xData=e.xData.concat(f.getOverscrollPositions());e.options={dataGrouping:r?{enabled:!0,forced:!0,approximation:"open",units:[[r.unitName,[r.count]]]}:{enabled:!1}};g.processData.apply(e);c.series.push(e)});f.beforeSetTickPositions.apply(c);t[n]=c.ordinalPositions}return t[n]},getOverscrollPositions:function(){var f=this.options.overscroll,m=this.overscrollPointsRange,r=[],t=this.dataMax;if(E(m))for(r.push(t);t<=this.dataMax+f;)t+=m,r.push(t);return r},getGroupIntervalFactor:function(f,
m,r){r=r.processedXData;var t=r.length,n=[];var k=this.groupIntervalFactor;if(!k){for(k=0;k<t-1;k++)n[k]=r[k+1]-r[k];n.sort(function(f,e){return f-e});n=n[Math.floor(t/2)];f=Math.max(f,r[0]);m=Math.min(m,r[t-1]);this.groupIntervalFactor=k=t*n/(m-f)}return k},postProcessTickInterval:function(f){var m=this.ordinalSlope;return m?this.options.breaks?this.closestPointRange||f:f/(m/this.closestPointRange):f}});B.prototype.ordinal2lin=B.prototype.val2lin;y(m,"pan",function(f){var m=this.xAxis[0],z=m.options.overscroll,
t=f.originalEvent.chartX,n=this.options.chart&&this.options.chart.panning,k=!1;if(n&&"y"!==n.type&&m.options.ordinal&&m.series.length){var q=this.mouseDownX,e=m.getExtremes(),c=e.dataMax,g=e.min,p=e.max,b=this.hoverPoints,a=m.closestPointRange||m.overscrollPointsRange;q=(q-t)/(m.translationSlope*(m.ordinalSlope||a));var v={ordinalPositions:m.getExtendedPositions()};a=m.lin2val;var D=m.val2lin;if(!v.ordinalPositions)k=!0;else if(1<Math.abs(q)){b&&b.forEach(function(a){a.setState()});if(0>q){b=v;var w=
m.ordinalPositions?m:v}else b=m.ordinalPositions?m:v,w=v;v=w.ordinalPositions;c>v[v.length-1]&&v.push(c);this.fixedRange=p-g;q=m.toFixedRange(null,null,a.apply(b,[D.apply(b,[g,!0])+q,!0]),a.apply(w,[D.apply(w,[p,!0])+q,!0]));q.min>=Math.min(e.dataMin,g)&&q.max<=Math.max(c,p)+z&&m.setExtremes(q.min,q.max,!0,!1,{trigger:"pan"});this.mouseDownX=t;r(this.container,{cursor:"move"})}}else k=!0;k||n&&/y/.test(n.type)?z&&(m.max=m.dataMax+z):f.preventDefault()});y(B,"foundExtremes",function(){this.isXAxis&&
E(this.options.overscroll)&&this.max===this.dataMax&&(!this.chart.mouseIsDown||this.isInternal)&&(!this.eventArgs||this.eventArgs&&"navigator"!==this.eventArgs.trigger)&&(this.max+=this.options.overscroll,!this.isInternal&&E(this.userMin)&&(this.min+=this.options.overscroll))});y(B,"afterSetScale",function(){this.horiz&&!this.isDirty&&(this.isDirty=this.isOrdinal&&this.chart.navigator&&!this.chart.navigator.adaptToUpdatedData)})});P(y,"modules/broken-axis.src.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],
function(f,m){var y=m.addEvent,r=m.extend,E=m.find,N=m.fireEvent,F=m.isArray,C=m.pick,B=f.Axis;m=f.Series;var L=function(f,m){return E(m,function(m){return m.from<f&&f<m.to})};r(B.prototype,{isInBreak:function(f,m){var r=f.repeat||Infinity,t=f.from,n=f.to-f.from;m=m>=t?(m-t)%r:r-(t-m)%r;return f.inclusive?m<=n:m<n&&0!==m},isInAnyBreak:function(f,m){var r=this.options.breaks,t=r&&r.length,n;if(t){for(;t--;)if(this.isInBreak(r[t],f)){var k=!0;n||(n=C(r[t].showPoints,!this.isXAxis))}var q=k&&m?k&&!n:
k}return q}});y(B,"afterInit",function(){"function"===typeof this.setBreaks&&this.setBreaks(this.options.breaks,!1)});y(B,"afterSetTickPositions",function(){if(this.isBroken){var f=this.tickPositions,m=this.tickPositions.info,r=[],t;for(t=0;t<f.length;t++)this.isInAnyBreak(f[t])||r.push(f[t]);this.tickPositions=r;this.tickPositions.info=m}});y(B,"afterSetOptions",function(){this.isBroken&&(this.options.ordinal=!1)});B.prototype.setBreaks=function(f,m){function r(f){var e=f,c;for(c=0;c<n.breakArray.length;c++){var g=
n.breakArray[c];if(g.to<=f)e-=g.len;else if(g.from>=f)break;else if(n.isInBreak(g,f)){e-=f-g.from;break}}return e}function t(f){var e;for(e=0;e<n.breakArray.length;e++){var c=n.breakArray[e];if(c.from>=f)break;else c.to<f?f+=c.len:n.isInBreak(c,f)&&(f+=c.len)}return f}var n=this,k=F(f)&&!!f.length;n.isDirty=n.isBroken!==k;n.isBroken=k;n.options.breaks=n.userOptions.breaks=f;n.forceRedraw=!0;n.series.forEach(function(f){f.isDirty=!0});k||n.val2lin!==r||(delete n.val2lin,delete n.lin2val);k&&(n.userOptions.ordinal=
!1,n.val2lin=r,n.lin2val=t,n.setExtremes=function(f,e,c,g,k){if(this.isBroken){for(var b,a=this.options.breaks;b=L(f,a);)f=b.to;for(;b=L(e,a);)e=b.from;e<f&&(e=f)}B.prototype.setExtremes.call(this,f,e,c,g,k)},n.setAxisTranslation=function(f){B.prototype.setAxisTranslation.call(this,f);this.unitLength=null;if(this.isBroken){f=n.options.breaks;var e=[],c=[],g=0,k,b=n.userMin||n.min,a=n.userMax||n.max,m=C(n.pointRangePadding,0),q;f.forEach(function(c){k=c.repeat||Infinity;n.isInBreak(c,b)&&(b+=c.to%
k-b%k);n.isInBreak(c,a)&&(a-=a%k-c.from%k)});f.forEach(function(c){l=c.from;for(k=c.repeat||Infinity;l-k>b;)l-=k;for(;l<b;)l+=k;for(q=l;q<a;q+=k)e.push({value:q,move:"in"}),e.push({value:q+(c.to-c.from),move:"out",size:c.breakSize})});e.sort(function(a,b){return a.value===b.value?("in"===a.move?0:1)-("in"===b.move?0:1):a.value-b.value});var w=0;var l=b;e.forEach(function(a){w+="in"===a.move?1:-1;1===w&&"in"===a.move&&(l=a.value);0===w&&(c.push({from:l,to:a.value,len:a.value-l-(a.size||0)}),g+=a.value-
l-(a.size||0))});n.breakArray=c;n.unitLength=a-b-g+m;N(n,"afterBreaks");n.staticScale?n.transA=n.staticScale:n.unitLength&&(n.transA*=(a-n.min+m)/n.unitLength);m&&(n.minPixelPadding=n.transA*n.minPointOffset);n.min=b;n.max=a}});C(m,!0)&&this.chart.redraw()};y(m,"afterGeneratePoints",function(){var f=this.options.connectNulls,m=this.points,r=this.xAxis,t=this.yAxis;if(this.isDirty)for(var n=m.length;n--;){var k=m[n],q=!(null===k.y&&!1===f)&&(r&&r.isInAnyBreak(k.x,!0)||t&&t.isInAnyBreak(k.y,!0));k.visible=
q?!1:!1!==k.options.visible}});y(m,"afterRender",function(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,C(this.pointArrayMap,["y"]))});f.Series.prototype.drawBreaks=function(f,m){var r=this,t=r.points,n,k,q,e;f&&m.forEach(function(c){n=f.breakArray||[];k=f.isXAxis?f.min:C(r.options.threshold,f.min);t.forEach(function(g){e=C(g["stack"+c.toUpperCase()],g[c]);n.forEach(function(c){q=!1;if(k<c.from&&e>c.to||k>c.from&&e<c.from)q="pointBreak";else if(k<c.from&&e>c.from&&e<c.to||k>c.from&&
e>c.to&&e<c.from)q="pointInBreak";q&&N(f,q,{point:g,brk:c})})})})};f.Series.prototype.gappedPath=function(){var m=this.currentDataGrouping,r=m&&m.gapSize;m=this.options.gapSize;var A=this.points.slice(),t=A.length-1,n=this.yAxis,k;if(m&&0<t)for("value"!==this.options.gapUnit&&(m*=this.basePointRange),r&&r>m&&r>=this.basePointRange&&(m=r),k=void 0;t--;)k&&!1!==k.visible||(k=A[t+1]),r=A[t],!1!==k.visible&&!1!==r.visible&&(k.x-r.x>m&&(k=(r.x+k.x)/2,A.splice(t+1,0,{isNull:!0,x:k}),this.options.stacking&&
(k=n.stacks[this.stackKey][k]=new f.StackItem(n,n.options.stackLabels,!1,k,this.stack),k.total=0)),k=r);return this.getGraphPath(A)}});P(y,"masters/modules/broken-axis.src.js",[],function(){});P(y,"parts/DataGrouping.js",[y["parts/Globals.js"],y["parts/Point.js"],y["parts/Tooltip.js"],y["parts/Utilities.js"]],function(f,m,y,r){"";var E=r.addEvent,J=r.arrayMax,F=r.arrayMin,C=r.correctFloat,B=r.defined,L=r.error,z=r.extend,x=r.format,A=r.isNumber,t=r.merge,n=r.pick,k=f.Axis,q=f.defaultPlotOptions;r=
f.Series;var e=f.approximations={sum:function(a){var b=a.length;if(!b&&a.hasNulls)var c=null;else if(b)for(c=0;b--;)c+=a[b];return c},average:function(a){var b=a.length;a=e.sum(a);A(a)&&b&&(a=C(a/b));return a},averages:function(){var a=[];[].forEach.call(arguments,function(b){a.push(e.average(b))});return"undefined"===typeof a[0]?void 0:a},open:function(a){return a.length?a[0]:a.hasNulls?null:void 0},high:function(a){return a.length?J(a):a.hasNulls?null:void 0},low:function(a){return a.length?F(a):
a.hasNulls?null:void 0},close:function(a){return a.length?a[a.length-1]:a.hasNulls?null:void 0},ohlc:function(a,b,c,f){a=e.open(a);b=e.high(b);c=e.low(c);f=e.close(f);if(A(a)||A(b)||A(c)||A(f))return[a,b,c,f]},range:function(a,b){a=e.low(a);b=e.high(b);if(A(a)||A(b))return[a,b];if(null===a&&null===b)return null}},c=function(a,b,c,f){var g=this,h=g.data,l=g.options&&g.options.data,d=[],k=[],p=[],n=a.length,m=!!b,u=[],q=g.pointArrayMap,w=q&&q.length,v=["x"].concat(q||["y"]),r=0,x=0,z;f="function"===
typeof f?f:e[f]?e[f]:e[g.getDGApproximation&&g.getDGApproximation()||"average"];w?q.forEach(function(){u.push([])}):u.push([]);var H=w||1;for(z=0;z<=n&&!(a[z]>=c[0]);z++);for(z;z<=n;z++){for(;"undefined"!==typeof c[r+1]&&a[z]>=c[r+1]||z===n;){var y=c[r];g.dataGroupInfo={start:g.cropStart+x,length:u[0].length};var D=f.apply(g,u);g.pointClass&&!B(g.dataGroupInfo.options)&&(g.dataGroupInfo.options=t(g.pointClass.prototype.optionsToObject.call({series:g},g.options.data[g.cropStart+x])),v.forEach(function(a){delete g.dataGroupInfo.options[a]}));
"undefined"!==typeof D&&(d.push(y),k.push(D),p.push(g.dataGroupInfo));x=z;for(y=0;y<H;y++)u[y].length=0,u[y].hasNulls=!1;r+=1;if(z===n)break}if(z===n)break;if(q)for(y=g.cropStart+z,D=h&&h[y]||g.pointClass.prototype.applyOptions.apply({series:g},[l[y]]),y=0;y<w;y++){var C=D[q[y]];A(C)?u[y].push(C):null===C&&(u[y].hasNulls=!0)}else y=m?b[z]:null,A(y)?u[0].push(y):null===y&&(u[0].hasNulls=!0)}return{groupedXData:d,groupedYData:k,groupMap:p}},g={approximations:e,groupData:c},p=r.prototype,b=p.processData,
a=p.generatePoints,v={groupPixelWidth:2,dateTimeLabelFormats:{millisecond:["%A, %b %e, %H:%M:%S.%L","%A, %b %e, %H:%M:%S.%L","-%H:%M:%S.%L"],second:["%A, %b %e, %H:%M:%S","%A, %b %e, %H:%M:%S","-%H:%M:%S"],minute:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],hour:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],day:["%A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],week:["Week from %A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],month:["%B %Y","%B","-%B %Y"],year:["%Y","%Y","-%Y"]}},D={line:{},spline:{},
area:{},areaspline:{},arearange:{},column:{groupPixelWidth:10},columnrange:{groupPixelWidth:10},candlestick:{groupPixelWidth:10},ohlc:{groupPixelWidth:5}},w=f.defaultDataGroupingUnits=[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1]],["week",[1]],["month",[1,3,6]],["year",null]];p.getDGApproximation=function(){return this.is("arearange")?"range":this.is("ohlc")?"ohlc":this.is("column")?"sum":"average"};p.groupData=
c;p.processData=function(){var a=this.chart,c=this.options.dataGrouping,e=!1!==this.allowDG&&c&&n(c.enabled,a.options.isStock),f=this.visible||!a.options.chart.ignoreHiddenSeries,g,k=this.currentDataGrouping,m=!1;this.forceCrop=e;this.groupPixelWidth=null;this.hasProcessed=!0;e&&!this.requireSorting&&(this.requireSorting=m=!0);e=!1===b.apply(this,arguments)||!e;m&&(this.requireSorting=!1);if(!e){this.destroyGroupedData();e=c.groupAll?this.xData:this.processedXData;var d=c.groupAll?this.yData:this.processedYData,
q=a.plotSizeX;a=this.xAxis;var v=a.options.ordinal,t=this.groupPixelWidth=a.getGroupPixelWidth&&a.getGroupPixelWidth();if(t){this.isDirty=g=!0;this.points=null;m=a.getExtremes();var r=m.min;m=m.max;v=v&&a.getGroupIntervalFactor(r,m,this)||1;t=t*(m-r)/q*v;q=a.getTimeTicks(a.normalizeTimeTickInterval(t,c.units||w),Math.min(r,e[0]),Math.max(m,e[e.length-1]),a.options.startOfWeek,e,this.closestPointRange);d=p.groupData.apply(this,[e,d,q,c.approximation]);e=d.groupedXData;v=d.groupedYData;var x=0;if(c.smoothed&&
e.length){var z=e.length-1;for(e[z]=Math.min(e[z],m);z--&&0<z;)e[z]+=t/2;e[0]=Math.max(e[0],r)}for(z=1;z<q.length;z++)q.info.segmentStarts&&-1!==q.info.segmentStarts.indexOf(z)||(x=Math.max(q[z]-q[z-1],x));r=q.info;r.gapSize=x;this.closestPointRange=q.info.totalRange;this.groupMap=d.groupMap;if(B(e[0])&&e[0]<a.min&&f){if(!B(a.options.min)&&a.min<=a.dataMin||a.min===a.dataMin)a.min=Math.min(e[0],a.min);a.dataMin=Math.min(e[0],a.dataMin)}c.groupAll&&(c=this.cropData(e,v,a.min,a.max,1),e=c.xData,v=c.yData);
this.processedXData=e;this.processedYData=v}else this.groupMap=null;this.hasGroupedData=g;this.currentDataGrouping=r;this.preventGraphAnimation=(k&&k.totalRange)!==(r&&r.totalRange)}};p.destroyGroupedData=function(){this.groupedData&&(this.groupedData.forEach(function(a,b){a&&(this.groupedData[b]=a.destroy?a.destroy():null)},this),this.groupedData.length=0)};p.generatePoints=function(){a.apply(this);this.destroyGroupedData();this.groupedData=this.hasGroupedData?this.points:null};E(m,"update",function(){if(this.dataGroup)return L(24,
!1,this.series.chart),!1});E(y,"headerFormatter",function(a){var b=this.chart,c=b.time,e=a.labelConfig,f=e.series,g=f.tooltipOptions,l=f.options.dataGrouping,d=g.xDateFormat,k=f.xAxis,p=g[(a.isFooter?"footer":"header")+"Format"];if(k&&"datetime"===k.options.type&&l&&A(e.key)){var n=f.currentDataGrouping;l=l.dateTimeLabelFormats||v.dateTimeLabelFormats;if(n)if(g=l[n.unitName],1===n.count)d=g[0];else{d=g[1];var m=g[2]}else!d&&l&&(d=this.getXDateFormat(e,g,k));d=c.dateFormat(d,e.key);m&&(d+=c.dateFormat(m,
e.key+n.totalRange-1));f.chart.styledMode&&(p=this.styledModeFormat(p));a.text=x(p,{point:z(e.point,{key:d}),series:f},b);a.preventDefault()}});E(r,"destroy",p.destroyGroupedData);E(r,"afterSetOptions",function(a){a=a.options;var b=this.type,c=this.chart.options.plotOptions,e=q[b].dataGrouping,f=this.useCommonDataGrouping&&v;if(D[b]||f)e||(e=t(v,D[b])),a.dataGrouping=t(f,e,c.series&&c.series.dataGrouping,c[b].dataGrouping,this.userOptions.dataGrouping)});E(k,"afterSetScale",function(){this.series.forEach(function(a){a.hasProcessed=
!1})});k.prototype.getGroupPixelWidth=function(){var a=this.series,b=a.length,c,e=0,f=!1,g;for(c=b;c--;)(g=a[c].options.dataGrouping)&&(e=Math.max(e,n(g.groupPixelWidth,v.groupPixelWidth)));for(c=b;c--;)(g=a[c].options.dataGrouping)&&a[c].hasProcessed&&(b=(a[c].processedXData||a[c].data).length,a[c].groupPixelWidth||b>this.chart.plotSizeX/e||b&&g.forced)&&(f=!0);return f?e:0};k.prototype.setDataGrouping=function(a,b){var c;b=n(b,!0);a||(a={forced:!1,units:null});if(this instanceof k)for(c=this.series.length;c--;)this.series[c].update({dataGrouping:a},
!1);else this.chart.options.series.forEach(function(b){b.dataGrouping=a},!1);this.ordinalSlope=null;b&&this.chart.redraw()};f.dataGrouping=g;"";return g});P(y,"parts/OHLCSeries.js",[y["parts/Globals.js"],y["parts/Point.js"],y["parts/Utilities.js"]],function(f,m,y){y=y.seriesType;var r=f.seriesTypes;y("ohlc","column",{lineWidth:1,tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> <b> {series.name}</b><br/>Open: {point.open}<br/>High: {point.high}<br/>Low: {point.low}<br/>Close: {point.close}<br/>'},
threshold:null,states:{hover:{lineWidth:3}},stickyTracking:!0},{directTouch:!1,pointArrayMap:["open","high","low","close"],toYData:function(f){return[f.open,f.high,f.low,f.close]},pointValKey:"close",pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},init:function(){r.column.prototype.init.apply(this,arguments);this.options.stacking=!1},pointAttribs:function(f,m){m=r.column.prototype.pointAttribs.call(this,f,m);var y=this.options;delete m.fill;!f.options.color&&y.upColor&&f.open<f.close&&
(m.stroke=y.upColor);return m},translate:function(){var f=this,m=f.yAxis,y=!!f.modifyValue,C=["plotOpen","plotHigh","plotLow","plotClose","yBottom"];r.column.prototype.translate.apply(f);f.points.forEach(function(r){[r.open,r.high,r.low,r.close,r.low].forEach(function(B,z){null!==B&&(y&&(B=f.modifyValue(B)),r[C[z]]=m.toPixels(B,!0))});r.tooltipPos[1]=r.plotHigh+m.pos-f.chart.plotTop})},drawPoints:function(){var f=this,m=f.chart,r=function(f,m,r){f[2]=Math.max(r+m,f[2]);f[5]=Math.min(r-m,f[5])};f.points.forEach(function(y){var B=
y.graphic,C=!B;if("undefined"!==typeof y.plotY){B||(y.graphic=B=m.renderer.path().add(f.group));m.styledMode||B.attr(f.pointAttribs(y,y.selected&&"select"));var z=B.strokeWidth();var x=z%2/2;var A=Math.round(y.plotX)-x;var t=Math.round(y.shapeArgs.width/2);var n=["M",A,Math.round(y.yBottom),"L",A,Math.round(y.plotHigh)];if(null!==y.open){var k=Math.round(y.plotOpen)+x;n.push("M",A,k,"L",A-t,k);r(n,z/2,k)}null!==y.close&&(k=Math.round(y.plotClose)+x,n.push("M",A,k,"L",A+t,k),r(n,z/2,k));B[C?"attr":
"animate"]({d:n}).addClass(y.getClassName(),!0)}})},animate:null},{getClassName:function(){return m.prototype.getClassName.call(this)+(this.open<this.close?" highcharts-point-up":" highcharts-point-down")}});""});P(y,"parts/CandlestickSeries.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.merge;m=m.seriesType;var r=f.defaultPlotOptions,E=f.seriesTypes;m("candlestick","ohlc",y(r.column,{states:{hover:{lineWidth:2}},tooltip:r.ohlc.tooltip,threshold:null,lineColor:"#000000",
lineWidth:1,upColor:"#ffffff",stickyTracking:!0}),{pointAttribs:function(f,m){var r=E.column.prototype.pointAttribs.call(this,f,m),y=this.options,F=f.open<f.close,z=y.lineColor||this.color;r["stroke-width"]=y.lineWidth;r.fill=f.options.color||(F?y.upColor||this.color:this.color);r.stroke=f.options.lineColor||(F?y.upLineColor||z:z);m&&(f=y.states[m],r.fill=f.color||r.fill,r.stroke=f.lineColor||r.stroke,r["stroke-width"]=f.lineWidth||r["stroke-width"]);return r},drawPoints:function(){var f=this,m=f.chart,
r=f.yAxis.reversed;f.points.forEach(function(y){var B=y.graphic,z=!B;if("undefined"!==typeof y.plotY){B||(y.graphic=B=m.renderer.path().add(f.group));f.chart.styledMode||B.attr(f.pointAttribs(y,y.selected&&"select")).shadow(f.options.shadow);var x=B.strokeWidth()%2/2;var A=Math.round(y.plotX)-x;var t=y.plotOpen;var n=y.plotClose;var k=Math.min(t,n);t=Math.max(t,n);var q=Math.round(y.shapeArgs.width/2);n=r?t!==y.yBottom:Math.round(k)!==Math.round(y.plotHigh);var e=r?Math.round(k)!==Math.round(y.plotHigh):
t!==y.yBottom;k=Math.round(k)+x;t=Math.round(t)+x;x=[];x.push("M",A-q,t,"L",A-q,k,"L",A+q,k,"L",A+q,t,"Z","M",A,k,"L",A,n?Math.round(r?y.yBottom:y.plotHigh):k,"M",A,t,"L",A,e?Math.round(r?y.plotHigh:y.yBottom):t);B[z?"attr":"animate"]({d:x}).addClass(y.getClassName(),!0)}})}});""});P(y,"mixins/on-series.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],function(f,m){var y=m.defined,r=m.stableSort,E=f.seriesTypes;return{getPlotBox:function(){return f.Series.prototype.getPlotBox.call(this.options.onSeries&&
this.chart.get(this.options.onSeries)||this)},translate:function(){E.column.prototype.translate.apply(this);var f=this,m=f.options,C=f.chart,B=f.points,J=B.length-1,z,x=m.onSeries;x=x&&C.get(x);m=m.onKey||"y";var A=x&&x.options.step,t=x&&x.points,n=t&&t.length,k=C.inverted,q=f.xAxis,e=f.yAxis,c=0,g;if(x&&x.visible&&n){c=(x.pointXOffset||0)+(x.barW||0)/2;C=x.currentDataGrouping;var p=t[n-1].x+(C?C.totalRange:0);r(B,function(a,b){return a.x-b.x});for(m="plot"+m[0].toUpperCase()+m.substr(1);n--&&B[J];){var b=
t[n];C=B[J];C.y=b.y;if(b.x<=C.x&&"undefined"!==typeof b[m]){if(C.x<=p&&(C.plotY=b[m],b.x<C.x&&!A&&(g=t[n+1])&&"undefined"!==typeof g[m])){var a=(C.x-b.x)/(g.x-b.x);C.plotY+=a*(g[m]-b[m]);C.y+=a*(g.y-b.y)}J--;n++;if(0>J)break}}}B.forEach(function(a,b){a.plotX+=c;if("undefined"===typeof a.plotY||k)0<=a.plotX&&a.plotX<=q.len?k?(a.plotY=q.translate(a.x,0,1,0,1),a.plotX=y(a.y)?e.translate(a.y,0,0,0,1):0):a.plotY=(q.opposite?0:f.yAxis.len)+q.offset:a.shapeArgs={};if((z=B[b-1])&&z.plotX===a.plotX){"undefined"===
typeof z.stackIndex&&(z.stackIndex=0);var g=z.stackIndex+1}a.stackIndex=g});this.onSeries=x}}});P(y,"parts/FlagsSeries.js",[y["parts/Globals.js"],y["parts/Utilities.js"],y["mixins/on-series.js"]],function(f,m,y){function r(f){k[f+"pin"]=function(e,c,g,p,b){var a=b&&b.anchorX;b=b&&b.anchorY;"circle"===f&&p>g&&(e-=Math.round((p-g)/2),g=p);var n=k[f](e,c,g,p);a&&b&&(n.push("M","circle"===f?e+g/2:n[1]+n[4]/2,c>b?c:c+p,"L",a,b),n=n.concat(k.circle(a-1,b-1,2,2)));return n}}var E=m.addEvent,J=m.defined,
F=m.isNumber,C=m.merge,B=m.objectEach,L=m.seriesType,z=m.wrap;m=f.noop;var x=f.Renderer,A=f.Series,t=f.TrackerMixin,n=f.VMLRenderer,k=f.SVGRenderer.prototype.symbols;L("flags","column",{pointRange:0,allowOverlapX:!1,shape:"flag",stackDistance:12,textAlign:"center",tooltip:{pointFormat:"{point.text}<br/>"},threshold:null,y:-30,fillColor:"#ffffff",lineWidth:1,states:{hover:{lineColor:"#000000",fillColor:"#ccd6eb"}},style:{fontSize:"11px",fontWeight:"bold"}},{sorted:!1,noSharedTooltip:!0,allowDG:!1,
takeOrdinalPosition:!1,trackerGroups:["markerGroup"],forceCrop:!0,init:A.prototype.init,pointAttribs:function(f,e){var c=this.options,g=f&&f.color||this.color,k=c.lineColor,b=f&&f.lineWidth;f=f&&f.fillColor||c.fillColor;e&&(f=c.states[e].fillColor,k=c.states[e].lineColor,b=c.states[e].lineWidth);return{fill:f||g,stroke:k||g,"stroke-width":b||c.lineWidth||0}},translate:y.translate,getPlotBox:y.getPlotBox,drawPoints:function(){var k=this.points,e=this.chart,c=e.renderer,g=e.inverted,p=this.options,
b=p.y,a,n=this.yAxis,m={},w=[];for(a=k.length;a--;){var l=k[a];var h=(g?l.plotY:l.plotX)>this.xAxis.len;var u=l.plotX;var r=l.stackIndex;var t=l.options.shape||p.shape;var x=l.plotY;"undefined"!==typeof x&&(x=l.plotY+b-("undefined"!==typeof r&&r*p.stackDistance));l.anchorX=r?void 0:l.plotX;var y=r?void 0:l.plotY;var d="flag"!==t;r=l.graphic;"undefined"!==typeof x&&0<=u&&!h?(r||(r=l.graphic=c.label("",null,null,t,null,null,p.useHTML),e.styledMode||r.attr(this.pointAttribs(l)).css(C(p.style,l.style)),
r.attr({align:d?"center":"left",width:p.width,height:p.height,"text-align":p.textAlign}).addClass("highcharts-point").add(this.markerGroup),l.graphic.div&&(l.graphic.div.point=l),e.styledMode||r.shadow(p.shadow),r.isNew=!0),0<u&&(u-=r.strokeWidth()%2),t={y:x,anchorY:y},p.allowOverlapX&&(t.x=u,t.anchorX=l.anchorX),r.attr({text:l.options.title||p.title||"A"})[r.isNew?"attr":"animate"](t),p.allowOverlapX||(m[l.plotX]?m[l.plotX].size=Math.max(m[l.plotX].size,r.width):m[l.plotX]={align:d?.5:0,size:r.width,
target:u,anchorX:u}),l.tooltipPos=[u,x+n.pos-e.plotTop]):r&&(l.graphic=r.destroy())}p.allowOverlapX||(B(m,function(a){a.plotX=a.anchorX;w.push(a)}),f.distribute(w,g?n.len:this.xAxis.len,100),k.forEach(function(a){var b=a.graphic&&m[a.plotX];b&&(a.graphic[a.graphic.isNew?"attr":"animate"]({x:b.pos+b.align*b.size,anchorX:a.anchorX}),J(b.pos)?a.graphic.isNew=!1:(a.graphic.attr({x:-9999,anchorX:-9999}),a.graphic.isNew=!0))}));p.useHTML&&z(this.markerGroup,"on",function(a){return f.SVGElement.prototype.on.apply(a.apply(this,
[].slice.call(arguments,1)),[].slice.call(arguments,1))})},drawTracker:function(){var f=this.points;t.drawTrackerPoint.apply(this);f.forEach(function(e){var c=e.graphic;c&&E(c.element,"mouseover",function(){0<e.stackIndex&&!e.raised&&(e._y=c.y,c.attr({y:e._y-8}),e.raised=!0);f.forEach(function(c){c!==e&&c.raised&&c.graphic&&(c.graphic.attr({y:c._y}),c.raised=!1)})})})},animate:function(f){f&&this.setClip()},setClip:function(){A.prototype.setClip.apply(this,arguments);!1!==this.options.clip&&this.sharedClipKey&&
this.markerGroup.clip(this.chart[this.sharedClipKey])},buildKDTree:m,invertGroups:m},{isValid:function(){return F(this.y)||"undefined"===typeof this.y}});k.flag=function(f,e,c,g,p){var b=p&&p.anchorX||f;p=p&&p.anchorY||e;return k.circle(b-1,p-1,2,2).concat(["M",b,p,"L",f,e+g,f,e,f+c,e,f+c,e+g,f,e+g,"Z"])};r("circle");r("square");x===n&&["circlepin","flag","squarepin"].forEach(function(f){n.prototype.symbols[f]=k[f]});""});P(y,"parts/RangeSelector.js",[y["parts/Globals.js"],y["parts/Utilities.js"]],
function(f,m){function y(c){this.init(c)}var r=m.addEvent,E=m.createElement,N=m.css,F=m.defined,C=m.destroyObjectProperties,B=m.discardElement,L=m.extend,z=m.fireEvent,x=m.isNumber,A=m.merge,t=m.objectEach,n=m.pick,k=m.pInt,q=m.splat,e=f.Axis;m=f.Chart;var c=f.defaultOptions;L(c,{rangeSelector:{verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputPosition:{align:"right",x:0,y:0},buttonPosition:{align:"left",x:0,y:0},labelStyle:{color:"#666666"}}});
c.lang=A(c.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"From",rangeSelectorTo:"To"});y.prototype={clickButton:function(c,f){var b=this.chart,a=this.buttonOptions[c],g=b.xAxis[0],k=b.scroller&&b.scroller.getUnionExtremes()||g||{},p=k.dataMin,l=k.dataMax,h=g&&Math.round(Math.min(g.max,n(l,g.max))),m=a.type;k=a._range;var t,y=a.dataGrouping;if(null!==p&&null!==l){b.fixedRange=k;y&&(this.forcedDataGrouping=!0,e.prototype.setDataGrouping.call(g||{chart:this.chart},y,!1),this.frozenStates=a.preserveDataGrouping);
if("month"===m||"year"===m)if(g){m={range:a,max:h,chart:b,dataMin:p,dataMax:l};var z=g.minFromRange.call(m);x(m.newMax)&&(h=m.newMax)}else k=a;else if(k)z=Math.max(h-k,p),h=Math.min(z+k,l);else if("ytd"===m)if(g)"undefined"===typeof l&&(p=Number.MAX_VALUE,l=Number.MIN_VALUE,b.series.forEach(function(a){a=a.xData;p=Math.min(a[0],p);l=Math.max(a[a.length-1],l)}),f=!1),h=this.getYTDExtremes(l,p,b.time.useUTC),z=t=h.min,h=h.max;else{this.deferredYTDClick=c;return}else"all"===m&&g&&(z=p,h=l);z+=a._offsetMin;
h+=a._offsetMax;this.setSelected(c);if(g)g.setExtremes(z,h,n(f,1),null,{trigger:"rangeSelectorButton",rangeSelectorButton:a});else{var A=q(b.options.xAxis)[0];var d=A.range;A.range=k;var B=A.min;A.min=t;r(b,"load",function(){A.range=d;A.min=B})}}},setSelected:function(c){this.selected=this.options.selected=c},defaultButtons:[{type:"month",count:1,text:"1m"},{type:"month",count:3,text:"3m"},{type:"month",count:6,text:"6m"},{type:"ytd",text:"YTD"},{type:"year",count:1,text:"1y"},{type:"all",text:"All"}],
init:function(c){var e=this,b=c.options.rangeSelector,a=b.buttons||[].concat(e.defaultButtons),f=b.selected,g=function(){var a=e.minInput,b=e.maxInput;a&&a.blur&&z(a,"blur");b&&b.blur&&z(b,"blur")};e.chart=c;e.options=b;e.buttons=[];e.buttonOptions=a;this.unMouseDown=r(c.container,"mousedown",g);this.unResize=r(c,"resize",g);a.forEach(e.computeButtonRange);"undefined"!==typeof f&&a[f]&&this.clickButton(f,!1);r(c,"load",function(){c.xAxis&&c.xAxis[0]&&r(c.xAxis[0],"setExtremes",function(a){this.max-
this.min!==c.fixedRange&&"rangeSelectorButton"!==a.trigger&&"updatedData"!==a.trigger&&e.forcedDataGrouping&&!e.frozenStates&&this.setDataGrouping(!1,!1)})})},updateButtonStates:function(){var c=this,e=this.chart,b=e.xAxis[0],a=Math.round(b.max-b.min),f=!b.hasVisibleSeries,k=e.scroller&&e.scroller.getUnionExtremes()||b,n=k.dataMin,l=k.dataMax;e=c.getYTDExtremes(l,n,e.time.useUTC);var h=e.min,m=e.max,q=c.selected,r=x(q),t=c.options.allButtonsEnabled,y=c.buttons;c.buttonOptions.forEach(function(d,e){var g=
d._range,k=d.type,p=d.count||1,w=y[e],u=0,v=d._offsetMax-d._offsetMin;d=e===q;var x=g>l-n,z=g<b.minRange,A=!1,D=!1;g=g===a;("month"===k||"year"===k)&&a+36E5>=864E5*{month:28,year:365}[k]*p-v&&a-36E5<=864E5*{month:31,year:366}[k]*p+v?g=!0:"ytd"===k?(g=m-h+v===a,A=!d):"all"===k&&(g=b.max-b.min>=l-n,D=!d&&r&&g);k=!t&&(x||z||D||f);p=d&&g||g&&!r&&!A||d&&c.frozenStates;k?u=3:p&&(r=!0,u=2);w.state!==u&&(w.setState(u),0===u&&q===e&&c.setSelected(null))})},computeButtonRange:function(c){var e=c.type,b=c.count||
1,a={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5};if(a[e])c._range=a[e]*b;else if("month"===e||"year"===e)c._range=864E5*{month:30,year:365}[e]*b;c._offsetMin=n(c.offsetMin,0);c._offsetMax=n(c.offsetMax,0);c._range+=c._offsetMax-c._offsetMin},setInputValue:function(c,e){var b=this.chart.options.rangeSelector,a=this.chart.time,f=this[c+"Input"];F(e)&&(f.previousValue=f.HCTime,f.HCTime=e);f.value=a.dateFormat(b.inputEditDateFormat||"%Y-%m-%d",f.HCTime);this[c+"DateBox"].attr({text:a.dateFormat(b.inputDateFormat||
"%b %e, %Y",f.HCTime)})},showInput:function(c){var e=this.inputGroup,b=this[c+"DateBox"];N(this[c+"Input"],{left:e.translateX+b.x+"px",top:e.translateY+"px",width:b.width-2+"px",height:b.height-2+"px",border:"2px solid silver"})},hideInput:function(c){N(this[c+"Input"],{border:0,width:"1px",height:"1px"});this.setInputValue(c)},drawInput:function(e){function g(){var c=u.value,e=(q.inputDateParser||Date.parse)(c),d=a.xAxis[0],f=a.scroller&&a.scroller.xAxis?a.scroller.xAxis:d,g=f.dataMin;f=f.dataMax;
e!==u.previousValue&&(u.previousValue=e,x(e)||(e=c.split("-"),e=Date.UTC(k(e[0]),k(e[1])-1,k(e[2]))),x(e)&&(a.time.useUTC||(e+=6E4*(new Date).getTimezoneOffset()),h?e>b.maxInput.HCTime?e=void 0:e<g&&(e=g):e<b.minInput.HCTime?e=void 0:e>f&&(e=f),"undefined"!==typeof e&&d.setExtremes(h?e:d.min,h?d.max:e,void 0,void 0,{trigger:"rangeSelectorInput"})))}var b=this,a=b.chart,n=a.renderer.style||{},m=a.renderer,q=a.options.rangeSelector,l=b.div,h="min"===e,u,r,t=this.inputGroup;this[e+"Label"]=r=m.label(c.lang[h?
"rangeSelectorFrom":"rangeSelectorTo"],this.inputGroup.offset).addClass("highcharts-range-label").attr({padding:2}).add(t);t.offset+=r.width+5;this[e+"DateBox"]=m=m.label("",t.offset).addClass("highcharts-range-input").attr({padding:2,width:q.inputBoxWidth||90,height:q.inputBoxHeight||17,"text-align":"center"}).on("click",function(){b.showInput(e);b[e+"Input"].focus()});a.styledMode||m.attr({stroke:q.inputBoxBorderColor||"#cccccc","stroke-width":1});m.add(t);t.offset+=m.width+(h?10:0);this[e+"Input"]=
u=E("input",{name:e,className:"highcharts-range-selector",type:"text"},{top:a.plotTop+"px"},l);a.styledMode||(r.css(A(n,q.labelStyle)),m.css(A({color:"#333333"},n,q.inputStyle)),N(u,L({position:"absolute",border:0,width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:n.fontSize,fontFamily:n.fontFamily,top:"-9999em"},q.inputStyle)));u.onfocus=function(){b.showInput(e)};u.onblur=function(){u===f.doc.activeElement&&g();b.hideInput(e);u.blur()};u.onchange=g;u.onkeypress=function(a){13===a.keyCode&&
g()}},getPosition:function(){var c=this.chart,e=c.options.rangeSelector;c="top"===e.verticalAlign?c.plotTop-c.axisOffset[0]:0;return{buttonTop:c+e.buttonPosition.y,inputTop:c+e.inputPosition.y-10}},getYTDExtremes:function(c,e,b){var a=this.chart.time,f=new a.Date(c),g=a.get("FullYear",f);b=b?a.Date.UTC(g,0,1):+new a.Date(g,0,1);e=Math.max(e||0,b);f=f.getTime();return{max:Math.min(c||f,f),min:e}},render:function(e,f){var b=this,a=b.chart,g=a.renderer,k=a.container,m=a.options,l=m.exporting&&!1!==m.exporting.enabled&&
m.navigation&&m.navigation.buttonOptions,h=c.lang,p=b.div,q=m.rangeSelector,r=n(m.chart.style&&m.chart.style.zIndex,0)+1;m=q.floating;var t=b.buttons;p=b.inputGroup;var x=q.buttonTheme,d=q.buttonPosition,y=q.inputPosition,z=q.inputEnabled,A=x&&x.states,B=a.plotLeft,C=b.buttonGroup,F,J=b.options.verticalAlign,L=a.legend,N=L&&L.options,P=d.y,S=y.y,aa=a.hasLoaded,ca=aa?"animate":"attr",Y=0,U=0;if(!1!==q.enabled){b.rendered||(b.group=F=g.g("range-selector-group").attr({zIndex:7}).add(),b.buttonGroup=
C=g.g("range-selector-buttons").add(F),b.zoomText=g.text(h.rangeSelectorZoom,0,15).add(C),a.styledMode||(b.zoomText.css(q.labelStyle),x["stroke-width"]=n(x["stroke-width"],0)),b.buttonOptions.forEach(function(a,c){t[c]=g.button(a.text,0,0,function(d){var e=a.events&&a.events.click,f;e&&(f=e.call(a,d));!1!==f&&b.clickButton(c);b.isActive=!0},x,A&&A.hover,A&&A.select,A&&A.disabled).attr({"text-align":"center"}).add(C)}),!1!==z&&(b.div=p=E("div",null,{position:"relative",height:0,zIndex:r}),k.parentNode.insertBefore(p,
k),b.inputGroup=p=g.g("input-group").add(F),p.offset=0,b.drawInput("min"),b.drawInput("max")));b.zoomText[ca]({x:n(B+d.x,B)});var da=n(B+d.x,B)+b.zoomText.getBBox().width+5;b.buttonOptions.forEach(function(a,b){t[b][ca]({x:da});da+=t[b].width+n(q.buttonSpacing,5)});B=a.plotLeft-a.spacing[3];b.updateButtonStates();l&&this.titleCollision(a)&&"top"===J&&"right"===d.align&&d.y+C.getBBox().height-12<(l.y||0)+l.height&&(Y=-40);k=d.x-a.spacing[3];"right"===d.align?k+=Y-B:"center"===d.align&&(k-=B/2);C.align({y:d.y,
width:C.getBBox().width,align:d.align,x:k},!0,a.spacingBox);b.group.placed=aa;b.buttonGroup.placed=aa;!1!==z&&(Y=l&&this.titleCollision(a)&&"top"===J&&"right"===y.align&&y.y-p.getBBox().height-12<(l.y||0)+l.height+a.spacing[0]?-40:0,"left"===y.align?k=B:"right"===y.align&&(k=-Math.max(a.axisOffset[1],-Y)),p.align({y:y.y,width:p.getBBox().width,align:y.align,x:y.x+k-2},!0,a.spacingBox),l=p.alignAttr.translateX+p.alignOptions.x-Y+p.getBBox().x+2,k=p.alignOptions.width,h=C.alignAttr.translateX+C.getBBox().x,
B=C.getBBox().width+20,(y.align===d.align||h+B>l&&l+k>h&&P<S+p.getBBox().height)&&p.attr({translateX:p.alignAttr.translateX+(a.axisOffset[1]>=-Y?0:-Y),translateY:p.alignAttr.translateY+C.getBBox().height+10}),b.setInputValue("min",e),b.setInputValue("max",f),b.inputGroup.placed=aa);b.group.align({verticalAlign:J},!0,a.spacingBox);e=b.group.getBBox().height+20;f=b.group.alignAttr.translateY;"bottom"===J&&(L=N&&"bottom"===N.verticalAlign&&N.enabled&&!N.floating?L.legendHeight+n(N.margin,10):0,e=e+L-
20,U=f-e-(m?0:q.y)-(a.titleOffset?a.titleOffset[2]:0)-10);if("top"===J)m&&(U=0),a.titleOffset&&a.titleOffset[0]&&(U=a.titleOffset[0]),U+=a.margin[0]-a.spacing[0]||0;else if("middle"===J)if(S===P)U=0>S?f+void 0:f;else if(S||P)U=0>S||0>P?U-Math.min(S,P):f-e+NaN;b.group.translate(q.x,q.y+Math.floor(U));!1!==z&&(b.minInput.style.marginTop=b.group.translateY+"px",b.maxInput.style.marginTop=b.group.translateY+"px");b.rendered=!0}},getHeight:function(){var c=this.options,e=this.group,b=c.y,a=c.buttonPosition.y,
f=c.inputPosition.y;if(c.height)return c.height;c=e?e.getBBox(!0).height+13+b:0;e=Math.min(f,a);if(0>f&&0>a||0<f&&0<a)c+=Math.abs(e);return c},titleCollision:function(c){return!(c.options.title.text||c.options.subtitle.text)},update:function(c){var e=this.chart;A(!0,e.options.rangeSelector,c);this.destroy();this.init(e);e.rangeSelector.render()},destroy:function(){var c=this,e=c.minInput,b=c.maxInput;c.unMouseDown();c.unResize();C(c.buttons);e&&(e.onfocus=e.onblur=e.onchange=null);b&&(b.onfocus=b.onblur=
b.onchange=null);t(c,function(a,b){a&&"chart"!==b&&(a.destroy?a.destroy():a.nodeType&&B(this[b]));a!==y.prototype[b]&&(c[b]=null)},this)}};e.prototype.minFromRange=function(){var c=this.range,e=c.type,b=this.max,a=this.chart.time,f=function(b,c){var f="year"===e?"FullYear":"Month",g=new a.Date(b),h=a.get(f,g);a.set(f,g,h+c);h===a.get(f,g)&&a.set("Date",g,0);return g.getTime()-b};if(x(c)){var k=b-c;var m=c}else k=b+f(b,-c.count),this.chart&&(this.chart.fixedRange=b-k);var l=n(this.dataMin,Number.MIN_VALUE);
x(k)||(k=l);k<=l&&(k=l,"undefined"===typeof m&&(m=f(k,c.count)),this.newMax=Math.min(k+m,this.dataMax));x(b)||(k=void 0);return k};f.RangeSelector||(r(m,"afterGetContainer",function(){this.options.rangeSelector.enabled&&(this.rangeSelector=new y(this))}),r(m,"beforeRender",function(){var c=this.axes,e=this.rangeSelector;e&&(x(e.deferredYTDClick)&&(e.clickButton(e.deferredYTDClick),delete e.deferredYTDClick),c.forEach(function(b){b.updateNames();b.setScale()}),this.getAxisMargins(),e.render(),c=e.options.verticalAlign,
e.options.floating||("bottom"===c?this.extraBottomMargin=!0:"middle"!==c&&(this.extraTopMargin=!0)))}),r(m,"update",function(c){var e=c.options.rangeSelector;c=this.rangeSelector;var b=this.extraBottomMargin,a=this.extraTopMargin;e&&e.enabled&&!F(c)&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=new y(this));this.extraTopMargin=this.extraBottomMargin=!1;c&&(c.render(),e=e&&e.verticalAlign||c.options&&c.options.verticalAlign,c.options.floating||("bottom"===e?this.extraBottomMargin=!0:"middle"!==
e&&(this.extraTopMargin=!0)),this.extraBottomMargin!==b||this.extraTopMargin!==a)&&(this.isDirtyBox=!0)}),r(m,"render",function(){var c=this.rangeSelector;c&&!c.options.floating&&(c.render(),c=c.options.verticalAlign,"bottom"===c?this.extraBottomMargin=!0:"middle"!==c&&(this.extraTopMargin=!0))}),r(m,"getMargins",function(){var c=this.rangeSelector;c&&(c=c.getHeight(),this.extraTopMargin&&(this.plotTop+=c),this.extraBottomMargin&&(this.marginBottom+=c))}),m.prototype.callbacks.push(function(c){function e(){b=
c.xAxis[0].getExtremes();x(b.min)&&a.render(b.min,b.max)}var b,a=c.rangeSelector;if(a){var f=r(c.xAxis[0],"afterSetExtremes",function(b){a.render(b.min,b.max)});var g=r(c,"redraw",e);e()}r(c,"destroy",function(){a&&(g(),f())})}),f.RangeSelector=y)});P(y,"parts/StockChart.js",[y["parts/Globals.js"],y["parts/Point.js"],y["parts/Utilities.js"]],function(f,m,y){var r=y.addEvent,E=y.arrayMax,J=y.arrayMin,F=y.clamp,C=y.defined,B=y.extend,L=y.find,z=y.format,x=y.isNumber,A=y.isString,t=y.merge,n=y.pick,
k=y.splat;y=f.Axis;var q=f.Chart,e=f.Renderer,c=f.Series,g=f.SVGRenderer,p=f.VMLRenderer,b=c.prototype,a=b.init,v=b.processData,D=m.prototype.tooltipFormatter;f.StockChart=f.stockChart=function(a,b,c){var e=A(a)||a.nodeName,g=arguments[e?1:0],h=g,l=g.series,m=f.getOptions(),d,p=g.chart&&g.chart.panning,r=n(g.navigator&&g.navigator.enabled,m.navigator.enabled,!0),w=p&&/y/.test(p.type),v={startOnTick:!1,endOnTick:!1};g.xAxis=k(g.xAxis||{}).map(function(a,b){return t({minPadding:0,maxPadding:0,overscroll:0,
ordinal:!0,title:{text:null},labels:{overflow:"justify"},showLastLabel:!0},m.xAxis,m.xAxis&&m.xAxis[b],a,{type:"datetime",categories:null},r?v:null)});g.yAxis=k(g.yAxis||{}).map(function(a,b){d=n(a.opposite,!0);return t({labels:{y:-2},opposite:d,showLastLabel:!(!a.categories&&"category"!==a.type),title:{text:null}},m.yAxis,m.yAxis&&m.yAxis[b],a,w?v:null)});g.series=null;g=t({chart:{panning:{enabled:!0,type:"x"},pinchType:"x"},navigator:{enabled:r},scrollbar:{enabled:n(m.scrollbar.enabled,!0)},rangeSelector:{enabled:n(m.rangeSelector.enabled,
!0)},title:{text:null},tooltip:{split:n(m.tooltip.split,!0),crosshairs:!0},legend:{enabled:!1}},g,{isStock:!0});g.series=h.series=l;return e?new q(a,g,c):new q(g,b)};r(c,"setOptions",function(a){var b;this.chart.options.isStock&&(this.is("column")||this.is("columnrange")?b={borderWidth:0,shadow:!1}:this.is("scatter")||this.is("sma")||(b={marker:{enabled:!1,radius:2}}),b&&(a.plotOptions[this.type]=t(a.plotOptions[this.type],b)))});r(y,"autoLabelAlign",function(a){var b=this.chart,c=this.options;b=
b._labelPanes=b._labelPanes||{};var e=this.options.labels;this.chart.options.isStock&&"yAxis"===this.coll&&(c=c.top+","+c.height,!b[c]&&e.enabled&&(15===e.x&&(e.x=0),"undefined"===typeof e.align&&(e.align="right"),b[c]=this,a.align="right",a.preventDefault()))});r(y,"destroy",function(){var a=this.chart,b=this.options&&this.options.top+","+this.options.height;b&&a._labelPanes&&a._labelPanes[b]===this&&delete a._labelPanes[b]});r(y,"getPlotLinePath",function(a){function b(a){var b="xAxis"===a?"yAxis":
"xAxis";a=c.options[b];return x(a)?[f[b][a]]:A(a)?[f.get(a)]:e.map(function(a){return a[b]})}var c=this,e=this.isLinked&&!this.series?this.linkedParent.series:this.series,f=c.chart,g=f.renderer,k=c.left,m=c.top,d,p,q,r,w=[],t=[],v=a.translatedValue,y=a.value,z=a.force;if(f.options.isStock&&!1!==a.acrossPanes&&"xAxis"===c.coll||"yAxis"===c.coll){a.preventDefault();t=b(c.coll);var B=c.isXAxis?f.yAxis:f.xAxis;B.forEach(function(a){if(C(a.options.id)?-1===a.options.id.indexOf("navigator"):1){var b=a.isXAxis?
"yAxis":"xAxis";b=C(a.options[b])?f[b][a.options[b]]:f[b][0];c===b&&t.push(a)}});var D=t.length?[]:[c.isXAxis?f.yAxis[0]:f.xAxis[0]];t.forEach(function(a){-1!==D.indexOf(a)||L(D,function(b){return b.pos===a.pos&&b.len===a.len})||D.push(a)});var E=n(v,c.translate(y,null,null,a.old));x(E)&&(c.horiz?D.forEach(function(a){var b;p=a.pos;r=p+a.len;d=q=Math.round(E+c.transB);"pass"!==z&&(d<k||d>k+c.width)&&(z?d=q=F(d,k,k+c.width):b=!0);b||w.push("M",d,p,"L",q,r)}):D.forEach(function(a){var b;d=a.pos;q=d+
a.len;p=r=Math.round(m+c.height-E);"pass"!==z&&(p<m||p>m+c.height)&&(z?p=r=F(p,m,m+c.height):b=!0);b||w.push("M",d,p,"L",q,r)}));a.path=0<w.length?g.crispPolyLine(w,a.lineWidth||1):null}});g.prototype.crispPolyLine=function(a,b){var c;for(c=0;c<a.length;c+=6)a[c+1]===a[c+4]&&(a[c+1]=a[c+4]=Math.round(a[c+1])-b%2/2),a[c+2]===a[c+5]&&(a[c+2]=a[c+5]=Math.round(a[c+2])+b%2/2);return a};e===p&&(p.prototype.crispPolyLine=g.prototype.crispPolyLine);r(y,"afterHideCrosshair",function(){this.crossLabel&&(this.crossLabel=
this.crossLabel.hide())});r(y,"afterDrawCrosshair",function(a){var b,c;if(C(this.crosshair.label)&&this.crosshair.label.enabled&&this.cross){var e=this.chart,f=this.options.crosshair.label,g=this.horiz,k=this.opposite,m=this.left,d=this.top,p=this.crossLabel,q=f.format,r="",t="inside"===this.options.tickPosition,w=!1!==this.crosshair.snap,v=0,x=a.e||this.cross&&this.cross.e,y=a.point;var A=this.lin2log;if(this.isLog){a=A(this.min);var D=A(this.max)}else a=this.min,D=this.max;A=g?"center":k?"right"===
this.labelAlign?"right":"left":"left"===this.labelAlign?"left":"center";p||(p=this.crossLabel=e.renderer.label(null,null,null,f.shape||"callout").addClass("highcharts-crosshair-label"+(this.series[0]&&" highcharts-color-"+this.series[0].colorIndex)).attr({align:f.align||A,padding:n(f.padding,8),r:n(f.borderRadius,3),zIndex:2}).add(this.labelGroup),e.styledMode||p.attr({fill:f.backgroundColor||this.series[0]&&this.series[0].color||"#666666",stroke:f.borderColor||"","stroke-width":f.borderWidth||0}).css(B({color:"#ffffff",
fontWeight:"normal",fontSize:"11px",textAlign:"center"},f.style)));g?(A=w?y.plotX+m:x.chartX,d+=k?0:this.height):(A=k?this.width+m:0,d=w?y.plotY+d:x.chartY);q||f.formatter||(this.isDatetimeAxis&&(r="%b %d, %Y"),q="{value"+(r?":"+r:"")+"}");r=w?y[this.isXAxis?"x":"y"]:this.toValue(g?x.chartX:x.chartY);p.attr({text:q?z(q,{value:r},e):f.formatter.call(this,r),x:A,y:d,visibility:r<a||r>D?"hidden":"visible"});f=p.getBBox();if(g){if(t&&!k||!t&&k)d=p.y-f.height}else d=p.y-f.height/2;g?(b=m-f.x,c=m+this.width-
f.x):(b="left"===this.labelAlign?m:0,c="right"===this.labelAlign?m+this.width:e.chartWidth);p.translateX<b&&(v=b-p.translateX);p.translateX+f.width>=c&&(v=-(p.translateX+f.width-c));p.attr({x:A+v,y:d,anchorX:g?A:this.opposite?0:e.chartWidth,anchorY:g?this.opposite?e.chartHeight:0:d+f.height/2})}});b.init=function(){a.apply(this,arguments);this.setCompare(this.options.compare)};b.setCompare=function(a){this.modifyValue="value"===a||"percent"===a?function(b,c){var e=this.compareValue;return"undefined"!==
typeof b&&"undefined"!==typeof e?(b="value"===a?b-e:b/e*100-(100===this.options.compareBase?0:100),c&&(c.change=b),b):0}:null;this.userOptions.compare=a;this.chart.hasRendered&&(this.isDirty=!0)};b.processData=function(a){var b,c=-1,e=!0===this.options.compareStart?0:1;v.apply(this,arguments);if(this.xAxis&&this.processedYData){var f=this.processedXData;var g=this.processedYData;var k=g.length;this.pointArrayMap&&(c=this.pointArrayMap.indexOf(this.options.pointValKey||this.pointValKey||"y"));for(b=
0;b<k-e;b++){var m=g[b]&&-1<c?g[b][c]:g[b];if(x(m)&&f[b+e]>=this.xAxis.min&&0!==m){this.compareValue=m;break}}}};r(c,"afterGetExtremes",function(){if(this.modifyValue){var a=[this.modifyValue(this.dataMin),this.modifyValue(this.dataMax)];this.dataMin=J(a);this.dataMax=E(a)}});y.prototype.setCompare=function(a,b){this.isXAxis||(this.series.forEach(function(b){b.setCompare(a)}),n(b,!0)&&this.chart.redraw())};m.prototype.tooltipFormatter=function(a){var b=this.series.chart.numberFormatter;a=a.replace("{point.change}",
(0<this.change?"+":"")+b(this.change,n(this.series.tooltipOptions.changeDecimals,2)));return D.apply(this,[a])};r(c,"render",function(){var a=this.chart;if(!(a.is3d&&a.is3d()||a.polar)&&this.xAxis&&!this.xAxis.isRadial){var b=this.yAxis.len;if(this.xAxis.axisLine){var c=a.plotTop+a.plotHeight-this.yAxis.pos-this.yAxis.len,e=Math.floor(this.xAxis.axisLine.strokeWidth()/2);0<=c&&(b-=Math.max(e-c,0))}!this.clipBox&&this.animate?(this.clipBox=t(a.clipBox),this.clipBox.width=this.xAxis.len,this.clipBox.height=
b):a[this.sharedClipKey]&&(a[this.sharedClipKey].animate({width:this.xAxis.len,height:b}),a[this.sharedClipKey+"m"]&&a[this.sharedClipKey+"m"].animate({width:this.xAxis.len}))}});r(q,"update",function(a){a=a.options;"scrollbar"in a&&this.navigator&&(t(!0,this.options.scrollbar,a.scrollbar),this.navigator.update({},!1),delete a.scrollbar)});r(y,"afterSetScale",function(){var a=this,b=a.chart.options.chart&&a.chart.options.chart.panning;if(b&&("y"===b.type||"xy"===b.type)&&!a.isXAxis&&!C(a.panningState)){var c=
Number.MAX_VALUE,e=Number.MIN_VALUE;a.series.forEach(function(b){c=Math.min(f.arrayMin(b.yData),c)-(a.min&&a.dataMin?a.dataMin-a.min:0);e=Math.max(f.arrayMax(b.yData),e)+(a.max&&a.dataMax?a.max-a.dataMax:0)});a.panningState={startMin:c,startMax:e}}})});P(y,"masters/modules/stock.src.js",[],function(){});P(y,"masters/highstock.src.js",[y["masters/highcharts.src.js"]],function(f){f.product="Highstock";return f});y["masters/highstock.src.js"]._modules=y;return y["masters/highstock.src.js"]});
//# sourceMappingURL=highstock.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Variable Pie module for Highcharts

 (c) 2010-2019 Grzegorz Blachliski

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/variable-pie",["highcharts"],function(g){b(g);b.Highcharts=g;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function g(b,e,g,n){b.hasOwnProperty(e)||(b[e]=n.apply(null,g))}b=b?b._modules:{};g(b,"modules/variable-pie.src.js",[b["parts/Globals.js"],b["parts/Utilities.js"]],function(b,e){var g=e.arrayMax,n=e.arrayMin,
w=e.clamp,p=e.pick;e=e.seriesType;var x=b.fireEvent,y=b.seriesTypes.pie.prototype;e("variablepie","pie",{minPointSize:"10%",maxPointSize:"100%",zMin:void 0,zMax:void 0,sizeBy:"area",tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}<br/>Value: {point.y}<br/>Size: {point.z}<br/>'}},{pointArrayMap:["y","z"],parallelArrays:["x","y","z"],redraw:function(){this.center=null;y.redraw.call(this,arguments)},zValEval:function(a){return"number"!==typeof a||isNaN(a)?null:!0},
calculateExtremes:function(){var a=this.chart,b=this.options;var c=this.zData;var e=Math.min(a.plotWidth,a.plotHeight)-2*(b.slicedOffset||0),l={};a=this.center||this.getCenter();["minPointSize","maxPointSize"].forEach(function(a){var c=b[a],k=/%$/.test(c);c=parseInt(c,10);l[a]=k?e*c/100:2*c});this.minPxSize=a[3]+l.minPointSize;this.maxPxSize=w(a[2],a[3]+l.minPointSize,l.maxPointSize);c.length&&(a=p(b.zMin,n(c.filter(this.zValEval))),c=p(b.zMax,g(c.filter(this.zValEval))),this.getRadii(a,c,this.minPxSize,
this.maxPxSize))},getRadii:function(a,b,c,e){var l=0,g=this.zData,q=g.length,k=[],p="radius"!==this.options.sizeBy,u=b-a;for(l;l<q;l++){var h=this.zValEval(g[l])?g[l]:a;h<=a?h=c/2:h>=b?h=e/2:(h=0<u?(h-a)/u:.5,p&&(h=Math.sqrt(h)),h=Math.ceil(c+h*(e-c))/2);k.push(h)}this.radii=k},translate:function(a){this.generatePoints();var b=0,c=this.options,e=c.slicedOffset,g=e+(c.borderWidth||0),t=c.startAngle||0,q=Math.PI/180*(t-90),k=Math.PI/180*(p(c.endAngle,t+360)-90);t=k-q;var n=this.points,u=c.dataLabels.distance;
c=c.ignoreHiddenPoint;var h=n.length;this.startAngleRad=q;this.endAngleRad=k;this.calculateExtremes();a||(this.center=a=this.getCenter());for(k=0;k<h;k++){var f=n[k];var m=this.radii[k];f.labelDistance=p(f.options.dataLabels&&f.options.dataLabels.distance,u);this.maxLabelDistance=Math.max(this.maxLabelDistance||0,f.labelDistance);var d=q+b*t;if(!c||f.visible)b+=f.percentage/100;var r=q+b*t;f.shapeType="arc";f.shapeArgs={x:a[0],y:a[1],r:m,innerR:a[3]/2,start:Math.round(1E3*d)/1E3,end:Math.round(1E3*
r)/1E3};d=(r+d)/2;d>1.5*Math.PI?d-=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]+r+Math.cos(d)*v,y:a[1]+m+Math.sin(d)*v},touchingSliceAt:{x:a[0]+r,y:a[1]+m}}}}x(this,"afterTranslate")}});""});g(b,"masters/modules/variable-pie.src.js",[],function(){})});
//# sourceMappingURL=variable-pie.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 (c) 2010-2019 Highsoft AS
 Author: Sebastian Domas

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/histogram-bellcurve",["highcharts"],function(b){a(b);a.Highcharts=b;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function b(g,a,f,b){g.hasOwnProperty(a)||(g[a]=b.apply(null,f))}a=a?a._modules:{};b(a,"mixins/derived-series.js",[a["parts/Globals.js"],a["parts/Utilities.js"]],function(a,b){var g=b.addEvent,p=b.defined,
l=a.Series;return{hasDerivedData:!0,init:function(){l.prototype.init.apply(this,arguments);this.initialised=!1;this.baseSeries=null;this.eventRemovers=[];this.addEvents()},setDerivedData:a.noop,setBaseSeries:function(){var d=this.chart,a=this.options.baseSeries;this.baseSeries=p(a)&&(d.series[a]||d.get(a))||null},addEvents:function(){var a=this;var b=g(this.chart,"afterLinkSeries",function(){a.setBaseSeries();a.baseSeries&&!a.initialised&&(a.setDerivedData(),a.addBaseSeriesEvents(),a.initialised=
!0)});this.eventRemovers.push(b)},addBaseSeriesEvents:function(){var a=this;var b=g(a.baseSeries,"updatedData",function(){a.setDerivedData()});var f=g(a.baseSeries,"destroy",function(){a.baseSeries=null;a.initialised=!1});a.eventRemovers.push(b,f)},destroy:function(){this.eventRemovers.forEach(function(a){a()});l.prototype.destroy.apply(this,arguments)}}});b(a,"modules/histogram.src.js",[a["parts/Utilities.js"],a["mixins/derived-series.js"]],function(a,b){function g(a){return function(c){for(var e=
1;a[e]<=c;)e++;return a[--e]}}var p=a.arrayMax,l=a.arrayMin,d=a.correctFloat,m=a.isNumber,k=a.merge,r=a.objectEach;a=a.seriesType;var h={"square-root":function(a){return Math.ceil(Math.sqrt(a.options.data.length))},sturges:function(a){return Math.ceil(Math.log(a.options.data.length)*Math.LOG2E)},rice:function(a){return Math.ceil(2*Math.pow(a.options.data.length,1/3))}};a("histogram","column",{binsNumber:"square-root",binWidth:void 0,pointPadding:0,groupPadding:0,grouping:!1,pointPlacement:"between",
tooltip:{headerFormat:"",pointFormat:'<span style="font-size: 10px">{point.x} - {point.x2}</span><br/><span style="color:{point.color}">\u25cf</span> {series.name} <b>{point.y}</b><br/>'}},k(b,{setDerivedData:function(){var a=this.baseSeries.yData;a.length&&(a=this.derivedData(a,this.binsNumber(),this.options.binWidth),this.setData(a,!1))},derivedData:function(a,e,b){var c=p(a),h=d(l(a)),n=[],f={},k=[];b=this.binWidth=this.options.pointRange=d(m(b)?b||1:(c-h)/e);for(e=h;e<c&&(this.userOptions.binWidth||
d(c-e)>=b||0>=d(h+n.length*b-e));e=d(e+b))n.push(e),f[e]=0;0!==f[h]&&(n.push(d(h)),f[d(h)]=0);var q=g(n.map(function(a){return parseFloat(a)}));a.forEach(function(a){a=d(q(a));f[a]++});r(f,function(a,c){k.push({x:Number(c),y:a,x2:d(Number(c)+b)})});k.sort(function(a,c){return a.x-c.x});return k},binsNumber:function(){var a=this.options.binsNumber,b=h[a]||"function"===typeof a&&a;return Math.ceil(b&&b(this.baseSeries)||(m(a)?a:h["square-root"](this.baseSeries)))}}));""});b(a,"modules/bellcurve.src.js",
[a["parts/Utilities.js"],a["mixins/derived-series.js"]],function(a,b){function f(a){var b=a.length;a=a.reduce(function(a,b){return a+b},0);return 0<b&&a/b}function g(a,b){var c=a.length;b=m(b)?b:f(a);a=a.reduce(function(a,c){c-=b;return a+c*c},0);return 1<c&&Math.sqrt(a/(c-1))}function l(a,b,c){a-=b;return Math.exp(-(a*a)/(2*c*c))/(c*Math.sqrt(2*Math.PI))}var d=a.correctFloat,m=a.isNumber,k=a.merge;a=a.seriesType;a("bellcurve","areaspline",{intervals:3,pointsInInterval:3,marker:{enabled:!1}},k(b,
{setMean:function(){this.mean=d(f(this.baseSeries.yData))},setStandardDeviation:function(){this.standardDeviation=d(g(this.baseSeries.yData,this.mean))},setDerivedData:function(){1<this.baseSeries.yData.length&&(this.setMean(),this.setStandardDeviation(),this.setData(this.derivedData(this.mean,this.standardDeviation),!1))},derivedData:function(a,b){var c=this.options.intervals,e=this.options.pointsInInterval,d=a-c*b;c=c*e*2+1;e=b/e;var f=[],g;for(g=0;g<c;g++)f.push([d,l(d,a,b)]),d+=e;return f}}));
""});b(a,"masters/modules/histogram-bellcurve.src.js",[],function(){})});
//# sourceMappingURL=histogram-bellcurve.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Streamgraph module

 (c) 2010-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/streamgraph",["highcharts"],function(b){a(b);a.Highcharts=b;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function b(a,d,b,c){a.hasOwnProperty(d)||(a[d]=c.apply(null,b))}a=a?a._modules:{};b(a,"modules/streamgraph.src.js",[a["parts/Utilities.js"]],function(a){a=a.seriesType;a("streamgraph","areaspline",{fillOpacity:1,
lineWidth:0,marker:{enabled:!1},stacking:"stream"},{negStacks:!1,streamStacker:function(a,b,c){a[0]-=b.total/2;a[1]-=b.total/2;this.stackedYData[c]=a}});""});b(a,"masters/modules/streamgraph.src.js",[],function(){})});
//# sourceMappingURL=streamgraph.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Annotations module

 (c) 2009-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(e){"object"===typeof module&&module.exports?(e["default"]=e,module.exports=e):"function"===typeof define&&define.amd?define("highcharts/modules/annotations",["highcharts"],function(m){e(m);e.Highcharts=m;return e}):e("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(e){function m(d,c,e,k){d.hasOwnProperty(c)||(d[c]=k.apply(null,e))}e=e?e._modules:{};m(e,"annotations/eventEmitterMixin.js",[e["parts/Globals.js"],e["parts/Utilities.js"]],function(d,c){var e=c.addEvent,k=c.inArray,
b=c.objectEach,t=c.pick,q=c.removeEvent,v=d.fireEvent;return{addEvents:function(){var a=this;e(a.graphic.element,"mousedown",function(h){a.onMouseDown(h)});b(a.options.events,function(h,b){var f=function(g){"click"===b&&a.cancelClick||h.call(a,a.chart.pointer.normalize(g),a.target)};if(-1===k(b,a.nonDOMEvents||[]))a.graphic.on(b,f);else e(a,b,f)});a.options.draggable&&(e(a,"drag",a.onDrag),a.graphic.renderer.styledMode||a.graphic.css({cursor:{x:"ew-resize",y:"ns-resize",xy:"move"}[a.options.draggable]}));
a.isUpdating||v(a,"add")},removeDocEvents:function(){this.removeDrag&&(this.removeDrag=this.removeDrag());this.removeMouseUp&&(this.removeMouseUp=this.removeMouseUp())},onMouseDown:function(a){var h=this,b=h.chart.pointer;a.preventDefault&&a.preventDefault();if(2!==a.button){a=b.normalize(a);var f=a.chartX;var g=a.chartY;h.cancelClick=!1;h.chart.hasDraggedAnnotation=!0;h.removeDrag=e(d.doc,"mousemove",function(a){h.hasDragged=!0;a=b.normalize(a);a.prevChartX=f;a.prevChartY=g;v(h,"drag",a);f=a.chartX;
g=a.chartY});h.removeMouseUp=e(d.doc,"mouseup",function(g){h.cancelClick=h.hasDragged;h.hasDragged=!1;h.chart.hasDraggedAnnotation=!1;v(t(h.target,h),"afterUpdate");h.onMouseUp(g)})}},onMouseUp:function(a){var h=this.chart;a=this.target||this;var b=h.options.annotations;h=h.annotations.indexOf(a);this.removeDocEvents();b[h]=a.options},onDrag:function(a){if(this.chart.isInsidePlot(a.chartX-this.chart.plotLeft,a.chartY-this.chart.plotTop)){var h=this.mouseMoveToTranslation(a);"x"===this.options.draggable&&
(h.y=0);"y"===this.options.draggable&&(h.x=0);this.points.length?this.translate(h.x,h.y):(this.shapes.forEach(function(a){a.translate(h.x,h.y)}),this.labels.forEach(function(a){a.translate(h.x,h.y)}));this.redraw(!1)}},mouseMoveToRadians:function(a,h,b){var f=a.prevChartY-b,g=a.prevChartX-h;b=a.chartY-b;a=a.chartX-h;this.chart.inverted&&(h=g,g=f,f=h,h=a,a=b,b=h);return Math.atan2(b,a)-Math.atan2(f,g)},mouseMoveToTranslation:function(a){var h=a.chartX-a.prevChartX;a=a.chartY-a.prevChartY;if(this.chart.inverted){var b=
a;a=h;h=b}return{x:h,y:a}},mouseMoveToScale:function(a,h,b){h=(a.chartX-h||1)/(a.prevChartX-h||1);a=(a.chartY-b||1)/(a.prevChartY-b||1);this.chart.inverted&&(b=a,a=h,h=b);return{x:h,y:a}},destroy:function(){this.removeDocEvents();q(this);this.hcEvents=null}}});m(e,"annotations/ControlPoint.js",[e["parts/Utilities.js"],e["annotations/eventEmitterMixin.js"]],function(d,c){var e=d.extend,k=d.merge,b=d.pick;d=function(c,d,e,a){this.chart=c;this.target=d;this.options=e;this.index=b(e.index,a)};e(d.prototype,
c);d.prototype.nonDOMEvents=["drag"];d.prototype.setVisibility=function(b){this.graphic.attr("visibility",b?"visible":"hidden");this.options.visible=b};d.prototype.render=function(){var b=this.chart,c=this.options;this.graphic=b.renderer.symbol(c.symbol,0,0,c.width,c.height).add(b.controlPointsGroup).css(c.style);this.setVisibility(c.visible);this.addEvents()};d.prototype.redraw=function(b){this.graphic[b?"animate":"attr"](this.options.positioner.call(this,this.target))};d.prototype.destroy=function(){c.destroy.call(this);
this.graphic&&(this.graphic=this.graphic.destroy());this.options=this.target=this.chart=null};d.prototype.update=function(b){var c=this.chart,d=this.target,a=this.index;b=k(!0,this.options,b);this.destroy();this.constructor(c,d,b,a);this.render(c.controlPointsGroup);this.redraw()};return d});m(e,"annotations/MockPoint.js",[e["parts/Globals.js"],e["parts/Utilities.js"]],function(d,c){var e=c.defined;c=c.extend;var k=function(b,c,e){this.series={visible:!0,chart:b,getPlotBox:d.Series.prototype.getPlotBox};
this.target=c||null;this.options=e;this.applyOptions(this.getOptions())};k.fromPoint=function(b){return new k(b.series.chart,null,{x:b.x,y:b.y,xAxis:b.series.xAxis,yAxis:b.series.yAxis})};k.pointToPixels=function(b,c){var d=b.series,e=d.chart,a=b.plotX,h=b.plotY;e.inverted&&(b.mock?(a=b.plotY,h=b.plotX):(a=e.plotWidth-b.plotY,h=e.plotHeight-b.plotX));d&&!c&&(b=d.getPlotBox(),a+=b.translateX,h+=b.translateY);return{x:a,y:h}};k.pointToOptions=function(b){return{x:b.x,y:b.y,xAxis:b.series.xAxis,yAxis:b.series.yAxis}};
c(k.prototype,{mock:!0,hasDynamicOptions:function(){return"function"===typeof this.options},getOptions:function(){return this.hasDynamicOptions()?this.options(this.target):this.options},applyOptions:function(b){this.command=b.command;this.setAxis(b,"x");this.setAxis(b,"y");this.refresh()},setAxis:function(b,c){c+="Axis";b=b[c];var q=this.series.chart;this.series[c]=b instanceof d.Axis?b:e(b)?q[c][b]||q.get(b):null},toAnchor:function(){var b=[this.plotX,this.plotY,0,0];this.series.chart.inverted&&
(b[0]=this.plotY,b[1]=this.plotX);return b},getLabelConfig:function(){return{x:this.x,y:this.y,point:this}},isInsidePane:function(){var b=this.plotX,c=this.plotY,d=this.series.xAxis,k=this.series.yAxis,a=!0;d&&(a=e(b)&&0<=b&&b<=d.len);k&&(a=a&&e(c)&&0<=c&&c<=k.len);return a},refresh:function(){var b=this.series,c=b.xAxis;b=b.yAxis;var d=this.getOptions();c?(this.x=d.x,this.plotX=c.toPixels(d.x,!0)):(this.x=null,this.plotX=d.x);b?(this.y=d.y,this.plotY=b.toPixels(d.y,!0)):(this.y=null,this.plotY=d.y);
this.isInside=this.isInsidePane()},translate:function(b,c,d,e){this.hasDynamicOptions()||(this.plotX+=d,this.plotY+=e,this.refreshOptions())},scale:function(b,c,d,e){if(!this.hasDynamicOptions()){var a=this.plotY*e;this.plotX=(1-d)*b+this.plotX*d;this.plotY=(1-e)*c+a;this.refreshOptions()}},rotate:function(b,c,d){if(!this.hasDynamicOptions()){var e=Math.cos(d);d=Math.sin(d);var a=this.plotX,h=this.plotY;a-=b;h-=c;this.plotX=a*e-h*d+b;this.plotY=a*d+h*e+c;this.refreshOptions()}},refreshOptions:function(){var b=
this.series,c=b.xAxis;b=b.yAxis;this.x=this.options.x=c?this.options.x=c.toValue(this.plotX,!0):this.plotX;this.y=this.options.y=b?b.toValue(this.plotY,!0):this.plotY}});return k});m(e,"annotations/controllable/controllableMixin.js",[e["parts/Utilities.js"],e["annotations/ControlPoint.js"],e["annotations/MockPoint.js"],e["parts/Tooltip.js"]],function(d,c,e,k){var b=d.isObject,t=d.isString,q=d.merge,B=d.splat;return{init:function(a,b,c){this.annotation=a;this.chart=a.chart;this.options=b;this.points=
[];this.controlPoints=[];this.index=c;this.linkPoints();this.addControlPoints()},attr:function(){this.graphic.attr.apply(this.graphic,arguments)},getPointsOptions:function(){var a=this.options;return a.points||a.point&&B(a.point)},attrsFromOptions:function(a){var b=this.constructor.attrsMap,c={},f,g=this.chart.styledMode;for(f in a){var l=b[f];!l||g&&-1!==["fill","stroke","stroke-width"].indexOf(l)||(c[l]=a[f])}return c},anchor:function(a){var b=a.series.getPlotBox();a=a.mock?a.toAnchor():k.prototype.getAnchor.call({chart:a.series.chart},
a);a={x:a[0]+(this.options.x||0),y:a[1]+(this.options.y||0),height:a[2]||0,width:a[3]||0};return{relativePosition:a,absolutePosition:q(a,{x:a.x+b.translateX,y:a.y+b.translateY})}},point:function(a,c){if(a&&a.series)return a;c&&null!==c.series||(b(a)?c=new e(this.chart,this,a):t(a)?c=this.chart.get(a)||null:"function"===typeof a&&(c=a.call(c,this),c=c.series?c:new e(this.chart,this,a)));return c},linkPoints:function(){var a=this.getPointsOptions(),b=this.points,c=a&&a.length||0,f;for(f=0;f<c;f++){var g=
this.point(a[f],b[f]);if(!g){b.length=0;return}g.mock&&g.refresh();b[f]=g}return b},addControlPoints:function(){var a=this.options.controlPoints;(a||[]).forEach(function(b,d){b=q(this.options.controlPointOptions,b);b.index||(b.index=d);a[d]=b;this.controlPoints.push(new c(this.chart,this,b))},this)},shouldBeDrawn:function(){return!!this.points.length},render:function(a){this.controlPoints.forEach(function(a){a.render()})},redraw:function(a){this.controlPoints.forEach(function(b){b.redraw(a)})},transform:function(a,
b,c,f,g){if(this.chart.inverted){var l=b;b=c;c=l}this.points.forEach(function(l,d){this.transformPoint(a,b,c,f,g,d)},this)},transformPoint:function(a,b,c,f,g,l){var d=this.points[l];d.mock||(d=this.points[l]=e.fromPoint(d));d[a](b,c,f,g)},translate:function(a,b){this.transform("translate",null,null,a,b)},translatePoint:function(a,b,c){this.transformPoint("translate",null,null,a,b,c)},translateShape:function(a,b){var c=this.annotation.chart,f=this.annotation.userOptions,g=c.annotations.indexOf(this.annotation);
c=c.options.annotations[g];this.translatePoint(a,b,0);c[this.collection][this.index].point=this.options.point;f[this.collection][this.index].point=this.options.point},rotate:function(a,b,c){this.transform("rotate",a,b,c)},scale:function(a,b,c,f){this.transform("scale",a,b,c,f)},setControlPointsVisibility:function(a){this.controlPoints.forEach(function(b){b.setVisibility(a)})},destroy:function(){this.graphic&&(this.graphic=this.graphic.destroy());this.tracker&&(this.tracker=this.tracker.destroy());
this.controlPoints.forEach(function(a){a.destroy()});this.options=this.controlPoints=this.points=this.chart=null;this.annotation&&(this.annotation=null)},update:function(a){var b=this.annotation;a=q(!0,this.options,a);var c=this.graphic.parentGroup;this.destroy();this.constructor(b,a);this.render(c);this.redraw()}}});m(e,"annotations/controllable/markerMixin.js",[e["parts/Globals.js"],e["parts/Utilities.js"]],function(d,c){var e=c.addEvent,k=c.defined,b=c.merge,t=c.objectEach,q=c.uniqueKey,v={arrow:{tagName:"marker",
render:!1,id:"arrow",refY:5,refX:9,markerWidth:10,markerHeight:10,children:[{tagName:"path",d:"M 0 0 L 10 5 L 0 10 Z",strokeWidth:0}]},"reverse-arrow":{tagName:"marker",render:!1,id:"reverse-arrow",refY:5,refX:1,markerWidth:10,markerHeight:10,children:[{tagName:"path",d:"M 0 5 L 10 0 L 10 10 Z",strokeWidth:0}]}};d.SVGRenderer.prototype.addMarker=function(a,c){var d={id:a},f={stroke:c.color||"none",fill:c.color||"rgba(0, 0, 0, 0.75)"};d.children=c.children.map(function(a){return b(f,a)});c=this.definition(b(!0,
{markerWidth:20,markerHeight:20,refX:0,refY:0,orient:"auto"},c,d));c.id=a;return c};c=function(a){return function(b){this.attr(a,"url(#"+b+")")}};c={markerEndSetter:c("marker-end"),markerStartSetter:c("marker-start"),setItemMarkers:function(a){var c=a.options,d=a.chart,f=d.options.defs,g=c.fill,l=k(g)&&"none"!==g?g:c.stroke;["markerStart","markerEnd"].forEach(function(g){var p=c[g],e;if(p){for(e in f){var h=f[e];if(p===h.id&&"marker"===h.tagName){var n=h;break}}n&&(p=a[g]=d.renderer.addMarker((c.id||
q())+"-"+n.id,b(n,{color:l})),a.attr(g,p.attr("id")))}})}};e(d.Chart,"afterGetContainer",function(){this.options.defs=b(v,this.options.defs||{});t(this.options.defs,function(a){"marker"===a.tagName&&!1!==a.render&&this.renderer.addMarker(a.id,a)},this)});return c});m(e,"annotations/controllable/ControllablePath.js",[e["parts/Globals.js"],e["parts/Utilities.js"],e["annotations/controllable/controllableMixin.js"],e["annotations/controllable/markerMixin.js"]],function(d,c,e,k){var b=c.extend;c=c.merge;
var t="rgba(192,192,192,"+(d.svg?.0001:.002)+")";d=function(b,c,a){this.init(b,c,a);this.collection="shapes"};d.attrsMap={dashStyle:"dashstyle",strokeWidth:"stroke-width",stroke:"stroke",fill:"fill",zIndex:"zIndex"};c(!0,d.prototype,e,{type:"path",setMarkers:k.setItemMarkers,toD:function(){var b=this.options.d;if(b)return"function"===typeof b?b.call(this):b;var c=this.points,a=c.length,d=a,e=c[0],f=d&&this.anchor(e).absolutePosition,g=0,l=2;for(b=f&&["M",f.x,f.y];++g<a&&d;)e=c[g],d=e.command||"L",
f=this.anchor(e).absolutePosition,"Z"===d?b[++l]=d:(d!==c[g-1].command&&(b[++l]=d),b[++l]=f.x,b[++l]=f.y),d=e.series.visible;return d?this.chart.renderer.crispLine(b,this.graphic.strokeWidth()):null},shouldBeDrawn:function(){return e.shouldBeDrawn.call(this)||!!this.options.d},render:function(c){var d=this.options,a=this.attrsFromOptions(d);this.graphic=this.annotation.chart.renderer.path(["M",0,0]).attr(a).add(c);d.className&&this.graphic.addClass(d.className);this.tracker=this.annotation.chart.renderer.path(["M",
0,0]).addClass("highcharts-tracker-line").attr({zIndex:2}).add(c);this.annotation.chart.styledMode||this.tracker.attr({"stroke-linejoin":"round",stroke:t,fill:t,"stroke-width":this.graphic.strokeWidth()+2*d.snap});e.render.call(this);b(this.graphic,{markerStartSetter:k.markerStartSetter,markerEndSetter:k.markerEndSetter});this.setMarkers(this)},redraw:function(b){var c=this.toD(),a=b?"animate":"attr";c?(this.graphic[a]({d:c}),this.tracker[a]({d:c})):(this.graphic.attr({d:"M 0 -9000000000"}),this.tracker.attr({d:"M 0 -9000000000"}));
this.graphic.placed=this.tracker.placed=!!c;e.redraw.call(this,b)}});return d});m(e,"annotations/controllable/ControllableRect.js",[e["parts/Utilities.js"],e["annotations/controllable/controllableMixin.js"],e["annotations/controllable/ControllablePath.js"]],function(d,c,e){d=d.merge;var k=function(b,c,d){this.init(b,c,d);this.collection="shapes"};k.attrsMap=d(e.attrsMap,{width:"width",height:"height"});d(!0,k.prototype,c,{type:"rect",translate:c.translateShape,render:function(b){var d=this.attrsFromOptions(this.options);
this.graphic=this.annotation.chart.renderer.rect(0,-9E9,0,0).attr(d).add(b);c.render.call(this)},redraw:function(b){var d=this.anchor(this.points[0]).absolutePosition;if(d)this.graphic[b?"animate":"attr"]({x:d.x,y:d.y,width:this.options.width,height:this.options.height});else this.attr({x:0,y:-9E9});this.graphic.placed=!!d;c.redraw.call(this,b)}});return k});m(e,"annotations/controllable/ControllableCircle.js",[e["parts/Utilities.js"],e["annotations/controllable/controllableMixin.js"],e["annotations/controllable/ControllablePath.js"]],
function(d,c,e){d=d.merge;var k=function(b,c,d){this.init(b,c,d);this.collection="shapes"};k.attrsMap=d(e.attrsMap,{r:"r"});d(!0,k.prototype,c,{type:"circle",translate:c.translateShape,render:function(b){var d=this.attrsFromOptions(this.options);this.graphic=this.annotation.chart.renderer.circle(0,-9E9,0).attr(d).add(b);c.render.call(this)},redraw:function(b){var d=this.anchor(this.points[0]).absolutePosition;if(d)this.graphic[b?"animate":"attr"]({x:d.x,y:d.y,r:this.options.r});else this.graphic.attr({x:0,
y:-9E9});this.graphic.placed=!!d;c.redraw.call(this,b)},setRadius:function(b){this.options.r=b}});return k});m(e,"annotations/controllable/ControllableLabel.js",[e["parts/Globals.js"],e["parts/Utilities.js"],e["annotations/controllable/controllableMixin.js"],e["annotations/MockPoint.js"],e["parts/Tooltip.js"]],function(d,c,e,k,b){var t=c.extend,q=c.format,B=c.isNumber,a=c.merge,h=c.pick,m=function(a,g,b){this.init(a,g,b);this.collection="labels"};m.shapesWithoutBackground=["connector"];m.alignedPosition=
function(a,b){var c=a.align,g=a.verticalAlign,f=(b.x||0)+(a.x||0),d=(b.y||0)+(a.y||0),e,n;"right"===c?e=1:"center"===c&&(e=2);e&&(f+=(b.width-(a.width||0))/e);"bottom"===g?n=1:"middle"===g&&(n=2);n&&(d+=(b.height-(a.height||0))/n);return{x:Math.round(f),y:Math.round(d)}};m.justifiedOptions=function(a,b,c,d){var g=c.align,f=c.verticalAlign,e=b.box?0:b.padding||0,n=b.getBBox();b={align:g,verticalAlign:f,x:c.x,y:c.y,width:b.width,height:b.height};c=d.x-a.plotLeft;var l=d.y-a.plotTop;d=c+e;0>d&&("right"===
g?b.align="left":b.x=-d);d=c+n.width-e;d>a.plotWidth&&("left"===g?b.align="right":b.x=a.plotWidth-d);d=l+e;0>d&&("bottom"===f?b.verticalAlign="top":b.y=-d);d=l+n.height-e;d>a.plotHeight&&("top"===f?b.verticalAlign="bottom":b.y=a.plotHeight-d);return b};m.attrsMap={backgroundColor:"fill",borderColor:"stroke",borderWidth:"stroke-width",zIndex:"zIndex",borderRadius:"r",padding:"padding"};a(!0,m.prototype,e,{translatePoint:function(b,a){e.translatePoint.call(this,b,a,0)},translate:function(b,a){var c=
this.annotation.chart,d=this.annotation.userOptions,g=c.annotations.indexOf(this.annotation);g=c.options.annotations[g];c.inverted&&(c=b,b=a,a=c);this.options.x+=b;this.options.y+=a;g[this.collection][this.index].x=this.options.x;g[this.collection][this.index].y=this.options.y;d[this.collection][this.index].x=this.options.x;d[this.collection][this.index].y=this.options.y},render:function(b){var a=this.options,c=this.attrsFromOptions(a),d=a.style;this.graphic=this.annotation.chart.renderer.label("",
0,-9999,a.shape,null,null,a.useHTML,null,"annotation-label").attr(c).add(b);this.annotation.chart.styledMode||("contrast"===d.color&&(d.color=this.annotation.chart.renderer.getContrast(-1<m.shapesWithoutBackground.indexOf(a.shape)?"#FFFFFF":a.backgroundColor)),this.graphic.css(a.style).shadow(a.shadow));a.className&&this.graphic.addClass(a.className);this.graphic.labelrank=a.labelrank;e.render.call(this)},redraw:function(a){var b=this.options,c=this.text||b.format||b.text,d=this.graphic,f=this.points[0];
d.attr({text:c?q(c,f.getLabelConfig(),this.annotation.chart):b.formatter.call(f,this)});b=this.anchor(f);(c=this.position(b))?(d.alignAttr=c,c.anchorX=b.absolutePosition.x,c.anchorY=b.absolutePosition.y,d[a?"animate":"attr"](c)):d.attr({x:0,y:-9999});d.placed=!!c;e.redraw.call(this,a)},anchor:function(){var b=e.anchor.apply(this,arguments),a=this.options.x||0,c=this.options.y||0;b.absolutePosition.x-=a;b.absolutePosition.y-=c;b.relativePosition.x-=a;b.relativePosition.y-=c;return b},position:function(a){var c=
this.graphic,d=this.annotation.chart,f=this.points[0],e=this.options,u=a.absolutePosition,r=a.relativePosition;if(a=f.series.visible&&k.prototype.isInsidePane.call(f)){if(e.distance)var n=b.prototype.getPosition.call({chart:d,distance:h(e.distance,16)},c.width,c.height,{plotX:r.x,plotY:r.y,negative:f.negative,ttBelow:f.ttBelow,h:r.height||r.width});else e.positioner?n=e.positioner.call(this):(f={x:u.x,y:u.y,width:0,height:0},n=m.alignedPosition(t(e,{width:c.width,height:c.height}),f),"justify"===
this.options.overflow&&(n=m.alignedPosition(m.justifiedOptions(d,c,e,n),f)));e.crop&&(e=n.x-d.plotLeft,f=n.y-d.plotTop,a=d.isInsidePlot(e,f)&&d.isInsidePlot(e+c.width,f+c.height))}return a?n:null}});d.SVGRenderer.prototype.symbols.connector=function(b,a,c,d,e){var f=e&&e.anchorX;e=e&&e.anchorY;var g=c/2;if(B(f)&&B(e)){var n=["M",f,e];var A=a-e;0>A&&(A=-d-A);A<c&&(g=f<b+c/2?A:c-A);e>a+d?n.push("L",b+g,a+d):e<a?n.push("L",b+g,a):f<b?n.push("L",b,a+d/2):f>b+c&&n.push("L",b+c,a+d/2)}return n||[]};return m});
m(e,"annotations/controllable/ControllableImage.js",[e["parts/Utilities.js"],e["annotations/controllable/controllableMixin.js"],e["annotations/controllable/ControllableLabel.js"]],function(d,c,e){d=d.merge;var k=function(b,c,d){this.init(b,c,d);this.collection="shapes"};k.attrsMap={width:"width",height:"height",zIndex:"zIndex"};d(!0,k.prototype,c,{type:"image",translate:c.translateShape,render:function(b){var d=this.attrsFromOptions(this.options),e=this.options;this.graphic=this.annotation.chart.renderer.image(e.src,
0,-9E9,e.width,e.height).attr(d).add(b);this.graphic.width=e.width;this.graphic.height=e.height;c.render.call(this)},redraw:function(b){var d=this.anchor(this.points[0]);if(d=e.prototype.position.call(this,d))this.graphic[b?"animate":"attr"]({x:d.x,y:d.y});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!d;c.redraw.call(this,b)}});return k});m(e,"annotations/annotations.src.js",[e["parts/Globals.js"],e["parts/Utilities.js"],e["annotations/controllable/controllableMixin.js"],e["annotations/controllable/ControllableRect.js"],
e["annotations/controllable/ControllableCircle.js"],e["annotations/controllable/ControllablePath.js"],e["annotations/controllable/ControllableImage.js"],e["annotations/controllable/ControllableLabel.js"],e["annotations/eventEmitterMixin.js"],e["annotations/MockPoint.js"],e["annotations/ControlPoint.js"]],function(d,c,e,k,b,m,q,v,a,h,C){var f=c.addEvent,g=c.defined,l=c.destroyObjectProperties,p=c.erase,z=c.extend,u=c.find,r=c.merge,n=c.pick,A=c.splat;c=c.wrap;var w=d.fireEvent,D=d.reduce,x=d.Chart.prototype,
y=d.Annotation=function(b,a){this.chart=b;this.points=[];this.controlPoints=[];this.coll="annotations";this.labels=[];this.shapes=[];this.options=r(this.defaultOptions,a);this.userOptions=a;a=this.getLabelsAndShapesOptions(this.options,a);this.options.labels=a.labels;this.options.shapes=a.shapes;this.init(b,this.options)};r(!0,y.prototype,e,a,{nonDOMEvents:["add","afterUpdate","drag","remove"],defaultOptions:{visible:!0,draggable:"xy",labelOptions:{align:"center",allowOverlap:!1,backgroundColor:"rgba(0, 0, 0, 0.75)",
borderColor:"black",borderRadius:3,borderWidth:1,className:"",crop:!1,formatter:function(){return g(this.y)?this.y:"Annotation label"},overflow:"justify",padding:5,shadow:!1,shape:"callout",style:{fontSize:"11px",fontWeight:"normal",color:"contrast"},useHTML:!1,verticalAlign:"bottom",x:0,y:-16},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1,fill:"rgba(0, 0, 0, 0.75)",r:0,snap:2},controlPointOptions:{symbol:"circle",width:10,height:10,style:{stroke:"black","stroke-width":2,fill:"white"},
visible:!1,events:{}},events:{},zIndex:6},init:function(){this.linkPoints();this.addControlPoints();this.addShapes();this.addLabels();this.addClipPaths();this.setLabelCollector()},getLabelsAndShapesOptions:function(a,b){var c={};["labels","shapes"].forEach(function(d){a[d]&&(c[d]=A(b[d]).map(function(b,c){return r(a[d][c],b)}))});return c},addShapes:function(){(this.options.shapes||[]).forEach(function(a,b){a=this.initShape(a,b);r(!0,this.options.shapes[b],a.options)},this)},addLabels:function(){(this.options.labels||
[]).forEach(function(a,b){a=this.initLabel(a,b);r(!0,this.options.labels[b],a.options)},this)},addClipPaths:function(){this.setClipAxes();this.clipXAxis&&this.clipYAxis&&(this.clipRect=this.chart.renderer.clipRect(this.getClipBox()))},setClipAxes:function(){var a=this.chart.xAxis,b=this.chart.yAxis,c=D((this.options.labels||[]).concat(this.options.shapes||[]),function(c,d){return[a[d&&d.point&&d.point.xAxis]||c[0],b[d&&d.point&&d.point.yAxis]||c[1]]},[]);this.clipXAxis=c[0];this.clipYAxis=c[1]},getClipBox:function(){return{x:this.clipXAxis.left,
y:this.clipYAxis.top,width:this.clipXAxis.width,height:this.clipYAxis.height}},setLabelCollector:function(){var a=this;a.labelCollector=function(){return a.labels.reduce(function(a,b){b.options.allowOverlap||a.push(b.graphic);return a},[])};a.chart.labelCollectors.push(a.labelCollector)},setOptions:function(a){this.options=r(this.defaultOptions,a)},redraw:function(a){this.linkPoints();this.graphic||this.render();this.clipRect&&this.clipRect.animate(this.getClipBox());this.redrawItems(this.shapes,
a);this.redrawItems(this.labels,a);e.redraw.call(this,a)},redrawItems:function(a,b){for(var c=a.length;c--;)this.redrawItem(a[c],b)},render:function(){var a=this.chart.renderer;this.graphic=a.g("annotation").attr({zIndex:this.options.zIndex,visibility:this.options.visible?"visible":"hidden"}).add();this.shapesGroup=a.g("annotation-shapes").add(this.graphic).clip(this.chart.plotBoxClip);this.labelsGroup=a.g("annotation-labels").attr({translateX:0,translateY:0}).add(this.graphic);this.clipRect&&this.graphic.clip(this.clipRect);
this.addEvents();e.render.call(this)},setVisibility:function(a){var b=this.options;a=n(a,!b.visible);this.graphic.attr("visibility",a?"visible":"hidden");a||this.setControlPointsVisibility(!1);b.visible=a},setControlPointsVisibility:function(a){var b=function(b){b.setControlPointsVisibility(a)};e.setControlPointsVisibility.call(this,a);this.shapes.forEach(b);this.labels.forEach(b)},destroy:function(){var b=this.chart,c=function(a){a.destroy()};this.labels.forEach(c);this.shapes.forEach(c);this.clipYAxis=
this.clipXAxis=null;p(b.labelCollectors,this.labelCollector);a.destroy.call(this);e.destroy.call(this);l(this,b)},remove:function(){return this.chart.removeAnnotation(this)},update:function(a){var b=this.chart,c=this.getLabelsAndShapesOptions(this.userOptions,a),d=b.annotations.indexOf(this);a=r(!0,this.userOptions,a);a.labels=c.labels;a.shapes=c.shapes;this.destroy();this.constructor(b,a);b.options.annotations[d]=a;this.isUpdating=!0;this.redraw();this.isUpdating=!1;w(this,"afterUpdate")},initShape:function(a,
b){a=r(this.options.shapeOptions,{controlPointOptions:this.options.controlPointOptions},a);b=new y.shapesMap[a.type](this,a,b);b.itemType="shape";this.shapes.push(b);return b},initLabel:function(a,b){a=r(this.options.labelOptions,{controlPointOptions:this.options.controlPointOptions},a);b=new v(this,a,b);b.itemType="label";this.labels.push(b);return b},redrawItem:function(a,b){a.linkPoints();a.shouldBeDrawn()?(a.graphic||this.renderItem(a),a.redraw(n(b,!0)&&a.graphic.placed),a.points.length&&this.adjustVisibility(a)):
this.destroyItem(a)},adjustVisibility:function(a){var b=!1,c=a.graphic;a.points.forEach(function(a){!1!==a.series.visible&&!1!==a.visible&&(b=!0)});b?"hidden"===c.visibility&&c.show():c.hide()},destroyItem:function(a){p(this[a.itemType+"s"],a);a.destroy()},renderItem:function(a){a.render("label"===a.itemType?this.labelsGroup:this.shapesGroup)}});y.shapesMap={rect:k,circle:b,path:m,image:q};y.types={};y.MockPoint=h;y.ControlPoint=C;d.extendAnnotation=function(a,b,c,d){b=b||y;r(!0,a.prototype,b.prototype,
c);a.prototype.defaultOptions=r(a.prototype.defaultOptions,d||{})};z(x,{initAnnotation:function(a){a=new (y.types[a.type]||y)(this,a);this.annotations.push(a);return a},addAnnotation:function(a,b){a=this.initAnnotation(a);this.options.annotations.push(a.options);n(b,!0)&&a.redraw();return a},removeAnnotation:function(a){var b=this.annotations,c="annotations"===a.coll?a:u(b,function(b){return b.options.id===a});c&&(w(c,"remove"),p(this.options.annotations,c.options),p(b,c),c.destroy())},drawAnnotations:function(){this.plotBoxClip.attr(this.plotBox);
this.annotations.forEach(function(a){a.redraw()})}});x.collectionsWithUpdate.push("annotations");x.collectionsWithInit.annotations=[x.addAnnotation];x.callbacks.push(function(a){a.annotations=[];a.options.annotations||(a.options.annotations=[]);a.plotBoxClip=this.renderer.clipRect(this.plotBox);a.controlPointsGroup=a.renderer.g("control-points").attr({zIndex:99}).clip(a.plotBoxClip).add();a.options.annotations.forEach(function(b,c){b=a.initAnnotation(b);a.options.annotations[c]=b.options});a.drawAnnotations();
f(a,"redraw",a.drawAnnotations);f(a,"destroy",function(){a.plotBoxClip.destroy();a.controlPointsGroup.destroy()})});c(d.Pointer.prototype,"onContainerMouseDown",function(a){this.chart.hasDraggedAnnotation||a.apply(this,Array.prototype.slice.call(arguments,1))})});m(e,"mixins/navigation.js",[],function(){return{initUpdate:function(d){d.navigation||(d.navigation={updates:[],update:function(c,d){this.updates.forEach(function(e){e.update.call(e.context,c,d)})}})},addUpdate:function(d,c){c.navigation||
this.initUpdate(c);c.navigation.updates.push({update:d,context:c})}}});m(e,"annotations/navigationBindings.js",[e["parts/Globals.js"],e["parts/Utilities.js"],e["mixins/navigation.js"]],function(d,c,e){function k(b){var c=b.prototype.defaultOptions.events&&b.prototype.defaultOptions.events.click;l(!0,b.prototype.defaultOptions.events,{click:function(b){var d=this,e=d.chart.navigationBindings,f=e.activeAnnotation;c&&c.click.call(d,b);f!==d?(e.deselectAnnotation(),e.activeAnnotation=d,d.setControlPointsVisibility(!0),
a(e,"showPopup",{annotation:d,formType:"annotation-toolbar",options:e.annotationToFields(d),onSubmit:function(a){var b={};"remove"===a.actionType?(e.activeAnnotation=!1,e.chart.removeAnnotation(d)):(e.fieldsToOptions(a.fields,b),e.deselectAnnotation(),a=b.typeOptions,"measure"===d.options.type&&(a.crosshairY.enabled=0!==a.crosshairY.strokeWidth,a.crosshairX.enabled=0!==a.crosshairX.strokeWidth),d.update(b))}})):(e.deselectAnnotation(),a(e,"closePopup"));b.activeAnnotation=!0}})}var b=c.addEvent,m=
c.attr,q=c.extend,B=c.format,a=c.fireEvent,h=c.isArray,C=c.isFunction,f=c.isNumber,g=c.isObject,l=c.merge,p=c.objectEach,z=c.pick,u=d.doc,r=d.win;d.NavigationBindings=function(a,b){this.chart=a;this.options=b;this.eventsToUnbind=[];this.container=u.getElementsByClassName(this.options.bindingsClassName)};d.NavigationBindings.annotationsEditable={nestedOptions:{labelOptions:["style","format","backgroundColor"],labels:["style"],label:["style"],style:["fontSize","color"],background:["fill","strokeWidth",
"stroke"],innerBackground:["fill","strokeWidth","stroke"],outerBackground:["fill","strokeWidth","stroke"],shapeOptions:["fill","strokeWidth","stroke"],shapes:["fill","strokeWidth","stroke"],line:["strokeWidth","stroke"],backgroundColors:[!0],connector:["fill","strokeWidth","stroke"],crosshairX:["strokeWidth","stroke"],crosshairY:["strokeWidth","stroke"]},circle:["shapes"],verticalLine:[],label:["labelOptions"],measure:["background","crosshairY","crosshairX"],fibonacci:[],tunnel:["background","line",
"height"],pitchfork:["innerBackground","outerBackground"],rect:["shapes"],crookedLine:[]};d.NavigationBindings.annotationsNonEditable={rectangle:["crosshairX","crosshairY","label"]};q(d.NavigationBindings.prototype,{initEvents:function(){var a=this,c=a.chart,d=a.container,e=a.options;a.boundClassNames={};p(e.bindings,function(b){a.boundClassNames[b.className]=b});[].forEach.call(d,function(c){a.eventsToUnbind.push(b(c,"click",function(b){var c=a.getButtonEvents(d,b);c&&a.bindingsButtonClick(c.button,
c.events,b)}))});p(e.events||{},function(c,d){C(c)&&a.eventsToUnbind.push(b(a,d,c))});a.eventsToUnbind.push(b(c.container,"click",function(b){!c.cancelClick&&c.isInsidePlot(b.chartX-c.plotLeft,b.chartY-c.plotTop)&&a.bindingsChartClick(this,b)}));a.eventsToUnbind.push(b(c.container,"mousemove",function(b){a.bindingsContainerMouseMove(this,b)}))},initUpdate:function(){var a=this;e.addUpdate(function(b){a.update(b)},this.chart)},bindingsButtonClick:function(b,c,d){var e=this.chart;this.selectedButtonElement&&
(a(this,"deselectButton",{button:this.selectedButtonElement}),this.nextEvent&&(this.currentUserDetails&&"annotations"===this.currentUserDetails.coll&&e.removeAnnotation(this.currentUserDetails),this.mouseMoveEvent=this.nextEvent=!1));this.selectedButton=c;this.selectedButtonElement=b;a(this,"selectButton",{button:b});c.init&&c.init.call(this,b,d);(c.start||c.steps)&&e.renderer.boxWrapper.addClass("highcharts-draw-mode")},bindingsChartClick:function(b,c){b=this.chart;var d=this.selectedButton;b=b.renderer.boxWrapper;
var e;if(e=this.activeAnnotation&&!c.activeAnnotation&&c.target.parentNode){a:{e=c.target;var f=r.Element.prototype,g=f.matches||f.msMatchesSelector||f.webkitMatchesSelector,n=null;if(f.closest)n=f.closest.call(e,".highcharts-popup");else{do{if(g.call(e,".highcharts-popup"))break a;e=e.parentElement||e.parentNode}while(null!==e&&1===e.nodeType)}e=n}e=!e}e&&(a(this,"closePopup"),this.deselectAnnotation());d&&d.start&&(this.nextEvent?(this.nextEvent(c,this.currentUserDetails),this.steps&&(this.stepIndex++,
d.steps[this.stepIndex]?this.mouseMoveEvent=this.nextEvent=d.steps[this.stepIndex]:(a(this,"deselectButton",{button:this.selectedButtonElement}),b.removeClass("highcharts-draw-mode"),d.end&&d.end.call(this,c,this.currentUserDetails),this.mouseMoveEvent=this.nextEvent=!1,this.selectedButton=null))):(this.currentUserDetails=d.start.call(this,c),d.steps?(this.stepIndex=0,this.steps=!0,this.mouseMoveEvent=this.nextEvent=d.steps[this.stepIndex]):(a(this,"deselectButton",{button:this.selectedButtonElement}),
b.removeClass("highcharts-draw-mode"),this.steps=!1,this.selectedButton=null,d.end&&d.end.call(this,c,this.currentUserDetails))))},bindingsContainerMouseMove:function(a,b){this.mouseMoveEvent&&this.mouseMoveEvent(b,this.currentUserDetails)},fieldsToOptions:function(a,b){p(a,function(a,c){var d=parseFloat(a),e=c.split("."),g=b,n=e.length-1;!f(d)||a.match(/px/g)||c.match(/format/g)||(a=d);""!==a&&"undefined"!==a&&e.forEach(function(b,c){var d=z(e[c+1],"");n===c?g[b]=a:(g[b]||(g[b]=d.match(/\d/g)?[]:
{}),g=g[b])})});return b},deselectAnnotation:function(){this.activeAnnotation&&(this.activeAnnotation.setControlPointsVisibility(!1),this.activeAnnotation=!1)},annotationToFields:function(a){function b(c,d,e,l){if(e&&-1===k.indexOf(d)&&(0<=(e.indexOf&&e.indexOf(d))||e[d]||!0===e))if(h(c))l[d]=[],c.forEach(function(a,c){g(a)?(l[d][c]={},p(a,function(a,e){b(a,e,f[d],l[d][c])})):b(a,0,f[d],l[d])});else if(g(c)){var w={};h(l)?(l.push(w),w[d]={},w=w[d]):l[d]=w;p(c,function(a,c){b(a,c,0===d?e:f[d],w)})}else"format"===
d?l[d]=[B(c,a.labels[0].points[0]).toString(),"text"]:h(l)?l.push([c,n(c)]):l[d]=[c,n(c)]}var c=a.options,e=d.NavigationBindings.annotationsEditable,f=e.nestedOptions,n=this.utils.getFieldType,l=z(c.type,c.shapes&&c.shapes[0]&&c.shapes[0].type,c.labels&&c.labels[0]&&c.labels[0].itemType,"label"),k=d.NavigationBindings.annotationsNonEditable[c.langKey]||[],u={langKey:c.langKey,type:l};p(c,function(a,d){"typeOptions"===d?(u[d]={},p(c[d],function(a,c){b(a,c,f,u[d],!0)})):b(a,d,e[l],u)});return u},getClickedClassNames:function(a,
b){var c=b.target;b=[];for(var d;c&&((d=m(c,"class"))&&(b=b.concat(d.split(" ").map(function(a){return[a,c]}))),c=c.parentNode,c!==a););return b},getButtonEvents:function(a,b){var c=this,d;this.getClickedClassNames(a,b).forEach(function(a){c.boundClassNames[a[0]]&&!d&&(d={events:c.boundClassNames[a[0]],button:a[1]})});return d},update:function(a){this.options=l(!0,this.options,a);this.removeEvents();this.initEvents()},removeEvents:function(){this.eventsToUnbind.forEach(function(a){a()})},destroy:function(){this.removeEvents()},
utils:{updateRectSize:function(a,b){var c=b.chart,d=b.options.typeOptions,e=c.pointer.getCoordinates(a);a=e.xAxis[0].value-d.point.x;d=d.point.y-e.yAxis[0].value;b.update({typeOptions:{background:{width:c.inverted?d:a,height:c.inverted?a:d}}})},getFieldType:function(a){return{string:"text",number:"number","boolean":"checkbox"}[typeof a]}}});d.Chart.prototype.initNavigationBindings=function(){var a=this.options;a&&a.navigation&&a.navigation.bindings&&(this.navigationBindings=new d.NavigationBindings(this,
a.navigation),this.navigationBindings.initEvents(),this.navigationBindings.initUpdate())};b(d.Chart,"load",function(){this.initNavigationBindings()});b(d.Chart,"destroy",function(){this.navigationBindings&&this.navigationBindings.destroy()});b(d.NavigationBindings,"deselectButton",function(){this.selectedButtonElement=null});b(d.Annotation,"remove",function(){this.chart.navigationBindings&&this.chart.navigationBindings.deselectAnnotation()});d.Annotation&&(k(d.Annotation),p(d.Annotation.types,function(a){k(a)}));
d.setOptions({lang:{navigation:{popup:{simpleShapes:"Simple shapes",lines:"Lines",circle:"Circle",rectangle:"Rectangle",label:"Label",shapeOptions:"Shape options",typeOptions:"Details",fill:"Fill",format:"Text",strokeWidth:"Line width",stroke:"Line color",title:"Title",name:"Name",labelOptions:"Label options",labels:"Labels",backgroundColor:"Background color",backgroundColors:"Background colors",borderColor:"Border color",borderRadius:"Border radius",borderWidth:"Border width",style:"Style",padding:"Padding",
fontSize:"Font size",color:"Color",height:"Height",shapes:"Shape options"}}},navigation:{bindingsClassName:"highcharts-bindings-container",bindings:{circleAnnotation:{className:"highcharts-circle-annotation",start:function(a){a=this.chart.pointer.getCoordinates(a);var b=this.chart.options.navigation;return this.chart.addAnnotation(l({langKey:"circle",shapes:[{type:"circle",point:{xAxis:0,yAxis:0,x:a.xAxis[0].value,y:a.yAxis[0].value},r:5,controlPoints:[{positioner:function(a){var b=d.Annotation.MockPoint.pointToPixels(a.points[0]);
a=a.options.r;return{x:b.x+a*Math.cos(Math.PI/4)-this.graphic.width/2,y:b.y+a*Math.sin(Math.PI/4)-this.graphic.height/2}},events:{drag:function(a,b){var c=b.annotation;a=this.mouseMoveToTranslation(a);b.setRadius(Math.max(b.options.r+a.y/Math.sin(Math.PI/4),5));c.options.shapes[0]=c.userOptions.shapes[0]=b.options;b.redraw(!1)}}}]}]},b.annotationsOptions,b.bindings.circleAnnotation.annotationsOptions))},steps:[function(a,b){var c=b.options.shapes[0].point,d=this.chart.xAxis[0].toPixels(c.x);c=this.chart.yAxis[0].toPixels(c.y);
var e=this.chart.inverted;b.update({shapes:[{r:Math.max(Math.sqrt(Math.pow(e?c-a.chartX:d-a.chartX,2)+Math.pow(e?d-a.chartY:c-a.chartY,2)),5)}]})}]},rectangleAnnotation:{className:"highcharts-rectangle-annotation",start:function(a){var b=this.chart.pointer.getCoordinates(a),c=this.chart.options.navigation,e=b.xAxis[0].value;b=b.yAxis[0].value;return this.chart.addAnnotation(l({langKey:"rectangle",shapes:[{type:"path",points:[{xAxis:0,yAxis:0,x:e,y:b},{xAxis:0,yAxis:0,x:e,y:b},{xAxis:0,yAxis:0,x:e,
y:b},{xAxis:0,yAxis:0,x:e,y:b}]}],controlPoints:[{positioner:function(a){a=d.Annotation.MockPoint.pointToPixels(a.shapes[0].points[2]);return{x:a.x-4,y:a.y-4}},events:{drag:function(b){var c=this.chart.pointer.getCoordinates(a),d=c.xAxis[0].value;c=c.yAxis[0].value;var e=b.options.shapes[0].points;e[1].x=d;e[2].x=d;e[2].y=c;e[3].y=c;b.options.shapes[0].points=e;b.redraw(!1)}}}]},c.annotationsOptions,c.bindings.rectangleAnnotation.annotationsOptions))},steps:[function(a,b){var c=b.options.shapes[0].points,
d=this.chart.pointer.getCoordinates(a);a=d.xAxis[0].value;d=d.yAxis[0].value;c[1].x=a;c[2].x=a;c[2].y=d;c[3].y=d;b.update({shapes:[{points:c}]})}]},labelAnnotation:{className:"highcharts-label-annotation",start:function(a){a=this.chart.pointer.getCoordinates(a);var b=this.chart.options.navigation;return this.chart.addAnnotation(l({langKey:"label",labelOptions:{format:"{y:.2f}"},labels:[{point:{xAxis:0,yAxis:0,x:a.xAxis[0].value,y:a.yAxis[0].value},overflow:"none",crop:!0,controlPoints:[{symbol:"triangle-down",
positioner:function(a){if(!a.graphic.placed)return{x:0,y:-9E7};a=d.Annotation.MockPoint.pointToPixels(a.points[0]);return{x:a.x-this.graphic.width/2,y:a.y-this.graphic.height/2}},events:{drag:function(a,b){a=this.mouseMoveToTranslation(a);b.translatePoint(a.x,a.y);b.annotation.labels[0].options=b.options;b.redraw(!1)}}},{symbol:"square",positioner:function(a){return a.graphic.placed?{x:a.graphic.alignAttr.x-this.graphic.width/2,y:a.graphic.alignAttr.y-this.graphic.height/2}:{x:0,y:-9E7}},events:{drag:function(a,
b){a=this.mouseMoveToTranslation(a);b.translate(a.x,a.y);b.annotation.labels[0].options=b.options;b.redraw(!1)}}}]}]},b.annotationsOptions,b.bindings.labelAnnotation.annotationsOptions))}}},events:{},annotationsOptions:{}}})});m(e,"annotations/popup.js",[e["parts/Globals.js"],e["parts/Utilities.js"]],function(d,c){var e=c.addEvent,k=c.createElement,b=c.defined,m=c.isArray,q=c.isObject,v=c.isString,a=c.objectEach,h=c.pick;c=c.wrap;var C=/\d/g;c(d.Pointer.prototype,"onContainerMouseDown",function(a,
b){var c=b.target&&b.target.className;v(c)&&0<=c.indexOf("highcharts-popup-field")||a.apply(this,Array.prototype.slice.call(arguments,1))});d.Popup=function(a,b){this.init(a,b)};d.Popup.prototype={init:function(a,b){this.container=k("div",{className:"highcharts-popup"},null,a);this.lang=this.getLangpack();this.iconsURL=b;this.addCloseBtn()},addCloseBtn:function(){var a=this;var b=k("div",{className:"highcharts-popup-close"},null,this.container);b.style["background-image"]="url("+this.iconsURL+"close.svg)";
["click","touchstart"].forEach(function(c){e(b,c,function(){a.closePopup()})})},addColsContainer:function(a){var b=k("div",{className:"highcharts-popup-lhs-col"},null,a);a=k("div",{className:"highcharts-popup-rhs-col"},null,a);k("div",{className:"highcharts-popup-rhs-col-wrapper"},null,a);return{lhsCol:b,rhsCol:a}},addInput:function(a,b,c,d){var e=a.split(".");e=e[e.length-1];var f=this.lang;b="highcharts-"+b+"-"+e;b.match(C)||k("label",{innerHTML:f[e]||e,htmlFor:b},null,c);k("input",{name:b,value:d[0],
type:d[1],className:"highcharts-popup-field"},null,c).setAttribute("highcharts-data-name",a)},addButton:function(a,b,c,d,h){var f=this,g=this.closePopup,l=this.getFields;var p=k("button",{innerHTML:b},null,a);["click","touchstart"].forEach(function(a){e(p,a,function(){g.call(f);return d(l(h,c))})});return p},getFields:function(a,b){var c=a.querySelectorAll("input"),d=a.querySelectorAll("#highcharts-select-series > option:checked")[0];a=a.querySelectorAll("#highcharts-select-volume > option:checked")[0];
var e,f;var g={actionType:b,linkedTo:d&&d.getAttribute("value"),fields:{}};[].forEach.call(c,function(a){f=a.getAttribute("highcharts-data-name");(e=a.getAttribute("highcharts-data-series-id"))?g.seriesId=a.value:f?g.fields[f]=a.value:g.type=a.value});a&&(g.fields["params.volumeSeriesID"]=a.getAttribute("value"));return g},showPopup:function(){var a=this.container,b=a.querySelectorAll(".highcharts-popup-close")[0];a.innerHTML="";0<=a.className.indexOf("highcharts-annotation-toolbar")&&(a.classList.remove("highcharts-annotation-toolbar"),
a.removeAttribute("style"));a.appendChild(b);a.style.display="block"},closePopup:function(){this.popup.container.style.display="none"},showForm:function(a,b,c,d){this.popup=b.navigationBindings.popup;this.showPopup();"indicators"===a&&this.indicators.addForm.call(this,b,c,d);"annotation-toolbar"===a&&this.annotations.addToolbar.call(this,b,c,d);"annotation-edit"===a&&this.annotations.addForm.call(this,b,c,d);"flag"===a&&this.annotations.addForm.call(this,b,c,d,!0)},getLangpack:function(){return d.getOptions().lang.navigation.popup},
annotations:{addToolbar:function(a,b,c){var d=this,e=this.lang,f=this.popup.container,g=this.showForm;-1===f.className.indexOf("highcharts-annotation-toolbar")&&(f.className+=" highcharts-annotation-toolbar");f.style.top=a.plotTop+10+"px";k("span",{innerHTML:h(e[b.langKey]||b.langKey,b.shapes&&b.shapes[0].type)},null,f);var l=this.addButton(f,e.removeButton||"remove","remove",c,f);l.className+=" highcharts-annotation-remove-button";l.style["background-image"]="url("+this.iconsURL+"destroy.svg)";l=
this.addButton(f,e.editButton||"edit","edit",function(){g.call(d,"annotation-edit",a,b,c)},f);l.className+=" highcharts-annotation-edit-button";l.style["background-image"]="url("+this.iconsURL+"edit.svg)"},addForm:function(a,b,c,d){var e=this.popup.container,f=this.lang;k("h2",{innerHTML:f[b.langKey]||b.langKey,className:"highcharts-popup-main-title"},null,e);var g=k("div",{className:"highcharts-popup-lhs-col highcharts-popup-lhs-full"},null,e);var l=k("div",{className:"highcharts-popup-bottom-row"},
null,e);this.annotations.addFormFields.call(this,g,a,"",b,[],!0);this.addButton(l,d?f.addButton||"add":f.saveButton||"save",d?"add":"save",c,e)},addFormFields:function(b,c,d,e,h,u){var f=this,g=this.annotations.addFormFields,l=this.addInput,p=this.lang,z,x;a(e,function(a,e){z=""!==d?d+"."+e:e;q(a)&&(!m(a)||m(a)&&q(a[0])?(x=p[e]||e,x.match(C)||h.push([!0,x,b]),g.call(f,b,c,z,a,h,!1)):h.push([f,z,"annotation",b,a]))});u&&(h=h.sort(function(a){return a[1].match(/format/g)?-1:1}),h.forEach(function(a){!0===
a[0]?k("span",{className:"highcharts-annotation-title",innerHTML:a[1]},null,a[2]):l.apply(a[0],a.splice(1))}))}},indicators:{addForm:function(a,b,c){var d=this.indicators,e=this.lang;this.tabs.init.call(this,a);b=this.popup.container.querySelectorAll(".highcharts-tab-item-content");this.addColsContainer(b[0]);d.addIndicatorList.call(this,a,b[0],"add");var f=b[0].querySelectorAll(".highcharts-popup-rhs-col")[0];this.addButton(f,e.addButton||"add","add",c,f);this.addColsContainer(b[1]);d.addIndicatorList.call(this,
a,b[1],"edit");f=b[1].querySelectorAll(".highcharts-popup-rhs-col")[0];this.addButton(f,e.saveButton||"save","edit",c,f);this.addButton(f,e.removeButton||"remove","remove",c,f)},addIndicatorList:function(b,c,d){var f=this,g=c.querySelectorAll(".highcharts-popup-lhs-col")[0];c=c.querySelectorAll(".highcharts-popup-rhs-col")[0];var l="edit"===d,h=l?b.series:b.options.plotOptions,n=this.indicators.addFormFields,m;var q=k("ul",{className:"highcharts-indicator-list"},null,g);var t=c.querySelectorAll(".highcharts-popup-rhs-col-wrapper")[0];
a(h,function(a,c){var d=a.options;if(a.params||d&&d.params){var g=f.indicators.getNameType(a,c),p=g.type;m=k("li",{className:"highcharts-indicator-list",innerHTML:g.name},null,q);["click","touchstart"].forEach(function(c){e(m,c,function(){n.call(f,b,l?a:h[p],g.type,t);l&&a.options&&k("input",{type:"hidden",name:"highcharts-id-"+p,value:a.options.id},null,t).setAttribute("highcharts-data-series-id",a.options.id)})})}});0<q.childNodes.length&&q.childNodes[0].click()},getNameType:function(a,b){var c=
a.options,e=d.seriesTypes;e=e[b]&&e[b].prototype.nameBase||b.toUpperCase();c&&c.type&&(b=a.options.type,e=a.name);return{name:e,type:b}},listAllSeries:function(a,c,d,e,h){a="highcharts-"+c+"-type-"+a;var f;k("label",{innerHTML:this.lang[c]||c,htmlFor:a},null,e);var g=k("select",{name:a,className:"highcharts-popup-field"},null,e);g.setAttribute("id","highcharts-select-"+c);d.series.forEach(function(a){f=a.options;!f.params&&f.id&&"highcharts-navigator-series"!==f.id&&k("option",{innerHTML:f.name||
f.id,value:f.id},null,g)});b(h)&&(g.value=h)},addFormFields:function(a,b,c,d){var e=b.params||b.options.params,f=this.indicators.getNameType;d.innerHTML="";k("h3",{className:"highcharts-indicator-title",innerHTML:f(b,c).name},null,d);k("input",{type:"hidden",name:"highcharts-type-"+c,value:c},null,d);this.indicators.listAllSeries.call(this,c,"series",a,d,b.linkedParent&&e.volumeSeriesID);e.volumeSeriesID&&this.indicators.listAllSeries.call(this,c,"volume",a,d,b.linkedParent&&b.linkedParent.options.id);
this.indicators.addParamInputs.call(this,a,"params",e,c,d)},addParamInputs:function(b,c,d,e,h){var f=this,g=this.indicators.addParamInputs,l=this.addInput,k;a(d,function(a,d){k=c+"."+d;q(a)?g.call(f,b,k,a,e,h):"params.volumeSeriesID"!==k&&l.call(f,k,e,h,[a,"text"])})},getAmount:function(){var b=0;a(this.series,function(a){var c=a.options;(a.params||c&&c.params)&&b++});return b}},tabs:{init:function(a){var b=this.tabs;a=this.indicators.getAmount.call(a);var c=b.addMenuItem.call(this,"add");b.addMenuItem.call(this,
"edit",a);b.addContentItem.call(this,"add");b.addContentItem.call(this,"edit");b.switchTabs.call(this,a);b.selectTab.call(this,c,0)},addMenuItem:function(a,b){var c=this.popup.container,d="highcharts-tab-item",e=this.lang;0===b&&(d+=" highcharts-tab-disabled");b=k("span",{innerHTML:e[a+"Button"]||a,className:d},null,c);b.setAttribute("highcharts-data-tab-type",a);return b},addContentItem:function(){return k("div",{className:"highcharts-tab-item-content"},null,this.popup.container)},switchTabs:function(a){var b=
this,c;this.popup.container.querySelectorAll(".highcharts-tab-item").forEach(function(d,f){c=d.getAttribute("highcharts-data-tab-type");"edit"===c&&0===a||["click","touchstart"].forEach(function(a){e(d,a,function(){b.tabs.deselectAll.call(b);b.tabs.selectTab.call(b,this,f)})})})},selectTab:function(a,b){var c=this.popup.container.querySelectorAll(".highcharts-tab-item-content");a.className+=" highcharts-tab-item-active";c[b].className+=" highcharts-tab-item-show"},deselectAll:function(){var a=this.popup.container,
b=a.querySelectorAll(".highcharts-tab-item");a=a.querySelectorAll(".highcharts-tab-item-content");var c;for(c=0;c<b.length;c++)b[c].classList.remove("highcharts-tab-item-active"),a[c].classList.remove("highcharts-tab-item-show")}}};e(d.NavigationBindings,"showPopup",function(a){this.popup||(this.popup=new d.Popup(this.chart.container,this.chart.options.navigation.iconsURL||this.chart.options.stockTools&&this.chart.options.stockTools.gui.iconsURL||"https://code.highcharts.com/8.0.4/gfx/stock-icons/"));
this.popup.showForm(a.formType,this.chart,a.options,a.onSubmit)});e(d.NavigationBindings,"closePopup",function(){this.popup&&this.popup.closePopup()})});m(e,"masters/modules/annotations.src.js",[],function(){})});
//# sourceMappingURL=annotations.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Exporting module

 (c) 2010-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(e){"object"===typeof module&&module.exports?(e["default"]=e,module.exports=e):"function"===typeof define&&define.amd?define("highcharts/modules/exporting",["highcharts"],function(m){e(m);e.Highcharts=m;return e}):e("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(e){function m(f,g,e,n){f.hasOwnProperty(g)||(f[g]=n.apply(null,e))}e=e?e._modules:{};m(e,"modules/full-screen.src.js",[e["parts/Globals.js"]],function(f){var g=f.addEvent,e=f.Chart,n=function(){function g(h){this.chart=
h;this.isOpen=!1;h.container.parentNode instanceof Element&&(h=h.container.parentNode,this.browserProps||("function"===typeof h.requestFullscreen?this.browserProps={fullscreenChange:"fullscreenchange",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen"}:h.mozRequestFullScreen?this.browserProps={fullscreenChange:"mozfullscreenchange",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen"}:h.webkitRequestFullScreen?this.browserProps={fullscreenChange:"webkitfullscreenchange",
requestFullscreen:"webkitRequestFullScreen",exitFullscreen:"webkitExitFullscreen"}:h.msRequestFullscreen&&(this.browserProps={fullscreenChange:"MSFullscreenChange",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen"})))}g.prototype.close=function(){var h=this.chart;if(this.isOpen&&this.browserProps&&h.container.ownerDocument instanceof Document)h.container.ownerDocument[this.browserProps.exitFullscreen]();this.unbindFullscreenEvent&&this.unbindFullscreenEvent();this.isOpen=!1;
this.setButtonText()};g.prototype.open=function(){var h=this,g=h.chart;if(h.browserProps){h.unbindFullscreenEvent=f.addEvent(g.container.ownerDocument,h.browserProps.fullscreenChange,function(){h.isOpen?(h.isOpen=!1,h.close()):(h.isOpen=!0,h.setButtonText())});if(g.container.parentNode instanceof Element){var e=g.container.parentNode[h.browserProps.requestFullscreen]();if(e)e["catch"](function(){alert("Full screen is not supported inside a frame.")})}f.addEvent(g,"destroy",h.unbindFullscreenEvent)}};
g.prototype.setButtonText=function(){var h,g=this.chart,f=g.exportDivElements,e=g.options.exporting,n=null===(h=null===e||void 0===e?void 0:e.buttons)||void 0===h?void 0:h.contextButton.menuItems;h=g.options.lang;(null===e||void 0===e?0:e.menuItemDefinitions)&&(null===h||void 0===h?0:h.exitFullscreen)&&h.viewFullscreen&&n&&f&&f.length&&(f[n.indexOf("viewFullscreen")].innerHTML=this.isOpen?h.exitFullscreen:e.menuItemDefinitions.viewFullscreen.text||h.viewFullscreen)};g.prototype.toggle=function(){this.isOpen?
this.close():this.open()};return g}();f.Fullscreen=n;g(e,"beforeRender",function(){this.fullscreen=new f.Fullscreen(this)});return f.Fullscreen});m(e,"mixins/navigation.js",[],function(){return{initUpdate:function(f){f.navigation||(f.navigation={updates:[],update:function(g,f){this.updates.forEach(function(e){e.update.call(e.context,g,f)})}})},addUpdate:function(f,g){g.navigation||this.initUpdate(g);g.navigation.updates.push({update:f,context:g})}}});m(e,"modules/exporting.src.js",[e["parts/Globals.js"],
e["parts/Utilities.js"],e["mixins/navigation.js"]],function(f,g,e){var n=g.addEvent,u=g.css,h=g.createElement,m=g.discardElement,x=g.extend,I=g.find,B=g.fireEvent,J=g.isObject,p=g.merge,E=g.objectEach,q=g.pick,K=g.removeEvent,L=g.uniqueKey,w=f.defaultOptions,y=f.doc,C=f.Chart,M=f.isTouchDevice,z=f.win,G=z.navigator.userAgent,F=f.SVGRenderer,H=f.Renderer.prototype.symbols,N=/Edge\/|Trident\/|MSIE /.test(G),O=/firefox/i.test(G);x(w.lang,{viewFullscreen:"View in full screen",exitFullscreen:"Exit from full screen",
printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"});w.navigation||(w.navigation={});p(!0,w.navigation,{buttonOptions:{theme:{},symbolSize:14,symbolX:12.5,symbolY:10.5,align:"right",buttonSpacing:3,height:22,verticalAlign:"top",width:24}});p(!0,w.navigation,{menuStyle:{border:"1px solid #999999",background:"#ffffff",padding:"5px 0"},menuItemStyle:{padding:"0.5em 1em",
color:"#333333",background:"none",fontSize:M?"14px":"11px",transition:"background 250ms, color 250ms"},menuItemHoverStyle:{background:"#335cad",color:"#ffffff"},buttonOptions:{symbolFill:"#666666",symbolStroke:"#666666",symbolStrokeWidth:3,theme:{padding:5}}});w.exporting={type:"image/png",url:"https://export.highcharts.com/",printMaxWidth:780,scale:2,buttons:{contextButton:{className:"highcharts-contextbutton",menuClassName:"highcharts-contextmenu",symbol:"menu",titleKey:"contextButtonTitle",menuItems:"viewFullscreen printChart separator downloadPNG downloadJPEG downloadPDF downloadSVG".split(" ")}},
menuItemDefinitions:{viewFullscreen:{textKey:"viewFullscreen",onclick:function(){this.fullscreen.toggle()}},printChart:{textKey:"printChart",onclick:function(){this.print()}},separator:{separator:!0},downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChart()}},downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},downloadSVG:{textKey:"downloadSVG",
onclick:function(){this.exportChart({type:"image/svg+xml"})}}}};f.post=function(a,b,c){var d=h("form",p({method:"post",action:a,enctype:"multipart/form-data"},c),{display:"none"},y.body);E(b,function(a,b){h("input",{type:"hidden",name:b,value:a},null,d)});d.submit();m(d)};f.isSafari&&f.win.matchMedia("print").addListener(function(a){f.printingChart&&(a.matches?f.printingChart.beforePrint():f.printingChart.afterPrint())});x(C.prototype,{sanitizeSVG:function(a,b){var c=a.indexOf("</svg>")+6,d=a.substr(c);
a=a.substr(0,c);b&&b.exporting&&b.exporting.allowHTML&&d&&(d='<foreignObject x="0" y="0" width="'+b.chart.width+'" height="'+b.chart.height+'"><body xmlns="http://www.w3.org/1999/xhtml">'+d+"</body></foreignObject>",a=a.replace("</svg>",d+"</svg>"));a=a.replace(/zIndex="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery[0-9]+="[^"]+"/g,"").replace(/url\(("|&quot;)(.*?)("|&quot;);?\)/g,"url($2)").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (|NS[0-9]+:)href=/g,
" xlink:href=").replace(/\n/," ").replace(/(fill|stroke)="rgba\(([ 0-9]+,[ 0-9]+,[ 0-9]+),([ 0-9\.]+)\)"/g,'$1="rgb($2)" $1-opacity="$3"').replace(/&nbsp;/g,"\u00a0").replace(/&shy;/g,"\u00ad");this.ieSanitizeSVG&&(a=this.ieSanitizeSVG(a));return a},getChartHTML:function(){this.styledMode&&this.inlineStyles();return this.container.innerHTML},getSVG:function(a){var b,c=p(this.options,a);c.plotOptions=p(this.userOptions.plotOptions,a&&a.plotOptions);c.time=p(this.userOptions.time,a&&a.time);var d=h("div",
null,{position:"absolute",top:"-9999em",width:this.chartWidth+"px",height:this.chartHeight+"px"},y.body);var g=this.renderTo.style.width;var e=this.renderTo.style.height;g=c.exporting.sourceWidth||c.chart.width||/px$/.test(g)&&parseInt(g,10)||(c.isGantt?800:600);e=c.exporting.sourceHeight||c.chart.height||/px$/.test(e)&&parseInt(e,10)||400;x(c.chart,{animation:!1,renderTo:d,forExport:!0,renderer:"SVGRenderer",width:g,height:e});c.exporting.enabled=!1;delete c.data;c.series=[];this.series.forEach(function(a){b=
p(a.userOptions,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:a.visible});b.isInternal||c.series.push(b)});this.axes.forEach(function(a){a.userOptions.internalKey||(a.userOptions.internalKey=L())});var r=new f.Chart(c,this.callback);a&&["xAxis","yAxis","series"].forEach(function(b){var d={};a[b]&&(d[b]=a[b],r.update(d))});this.axes.forEach(function(a){var b=I(r.axes,function(b){return b.options.internalKey===a.userOptions.internalKey}),d=a.getExtremes(),c=d.userMin;d=d.userMax;b&&("undefined"!==
typeof c&&c!==b.min||"undefined"!==typeof d&&d!==b.max)&&b.setExtremes(c,d,!0,!1)});g=r.getChartHTML();B(this,"getSVG",{chartCopy:r});g=this.sanitizeSVG(g,c);c=null;r.destroy();m(d);return g},getSVGForExport:function(a,b){var c=this.options.exporting;return this.getSVG(p({chart:{borderRadius:0}},c.chartOptions,b,{exporting:{sourceWidth:a&&a.sourceWidth||c.sourceWidth,sourceHeight:a&&a.sourceHeight||c.sourceHeight}}))},getFilename:function(){var a=this.userOptions.title&&this.userOptions.title.text,
b=this.options.exporting.filename;if(b)return b.replace(/\//g,"-");"string"===typeof a&&(b=a.toLowerCase().replace(/<\/?[^>]+(>|$)/g,"").replace(/[\s_]+/g,"-").replace(/[^a-z0-9\-]/g,"").replace(/^[\-]+/g,"").replace(/[\-]+/g,"-").substr(0,24).replace(/[\-]+$/g,""));if(!b||5>b.length)b="chart";return b},exportChart:function(a,b){b=this.getSVGForExport(a,b);a=p(this.options.exporting,a);f.post(a.url,{filename:a.filename?a.filename.replace(/\//g,"-"):this.getFilename(),type:a.type,width:a.width||0,
scale:a.scale,svg:b},a.formAttributes)},moveContainers:function(a){(this.fixedDiv?[this.fixedDiv,this.scrollingContainer]:[this.container]).forEach(function(b){a.appendChild(b)})},beforePrint:function(){var a=y.body,b=this.options.exporting.printMaxWidth,c={childNodes:a.childNodes,origDisplay:[],resetParams:void 0};this.isPrinting=!0;this.pointer.reset(null,0);B(this,"beforePrint");b&&this.chartWidth>b&&(c.resetParams=[this.options.chart.width,void 0,!1],this.setSize(b,void 0,!1));[].forEach.call(c.childNodes,
function(a,b){1===a.nodeType&&(c.origDisplay[b]=a.style.display,a.style.display="none")});this.moveContainers(a);this.printReverseInfo=c},afterPrint:function(){if(this.printReverseInfo){var a=this.printReverseInfo.childNodes,b=this.printReverseInfo.origDisplay,c=this.printReverseInfo.resetParams;this.moveContainers(this.renderTo);[].forEach.call(a,function(a,c){1===a.nodeType&&(a.style.display=b[c]||"")});this.isPrinting=!1;c&&this.setSize.apply(this,c);delete this.printReverseInfo;delete f.printingChart;
B(this,"afterPrint")}},print:function(){var a=this;a.isPrinting||(f.printingChart=a,f.isSafari||a.beforePrint(),setTimeout(function(){z.focus();z.print();f.isSafari||setTimeout(function(){a.afterPrint()},1E3)},1))},contextMenu:function(a,b,c,d,e,f,r){var k=this,D=k.options.navigation,p=k.chartWidth,A=k.chartHeight,t="cache-"+a,l=k[t],v=Math.max(e,f);if(!l){k.exportContextMenu=k[t]=l=h("div",{className:a},{position:"absolute",zIndex:1E3,padding:v+"px",pointerEvents:"auto"},k.fixedDiv||k.container);
var m=h("ul",{className:"highcharts-menu"},{listStyle:"none",margin:0,padding:0},l);k.styledMode||u(m,x({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},D.menuStyle));l.hideMenu=function(){u(l,{display:"none"});r&&r.setState(0);k.openMenu=!1;u(k.renderTo,{overflow:"hidden"});g.clearTimeout(l.hideTimer);B(k,"exportMenuHidden")};k.exportEvents.push(n(l,"mouseleave",function(){l.hideTimer=z.setTimeout(l.hideMenu,500)}),n(l,"mouseenter",function(){g.clearTimeout(l.hideTimer)}),
n(y,"mouseup",function(b){k.pointer.inClass(b.target,a)||l.hideMenu()}),n(l,"click",function(){k.openMenu&&l.hideMenu()}));b.forEach(function(a){"string"===typeof a&&(a=k.options.exporting.menuItemDefinitions[a]);if(J(a,!0)){if(a.separator)var b=h("hr",null,null,m);else b=h("li",{className:"highcharts-menu-item",onclick:function(b){b&&b.stopPropagation();l.hideMenu();a.onclick&&a.onclick.apply(k,arguments)},innerHTML:a.text||k.options.lang[a.textKey]},null,m),k.styledMode||(b.onmouseover=function(){u(this,
D.menuItemHoverStyle)},b.onmouseout=function(){u(this,D.menuItemStyle)},u(b,x({cursor:"pointer"},D.menuItemStyle)));k.exportDivElements.push(b)}});k.exportDivElements.push(m,l);k.exportMenuWidth=l.offsetWidth;k.exportMenuHeight=l.offsetHeight}b={display:"block"};c+k.exportMenuWidth>p?b.right=p-c-e-v+"px":b.left=c-v+"px";d+f+k.exportMenuHeight>A&&"top"!==r.alignOptions.verticalAlign?b.bottom=A-d-v+"px":b.top=d+f-v+"px";u(l,b);u(k.renderTo,{overflow:""});k.openMenu=!0;B(k,"exportMenuShown")},addButton:function(a){var b=
this,c=b.renderer,d=p(b.options.navigation.buttonOptions,a),g=d.onclick,e=d.menuItems,f=d.symbolSize||12;b.btnCount||(b.btnCount=0);b.exportDivElements||(b.exportDivElements=[],b.exportSVGElements=[]);if(!1!==d.enabled){var k=d.theme,h=k.states,m=h&&h.hover;h=h&&h.select;var A;b.styledMode||(k.fill=q(k.fill,"#ffffff"),k.stroke=q(k.stroke,"none"));delete k.states;g?A=function(a){a&&a.stopPropagation();g.call(b,a)}:e&&(A=function(a){a&&a.stopPropagation();b.contextMenu(t.menuClassName,e,t.translateX,
t.translateY,t.width,t.height,t);t.setState(2)});d.text&&d.symbol?k.paddingLeft=q(k.paddingLeft,25):d.text||x(k,{width:d.width,height:d.height,padding:0});b.styledMode||(k["stroke-linecap"]="round",k.fill=q(k.fill,"#ffffff"),k.stroke=q(k.stroke,"none"));var t=c.button(d.text,0,0,A,k,m,h).addClass(a.className).attr({title:q(b.options.lang[d._titleKey||d.titleKey],"")});t.menuClassName=a.menuClassName||"highcharts-menu-"+b.btnCount++;if(d.symbol){var l=c.symbol(d.symbol,d.symbolX-f/2,d.symbolY-f/2,
f,f,{width:f,height:f}).addClass("highcharts-button-symbol").attr({zIndex:1}).add(t);b.styledMode||l.attr({stroke:d.symbolStroke,fill:d.symbolFill,"stroke-width":d.symbolStrokeWidth||1})}t.add(b.exportingGroup).align(x(d,{width:t.width,x:q(d.x,b.buttonOffset)}),!0,"spacingBox");b.buttonOffset+=(t.width+d.buttonSpacing)*("right"===d.align?-1:1);b.exportSVGElements.push(t,l)}},destroyExport:function(a){var b=a?a.target:this;a=b.exportSVGElements;var c=b.exportDivElements,d=b.exportEvents,f;a&&(a.forEach(function(a,
d){a&&(a.onclick=a.ontouchstart=null,f="cache-"+a.menuClassName,b[f]&&delete b[f],b.exportSVGElements[d]=a.destroy())}),a.length=0);b.exportingGroup&&(b.exportingGroup.destroy(),delete b.exportingGroup);c&&(c.forEach(function(a,d){g.clearTimeout(a.hideTimer);K(a,"mouseleave");b.exportDivElements[d]=a.onmouseout=a.onmouseover=a.ontouchstart=a.onclick=null;m(a)}),c.length=0);d&&(d.forEach(function(a){a()}),d.length=0)}});F.prototype.inlineToAttributes="fill stroke strokeLinecap strokeLinejoin strokeWidth textAnchor x y".split(" ");
F.prototype.inlineBlacklist=[/-/,/^(clipPath|cssText|d|height|width)$/,/^font$/,/[lL]ogical(Width|Height)$/,/perspective/,/TapHighlightColor/,/^transition/,/^length$/];F.prototype.unstyledElements=["clipPath","defs","desc"];C.prototype.inlineStyles=function(){function a(a){return a.replace(/([A-Z])/g,function(a,b){return"-"+b.toLowerCase()})}function b(c){function k(b,e){v=u=!1;if(g){for(q=g.length;q--&&!u;)u=g[q].test(e);v=!u}"transform"===e&&"none"===b&&(v=!0);for(q=f.length;q--&&!v;)v=f[q].test(e)||
"function"===typeof b;v||x[e]===b&&"svg"!==c.nodeName||h[c.nodeName][e]===b||(-1!==d.indexOf(e)?c.setAttribute(a(e),b):l+=a(e)+":"+b+";")}var l="",v,u,q;if(1===c.nodeType&&-1===e.indexOf(c.nodeName)){var r=z.getComputedStyle(c,null);var x="svg"===c.nodeName?{}:z.getComputedStyle(c.parentNode,null);if(!h[c.nodeName]){m=n.getElementsByTagName("svg")[0];var w=n.createElementNS(c.namespaceURI,c.nodeName);m.appendChild(w);h[c.nodeName]=p(z.getComputedStyle(w,null));"text"===c.nodeName&&delete h.text.fill;
m.removeChild(w)}if(O||N)for(var y in r)k(r[y],y);else E(r,k);l&&(r=c.getAttribute("style"),c.setAttribute("style",(r?r+";":"")+l));"svg"===c.nodeName&&c.setAttribute("stroke-width","1px");"text"!==c.nodeName&&[].forEach.call(c.children||c.childNodes,b)}}var c=this.renderer,d=c.inlineToAttributes,f=c.inlineBlacklist,g=c.inlineWhitelist,e=c.unstyledElements,h={},m;c=y.createElement("iframe");u(c,{width:"1px",height:"1px",visibility:"hidden"});y.body.appendChild(c);var n=c.contentWindow.document;n.open();
n.write('<svg xmlns="http://www.w3.org/2000/svg"></svg>');n.close();b(this.container.querySelector("svg"));m.parentNode.removeChild(m)};H.menu=function(a,b,c,d){return["M",a,b+2.5,"L",a+c,b+2.5,"M",a,b+d/2+.5,"L",a+c,b+d/2+.5,"M",a,b+d-1.5,"L",a+c,b+d-1.5]};H.menuball=function(a,b,c,d){a=[];d=d/3-2;return a=a.concat(this.circle(c-d,b,d,d),this.circle(c-d,b+d+4,d,d),this.circle(c-d,b+2*(d+4),d,d))};C.prototype.renderExporting=function(){var a=this,b=a.options.exporting,c=b.buttons,d=a.isDirtyExporting||
!a.exportSVGElements;a.buttonOffset=0;a.isDirtyExporting&&a.destroyExport();d&&!1!==b.enabled&&(a.exportEvents=[],a.exportingGroup=a.exportingGroup||a.renderer.g("exporting-group").attr({zIndex:3}).add(),E(c,function(b){a.addButton(b)}),a.isDirtyExporting=!1);n(a,"destroy",a.destroyExport)};n(C,"init",function(){var a=this;a.exporting={update:function(b,c){a.isDirtyExporting=!0;p(!0,a.options.exporting,b);q(c,!0)&&a.redraw()}};e.addUpdate(function(b,c){a.isDirtyExporting=!0;p(!0,a.options.navigation,
b);q(c,!0)&&a.redraw()},a)});C.prototype.callbacks.push(function(a){a.renderExporting();n(a,"redraw",a.renderExporting)})});m(e,"masters/modules/exporting.src.js",[],function(){})});
//# sourceMappingURL=exporting.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Client side exporting module

 (c) 2015-2019 Torstein Honsi / Oystein Moseng

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/offline-exporting",["highcharts","highcharts/modules/exporting"],function(f){a(f);a.Highcharts=f;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function f(b,d,a,x){b.hasOwnProperty(d)||(b[d]=x.apply(null,a))}a=a?a._modules:{};f(a,"mixins/download-url.js",[a["parts/Globals.js"]],function(b){var d=b.win,a=d.navigator,
x=d.document,f=d.URL||d.webkitURL||d,g=/Edge\/\d+/.test(a.userAgent);b.dataURLtoBlob=function(b){if((b=b.match(/data:([^;]*)(;base64)?,([0-9A-Za-z+/]+)/))&&3<b.length&&d.atob&&d.ArrayBuffer&&d.Uint8Array&&d.Blob&&f.createObjectURL){var a=d.atob(b[3]),e=new d.ArrayBuffer(a.length);e=new d.Uint8Array(e);for(var g=0;g<e.length;++g)e[g]=a.charCodeAt(g);b=new d.Blob([e],{type:b[1]});return f.createObjectURL(b)}};b.downloadURL=function(e,f){var l=x.createElement("a");if("string"===typeof e||e instanceof
String||!a.msSaveOrOpenBlob){if(g||2E6<e.length)if(e=b.dataURLtoBlob(e),!e)throw Error("Failed to convert to blob");if("undefined"!==typeof l.download)l.href=e,l.download=f,x.body.appendChild(l),l.click(),x.body.removeChild(l);else try{var p=d.open(e,"chart");if("undefined"===typeof p||null===p)throw Error("Failed to open window");}catch(A){d.location.href=e}}else a.msSaveOrOpenBlob(e,f)}});f(a,"modules/offline-exporting.src.js",[a["parts/Globals.js"],a["parts/Utilities.js"]],function(b,a){function d(a,
d){var k=y.getElementsByTagName("head")[0],c=y.createElement("script");c.type="text/javascript";c.src=a;c.onload=d;c.onerror=function(){b.error("Error loading script "+a)};k.appendChild(c)}var f=a.extend,D=b.addEvent;a=b.merge;var g=b.win,e=g.navigator,y=g.document,l=g.URL||g.webkitURL||g,p=/Edge\/|Trident\/|MSIE /.test(e.userAgent),A=p?150:0;b.CanVGRenderer={};b.svgToDataUrl=function(b){var a=-1<e.userAgent.indexOf("WebKit")&&0>e.userAgent.indexOf("Chrome");try{if(!a&&0>e.userAgent.toLowerCase().indexOf("firefox"))return l.createObjectURL(new g.Blob([b],
{type:"image/svg+xml;charset-utf-16"}))}catch(k){}return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(b)};b.imageToDataUrl=function(b,a,k,c,d,e,f,n,m){var h=new g.Image,u=function(){setTimeout(function(){var e=y.createElement("canvas"),g=e.getContext&&e.getContext("2d");try{if(g){e.height=h.height*c;e.width=h.width*c;g.drawImage(h,0,0,e.width,e.height);try{var w=e.toDataURL(a);d(w,a,k,c)}catch(B){t(b,a,k,c)}}else f(b,a,k,c)}finally{m&&m(b,a,k,c)}},A)},q=function(){n(b,a,k,c);m&&m(b,a,k,c)};
var t=function(){h=new g.Image;t=e;h.crossOrigin="Anonymous";h.onload=u;h.onerror=q;h.src=b};h.onload=u;h.onerror=q;h.src=b};b.downloadSVGLocal=function(a,f,k,c){function t(a,b){b=new g.jsPDF("l","pt",[a.width.baseVal.value+2*b,a.height.baseVal.value+2*b]);[].forEach.call(a.querySelectorAll('*[visibility="hidden"]'),function(b){b.parentNode.removeChild(b)});g.svg2pdf(a,b,{removeInvalid:!0});return b.output("datauristring")}function u(){m.innerHTML=a;var e=m.getElementsByTagName("text"),d;[].forEach.call(e,
function(b){["font-family","font-size"].forEach(function(a){for(var c=b;c&&c!==m;){if(c.style[a]){b.style[a]=c.style[a];break}c=c.parentNode}});b.style["font-family"]=b.style["font-family"]&&b.style["font-family"].split(" ").splice(-1);d=b.getElementsByTagName("title");[].forEach.call(d,function(a){b.removeChild(a)})});e=t(m.firstChild,0);try{b.downloadURL(e,z),c&&c()}catch(E){k(E)}}var q=!0,n=f.libURL||b.getOptions().exporting.libURL,m=y.createElement("div"),h=f.type||"image/png",z=(f.filename||
"chart")+"."+("image/svg+xml"===h?"svg":h.split("/")[1]),p=f.scale||1;n="/"!==n.slice(-1)?n+"/":n;if("image/svg+xml"===h)try{if("undefined"!==typeof e.msSaveOrOpenBlob){var C=new MSBlobBuilder;C.append(a);var r=C.getBlob("image/svg+xml")}else r=b.svgToDataUrl(a);b.downloadURL(r,z);c&&c()}catch(w){k(w)}else if("application/pdf"===h)g.jsPDF&&g.svg2pdf?u():(q=!0,d(n+"jspdf.js",function(){d(n+"svg2pdf.js",function(){u()})}));else{r=b.svgToDataUrl(a);var v=function(){try{l.revokeObjectURL(r)}catch(w){}};
b.imageToDataUrl(r,h,{},p,function(a){try{b.downloadURL(a,z),c&&c()}catch(B){k(B)}},function(){var f=y.createElement("canvas"),u=f.getContext("2d"),t=a.match(/^<svg[^>]*width\s*=\s*"?(\d+)"?[^>]*>/)[1]*p,m=a.match(/^<svg[^>]*height\s*=\s*"?(\d+)"?[^>]*>/)[1]*p,l=function(){u.drawSvg(a,0,0,t,m);try{b.downloadURL(e.msSaveOrOpenBlob?f.msToBlob():f.toDataURL(h),z),c&&c()}catch(F){k(F)}finally{v()}};f.width=t;f.height=m;g.canvg?l():(q=!0,d(n+"rgbcolor.js",function(){d(n+"canvg.js",function(){l()})}))},
k,k,function(){q&&v()})}};b.Chart.prototype.getSVGForLocalExport=function(a,e,d,c){var f=this,k=0,g,n,m,h,l=function(){k===q.length&&c(f.sanitizeSVG(g.innerHTML,n))},p=function(b,a,c){++k;c.imageElement.setAttributeNS("http://www.w3.org/1999/xlink","href",b);l()};f.unbindGetSVG=D(f,"getSVG",function(b){n=b.chartCopy.options;g=b.chartCopy.container.cloneNode(!0)});f.getSVGForExport(a,e);var q=g.getElementsByTagName("image");try{if(!q.length){c(f.sanitizeSVG(g.innerHTML,n));return}var r=0;for(m=q.length;r<
m;++r){var v=q[r];(h=v.getAttributeNS("http://www.w3.org/1999/xlink","href"))?b.imageToDataUrl(h,"image/png",{imageElement:v},a.scale,p,d,d,d):(++k,v.parentNode.removeChild(v),l())}}catch(w){d(w)}f.unbindGetSVG()};b.Chart.prototype.exportChartLocal=function(a,e){var d=this,c=b.merge(d.options.exporting,a),g=function(a){!1===c.fallbackToExportServer?c.error?c.error(c,a):b.error(28,!0):d.exportChart(c)};a=function(){return[].some.call(d.container.getElementsByTagName("image"),function(a){a=a.getAttribute("href");
return""!==a&&0!==a.indexOf("data:")})};p&&d.styledMode&&(b.SVGRenderer.prototype.inlineWhitelist=[/^blockSize/,/^border/,/^caretColor/,/^color/,/^columnRule/,/^columnRuleColor/,/^cssFloat/,/^cursor/,/^fill$/,/^fillOpacity/,/^font/,/^inlineSize/,/^length/,/^lineHeight/,/^opacity/,/^outline/,/^parentRule/,/^rx$/,/^ry$/,/^stroke/,/^textAlign/,/^textAnchor/,/^textDecoration/,/^transform/,/^vectorEffect/,/^visibility/,/^x$/,/^y$/]);p&&("application/pdf"===c.type||d.container.getElementsByTagName("image").length&&
"image/svg+xml"!==c.type)||"application/pdf"===c.type&&a()?g("Image type not supported for this chart/browser."):d.getSVGForLocalExport(c,e,g,function(a){-1<a.indexOf("<foreignObject")&&"image/svg+xml"!==c.type?g("Image type not supportedfor charts with embedded HTML"):b.downloadSVGLocal(a,f({filename:d.getFilename()},c),g)})};a(!0,b.getOptions().exporting,{libURL:"https://code.highcharts.com/8.0.4/lib/",menuItemDefinitions:{downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChartLocal()}},
downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChartLocal({type:"image/jpeg"})}},downloadSVG:{textKey:"downloadSVG",onclick:function(){this.exportChartLocal({type:"image/svg+xml"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChartLocal({type:"application/pdf"})}}}})});f(a,"masters/modules/offline-exporting.src.js",[],function(){})});
//# sourceMappingURL=offline-exporting.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Exporting module

 (c) 2010-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(c){"object"===typeof module&&module.exports?(c["default"]=c,module.exports=c):"function"===typeof define&&define.amd?define("highcharts/modules/export-data",["highcharts","highcharts/modules/exporting"],function(k){c(k);c.Highcharts=k;return c}):c("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(c){function k(b,a,c,u){b.hasOwnProperty(a)||(b[a]=u.apply(null,c))}c=c?c._modules:{};k(c,"mixins/ajax.js",[c["parts/Globals.js"],c["parts/Utilities.js"]],function(b,a){var c=a.merge,
u=a.objectEach;b.ajax=function(b){var a=c(!0,{url:!1,type:"get",dataType:"json",success:!1,error:!1,data:!1,headers:{}},b);b={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"};var d=new XMLHttpRequest;if(!a.url)return!1;d.open(a.type.toUpperCase(),a.url,!0);a.headers["Content-Type"]||d.setRequestHeader("Content-Type",b[a.dataType]||b.text);u(a.headers,function(a,b){d.setRequestHeader(b,a)});d.onreadystatechange=function(){if(4===d.readyState){if(200===
d.status){var b=d.responseText;if("json"===a.dataType)try{b=JSON.parse(b)}catch(e){a.error&&a.error(d,e);return}return a.success&&a.success(b)}a.error&&a.error(d,d.responseText)}};try{a.data=JSON.stringify(a.data)}catch(A){}d.send(a.data||!0)};b.getJSON=function(a,c){b.ajax({url:a,success:c,dataType:"json",headers:{"Content-Type":"text/plain"}})}});k(c,"mixins/download-url.js",[c["parts/Globals.js"]],function(b){var a=b.win,c=a.navigator,u=a.document,k=a.URL||a.webkitURL||a,v=/Edge\/\d+/.test(c.userAgent);
b.dataURLtoBlob=function(b){if((b=b.match(/data:([^;]*)(;base64)?,([0-9A-Za-z+/]+)/))&&3<b.length&&a.atob&&a.ArrayBuffer&&a.Uint8Array&&a.Blob&&k.createObjectURL){var d=a.atob(b[3]),c=new a.ArrayBuffer(d.length);c=new a.Uint8Array(c);for(var f=0;f<c.length;++f)c[f]=d.charCodeAt(f);b=new a.Blob([c],{type:b[1]});return k.createObjectURL(b)}};b.downloadURL=function(d,k){var e=u.createElement("a");if("string"===typeof d||d instanceof String||!c.msSaveOrOpenBlob){if(v||2E6<d.length)if(d=b.dataURLtoBlob(d),
!d)throw Error("Failed to convert to blob");if("undefined"!==typeof e.download)e.href=d,e.download=k,u.body.appendChild(e),e.click(),u.body.removeChild(e);else try{var f=a.open(d,"chart");if("undefined"===typeof f||null===f)throw Error("Failed to open window");}catch(z){a.location.href=d}}else c.msSaveOrOpenBlob(d,k)}});k(c,"modules/export-data.src.js",[c["parts/Globals.js"],c["parts/Utilities.js"]],function(b,a){function c(a,b){var c=d.navigator,m=-1<c.userAgent.indexOf("WebKit")&&0>c.userAgent.indexOf("Chrome"),
e=d.URL||d.webkitURL||d;try{if(c.msSaveOrOpenBlob&&d.MSBlobBuilder){var p=new d.MSBlobBuilder;p.append(a);return p.getBlob("image/svg+xml")}if(!m)return e.createObjectURL(new d.Blob(["\ufeff"+a],{type:b}))}catch(G){}}var k=a.defined,F=a.extend,v=a.pick,d=b.win,A=d.document,e=b.seriesTypes,f=b.downloadURL,z=b.fireEvent;b.setOptions({exporting:{csv:{columnHeaderFormatter:null,dateFormat:"%Y-%m-%d %H:%M:%S",decimalPoint:null,itemDelimiter:null,lineDelimiter:"\n"},showTable:!1,useMultiLevelHeaders:!0,
useRowspanHeaders:!0},lang:{downloadCSV:"Download CSV",downloadXLS:"Download XLS",viewData:"View data table"}});b.addEvent(b.Chart,"render",function(){this.options&&this.options.exporting&&this.options.exporting.showTable&&!this.options.chart.forExport&&this.viewData()});b.Chart.prototype.setUpKeyToAxis=function(){e.arearange&&(e.arearange.prototype.keyToAxis={low:"y",high:"y"});e.gantt&&(e.gantt.prototype.keyToAxis={start:"x",end:"x"})};b.Chart.prototype.getDataRows=function(a){var c=this.hasParallelCoordinates,
d=this.time,e=this.options.exporting&&this.options.exporting.csv||{},m=this.xAxis,p={},f=[],B=[],w=[],r,C=function(h,c,d){if(e.columnHeaderFormatter){var g=e.columnHeaderFormatter(h,c,d);if(!1!==g)return g}return h?h instanceof b.Axis?h.options.title&&h.options.title.text||(h.isDatetimeAxis?"DateTime":"Category"):a?{columnTitle:1<d?c:h.name,topLevelColumnTitle:h.name}:h.name+(1<d?" ("+c+")":""):"Category"},D=function(a,c,d){var h={},g={};c.forEach(function(c){var e=(a.keyToAxis&&a.keyToAxis[c]||c)+
"Axis";e=b.isNumber(d)?a.chart[e][d]:a[e];h[c]=e&&e.categories||[];g[c]=e&&e.isDatetimeAxis});return{categoryMap:h,dateTimeValueAxisMap:g}},g=[];var y=0;this.setUpKeyToAxis();this.series.forEach(function(h){var t=h.options.keys||h.pointArrayMap||["y"],q=t.length,l=!h.requireSorting&&{},k=m.indexOf(h.xAxis),f=D(h,t),n;if(!1!==h.options.includeInDataExport&&!h.options.isInternal&&!1!==h.visible){b.find(g,function(a){return a[0]===k})||g.push([k,y]);for(n=0;n<q;)r=C(h,t[n],t.length),w.push(r.columnTitle||
r),a&&B.push(r.topLevelColumnTitle||r),n++;var x={chart:h.chart,autoIncrement:h.autoIncrement,options:h.options,pointArrayMap:h.pointArrayMap};h.options.data.forEach(function(a,b){c&&(f=D(h,t,b));var g={series:x};h.pointClass.prototype.applyOptions.apply(g,[a]);a=g.x;var m=h.data[b]&&h.data[b].name;n=0;h.xAxis&&"name"!==h.exportKey||(a=m);l&&(l[a]&&(a+="|"+b),l[a]=!0);p[a]||(p[a]=[],p[a].xValues=[]);p[a].x=g.x;p[a].name=m;for(p[a].xValues[k]=g.x;n<q;)b=t[n],m=g[b],p[a][y+n]=v(f.categoryMap[b][m],
f.dateTimeValueAxisMap[b]?d.dateFormat(e.dateFormat,m):null,m),n++});y+=n}});for(q in p)Object.hasOwnProperty.call(p,q)&&f.push(p[q]);var q=a?[B,w]:[w];for(y=g.length;y--;){var t=g[y][0];var l=g[y][1];var x=m[t];f.sort(function(a,b){return a.xValues[t]-b.xValues[t]});var E=C(x);q[0].splice(l,0,E);a&&q[1]&&q[1].splice(l,0,E);f.forEach(function(a){var b=a.name;x&&!k(b)&&(x.isDatetimeAxis?(a.x instanceof Date&&(a.x=a.x.getTime()),b=d.dateFormat(e.dateFormat,a.x)):b=x.categories?v(x.names[a.x],x.categories[a.x],
a.x):a.x);a.splice(l,0,b)})}q=q.concat(f);z(this,"exportData",{dataRows:q});return q};b.Chart.prototype.getCSV=function(a){var b="",c=this.getDataRows(),d=this.options.exporting.csv,e=v(d.decimalPoint,","!==d.itemDelimiter&&a?(1.1).toLocaleString()[1]:"."),m=v(d.itemDelimiter,","===e?";":","),k=d.lineDelimiter;c.forEach(function(a,d){for(var f,n=a.length;n--;)f=a[n],"string"===typeof f&&(f='"'+f+'"'),"number"===typeof f&&"."!==e&&(f=f.toString().replace(".",e)),a[n]=f;b+=a.join(m);d<c.length-1&&(b+=
k)});return b};b.Chart.prototype.getTable=function(a){var b='<table id="highcharts-data-table-'+this.index+'">',c=this.options,d=a?(1.1).toLocaleString()[1]:".",e=v(c.exporting.useMultiLevelHeaders,!0);a=this.getDataRows(e);var f=0,k=e?a.shift():null,m=a.shift(),w=function(a,b,c,e){var g=v(e,"");b="text"+(b?" "+b:"");"number"===typeof g?(g=g.toString(),","===d&&(g=g.replace(".",d)),b="number"):e||(b="empty");return"<"+a+(c?" "+c:"")+' class="'+b+'">'+g+"</"+a+">"};!1!==c.exporting.tableCaption&&(b+=
'<caption class="highcharts-table-caption">'+v(c.exporting.tableCaption,c.title.text?c.title.text.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/\//g,"&#x2F;"):"Chart")+"</caption>");for(var r=0,u=a.length;r<u;++r)a[r].length>f&&(f=a[r].length);b+=function(a,b,d){var f="<thead>",g=0;d=d||b&&b.length;var l,k=0;if(l=e&&a&&b){a:if(l=a.length,b.length===l){for(;l--;)if(a[l]!==b[l]){l=!1;break a}l=!0}else l=!1;l=!l}if(l){for(f+="<tr>";g<
d;++g){l=a[g];var m=a[g+1];l===m?++k:k?(f+=w("th","highcharts-table-topheading",'scope="col" colspan="'+(k+1)+'"',l),k=0):(l===b[g]?c.exporting.useRowspanHeaders?(m=2,delete b[g]):(m=1,b[g]=""):m=1,f+=w("th","highcharts-table-topheading",'scope="col"'+(1<m?' valign="top" rowspan="'+m+'"':""),l))}f+="</tr>"}if(b){f+="<tr>";g=0;for(d=b.length;g<d;++g)"undefined"!==typeof b[g]&&(f+=w("th",null,'scope="col"',b[g]));f+="</tr>"}return f+"</thead>"}(k,m,Math.max(f,m.length));b+="<tbody>";a.forEach(function(a){b+=
"<tr>";for(var c=0;c<f;c++)b+=w(c?"td":"th",null,c?"":'scope="row"',a[c]);b+="</tr>"});b+="</tbody></table>";a={html:b};z(this,"afterGetTable",a);return a.html};b.Chart.prototype.downloadCSV=function(){var a=this.getCSV(!0);f(c(a,"text/csv")||"data:text/csv,\ufeff"+encodeURIComponent(a),this.getFilename()+".csv")};b.Chart.prototype.downloadXLS=function(){var a='<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head>\x3c!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>Ark1</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--\x3e<style>td{border:none;font-family: Calibri, sans-serif;} .number{mso-number-format:"0.00";} .text{ mso-number-format:"@";}</style><meta name=ProgId content=Excel.Sheet><meta charset=UTF-8></head><body>'+
this.getTable(!0)+"</body></html>";f(c(a,"application/vnd.ms-excel")||"data:application/vnd.ms-excel;base64,"+d.btoa(unescape(encodeURIComponent(a))),this.getFilename()+".xls")};b.Chart.prototype.viewData=function(){this.dataTableDiv||(this.dataTableDiv=A.createElement("div"),this.dataTableDiv.className="highcharts-data-table",this.renderTo.parentNode.insertBefore(this.dataTableDiv,this.renderTo.nextSibling));this.dataTableDiv.innerHTML=this.getTable();z(this,"afterViewData",this.dataTableDiv)};if(a=
b.getOptions().exporting)F(a.menuItemDefinitions,{downloadCSV:{textKey:"downloadCSV",onclick:function(){this.downloadCSV()}},downloadXLS:{textKey:"downloadXLS",onclick:function(){this.downloadXLS()}},viewData:{textKey:"viewData",onclick:function(){this.viewData()}}}),a.buttons&&a.buttons.contextButton.menuItems.push("separator","downloadCSV","downloadXLS","viewData");e.map&&(e.map.prototype.exportKey="name");e.mapbubble&&(e.mapbubble.prototype.exportKey="name");e.treemap&&(e.treemap.prototype.exportKey=
"name")});k(c,"masters/modules/export-data.src.js",[],function(){})});
//# sourceMappingURL=export-data.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 (c) 2009-2018 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(f){"object"===typeof module&&module.exports?(f["default"]=f,module.exports=f):"function"===typeof define&&define.amd?define("highcharts/highcharts-more",["highcharts"],function(E){f(E);f.Highcharts=E;return f}):f("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(f){function E(l,a,c,b){l.hasOwnProperty(a)||(l[a]=b.apply(null,c))}f=f?f._modules:{};E(f,"parts-more/Pane.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(l,a){function c(d,b,n){return Math.sqrt(Math.pow(d-
n[0],2)+Math.pow(b-n[1],2))<n[2]/2}var b=a.addEvent,u=a.extend,v=a.merge,w=a.pick,f=a.splat,y=l.CenteredSeriesMixin;l.Chart.prototype.collectionsWithUpdate.push("pane");a=function(){function d(d,b){this.options=this.chart=this.center=this.background=void 0;this.coll="pane";this.defaultOptions={center:["50%","50%"],size:"85%",innerSize:"0%",startAngle:0};this.defaultBackgroundOptions={shape:"circle",borderWidth:1,borderColor:"#cccccc",backgroundColor:{linearGradient:{x1:0,y1:0,x2:0,y2:1},stops:[[0,
"#ffffff"],[1,"#e6e6e6"]]},from:-Number.MAX_VALUE,innerRadius:0,to:Number.MAX_VALUE,outerRadius:"105%"};this.init(d,b)}d.prototype.init=function(d,b){this.chart=b;this.background=[];b.pane.push(this);this.setOptions(d)};d.prototype.setOptions=function(d){this.options=v(this.defaultOptions,this.chart.angular?{background:{}}:void 0,d)};d.prototype.render=function(){var d=this.options,b=this.options.background,a=this.chart.renderer;this.group||(this.group=a.g("pane-group").attr({zIndex:d.zIndex||0}).add());
this.updateCenter();if(b)for(b=f(b),d=Math.max(b.length,this.background.length||0),a=0;a<d;a++)b[a]&&this.axis?this.renderBackground(v(this.defaultBackgroundOptions,b[a]),a):this.background[a]&&(this.background[a]=this.background[a].destroy(),this.background.splice(a,1))};d.prototype.renderBackground=function(d,b){var a="animate",n={"class":"highcharts-pane "+(d.className||"")};this.chart.styledMode||u(n,{fill:d.backgroundColor,stroke:d.borderColor,"stroke-width":d.borderWidth});this.background[b]||
(this.background[b]=this.chart.renderer.path().add(this.group),a="attr");this.background[b][a]({d:this.axis.getPlotBandPath(d.from,d.to,d)}).attr(n)};d.prototype.updateCenter=function(d){this.center=(d||this.axis||{}).center=y.getCenter.call(this)};d.prototype.update=function(d,b){v(!0,this.options,d);v(!0,this.chart.options.pane,d);this.setOptions(this.options);this.render();this.chart.axes.forEach(function(d){d.pane===this&&(d.pane=null,d.update({},b))},this)};return d}();l.Chart.prototype.getHoverPane=
function(d){var b=this,a;d&&b.pane.forEach(function(n){var m=d.chartX-b.plotLeft,t=d.chartY-b.plotTop;c(b.inverted?t:m,b.inverted?m:t,n.center)&&(a=n)});return a};b(l.Chart,"afterIsInsidePlot",function(d){this.polar&&(d.isInsidePlot=this.pane.some(function(b){return c(d.x,d.y,b.center)}))});b(l.Pointer,"beforeGetHoverData",function(d){var b=this.chart;b.polar&&(b.hoverPane=b.getHoverPane(d),d.filter=function(a){return a.visible&&!(!d.shared&&a.directTouch)&&w(a.options.enableMouseTracking,!0)&&(!b.hoverPane||
a.xAxis.pane===b.hoverPane)})});b(l.Pointer,"afterGetHoverData",function(d){var b=this.chart;d.hoverPoint&&d.hoverPoint.plotX&&d.hoverPoint.plotY&&b.hoverPane&&!c(d.hoverPoint.plotX,d.hoverPoint.plotY,b.hoverPane.center)&&(d.hoverPoint=void 0)});l.Pane=a;return l.Pane});E(f,"parts-more/RadialAxis.js",[f["parts/Globals.js"],f["parts/Tick.js"],f["parts/Utilities.js"]],function(l,a,c){var b=c.addEvent,u=c.correctFloat,v=c.defined,w=c.extend,f=c.merge,y=c.pick,d=c.pInt,m=c.relativeLength;c=c.wrap;var n=
l.Axis,t=l.noop,x=n.prototype,A=a.prototype;var r={getOffset:t,redraw:function(){this.isDirty=!1},render:function(){this.isDirty=!1},createLabelCollector:function(){return!1},setScale:t,setCategories:t,setTitle:t};var p={defaultRadialGaugeOptions:{labels:{align:"center",x:0,y:null},minorGridLineWidth:0,minorTickInterval:"auto",minorTickLength:10,minorTickPosition:"inside",minorTickWidth:1,tickLength:10,tickPosition:"inside",tickWidth:2,title:{rotation:0},zIndex:2},defaultCircularOptions:{gridLineWidth:1,
labels:{align:null,distance:15,x:0,y:null,style:{textOverflow:"none"}},maxPadding:0,minPadding:0,showLastLabel:!1,tickLength:0},defaultRadialOptions:{gridLineInterpolation:"circle",gridLineWidth:1,labels:{align:"right",x:-3,y:-2},showLastLabel:!1,title:{x:4,text:null,rotation:90}},setOptions:function(h){h=this.options=f(this.defaultOptions,this.defaultPolarOptions,h);h.plotBands||(h.plotBands=[]);l.fireEvent(this,"afterSetOptions")},getOffset:function(){x.getOffset.call(this);this.chart.axisOffset[this.side]=
0},getLinePath:function(h,g,e){h=this.pane.center;var k=this.chart,p=y(g,h[2]/2-this.offset);"undefined"===typeof e&&(e=this.horiz?0:this.center&&-this.center[3]/2);e&&(p+=e);this.isCircular||"undefined"!==typeof g?(g=this.chart.renderer.symbols.arc(this.left+h[0],this.top+h[1],p,p,{start:this.startAngleRad,end:this.endAngleRad,open:!0,innerR:0}),g.xBounds=[this.left+h[0]],g.yBounds=[this.top+h[1]-p]):(g=this.postTranslate(this.angleRad,p),g=["M",this.center[0]+k.plotLeft,this.center[1]+k.plotTop,
"L",g.x,g.y]);return g},setAxisTranslation:function(){x.setAxisTranslation.call(this);this.center&&(this.transA=this.isCircular?(this.endAngleRad-this.startAngleRad)/(this.max-this.min||1):(this.center[2]-this.center[3])/2/(this.max-this.min||1),this.minPixelPadding=this.isXAxis?this.transA*this.minPointOffset:0)},beforeSetTickPositions:function(){this.autoConnect=this.isCircular&&"undefined"===typeof y(this.userMax,this.options.max)&&u(this.endAngleRad-this.startAngleRad)===u(2*Math.PI);!this.isCircular&&
this.chart.inverted&&this.max++;this.autoConnect&&(this.max+=this.categories&&1||this.pointRange||this.closestPointRange||0)},setAxisSize:function(){x.setAxisSize.call(this);if(this.isRadial){this.pane.updateCenter(this);var h=this.center=w([],this.pane.center);if(this.isCircular)this.sector=this.endAngleRad-this.startAngleRad;else{var g=this.postTranslate(this.angleRad,h[3]/2);h[0]=g.x-this.chart.plotLeft;h[1]=g.y-this.chart.plotTop}this.len=this.width=this.height=(h[2]-h[3])*y(this.sector,1)/2}},
getPosition:function(h,g){h=this.translate(h);return this.postTranslate(this.isCircular?h:this.angleRad,y(this.isCircular?g:0>h?0:h,this.center[2]/2)-this.offset)},postTranslate:function(h,g){var e=this.chart,k=this.center;h=this.startAngleRad+h;return{x:e.plotLeft+k[0]+Math.cos(h)*g,y:e.plotTop+k[1]+Math.sin(h)*g}},getPlotBandPath:function(h,g,e){var k=this.center,p=this.startAngleRad,C=k[2]/2,q=[y(e.outerRadius,"100%"),e.innerRadius,y(e.thickness,10)],r=Math.min(this.offset,0),b=/%$/;var a=this.isCircular;
if("polygon"===this.options.gridLineInterpolation)q=this.getPlotLinePath({value:h}).concat(this.getPlotLinePath({value:g,reverse:!0}));else{h=Math.max(h,this.min);g=Math.min(g,this.max);a||(q[0]=this.translate(h),q[1]=this.translate(g));q=q.map(function(e){b.test(e)&&(e=d(e,10)*C/100);return e});if("circle"!==e.shape&&a)h=p+this.translate(h),g=p+this.translate(g);else{h=-Math.PI/2;g=1.5*Math.PI;var n=!0}q[0]-=r;q[2]-=r;q=this.chart.renderer.symbols.arc(this.left+k[0],this.top+k[1],q[0],q[0],{start:Math.min(h,
g),end:Math.max(h,g),innerR:y(q[1],q[0]-q[2]),open:n});a&&(a=(g+h)/2,r=this.left+k[0]+k[2]/2*Math.cos(a),q.xBounds=a>-Math.PI/2&&a<Math.PI/2?[r,this.chart.plotWidth]:[0,r],q.yBounds=[this.top+k[1]+k[2]/2*Math.sin(a)],q.yBounds[0]+=a>-Math.PI&&0>a||a>Math.PI?-10:10)}return q},getCrosshairPosition:function(h,g,e){var k=h.value,p=this.pane.center;if(this.isCircular){if(v(k))h.point&&(d=h.point.shapeArgs||{},d.start&&(k=this.chart.inverted?this.translate(h.point.rectPlotY,!0):h.point.x));else{var d=h.chartX||
0;var q=h.chartY||0;k=this.translate(Math.atan2(q-e,d-g)-this.startAngleRad,!0)}h=this.getPosition(k);d=h.x;q=h.y}else v(k)||(d=h.chartX,q=h.chartY),v(d)&&v(q)&&(e=p[1]+this.chart.plotTop,k=this.translate(Math.min(Math.sqrt(Math.pow(d-g,2)+Math.pow(q-e,2)),p[2]/2)-p[3]/2,!0));return[k,d||0,q||0]},getPlotLinePath:function(h){var g=this,e=g.pane.center,k=g.chart,p=k.inverted,d=h.value,q=h.reverse,r=g.getPosition(d),b=g.pane.options.background?g.pane.options.background[0]||g.pane.options.background:
{},a=b.innerRadius||"0%",n=b.outerRadius||"100%";b=e[0]+k.plotLeft;var c=e[1]+k.plotTop,t=r.x,x=r.y,u=g.height;r=e[3]/2;var v,l;h.isCrosshair&&(x=this.getCrosshairPosition(h,b,c),d=x[0],t=x[1],x=x[2]);if(g.isCircular){q=Math.sqrt(Math.pow(t-b,2)+Math.pow(x-c,2));a="string"===typeof a?m(a,1):a/q;n="string"===typeof n?m(n,1):n/q;e&&r&&(e=r/q,a<e&&(a=e),n<e&&(n=e));var w=["M",b+a*(t-b),c-a*(c-x),"L",t-(1-n)*(t-b),x+(1-n)*(c-x)]}else(d=g.translate(d))&&(0>d||d>u)&&(d=0),"circle"===g.options.gridLineInterpolation?
w=g.getLinePath(0,d,r):(k[p?"yAxis":"xAxis"].forEach(function(e){e.pane===g.pane&&(v=e)}),w=[],e=v.tickPositions,v.autoConnect&&(e=e.concat([e[0]])),q&&(e=[].concat(e).reverse()),d&&(d+=r),e.forEach(function(e,k){l=v.getPosition(e,d);w.push(k?"L":"M",l.x,l.y)}));return w},getTitlePosition:function(){var h=this.center,g=this.chart,e=this.options.title;return{x:g.plotLeft+h[0]+(e.x||0),y:g.plotTop+h[1]-{high:.5,middle:.25,low:0}[e.align]*h[2]+(e.y||0)}},createLabelCollector:function(){var h=this;return function(){if(h.isRadial&&
h.tickPositions&&!0!==h.options.labels.allowOverlap)return h.tickPositions.map(function(g){return h.ticks[g]&&h.ticks[g].label}).filter(function(g){return!!g})}}};b(n,"init",function(h){var g=this.chart,e=g.inverted,k=g.angular,d=g.polar,b=this.isXAxis,q=this.coll,a=k&&b,n,c=g.options;h=h.userOptions.pane||0;h=this.pane=g.pane&&g.pane[h];if("colorAxis"===q)this.isRadial=!1;else{if(k){if(w(this,a?r:p),n=!b)this.defaultPolarOptions=this.defaultRadialGaugeOptions}else d&&(w(this,p),this.defaultPolarOptions=
(n=this.horiz)?this.defaultCircularOptions:f("xAxis"===q?this.defaultOptions:this.defaultYAxisOptions,this.defaultRadialOptions),e&&"yAxis"===q&&(this.defaultPolarOptions.stackLabels=this.defaultYAxisOptions.stackLabels));k||d?(this.isRadial=!0,c.chart.zoomType=null,this.labelCollector||(this.labelCollector=this.createLabelCollector()),this.labelCollector&&g.labelCollectors.push(this.labelCollector)):this.isRadial=!1;h&&n&&(h.axis=this);this.isCircular=n}});b(n,"afterInit",function(){var h=this.chart,
g=this.options,e=this.pane,k=e&&e.options;h.angular&&this.isXAxis||!e||!h.angular&&!h.polar||(this.angleRad=(g.angle||0)*Math.PI/180,this.startAngleRad=(k.startAngle-90)*Math.PI/180,this.endAngleRad=(y(k.endAngle,k.startAngle+360)-90)*Math.PI/180,this.offset=g.offset||0)});b(n,"autoLabelAlign",function(h){this.isRadial&&(h.align=void 0,h.preventDefault())});b(n,"destroy",function(){if(this.chart&&this.chart.labelCollectors){var h=this.chart.labelCollectors.indexOf(this.labelCollector);0<=h&&this.chart.labelCollectors.splice(h,
1)}});b(a,"afterGetPosition",function(h){this.axis.getPosition&&w(h.pos,this.axis.getPosition(this.pos))});b(a,"afterGetLabelPosition",function(h){var g=this.axis,e=this.label,k=e.getBBox(),d=g.options.labels,p=d.y,q=20,r=d.align,b=(g.translate(this.pos)+g.startAngleRad+Math.PI/2)/Math.PI*180%360,a=Math.round(b),n="end",c=0>a?a+360:a,x=c,t=0,u=0,v=null===d.y?.3*-k.height:0;if(g.isRadial){var l=g.getPosition(this.pos,g.center[2]/2+m(y(d.distance,-25),g.center[2]/2,-g.center[2]/2));"auto"===d.rotation?
e.attr({rotation:b}):null===p&&(p=g.chart.renderer.fontMetrics(e.styles&&e.styles.fontSize).b-k.height/2);null===r&&(g.isCircular?(k.width>g.len*g.tickInterval/(g.max-g.min)&&(q=0),r=b>q&&b<180-q?"left":b>180+q&&b<360-q?"right":"center"):r="center",e.attr({align:r}));if("auto"===r&&2===g.tickPositions.length&&g.isCircular){90<c&&180>c?c=180-c:270<c&&360>=c&&(c=540-c);180<x&&360>=x&&(x=360-x);if(g.pane.options.startAngle===a||g.pane.options.startAngle===a+360||g.pane.options.startAngle===a-360)n="start";
r=-90<=a&&90>=a||-360<=a&&-270>=a||270<=a&&360>=a?"start"===n?"right":"left":"start"===n?"left":"right";70<x&&110>x&&(r="center");15>c||180<=c&&195>c?t=.3*k.height:15<=c&&35>=c?t="start"===n?0:.75*k.height:195<=c&&215>=c?t="start"===n?.75*k.height:0:35<c&&90>=c?t="start"===n?.25*-k.height:k.height:215<c&&270>=c&&(t="start"===n?k.height:.25*-k.height);15>x?u="start"===n?.15*-k.height:.15*k.height:165<x&&180>=x&&(u="start"===n?.15*k.height:.15*-k.height);e.attr({align:r});e.translate(u,t+v)}h.pos.x=
l.x+d.x;h.pos.y=l.y+p}});c(A,"getMarkPath",function(h,g,e,k,d,p,q){var r=this.axis;r.isRadial?(h=r.getPosition(this.pos,r.center[2]/2+k),g=["M",g,e,"L",h.x,h.y]):g=h.call(this,g,e,k,d,p,q);return g})});E(f,"parts-more/AreaRangeSeries.js",[f["parts/Globals.js"],f["parts/Point.js"],f["parts/Utilities.js"]],function(l,a,c){var b=c.defined,u=c.extend,v=c.isArray,w=c.isNumber,f=c.pick;c=c.seriesType;var y=l.seriesTypes,d=l.Series.prototype,m=a.prototype;c("arearange","area",{lineWidth:1,threshold:null,
tooltip:{pointFormat:'<span style="color:{series.color}">\u25cf</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'},trackByArea:!0,dataLabels:{align:null,verticalAlign:null,xLow:0,xHigh:0,yLow:0,yHigh:0}},{pointArrayMap:["low","high"],pointValKey:"low",deferTranslatePolar:!0,toYData:function(d){return[d.low,d.high]},highToXY:function(d){var b=this.chart,a=this.xAxis.postTranslate(d.rectPlotX,this.yAxis.len-d.plotHigh);d.plotHighX=a.x-b.plotLeft;d.plotHigh=a.y-b.plotTop;d.plotLowX=
d.plotX},translate:function(){var d=this,b=d.yAxis,a=!!d.modifyValue;y.area.prototype.translate.apply(d);d.points.forEach(function(c){var r=c.high,p=c.plotY;c.isNull?c.plotY=null:(c.plotLow=p,c.plotHigh=b.translate(a?d.modifyValue(r,c):r,0,1,0,1),a&&(c.yBottom=c.plotHigh))});this.chart.polar&&this.points.forEach(function(b){d.highToXY(b);b.tooltipPos=[(b.plotHighX+b.plotLowX)/2,(b.plotHigh+b.plotLow)/2]})},getGraphPath:function(d){var b=[],a=[],c,r=y.area.prototype.getGraphPath;var p=this.options;
var h=this.chart.polar&&!1!==p.connectEnds,g=p.connectNulls,e=p.step;d=d||this.points;for(c=d.length;c--;){var k=d[c];k.isNull||h||g||d[c+1]&&!d[c+1].isNull||a.push({plotX:k.plotX,plotY:k.plotY,doCurve:!1});var B={polarPlotY:k.polarPlotY,rectPlotX:k.rectPlotX,yBottom:k.yBottom,plotX:f(k.plotHighX,k.plotX),plotY:k.plotHigh,isNull:k.isNull};a.push(B);b.push(B);k.isNull||h||g||d[c-1]&&!d[c-1].isNull||a.push({plotX:k.plotX,plotY:k.plotY,doCurve:!1})}d=r.call(this,d);e&&(!0===e&&(e="left"),p.step={left:"right",
center:"center",right:"left"}[e]);b=r.call(this,b);a=r.call(this,a);p.step=e;p=[].concat(d,b);this.chart.polar||"M"!==a[0]||(a[0]="L");this.graphPath=p;this.areaPath=d.concat(a);p.isArea=!0;p.xMap=d.xMap;this.areaPath.xMap=d.xMap;return p},drawDataLabels:function(){var b=this.points,a=b.length,c,m=[],r=this.options.dataLabels,p,h=this.chart.inverted;if(v(r))if(1<r.length){var g=r[0];var e=r[1]}else g=r[0],e={enabled:!1};else g=u({},r),g.x=r.xHigh,g.y=r.yHigh,e=u({},r),e.x=r.xLow,e.y=r.yLow;if(g.enabled||
this._hasPointLabels){for(c=a;c--;)if(p=b[c]){var k=g.inside?p.plotHigh<p.plotLow:p.plotHigh>p.plotLow;p.y=p.high;p._plotY=p.plotY;p.plotY=p.plotHigh;m[c]=p.dataLabel;p.dataLabel=p.dataLabelUpper;p.below=k;h?g.align||(g.align=k?"right":"left"):g.verticalAlign||(g.verticalAlign=k?"top":"bottom")}this.options.dataLabels=g;d.drawDataLabels&&d.drawDataLabels.apply(this,arguments);for(c=a;c--;)if(p=b[c])p.dataLabelUpper=p.dataLabel,p.dataLabel=m[c],delete p.dataLabels,p.y=p.low,p.plotY=p._plotY}if(e.enabled||
this._hasPointLabels){for(c=a;c--;)if(p=b[c])k=e.inside?p.plotHigh<p.plotLow:p.plotHigh>p.plotLow,p.below=!k,h?e.align||(e.align=k?"left":"right"):e.verticalAlign||(e.verticalAlign=k?"bottom":"top");this.options.dataLabels=e;d.drawDataLabels&&d.drawDataLabels.apply(this,arguments)}if(g.enabled)for(c=a;c--;)if(p=b[c])p.dataLabels=[p.dataLabelUpper,p.dataLabel].filter(function(e){return!!e});this.options.dataLabels=r},alignDataLabel:function(){y.column.prototype.alignDataLabel.apply(this,arguments)},
drawPoints:function(){var a=this.points.length,c;d.drawPoints.apply(this,arguments);for(c=0;c<a;){var m=this.points[c];m.origProps={plotY:m.plotY,plotX:m.plotX,isInside:m.isInside,negative:m.negative,zone:m.zone,y:m.y};m.lowerGraphic=m.graphic;m.graphic=m.upperGraphic;m.plotY=m.plotHigh;b(m.plotHighX)&&(m.plotX=m.plotHighX);m.y=m.high;m.negative=m.high<(this.options.threshold||0);m.zone=this.zones.length&&m.getZone();this.chart.polar||(m.isInside=m.isTopInside="undefined"!==typeof m.plotY&&0<=m.plotY&&
m.plotY<=this.yAxis.len&&0<=m.plotX&&m.plotX<=this.xAxis.len);c++}d.drawPoints.apply(this,arguments);for(c=0;c<a;)m=this.points[c],m.upperGraphic=m.graphic,m.graphic=m.lowerGraphic,u(m,m.origProps),delete m.origProps,c++},setStackedPoints:l.noop},{setState:function(){var d=this.state,a=this.series,c=a.chart.polar;b(this.plotHigh)||(this.plotHigh=a.yAxis.toPixels(this.high,!0));b(this.plotLow)||(this.plotLow=this.plotY=a.yAxis.toPixels(this.low,!0));a.stateMarkerGraphic&&(a.lowerStateMarkerGraphic=
a.stateMarkerGraphic,a.stateMarkerGraphic=a.upperStateMarkerGraphic);this.graphic=this.upperGraphic;this.plotY=this.plotHigh;c&&(this.plotX=this.plotHighX);m.setState.apply(this,arguments);this.state=d;this.plotY=this.plotLow;this.graphic=this.lowerGraphic;c&&(this.plotX=this.plotLowX);a.stateMarkerGraphic&&(a.upperStateMarkerGraphic=a.stateMarkerGraphic,a.stateMarkerGraphic=a.lowerStateMarkerGraphic,a.lowerStateMarkerGraphic=void 0);m.setState.apply(this,arguments)},haloPath:function(){var d=this.series.chart.polar,
a=[];this.plotY=this.plotLow;d&&(this.plotX=this.plotLowX);this.isInside&&(a=m.haloPath.apply(this,arguments));this.plotY=this.plotHigh;d&&(this.plotX=this.plotHighX);this.isTopInside&&(a=a.concat(m.haloPath.apply(this,arguments)));return a},destroyElements:function(){["lowerGraphic","upperGraphic"].forEach(function(d){this[d]&&(this[d]=this[d].destroy())},this);this.graphic=null;return m.destroyElements.apply(this,arguments)},isValid:function(){return w(this.low)&&w(this.high)}});""});E(f,"parts-more/AreaSplineRangeSeries.js",
[f["parts/Globals.js"],f["parts/Utilities.js"]],function(l,a){a=a.seriesType;a("areasplinerange","arearange",null,{getPointSpline:l.seriesTypes.spline.prototype.getPointSpline});""});E(f,"parts-more/ColumnRangeSeries.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(l,a){var c=a.clamp,b=a.merge,u=a.pick;a=a.seriesType;var v=l.defaultPlotOptions,w=l.noop,f=l.seriesTypes.column.prototype;a("columnrange","arearange",b(v.column,v.arearange,{pointRange:null,marker:null,states:{hover:{halo:!1}}}),
{translate:function(){var a=this,d=a.yAxis,b=a.xAxis,n=b.startAngleRad,v,l=a.chart,w=a.xAxis.isRadial,r=Math.max(l.chartWidth,l.chartHeight)+999,p;f.translate.apply(a);a.points.forEach(function(h){var g=h.shapeArgs,e=a.options.minPointLength;h.plotHigh=p=c(d.translate(h.high,0,1,0,1),-r,r);h.plotLow=c(h.plotY,-r,r);var k=p;var B=u(h.rectPlotY,h.plotY)-p;Math.abs(B)<e?(e-=B,B+=e,k-=e/2):0>B&&(B*=-1,k-=B);w?(v=h.barX+n,h.shapeType="arc",h.shapeArgs=a.polarArc(k+B,k,v,v+h.pointWidth)):(g.height=B,g.y=
k,h.tooltipPos=l.inverted?[d.len+d.pos-l.plotLeft-k-B/2,b.len+b.pos-l.plotTop-g.x-g.width/2,B]:[b.left-l.plotLeft+g.x+g.width/2,d.pos-l.plotTop+k+B/2,B])})},directTouch:!0,trackerGroups:["group","dataLabelsGroup"],drawGraph:w,getSymbol:w,crispCol:function(){return f.crispCol.apply(this,arguments)},drawPoints:function(){return f.drawPoints.apply(this,arguments)},drawTracker:function(){return f.drawTracker.apply(this,arguments)},getColumnMetrics:function(){return f.getColumnMetrics.apply(this,arguments)},
pointAttribs:function(){return f.pointAttribs.apply(this,arguments)},animate:function(){return f.animate.apply(this,arguments)},polarArc:function(){return f.polarArc.apply(this,arguments)},translate3dPoints:function(){return f.translate3dPoints.apply(this,arguments)},translate3dShapes:function(){return f.translate3dShapes.apply(this,arguments)}},{setState:f.pointClass.prototype.setState});""});E(f,"parts-more/ColumnPyramidSeries.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(l,a){var c=
a.clamp,b=a.pick;a=a.seriesType;var u=l.seriesTypes.column.prototype;a("columnpyramid","column",{},{translate:function(){var a=this,l=a.chart,f=a.options,y=a.dense=2>a.closestPointRange*a.xAxis.transA;y=a.borderWidth=b(f.borderWidth,y?0:1);var d=a.yAxis,m=f.threshold,n=a.translatedThreshold=d.getThreshold(m),t=b(f.minPointLength,5),x=a.getColumnMetrics(),A=x.width,r=a.barW=Math.max(A,1+2*y),p=a.pointXOffset=x.offset;l.inverted&&(n-=.5);f.pointPadding&&(r=Math.ceil(r));u.translate.apply(a);a.points.forEach(function(h){var g=
b(h.yBottom,n),e=999+Math.abs(g),k=c(h.plotY,-e,d.len+e);e=h.plotX+p;var B=r/2,C=Math.min(k,g);g=Math.max(k,g)-C;var q;h.barX=e;h.pointWidth=A;h.tooltipPos=l.inverted?[d.len+d.pos-l.plotLeft-k,a.xAxis.len-e-B,g]:[e+B,k+d.pos-l.plotTop,g];k=m+(h.total||h.y);"percent"===f.stacking&&(k=m+(0>h.y)?-100:100);k=d.toPixels(k,!0);var F=(q=l.plotHeight-k-(l.plotHeight-n))?B*(C-k)/q:0;var G=q?B*(C+g-k)/q:0;q=e-F+B;F=e+F+B;var u=e+G+B;G=e-G+B;var v=C-t;var w=C+g;0>h.y&&(v=C,w=C+g+t);l.inverted&&(u=l.plotWidth-
C,q=k-(l.plotWidth-n),F=B*(k-u)/q,G=B*(k-(u-g))/q,q=e+B+F,F=q-2*F,u=e-G+B,G=e+G+B,v=C,w=C+g-t,0>h.y&&(w=C+g+t));h.shapeType="path";h.shapeArgs={x:q,y:v,width:F-q,height:g,d:["M",q,v,"L",F,v,u,w,G,w,"Z"]}})}});""});E(f,"parts-more/GaugeSeries.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(l,a){var c=a.clamp,b=a.isNumber,u=a.merge,v=a.pick,f=a.pInt;a=a.seriesType;var z=l.Series,y=l.TrackerMixin;a("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:l.noop,fixedBox:!0,forceDL:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],translate:function(){var d=this.yAxis,a=this.options,n=d.center;this.generatePoints();this.points.forEach(function(m){var l=u(a.dial,m.dial),t=f(v(l.radius,"80%"))*n[2]/200,r=f(v(l.baseLength,"70%"))*t/100,p=f(v(l.rearLength,"10%"))*t/100,h=l.baseWidth||3,g=l.topWidth||
1,e=a.overshoot,k=d.startAngleRad+d.translate(m.y,null,null,null,!0);if(b(e)||!1===a.wrap)e=b(e)?e/180*Math.PI:0,k=c(k,d.startAngleRad-e,d.endAngleRad+e);k=180*k/Math.PI;m.shapeType="path";m.shapeArgs={d:l.path||["M",-p,-h/2,"L",r,-h/2,t,-g/2,t,g/2,r,h/2,-p,h/2,"z"],translateX:n[0],translateY:n[1],rotation:k};m.plotX=n[0];m.plotY=n[1]})},drawPoints:function(){var d=this,a=d.chart,b=d.yAxis.center,c=d.pivot,l=d.options,f=l.pivot,r=a.renderer;d.points.forEach(function(b){var h=b.graphic,g=b.shapeArgs,
e=g.d,k=u(l.dial,b.dial);h?(h.animate(g),g.d=e):b.graphic=r[b.shapeType](g).attr({rotation:g.rotation,zIndex:1}).addClass("highcharts-dial").add(d.group);if(!a.styledMode)b.graphic[h?"animate":"attr"]({stroke:k.borderColor||"none","stroke-width":k.borderWidth||0,fill:k.backgroundColor||"#000000"})});c?c.animate({translateX:b[0],translateY:b[1]}):(d.pivot=r.circle(0,0,v(f.radius,5)).attr({zIndex:2}).addClass("highcharts-pivot").translate(b[0],b[1]).add(d.group),a.styledMode||d.pivot.attr({"stroke-width":f.borderWidth||
0,stroke:f.borderColor||"#cccccc",fill:f.backgroundColor||"#000000"}))},animate:function(d){var a=this;d||a.points.forEach(function(d){var b=d.graphic;b&&(b.attr({rotation:180*a.yAxis.startAngleRad/Math.PI}),b.animate({rotation:d.shapeArgs.rotation},a.options.animation))})},render:function(){this.group=this.plotGroup("group","series",this.visible?"visible":"hidden",this.options.zIndex,this.chart.seriesGroup);z.prototype.render.call(this);this.group.clip(this.chart.clipRect)},setData:function(d,a){z.prototype.setData.call(this,
d,!1);this.processData();this.generatePoints();v(a,!0)&&this.chart.redraw()},hasData:function(){return!!this.points.length},drawTracker:y&&y.drawTrackerPoint},{setState:function(d){this.state=d}});""});E(f,"parts-more/BoxPlotSeries.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(l,a){var c=a.pick;a=a.seriesType;var b=l.noop,u=l.seriesTypes;a("boxplot","column",{threshold:null,tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> <b> {series.name}</b><br/>Maximum: {point.high}<br/>Upper quartile: {point.q3}<br/>Median: {point.median}<br/>Lower quartile: {point.q1}<br/>Minimum: {point.low}<br/>'},
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:b,translate:function(){var a=this.yAxis,b=this.pointArrayMap;u.column.prototype.translate.apply(this);this.points.forEach(function(c){b.forEach(function(b){null!==c[b]&&(c[b+"Plot"]=a.translate(c[b],0,1,0,1))});c.plotHigh=c.highPlot})},drawPoints:function(){var a=
this,b=a.options,l=a.chart,u=l.renderer,d,m,n,f,x,A,r=0,p,h,g,e,k=!1!==a.doQuartiles,B,C=a.options.whiskerLength;a.points.forEach(function(q){var F=q.graphic,G=F?"animate":"attr",K=q.shapeArgs,v={},t={},H={},J={},I=q.color||a.color;"undefined"!==typeof q.plotY&&(p=K.width,h=Math.floor(K.x),g=h+p,e=Math.round(p/2),d=Math.floor(k?q.q1Plot:q.lowPlot),m=Math.floor(k?q.q3Plot:q.lowPlot),n=Math.floor(q.highPlot),f=Math.floor(q.lowPlot),F||(q.graphic=F=u.g("point").add(a.group),q.stem=u.path().addClass("highcharts-boxplot-stem").add(F),
C&&(q.whiskers=u.path().addClass("highcharts-boxplot-whisker").add(F)),k&&(q.box=u.path(void 0).addClass("highcharts-boxplot-box").add(F)),q.medianShape=u.path(void 0).addClass("highcharts-boxplot-median").add(F)),l.styledMode||(t.stroke=q.stemColor||b.stemColor||I,t["stroke-width"]=c(q.stemWidth,b.stemWidth,b.lineWidth),t.dashstyle=q.stemDashStyle||b.stemDashStyle,q.stem.attr(t),C&&(H.stroke=q.whiskerColor||b.whiskerColor||I,H["stroke-width"]=c(q.whiskerWidth,b.whiskerWidth,b.lineWidth),q.whiskers.attr(H)),
k&&(v.fill=q.fillColor||b.fillColor||I,v.stroke=b.lineColor||I,v["stroke-width"]=b.lineWidth||0,q.box.attr(v)),J.stroke=q.medianColor||b.medianColor||I,J["stroke-width"]=c(q.medianWidth,b.medianWidth,b.lineWidth),q.medianShape.attr(J)),A=q.stem.strokeWidth()%2/2,r=h+e+A,q.stem[G]({d:["M",r,m,"L",r,n,"M",r,d,"L",r,f]}),k&&(A=q.box.strokeWidth()%2/2,d=Math.floor(d)+A,m=Math.floor(m)+A,h+=A,g+=A,q.box[G]({d:["M",h,m,"L",h,d,"L",g,d,"L",g,m,"L",h,m,"z"]})),C&&(A=q.whiskers.strokeWidth()%2/2,n+=A,f+=A,
B=/%$/.test(C)?e*parseFloat(C)/100:C/2,q.whiskers[G]({d:["M",r-B,n,"L",r+B,n,"M",r-B,f,"L",r+B,f]})),x=Math.round(q.medianPlot),A=q.medianShape.strokeWidth()%2/2,x+=A,q.medianShape[G]({d:["M",h,x,"L",g,x]}))})},setStackedPoints:b});""});E(f,"parts-more/ErrorBarSeries.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(l,a){a=a.seriesType;var c=l.noop,b=l.seriesTypes;a("errorbar","boxplot",{color:"#000000",grouping:!1,linkedTo:":previous",tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'},
whiskerWidth:null},{type:"errorbar",pointArrayMap:["low","high"],toYData:function(a){return[a.low,a.high]},pointValKey:"high",doQuartiles:!1,drawDataLabels:b.arearange?function(){var a=this.pointValKey;b.arearange.prototype.drawDataLabels.call(this);this.data.forEach(function(b){b.y=b[a]})}:c,getColumnMetrics:function(){return this.linkedParent&&this.linkedParent.columnMetrics||b.column.prototype.getColumnMetrics.call(this)}});""});E(f,"parts-more/WaterfallSeries.js",[f["parts/Globals.js"],f["parts/Point.js"],
f["parts/Utilities.js"]],function(l,a,c){var b=c.addEvent,u=c.arrayMax,f=c.arrayMin,w=c.correctFloat,z=c.isNumber,y=c.objectEach,d=c.pick;c=c.seriesType;var m=l.Axis,n=l.Chart,t=l.Series,x=l.StackItem,A=l.seriesTypes;b(m,"afterInit",function(){this.isXAxis||(this.waterfallStacks={changed:!1})});b(m,"afterBuildStacks",function(){this.waterfallStacks.changed=!1;delete this.waterfallStacks.alreadyChanged});b(n,"beforeRedraw",function(){for(var a=this.axes,d=this.series,h=d.length;h--;)d[h].options.stacking&&
(a.forEach(function(g){g.isXAxis||(g.waterfallStacks.changed=!0)}),h=0)});b(m,"afterRender",function(){var a=this.options.stackLabels;a&&a.enabled&&this.waterfallStacks&&this.renderWaterfallStackTotals()});m.prototype.renderWaterfallStackTotals=function(){var a=this.waterfallStacks,d=this.stackTotalGroup,h=new x(this,this.options.stackLabels,!1,0,void 0);this.dummyStackItem=h;y(a,function(g){y(g,function(e){h.total=e.stackTotal;e.label&&(h.label=e.label);x.prototype.render.call(h,d);e.label=h.label;
delete h.label})});h.total=null};c("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;A.column.prototype.generatePoints.apply(this);var d=0;for(a=this.points.length;d<a;d++){var h=this.points[d];var g=this.processedYData[d];if(h.isIntermediateSum||h.isSum)h.y=w(g)}},translate:function(){var a=this.options,b=this.yAxis,h,g=d(a.minPointLength,
5),e=g/2,k=a.threshold,c=a.stacking,C=b.waterfallStacks[this.stackKey];A.column.prototype.translate.apply(this);var q=h=k;var F=this.points;var m=0;for(a=F.length;m<a;m++){var l=F[m];var u=this.processedYData[m];var n=l.shapeArgs;var f=[0,u];var t=l.y;if(c){if(C){f=C[m];if("overlap"===c){var v=f.stackState[f.stateIndex--];v=0<=t?v:v-t;Object.hasOwnProperty.call(f,"absolutePos")&&delete f.absolutePos;Object.hasOwnProperty.call(f,"absoluteNeg")&&delete f.absoluteNeg}else 0<=t?(v=f.threshold+f.posTotal,
f.posTotal-=t):(v=f.threshold+f.negTotal,f.negTotal-=t,v-=t),!f.posTotal&&Object.hasOwnProperty.call(f,"absolutePos")&&(f.posTotal=f.absolutePos,delete f.absolutePos),!f.negTotal&&Object.hasOwnProperty.call(f,"absoluteNeg")&&(f.negTotal=f.absoluteNeg,delete f.absoluteNeg);l.isSum||(f.connectorThreshold=f.threshold+f.stackTotal);b.reversed?(u=0<=t?v-t:v+t,t=v):(u=v,t=v-t);l.below=u<=d(k,0);n.y=b.translate(u,0,1,0,1);n.height=Math.abs(n.y-b.translate(t,0,1,0,1))}if(t=b.dummyStackItem)t.x=m,t.label=
C[m].label,t.setOffset(this.pointXOffset||0,this.barW||0,this.stackedYNeg[m],this.stackedYPos[m])}else v=Math.max(q,q+t)+f[0],n.y=b.translate(v,0,1,0,1),l.isSum?(n.y=b.translate(f[1],0,1,0,1),n.height=Math.min(b.translate(f[0],0,1,0,1),b.len)-n.y):l.isIntermediateSum?(0<=t?(u=f[1]+h,t=h):(u=h,t=f[1]+h),b.reversed&&(u^=t,t^=u,u^=t),n.y=b.translate(u,0,1,0,1),n.height=Math.abs(n.y-Math.min(b.translate(t,0,1,0,1),b.len)),h+=f[1]):(n.height=0<u?b.translate(q,0,1,0,1)-n.y:b.translate(q,0,1,0,1)-b.translate(q-
u,0,1,0,1),q+=u,l.below=q<d(k,0)),0>n.height&&(n.y+=n.height,n.height*=-1);l.plotY=n.y=Math.round(n.y)-this.borderWidth%2/2;n.height=Math.max(Math.round(n.height),.001);l.yBottom=n.y+n.height;n.height<=g&&!l.isNull?(n.height=g,n.y-=e,l.plotY=n.y,l.minPointLengthOffset=0>l.y?-e:e):(l.isNull&&(n.width=0),l.minPointLengthOffset=0);n=l.plotY+(l.negative?n.height:0);this.chart.inverted?l.tooltipPos[0]=b.len-n:l.tooltipPos[1]=n}},processData:function(a){var d=this.options,h=this.yData,g=d.data,e=h.length,
k=d.threshold||0,b,r,q,c,m;for(m=r=b=q=c=0;m<e;m++){var n=h[m];var l=g&&g[m]?g[m]:{};"sum"===n||l.isSum?h[m]=w(r):"intermediateSum"===n||l.isIntermediateSum?(h[m]=w(b),b=0):(r+=n,b+=n);q=Math.min(r,q);c=Math.max(r,c)}t.prototype.processData.call(this,a);d.stacking||(this.dataMin=q+k,this.dataMax=c)},toYData:function(a){return a.isSum?"sum":a.isIntermediateSum?"intermediateSum":a.y},updateParallelArrays:function(a,d){t.prototype.updateParallelArrays.call(this,a,d);if("sum"===this.yData[0]||"intermediateSum"===
this.yData[0])this.yData[0]=null},pointAttribs:function(a,d){var b=this.options.upColor;b&&!a.options.color&&(a.color=0<a.y?b:null);a=A.column.prototype.pointAttribs.call(this,a,d);delete a.dashstyle;return a},getGraphPath:function(){return["M",0,0]},getCrispPath:function(){var a=this.data,d=this.yAxis,b=a.length,g=Math.round(this.graph.strokeWidth())%2/2,e=Math.round(this.borderWidth)%2/2,k=this.xAxis.reversed,c=this.yAxis.reversed,C=this.options.stacking,q=[],m;for(m=1;m<b;m++){var n=a[m].shapeArgs;
var l=a[m-1];var f=a[m-1].shapeArgs;var u=d.waterfallStacks[this.stackKey];var t=0<l.y?-f.height:0;if(u){u=u[m-1];C?(u=u.connectorThreshold,t=Math.round(d.translate(u,0,1,0,1)+(c?t:0))-g):t=f.y+l.minPointLengthOffset+e-g;var v=["M",f.x+(k?0:f.width),t,"L",n.x+(k?n.width:0),t]}if(!C&&v&&0>l.y&&!c||0<l.y&&c)v[2]+=f.height,v[5]+=f.height;q=q.concat(v)}return q},drawGraph:function(){t.prototype.drawGraph.call(this);this.graph.attr({d:this.getCrispPath()})},setStackedPoints:function(){function a(e,a,k,
g){if(z)for(k;k<z;k++)w.stackState[k]+=g;else w.stackState[0]=e,z=w.stackState.length;w.stackState.push(w.stackState[z-1]+a)}var d=this.options,b=this.yAxis.waterfallStacks,g=d.threshold,e=g||0,k=e,c=this.stackKey,C=this.xData,q=C.length,m,n,l;this.yAxis.usePercentage=!1;var f=n=l=e;if(this.visible||!this.chart.options.chart.ignoreHiddenSeries){var u=b.changed;(m=b.alreadyChanged)&&0>m.indexOf(c)&&(u=!0);b[c]||(b[c]={});m=b[c];for(var t=0;t<q;t++){var v=C[t];if(!m[v]||u)m[v]={negTotal:0,posTotal:0,
stackTotal:0,threshold:0,stateIndex:0,stackState:[],label:u&&m[v]?m[v].label:void 0};var w=m[v];var x=this.yData[t];0<=x?w.posTotal+=x:w.negTotal+=x;var y=d.data[t];v=w.absolutePos=w.posTotal;var A=w.absoluteNeg=w.negTotal;w.stackTotal=v+A;var z=w.stackState.length;y&&y.isIntermediateSum?(a(l,n,0,l),l=n,n=g,e^=k,k^=e,e^=k):y&&y.isSum?(a(g,f,z),e=g):(a(e,x,0,f),y&&(f+=x,n+=x));w.stateIndex++;w.threshold=e;e+=w.stackTotal}b.changed=!1;b.alreadyChanged||(b.alreadyChanged=[]);b.alreadyChanged.push(c)}},
getExtremes:function(){var a=this.options.stacking;if(a){var d=this.yAxis;d=d.waterfallStacks;var b=this.stackedYNeg=[];var g=this.stackedYPos=[];"overlap"===a?y(d[this.stackKey],function(e){b.push(f(e.stackState));g.push(u(e.stackState))}):y(d[this.stackKey],function(e){b.push(e.negTotal+e.threshold);g.push(e.posTotal+e.threshold)});this.dataMin=f(b);this.dataMax=u(g)}}},{getClassName:function(){var d=a.prototype.getClassName.call(this);this.isSum?d+=" highcharts-sum":this.isIntermediateSum&&(d+=
" highcharts-intermediate-sum");return d},isValid:function(){return z(this.y)||this.isSum||this.isIntermediateSum}});""});E(f,"parts-more/PolygonSeries.js",[f["parts/Globals.js"],f["mixins/legend-symbol.js"],f["parts/Utilities.js"]],function(l,a,c){c=c.seriesType;var b=l.Series,f=l.seriesTypes;c("polygon","scatter",{marker:{enabled:!1,states:{hover:{enabled:!1}}},stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:""},trackByArea:!0},{type:"polygon",getGraphPath:function(){for(var a=b.prototype.getGraphPath.call(this),
c=a.length+1;c--;)(c===a.length||"M"===a[c])&&0<c&&a.splice(c,0,"z");return this.areaPath=a},drawGraph:function(){this.options.fillColor=this.color;f.area.prototype.drawGraph.call(this)},drawLegendSymbol:a.drawRectangle,drawTracker:b.prototype.drawTracker,setStackedPoints:l.noop});""});E(f,"parts-more/BubbleLegend.js",[f["parts/Globals.js"],f["parts/Color.js"],f["parts/Legend.js"],f["parts/Utilities.js"]],function(l,a,c,b){"";var f=a.parse;a=b.addEvent;var v=b.arrayMax,w=b.arrayMin,z=b.isNumber,y=
b.merge,d=b.objectEach,m=b.pick,n=b.stableSort,t=b.wrap,x=l.Series,A=l.Chart,r=l.noop,p=l.setOptions;p({legend:{bubbleLegend:{borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:10,color:void 0},x:0,y:0},maxSize:60,minSize:10,legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},
sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0}}});p=function(){function a(a,e){this.options=this.symbols=this.visible=this.ranges=this.movementX=this.maxLabel=this.legendSymbol=this.legendItemWidth=this.legendItemHeight=this.legendItem=this.legendGroup=this.legend=this.fontMetrics=this.chart=void 0;this.setState=r;this.init(a,e)}a.prototype.init=function(a,e){this.options=a;this.visible=!0;this.chart=e.chart;this.legend=e};a.prototype.addToLegend=function(a){a.splice(this.options.legendIndex,
0,this)};a.prototype.drawLegendSymbol=function(a){var e=this.chart,k=this.options,d=m(a.options.itemDistance,20),b=k.ranges;var g=k.connectorDistance;this.fontMetrics=e.renderer.fontMetrics(k.labels.style.fontSize.toString()+"px");b&&b.length&&z(b[0].value)?(n(b,function(e,a){return a.value-e.value}),this.ranges=b,this.setOptions(),this.render(),e=this.getMaxLabelSize(),b=this.ranges[0].radius,a=2*b,g=g-b+e.width,g=0<g?g:0,this.maxLabel=e,this.movementX="left"===k.labels.align?g:0,this.legendItemWidth=
a+g+d,this.legendItemHeight=a+this.fontMetrics.h/2):a.options.bubbleLegend.autoRanges=!0};a.prototype.setOptions=function(){var a=this.ranges,e=this.options,k=this.chart.series[e.seriesIndex],d=this.legend.baseline,b={"z-index":e.zIndex,"stroke-width":e.borderWidth},h={"z-index":e.zIndex,"stroke-width":e.connectorWidth},c=this.getLabelStyles(),p=k.options.marker.fillOpacity,r=this.chart.styledMode;a.forEach(function(g,q){r||(b.stroke=m(g.borderColor,e.borderColor,k.color),b.fill=m(g.color,e.color,
1!==p?f(k.color).setOpacity(p).get("rgba"):k.color),h.stroke=m(g.connectorColor,e.connectorColor,k.color));a[q].radius=this.getRangeRadius(g.value);a[q]=y(a[q],{center:a[0].radius-a[q].radius+d});r||y(!0,a[q],{bubbleStyle:y(!1,b),connectorStyle:y(!1,h),labelStyle:c})},this)};a.prototype.getLabelStyles=function(){var a=this.options,e={},k="left"===a.labels.align,b=this.legend.options.rtl;d(a.labels.style,function(a,k){"color"!==k&&"fontSize"!==k&&"z-index"!==k&&(e[k]=a)});return y(!1,e,{"font-size":a.labels.style.fontSize,
fill:m(a.labels.style.color,"#000000"),"z-index":a.zIndex,align:b||k?"right":"left"})};a.prototype.getRangeRadius=function(a){var e=this.options;return this.chart.series[this.options.seriesIndex].getRadius.call(this,e.ranges[e.ranges.length-1].value,e.ranges[0].value,e.minSize,e.maxSize,a)};a.prototype.render=function(){var a=this.chart.renderer,e=this.options.zThreshold;this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]});this.legendSymbol=a.g("bubble-legend");this.legendItem=a.g("bubble-legend-item");
this.legendSymbol.translateX=0;this.legendSymbol.translateY=0;this.ranges.forEach(function(a){a.value>=e&&this.renderRange(a)},this);this.legendSymbol.add(this.legendItem);this.legendItem.add(this.legendGroup);this.hideOverlappingLabels()};a.prototype.renderRange=function(a){var e=this.options,k=e.labels,b=this.chart.renderer,d=this.symbols,g=d.labels,h=a.center,c=Math.abs(a.radius),p=e.connectorDistance,r=k.align,m=k.style.fontSize;p=this.legend.options.rtl||"left"===r?-p:p;k=e.connectorWidth;var n=
this.ranges[0].radius,l=h-c-e.borderWidth/2+k/2;m=m/2-(this.fontMetrics.h-m)/2;var f=b.styledMode;"center"===r&&(p=0,e.connectorDistance=0,a.labelStyle.align="center");r=l+e.labels.y;var u=n+p+e.labels.x;d.bubbleItems.push(b.circle(n,h+((l%1?1:.5)-(k%2?0:.5)),c).attr(f?{}:a.bubbleStyle).addClass((f?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-symbol "+(e.className||"")).add(this.legendSymbol));d.connectors.push(b.path(b.crispLine(["M",n,l,"L",n+p,l],e.connectorWidth)).attr(f?
{}:a.connectorStyle).addClass((f?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(e.connectorClassName||"")).add(this.legendSymbol));a=b.text(this.formatLabel(a),u,r+m).attr(f?{}:a.labelStyle).addClass("highcharts-bubble-legend-labels "+(e.labels.className||"")).add(this.legendSymbol);g.push(a);a.placed=!0;a.alignAttr={x:u,y:r+m}};a.prototype.getMaxLabelSize=function(){var a,e;this.symbols.labels.forEach(function(k){e=k.getBBox(!0);a=a?e.width>a.width?e:
a:e});return a||{}};a.prototype.formatLabel=function(a){var e=this.options,k=e.labels.formatter;e=e.labels.format;var d=this.chart.numberFormatter;return e?b.format(e,a):k?k.call(a):d(a.value,1)};a.prototype.hideOverlappingLabels=function(){var a=this.chart,e=this.symbols;!this.options.labels.allowOverlap&&e&&(a.hideOverlappingLabels(e.labels),e.labels.forEach(function(a,b){a.newOpacity?a.newOpacity!==a.oldOpacity&&e.connectors[b].show():e.connectors[b].hide()}))};a.prototype.getRanges=function(){var a=
this.legend.bubbleLegend,e=a.options.ranges,k,b=Number.MAX_VALUE,d=-Number.MAX_VALUE;a.chart.series.forEach(function(e){e.isBubble&&!e.ignoreSeries&&(k=e.zData.filter(z),k.length&&(b=m(e.options.zMin,Math.min(b,Math.max(w(k),!1===e.options.displayNegative?e.options.zThreshold:-Number.MAX_VALUE))),d=m(e.options.zMax,Math.max(d,v(k)))))});var h=b===d?[{value:d}]:[{value:b},{value:(b+d)/2},{value:d,autoRanges:!0}];e.length&&e[0].radius&&h.reverse();h.forEach(function(a,b){e&&e[b]&&(h[b]=y(!1,e[b],a))});
return h};a.prototype.predictBubbleSizes=function(){var a=this.chart,e=this.fontMetrics,b=a.legend.options,d="horizontal"===b.layout,h=d?a.legend.lastLineHeight:0,q=a.plotSizeX,c=a.plotSizeY,p=a.series[this.options.seriesIndex];a=Math.ceil(p.minPxSize);var r=Math.ceil(p.maxPxSize);p=p.options.maxSize;var m=Math.min(c,q);if(b.floating||!/%$/.test(p))e=r;else if(p=parseFloat(p),e=(m+h-e.h/2)*p/100/(p/100+1),d&&c-e>=q||!d&&q-e>=c)e=r;return[a,Math.ceil(e)]};a.prototype.updateRanges=function(a,e){var b=
this.legend.options.bubbleLegend;b.minSize=a;b.maxSize=e;b.ranges=this.getRanges()};a.prototype.correctSizes=function(){var a=this.legend,e=this.chart.series[this.options.seriesIndex];1<Math.abs(Math.ceil(e.maxPxSize)-this.options.maxSize)&&(this.updateRanges(this.options.minSize,e.maxPxSize),a.render())};return a}();a(c,"afterGetAllItems",function(a){var b=this.bubbleLegend,e=this.options,d=e.bubbleLegend,h=this.chart.getVisibleBubbleSeriesIndex();b&&b.ranges&&b.ranges.length&&(d.ranges.length&&
(d.autoRanges=!!d.ranges[0].autoRanges),this.destroyItem(b));0<=h&&e.enabled&&d.enabled&&(d.seriesIndex=h,this.bubbleLegend=new l.BubbleLegend(d,this),this.bubbleLegend.addToLegend(a.allItems))});A.prototype.getVisibleBubbleSeriesIndex=function(){for(var a=this.series,b=0;b<a.length;){if(a[b]&&a[b].isBubble&&a[b].visible&&a[b].zData.length)return b;b++}return-1};c.prototype.getLinesHeights=function(){var a=this.allItems,b=[],e=a.length,d,c=0;for(d=0;d<e;d++)if(a[d].legendItemHeight&&(a[d].itemHeight=
a[d].legendItemHeight),a[d]===a[e-1]||a[d+1]&&a[d]._legendItemPos[1]!==a[d+1]._legendItemPos[1]){b.push({height:0});var p=b[b.length-1];for(c;c<=d;c++)a[c].itemHeight>p.height&&(p.height=a[c].itemHeight);p.step=d}return b};c.prototype.retranslateItems=function(a){var b,e,d,h=this.options.rtl,c=0;this.allItems.forEach(function(k,g){b=k.legendGroup.translateX;e=k._legendItemPos[1];if((d=k.movementX)||h&&k.ranges)d=h?b-k.options.maxSize/2:b+d,k.legendGroup.attr({translateX:d});g>a[c].step&&c++;k.legendGroup.attr({translateY:Math.round(e+
a[c].height/2)});k._legendItemPos[1]=e+a[c].height/2})};a(x,"legendItemClick",function(){var a=this.chart,b=this.visible,e=this.chart.legend;e&&e.bubbleLegend&&(this.visible=!b,this.ignoreSeries=b,a=0<=a.getVisibleBubbleSeriesIndex(),e.bubbleLegend.visible!==a&&(e.update({bubbleLegend:{enabled:a}}),e.bubbleLegend.visible=a),this.visible=b)});t(A.prototype,"drawChartBox",function(a,b,e){var k=this.legend,h=0<=this.getVisibleBubbleSeriesIndex();if(k&&k.options.enabled&&k.bubbleLegend&&k.options.bubbleLegend.autoRanges&&
h){var g=k.bubbleLegend.options;h=k.bubbleLegend.predictBubbleSizes();k.bubbleLegend.updateRanges(h[0],h[1]);g.placed||(k.group.placed=!1,k.allItems.forEach(function(e){e.legendGroup.translateY=null}));k.render();this.getMargins();this.axes.forEach(function(e){e.visible&&e.render();g.placed||(e.setScale(),e.updateNames(),d(e.ticks,function(e){e.isNew=!0;e.isNewLabel=!0}))});g.placed=!0;this.getMargins();a.call(this,b,e);k.bubbleLegend.correctSizes();k.retranslateItems(k.getLinesHeights())}else a.call(this,
b,e),k&&k.options.enabled&&k.bubbleLegend&&(k.render(),k.retranslateItems(k.getLinesHeights()))});l.BubbleLegend=p;return l.BubbleLegend});E(f,"parts-more/BubbleSeries.js",[f["parts/Globals.js"],f["parts/Color.js"],f["parts/Point.js"],f["parts/Utilities.js"]],function(l,a,c,b){var f=a.parse,v=b.arrayMax,w=b.arrayMin,z=b.clamp,y=b.extend,d=b.isNumber,m=b.pick,n=b.pInt;a=b.seriesType;b=l.Axis;var t=l.noop,x=l.Series,A=l.seriesTypes;a("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=x.prototype.pointAttribs.call(this,a,b);1!==d&&(a.fill=f(a.fill).setOpacity(d).get("rgba"));return a},getRadii:function(a,b,d){var g=this.zData,e=this.yData,k=d.minPxSize,h=d.maxPxSize,c=[];var q=0;for(d=g.length;q<d;q++){var p=g[q];c.push(this.getRadius(a,b,k,h,p,e[q]))}this.radii=c},getRadius:function(a,b,h,g,e,k){var c=this.options,p="width"!==c.sizeBy,q=c.zThreshold,r=b-a,m=.5;if(null===k||null===e)return null;if(d(e)){c.sizeByAbsoluteValue&&
(e=Math.abs(e-q),r=Math.max(b-q,Math.abs(a-q)),a=0);if(e<a)return h/2-1;0<r&&(m=(e-a)/r)}p&&0<=m&&(m=Math.sqrt(m));return Math.ceil(h+m*(g-h))/2},animate:function(a){!a&&this.points.length<this.options.animationLimit&&this.points.forEach(function(a){var b=a.graphic;if(b&&b.width){var d={x:b.x,y:b.y,width:b.width,height:b.height};b.attr({x:a.plotX,y:a.plotY,width:1,height:1});b.animate(d,this.options.animation)}},this)},hasData:function(){return!!this.processedXData.length},translate:function(){var a,
b=this.data,c=this.radii;A.scatter.prototype.translate.call(this);for(a=b.length;a--;){var g=b[a];var e=c?c[a]:0;d(e)&&e>=this.minPxSize/2?(g.marker=y(g.marker,{radius:e,width:2*e,height:2*e}),g.dlBox={x:g.plotX-e,y:g.plotY-e,width:2*e,height:2*e}):g.shapeArgs=g.plotY=g.dlBox=void 0}},alignDataLabel:A.column.prototype.alignDataLabel,buildKDTree:t,applyZones:t},{haloPath:function(a){return c.prototype.haloPath.call(this,0===a?0:(this.marker?this.marker.radius||0:0)+a)},ttBelow:!1});b.prototype.beforePadding=
function(){var a=this,b=this.len,c=this.chart,g=0,e=b,k=this.isXAxis,l=k?"xData":"yData",f=this.min,q={},u=Math.min(c.plotWidth,c.plotHeight),t=Number.MAX_VALUE,x=-Number.MAX_VALUE,y=this.max-f,A=b/y,H=[];this.series.forEach(function(e){var b=e.options;!e.bubblePadding||!e.visible&&c.options.chart.ignoreHiddenSeries||(a.allowZoomOutside=!0,H.push(e),k&&(["minSize","maxSize"].forEach(function(e){var a=b[e],d=/%$/.test(a);a=n(a);q[e]=d?u*a/100:a}),e.minPxSize=q.minSize,e.maxPxSize=Math.max(q.maxSize,
q.minSize),e=e.zData.filter(d),e.length&&(t=m(b.zMin,z(w(e),!1===b.displayNegative?b.zThreshold:-Number.MAX_VALUE,t)),x=m(b.zMax,Math.max(x,v(e))))))});H.forEach(function(b){var c=b[l],h=c.length;k&&b.getRadii(t,x,b);if(0<y)for(;h--;)if(d(c[h])&&a.dataMin<=c[h]&&c[h]<=a.max){var q=b.radii?b.radii[h]:0;g=Math.min((c[h]-f)*A-q,g);e=Math.max((c[h]-f)*A+q,e)}});H.length&&0<y&&!this.isLog&&(e-=b,A*=(b+Math.max(0,g)-Math.min(e,b))/b,[["min","userMin",g],["max","userMax",e]].forEach(function(e){"undefined"===
typeof m(a.options[e[0]],a[e[1]])&&(a[e[0]]+=e[2]/A)}))};""});E(f,"modules/networkgraph/integrations.js",[f["parts/Globals.js"]],function(l){l.networkgraphIntegrations={verlet:{attractiveForceFunction:function(a,c){return(c-a)/a},repulsiveForceFunction:function(a,c){return(c-a)/a*(c>a?1:0)},barycenter:function(){var a=this.options.gravitationalConstant,c=this.barycenter.xFactor,b=this.barycenter.yFactor;c=(c-(this.box.left+this.box.width)/2)*a;b=(b-(this.box.top+this.box.height)/2)*a;this.nodes.forEach(function(a){a.fixedPosition||
(a.plotX-=c/a.mass/a.degree,a.plotY-=b/a.mass/a.degree)})},repulsive:function(a,c,b){c=c*this.diffTemperature/a.mass/a.degree;a.fixedPosition||(a.plotX+=b.x*c,a.plotY+=b.y*c)},attractive:function(a,c,b){var l=a.getMass(),f=-b.x*c*this.diffTemperature;c=-b.y*c*this.diffTemperature;a.fromNode.fixedPosition||(a.fromNode.plotX-=f*l.fromNode/a.fromNode.degree,a.fromNode.plotY-=c*l.fromNode/a.fromNode.degree);a.toNode.fixedPosition||(a.toNode.plotX+=f*l.toNode/a.toNode.degree,a.toNode.plotY+=c*l.toNode/
a.toNode.degree)},integrate:function(a,c){var b=-a.options.friction,l=a.options.maxSpeed,f=(c.plotX+c.dispX-c.prevX)*b;b*=c.plotY+c.dispY-c.prevY;var w=Math.abs,z=w(f)/(f||1);w=w(b)/(b||1);f=z*Math.min(l,Math.abs(f));b=w*Math.min(l,Math.abs(b));c.prevX=c.plotX+c.dispX;c.prevY=c.plotY+c.dispY;c.plotX+=f;c.plotY+=b;c.temperature=a.vectorLength({x:f,y:b})},getK:function(a){return Math.pow(a.box.width*a.box.height/a.nodes.length,.5)}},euler:{attractiveForceFunction:function(a,c){return a*a/c},repulsiveForceFunction:function(a,
c){return c*c/a},barycenter:function(){var a=this.options.gravitationalConstant,c=this.barycenter.xFactor,b=this.barycenter.yFactor;this.nodes.forEach(function(f){if(!f.fixedPosition){var l=f.getDegree();l*=1+l/2;f.dispX+=(c-f.plotX)*a*l/f.degree;f.dispY+=(b-f.plotY)*a*l/f.degree}})},repulsive:function(a,c,b,f){a.dispX+=b.x/f*c/a.degree;a.dispY+=b.y/f*c/a.degree},attractive:function(a,c,b,f){var l=a.getMass(),u=b.x/f*c;c*=b.y/f;a.fromNode.fixedPosition||(a.fromNode.dispX-=u*l.fromNode/a.fromNode.degree,
a.fromNode.dispY-=c*l.fromNode/a.fromNode.degree);a.toNode.fixedPosition||(a.toNode.dispX+=u*l.toNode/a.toNode.degree,a.toNode.dispY+=c*l.toNode/a.toNode.degree)},integrate:function(a,c){c.dispX+=c.dispX*a.options.friction;c.dispY+=c.dispY*a.options.friction;var b=c.temperature=a.vectorLength({x:c.dispX,y:c.dispY});0!==b&&(c.plotX+=c.dispX/b*Math.min(Math.abs(c.dispX),a.temperature),c.plotY+=c.dispY/b*Math.min(Math.abs(c.dispY),a.temperature))},getK:function(a){return Math.pow(a.box.width*a.box.height/
a.nodes.length,.3)}}}});E(f,"modules/networkgraph/QuadTree.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(f,a){a=a.extend;var c=f.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(c.prototype,{insert:function(a,f){this.isInternal?this.nodes[this.getBoxPosition(a)].insert(a,f-1):(this.isEmpty=!1,this.body?f?(this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,
f-1),this.body=!0),this.nodes[this.getBoxPosition(a)].insert(a,f-1)):(f=new c({top:a.plotX,left:a.plotY,width:.1,height:.1}),f.body=a,f.isInternal=!1,this.nodes.push(f)):(this.isInternal=!1,this.body=a))},updateMassAndCenter:function(){var a=0,c=0,f=0;this.isInternal?(this.nodes.forEach(function(b){b.isEmpty||(a+=b.mass,c+=b.plotX*b.mass,f+=b.plotY*b.mass)}),c/=a,f/=a):this.body&&(a=this.body.mass,c=this.body.plotX,f=this.body.plotY);this.mass=a;this.plotX=c;this.plotY=f},divideBox:function(){var a=
this.box.width/2,f=this.box.height/2;this.nodes[0]=new c({left:this.box.left,top:this.box.top,width:a,height:f});this.nodes[1]=new c({left:this.box.left+a,top:this.box.top,width:a,height:f});this.nodes[2]=new c({left:this.box.left+a,top:this.box.top+f,width:a,height:f});this.nodes[3]=new c({left:this.box.left,top:this.box.top+f,width:a,height:f})},getBoxPosition:function(a){var b=a.plotY<this.box.top+this.box.height/2;return a.plotX<this.box.left+this.box.width/2?b?0:3:b?1:2}});f=f.QuadTree=function(a,
f,l,w){this.box={left:a,top:f,width:l,height:w};this.maxDepth=25;this.root=new c(this.box,"0");this.root.isInternal=!0;this.root.isRoot=!0;this.root.divideBox()};a(f.prototype,{insertNodes:function(a){a.forEach(function(a){this.root.insert(a,this.maxDepth)},this)},visitNodeRecursive:function(a,c,f){var b;a||(a=this.root);a===this.root&&c&&(b=c(a));!1!==b&&(a.nodes.forEach(function(a){if(a.isInternal){c&&(b=c(a));if(!1===b)return;this.visitNodeRecursive(a,c,f)}else a.body&&c&&c(a.body);f&&f(a)},this),
a===this.root&&f&&f(a))},calculateMassAndCenter:function(){this.visitNodeRecursive(null,null,function(a){a.updateMassAndCenter()})}})});E(f,"modules/networkgraph/layouts.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(f,a){var c=a.addEvent,b=a.clamp,l=a.defined,v=a.extend,w=a.isFunction,z=a.pick,y=a.setAnimation;a=f.Chart;f.layouts={"reingold-fruchterman":function(){}};v(f.layouts["reingold-fruchterman"].prototype,{init:function(a){this.options=a;this.nodes=[];this.links=[];this.series=
[];this.box={x:0,y:0,width:0,height:0};this.setInitialRendering(!0);this.integration=f.networkgraphIntegrations[a.integration];this.attractiveForce=z(a.attractiveForce,this.integration.attractiveForceFunction);this.repulsiveForce=z(a.repulsiveForce,this.integration.repulsiveForceFunction);this.approximation=a.approximation},start:function(){var a=this.series,b=this.options;this.currentStep=0;this.forces=a[0]&&a[0].forces||[];this.initialRendering&&(this.initPositions(),a.forEach(function(a){a.render()}));
this.setK();this.resetSimulation(b);b.enableSimulation&&this.step()},step:function(){var a=this,b=this.series,c=this.options;a.currentStep++;"barnes-hut"===a.approximation&&(a.createQuadTree(),a.quadTree.calculateMassAndCenter());a.forces.forEach(function(b){a[b+"Forces"](a.temperature)});a.applyLimits(a.temperature);a.temperature=a.coolDown(a.startTemperature,a.diffTemperature,a.currentStep);a.prevSystemTemperature=a.systemTemperature;a.systemTemperature=a.getSystemTemperature();c.enableSimulation&&
(b.forEach(function(a){a.chart&&a.render()}),a.maxIterations--&&isFinite(a.temperature)&&!a.isStable()?(a.simulation&&f.win.cancelAnimationFrame(a.simulation),a.simulation=f.win.requestAnimationFrame(function(){a.step()})):a.simulation=!1)},stop:function(){this.simulation&&f.win.cancelAnimationFrame(this.simulation)},setArea:function(a,b,c,f){this.box={left:a,top:b,width:c,height:f}},setK:function(){this.k=this.options.linkLength||this.integration.getK(this)},addElementsToCollection:function(a,b){a.forEach(function(a){-1===
b.indexOf(a)&&b.push(a)})},removeElementFromCollection:function(a,b){a=b.indexOf(a);-1!==a&&b.splice(a,1)},clear:function(){this.nodes.length=0;this.links.length=0;this.series.length=0;this.resetSimulation()},resetSimulation:function(){this.forcedStop=!1;this.systemTemperature=0;this.setMaxIterations();this.setTemperature();this.setDiffTemperature()},setMaxIterations:function(a){this.maxIterations=z(a,this.options.maxIterations)},setTemperature:function(){this.temperature=this.startTemperature=Math.sqrt(this.nodes.length)},
setDiffTemperature:function(){this.diffTemperature=this.startTemperature/(this.options.maxIterations+1)},setInitialRendering:function(a){this.initialRendering=a},createQuadTree:function(){this.quadTree=new f.QuadTree(this.box.left,this.box.top,this.box.width,this.box.height);this.quadTree.insertNodes(this.nodes)},initPositions:function(){var a=this.options.initialPositions;w(a)?(a.call(this),this.nodes.forEach(function(a){l(a.prevX)||(a.prevX=a.plotX);l(a.prevY)||(a.prevY=a.plotY);a.dispX=0;a.dispY=
0})):"circle"===a?this.setCircularPositions():this.setRandomPositions()},setCircularPositions:function(){function a(b){b.linksFrom.forEach(function(b){r[b.toNode.id]||(r[b.toNode.id]=!0,u.push(b.toNode),a(b.toNode))})}var b=this.box,c=this.nodes,f=2*Math.PI/(c.length+1),l=c.filter(function(a){return 0===a.linksTo.length}),u=[],r={},p=this.options.initialPositionRadius;l.forEach(function(b){u.push(b);a(b)});u.length?c.forEach(function(a){-1===u.indexOf(a)&&u.push(a)}):u=c;u.forEach(function(a,d){a.plotX=
a.prevX=z(a.plotX,b.width/2+p*Math.cos(d*f));a.plotY=a.prevY=z(a.plotY,b.height/2+p*Math.sin(d*f));a.dispX=0;a.dispY=0})},setRandomPositions:function(){function a(a){a=a*a/Math.PI;return a-=Math.floor(a)}var b=this.box,c=this.nodes,f=c.length+1;c.forEach(function(d,c){d.plotX=d.prevX=z(d.plotX,b.width*a(c));d.plotY=d.prevY=z(d.plotY,b.height*a(f+c));d.dispX=0;d.dispY=0})},force:function(a){this.integration[a].apply(this,Array.prototype.slice.call(arguments,1))},barycenterForces:function(){this.getBarycenter();
this.force("barycenter")},getBarycenter:function(){var a=0,b=0,c=0;this.nodes.forEach(function(d){b+=d.plotX*d.mass;c+=d.plotY*d.mass;a+=d.mass});return this.barycenter={x:b,y:c,xFactor:b/a,yFactor:c/a}},barnesHutApproximation:function(a,b){var d=this.getDistXY(a,b),c=this.vectorLength(d);if(a!==b&&0!==c)if(b.isInternal)if(b.boxSize/c<this.options.theta&&0!==c){var f=this.repulsiveForce(c,this.k);this.force("repulsive",a,f*b.mass,d,c);var l=!1}else l=!0;else f=this.repulsiveForce(c,this.k),this.force("repulsive",
a,f*b.mass,d,c);return l},repulsiveForces:function(){var a=this;"barnes-hut"===a.approximation?a.nodes.forEach(function(b){a.quadTree.visitNodeRecursive(null,function(d){return a.barnesHutApproximation(b,d)})}):a.nodes.forEach(function(b){a.nodes.forEach(function(d){if(b!==d&&!b.fixedPosition){var c=a.getDistXY(b,d);var f=a.vectorLength(c);if(0!==f){var l=a.repulsiveForce(f,a.k);a.force("repulsive",b,l*d.mass,c,f)}}})})},attractiveForces:function(){var a=this,b,c,f;a.links.forEach(function(d){d.fromNode&&
d.toNode&&(b=a.getDistXY(d.fromNode,d.toNode),c=a.vectorLength(b),0!==c&&(f=a.attractiveForce(c,a.k),a.force("attractive",d,f,b,c)))})},applyLimits:function(){var a=this;a.nodes.forEach(function(b){b.fixedPosition||(a.integration.integrate(a,b),a.applyLimitBox(b,a.box),b.dispX=0,b.dispY=0)})},applyLimitBox:function(a,c){var d=a.radius;a.plotX=b(a.plotX,c.left+d,c.width-d);a.plotY=b(a.plotY,c.top+d,c.height-d)},coolDown:function(a,b,c){return a-b*c},isStable:function(){return.00001>Math.abs(this.systemTemperature-
this.prevSystemTemperature)||0>=this.temperature},getSystemTemperature:function(){return this.nodes.reduce(function(a,b){return a+b.temperature},0)},vectorLength:function(a){return Math.sqrt(a.x*a.x+a.y*a.y)},getDistR:function(a,b){a=this.getDistXY(a,b);return this.vectorLength(a)},getDistXY:function(a,b){var c=a.plotX-b.plotX;a=a.plotY-b.plotY;return{x:c,y:a,absX:Math.abs(c),absY:Math.abs(a)}}});c(a,"predraw",function(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(function(a){a.stop()})});
c(a,"render",function(){function a(a){a.maxIterations--&&isFinite(a.temperature)&&!a.isStable()&&!a.options.enableSimulation&&(a.beforeStep&&a.beforeStep(),a.step(),c=!1,b=!0)}var b=!1;if(this.graphLayoutsLookup){y(!1,this);for(this.graphLayoutsLookup.forEach(function(a){a.start()});!c;){var c=!0;this.graphLayoutsLookup.forEach(a)}b&&this.series.forEach(function(a){a&&a.layout&&a.render()})}})});E(f,"modules/networkgraph/draggable-nodes.js",[f["parts/Globals.js"],f["parts/Utilities.js"]],function(f,
a){var c=a.addEvent;a=f.Chart;f.dragNodesMixin={onMouseDown:function(a,c){c=this.chart.pointer.normalize(c);a.fixedPosition={chartX:c.chartX,chartY:c.chartY,plotX:a.plotX,plotY:a.plotY};a.inDragMode=!0},onMouseMove:function(a,c){if(a.fixedPosition&&a.inDragMode){var b=this.chart,f=b.pointer.normalize(c);c=a.fixedPosition.chartX-f.chartX;f=a.fixedPosition.chartY-f.chartY;if(5<Math.abs(c)||5<Math.abs(f))c=a.fixedPosition.plotX-c,f=a.fixedPosition.plotY-f,b.isInsidePlot(c,f)&&(a.plotX=c,a.plotY=f,a.hasDragged=
!0,this.redrawHalo(a),this.layout.simulation?this.layout.resetSimulation():(this.layout.setInitialRendering(!1),this.layout.enableSimulation?this.layout.start():this.layout.setMaxIterations(1),this.chart.redraw(),this.layout.setInitialRendering(!0)))}},onMouseUp:function(a,c){a.fixedPosition&&a.hasDragged&&(this.layout.enableSimulation?this.layout.start():this.chart.redraw(),a.inDragMode=a.hasDragged=!1,this.options.fixedDraggable||delete a.fixedPosition)},redrawHalo:function(a){a&&this.halo&&this.halo.attr({d:a.haloPath(this.options.states.hover.halo.size)})}};
c(a,"load",function(){var a=this,f,l,w;a.container&&(f=c(a.container,"mousedown",function(b){var f=a.hoverPoint;f&&f.series&&f.series.hasDraggableNodes&&f.series.options.draggable&&(f.series.onMouseDown(f,b),l=c(a.container,"mousemove",function(a){return f&&f.series&&f.series.onMouseMove(f,a)}),w=c(a.container.ownerDocument,"mouseup",function(a){l();w();return f&&f.series&&f.series.onMouseUp(f,a)}))}));c(a,"destroy",function(){f()})})});E(f,"parts-more/PackedBubbleSeries.js",[f["parts/Globals.js"],
f["parts/Color.js"],f["parts/Point.js"],f["parts/Utilities.js"]],function(f,a,c,b){var l=a.parse,v=b.addEvent,w=b.clamp,z=b.defined,y=b.extend;a=b.extendClass;var d=b.fireEvent,m=b.isArray,n=b.isNumber,t=b.merge,x=b.pick;b=b.seriesType;var A=f.Series,r=f.Chart,p=f.layouts["reingold-fruchterman"],h=f.seriesTypes.bubble.prototype.pointClass,g=f.dragNodesMixin;f.networkgraphIntegrations.packedbubble={repulsiveForceFunction:function(a,b,c,d){return Math.min(a,(c.marker.radius+d.marker.radius)/2)},barycenter:function(){var a=
this,b=a.options.gravitationalConstant,c=a.box,d=a.nodes,f,g;d.forEach(function(e){a.options.splitSeries&&!e.isParentNode?(f=e.series.parentNode.plotX,g=e.series.parentNode.plotY):(f=c.width/2,g=c.height/2);e.fixedPosition||(e.plotX-=(e.plotX-f)*b/(e.mass*Math.sqrt(d.length)),e.plotY-=(e.plotY-g)*b/(e.mass*Math.sqrt(d.length)))})},repulsive:function(a,b,c,d){var e=b*this.diffTemperature/a.mass/a.degree;b=c.x*e;c=c.y*e;a.fixedPosition||(a.plotX+=b,a.plotY+=c);d.fixedPosition||(d.plotX-=b,d.plotY-=
c)},integrate:f.networkgraphIntegrations.verlet.integrate,getK:f.noop};f.layouts.packedbubble=a(p,{beforeStep:function(){this.options.marker&&this.series.forEach(function(a){a&&a.calculateParentRadius()})},setCircularPositions:function(){var a=this,b=a.box,c=a.nodes,d=2*Math.PI/(c.length+1),f,g,h=a.options.initialPositionRadius;c.forEach(function(e,c){a.options.splitSeries&&!e.isParentNode?(f=e.series.parentNode.plotX,g=e.series.parentNode.plotY):(f=b.width/2,g=b.height/2);e.plotX=e.prevX=x(e.plotX,
f+h*Math.cos(e.index||c*d));e.plotY=e.prevY=x(e.plotY,g+h*Math.sin(e.index||c*d));e.dispX=0;e.dispY=0})},repulsiveForces:function(){var a=this,b,c,d,f=a.options.bubblePadding;a.nodes.forEach(function(e){e.degree=e.mass;e.neighbours=0;a.nodes.forEach(function(k){b=0;e===k||e.fixedPosition||!a.options.seriesInteraction&&e.series!==k.series||(d=a.getDistXY(e,k),c=a.vectorLength(d)-(e.marker.radius+k.marker.radius+f),0>c&&(e.degree+=.01,e.neighbours++,b=a.repulsiveForce(-c/Math.sqrt(e.neighbours),a.k,
e,k)),a.force("repulsive",e,b*k.mass,d,k,c))})})},applyLimitBox:function(a){if(this.options.splitSeries&&!a.isParentNode&&this.options.parentNodeLimit){var e=this.getDistXY(a,a.series.parentNode);var b=a.series.parentNodeRadius-a.marker.radius-this.vectorLength(e);0>b&&b>-2*a.marker.radius&&(a.plotX-=.01*e.x,a.plotY-=.01*e.y)}p.prototype.applyLimitBox.apply(this,arguments)},isStable:function(){return.00001>Math.abs(this.systemTemperature-this.prevSystemTemperature)||0>=this.temperature||0<this.systemTemperature&&
.02>this.systemTemperature/this.nodes.length&&this.enableSimulation}});b("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,requireSorting:!1,
directTouch:!0,axisTypes:[],noSharedTooltip:!0,searchPoint:f.noop,accumulateAllPoints:function(a){var e=a.chart,b=[],c,d;for(c=0;c<e.series.length;c++)if(a=e.series[c],a.visible||!e.options.chart.ignoreHiddenSeries)for(d=0;d<a.yData.length;d++)b.push([null,null,a.yData[d],a.index,d,{id:d,marker:{radius:0}}]);return b},init:function(){A.prototype.init.apply(this,arguments);v(this,"updatedData",function(){this.chart.series.forEach(function(a){a.type===this.type&&(a.isDirty=!0)},this)});return this},
render:function(){var a=[];A.prototype.render.apply(this,arguments);this.options.dataLabels.allowOverlap||(this.data.forEach(function(e){m(e.dataLabels)&&e.dataLabels.forEach(function(e){a.push(e)})}),this.options.useSimulation&&this.chart.hideOverlappingLabels(a))},setVisible:function(){var a=this;A.prototype.setVisible.apply(a,arguments);a.parentNodeLayout&&a.graph?a.visible?(a.graph.show(),a.parentNode.dataLabel&&a.parentNode.dataLabel.show()):(a.graph.hide(),a.parentNodeLayout.removeElementFromCollection(a.parentNode,
a.parentNodeLayout.nodes),a.parentNode.dataLabel&&a.parentNode.dataLabel.hide()):a.layout&&(a.visible?a.layout.addElementsToCollection(a.points,a.layout.nodes):a.points.forEach(function(e){a.layout.removeElementFromCollection(e,a.layout.nodes)}))},drawDataLabels:function(){var a=this.options.dataLabels.textPath,b=this.points;A.prototype.drawDataLabels.apply(this,arguments);this.parentNode&&(this.parentNode.formatPrefix="parentNode",this.points=[this.parentNode],this.options.dataLabels.textPath=this.options.dataLabels.parentNodeTextPath,
A.prototype.drawDataLabels.apply(this,arguments),this.points=b,this.options.dataLabels.textPath=a)},seriesBox:function(){var a=this.chart,b=Math.max,c=Math.min,d,f=[a.plotLeft,a.plotLeft+a.plotWidth,a.plotTop,a.plotTop+a.plotHeight];this.data.forEach(function(a){z(a.plotX)&&z(a.plotY)&&a.marker.radius&&(d=a.marker.radius,f[0]=c(f[0],a.plotX-d),f[1]=b(f[1],a.plotX+d),f[2]=c(f[2],a.plotY-d),f[3]=b(f[3],a.plotY+d))});return n(f.width/f.height)?f:null},calculateParentRadius:function(){var a=this.seriesBox();
this.parentNodeRadius=w(Math.sqrt(2*this.parentNodeMass/Math.PI)+20,20,a?Math.max(Math.sqrt(Math.pow(a.width,2)+Math.pow(a.height,2))/2+20,20):Math.sqrt(2*this.parentNodeMass/Math.PI)+20);this.parentNode&&(this.parentNode.marker.radius=this.parentNode.radius=this.parentNodeRadius)},drawGraph:function(){if(this.layout&&this.layout.options.splitSeries){var a=this.chart,b=this.layout.options.parentNodeOptions.marker;b={fill:b.fillColor||l(this.color).brighten(.4).get(),opacity:b.fillOpacity,stroke:b.lineColor||
this.color,"stroke-width":b.lineWidth};var c=this.visible?"inherit":"hidden";this.parentNodesGroup||(this.parentNodesGroup=this.plotGroup("parentNodesGroup","parentNode",c,.1,a.seriesGroup),this.group.attr({zIndex:2}));this.calculateParentRadius();c=t({x:this.parentNode.plotX-this.parentNodeRadius,y:this.parentNode.plotY-this.parentNodeRadius,width:2*this.parentNodeRadius,height:2*this.parentNodeRadius},b);this.parentNode.graphic||(this.graph=this.parentNode.graphic=a.renderer.symbol(b.symbol).add(this.parentNodesGroup));
this.parentNode.graphic.attr(c)}},createParentNodes:function(){var a=this,b=a.chart,c=a.parentNodeLayout,d,f=a.parentNode;a.parentNodeMass=0;a.points.forEach(function(e){a.parentNodeMass+=Math.PI*Math.pow(e.marker.radius,2)});a.calculateParentRadius();c.nodes.forEach(function(e){e.seriesIndex===a.index&&(d=!0)});c.setArea(0,0,b.plotWidth,b.plotHeight);d||(f||(f=(new h).init(this,{mass:a.parentNodeRadius/2,marker:{radius:a.parentNodeRadius},dataLabels:{inside:!1},dataLabelOnNull:!0,degree:a.parentNodeRadius,
isParentNode:!0,seriesIndex:a.index})),a.parentNode&&(f.plotX=a.parentNode.plotX,f.plotY=a.parentNode.plotY),a.parentNode=f,c.addElementsToCollection([a],c.series),c.addElementsToCollection([f],c.nodes))},addSeriesLayout:function(){var a=this.options.layoutAlgorithm,b=this.chart.graphLayoutsStorage,c=this.chart.graphLayoutsLookup,d=t(a,a.parentNodeOptions,{enableSimulation:this.layout.options.enableSimulation});var g=b[a.type+"-series"];g||(b[a.type+"-series"]=g=new f.layouts[a.type],g.init(d),c.splice(g.index,
0,g));this.parentNodeLayout=g;this.createParentNodes()},addLayout:function(){var a=this.options.layoutAlgorithm,b=this.chart.graphLayoutsStorage,c=this.chart.graphLayoutsLookup,d=this.chart.options.chart;b||(this.chart.graphLayoutsStorage=b={},this.chart.graphLayoutsLookup=c=[]);var g=b[a.type];g||(a.enableSimulation=z(d.forExport)?!d.forExport:a.enableSimulation,b[a.type]=g=new f.layouts[a.type],g.init(a),c.splice(g.index,0,g));this.layout=g;this.points.forEach(function(a){a.mass=2;a.degree=1;a.collisionNmb=
1});g.setArea(0,0,this.chart.plotWidth,this.chart.plotHeight);g.addElementsToCollection([this],g.series);g.addElementsToCollection(this.points,g.nodes)},deferLayout:function(){var a=this.options.layoutAlgorithm;this.visible&&(this.addLayout(),a.splitSeries&&this.addSeriesLayout())},translate:function(){var a=this.chart,b=this.data,c=this.index,f,g=this.options.useSimulation;this.processedXData=this.xData;this.generatePoints();z(a.allDataPoints)||(a.allDataPoints=this.accumulateAllPoints(this),this.getPointRadius());
if(g)var h=a.allDataPoints;else h=this.placeBubbles(a.allDataPoints),this.options.draggable=!1;for(f=0;f<h.length;f++)if(h[f][3]===c){var p=b[h[f][4]];var r=h[f][2];g||(p.plotX=h[f][0]-a.plotLeft+a.diffX,p.plotY=h[f][1]-a.plotTop+a.diffY);p.marker=y(p.marker,{radius:r,width:2*r,height:2*r});p.radius=r}g&&this.deferLayout();d(this,"afterTranslate")},checkOverlap:function(a,b){var e=a[0]-b[0],c=a[1]-b[1];return-.001>Math.sqrt(e*e+c*c)-Math.abs(a[2]+b[2])},positionBubble:function(a,b,c){var e=Math.sqrt,
d=Math.asin,f=Math.acos,g=Math.pow,k=Math.abs;e=e(g(a[0]-b[0],2)+g(a[1]-b[1],2));f=f((g(e,2)+g(c[2]+b[2],2)-g(c[2]+a[2],2))/(2*(c[2]+b[2])*e));d=d(k(a[0]-b[0])/e);a=(0>a[1]-b[1]?0:Math.PI)+f+d*(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,e=this.positionBubble,c=[],d=1,f=0,g=0;var h=[];var p;a=a.sort(function(a,b){return b[2]-a[2]});if(a.length){c.push([[0,0,a[0][2],a[0][3],a[0][4]]]);
if(1<a.length)for(c.push([[0,0-a[1][2]-a[0][2],a[1][2],a[1][3],a[1][4]]]),p=2;p<a.length;p++)a[p][2]=a[p][2]||1,h=e(c[d][f],c[d-1][g],a[p]),b(h,c[d][0])?(c.push([]),g=0,c[d+1].push(e(c[d][f],c[d][0],a[p])),d++,f=0):1<d&&c[d-1][g+1]&&b(h,c[d-1][g+1])?(g++,c[d].push(e(c[d][f],c[d-1][g],a[p])),f++):(f++,c[d].push(h));this.chart.stages=c;this.chart.rawPositions=[].concat.apply([],c);this.resizeRadius();h=this.chart.rawPositions}return h},resizeRadius:function(){var a=this.chart,b=a.rawPositions,c=Math.min,
d=Math.max,f=a.plotLeft,g=a.plotTop,h=a.plotHeight,p=a.plotWidth,r,l,m;var n=r=Number.POSITIVE_INFINITY;var t=l=Number.NEGATIVE_INFINITY;for(m=0;m<b.length;m++){var u=b[m][2];n=c(n,b[m][0]-u);t=d(t,b[m][0]+u);r=c(r,b[m][1]-u);l=d(l,b[m][1]+u)}m=[t-n,l-r];c=c.apply([],[(p-f)/m[0],(h-g)/m[1]]);if(1e-10<Math.abs(c-1)){for(m=0;m<b.length;m++)b[m][2]*=c;this.placeBubbles(b)}else a.diffY=h/2+g-r-(l-r)/2,a.diffX=p/2+f-n-(t-n)/2},calculateZExtremes:function(){var a=this.options.zMin,b=this.options.zMax,c=
Infinity,d=-Infinity;if(a&&b)return[a,b];this.chart.series.forEach(function(a){a.yData.forEach(function(a){z(a)&&(a>d&&(d=a),a<c&&(c=a))})});a=x(a,c);b=x(b,d);return[a,b]},getPointRadius:function(){var a=this,b=a.chart,c=a.options,d=c.useSimulation,f=Math.min(b.plotWidth,b.plotHeight),g={},h=[],p=b.allDataPoints,r,l,m,n;["minSize","maxSize"].forEach(function(a){var b=parseInt(c[a],10),e=/%$/.test(c[a]);g[a]=e?f*b/100:b*Math.sqrt(p.length)});b.minRadius=r=g.minSize/Math.sqrt(p.length);b.maxRadius=
l=g.maxSize/Math.sqrt(p.length);var t=d?a.calculateZExtremes():[r,l];(p||[]).forEach(function(b,e){m=d?w(b[2],t[0],t[1]):b[2];n=a.getRadius(t[0],t[1],r,l,m);0===n&&(n=null);p[e][2]=n;h.push(n)});a.radii=h},redrawHalo:g.redrawHalo,onMouseDown:g.onMouseDown,onMouseMove:g.onMouseMove,onMouseUp:function(a){if(a.fixedPosition&&!a.removed){var b,c,e=this.layout,d=this.parentNodeLayout;d&&e.options.dragBetweenSeries&&d.nodes.forEach(function(d){a&&a.marker&&d!==a.series.parentNode&&(b=e.getDistXY(a,d),c=
e.vectorLength(b)-d.marker.radius-a.marker.radius,0>c&&(d.series.addPoint(t(a.options,{plotX:a.plotX,plotY:a.plotY}),!1),e.removeElementFromCollection(a,e.nodes),a.remove()))});g.onMouseUp.apply(this,arguments)}},destroy:function(){this.chart.graphLayoutsLookup&&this.chart.graphLayoutsLookup.forEach(function(a){a.removeElementFromCollection(this,a.series)},this);this.parentNode&&(this.parentNodeLayout.removeElementFromCollection(this.parentNode,this.parentNodeLayout.nodes),this.parentNode.dataLabel&&
(this.parentNode.dataLabel=this.parentNode.dataLabel.destroy()));f.Series.prototype.destroy.apply(this,arguments)},alignDataLabel:f.Series.prototype.alignDataLabel},{destroy:function(){this.series.layout&&this.series.layout.removeElementFromCollection(this,this.series.layout.nodes);return c.prototype.destroy.apply(this,arguments)}});v(r,"beforeRedraw",function(){this.allDataPoints&&delete this.allDataPoints});""});E(f,"parts-more/Polar.js",[f["parts/Globals.js"],f["parts/Utilities.js"],f["parts-more/Pane.js"]],
function(f,a,c){var b=a.addEvent,l=a.defined,v=a.find,w=a.pick,z=a.splat,y=a.uniqueKey,d=a.wrap,m=f.Series,n=f.seriesTypes,t=m.prototype,x=f.Pointer.prototype;t.searchPointByAngle=function(a){var b=this.chart,c=this.xAxis.pane.center;return this.searchKDTree({clientX:180+-180/Math.PI*Math.atan2(a.chartX-c[0]-b.plotLeft,a.chartY-c[1]-b.plotTop)})};t.getConnectors=function(a,b,c,d){var e=d?1:0;var f=0<=b&&b<=a.length-1?b:0>b?a.length-1+b:0;b=0>f-1?a.length-(1+e):f-1;e=f+1>a.length-1?e:f+1;var g=a[b];
e=a[e];var h=g.plotX;g=g.plotY;var p=e.plotX;var r=e.plotY;e=a[f].plotX;f=a[f].plotY;h=(1.5*e+h)/2.5;g=(1.5*f+g)/2.5;p=(1.5*e+p)/2.5;var l=(1.5*f+r)/2.5;r=Math.sqrt(Math.pow(h-e,2)+Math.pow(g-f,2));var m=Math.sqrt(Math.pow(p-e,2)+Math.pow(l-f,2));h=Math.atan2(g-f,h-e);l=Math.PI/2+(h+Math.atan2(l-f,p-e))/2;Math.abs(h-l)>Math.PI/2&&(l-=Math.PI);h=e+Math.cos(l)*r;g=f+Math.sin(l)*r;p=e+Math.cos(Math.PI+l)*m;l=f+Math.sin(Math.PI+l)*m;e={rightContX:p,rightContY:l,leftContX:h,leftContY:g,plotX:e,plotY:f};
c&&(e.prevPointCont=this.getConnectors(a,b,!1,d));return e};t.toXY=function(a){var b=this.chart,c=this.xAxis;var d=this.yAxis;var e=a.plotX,f=a.plotY,l=a.series,r=b.inverted,m=a.y,n=r?e:d.len-f;r&&l&&!l.isRadialBar&&(a.plotY=f="number"===typeof m?d.translate(m)||0:0);a.rectPlotX=e;a.rectPlotY=f;d.center&&(n+=d.center[3]/2);d=r?d.postTranslate(f,n):c.postTranslate(e,n);a.plotX=a.polarPlotX=d.x-b.plotLeft;a.plotY=a.polarPlotY=d.y-b.plotTop;this.kdByAngle?(b=(e/Math.PI*180+c.pane.options.startAngle)%
360,0>b&&(b+=360),a.clientX=b):a.clientX=a.plotX};n.spline&&(d(n.spline.prototype,"getPointSpline",function(a,b,c,d){this.chart.polar?d?(a=this.getConnectors(b,d,!0,this.connectEnds),a=["C",a.prevPointCont.rightContX,a.prevPointCont.rightContY,a.leftContX,a.leftContY,a.plotX,a.plotY]):a=["M",c.plotX,c.plotY]:a=a.call(this,b,c,d);return a}),n.areasplinerange&&(n.areasplinerange.prototype.getPointSpline=n.spline.prototype.getPointSpline));b(m,"afterTranslate",function(){var a=this.chart;if(a.polar&&
this.xAxis){(this.kdByAngle=a.tooltip&&a.tooltip.shared)?this.searchPoint=this.searchPointByAngle:this.options.findNearestPointBy="xy";if(!this.preventPostTranslate)for(var c=this.points,d=c.length;d--;)this.toXY(c[d]),!a.hasParallelCoordinates&&!this.yAxis.reversed&&c[d].y<this.yAxis.min&&(c[d].isNull=!0);this.hasClipCircleSetter||(this.hasClipCircleSetter=!!this.eventsToUnbind.push(b(this,"afterRender",function(){if(a.polar){var b=this.yAxis.pane.center;this.clipCircle?this.clipCircle.animate({x:b[0],
y:b[1],r:b[2]/2,innerR:b[3]/2}):this.clipCircle=a.renderer.clipCircle(b[0],b[1],b[2]/2,b[3]/2);this.group.clip(this.clipCircle);this.setClip=f.noop}})))}},{order:2});d(t,"getGraphPath",function(a,b){var c=this,d;if(this.chart.polar){b=b||this.points;for(d=0;d<b.length;d++)if(!b[d].isNull){var e=d;break}if(!1!==this.options.connectEnds&&"undefined"!==typeof e){this.connectEnds=!0;b.splice(b.length,0,b[e]);var f=!0}b.forEach(function(a){"undefined"===typeof a.polarPlotY&&c.toXY(a)})}d=a.apply(this,
[].slice.call(arguments,1));f&&b.pop();return d});var A=function(a,b){var c=this,d=this.chart,e=this.options.animation,k=this.group,p=this.markerGroup,l=this.xAxis.center,m=d.plotLeft,r=d.plotTop,n,t,u,v;if(d.polar)if(c.isRadialBar)b||(c.startAngleRad=w(c.translatedThreshold,c.xAxis.startAngleRad),f.seriesTypes.pie.prototype.animate.call(c,b));else{if(d.renderer.isSVG)if(e=f.animObject(e),c.is("column")){if(!b){var x=l[3]/2;c.points.forEach(function(a){n=a.graphic;u=(t=a.shapeArgs)&&t.r;v=t&&t.innerR;
n&&t&&(n.attr({r:x,innerR:x}),n.animate({r:u,innerR:v},c.options.animation))})}}else b?(a={translateX:l[0]+m,translateY:l[1]+r,scaleX:.001,scaleY:.001},k.attr(a),p&&p.attr(a)):(a={translateX:m,translateY:r,scaleX:1,scaleY:1},k.animate(a,e),p&&p.animate(a,e))}else a.call(this,b)};d(t,"animate",A);n.column&&(m=n.arearange.prototype,n=n.column.prototype,n.polarArc=function(a,b,c,d){var e=this.xAxis.center,f=this.yAxis.len,g=e[3]/2;b=f-b+g;a=f-w(a,f)+g;this.yAxis.reversed&&(0>b&&(b=g),0>a&&(a=g));return{x:e[0],
y:e[1],r:b,innerR:a,start:c,end:d}},d(n,"animate",A),d(n,"translate",function(b){var c=this.options,d=c.stacking,g=this.chart,e=this.xAxis,k=this.yAxis,m=k.reversed,r=k.center,n=e.startAngleRad,t=e.endAngleRad-n;this.preventPostTranslate=!0;b.call(this);if(e.isRadial){b=this.points;e=b.length;var u=k.translate(k.min);var v=k.translate(k.max);c=c.threshold||0;if(g.inverted&&f.isNumber(c)){var w=k.translate(c);l(w)&&(0>w?w=0:w>t&&(w=t),this.translatedThreshold=w+n)}for(;e--;){c=b[e];var x=c.barX;var y=
c.x;var A=c.y;c.shapeType="arc";if(g.inverted){c.plotY=k.translate(A);if(d){if(A=k.stacks[(0>A?"-":"")+this.stackKey],this.visible&&A&&A[y]&&!c.isNull){var z=A[y].points[this.getStackIndicator(void 0,y,this.index).key];var D=k.translate(z[0]);z=k.translate(z[1]);l(D)&&(D=a.clamp(D,0,t))}}else D=w,z=c.plotY;D>z&&(z=[D,D=z][0]);if(!m)if(D<u)D=u;else if(z>v)z=v;else{if(z<u||D>v)D=z=0}else if(z>u)z=u;else if(D<v)D=v;else if(D>u||z<v)D=z=t;k.min>k.max&&(D=z=m?t:0);D+=n;z+=n;r&&(c.barX=x+=r[3]/2);y=Math.max(x,
0);A=Math.max(x+c.pointWidth,0);c.shapeArgs={x:r&&r[0],y:r&&r[1],r:A,innerR:y,start:D,end:z};c.opacity=D===z?0:void 0;c.plotY=(l(this.translatedThreshold)&&(D<this.translatedThreshold?D:z))-n}else D=x+n,c.shapeArgs=this.polarArc(c.yBottom,c.plotY,D,D+c.pointWidth);this.toXY(c);g.inverted?(x=k.postTranslate(c.rectPlotY,x+c.pointWidth/2),c.tooltipPos=[x.x-g.plotLeft,x.y-g.plotTop]):c.tooltipPos=[c.plotX,c.plotY];r&&(c.ttBelow=c.plotY>r[1])}}}),n.findAlignments=function(a,b){null===b.align&&(b.align=
20<a&&160>a?"left":200<a&&340>a?"right":"center");null===b.verticalAlign&&(b.verticalAlign=45>a||315<a?"bottom":135<a&&225>a?"top":"middle");return b},m&&(m.findAlignments=n.findAlignments),d(n,"alignDataLabel",function(a,b,c,d,e,f){var g=this.chart,h=w(d.inside,!!this.options.stacking);g.polar?(a=b.rectPlotX/Math.PI*180,g.inverted?(this.forceDL=g.isInsidePlot(b.plotX,Math.round(b.plotY),!1),h&&b.shapeArgs?(e=b.shapeArgs,e=this.yAxis.postTranslate((e.start+e.end)/2-this.xAxis.startAngleRad,b.barX+
b.pointWidth/2),e={x:e.x-g.plotLeft,y:e.y-g.plotTop}):b.tooltipPos&&(e={x:b.tooltipPos[0],y:b.tooltipPos[1]}),d.align=w(d.align,"center"),d.verticalAlign=w(d.verticalAlign,"middle")):this.findAlignments&&(d=this.findAlignments(a,d)),t.alignDataLabel.call(this,b,c,d,e,f),this.isRadialBar&&b.shapeArgs&&b.shapeArgs.start===b.shapeArgs.end&&c.hide(!0)):a.call(this,b,c,d,e,f)}));d(x,"getCoordinates",function(a,b){var c=this.chart,d={xAxis:[],yAxis:[]};c.polar?c.axes.forEach(function(a){var e=a.isXAxis,
f=a.center;if("colorAxis"!==a.coll){var g=b.chartX-f[0]-c.plotLeft;f=b.chartY-f[1]-c.plotTop;d[e?"xAxis":"yAxis"].push({axis:a,value:a.translate(e?Math.PI-Math.atan2(g,f):Math.sqrt(Math.pow(g,2)+Math.pow(f,2)),!0)})}}):d=a.call(this,b);return d});f.SVGRenderer.prototype.clipCircle=function(a,b,c,d){var e=y(),f=this.createElement("clipPath").attr({id:e}).add(this.defs);a=d?this.arc(a,b,c,d,0,2*Math.PI).add(f):this.circle(a,b,c).add(f);a.id=e;a.clipPath=f;return a};b(f.Chart,"getAxes",function(){this.pane||
(this.pane=[]);z(this.options.pane).forEach(function(a){new c(a,this)},this)});b(f.Chart,"afterDrawChartBox",function(){this.pane.forEach(function(a){a.render()})});b(f.Series,"afterInit",function(){var a=this.chart;a.inverted&&a.polar&&(this.isRadialSeries=!0,this.is("column")&&(this.isRadialBar=!0))});d(f.Chart.prototype,"get",function(a,b){return v(this.pane,function(a){return a.options.id===b})||a.call(this,b)})});E(f,"masters/highcharts-more.src.js",[],function(){})});
//# sourceMappingURL=highcharts-more.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Data module

 (c) 2012-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/data",["highcharts"],function(u){b(u);b.Highcharts=u;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function u(z,b,u,H){z.hasOwnProperty(b)||(z[b]=H.apply(null,u))}b=b?b._modules:{};u(b,"mixins/ajax.js",[b["parts/Globals.js"],b["parts/Utilities.js"]],function(b,y){var z=y.merge,u=y.objectEach;b.ajax=function(b){var n=
z(!0,{url:!1,type:"get",dataType:"json",success:!1,error:!1,data:!1,headers:{}},b);b={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"};var r=new XMLHttpRequest;if(!n.url)return!1;r.open(n.type.toUpperCase(),n.url,!0);n.headers["Content-Type"]||r.setRequestHeader("Content-Type",b[n.dataType]||b.text);u(n.headers,function(b,n){r.setRequestHeader(n,b)});r.onreadystatechange=function(){if(4===r.readyState){if(200===r.status){var b=r.responseText;if("json"===
n.dataType)try{b=JSON.parse(b)}catch(E){n.error&&n.error(r,E);return}return n.success&&n.success(b)}n.error&&n.error(r,r.responseText)}};try{n.data=JSON.stringify(n.data)}catch(G){}r.send(n.data||!0)};b.getJSON=function(z,n){b.ajax({url:z,success:n,dataType:"json",headers:{"Content-Type":"text/plain"}})}});u(b,"modules/data.src.js",[b["parts/Globals.js"],b["parts/Utilities.js"]],function(b,y){var u=y.defined,z=y.extend,F=y.isNumber,n=y.objectEach,r=y.pick,G=y.splat;y=b.addEvent;var E=b.Chart,I=b.win.document,
C=b.merge,J=b.fireEvent,D=function(a,d,c){this.init(a,d,c)};z(D.prototype,{init:function(a,d,c){var e=a.decimalPoint;d&&(this.chartOptions=d);c&&(this.chart=c);"."!==e&&","!==e&&(e=void 0);this.options=a;this.columns=a.columns||this.rowsToColumns(a.rows)||[];this.firstRowAsNames=r(a.firstRowAsNames,this.firstRowAsNames,!0);this.decimalRegex=e&&new RegExp("^(-?[0-9]+)"+e+"([0-9]+)$");this.rawColumns=[];if(this.columns.length){this.dataFound();var g=!0}this.hasURLOption(a)&&(clearTimeout(this.liveDataTimeout),
g=!1);g||(g=this.fetchLiveData());g||(g=!!this.parseCSV().length);g||(g=!!this.parseTable().length);g||(g=this.parseGoogleSpreadsheet());!g&&a.afterComplete&&a.afterComplete()},hasURLOption:function(a){return!(!a||!(a.rowsURL||a.csvURL||a.columnsURL))},getColumnDistribution:function(){var a=this.chartOptions,d=this.options,c=[],e=function(a){return(b.seriesTypes[a||"line"].prototype.pointArrayMap||[0]).length},g=a&&a.chart&&a.chart.type,f=[],x=[],h=0;d=d&&d.seriesMapping||a&&a.series&&a.series.map(function(){return{x:0}})||
[];var k;(a&&a.series||[]).forEach(function(a){f.push(e(a.type||g))});d.forEach(function(a){c.push(a.x||0)});0===c.length&&c.push(0);d.forEach(function(d){var c=new A,t=f[h]||e(g),q=(a&&a.series||[])[h]||{},v=b.seriesTypes[q.type||g||"line"].prototype.pointArrayMap,B=v||["y"];(u(d.x)||q.isCartesian||!v)&&c.addColumnReader(d.x,"x");n(d,function(a,d){"x"!==d&&c.addColumnReader(a,d)});for(k=0;k<t;k++)c.hasReader(B[k])||c.addColumnReader(void 0,B[k]);x.push(c);h++});d=b.seriesTypes[g||"line"].prototype.pointArrayMap;
"undefined"===typeof d&&(d=["y"]);this.valueCount={global:e(g),xColumns:c,individual:f,seriesBuilders:x,globalPointArrayMap:d}},dataFound:function(){this.options.switchRowsAndColumns&&(this.columns=this.rowsToColumns(this.columns));this.getColumnDistribution();this.parseTypes();!1!==this.parsed()&&this.complete()},parseCSV:function(a){function d(a,d,c,e){function g(d){h=a[d];l=a[d-1];q=a[d+1]}function f(a){t.length<w+1&&t.push([a]);t[w][t[w].length-1]!==a&&t[w].push(a)}function b(){k>x||x>n?(++x,
p=""):(!isNaN(parseFloat(p))&&isFinite(p)?(p=parseFloat(p),f("number")):isNaN(Date.parse(p))?f("string"):(p=p.replace(/\//g,"-"),f("date")),v.length<w+1&&v.push([]),c||(v[w][d]=p),p="",++w,++x)}var m=0,h="",l="",q="",p="",x=0,w=0;if(a.trim().length&&"#"!==a.trim()[0]){for(;m<a.length;m++){g(m);if("#"===h){b();return}if('"'===h)for(g(++m);m<a.length&&('"'!==h||'"'===l||'"'===q);){if('"'!==h||'"'===h&&'"'!==l)p+=h;g(++m)}else e&&e[h]?e[h](h,p)&&b():h===B?b():p+=h}b()}}function c(a){var d=0,c=0,e=!1;
a.some(function(a,e){var g=!1,f="";if(13<e)return!0;for(var b=0;b<a.length;b++){e=a[b];var h=a[b+1];var k=a[b-1];if("#"===e)break;if('"'===e)if(g){if('"'!==k&&'"'!==h){for(;" "===h&&b<a.length;)h=a[++b];"undefined"!==typeof q[h]&&q[h]++;g=!1}}else g=!0;else"undefined"!==typeof q[e]?(f=f.trim(),isNaN(Date.parse(f))?!isNaN(f)&&isFinite(f)||q[e]++:q[e]++,f=""):f+=e;","===e&&c++;"."===e&&d++}});e=q[";"]>q[","]?";":",";f.decimalPoint||(f.decimalPoint=d>c?".":",",g.decimalRegex=new RegExp("^(-?[0-9]+)"+
f.decimalPoint+"([0-9]+)$"));return e}function e(a,d){var c=[],e=0,b=!1,h=[],k=[],m;if(!d||d>a.length)d=a.length;for(;e<d;e++)if("undefined"!==typeof a[e]&&a[e]&&a[e].length){var l=a[e].trim().replace(/\//g," ").replace(/\-/g," ").replace(/\./g," ").split(" ");c=["","",""];for(m=0;m<l.length;m++)m<c.length&&(l[m]=parseInt(l[m],10),l[m]&&(k[m]=!k[m]||k[m]<l[m]?l[m]:k[m],"undefined"!==typeof h[m]?h[m]!==l[m]&&(h[m]=!1):h[m]=l[m],31<l[m]?c[m]=100>l[m]?"YY":"YYYY":12<l[m]&&31>=l[m]?(c[m]="dd",b=!0):c[m].length||
(c[m]="mm")))}if(b){for(m=0;m<h.length;m++)!1!==h[m]?12<k[m]&&"YY"!==c[m]&&"YYYY"!==c[m]&&(c[m]="YY"):12<k[m]&&"mm"===c[m]&&(c[m]="dd");3===c.length&&"dd"===c[1]&&"dd"===c[2]&&(c[2]="YY");a=c.join("/");return(f.dateFormats||g.dateFormats)[a]?a:(J("deduceDateFailed"),"YYYY/mm/dd")}return"YYYY/mm/dd"}var g=this,f=a||this.options,b=f.csv;a="undefined"!==typeof f.startRow&&f.startRow?f.startRow:0;var h=f.endRow||Number.MAX_VALUE,k="undefined"!==typeof f.startColumn&&f.startColumn?f.startColumn:0,n=f.endColumn||
Number.MAX_VALUE,l=0,t=[],q={",":0,";":0,"\t":0};var v=this.columns=[];b&&f.beforeParse&&(b=f.beforeParse.call(this,b));if(b){b=b.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split(f.lineDelimiter||"\n");if(!a||0>a)a=0;if(!h||h>=b.length)h=b.length-1;if(f.itemDelimiter)var B=f.itemDelimiter;else B=null,B=c(b);var w=0;for(l=a;l<=h;l++)"#"===b[l][0]?w++:d(b[l],l-a-w);f.columnTypes&&0!==f.columnTypes.length||!t.length||!t[0].length||"date"!==t[0][1]||f.dateFormat||(f.dateFormat=e(v[0]));this.dataFound()}return v},
parseTable:function(){var a=this.options,d=a.table,c=this.columns,e=a.startRow||0,g=a.endRow||Number.MAX_VALUE,f=a.startColumn||0,b=a.endColumn||Number.MAX_VALUE;d&&("string"===typeof d&&(d=I.getElementById(d)),[].forEach.call(d.getElementsByTagName("tr"),function(a,d){d>=e&&d<=g&&[].forEach.call(a.children,function(a,g){var h=c[g-f],k=1;if(("TD"===a.tagName||"TH"===a.tagName)&&g>=f&&g<=b)for(c[g-f]||(c[g-f]=[]),c[g-f][d-e]=a.innerHTML;d-e>=k&&void 0===h[d-e-k];)h[d-e-k]=null,k++})}),this.dataFound());
return c},fetchLiveData:function(){function a(k){function n(h,n,q){function l(){f&&c.liveDataURL===h&&(d.liveDataTimeout=setTimeout(a,x))}if(!h||0!==h.indexOf("http"))return h&&e.error&&e.error("Invalid URL"),!1;k&&(clearTimeout(d.liveDataTimeout),c.liveDataURL=h);b.ajax({url:h,dataType:q||"json",success:function(a){c&&c.series&&n(a);l()},error:function(a,d){3>++g&&l();return e.error&&e.error(d,a)}});return!0}n(h.csvURL,function(a){c.update({data:{csv:a}})},"text")||n(h.rowsURL,function(a){c.update({data:{rows:a}})})||
n(h.columnsURL,function(a){c.update({data:{columns:a}})})}var d=this,c=this.chart,e=this.options,g=0,f=e.enablePolling,x=1E3*(e.dataRefreshRate||2),h=C(e);if(!this.hasURLOption(e))return!1;1E3>x&&(x=1E3);delete e.csvURL;delete e.rowsURL;delete e.columnsURL;a(!0);return this.hasURLOption(e)},parseGoogleSpreadsheet:function(){function a(d){var g=["https://spreadsheets.google.com/feeds/cells",e,f,"public/values?alt=json"].join("/");b.ajax({url:g,dataType:"json",success:function(e){d(e);c.enablePolling&&
setTimeout(function(){a(d)},1E3*(c.dataRefreshRate||2))},error:function(a,d){return c.error&&c.error(d,a)}})}var d=this,c=this.options,e=c.googleSpreadsheetKey,g=this.chart,f=c.googleSpreadsheetWorksheet||1,x=c.startRow||0,h=c.endRow||Number.MAX_VALUE,k=c.startColumn||0,n=c.endColumn||Number.MAX_VALUE,l=1E3*(c.dataRefreshRate||2);4E3>l&&(l=4E3);e&&(delete c.googleSpreadsheetKey,a(function(a){var c=[];a=a.feed.entry;var e=(a||[]).length,f=0,b;if(!a||0===a.length)return!1;for(b=0;b<e;b++){var l=a[b];
f=Math.max(f,l.gs$cell.col)}for(b=0;b<f;b++)b>=k&&b<=n&&(c[b-k]=[]);for(b=0;b<e;b++){l=a[b];f=l.gs$cell.row-1;var t=l.gs$cell.col-1;if(t>=k&&t<=n&&f>=x&&f<=h){var p=l.gs$cell||l.content;l=null;p.numericValue?l=0<=p.$t.indexOf("/")||0<=p.$t.indexOf("-")?p.$t:0<p.$t.indexOf("%")?100*parseFloat(p.numericValue):parseFloat(p.numericValue):p.$t&&p.$t.length&&(l=p.$t);c[t-k][f-x]=l}}c.forEach(function(a){for(b=0;b<a.length;b++)"undefined"===typeof a[b]&&(a[b]=null)});g&&g.series?g.update({data:{columns:c}}):
(d.columns=c,d.dataFound())}));return!1},trim:function(a,d){"string"===typeof a&&(a=a.replace(/^\s+|\s+$/g,""),d&&/^[0-9\s]+$/.test(a)&&(a=a.replace(/\s/g,"")),this.decimalRegex&&(a=a.replace(this.decimalRegex,"$1.$2")));return a},parseTypes:function(){for(var a=this.columns,d=a.length;d--;)this.parseColumn(a[d],d)},parseColumn:function(a,d){var c=this.rawColumns,e=this.columns,g=a.length,b=this.firstRowAsNames,n=-1!==this.valueCount.xColumns.indexOf(d),h,k=[],r=this.chartOptions,l,t=(this.options.columnTypes||
[])[d];r=n&&(r&&r.xAxis&&"category"===G(r.xAxis)[0].type||"string"===t);for(c[d]||(c[d]=[]);g--;){var q=k[g]||a[g];var v=this.trim(q);var u=this.trim(q,!0);var w=parseFloat(u);"undefined"===typeof c[d][g]&&(c[d][g]=v);r||0===g&&b?a[g]=""+v:+u===w?(a[g]=w,31536E6<w&&"float"!==t?a.isDatetime=!0:a.isNumeric=!0,"undefined"!==typeof a[g+1]&&(l=w>a[g+1])):(v&&v.length&&(h=this.parseDate(q)),n&&F(h)&&"float"!==t?(k[g]=q,a[g]=h,a.isDatetime=!0,"undefined"!==typeof a[g+1]&&(q=h>a[g+1],q!==l&&"undefined"!==
typeof l&&(this.alternativeFormat?(this.dateFormat=this.alternativeFormat,g=a.length,this.alternativeFormat=this.dateFormats[this.dateFormat].alternative):a.unsorted=!0),l=q)):(a[g]=""===v?null:v,0!==g&&(a.isDatetime||a.isNumeric)&&(a.mixed=!0)))}n&&a.mixed&&(e[d]=c[d]);if(n&&l&&this.options.sort)for(d=0;d<e.length;d++)e[d].reverse(),b&&e[d].unshift(e[d].pop())},dateFormats:{"YYYY/mm/dd":{regex:/^([0-9]{4})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{1,2})$/,parser:function(a){return Date.UTC(+a[1],a[2]-1,
+a[3])}},"dd/mm/YYYY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{4})$/,parser:function(a){return Date.UTC(+a[3],a[2]-1,+a[1])},alternative:"mm/dd/YYYY"},"mm/dd/YYYY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{4})$/,parser:function(a){return Date.UTC(+a[3],a[1]-1,+a[2])}},"dd/mm/YY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{2})$/,parser:function(a){var d=+a[3];d=d>(new Date).getFullYear()-2E3?d+1900:d+2E3;return Date.UTC(d,a[2]-1,+a[1])},alternative:"mm/dd/YY"},
"mm/dd/YY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{2})$/,parser:function(a){return Date.UTC(+a[3]+2E3,a[1]-1,+a[2])}}},parseDate:function(a){var d=this.options.parseDate,c,e=this.options.dateFormat||this.dateFormat,b;if(d)var f=d(a);else if("string"===typeof a){if(e)(d=this.dateFormats[e])||(d=this.dateFormats["YYYY/mm/dd"]),(b=a.match(d.regex))&&(f=d.parser(b));else for(c in this.dateFormats)if(d=this.dateFormats[c],b=a.match(d.regex)){this.dateFormat=c;this.alternativeFormat=d.alternative;
f=d.parser(b);break}b||(b=Date.parse(a),"object"===typeof b&&null!==b&&b.getTime?f=b.getTime()-6E4*b.getTimezoneOffset():F(b)&&(f=b-6E4*(new Date(b)).getTimezoneOffset()))}return f},rowsToColumns:function(a){var d,c;if(a){var e=[];var b=a.length;for(d=0;d<b;d++){var f=a[d].length;for(c=0;c<f;c++)e[c]||(e[c]=[]),e[c][d]=a[d][c]}}return e},getData:function(){if(this.columns)return this.rowsToColumns(this.columns).slice(1)},parsed:function(){if(this.options.parsed)return this.options.parsed.call(this,
this.columns)},getFreeIndexes:function(a,d){var c,e=[],b=[];for(c=0;c<a;c+=1)e.push(!0);for(a=0;a<d.length;a+=1){var f=d[a].getReferencedColumnIndexes();for(c=0;c<f.length;c+=1)e[f[c]]=!1}for(c=0;c<e.length;c+=1)e[c]&&b.push(c);return b},complete:function(){var a=this.columns,d,c=this.options,b,g,f=[];if(c.complete||c.afterComplete){if(this.firstRowAsNames)for(b=0;b<a.length;b++)a[b].name=a[b].shift();var n=[];var h=this.getFreeIndexes(a.length,this.valueCount.seriesBuilders);for(b=0;b<this.valueCount.seriesBuilders.length;b++){var k=
this.valueCount.seriesBuilders[b];k.populateColumns(h)&&f.push(k)}for(;0<h.length;){k=new A;k.addColumnReader(0,"x");b=h.indexOf(0);-1!==b&&h.splice(b,1);for(b=0;b<this.valueCount.global;b++)k.addColumnReader(void 0,this.valueCount.globalPointArrayMap[b]);k.populateColumns(h)&&f.push(k)}0<f.length&&0<f[0].readers.length&&(k=a[f[0].readers[0].columnIndex],"undefined"!==typeof k&&(k.isDatetime?d="datetime":k.isNumeric||(d="category")));if("category"===d)for(b=0;b<f.length;b++)for(k=f[b],h=0;h<k.readers.length;h++)"x"===
k.readers[h].configName&&(k.readers[h].configName="name");for(b=0;b<f.length;b++){k=f[b];h=[];for(g=0;g<a[0].length;g++)h[g]=k.read(a,g);n[b]={data:h};k.name&&(n[b].name=k.name);"category"===d&&(n[b].turboThreshold=0)}a={series:n};d&&(a.xAxis={type:d},"category"===d&&(a.xAxis.uniqueNames=!1));c.complete&&c.complete(a);c.afterComplete&&c.afterComplete(a)}},update:function(a,b){var d=this.chart;a&&(a.afterComplete=function(a){a&&(a.xAxis&&d.xAxis[0]&&a.xAxis.type===d.xAxis[0].options.type&&delete a.xAxis,
d.update(a,b,!0))},C(!0,d.options.data,a),this.init(d.options.data))}});b.Data=D;b.data=function(a,b,c){return new D(a,b,c)};y(E,"init",function(a){var b=this,c=a.args[0]||{},e=a.args[1];c&&c.data&&!b.hasDataDef&&(b.hasDataDef=!0,b.data=new D(z(c.data,{afterComplete:function(a){var d;if(Object.hasOwnProperty.call(c,"series"))if("object"===typeof c.series)for(d=Math.max(c.series.length,a&&a.series?a.series.length:0);d--;){var g=c.series[d]||{};c.series[d]=C(g,a&&a.series?a.series[d]:{})}else delete c.series;
c=C(a,c);b.init(c,e)}}),c,b),a.preventDefault())});var A=function(){this.readers=[];this.pointIsArray=!0};A.prototype.populateColumns=function(a){var b=!0;this.readers.forEach(function(b){"undefined"===typeof b.columnIndex&&(b.columnIndex=a.shift())});this.readers.forEach(function(a){"undefined"===typeof a.columnIndex&&(b=!1)});return b};A.prototype.read=function(a,d){var c=this.pointIsArray,e=c?[]:{};this.readers.forEach(function(f){var g=a[f.columnIndex][d];c?e.push(g):0<f.configName.indexOf(".")?
b.Point.prototype.setNestedProperty(e,g,f.configName):e[f.configName]=g});if("undefined"===typeof this.name&&2<=this.readers.length){var g=this.getReferencedColumnIndexes();2<=g.length&&(g.shift(),g.sort(function(a,b){return a-b}),this.name=a[g.shift()].name)}return e};A.prototype.addColumnReader=function(a,b){this.readers.push({columnIndex:a,configName:b});"x"!==b&&"y"!==b&&"undefined"!==typeof b&&(this.pointIsArray=!1)};A.prototype.getReferencedColumnIndexes=function(){var a,b=[];for(a=0;a<this.readers.length;a+=
1){var c=this.readers[a];"undefined"!==typeof c.columnIndex&&b.push(c.columnIndex)}return b};A.prototype.hasReader=function(a){var b;for(b=0;b<this.readers.length;b+=1){var c=this.readers[b];if(c.configName===a)return!0}}});u(b,"masters/modules/data.src.js",[],function(){})});
//# sourceMappingURL=data.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 (c) 2009-2019 Sebastian Bochan, Rafal Sebestjanski

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/dumbbell",["highcharts"],function(c){b(c);b.Highcharts=c;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function c(b,l,f,c){b.hasOwnProperty(l)||(b[l]=c.apply(null,f))}b=b?b._modules:{};c(b,"modules/dumbbell.src.js",[b["parts/Globals.js"],b["parts/Utilities.js"]],function(b,c){c=c.seriesType;var f=b.pick,m=b.seriesTypes,
l=b.Series.prototype,n=m.arearange.prototype,r=m.column.prototype,q=n.pointClass.prototype;c("dumbbell","arearange",{trackByArea:!1,fillColor:"none",lineWidth:0,pointRange:1,connectorWidth:1,stickyTracking:!1,groupPadding:.2,pointPadding:.1,lowColor:"#333333",states:{hover:{lineWidthPlus:0,connectorWidthPlus:1,halo:!1}}},{trackerGroups:["group","markerGroup","dataLabelsGroup"],drawTracker:b.TrackerMixin.drawTrackerPoint,drawGraph:b.noop,crispConnector:function(a,b){a[1]===a[4]&&(a[1]=a[4]=Math.floor(a[1])+
b%2/2);a[2]===a[5]&&(a[2]=a[5]=Math.floor(a[2])+b%2/2);return a},crispCol:r.crispCol,getConnectorAttribs:function(a){var t=this.chart,e=a.options,h=this.options,d=this.xAxis,g=this.yAxis,c=f(e.connectorWidth,h.connectorWidth),l=f(e.connectorColor,h.connectorColor,e.color,a.zone?a.zone.color:void 0,a.color),n=f(h.states&&h.states.hover&&h.states.hover.connectorWidthPlus,1),m=f(e.dashStyle,h.dashStyle),p=f(a.plotLow,a.plotY),k=g.toPixels(h.threshold||0,!0);k=f(a.plotHigh,t.inverted?g.len-k:k);a.state&&
(c+=n);0>p?p=0:p>=g.len&&(p=g.len);0>k?k=0:k>=g.len&&(k=g.len);if(0>a.plotX||a.plotX>d.len)c=0;a.upperGraphic&&(d={y:a.y,zone:a.zone},a.y=a.high,a.zone=a.zone?a.getZone():void 0,l=f(e.connectorColor,h.connectorColor,e.color,a.zone?a.zone.color:void 0,a.color),b.extend(a,d));a={d:this.crispConnector(["M",a.plotX,p,"L",a.plotX,k],c)};t.styledMode||(a.stroke=l,a["stroke-width"]=c,m&&(a.dashstyle=m));return a},drawConnector:function(a){var b=f(this.options.animationLimit,250);b=a.connector&&this.chart.pointCount<
b?"animate":"attr";a.connector||(a.connector=this.chart.renderer.path().addClass("highcharts-lollipop-stem").attr({zIndex:-1}).add(this.markerGroup));a.connector[b](this.getConnectorAttribs(a))},getColumnMetrics:function(){var a=r.getColumnMetrics.apply(this,arguments);a.offset+=a.width/2;return a},translatePoint:n.translate,setShapeArgs:m.columnrange.prototype.translate,translate:function(){this.setShapeArgs.apply(this);this.translatePoint.apply(this,arguments);this.points.forEach(function(a){var b=
a.shapeArgs,e=a.pointWidth;a.plotX=b.x;b.x=a.plotX-e/2;a.tooltipPos=null})},seriesDrawPoints:n.drawPoints,drawPoints:function(){var a=this.chart,b=this.points.length,e=this.lowColor=this.options.lowColor,c=0;for(this.seriesDrawPoints.apply(this,arguments);c<b;){var d=this.points[c];this.drawConnector(d);d.upperGraphic&&(d.upperGraphic.element.point=d,d.upperGraphic.addClass("highcharts-lollipop-high"));d.connector.element.point=d;if(d.lowerGraphic){var g=d.zone&&d.zone.color;g=f(d.options.lowColor,
e,d.options.color,g,d.color,this.color);a.styledMode||d.lowerGraphic.attr({fill:g});d.lowerGraphic.addClass("highcharts-lollipop-low")}c++}},markerAttribs:function(){var a=n.markerAttribs.apply(this,arguments);a.x=Math.floor(a.x);a.y=Math.floor(a.y);return a},pointAttribs:function(a,b){var c=l.pointAttribs.apply(this,arguments);"hover"===b&&delete c.fill;return c}},{destroyElements:q.destroyElements,isValid:q.isValid,pointSetState:q.setState,setState:function(){var a=this.series,c=a.chart,e=a.options.marker,
h=this.options,d=f(h.lowColor,a.options.lowColor,h.color,this.zone&&this.zone.color,this.color,a.color),g="attr";this.pointSetState.apply(this,arguments);this.state||(g="animate",this.lowerGraphic&&!c.styledMode&&(this.lowerGraphic.attr({fill:d}),this.upperGraphic&&(c={y:this.y,zone:this.zone},this.y=this.high,this.zone=this.zone?this.getZone():void 0,e=f(this.marker?this.marker.fillColor:void 0,e?e.fillColor:void 0,h.color,this.zone?this.zone.color:void 0,this.color),this.upperGraphic.attr({fill:e}),
b.extend(this,c))));this.connector[g](a.getConnectorAttribs(this))}});""});c(b,"masters/modules/dumbbell.src.js",[],function(){})});
//# sourceMappingURL=dumbbell.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 (c) 2009-2019 Sebastian Bochan, Rafal Sebestjanski

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/lollipop",["highcharts"],function(b){a(b);a.Highcharts=b;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function b(a,e,b,c){a.hasOwnProperty(e)||(a[e]=c.apply(null,b))}a=a?a._modules:{};b(a,"modules/lollipop.src.js",[a["parts/Globals.js"],a["parts/Utilities.js"]],function(a,b){b=b.seriesType;var d=a.seriesTypes.area.prototype,
c=a.seriesTypes.column.prototype;b("lollipop","dumbbell",{lowColor:void 0,threshold:0,connectorWidth:1,groupPadding:.2,pointPadding:.1,states:{hover:{lineWidthPlus:0,connectorWidthPlus:1,halo:!1}},tooltip:{pointFormat:'<span style="color:{series.color}">\u25cf</span> {series.name}: <b>{point.low}</b><br/>'}},{translatePoint:d.translate,drawPoint:d.drawPoints,drawDataLabels:c.drawDataLabels,setShapeArgs:c.translate},{pointSetState:d.pointClass.prototype.setState,setState:a.seriesTypes.dumbbell.prototype.pointClass.prototype.setState});
""});b(a,"masters/modules/lollipop.src.js",[],function(){})});
//# sourceMappingURL=lollipop.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Sankey diagram module

 (c) 2010-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/sankey",["highcharts"],function(n){b(n);b.Highcharts=n;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function n(b,h,l,k){b.hasOwnProperty(h)||(b[h]=k.apply(null,l))}b=b?b._modules:{};n(b,"mixins/nodes.js",[b["parts/Globals.js"],b["parts/Point.js"],b["parts/Utilities.js"]],function(b,h,l){var k=l.defined,u=l.extend,
q=l.find,n=l.pick;b.NodesMixin={createNode:function(b){function d(a,d){return q(a,function(c){return c.id===d})}var a=d(this.nodes,b),x=this.pointClass;if(!a){var h=this.options.nodes&&d(this.options.nodes,b);a=(new x).init(this,u({className:"highcharts-node",isNode:!0,id:b,y:1},h));a.linksTo=[];a.linksFrom=[];a.formatPrefix="node";a.name=a.name||a.options.id;a.mass=n(a.options.mass,a.options.marker&&a.options.marker.radius,this.options.marker&&this.options.marker.radius,4);a.getSum=function(){var d=
0,b=0;a.linksTo.forEach(function(c){d+=c.weight});a.linksFrom.forEach(function(c){b+=c.weight});return Math.max(d,b)};a.offset=function(d,b){for(var c=0,e=0;e<a[b].length;e++){if(a[b][e]===d)return c;c+=a[b][e].weight}};a.hasShape=function(){var d=0;a.linksTo.forEach(function(a){a.outgoing&&d++});return!a.linksTo.length||d!==a.linksTo.length};this.nodes.push(a)}return a},generatePoints:function(){var h=this.chart,d={};b.Series.prototype.generatePoints.call(this);this.nodes||(this.nodes=[]);this.colorCounter=
0;this.nodes.forEach(function(a){a.linksFrom.length=0;a.linksTo.length=0;a.level=a.options.level});this.points.forEach(function(a){k(a.from)&&(d[a.from]||(d[a.from]=this.createNode(a.from)),d[a.from].linksFrom.push(a),a.fromNode=d[a.from],h.styledMode?a.colorIndex=n(a.options.colorIndex,d[a.from].colorIndex):a.color=a.options.color||d[a.from].color);k(a.to)&&(d[a.to]||(d[a.to]=this.createNode(a.to)),d[a.to].linksTo.push(a),a.toNode=d[a.to]);a.name=a.name||a.id},this);this.nodeLookup=d},setData:function(){this.nodes&&
(this.nodes.forEach(function(b){b.destroy()}),this.nodes.length=0);b.Series.prototype.setData.apply(this,arguments)},destroy:function(){this.data=[].concat(this.points||[],this.nodes);return b.Series.prototype.destroy.apply(this,arguments)},setNodeState:function(b){var d=arguments,a=this.isNode?this.linksTo.concat(this.linksFrom):[this.fromNode,this.toNode];"select"!==b&&a.forEach(function(a){a&&a.series&&(h.prototype.setState.apply(a,d),a.isNode||(a.fromNode.graphic&&h.prototype.setState.apply(a.fromNode,
d),a.toNode&&a.toNode.graphic&&h.prototype.setState.apply(a.toNode,d)))});h.prototype.setState.apply(this,d)}}});n(b,"mixins/tree-series.js",[b["parts/Color.js"],b["parts/Utilities.js"]],function(b,h){var l=h.extend,k=h.isArray,n=h.isNumber,q=h.isObject,u=h.merge,r=h.pick;return{getColor:function(d,a){var x=a.index,h=a.mapOptionsToLevel,l=a.parentColor,k=a.parentColorIndex,c=a.series,e=a.colors,B=a.siblings,m=c.points,g=c.chart.options.chart,w;if(d){m=m[d.i];d=h[d.level]||{};if(h=m&&d.colorByPoint){var f=
m.index%(e?e.length:g.colorCount);var p=e&&e[f]}if(!c.chart.styledMode){e=m&&m.options.color;g=d&&d.color;if(w=l)w=(w=d&&d.colorVariation)&&"brightness"===w.key?b.parse(l).brighten(x/B*w.to).get():l;w=r(e,g,p,w,c.color)}var t=r(m&&m.options.colorIndex,d&&d.colorIndex,f,k,a.colorIndex)}return{color:w,colorIndex:t}},getLevelOptions:function(d){var a=null;if(q(d)){a={};var b=n(d.from)?d.from:1;var h=d.levels;var v={};var r=q(d.defaults)?d.defaults:{};k(h)&&(v=h.reduce(function(a,e){if(q(e)&&n(e.level)){var c=
u({},e);var m="boolean"===typeof c.levelIsConstant?c.levelIsConstant:r.levelIsConstant;delete c.levelIsConstant;delete c.level;e=e.level+(m?0:b-1);q(a[e])?l(a[e],c):a[e]=c}return a},{}));h=n(d.to)?d.to:1;for(d=0;d<=h;d++)a[d]=u({},r,q(v[d])?v[d]:{})}return a},setTreeValues:function z(a,b){var h=b.before,k=b.idRoot,c=b.mapIdToNode[k],e=b.points[a.i],B=e&&e.options||{},m=0,g=[];l(a,{levelDynamic:a.level-(("boolean"===typeof b.levelIsConstant?b.levelIsConstant:1)?0:c.level),name:r(e&&e.name,""),visible:k===
a.id||("boolean"===typeof b.visible?b.visible:!1)});"function"===typeof h&&(a=h(a,b));a.children.forEach(function(c,e){var f=l({},b);l(f,{index:e,siblings:a.children.length,visible:a.visible});c=z(c,f);g.push(c);c.visible&&(m+=c.val)});a.visible=0<m||a.visible;h=r(B.value,m);l(a,{children:g,childrenTotal:m,isLeaf:a.visible&&!m,val:h});return a},updateRootId:function(a){if(q(a)){var b=q(a.options)?a.options:{};b=r(a.rootNode,b.rootId,"");q(a.userOptions)&&(a.userOptions.rootId=b);a.rootNode=b}return b}}});
n(b,"modules/sankey.src.js",[b["parts/Globals.js"],b["parts/Color.js"],b["parts/Point.js"],b["parts/Utilities.js"],b["mixins/tree-series.js"]],function(b,h,l,k,n){var q=k.defined,u=k.find,r=k.isObject,d=k.merge,a=k.pick,x=k.relativeLength,z=k.seriesType,v=k.stableSort,K=n.getLevelOptions;z("sankey","column",{borderWidth:0,colorByPoint:!0,curveFactor:.33,dataLabels:{enabled:!0,backgroundColor:"none",crop:!1,nodeFormat:void 0,nodeFormatter:function(){return this.point.name},format:void 0,formatter:function(){},
inside:!0},inactiveOtherPoints:!0,linkOpacity:.5,minLinkWidth:0,nodeWidth:20,nodePadding:10,showInLegend:!1,states:{hover:{linkOpacity:1},inactive:{linkOpacity:.1,opacity:.1,animation:{duration:50}}},tooltip:{followPointer:!0,headerFormat:'<span style="font-size: 10px">{series.name}</span><br/>',pointFormat:"{point.fromNode.name} \u2192 {point.toNode.name}: <b>{point.weight}</b><br/>",nodeFormat:"{point.name}: <b>{point.sum}</b><br/>"}},{isCartesian:!1,invertable:!0,forceDL:!0,orderNodes:!0,pointArrayMap:["from",
"to"],createNode:b.NodesMixin.createNode,searchPoint:b.noop,setData:b.NodesMixin.setData,destroy:b.NodesMixin.destroy,getNodePadding:function(){var a=this.options.nodePadding||0;if(this.nodeColumns){var e=this.nodeColumns.reduce(function(a,c){return Math.max(a,c.length)},0);e*a>this.chart.plotSizeY&&(a=this.chart.plotSizeY/e)}return a},createNodeColumn:function(){var a=this,e=this.chart,b=[];b.sum=function(){return this.reduce(function(a,c){return a+c.getSum()},0)};b.offset=function(c,e){for(var d=
0,f,m=a.nodePadding,g=0;g<b.length;g++){f=b[g].getSum();var B=Math.max(f*e,a.options.minLinkWidth);f=f?B+m:0;if(b[g]===c)return{relativeTop:d+x(c.options.offset||0,f)};d+=f}};b.top=function(c){var b=a.nodePadding,d=this.reduce(function(e,d){0<e&&(e+=b);d=Math.max(d.getSum()*c,a.options.minLinkWidth);return e+d},0);return(e.plotSizeY-d)/2};return b},createNodeColumns:function(){var a=[];this.nodes.forEach(function(c){var b=-1,e;if(!q(c.options.column))if(0===c.linksTo.length)c.column=0;else{for(e=
0;e<c.linksTo.length;e++){var d=c.linksTo[0];if(d.fromNode.column>b){var f=d.fromNode;b=f.column}}c.column=b+1;f&&"hanging"===f.options.layout&&(c.hangsFrom=f,e=-1,u(f.linksFrom,function(a,b){(a=a.toNode===c)&&(e=b);return a}),c.column+=e)}a[c.column]||(a[c.column]=this.createNodeColumn());a[c.column].push(c)},this);for(var b=0;b<a.length;b++)"undefined"===typeof a[b]&&(a[b]=this.createNodeColumn());return a},hasData:function(){return!!this.processedXData.length},pointAttribs:function(c,b){var e=
this,d=e.mapOptionsToLevel[(c.isNode?c.level:c.fromNode.level)||0]||{},g=c.options,w=d.states&&d.states[b]||{};b=["colorByPoint","borderColor","borderWidth","linkOpacity"].reduce(function(c,b){c[b]=a(w[b],g[b],d[b],e.options[b]);return c},{});var f=a(w.color,g.color,b.colorByPoint?c.color:d.color);return c.isNode?{fill:f,stroke:b.borderColor,"stroke-width":b.borderWidth}:{fill:h.parse(f).setOpacity(b.linkOpacity).get()}},generatePoints:function(){function a(c,b){"undefined"===typeof c.level&&(c.level=
b,c.linksFrom.forEach(function(c){c.toNode&&a(c.toNode,b+1)}))}b.NodesMixin.generatePoints.apply(this,arguments);this.orderNodes&&(this.nodes.filter(function(a){return 0===a.linksTo.length}).forEach(function(c){a(c,0)}),v(this.nodes,function(a,c){return a.level-c.level}))},translateNode:function(c,b){var e=this.translationFactor,m=this.chart,g=this.options,h=c.getSum(),f=Math.max(Math.round(h*e),this.options.minLinkWidth),p=Math.round(g.borderWidth)%2/2,t=b.offset(c,e);b=Math.floor(a(t.absoluteTop,
b.top(e)+t.relativeTop))+p;p=Math.floor(this.colDistance*c.column+g.borderWidth/2)+p;p=m.inverted?m.plotSizeX-p:p;e=Math.round(this.nodeWidth);(c.sum=h)?(c.shapeType="rect",c.nodeX=p,c.nodeY=b,c.shapeArgs=m.inverted?{x:p-e,y:m.plotSizeY-b-f,width:c.options.height||g.height||e,height:c.options.width||g.width||f}:{x:p,y:b,width:c.options.width||g.width||e,height:c.options.height||g.height||f},c.shapeArgs.display=c.hasShape()?"":"none",g=this.mapOptionsToLevel[c.level],h=c.options,h=r(h)?h.dataLabels:
{},g=r(g)?g.dataLabels:{},g=d({style:{}},g,h),c.dlOptions=g,c.plotY=1,c.tooltipPos=m.inverted?[m.plotSizeY-c.shapeArgs.y-c.shapeArgs.height/2,m.plotSizeX-c.shapeArgs.x-c.shapeArgs.width/2]:[c.shapeArgs.x+c.shapeArgs.width/2,c.shapeArgs.y+c.shapeArgs.height/2]):c.dlOptions={enabled:!1}},translateLink:function(a){var b=function(b,c){var d;c=b.offset(a,c)*h;return Math.min(b.nodeY+c,b.nodeY+(null===(d=b.shapeArgs)||void 0===d?void 0:d.height)-f)},c=a.fromNode,d=a.toNode,g=this.chart,h=this.translationFactor,
f=Math.max(a.weight*h,this.options.minLinkWidth),p=(g.inverted?-this.colDistance:this.colDistance)*this.options.curveFactor,t=b(c,"linksFrom");b=b(d,"linksTo");var k=c.nodeX,l=this.nodeWidth;d=d.column*this.colDistance;var n=a.outgoing,q=d>k;g.inverted&&(t=g.plotSizeY-t,b=g.plotSizeY-b,d=g.plotSizeX-d,l=-l,f=-f,q=k>d);a.shapeType="path";a.linkBase=[t,t+f,b,b+f];if(q)a.shapeArgs={d:["M",k+l,t,"C",k+l+p,t,d-p,b,d,b,"L",d+(n?l:0),b+f/2,"L",d,b+f,"C",d-p,b+f,k+l+p,t+f,k+l,t+f,"z"]};else{p=d-20-f;n=d-
20;q=d;var r=k+l,A=r+20,u=A+f,x=t,v=t+f,z=v+20,C=z+(g.plotHeight-t-f),y=C+20,E=y+f,F=b,D=F+f,G=D+20,H=y+.7*f,I=q-.7*f,J=r+.7*f;a.shapeArgs={d:["M",r,x,"C",J,x,u,v-.7*f,u,z,"L",u,C,"C",u,H,J,E,r,E,"L",q,E,"C",I,E,p,H,p,C,"L",p,G,"C",p,D-.7*f,I,F,q,F,"L",q,D,"C",n,D,n,D,n,G,"L",n,C,"C",n,y,n,y,q,y,"L",r,y,"C",A,y,A,y,A,C,"L",A,z,"C",A,v,A,v,r,v,"z"]}}a.dlBox={x:k+(d-k+l)/2,y:t+(b-t)/2,height:f,width:0};a.tooltipPos=g.inverted?[g.plotSizeY-a.dlBox.y-f/2,g.plotSizeX-a.dlBox.x]:[a.dlBox.x,a.dlBox.y+f/
2];a.y=a.plotY=1;a.color||(a.color=c.color)},translate:function(){var a=this,b=function(b){for(var c=b.slice(),e=a.options.minLinkWidth||0,f,k=0,l,p=h.plotSizeY-g.borderWidth-(b.length-1)*d.nodePadding;b.length;){k=p/b.sum();f=!1;for(l=b.length;l--;)b[l].getSum()*k<e&&(b.splice(l,1),p-=e+d.nodePadding,f=!0);if(!f)break}b.length=0;c.forEach(function(a){return b.push(a)});return k};this.processedXData||this.processData();this.generatePoints();this.nodeColumns=this.createNodeColumns();this.nodeWidth=
x(this.options.nodeWidth,this.chart.plotSizeX);var d=this,h=this.chart,g=this.options,k=this.nodeWidth,f=this.nodeColumns;this.nodePadding=this.getNodePadding();this.translationFactor=f.reduce(function(a,c){return Math.min(a,b(c))},Infinity);this.colDistance=(h.plotSizeX-k-g.borderWidth)/Math.max(1,f.length-1);d.mapOptionsToLevel=K({from:1,levels:g.levels,to:f.length-1,defaults:{borderColor:g.borderColor,borderRadius:g.borderRadius,borderWidth:g.borderWidth,color:d.color,colorByPoint:g.colorByPoint,
levelIsConstant:!0,linkColor:g.linkColor,linkLineWidth:g.linkLineWidth,linkOpacity:g.linkOpacity,states:g.states}});f.forEach(function(a){a.forEach(function(b){d.translateNode(b,a)})},this);this.nodes.forEach(function(a){a.linksFrom.forEach(function(a){(a.weight||a.isNull)&&a.to&&(d.translateLink(a),a.allowShadow=!1)})})},render:function(){var a=this.points;this.points=this.points.concat(this.nodes||[]);b.seriesTypes.column.prototype.render.call(this);this.points=a},animate:b.Series.prototype.animate},
{applyOptions:function(a,b){l.prototype.applyOptions.call(this,a,b);q(this.options.level)&&(this.options.column=this.column=this.options.level);return this},setState:b.NodesMixin.setNodeState,getClassName:function(){return(this.isNode?"highcharts-node ":"highcharts-link ")+l.prototype.getClassName.call(this)},isValid:function(){return this.isNode||"number"===typeof this.weight}});""});n(b,"masters/modules/sankey.src.js",[],function(){})});
//# sourceMappingURL=sankey.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Dependency wheel module

 (c) 2010-2018 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/dependency-wheel",["highcharts","highcharts/modules/sankey"],function(d){a(d);a.Highcharts=d;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function d(a,f,d,l){a.hasOwnProperty(f)||(a[f]=l.apply(null,d))}a=a?a._modules:{};d(a,"modules/dependency-wheel.src.js",[a["parts/Globals.js"],a["parts/Utilities.js"]],function(a,
d){var f=d.animObject;d=d.seriesType;var l=a.seriesTypes.sankey.prototype;d("dependencywheel","sankey",{center:[null,null],curveFactor:.6,startAngle:0},{orderNodes:!1,getCenter:a.seriesTypes.pie.prototype.getCenter,createNodeColumns:function(){var a=[this.createNodeColumn()];this.nodes.forEach(function(c){c.column=0;a[0].push(c)});return a},getNodePadding:function(){return this.options.nodePadding/Math.PI},createNode:function(a){var c=l.createNode.call(this,a);c.index=this.nodes.length-1;c.getSum=
function(){return c.linksFrom.concat(c.linksTo).reduce(function(a,c){return a+c.weight},0)};c.offset=function(a){function h(a){return a.fromNode===c?a.toNode:a.fromNode}var p=0,b,g=c.linksFrom.concat(c.linksTo);g.sort(function(a,c){return h(a).index-h(c).index});for(b=0;b<g.length;b++)if(h(g[b]).index>c.index){g=g.slice(0,b).reverse().concat(g.slice(b).reverse());var n=!0;break}n||g.reverse();for(b=0;b<g.length;b++){if(g[b]===a)return p;p+=g[b].weight}};return c},translate:function(){var d=this.options,
c=2*Math.PI/(this.chart.plotHeight+this.getNodePadding()),n=this.getCenter(),h=(d.startAngle-90)*a.deg2rad;l.translate.call(this);this.nodeColumns[0].forEach(function(a){if(a.sum){var b=a.shapeArgs,g=n[0],p=n[1],f=n[2]/2,k=f-d.nodeWidth,m=h+c*b.y;b=h+c*(b.y+b.height);a.angle=m+(b-m)/2;a.shapeType="arc";a.shapeArgs={x:g,y:p,r:f,innerR:k,start:m,end:b};a.dlBox={x:g+Math.cos((m+b)/2)*(f+k)/2,y:p+Math.sin((m+b)/2)*(f+k)/2,width:1,height:1};a.linksFrom.forEach(function(a){if(a.linkBase){var b,e=a.linkBase.map(function(e,
n){e*=c;var f=Math.cos(h+e)*(k+1),m=Math.sin(h+e)*(k+1),l=d.curveFactor;b=Math.abs(a.linkBase[3-n]*c-e);b>Math.PI&&(b=2*Math.PI-b);b*=k;b<k&&(l*=b/k);return{x:g+f,y:p+m,cpX:g+(1-l)*f,cpY:p+(1-l)*m}});a.shapeArgs={d:["M",e[0].x,e[0].y,"A",k,k,0,0,1,e[1].x,e[1].y,"C",e[1].cpX,e[1].cpY,e[2].cpX,e[2].cpY,e[2].x,e[2].y,"A",k,k,0,0,1,e[3].x,e[3].y,"C",e[3].cpX,e[3].cpY,e[0].cpX,e[0].cpY,e[0].x,e[0].y]}}})}})},animate:function(a){if(!a){var c=f(this.options.animation).duration/2/this.nodes.length;this.nodes.forEach(function(a,
h){var d=a.graphic;d&&(d.attr({opacity:0}),setTimeout(function(){d.animate({opacity:1},{duration:c})},c*h))},this);this.points.forEach(function(a){var c=a.graphic;!a.isNode&&c&&c.attr({opacity:0}).animate({opacity:1},this.options.animation)},this)}}},{setState:a.NodesMixin.setNodeState,getDataLabelPath:function(a){var c=this.series.chart.renderer,d=this.shapeArgs,h=0>this.angle||this.angle>Math.PI,f=d.start,b=d.end;this.dataLabelPath||(this.dataLabelPath=c.arc({open:!0}).add(a));this.dataLabelPath.attr({x:d.x,
y:d.y,r:d.r+(this.dataLabel.options.distance||0),start:h?f:b,end:h?b:f,clockwise:+h});return this.dataLabelPath},isValid:function(){return!0}});""});d(a,"masters/modules/dependency-wheel.src.js",[],function(){})});
//# sourceMappingURL=dependency-wheel.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Item series type for Highcharts

 (c) 2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/item-series",["highcharts"],function(d){b(d);b.Highcharts=d;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function d(b,c,d,D){b.hasOwnProperty(c)||(b[c]=D.apply(null,d))}b=b?b._modules:{};d(b,"modules/item-series.src.js",[b["parts/Globals.js"],b["parts/Utilities.js"]],function(b,c){var d=c.defined,D=c.extend,B=c.isNumber,
E=c.merge,F=c.objectEach,G=c.pick;c=c.seriesType;var H=b.fireEvent,m=b.seriesTypes.pie.prototype.pointClass.prototype;c("item","pie",{endAngle:void 0,innerSize:"40%",itemPadding:.1,layout:"vertical",marker:E(b.defaultOptions.plotOptions.line.marker,{radius:null}),rows:void 0,showInLegend:!0,startAngle:void 0},{markerAttribs:void 0,translate:function(){this.slots||(this.slots=[]);B(this.options.startAngle)&&B(this.options.endAngle)?(b.seriesTypes.pie.prototype.translate.call(this),this.slots=this.getSlots()):
(this.generatePoints(),H(this,"afterTranslate"))},getSlots:function(){function a(a){0<C&&(a.row.colCount--,C--)}for(var b=this.center,c=b[2],d=b[3],r,n=this.slots,t,y,u,v,w,e,k,x,g=0,p,z=this.endAngleRad-this.startAngleRad,q=Number.MAX_VALUE,A,l,h,f=this.options.rows,m=(c-d)/c;q>this.total;)for(A=q,q=n.length=0,l=h,h=[],g++,p=c/g/2,f?(d=(p-f)/p*c,0<=d?p=f:(d=0,m=1)):p=Math.floor(p*m),r=p;0<r;r--)u=(d+r/p*(c-d-g))/2,v=z*u,w=Math.ceil(v/g),h.push({rowRadius:u,rowLength:v,colCount:w}),q+=w+1;if(l){for(var C=
A-this.total;0<C;)l.map(function(a){return{angle:a.colCount/a.rowLength,row:a}}).sort(function(a,b){return b.angle-a.angle}).slice(0,Math.min(C,Math.ceil(l.length/2))).forEach(a);l.forEach(function(a){var c=a.rowRadius;e=(a=a.colCount)?z/a:0;for(x=0;x<=a;x+=1)k=this.startAngleRad+x*e,t=b[0]+Math.cos(k)*c,y=b[1]+Math.sin(k)*c,n.push({x:t,y:y,angle:k})},this);n.sort(function(a,b){return a.angle-b.angle});this.itemSize=g;return n}},getRows:function(){var a=this.options.rows;if(!a){var b=this.chart.plotWidth/
this.chart.plotHeight;a=Math.sqrt(this.total);if(1<b)for(a=Math.ceil(a);0<a;){var c=this.total/a;if(c/a>b)break;a--}else for(a=Math.floor(a);a<this.total;){c=this.total/a;if(c/a<b)break;a++}}return a},drawPoints:function(){var a=this,b=this.options,c=a.chart.renderer,m=b.marker,r=this.borderWidth%2?.5:1,n=0,t=this.getRows(),y=Math.ceil(this.total/t),u=this.chart.plotWidth/y,v=this.chart.plotHeight/t,w=this.itemSize||Math.min(u,v);this.points.forEach(function(e){var k,x,g=e.marker||{},p=g.symbol||
m.symbol;g=G(g.radius,m.radius);var z=d(g)?2*g:w,q=z*b.itemPadding,A;e.graphics=k=e.graphics||{};a.chart.styledMode||(x=a.pointAttribs(e,e.selected&&"select"));if(!e.isNull&&e.visible){e.graphic||(e.graphic=c.g("point").add(a.group));for(var l=0;l<e.y;l++){if(a.center&&a.slots){var h=a.slots.shift();var f=h.x-w/2;h=h.y-w/2}else"horizontal"===b.layout?(f=n%y*u,h=v*Math.floor(n/y)):(f=u*Math.floor(n/t),h=n%t*v);f+=q;h+=q;var B=A=Math.round(z-2*q);a.options.crisp&&(f=Math.round(f)-r,h=Math.round(h)+
r);f={x:f,y:h,width:A,height:B};"undefined"!==typeof g&&(f.r=g);k[l]?k[l].animate(f):k[l]=c.symbol(p,null,null,null,null,{backgroundSize:"within"}).attr(D(f,x)).add(e.graphic);k[l].isActive=!0;n++}}F(k,function(a,b){a.isActive?a.isActive=!1:(a.destroy(),delete k[b])})})},drawDataLabels:function(){this.center&&this.slots?b.seriesTypes.pie.prototype.drawDataLabels.call(this):this.points.forEach(function(a){a.destroyElements({dataLabel:1})})},animate:function(a){a?this.group.attr({opacity:0}):this.group.animate({opacity:1},
this.options.animation)}},{connectorShapes:m.connectorShapes,getConnectorPath:m.getConnectorPath,setVisible:m.setVisible,getTranslate:m.getTranslate});""});d(b,"masters/modules/item-series.src.js",[],function(){})});
//# sourceMappingURL=item-series.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)
 Organization chart series type

 (c) 2019-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/organization",["highcharts","highcharts/modules/sankey"],function(f){b(f);b.Highcharts=f;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function f(b,k,f,t){b.hasOwnProperty(k)||(b[k]=t.apply(null,f))}b=b?b._modules:{};f(b,"modules/organization.src.js",[b["parts/Globals.js"],b["parts/Utilities.js"]],function(b,f){var k=
f.css,t=f.pick,u=f.seriesType,v=f.wrap,r=b.seriesTypes.sankey.prototype;u("organization","sankey",{borderColor:"#666666",borderRadius:3,linkRadius:10,borderWidth:1,dataLabels:{nodeFormatter:function(){function a(a){return Object.keys(a).reduce(function(c,d){return c+d+":"+a[d]+";"},'style="')+'"'}var c={width:"100%",height:"100%",display:"flex","flex-direction":"row","align-items":"center","justify-content":"center"},e={"max-height":"100%","border-radius":"50%"},d={width:"100%",padding:0,"text-align":"center",
"white-space":"normal"},q={margin:0},b={margin:0},h={opacity:.75,margin:"5px"};this.point.image&&(e["max-width"]="30%",d.width="70%");this.series.chart.renderer.forExport&&(c.display="block",d.position="absolute",d.left=this.point.image?"30%":0,d.top=0);c="<div "+a(c)+">";this.point.image&&(c+='<img src="'+this.point.image+'" '+a(e)+">");c+="<div "+a(d)+">";this.point.name&&(c+="<h4 "+a(q)+">"+this.point.name+"</h4>");this.point.title&&(c+="<p "+a(b)+">"+(this.point.title||"")+"</p>");this.point.description&&
(c+="<p "+a(h)+">"+this.point.description+"</p>");return c+"</div></div>"},style:{fontWeight:"normal",fontSize:"13px"},useHTML:!0},hangingIndent:20,linkColor:"#666666",linkLineWidth:1,nodeWidth:50,tooltip:{nodeFormat:"{point.name}<br>{point.title}<br>{point.description}"}},{pointAttribs:function(a,c){var e=this,d=r.pointAttribs.call(e,a,c),q=e.mapOptionsToLevel[(a.isNode?a.level:a.fromNode.level)||0]||{},b=a.options,h=q.states&&q.states[c]||{};c=["borderRadius","linkColor","linkLineWidth"].reduce(function(a,
c){a[c]=t(h[c],b[c],q[c],e.options[c]);return a},{});a.isNode?c.borderRadius&&(d.r=c.borderRadius):(d.stroke=c.linkColor,d["stroke-width"]=c.linkLineWidth,delete d.fill);return d},createNode:function(a){a=r.createNode.call(this,a);a.getSum=function(){return 1};return a},createNodeColumn:function(){var a=r.createNodeColumn.call(this);v(a,"offset",function(a,e,d){a=a.call(this,e,d);return e.hangsFrom?{absoluteTop:e.hangsFrom.nodeY}:a});return a},translateNode:function(a,c){r.translateNode.call(this,
a,c);a.hangsFrom&&(a.shapeArgs.height-=this.options.hangingIndent,this.chart.inverted||(a.shapeArgs.y+=this.options.hangingIndent));a.nodeHeight=this.chart.inverted?a.shapeArgs.width:a.shapeArgs.height},curvedPath:function(a,c){var e=[],d;for(d=0;d<a.length;d++){var b=a[d][0];var g=a[d][1];if(0===d)e.push("M",b,g);else if(d===a.length-1)e.push("L",b,g);else if(c){var h=a[d-1][0];var f=a[d-1][1];var n=a[d+1][0];var l=a[d+1][1];if(h!==n&&f!==l){var m=h<n?1:-1;var p=f<l?1:-1;e.push("L",b-m*Math.min(Math.abs(b-
h),c),g-p*Math.min(Math.abs(g-f),c),"C",b,g,b,g,b+m*Math.min(Math.abs(b-n),c),g+p*Math.min(Math.abs(g-l),c))}}else e.push("L",b,g)}return e},translateLink:function(a){var c=a.fromNode,b=a.toNode,d=Math.round(this.options.linkLineWidth)%2/2,f=Math.floor(c.shapeArgs.x+c.shapeArgs.width)+d,g=Math.floor(c.shapeArgs.y+c.shapeArgs.height/2)+d,h=Math.floor(b.shapeArgs.x)+d,k=Math.floor(b.shapeArgs.y+b.shapeArgs.height/2)+d,n=this.options.hangingIndent;var l=b.options.offset;var m=/%$/.test(l)&&parseInt(l,
10),p=this.chart.inverted;p&&(f-=c.shapeArgs.width,h+=b.shapeArgs.width);l=Math.floor(h+(p?1:-1)*(this.colDistance-this.nodeWidth)/2)+d;m&&(50<=m||-50>=m)&&(l=h=Math.floor(h+(p?-.5:.5)*b.shapeArgs.width)+d,k=b.shapeArgs.y,0<m&&(k+=b.shapeArgs.height));b.hangsFrom===c&&(this.chart.inverted?(g=Math.floor(c.shapeArgs.y+c.shapeArgs.height-n/2)+d,k=b.shapeArgs.y+b.shapeArgs.height):g=Math.floor(c.shapeArgs.y+n/2)+d,l=h=Math.floor(b.shapeArgs.x+b.shapeArgs.width/2)+d);a.plotY=1;a.shapeType="path";a.shapeArgs=
{d:this.curvedPath([[f,g],[l,g],[l,k],[h,k]],this.options.linkRadius)}},alignDataLabel:function(a,c,f){if(f.useHTML){var d=a.shapeArgs.width,e=a.shapeArgs.height,g=this.options.borderWidth+2*this.options.dataLabels.padding;this.chart.inverted&&(d=e,e=a.shapeArgs.width);e-=g;d-=g;k(c.text.element.parentNode,{width:d+"px",height:e+"px"});k(c.text.element,{left:0,top:0,width:"100%",height:"100%",overflow:"hidden"});c.getBBox=function(){return{width:d,height:e}}}b.seriesTypes.column.prototype.alignDataLabel.apply(this,
arguments)}});""});f(b,"masters/modules/organization.src.js",[],function(){})});
//# sourceMappingURL=organization.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Timeline series

 (c) 2010-2019 Highsoft AS
 Author: Daniel Studencki

 License: www.highcharts.com/license
*/
(function(c){"object"===typeof module&&module.exports?(c["default"]=c,module.exports=c):"function"===typeof define&&define.amd?define("highcharts/modules/timeline",["highcharts"],function(l){c(l);c.Highcharts=l;return c}):c("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(c){function l(c,l,q,f){c.hasOwnProperty(l)||(c[l]=f.apply(null,q))}c=c?c._modules:{};l(c,"modules/timeline.src.js",[c["parts/Globals.js"],c["parts/Point.js"],c["mixins/legend-symbol.js"],c["parts/Utilities.js"]],function(c,
l,q,f){var p=f.addEvent,w=f.arrayMax,x=f.arrayMin,t=f.defined,y=f.isNumber,r=f.merge,z=f.objectEach,n=f.pick;f=f.seriesType;var m=c.Series,u=c.seriesTypes;f("timeline","line",{colorByPoint:!0,stickyTracking:!1,ignoreHiddenPoint:!0,legendType:"point",lineWidth:4,tooltip:{headerFormat:'<span style="color:{point.color}">\u25cf</span> <span style="font-size: 10px"> {point.key}</span><br/>',pointFormat:"{point.description}"},states:{hover:{lineWidthPlus:0}},dataLabels:{enabled:!0,allowOverlap:!0,alternate:!0,
backgroundColor:"#ffffff",borderWidth:1,borderColor:"#999999",borderRadius:3,color:"#333333",connectorWidth:1,distance:100,formatter:function(){var a=this.series.chart.styledMode?"<span>\u25cf </span>":'<span style="color:'+this.point.color+'">\u25cf </span>';return a+='<span class="highcharts-strong">'+(this.key||"")+"</span><br/>"+(this.point.label||"")},style:{textOutline:"none",fontWeight:"normal",fontSize:"12px"},shadow:!1,verticalAlign:"middle"},marker:{enabledThreshold:0,symbol:"square",radius:6,
lineWidth:2,height:15},showInLegend:!1,colorKey:"x"},{trackerGroups:["markerGroup","dataLabelsGroup"],drawLegendSymbol:q.drawRectangle,drawTracker:c.TrackerMixin.drawTrackerPoint,init:function(){var a=this;m.prototype.init.apply(a,arguments);p(a,"afterTranslate",function(){var b,k=Number.MAX_VALUE;a.points.forEach(function(a){a.isInside=a.isInside&&a.visible;a.visible&&!a.isNull&&(t(b)&&(k=Math.min(k,Math.abs(a.plotX-b))),b=a.plotX)});a.closestPointRangePx=k});p(a,"drawDataLabels",function(){a.distributeDL()});
p(a,"afterDrawDataLabels",function(){var b;a.points.forEach(function(a){if(b=a.dataLabel)return b.animate=function(a){this.targetPosition&&(this.targetPosition=a);return c.SVGElement.prototype.animate.apply(this,arguments)},b.targetPosition||(b.targetPosition={}),a.drawConnector()})});p(a.chart,"afterHideOverlappingLabel",function(){a.points.forEach(function(a){a.connector&&a.dataLabel&&a.dataLabel.oldOpacity!==a.dataLabel.newOpacity&&a.alignConnector()})})},alignDataLabel:function(a,b,k,c){var d=
this.chart.inverted,g=this.visibilityMap.filter(function(a){return a}),e=this.visiblePointsCount,h=g.indexOf(a);g=this.options.dataLabels;var v=a.userDLOptions||{};h=g.alternate?h&&h!==e-1?2:1.5:1;e=Math.floor(this.xAxis.len/e);var f=b.padding;if(a.visible){var l=Math.abs(v.x||a.options.dataLabels.x);d?(d=2*(l-f)-a.itemHeight/2,d={width:d,textOverflow:b.width/d*b.height/2>e*h?"ellipsis":"none"}):d={width:v.width||g.width||e*h-2*f};b.css(d);this.chart.styledMode||b.shadow(g.shadow)}m.prototype.alignDataLabel.apply(this,
arguments)},processData:function(){var a=0,b;this.visibilityMap=this.getVisibilityMap();this.visibilityMap.forEach(function(b){b&&a++});this.visiblePointsCount=a;for(b=0;b<this.xData.length;b++)this.yData[b]=1;m.prototype.processData.call(this,arguments)},getXExtremes:function(a){var b=this;a=a.filter(function(a,c){return b.points[c].isValid()&&b.points[c].visible});return{min:x(a),max:w(a)}},generatePoints:function(){var a=this;m.prototype.generatePoints.apply(a);a.points.forEach(function(b,k){b.applyOptions({x:a.xData[k]},
a.xData[k])})},getVisibilityMap:function(){return(this.data.length?this.data:this.userOptions.data).map(function(a){return a&&!1!==a.visible&&!a.isNull?a:!1})},distributeDL:function(){var a=this,b=a.options.dataLabels,k,c,d={},g=1,e=b.distance;a.points.forEach(function(h){h.visible&&!h.isNull&&(k=h.options,c=h.options.dataLabels,a.hasRendered||(h.userDLOptions=r({},c)),d[a.chart.inverted?"x":"y"]=b.alternate&&g%2?-e:e,k.dataLabels=r(d,h.userDLOptions),g++)})},markerAttribs:function(a,b){var k=this.options.marker,
c=a.marker||{},d=c.symbol||k.symbol,g=n(c.width,k.width,this.closestPointRangePx),e=n(c.height,k.height),h=0;if(this.xAxis.isDatetimeAxis)return u.line.prototype.markerAttribs.call(this,a,b);b&&(k=k.states[b]||{},b=c.states&&c.states[b]||{},h=n(b.radius,k.radius,h+(k.radiusPlus||0)));a.hasImage=d&&0===d.indexOf("url");return{x:Math.floor(a.plotX)-g/2-h/2,y:a.plotY-e/2-h/2,width:g+h,height:e+h}},bindAxes:function(){var a=this;m.prototype.bindAxes.call(a);["xAxis","yAxis"].forEach(function(b){"xAxis"!==
b||a[b].userOptions.type||(a[b].categories=a[b].hasNames=!0)})}},{init:function(){var a=l.prototype.init.apply(this,arguments);a.name=n(a.name,"Event");a.y=1;return a},isValid:function(){return null!==this.options.y},setVisible:function(a,b){var c=this.series;b=n(b,c.options.ignoreHiddenPoint);u.pie.prototype.pointClass.prototype.setVisible.call(this,a,!1);c.processData();b&&c.chart.redraw()},setState:function(){var a=m.prototype.pointClass.prototype.setState;this.isNull||a.apply(this,arguments)},
getConnectorPath:function(){var a=this.series.chart,b=this.series.xAxis.len,c=a.inverted,f=c?"x2":"y2",d=this.dataLabel,g=d.targetPosition,e={x1:this.plotX,y1:this.plotY,x2:this.plotX,y2:y(g.y)?g.y:d.y},h=(d.alignAttr||d)[f[0]]<this.series.yAxis.len/2;c&&(e={x1:this.plotY,y1:b-this.plotX,x2:g.x||d.x,y2:b-this.plotX});h&&(e[f]+=d[c?"width":"height"]);z(e,function(a,b){e[b]-=(d.alignAttr||d)[b[0]]});return a.renderer.crispLine(["M",e.x1,e.y1,"L",e.x2,e.y2],d.options.connectorWidth)},drawConnector:function(){var a=
this.series;this.connector||(this.connector=a.chart.renderer.path(this.getConnectorPath()).attr({zIndex:-1}).add(this.dataLabel));this.series.chart.isInsidePlot(this.dataLabel.x,this.dataLabel.y)&&this.alignConnector()},alignConnector:function(){var a=this.series,b=this.connector,c=this.dataLabel,f=this.dataLabel.options=r(a.options.dataLabels,this.options.dataLabels),d=this.series.chart,g=b.getBBox(),e=g.x+c.translateX;g=g.y+c.translateY;d.inverted?g-=c.options.connectorWidth/2:e+=c.options.connectorWidth/
2;d=d.isInsidePlot(e,g);b[d?"animate":"attr"]({d:this.getConnectorPath()});a.chart.styledMode||b.attr({stroke:f.connectorColor||this.color,"stroke-width":f.connectorWidth,opacity:c[t(c.newOpacity)?"newOpacity":"opacity"]})}});""});l(c,"masters/modules/timeline.src.js",[],function(){})});
//# sourceMappingURL=timeline.js.map
/*
 Highmaps JS v8.0.4 (2020-03-10)

 (c) 2009-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/heatmap",["highcharts"],function(p){a(p);a.Highcharts=p;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function p(a,m,h,u){a.hasOwnProperty(m)||(a[m]=u.apply(null,h))}a=a?a._modules:{};p(a,"parts-map/ColorSeriesMixin.js",[a["parts/Globals.js"]],function(a){a.colorPointMixin={setVisible:function(a){var h=this,n=a?"show":
"hide";h.visible=h.options.visible=!!a;["graphic","dataLabel"].forEach(function(a){if(h[a])h[a][n]()})}};a.colorSeriesMixin={optionalAxis:"colorAxis",colorAxis:0,translateColors:function(){var a=this,h=this.options.nullColor,n=this.colorAxis,p=this.colorKey;(this.data.length?this.data:this.points).forEach(function(g){var m=g.getNestedProperty(p);if(m=g.options.color||(g.isNull?h:n&&"undefined"!==typeof m?n.toColor(m,g):g.color||a.color))g.color=m})}}});p(a,"parts-map/ColorAxis.js",[a["parts/Globals.js"],
a["parts/Color.js"],a["parts/Point.js"],a["parts/Legend.js"],a["mixins/legend-symbol.js"],a["parts/Utilities.js"]],function(a,m,h,u,p,g){"";var n=m.parse;m=g.addEvent;var v=g.erase,r=g.extend,x=g.isNumber,t=g.merge,q=g.pick,l=g.splat,e=a.Axis;g=a.Chart;var w=a.Series,B=a.colorPointMixin,z=a.noop;r(w.prototype,a.colorSeriesMixin);r(h.prototype,B);g.prototype.collectionsWithUpdate.push("colorAxis");g.prototype.collectionsWithInit.colorAxis=[g.prototype.addColorAxis];var y=a.ColorAxis=function(){this.init.apply(this,
arguments)};r(y.prototype,e.prototype);r(y.prototype,{defaultColorAxisOptions:{lineWidth:0,minPadding:0,maxPadding:0,gridLineWidth:1,tickPixelInterval:72,startOnTick:!0,endOnTick:!0,offset:0,marker:{animation:{duration:50},width:.01,color:"#999999"},labels:{overflow:"justify",rotation:0},minColor:"#e6ebf5",maxColor:"#003399",tickLength:5,showInLegend:!0},keepProps:["legendGroup","legendItemHeight","legendItemWidth","legendItem","legendSymbol"].concat(e.prototype.keepProps),init:function(b,c){this.coll=
"colorAxis";var k=this.buildOptions.call(b,this.defaultColorAxisOptions,c);e.prototype.init.call(this,b,k);c.dataClasses&&this.initDataClasses(c);this.initStops();this.horiz=!k.opposite;this.zoomEnabled=!1;this.defaultLegendLength=200},initDataClasses:function(b){var c=this.chart,k,d=0,f=c.options.chart.colorCount,a=this.options,A=b.dataClasses.length;this.dataClasses=k=[];this.legendItems=[];b.dataClasses.forEach(function(b,e){b=t(b);k.push(b);if(c.styledMode||!b.color)"category"===a.dataClassColor?
(c.styledMode||(e=c.options.colors,f=e.length,b.color=e[d]),b.colorIndex=d,d++,d===f&&(d=0)):b.color=n(a.minColor).tweenTo(n(a.maxColor),2>A?.5:e/(A-1))})},hasData:function(){return!(!this.tickPositions||!this.tickPositions.length)},setTickPositions:function(){if(!this.dataClasses)return e.prototype.setTickPositions.call(this)},initStops:function(){this.stops=this.options.stops||[[0,this.options.minColor],[1,this.options.maxColor]];this.stops.forEach(function(b){b.color=n(b[1])})},buildOptions:function(b,
c){var k=this.options.legend,d=c.layout?"vertical"!==c.layout:"vertical"!==k.layout;return t(b,{side:d?2:1,reversed:!d},c,{opposite:!d,showEmpty:!1,title:null,visible:k.enabled&&(c?!1!==c.visible:!0)})},setOptions:function(b){e.prototype.setOptions.call(this,b);this.options.crosshair=this.options.marker},setAxisSize:function(){var b=this.legendSymbol,c=this.chart,k=c.options.legend||{},d,f;b?(this.left=k=b.attr("x"),this.top=d=b.attr("y"),this.width=f=b.attr("width"),this.height=b=b.attr("height"),
this.right=c.chartWidth-k-f,this.bottom=c.chartHeight-d-b,this.len=this.horiz?f:b,this.pos=this.horiz?k:d):this.len=(this.horiz?k.symbolWidth:k.symbolHeight)||this.defaultLegendLength},normalizedValue:function(b){this.isLog&&(b=this.val2lin(b));return 1-(this.max-b)/(this.max-this.min||1)},toColor:function(b,c){var k=this.stops,d=this.dataClasses,f;if(d)for(f=d.length;f--;){var a=d[f];var e=a.from;k=a.to;if(("undefined"===typeof e||b>=e)&&("undefined"===typeof k||b<=k)){var g=a.color;c&&(c.dataClass=
f,c.colorIndex=a.colorIndex);break}}else{b=this.normalizedValue(b);for(f=k.length;f--&&!(b>k[f][0]););e=k[f]||k[f+1];k=k[f+1]||e;b=1-(k[0]-b)/(k[0]-e[0]||1);g=e.color.tweenTo(k.color,b)}return g},getOffset:function(){var b=this.legendGroup,c=this.chart.axisOffset[this.side];b&&(this.axisParent=b,e.prototype.getOffset.call(this),this.added||(this.added=!0,this.labelLeft=0,this.labelRight=this.width),this.chart.axisOffset[this.side]=c)},setLegendColor:function(){var b=this.reversed;var c=b?1:0;b=b?
0:1;c=this.horiz?[c,0,b,0]:[0,b,0,c];this.legendColor={linearGradient:{x1:c[0],y1:c[1],x2:c[2],y2:c[3]},stops:this.stops}},drawLegendSymbol:function(b,c){var a=b.padding,d=b.options,f=this.horiz,e=q(d.symbolWidth,f?this.defaultLegendLength:12),g=q(d.symbolHeight,f?12:this.defaultLegendLength),l=q(d.labelPadding,f?16:30);d=q(d.itemDistance,10);this.setLegendColor();c.legendSymbol=this.chart.renderer.rect(0,b.baseline-11,e,g).attr({zIndex:1}).add(c.legendGroup);this.legendItemWidth=e+a+(f?d:l);this.legendItemHeight=
g+a+(f?l:0)},setState:function(b){this.series.forEach(function(c){c.setState(b)})},visible:!0,setVisible:z,getSeriesExtremes:function(){var b=this.series,c=b.length,a;this.dataMin=Infinity;for(this.dataMax=-Infinity;c--;){var d=b[c];var f=d.colorKey=q(d.options.colorKey,d.colorKey,d.pointValKey,d.zoneAxis,"y");var e=d.pointArrayMap;var g=d[f+"Min"]&&d[f+"Max"];if(d[f+"Data"])var l=d[f+"Data"];else if(e){l=[];e=e.indexOf(f);var h=d.yData;if(0<=e&&h)for(a=0;a<h.length;a++)l.push(q(h[a][e],h[a]))}else l=
d.yData;g?(d.minColorValue=d[f+"Min"],d.maxColorValue=d[f+"Max"]):(w.prototype.getExtremes.call(d,l),d.minColorValue=d.dataMin,d.maxColorValue=d.dataMax);"undefined"!==typeof d.minColorValue&&(this.dataMin=Math.min(this.dataMin,d.minColorValue),this.dataMax=Math.max(this.dataMax,d.maxColorValue));g||w.prototype.getExtremes.call(d)}},drawCrosshair:function(b,c){var a=c&&c.plotX,d=c&&c.plotY,f=this.pos,g=this.len;if(c){var l=this.toPixels(c.getNestedProperty(c.series.colorKey));l<f?l=f-2:l>f+g&&(l=
f+g+2);c.plotX=l;c.plotY=this.len-l;e.prototype.drawCrosshair.call(this,b,c);c.plotX=a;c.plotY=d;this.cross&&!this.cross.addedToColorAxis&&this.legendGroup&&(this.cross.addClass("highcharts-coloraxis-marker").add(this.legendGroup),this.cross.addedToColorAxis=!0,this.chart.styledMode||this.cross.attr({fill:this.crosshair.color}))}},getPlotLinePath:function(b){var c=b.translatedValue;return x(c)?this.horiz?["M",c-4,this.top-6,"L",c+4,this.top-6,c,this.top,"Z"]:["M",this.left,c,"L",this.left-6,c+6,this.left-
6,c-6,"Z"]:e.prototype.getPlotLinePath.apply(this,arguments)},update:function(b,c){var a=this.chart,d=a.legend,f=this.buildOptions.call(a,{},b);this.series.forEach(function(b){b.isDirtyData=!0});(b.dataClasses&&d.allItems||this.dataClasses)&&this.destroyItems();a.options[this.coll]=t(this.userOptions,f);e.prototype.update.call(this,f,c);this.legendItem&&(this.setLegendColor(),d.colorizeItem(this,!0))},destroyItems:function(){var b=this.chart;this.legendItem?b.legend.destroyItem(this):this.legendItems&&
this.legendItems.forEach(function(c){b.legend.destroyItem(c)});b.isDirtyLegend=!0},remove:function(b){this.destroyItems();e.prototype.remove.call(this,b)},getDataClassLegendSymbols:function(){var b=this,c=this.chart,a=this.legendItems,d=c.options.legend,f=d.valueDecimals,e=d.valueSuffix||"",l;a.length||this.dataClasses.forEach(function(d,k){var g=!0,h=d.from,n=d.to,m=c.numberFormatter;l="";"undefined"===typeof h?l="< ":"undefined"===typeof n&&(l="> ");"undefined"!==typeof h&&(l+=m(h,f)+e);"undefined"!==
typeof h&&"undefined"!==typeof n&&(l+=" - ");"undefined"!==typeof n&&(l+=m(n,f)+e);a.push(r({chart:c,name:l,options:{},drawLegendSymbol:p.drawRectangle,visible:!0,setState:z,isDataClass:!0,setVisible:function(){g=this.visible=!g;b.series.forEach(function(b){b.points.forEach(function(b){b.dataClass===k&&b.setVisible(g)})});c.legend.colorizeItem(this,g)}},d))});return a},beforePadding:!1,name:""});["fill","stroke"].forEach(function(b){a.Fx.prototype[b+"Setter"]=function(){this.elem.attr(b,n(this.start).tweenTo(n(this.end),
this.pos),null,!0)}});m(g,"afterGetAxes",function(){var b=this,c=b.options;this.colorAxis=[];c.colorAxis&&(c.colorAxis=l(c.colorAxis),c.colorAxis.forEach(function(c,a){c.index=a;new y(b,c)}))});m(w,"bindAxes",function(){var b=this.axisTypes;b?-1===b.indexOf("colorAxis")&&b.push("colorAxis"):this.axisTypes=["colorAxis"]});m(u,"afterGetAllItems",function(b){var c=[],a,d;(this.chart.colorAxis||[]).forEach(function(d){(a=d.options)&&a.showInLegend&&(a.dataClasses&&a.visible?c=c.concat(d.getDataClassLegendSymbols()):
a.visible&&c.push(d),d.series.forEach(function(c){if(!c.options.showInLegend||a.dataClasses)"point"===c.options.legendType?c.points.forEach(function(c){v(b.allItems,c)}):v(b.allItems,c)}))});for(d=c.length;d--;)b.allItems.unshift(c[d])});m(u,"afterColorizeItem",function(b){b.visible&&b.item.legendColor&&b.item.legendSymbol.attr({fill:b.item.legendColor})});m(u,"afterUpdate",function(){var b=this.chart.colorAxis;b&&b.forEach(function(b,a,d){b.update({},d)})});m(w,"afterTranslate",function(){(this.chart.colorAxis&&
this.chart.colorAxis.length||this.colorAttribs)&&this.translateColors()})});p(a,"parts-map/ColorMapSeriesMixin.js",[a["parts/Globals.js"],a["parts/Point.js"],a["parts/Utilities.js"]],function(a,m,h){var n=h.defined;h=a.noop;var p=a.seriesTypes;a.colorMapPointMixin={dataLabelOnNull:!0,isValid:function(){return null!==this.value&&Infinity!==this.value&&-Infinity!==this.value},setState:function(a){m.prototype.setState.call(this,a);this.graphic&&this.graphic.attr({zIndex:"hover"===a?1:0})}};a.colorMapSeriesMixin=
{pointArrayMap:["value"],axisTypes:["xAxis","yAxis","colorAxis"],trackerGroups:["group","markerGroup","dataLabelsGroup"],getSymbol:h,parallelArrays:["x","y","value"],colorKey:"value",pointAttribs:p.column.prototype.pointAttribs,colorAttribs:function(a){var g={};n(a.color)&&(g[this.colorProp||"fill"]=a.color);return g}}});p(a,"parts-map/HeatmapSeries.js",[a["parts/Globals.js"],a["mixins/legend-symbol.js"],a["parts/Utilities.js"]],function(a,m,h){var n=h.clamp,p=h.extend,g=h.fireEvent,C=h.merge,v=h.pick;
h=h.seriesType;var r=a.colorMapPointMixin,x=a.noop,t=a.Series,q=a.seriesTypes;h("heatmap","scatter",{animation:!1,borderWidth:0,nullColor:"#f7f7f7",dataLabels:{formatter:function(){return this.point.value},inside:!0,verticalAlign:"middle",crop:!1,overflow:!1,padding:0},marker:null,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}<br/>"},states:{hover:{halo:!1,brightness:.2}}},C(a.colorMapSeriesMixin,{pointArrayMap:["y","value"],hasPointSpecificOptions:!0,getExtremesFromAll:!0,
directTouch:!0,init:function(){q.scatter.prototype.init.apply(this,arguments);var a=this.options;a.pointRange=v(a.pointRange,a.colsize||1);this.yAxis.axisPointRange=a.rowsize||1},translate:function(){this.generatePoints();var a=this.options,e=a.colsize,h=a.pointPadding,m=void 0===h?0:h;a=a.rowsize;h=this.points;var p=this.xAxis,q=this.yAxis,b=(void 0===e?1:e)/2,c=(void 0===a?1:a)/2,k=this.pointPlacementToXValue(),d=function(a){return Math.round(n(p.translate(a,!1,!1,!1,!0,k),0,p.len))};h.forEach(function(a){var e=
d(a.x-b),f=d(a.x+b),g=Math.round(n(q.translate(a.y-c,!1,!0,!1,!0),0,q.len)),h=Math.round(n(q.translate(a.y+c,!1,!0,!1,!0),0,q.len)),l=v(a.pointPadding,m);a.plotX=a.clientX=(e+f)/2;a.plotY=(g+h)/2;a.shapeType="rect";a.shapeArgs={x:Math.min(e,f)+l,y:Math.min(g,h)+l,width:Math.max(Math.abs(f-e)-2*l,0),height:Math.max(Math.abs(h-g)-2*l,0)}});g(this,"afterTranslate")},drawPoints:function(){var a=this.chart.styledMode?"css":"animate";q.column.prototype.drawPoints.call(this);this.points.forEach(function(e){e.graphic[a](this.colorAttribs(e))},
this)},hasData:function(){return!!this.processedXData.length},getValidPoints:function(a,e){return t.prototype.getValidPoints.call(this,a,e,!0)},animate:x,getBox:x,drawLegendSymbol:m.drawRectangle,alignDataLabel:q.column.prototype.alignDataLabel,getExtremes:function(){t.prototype.getExtremes.call(this,this.valueData);this.valueMin=this.dataMin;this.valueMax=this.dataMax;t.prototype.getExtremes.call(this)}}),p({haloPath:function(a){if(!a)return[];var e=this.shapeArgs;return["M",e.x-a,e.y-a,"L",e.x-
a,e.y+e.height+a,e.x+e.width+a,e.y+e.height+a,e.x+e.width+a,e.y-a,"Z"]}},r));""});p(a,"masters/modules/heatmap.src.js",[],function(){})});
//# sourceMappingURL=heatmap.js.map
/*
 Highmaps JS v8.0.4 (2020-03-10)

 Tilemap module

 (c) 2010-2019 Highsoft AS

 License: www.highcharts.com/license
*/
(function(d){"object"===typeof module&&module.exports?(d["default"]=d,module.exports=d):"function"===typeof define&&define.amd?define("highcharts/modules/tilemap",["highcharts","highcharts/modules/map"],function(f){d(f);d.Highcharts=f;return d}):d("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(d){function f(d,e,f,v){d.hasOwnProperty(e)||(d[e]=v.apply(null,f))}d=d?d._modules:{};f(d,"modules/tilemap.src.js",[d["parts/Globals.js"],d["parts/Utilities.js"]],function(d,e){function f(a,b,
c){a=a.options;return{xPad:(a.colsize||1)/-b,yPad:(a.rowsize||1)/-c}}"";var v=e.addEvent,h=e.clamp,y=e.extend,x=e.pick;e=e.seriesType;d.tileShapeTypes={hexagon:{alignDataLabel:d.seriesTypes.scatter.prototype.alignDataLabel,getSeriesPadding:function(a){return f(a,3,2)},haloPath:function(a){if(!a)return[];var b=this.tileEdges;return["M",b.x2-a,b.y1+a,"L",b.x3+a,b.y1+a,b.x4+1.5*a,b.y2,b.x3+a,b.y3-a,b.x2-a,b.y3-a,b.x1-1.5*a,b.y2,"Z"]},translate:function(){var a=this.options,b=this.xAxis,c=this.yAxis,
d=a.pointPadding||0,w=(a.colsize||1)/3,f=(a.rowsize||1)/2,n;this.generatePoints();this.points.forEach(function(a){var t=h(Math.floor(b.len-b.translate(a.x-2*w,0,1,0,1)),-b.len,2*b.len),k=h(Math.floor(b.len-b.translate(a.x-w,0,1,0,1)),-b.len,2*b.len),q=h(Math.floor(b.len-b.translate(a.x+w,0,1,0,1)),-b.len,2*b.len),u=h(Math.floor(b.len-b.translate(a.x+2*w,0,1,0,1)),-b.len,2*b.len),r=h(Math.floor(c.translate(a.y-f,0,1,0,1)),-c.len,2*c.len),g=h(Math.floor(c.translate(a.y,0,1,0,1)),-c.len,2*c.len),l=h(Math.floor(c.translate(a.y+
f,0,1,0,1)),-c.len,2*c.len),m=x(a.pointPadding,d),p=m*Math.abs(k-t)/Math.abs(l-g);p=b.reversed?-p:p;var e=b.reversed?-m:m;m=c.reversed?-m:m;a.x%2&&(n=n||Math.round(Math.abs(l-r)/2)*(c.reversed?-1:1),r+=n,g+=n,l+=n);a.plotX=a.clientX=(k+q)/2;a.plotY=g;t+=p+e;k+=e;q-=e;u-=p+e;r-=m;l+=m;a.tileEdges={x1:t,x2:k,x3:q,x4:u,y1:r,y2:g,y3:l};a.shapeType="path";a.shapeArgs={d:["M",k,r,"L",q,r,u,g,q,l,k,l,t,g,"Z"]}});this.translateColors()}},diamond:{alignDataLabel:d.seriesTypes.scatter.prototype.alignDataLabel,
getSeriesPadding:function(a){return f(a,2,2)},haloPath:function(a){if(!a)return[];var b=this.tileEdges;return["M",b.x2,b.y1+a,"L",b.x3+a,b.y2,b.x2,b.y3-a,b.x1-a,b.y2,"Z"]},translate:function(){var a=this.options,b=this.xAxis,c=this.yAxis,d=a.pointPadding||0,e=a.colsize||1,f=(a.rowsize||1)/2,n;this.generatePoints();this.points.forEach(function(a){var p=h(Math.round(b.len-b.translate(a.x-e,0,1,0,0)),-b.len,2*b.len),k=h(Math.round(b.len-b.translate(a.x,0,1,0,0)),-b.len,2*b.len),q=h(Math.round(b.len-
b.translate(a.x+e,0,1,0,0)),-b.len,2*b.len),u=h(Math.round(c.translate(a.y-f,0,1,0,0)),-c.len,2*c.len),r=h(Math.round(c.translate(a.y,0,1,0,0)),-c.len,2*c.len),g=h(Math.round(c.translate(a.y+f,0,1,0,0)),-c.len,2*c.len),l=x(a.pointPadding,d),m=l*Math.abs(k-p)/Math.abs(g-r);m=b.reversed?-m:m;l=c.reversed?-l:l;a.x%2&&(n=Math.abs(g-u)/2*(c.reversed?-1:1),u+=n,r+=n,g+=n);a.plotX=a.clientX=k;a.plotY=r;p+=m;q-=m;u-=l;g+=l;a.tileEdges={x1:p,x2:k,x3:q,y1:u,y2:r,y3:g};a.shapeType="path";a.shapeArgs={d:["M",
k,u,"L",q,r,k,g,p,r,"Z"]}});this.translateColors()}},circle:{alignDataLabel:d.seriesTypes.scatter.prototype.alignDataLabel,getSeriesPadding:function(a){return f(a,2,2)},haloPath:function(a){return d.seriesTypes.scatter.prototype.pointClass.prototype.haloPath.call(this,a+(a&&this.radius))},translate:function(){var a=this.options,b=this.xAxis,c=this.yAxis,d=a.pointPadding||0,e=(a.rowsize||1)/2,f=a.colsize||1,n,t,v,k,q=!1;this.generatePoints();this.points.forEach(function(a){var p=h(Math.round(b.len-
b.translate(a.x,0,1,0,0)),-b.len,2*b.len),g=h(Math.round(c.translate(a.y,0,1,0,0)),-c.len,2*c.len),l=d,m=!1;"undefined"!==typeof a.pointPadding&&(l=a.pointPadding,q=m=!0);if(!k||q)n=Math.abs(h(Math.floor(b.len-b.translate(a.x+f,0,1,0,0)),-b.len,2*b.len)-p),t=Math.abs(h(Math.floor(c.translate(a.y+e,0,1,0,0)),-c.len,2*c.len)-g),v=Math.floor(Math.sqrt(n*n+t*t)/2),k=Math.min(n,v,t)-l,q&&!m&&(q=!1);a.x%2&&(g+=t*(c.reversed?-1:1));a.plotX=a.clientX=p;a.plotY=g;a.radius=k;a.shapeType="circle";a.shapeArgs=
{x:p,y:g,r:k}});this.translateColors()}},square:{alignDataLabel:d.seriesTypes.heatmap.prototype.alignDataLabel,translate:d.seriesTypes.heatmap.prototype.translate,getSeriesPadding:function(){},haloPath:d.seriesTypes.heatmap.prototype.pointClass.prototype.haloPath}};v(d.Axis,"afterSetAxisTranslation",function(){if(!this.recomputingForTilemap&&"colorAxis"!==this.coll){var a=this,b=a.series.map(function(b){return b.getSeriesPixelPadding&&b.getSeriesPixelPadding(a)}).reduce(function(a,b){return(a&&a.padding)>
(b&&b.padding)?a:b},void 0)||{padding:0,axisLengthFactor:1},c=Math.round(b.padding*b.axisLengthFactor);b.padding&&(a.len-=c,a.recomputingForTilemap=!0,a.setAxisTranslation(),delete a.recomputingForTilemap,a.minPixelPadding+=b.padding,a.len+=c)}});e("tilemap","heatmap",{states:{hover:{halo:{enabled:!0,size:2,opacity:.5,attributes:{zIndex:3}}}},pointPadding:2,tileShape:"hexagon"},{setOptions:function(){var a=d.seriesTypes.heatmap.prototype.setOptions.apply(this,Array.prototype.slice.call(arguments));
this.tileShape=d.tileShapeTypes[a.tileShape];return a},alignDataLabel:function(){return this.tileShape.alignDataLabel.apply(this,Array.prototype.slice.call(arguments))},getSeriesPixelPadding:function(a){var b=a.isXAxis,c=this.tileShape.getSeriesPadding(this);if(!c)return{padding:0,axisLengthFactor:1};var d=Math.round(a.translate(b?2*c.xPad:c.yPad,0,1,0,1));a=Math.round(a.translate(b?c.xPad:0,0,1,0,1));return{padding:Math.abs(d-a)||0,axisLengthFactor:b?2:1.1}},translate:function(){return this.tileShape.translate.apply(this,
Array.prototype.slice.call(arguments))}},y({haloPath:function(){return this.series.tileShape.haloPath.apply(this,Array.prototype.slice.call(arguments))}},d.colorPointMixin));""});f(d,"masters/modules/tilemap.src.js",[],function(){})});
//# sourceMappingURL=tilemap.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Highcharts Drilldown module

 Author: Torstein Honsi
 License: www.highcharts.com/license

*/
(function(c){"object"===typeof module&&module.exports?(c["default"]=c,module.exports=c):"function"===typeof define&&define.amd?define("highcharts/modules/drilldown",["highcharts"],function(m){c(m);c.Highcharts=m;return c}):c("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(c){function m(c,m,u,x){c.hasOwnProperty(m)||(c[m]=x.apply(null,u))}c=c?c._modules:{};m(c,"modules/drilldown.src.js",[c["parts/Globals.js"],c["parts/Color.js"],c["parts/Point.js"],c["parts/Tick.js"],c["parts/Utilities.js"]],
function(c,m,u,x,l){var n=l.addEvent,A=l.animObject,t=l.extend,y=l.fireEvent,E=l.format,v=l.merge,B=l.objectEach,w=l.pick,F=l.syncTimeout,G=c.noop;l=c.defaultOptions;var p=c.Chart,r=c.seriesTypes,C=r.pie;r=r.column;var D=1;t(l.lang,{drillUpText:"\u25c1 Back to {series.name}"});l.drilldown={activeAxisLabelStyle:{cursor:"pointer",color:"#003399",fontWeight:"bold",textDecoration:"underline"},activeDataLabelStyle:{cursor:"pointer",color:"#003399",fontWeight:"bold",textDecoration:"underline"},animation:{duration:500},
drillUpButton:{position:{align:"right",x:-10,y:10}}};c.SVGRenderer.prototype.Element.prototype.fadeIn=function(a){this.attr({opacity:.1,visibility:"inherit"}).animate({opacity:w(this.newOpacity,1)},a||{duration:250})};p.prototype.addSeriesAsDrilldown=function(a,b){this.addSingleSeriesAsDrilldown(a,b);this.applyDrilldown()};p.prototype.addSingleSeriesAsDrilldown=function(a,b){var d=a.series,f=d.xAxis,e=d.yAxis,g=[],h=[],q;var k=this.styledMode?{colorIndex:w(a.colorIndex,d.colorIndex)}:{color:a.color||
d.color};this.drilldownLevels||(this.drilldownLevels=[]);var c=d.options._levelNumber||0;(q=this.drilldownLevels[this.drilldownLevels.length-1])&&q.levelNumber!==c&&(q=void 0);b=t(t({_ddSeriesId:D++},k),b);var l=d.points.indexOf(a);d.chart.series.forEach(function(a){a.xAxis!==f||a.isDrilling||(a.options._ddSeriesId=a.options._ddSeriesId||D++,a.options._colorIndex=a.userOptions._colorIndex,a.options._levelNumber=a.options._levelNumber||c,q?(g=q.levelSeries,h=q.levelSeriesOptions):(g.push(a),a.purgedOptions=
v({_ddSeriesId:a.options._ddSeriesId,_levelNumber:a.options._levelNumber,selected:a.options.selected},a.userOptions),h.push(a.purgedOptions)))});a=t({levelNumber:c,seriesOptions:d.options,seriesPurgedOptions:d.purgedOptions,levelSeriesOptions:h,levelSeries:g,shapeArgs:a.shapeArgs,bBox:a.graphic?a.graphic.getBBox():{},color:a.isNull?(new m(k.color)).setOpacity(0).get():k.color,lowerSeriesOptions:b,pointOptions:d.options.data[l],pointIndex:l,oldExtremes:{xMin:f&&f.userMin,xMax:f&&f.userMax,yMin:e&&
e.userMin,yMax:e&&e.userMax},resetZoomButton:this.resetZoomButton},k);this.drilldownLevels.push(a);f&&f.names&&(f.names.length=0);b=a.lowerSeries=this.addSeries(b,!1);b.options._levelNumber=c+1;f&&(f.oldPos=f.pos,f.userMin=f.userMax=null,e.userMin=e.userMax=null);d.type===b.type&&(b.animate=b.animateDrilldown||G,b.options.animation=!0)};p.prototype.applyDrilldown=function(){var a=this.drilldownLevels;if(a&&0<a.length){var b=a[a.length-1].levelNumber;this.drilldownLevels.forEach(function(a){a.levelNumber===
b&&a.levelSeries.forEach(function(a){a.options&&a.options._levelNumber===b&&a.remove(!1)})})}this.resetZoomButton&&(this.resetZoomButton.hide(),delete this.resetZoomButton);this.pointer.reset();this.redraw();this.showDrillUpButton();y(this,"afterDrilldown")};p.prototype.getDrilldownBackText=function(){var a=this.drilldownLevels;if(a&&0<a.length)return a=a[a.length-1],a.series=a.seriesOptions,E(this.options.lang.drillUpText,a)};p.prototype.showDrillUpButton=function(){var a=this,b=this.getDrilldownBackText(),
d=a.options.drilldown.drillUpButton,f;if(this.drillUpButton)this.drillUpButton.attr({text:b}).align();else{var e=(f=d.theme)&&f.states;this.drillUpButton=this.renderer.button(b,null,null,function(){a.drillUp()},f,e&&e.hover,e&&e.select).addClass("highcharts-drillup-button").attr({align:d.position.align,zIndex:7}).add().align(d.position,!1,d.relativeTo||"plotBox")}};p.prototype.drillUp=function(){if(this.drilldownLevels&&0!==this.drilldownLevels.length){for(var a=this,b=a.drilldownLevels,d=b[b.length-
1].levelNumber,f=b.length,e=a.series,g,h,c,k,l=function(b){e.forEach(function(a){a.options._ddSeriesId===b._ddSeriesId&&(d=a)});var d=d||a.addSeries(b,!1);d.type===c.type&&d.animateDrillupTo&&(d.animate=d.animateDrillupTo);b===h.seriesPurgedOptions&&(k=d)};f--;)if(h=b[f],h.levelNumber===d){b.pop();c=h.lowerSeries;if(!c.chart)for(g=e.length;g--;)if(e[g].options.id===h.lowerSeriesOptions.id&&e[g].options._levelNumber===d+1){c=e[g];break}c.xData=[];h.levelSeriesOptions.forEach(l);y(a,"drillup",{seriesOptions:h.seriesPurgedOptions||
h.seriesOptions});k.type===c.type&&(k.drilldownLevel=h,k.options.animation=a.options.drilldown.animation,c.animateDrillupFrom&&c.chart&&c.animateDrillupFrom(h));k.options._levelNumber=d;c.remove(!1);k.xAxis&&(g=h.oldExtremes,k.xAxis.setExtremes(g.xMin,g.xMax,!1),k.yAxis.setExtremes(g.yMin,g.yMax,!1));h.resetZoomButton&&(a.resetZoomButton=h.resetZoomButton,a.resetZoomButton.show())}this.redraw();0===this.drilldownLevels.length?this.drillUpButton=this.drillUpButton.destroy():this.drillUpButton.attr({text:this.getDrilldownBackText()}).align();
this.ddDupes.length=[];y(a,"drillupall")}};n(p,"afterInit",function(){var a=this;a.drilldown={update:function(b,d){v(!0,a.options.drilldown,b);w(d,!0)&&a.redraw()}}});n(p,"beforeShowResetZoom",function(){if(this.drillUpButton)return!1});n(p,"render",function(){(this.xAxis||[]).forEach(function(a){a.ddPoints={};a.series.forEach(function(b){var d,f=b.xData||[],e=b.points;for(d=0;d<f.length;d++){var c=b.options.data[d];"number"!==typeof c&&(c=b.pointClass.prototype.optionsToObject.call({series:b},c),
c.drilldown&&(a.ddPoints[f[d]]||(a.ddPoints[f[d]]=[]),a.ddPoints[f[d]].push(e?e[d]:!0)))}});B(a.ticks,x.prototype.drillable)})});r.prototype.animateDrillupTo=function(a){if(!a){var b=this,d=b.drilldownLevel;this.points.forEach(function(a){var b=a.dataLabel;a.graphic&&a.graphic.hide();b&&(b.hidden="hidden"===b.attr("visibility"),b.hidden||(b.hide(),a.connector&&a.connector.hide()))});F(function(){b.points&&b.points.forEach(function(a,b){b=b===(d&&d.pointIndex)?"show":"fadeIn";var f="show"===b?!0:void 0,
c=a.dataLabel;if(a.graphic)a.graphic[b](f);c&&!c.hidden&&(c.fadeIn(),a.connector&&a.connector.fadeIn())})},Math.max(this.chart.options.drilldown.animation.duration-50,0));delete this.animate}};r.prototype.animateDrilldown=function(a){var b=this,d=this.chart,f=d.drilldownLevels,c,g=A(d.options.drilldown.animation),h=this.xAxis,q=d.styledMode;a||(f.forEach(function(a){b.options._ddSeriesId===a.lowerSeriesOptions._ddSeriesId&&(c=a.shapeArgs,q||(c.fill=a.color))}),c.x+=w(h.oldPos,h.pos)-h.pos,this.points.forEach(function(a){var d=
a.shapeArgs;q||(d.fill=a.color);a.graphic&&a.graphic.attr(c).animate(t(a.shapeArgs,{fill:a.color||b.color}),g);a.dataLabel&&a.dataLabel.fadeIn(g)}),delete this.animate)};r.prototype.animateDrillupFrom=function(a){var b=A(this.chart.options.drilldown.animation),d=this.group,c=d!==this.chart.columnGroup,e=this;e.trackerGroups.forEach(function(a){if(e[a])e[a].on("mouseover")});c&&delete this.group;this.points.forEach(function(f){var h=f.graphic,g=a.shapeArgs,k=function(){h.destroy();d&&c&&(d=d.destroy())};
h&&(delete f.graphic,e.chart.styledMode||(g.fill=a.color),b.duration?h.animate(g,v(b,{complete:k})):(h.attr(g),k()))})};C&&t(C.prototype,{animateDrillupTo:r.prototype.animateDrillupTo,animateDrillupFrom:r.prototype.animateDrillupFrom,animateDrilldown:function(a){var b=this.chart.drilldownLevels[this.chart.drilldownLevels.length-1],d=this.chart.options.drilldown.animation,c=b.shapeArgs,e=c.start,g=(c.end-e)/this.points.length,h=this.chart.styledMode;a||(this.points.forEach(function(a,f){var k=a.shapeArgs;
h||(c.fill=b.color,k.fill=a.color);if(a.graphic)a.graphic.attr(v(c,{start:e+f*g,end:e+(f+1)*g}))[d?"animate":"attr"](k,d)}),delete this.animate)}});u.prototype.doDrilldown=function(a,b,d){var c=this.series.chart,e=c.options.drilldown,g=(e.series||[]).length;c.ddDupes||(c.ddDupes=[]);for(;g--&&!h;)if(e.series[g].id===this.drilldown&&-1===c.ddDupes.indexOf(this.drilldown)){var h=e.series[g];c.ddDupes.push(this.drilldown)}y(c,"drilldown",{point:this,seriesOptions:h,category:b,originalEvent:d,points:"undefined"!==
typeof b&&this.series.xAxis.getDDPoints(b).slice(0)},function(b){var d=b.point.series&&b.point.series.chart,c=b.seriesOptions;d&&c&&(a?d.addSingleSeriesAsDrilldown(b.point,c):d.addSeriesAsDrilldown(b.point,c))})};c.Axis.prototype.drilldownCategory=function(a,b){B(this.getDDPoints(a),function(d){d&&d.series&&d.series.visible&&d.doDrilldown&&d.doDrilldown(!0,a,b)});this.chart.applyDrilldown()};c.Axis.prototype.getDDPoints=function(a){return this.ddPoints&&this.ddPoints[a]};x.prototype.drillable=function(){var a=
this.pos,b=this.label,d=this.axis,c="xAxis"===d.coll&&d.getDDPoints,e=c&&d.getDDPoints(a),g=d.chart.styledMode;c&&(b&&e&&e.length?(b.drillable=!0,b.basicStyles||g||(b.basicStyles=v(b.styles)),b.addClass("highcharts-drilldown-axis-label"),b.removeOnDrillableClick=n(b.element,"click",function(b){d.drilldownCategory(a,b)}),g||b.css(d.chart.options.drilldown.activeAxisLabelStyle)):b&&b.removeOnDrillableClick&&(g||(b.styles={},b.css(b.basicStyles)),b.removeOnDrillableClick(),b.removeClass("highcharts-drilldown-axis-label")))};
n(u,"afterInit",function(){var a=this,b=a.series;a.drilldown&&n(a,"click",function(c){b.xAxis&&!1===b.chart.options.drilldown.allowPointDrilldown?b.xAxis.drilldownCategory(a.x,c):a.doDrilldown(void 0,void 0,c)});return a});n(c.Series,"afterDrawDataLabels",function(){var a=this.chart.options.drilldown.activeDataLabelStyle,b=this.chart.renderer,c=this.chart.styledMode;this.points.forEach(function(d){var e=d.options.dataLabels,f=w(d.dlOptions,e&&e.style,{});d.drilldown&&d.dataLabel&&("contrast"!==a.color||
c||(f.color=b.getContrast(d.color||this.color)),e&&e.color&&(f.color=e.color),d.dataLabel.addClass("highcharts-drilldown-data-label"),c||d.dataLabel.css(a).css(f))},this)});var z=function(a,b,c,f){a[c?"addClass":"removeClass"]("highcharts-drilldown-point");f||a.css({cursor:b})};n(c.Series,"afterDrawTracker",function(){var a=this.chart.styledMode;this.points.forEach(function(b){b.drilldown&&b.graphic&&z(b.graphic,"pointer",!0,a)})});n(u,"afterSetState",function(){var a=this.series.chart.styledMode;
this.drilldown&&this.series.halo&&"hover"===this.state?z(this.series.halo,"pointer",!0,a):this.series.halo&&z(this.series.halo,"auto",!1,a)})});m(c,"masters/modules/drilldown.src.js",[],function(){})});
//# sourceMappingURL=drilldown.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 ColorAxis module

 (c) 2012-2019 Pawel Potaczek

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/color-axis",["highcharts"],function(m){b(m);b.Highcharts=m;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function m(b,e,w,n){b.hasOwnProperty(e)||(b[e]=n.apply(null,w))}b=b?b._modules:{};m(b,"parts-map/ColorSeriesMixin.js",[b["parts/Globals.js"]],function(b){b.colorPointMixin={setVisible:function(b){var e=this,n=b?
"show":"hide";e.visible=e.options.visible=!!b;["graphic","dataLabel"].forEach(function(b){if(e[b])e[b][n]()})}};b.colorSeriesMixin={optionalAxis:"colorAxis",colorAxis:0,translateColors:function(){var b=this,v=this.options.nullColor,n=this.colorAxis,m=this.colorKey;(this.data.length?this.data:this.points).forEach(function(g){var e=g.getNestedProperty(m);if(e=g.options.color||(g.isNull?v:n&&"undefined"!==typeof e?n.toColor(e,g):g.color||b.color))g.color=e})}}});m(b,"parts-map/ColorAxis.js",[b["parts/Globals.js"],
b["parts/Color.js"],b["parts/Point.js"],b["parts/Legend.js"],b["mixins/legend-symbol.js"],b["parts/Utilities.js"]],function(b,e,m,n,B,g){"";var r=e.parse;e=g.addEvent;var z=g.erase,t=g.extend,v=g.isNumber,x=g.merge,q=g.pick,w=g.splat,p=b.Axis;g=b.Chart;var u=b.Series,C=b.colorPointMixin,A=b.noop;t(u.prototype,b.colorSeriesMixin);t(m.prototype,C);g.prototype.collectionsWithUpdate.push("colorAxis");g.prototype.collectionsWithInit.colorAxis=[g.prototype.addColorAxis];var y=b.ColorAxis=function(){this.init.apply(this,
arguments)};t(y.prototype,p.prototype);t(y.prototype,{defaultColorAxisOptions:{lineWidth:0,minPadding:0,maxPadding:0,gridLineWidth:1,tickPixelInterval:72,startOnTick:!0,endOnTick:!0,offset:0,marker:{animation:{duration:50},width:.01,color:"#999999"},labels:{overflow:"justify",rotation:0},minColor:"#e6ebf5",maxColor:"#003399",tickLength:5,showInLegend:!0},keepProps:["legendGroup","legendItemHeight","legendItemWidth","legendItem","legendSymbol"].concat(p.prototype.keepProps),init:function(a,c){this.coll=
"colorAxis";var h=this.buildOptions.call(a,this.defaultColorAxisOptions,c);p.prototype.init.call(this,a,h);c.dataClasses&&this.initDataClasses(c);this.initStops();this.horiz=!h.opposite;this.zoomEnabled=!1;this.defaultLegendLength=200},initDataClasses:function(a){var c=this.chart,h,d=0,l=c.options.chart.colorCount,b=this.options,f=a.dataClasses.length;this.dataClasses=h=[];this.legendItems=[];a.dataClasses.forEach(function(a,k){a=x(a);h.push(a);if(c.styledMode||!a.color)"category"===b.dataClassColor?
(c.styledMode||(k=c.options.colors,l=k.length,a.color=k[d]),a.colorIndex=d,d++,d===l&&(d=0)):a.color=r(b.minColor).tweenTo(r(b.maxColor),2>f?.5:k/(f-1))})},hasData:function(){return!(!this.tickPositions||!this.tickPositions.length)},setTickPositions:function(){if(!this.dataClasses)return p.prototype.setTickPositions.call(this)},initStops:function(){this.stops=this.options.stops||[[0,this.options.minColor],[1,this.options.maxColor]];this.stops.forEach(function(a){a.color=r(a[1])})},buildOptions:function(a,
c){var h=this.options.legend,d=c.layout?"vertical"!==c.layout:"vertical"!==h.layout;return x(a,{side:d?2:1,reversed:!d},c,{opposite:!d,showEmpty:!1,title:null,visible:h.enabled&&(c?!1!==c.visible:!0)})},setOptions:function(a){p.prototype.setOptions.call(this,a);this.options.crosshair=this.options.marker},setAxisSize:function(){var a=this.legendSymbol,c=this.chart,h=c.options.legend||{},d,b;a?(this.left=h=a.attr("x"),this.top=d=a.attr("y"),this.width=b=a.attr("width"),this.height=a=a.attr("height"),
this.right=c.chartWidth-h-b,this.bottom=c.chartHeight-d-a,this.len=this.horiz?b:a,this.pos=this.horiz?h:d):this.len=(this.horiz?h.symbolWidth:h.symbolHeight)||this.defaultLegendLength},normalizedValue:function(a){this.isLog&&(a=this.val2lin(a));return 1-(this.max-a)/(this.max-this.min||1)},toColor:function(a,c){var h=this.stops,d=this.dataClasses,b;if(d)for(b=d.length;b--;){var k=d[b];var f=k.from;h=k.to;if(("undefined"===typeof f||a>=f)&&("undefined"===typeof h||a<=h)){var e=k.color;c&&(c.dataClass=
b,c.colorIndex=k.colorIndex);break}}else{a=this.normalizedValue(a);for(b=h.length;b--&&!(a>h[b][0]););f=h[b]||h[b+1];h=h[b+1]||f;a=1-(h[0]-a)/(h[0]-f[0]||1);e=f.color.tweenTo(h.color,a)}return e},getOffset:function(){var a=this.legendGroup,c=this.chart.axisOffset[this.side];a&&(this.axisParent=a,p.prototype.getOffset.call(this),this.added||(this.added=!0,this.labelLeft=0,this.labelRight=this.width),this.chart.axisOffset[this.side]=c)},setLegendColor:function(){var a=this.reversed;var c=a?1:0;a=a?
0:1;c=this.horiz?[c,0,a,0]:[0,a,0,c];this.legendColor={linearGradient:{x1:c[0],y1:c[1],x2:c[2],y2:c[3]},stops:this.stops}},drawLegendSymbol:function(a,c){var b=a.padding,d=a.options,l=this.horiz,k=q(d.symbolWidth,l?this.defaultLegendLength:12),f=q(d.symbolHeight,l?12:this.defaultLegendLength),e=q(d.labelPadding,l?16:30);d=q(d.itemDistance,10);this.setLegendColor();c.legendSymbol=this.chart.renderer.rect(0,a.baseline-11,k,f).attr({zIndex:1}).add(c.legendGroup);this.legendItemWidth=k+b+(l?d:e);this.legendItemHeight=
f+b+(l?e:0)},setState:function(a){this.series.forEach(function(c){c.setState(a)})},visible:!0,setVisible:A,getSeriesExtremes:function(){var a=this.series,c=a.length,b;this.dataMin=Infinity;for(this.dataMax=-Infinity;c--;){var d=a[c];var l=d.colorKey=q(d.options.colorKey,d.colorKey,d.pointValKey,d.zoneAxis,"y");var k=d.pointArrayMap;var f=d[l+"Min"]&&d[l+"Max"];if(d[l+"Data"])var e=d[l+"Data"];else if(k){e=[];k=k.indexOf(l);var g=d.yData;if(0<=k&&g)for(b=0;b<g.length;b++)e.push(q(g[b][k],g[b]))}else e=
d.yData;f?(d.minColorValue=d[l+"Min"],d.maxColorValue=d[l+"Max"]):(u.prototype.getExtremes.call(d,e),d.minColorValue=d.dataMin,d.maxColorValue=d.dataMax);"undefined"!==typeof d.minColorValue&&(this.dataMin=Math.min(this.dataMin,d.minColorValue),this.dataMax=Math.max(this.dataMax,d.maxColorValue));f||u.prototype.getExtremes.call(d)}},drawCrosshair:function(a,c){var b=c&&c.plotX,d=c&&c.plotY,e=this.pos,k=this.len;if(c){var f=this.toPixels(c.getNestedProperty(c.series.colorKey));f<e?f=e-2:f>e+k&&(f=
e+k+2);c.plotX=f;c.plotY=this.len-f;p.prototype.drawCrosshair.call(this,a,c);c.plotX=b;c.plotY=d;this.cross&&!this.cross.addedToColorAxis&&this.legendGroup&&(this.cross.addClass("highcharts-coloraxis-marker").add(this.legendGroup),this.cross.addedToColorAxis=!0,this.chart.styledMode||this.cross.attr({fill:this.crosshair.color}))}},getPlotLinePath:function(a){var c=a.translatedValue;return v(c)?this.horiz?["M",c-4,this.top-6,"L",c+4,this.top-6,c,this.top,"Z"]:["M",this.left,c,"L",this.left-6,c+6,this.left-
6,c-6,"Z"]:p.prototype.getPlotLinePath.apply(this,arguments)},update:function(a,c){var b=this.chart,d=b.legend,e=this.buildOptions.call(b,{},a);this.series.forEach(function(a){a.isDirtyData=!0});(a.dataClasses&&d.allItems||this.dataClasses)&&this.destroyItems();b.options[this.coll]=x(this.userOptions,e);p.prototype.update.call(this,e,c);this.legendItem&&(this.setLegendColor(),d.colorizeItem(this,!0))},destroyItems:function(){var a=this.chart;this.legendItem?a.legend.destroyItem(this):this.legendItems&&
this.legendItems.forEach(function(c){a.legend.destroyItem(c)});a.isDirtyLegend=!0},remove:function(a){this.destroyItems();p.prototype.remove.call(this,a)},getDataClassLegendSymbols:function(){var a=this,c=this.chart,b=this.legendItems,d=c.options.legend,e=d.valueDecimals,k=d.valueSuffix||"",f;b.length||this.dataClasses.forEach(function(d,h){var g=!0,l=d.from,m=d.to,n=c.numberFormatter;f="";"undefined"===typeof l?f="< ":"undefined"===typeof m&&(f="> ");"undefined"!==typeof l&&(f+=n(l,e)+k);"undefined"!==
typeof l&&"undefined"!==typeof m&&(f+=" - ");"undefined"!==typeof m&&(f+=n(m,e)+k);b.push(t({chart:c,name:f,options:{},drawLegendSymbol:B.drawRectangle,visible:!0,setState:A,isDataClass:!0,setVisible:function(){g=this.visible=!g;a.series.forEach(function(a){a.points.forEach(function(a){a.dataClass===h&&a.setVisible(g)})});c.legend.colorizeItem(this,g)}},d))});return b},beforePadding:!1,name:""});["fill","stroke"].forEach(function(a){b.Fx.prototype[a+"Setter"]=function(){this.elem.attr(a,r(this.start).tweenTo(r(this.end),
this.pos),null,!0)}});e(g,"afterGetAxes",function(){var a=this,c=a.options;this.colorAxis=[];c.colorAxis&&(c.colorAxis=w(c.colorAxis),c.colorAxis.forEach(function(c,b){c.index=b;new y(a,c)}))});e(u,"bindAxes",function(){var a=this.axisTypes;a?-1===a.indexOf("colorAxis")&&a.push("colorAxis"):this.axisTypes=["colorAxis"]});e(n,"afterGetAllItems",function(a){var c=[],b,d;(this.chart.colorAxis||[]).forEach(function(d){(b=d.options)&&b.showInLegend&&(b.dataClasses&&b.visible?c=c.concat(d.getDataClassLegendSymbols()):
b.visible&&c.push(d),d.series.forEach(function(c){if(!c.options.showInLegend||b.dataClasses)"point"===c.options.legendType?c.points.forEach(function(b){z(a.allItems,b)}):z(a.allItems,c)}))});for(d=c.length;d--;)a.allItems.unshift(c[d])});e(n,"afterColorizeItem",function(a){a.visible&&a.item.legendColor&&a.item.legendSymbol.attr({fill:a.item.legendColor})});e(n,"afterUpdate",function(){var a=this.chart.colorAxis;a&&a.forEach(function(a,b,d){a.update({},d)})});e(u,"afterTranslate",function(){(this.chart.colorAxis&&
this.chart.colorAxis.length||this.colorAttribs)&&this.translateColors()})});m(b,"masters/modules/coloraxis.src.js",[],function(){})});
//# sourceMappingURL=coloraxis.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 3D features for Highcharts JS

 License: www.highcharts.com/license
*/
(function(q){"object"===typeof module&&module.exports?(q["default"]=q,module.exports=q):"function"===typeof define&&define.amd?define("highcharts/highcharts-3d",["highcharts"],function(B){q(B);q.Highcharts=B;return q}):q("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(q){function B(b,k,v,q){b.hasOwnProperty(k)||(b[k]=q.apply(null,v))}q=q?q._modules:{};B(q,"parts-3d/Math.js",[q["parts/Globals.js"],q["parts/Utilities.js"]],function(b,k){var v=k.pick,q=b.deg2rad;b.perspective3D=function(b,
k,w){k=0<w&&w<Number.POSITIVE_INFINITY?w/(b.z+k.z+w):1;return{x:b.x*k,y:b.y*k}};b.perspective=function(k,z,w,x){var t=z.options.chart.options3d,h=v(x,w?z.inverted:!1),u={x:z.plotWidth/2,y:z.plotHeight/2,z:t.depth/2,vd:v(t.depth,1)*v(t.viewDistance,0)},r=z.scale3d||1;x=q*t.beta*(h?-1:1);t=q*t.alpha*(h?-1:1);var a=Math.cos(t),f=Math.cos(-x),p=Math.sin(t),l=Math.sin(-x);w||(u.x+=z.plotLeft,u.y+=z.plotTop);return k.map(function(d){var c=(h?d.y:d.x)-u.x;var m=(h?d.x:d.y)-u.y;d=(d.z||0)-u.z;c={x:f*c-l*
d,y:-p*l*c+a*m-f*p*d,z:a*l*c+p*m+a*f*d};m=b.perspective3D(c,u,u.vd);m.x=m.x*r+u.x;m.y=m.y*r+u.y;m.z=c.z*r+u.z;return{x:h?m.y:m.x,y:h?m.x:m.y,z:m.z}})};b.pointCameraDistance=function(b,k){var w=k.options.chart.options3d,x=k.plotWidth/2;k=k.plotHeight/2;w=v(w.depth,1)*v(w.viewDistance,0)+w.depth;return Math.sqrt(Math.pow(x-v(b.plotX,b.x),2)+Math.pow(k-v(b.plotY,b.y),2)+Math.pow(w-v(b.plotZ,b.z),2))};b.shapeArea=function(b){var k=0,w;for(w=0;w<b.length;w++){var x=(w+1)%b.length;k+=b[w].x*b[x].y-b[x].x*
b[w].y}return k/2};b.shapeArea3d=function(k,v,w){return b.shapeArea(b.perspective(k,v,w))}});B(q,"parts-3d/SVGRenderer.js",[q["parts/Globals.js"],q["parts/Utilities.js"]],function(b,k){function v(a,d,e,D,g,f,m,r){var n=[],E=f-g;return f>g&&f-g>Math.PI/2+.0001?(n=n.concat(v(a,d,e,D,g,g+Math.PI/2,m,r)),n=n.concat(v(a,d,e,D,g+Math.PI/2,f,m,r))):f<g&&g-f>Math.PI/2+.0001?(n=n.concat(v(a,d,e,D,g,g-Math.PI/2,m,r)),n=n.concat(v(a,d,e,D,g-Math.PI/2,f,m,r))):["C",a+e*Math.cos(g)-e*c*E*Math.sin(g)+m,d+D*Math.sin(g)+
D*c*E*Math.cos(g)+r,a+e*Math.cos(f)+e*c*E*Math.sin(f)+m,d+D*Math.sin(f)-D*c*E*Math.cos(f)+r,a+e*Math.cos(f)+m,d+D*Math.sin(f)+r]}var q=k.animObject,t=k.defined,z=k.extend,w=k.merge,x=k.objectEach,A=k.pick,h=Math.cos,u=Math.PI,r=Math.sin,a=b.charts,f=b.color,p=b.deg2rad,l=b.perspective,d=b.SVGElement;k=b.SVGRenderer;var c=4*(Math.sqrt(2)-1)/3/(u/2);k.prototype.toLinePath=function(a,d){var e=[];a.forEach(function(a){e.push("L",a.x,a.y)});a.length&&(e[0]="M",d&&e.push("Z"));return e};k.prototype.toLineSegments=
function(a){var d=[],e=!0;a.forEach(function(a){d.push(e?"M":"L",a.x,a.y);e=!e});return d};k.prototype.face3d=function(c){var n=this,e=this.createElement("path");e.vertexes=[];e.insidePlotArea=!1;e.enabled=!0;e.attr=function(e){if("object"===typeof e&&(t(e.enabled)||t(e.vertexes)||t(e.insidePlotArea))){this.enabled=A(e.enabled,this.enabled);this.vertexes=A(e.vertexes,this.vertexes);this.insidePlotArea=A(e.insidePlotArea,this.insidePlotArea);delete e.enabled;delete e.vertexes;delete e.insidePlotArea;
var c=l(this.vertexes,a[n.chartIndex],this.insidePlotArea),g=n.toLinePath(c,!0);c=b.shapeArea(c);c=this.enabled&&0<c?"visible":"hidden";e.d=g;e.visibility=c}return d.prototype.attr.apply(this,arguments)};e.animate=function(e){if("object"===typeof e&&(t(e.enabled)||t(e.vertexes)||t(e.insidePlotArea))){this.enabled=A(e.enabled,this.enabled);this.vertexes=A(e.vertexes,this.vertexes);this.insidePlotArea=A(e.insidePlotArea,this.insidePlotArea);delete e.enabled;delete e.vertexes;delete e.insidePlotArea;
var c=l(this.vertexes,a[n.chartIndex],this.insidePlotArea),g=n.toLinePath(c,!0);c=b.shapeArea(c);c=this.enabled&&0<c?"visible":"hidden";e.d=g;this.attr("visibility",c)}return d.prototype.animate.apply(this,arguments)};return e.attr(c)};k.prototype.polyhedron=function(a){var c=this,e=this.g(),n=e.destroy;this.styledMode||e.attr({"stroke-linejoin":"round"});e.faces=[];e.destroy=function(){for(var a=0;a<e.faces.length;a++)e.faces[a].destroy();return n.call(this)};e.attr=function(a,n,g,f){if("object"===
typeof a&&t(a.faces)){for(;e.faces.length>a.faces.length;)e.faces.pop().destroy();for(;e.faces.length<a.faces.length;)e.faces.push(c.face3d().add(e));for(var m=0;m<a.faces.length;m++)c.styledMode&&delete a.faces[m].fill,e.faces[m].attr(a.faces[m],null,g,f);delete a.faces}return d.prototype.attr.apply(this,arguments)};e.animate=function(a,n,g){if(a&&a.faces){for(;e.faces.length>a.faces.length;)e.faces.pop().destroy();for(;e.faces.length<a.faces.length;)e.faces.push(c.face3d().add(e));for(var f=0;f<
a.faces.length;f++)e.faces[f].animate(a.faces[f],n,g);delete a.faces}return d.prototype.animate.apply(this,arguments)};return e.attr(a)};var m={initArgs:function(a){var d=this,e=d.renderer,c=e[d.pathType+"Path"](a),n=c.zIndexes;d.parts.forEach(function(a){d[a]=e.path(c[a]).attr({"class":"highcharts-3d-"+a,zIndex:n[a]||0}).add(d)});d.attr({"stroke-linejoin":"round",zIndex:n.group});d.originalDestroy=d.destroy;d.destroy=d.destroyParts},singleSetterForParts:function(a,d,e,c,g,f){var n={};c=[null,null,
c||"attr",g,f];var m=e&&e.zIndexes;e?(m&&m.group&&this.attr({zIndex:m.group}),x(e,function(d,c){n[c]={};n[c][a]=d;m&&(n[c].zIndex=e.zIndexes[c]||0)}),c[1]=n):(n[a]=d,c[0]=n);return this.processParts.apply(this,c)},processParts:function(a,d,e,c,g){var n=this;n.parts.forEach(function(f){d&&(a=A(d[f],!1));if(!1!==a)n[f][e](a,c,g)});return n},destroyParts:function(){this.processParts(null,null,"destroy");return this.originalDestroy()}};var g=w(m,{parts:["front","top","side"],pathType:"cuboid",attr:function(a,
c,e,g){if("string"===typeof a&&"undefined"!==typeof c){var n=a;a={};a[n]=c}return a.shapeArgs||t(a.x)?this.singleSetterForParts("d",null,this.renderer[this.pathType+"Path"](a.shapeArgs||a)):d.prototype.attr.call(this,a,void 0,e,g)},animate:function(a,c,e){t(a.x)&&t(a.y)?(a=this.renderer[this.pathType+"Path"](a),this.singleSetterForParts("d",null,a,"animate",c,e),this.attr({zIndex:a.zIndexes.group})):d.prototype.animate.call(this,a,c,e);return this},fillSetter:function(a){this.singleSetterForParts("fill",
null,{front:a,top:f(a).brighten(.1).get(),side:f(a).brighten(-.1).get()});this.color=this.fill=a;return this}});k.prototype.elements3d={base:m,cuboid:g};k.prototype.element3d=function(a,c){var e=this.g();z(e,this.elements3d[a]);e.initArgs(c);return e};k.prototype.cuboid=function(a){return this.element3d("cuboid",a)};b.SVGRenderer.prototype.cuboidPath=function(c){function d(a){return 0===m&&1<a&&6>a?{x:w[a].x,y:w[a].y+10,z:w[a].z}:w[a]}function e(a){return w[a]}var g=c.x,f=c.y,n=c.z,m=c.height,r=c.width,
u=c.depth,p=a[this.chartIndex],k=p.options.chart.options3d.alpha,h=0,w=[{x:g,y:f,z:n},{x:g+r,y:f,z:n},{x:g+r,y:f+m,z:n},{x:g,y:f+m,z:n},{x:g,y:f+m,z:n+u},{x:g+r,y:f+m,z:n+u},{x:g+r,y:f,z:n+u},{x:g,y:f,z:n+u}];w=l(w,p,c.insidePlotArea);var x=function(a,c){var g=[[],-1],f=a.map(e),n=c.map(e);a=a.map(d);c=c.map(d);0>b.shapeArea(a)?g=[f,0]:0>b.shapeArea(c)&&(g=[n,1]);return g};var v=x([3,2,1,0],[7,6,5,4]);c=v[0];u=v[1];v=x([1,6,7,0],[4,5,2,3]);r=v[0];var t=v[1];v=x([1,2,5,6],[0,7,4,3]);x=v[0];v=v[1];
1===v?h+=1E6*(p.plotWidth-g):v||(h+=1E6*g);h+=10*(!t||0<=k&&180>=k||360>k&&357.5<k?p.plotHeight-f:10+f);1===u?h+=100*n:u||(h+=100*(1E3-n));return{front:this.toLinePath(c,!0),top:this.toLinePath(r,!0),side:this.toLinePath(x,!0),zIndexes:{group:Math.round(h)},isFront:u,isTop:t}};b.SVGRenderer.prototype.arc3d=function(a){function c(a){var c=!1,e={},d;a=w(a);for(d in a)-1!==n.indexOf(d)&&(e[d]=a[d],delete a[d],c=!0);return c?e:!1}var e=this.g(),g=e.renderer,n="x y r innerR start end depth".split(" ");
a=w(a);a.alpha=(a.alpha||0)*p;a.beta=(a.beta||0)*p;e.top=g.path();e.side1=g.path();e.side2=g.path();e.inn=g.path();e.out=g.path();e.onAdd=function(){var a=e.parentGroup,c=e.attr("class");e.top.add(e);["out","inn","side1","side2"].forEach(function(d){e[d].attr({"class":c+" highcharts-3d-side"}).add(a)})};["addClass","removeClass"].forEach(function(a){e[a]=function(){var c=arguments;["top","out","inn","side1","side2"].forEach(function(d){e[d][a].apply(e[d],c)})}});e.setPaths=function(a){var c=e.renderer.arc3dPath(a),
d=100*c.zTop;e.attribs=a;e.top.attr({d:c.top,zIndex:c.zTop});e.inn.attr({d:c.inn,zIndex:c.zInn});e.out.attr({d:c.out,zIndex:c.zOut});e.side1.attr({d:c.side1,zIndex:c.zSide1});e.side2.attr({d:c.side2,zIndex:c.zSide2});e.zIndex=d;e.attr({zIndex:d});a.center&&(e.top.setRadialReference(a.center),delete a.center)};e.setPaths(a);e.fillSetter=function(a){var c=f(a).brighten(-.1).get();this.fill=a;this.side1.attr({fill:c});this.side2.attr({fill:c});this.inn.attr({fill:c});this.out.attr({fill:c});this.top.attr({fill:a});
return this};["opacity","translateX","translateY","visibility"].forEach(function(a){e[a+"Setter"]=function(a,c){e[c]=a;["out","inn","side1","side2","top"].forEach(function(d){e[d].attr(c,a)})}});e.attr=function(a){var g;"object"===typeof a&&(g=c(a))&&(z(e.attribs,g),e.setPaths(e.attribs));return d.prototype.attr.apply(e,arguments)};e.animate=function(a,g,f){var n=this.attribs,m="data-"+Math.random().toString(26).substring(2,9);delete a.center;delete a.z;delete a.alpha;delete a.beta;var r=q(A(g,this.renderer.globalAnimation));
if(r.duration){var l=c(a);e[m]=0;a[m]=1;e[m+"Setter"]=b.noop;l&&(r.step=function(a,c){function e(a){return n[a]+(A(l[a],n[a])-n[a])*c.pos}c.prop===m&&c.elem.setPaths(w(n,{x:e("x"),y:e("y"),r:e("r"),innerR:e("innerR"),start:e("start"),end:e("end"),depth:e("depth")}))});g=r}return d.prototype.animate.call(this,a,g,f)};e.destroy=function(){this.top.destroy();this.out.destroy();this.inn.destroy();this.side1.destroy();this.side2.destroy();return d.prototype.destroy.call(this)};e.hide=function(){this.top.hide();
this.out.hide();this.inn.hide();this.side1.hide();this.side2.hide()};e.show=function(a){this.top.show(a);this.out.show(a);this.inn.show(a);this.side1.show(a);this.side2.show(a)};return e};k.prototype.arc3dPath=function(a){function c(a){a%=2*Math.PI;a>Math.PI&&(a=2*Math.PI-a);return a}var e=a.x,d=a.y,g=a.start,f=a.end-.00001,m=a.r,n=a.innerR||0,l=a.depth||0,b=a.alpha,p=a.beta,k=Math.cos(g),w=Math.sin(g);a=Math.cos(f);var x=Math.sin(f),t=m*Math.cos(p);m*=Math.cos(b);var A=n*Math.cos(p),q=n*Math.cos(b);
n=l*Math.sin(p);var y=l*Math.sin(b);l=["M",e+t*k,d+m*w];l=l.concat(v(e,d,t,m,g,f,0,0));l=l.concat(["L",e+A*a,d+q*x]);l=l.concat(v(e,d,A,q,f,g,0,0));l=l.concat(["Z"]);var z=0<p?Math.PI/2:0;p=0<b?0:Math.PI/2;z=g>-z?g:f>-z?-z:g;var B=f<u-p?f:g<u-p?u-p:f,C=2*u-p;b=["M",e+t*h(z),d+m*r(z)];b=b.concat(v(e,d,t,m,z,B,0,0));f>C&&g<C?(b=b.concat(["L",e+t*h(B)+n,d+m*r(B)+y]),b=b.concat(v(e,d,t,m,B,C,n,y)),b=b.concat(["L",e+t*h(C),d+m*r(C)]),b=b.concat(v(e,d,t,m,C,f,0,0)),b=b.concat(["L",e+t*h(f)+n,d+m*r(f)+y]),
b=b.concat(v(e,d,t,m,f,C,n,y)),b=b.concat(["L",e+t*h(C),d+m*r(C)]),b=b.concat(v(e,d,t,m,C,B,0,0))):f>u-p&&g<u-p&&(b=b.concat(["L",e+t*Math.cos(B)+n,d+m*Math.sin(B)+y]),b=b.concat(v(e,d,t,m,B,f,n,y)),b=b.concat(["L",e+t*Math.cos(f),d+m*Math.sin(f)]),b=b.concat(v(e,d,t,m,f,B,0,0)));b=b.concat(["L",e+t*Math.cos(B)+n,d+m*Math.sin(B)+y]);b=b.concat(v(e,d,t,m,B,z,n,y));b=b.concat(["Z"]);p=["M",e+A*k,d+q*w];p=p.concat(v(e,d,A,q,g,f,0,0));p=p.concat(["L",e+A*Math.cos(f)+n,d+q*Math.sin(f)+y]);p=p.concat(v(e,
d,A,q,f,g,n,y));p=p.concat(["Z"]);k=["M",e+t*k,d+m*w,"L",e+t*k+n,d+m*w+y,"L",e+A*k+n,d+q*w+y,"L",e+A*k,d+q*w,"Z"];e=["M",e+t*a,d+m*x,"L",e+t*a+n,d+m*x+y,"L",e+A*a+n,d+q*x+y,"L",e+A*a,d+q*x,"Z"];x=Math.atan2(y,-n);d=Math.abs(f+x);a=Math.abs(g+x);g=Math.abs((g+f)/2+x);d=c(d);a=c(a);g=c(g);g*=1E5;f=1E5*a;d*=1E5;return{top:l,zTop:1E5*Math.PI+1,out:b,zOut:Math.max(g,f,d),inn:p,zInn:Math.max(g,f,d),side1:k,zSide1:.99*d,side2:e,zSide2:.99*f}}});B(q,"parts-3d/Chart.js",[q["parts/Globals.js"],q["parts/Utilities.js"]],
function(b,k){function v(b,r){var a=b.plotLeft,f=b.plotWidth+a,p=b.plotTop,l=b.plotHeight+p,d=a+b.plotWidth/2,c=p+b.plotHeight/2,m=Number.MAX_VALUE,g=-Number.MAX_VALUE,n=Number.MAX_VALUE,u=-Number.MAX_VALUE,e=1;var k=[{x:a,y:p,z:0},{x:a,y:p,z:r}];[0,1].forEach(function(a){k.push({x:f,y:k[a].y,z:k[a].z})});[0,1,2,3].forEach(function(a){k.push({x:k[a].x,y:l,z:k[a].z})});k=A(k,b,!1);k.forEach(function(a){m=Math.min(m,a.x);g=Math.max(g,a.x);n=Math.min(n,a.y);u=Math.max(u,a.y)});a>m&&(e=Math.min(e,1-Math.abs((a+
d)/(m+d))%1));f<g&&(e=Math.min(e,(f-d)/(g-d)));p>n&&(e=0>n?Math.min(e,(p+c)/(-n+p+c)):Math.min(e,1-(p+c)/(n+c)%1));l<u&&(e=Math.min(e,Math.abs((l-c)/(u-c))));return e}var q=k.addEvent,t=k.isArray,z=k.merge,w=k.pick;k=k.wrap;var x=b.Chart,A=b.perspective;x.prototype.is3d=function(){return this.options.chart.options3d&&this.options.chart.options3d.enabled};x.prototype.propsRequireDirtyBox.push("chart.options3d");x.prototype.propsRequireUpdateSeries.push("chart.options3d");q(x,"afterInit",function(){var b=
this.options;this.is3d()&&(b.series||[]).forEach(function(r){"scatter"===(r.type||b.chart.type||b.chart.defaultSeriesType)&&(r.type="scatter3d")})});q(x,"addSeries",function(b){this.is3d()&&"scatter"===b.options.type&&(b.options.type="scatter3d")});k(b.Chart.prototype,"isInsidePlot",function(b){return this.is3d()||b.apply(this,[].slice.call(arguments,1))});var h=b.getOptions();z(!0,h,{chart:{options3d:{enabled:!1,alpha:0,beta:0,depth:100,fitToPlot:!0,viewDistance:25,axisLabelPosition:null,frame:{visible:"default",
size:1,bottom:{},top:{},left:{},right:{},back:{},front:{}}}}});q(x,"afterGetContainer",function(){this.styledMode&&(this.renderer.definition({tagName:"style",textContent:".highcharts-3d-top{filter: url(#highcharts-brighter)}\n.highcharts-3d-side{filter: url(#highcharts-darker)}\n"}),[{name:"darker",slope:.6},{name:"brighter",slope:1.4}].forEach(function(b){this.renderer.definition({tagName:"filter",id:"highcharts-"+b.name,children:[{tagName:"feComponentTransfer",children:[{tagName:"feFuncR",type:"linear",
slope:b.slope},{tagName:"feFuncG",type:"linear",slope:b.slope},{tagName:"feFuncB",type:"linear",slope:b.slope}]}]})},this))});k(x.prototype,"setClassName",function(b){b.apply(this,[].slice.call(arguments,1));this.is3d()&&(this.container.className+=" highcharts-3d-chart")});q(b.Chart,"afterSetChartSize",function(){var b=this.options.chart.options3d;if(this.is3d()){b&&(b.alpha=b.alpha%360+(0<=b.alpha?0:360),b.beta=b.beta%360+(0<=b.beta?0:360));var r=this.inverted,a=this.clipBox,f=this.margin;a[r?"y":
"x"]=-(f[3]||0);a[r?"x":"y"]=-(f[0]||0);a[r?"height":"width"]=this.chartWidth+(f[3]||0)+(f[1]||0);a[r?"width":"height"]=this.chartHeight+(f[0]||0)+(f[2]||0);this.scale3d=1;!0===b.fitToPlot&&(this.scale3d=v(this,b.depth));this.frame3d=this.get3dFrame()}});q(x,"beforeRedraw",function(){this.is3d()&&(this.isDirtyBox=!0)});q(x,"beforeRender",function(){this.is3d()&&(this.frame3d=this.get3dFrame())});k(x.prototype,"renderSeries",function(b){var r=this.series.length;if(this.is3d())for(;r--;)b=this.series[r],
b.translate(),b.render();else b.call(this)});q(x,"afterDrawChartBox",function(){if(this.is3d()){var k=this.renderer,r=this.options.chart.options3d,a=this.get3dFrame(),f=this.plotLeft,p=this.plotLeft+this.plotWidth,l=this.plotTop,d=this.plotTop+this.plotHeight;r=r.depth;var c=f-(a.left.visible?a.left.size:0),m=p+(a.right.visible?a.right.size:0),g=l-(a.top.visible?a.top.size:0),n=d+(a.bottom.visible?a.bottom.size:0),h=0-(a.front.visible?a.front.size:0),e=r+(a.back.visible?a.back.size:0),w=this.hasRendered?
"animate":"attr";this.frame3d=a;this.frameShapes||(this.frameShapes={bottom:k.polyhedron().add(),top:k.polyhedron().add(),left:k.polyhedron().add(),right:k.polyhedron().add(),back:k.polyhedron().add(),front:k.polyhedron().add()});this.frameShapes.bottom[w]({"class":"highcharts-3d-frame highcharts-3d-frame-bottom",zIndex:a.bottom.frontFacing?-1E3:1E3,faces:[{fill:b.color(a.bottom.color).brighten(.1).get(),vertexes:[{x:c,y:n,z:h},{x:m,y:n,z:h},{x:m,y:n,z:e},{x:c,y:n,z:e}],enabled:a.bottom.visible},
{fill:b.color(a.bottom.color).brighten(.1).get(),vertexes:[{x:f,y:d,z:r},{x:p,y:d,z:r},{x:p,y:d,z:0},{x:f,y:d,z:0}],enabled:a.bottom.visible},{fill:b.color(a.bottom.color).brighten(-.1).get(),vertexes:[{x:c,y:n,z:h},{x:c,y:n,z:e},{x:f,y:d,z:r},{x:f,y:d,z:0}],enabled:a.bottom.visible&&!a.left.visible},{fill:b.color(a.bottom.color).brighten(-.1).get(),vertexes:[{x:m,y:n,z:e},{x:m,y:n,z:h},{x:p,y:d,z:0},{x:p,y:d,z:r}],enabled:a.bottom.visible&&!a.right.visible},{fill:b.color(a.bottom.color).get(),vertexes:[{x:m,
y:n,z:h},{x:c,y:n,z:h},{x:f,y:d,z:0},{x:p,y:d,z:0}],enabled:a.bottom.visible&&!a.front.visible},{fill:b.color(a.bottom.color).get(),vertexes:[{x:c,y:n,z:e},{x:m,y:n,z:e},{x:p,y:d,z:r},{x:f,y:d,z:r}],enabled:a.bottom.visible&&!a.back.visible}]});this.frameShapes.top[w]({"class":"highcharts-3d-frame highcharts-3d-frame-top",zIndex:a.top.frontFacing?-1E3:1E3,faces:[{fill:b.color(a.top.color).brighten(.1).get(),vertexes:[{x:c,y:g,z:e},{x:m,y:g,z:e},{x:m,y:g,z:h},{x:c,y:g,z:h}],enabled:a.top.visible},
{fill:b.color(a.top.color).brighten(.1).get(),vertexes:[{x:f,y:l,z:0},{x:p,y:l,z:0},{x:p,y:l,z:r},{x:f,y:l,z:r}],enabled:a.top.visible},{fill:b.color(a.top.color).brighten(-.1).get(),vertexes:[{x:c,y:g,z:e},{x:c,y:g,z:h},{x:f,y:l,z:0},{x:f,y:l,z:r}],enabled:a.top.visible&&!a.left.visible},{fill:b.color(a.top.color).brighten(-.1).get(),vertexes:[{x:m,y:g,z:h},{x:m,y:g,z:e},{x:p,y:l,z:r},{x:p,y:l,z:0}],enabled:a.top.visible&&!a.right.visible},{fill:b.color(a.top.color).get(),vertexes:[{x:c,y:g,z:h},
{x:m,y:g,z:h},{x:p,y:l,z:0},{x:f,y:l,z:0}],enabled:a.top.visible&&!a.front.visible},{fill:b.color(a.top.color).get(),vertexes:[{x:m,y:g,z:e},{x:c,y:g,z:e},{x:f,y:l,z:r},{x:p,y:l,z:r}],enabled:a.top.visible&&!a.back.visible}]});this.frameShapes.left[w]({"class":"highcharts-3d-frame highcharts-3d-frame-left",zIndex:a.left.frontFacing?-1E3:1E3,faces:[{fill:b.color(a.left.color).brighten(.1).get(),vertexes:[{x:c,y:n,z:h},{x:f,y:d,z:0},{x:f,y:d,z:r},{x:c,y:n,z:e}],enabled:a.left.visible&&!a.bottom.visible},
{fill:b.color(a.left.color).brighten(.1).get(),vertexes:[{x:c,y:g,z:e},{x:f,y:l,z:r},{x:f,y:l,z:0},{x:c,y:g,z:h}],enabled:a.left.visible&&!a.top.visible},{fill:b.color(a.left.color).brighten(-.1).get(),vertexes:[{x:c,y:n,z:e},{x:c,y:g,z:e},{x:c,y:g,z:h},{x:c,y:n,z:h}],enabled:a.left.visible},{fill:b.color(a.left.color).brighten(-.1).get(),vertexes:[{x:f,y:l,z:r},{x:f,y:d,z:r},{x:f,y:d,z:0},{x:f,y:l,z:0}],enabled:a.left.visible},{fill:b.color(a.left.color).get(),vertexes:[{x:c,y:n,z:h},{x:c,y:g,z:h},
{x:f,y:l,z:0},{x:f,y:d,z:0}],enabled:a.left.visible&&!a.front.visible},{fill:b.color(a.left.color).get(),vertexes:[{x:c,y:g,z:e},{x:c,y:n,z:e},{x:f,y:d,z:r},{x:f,y:l,z:r}],enabled:a.left.visible&&!a.back.visible}]});this.frameShapes.right[w]({"class":"highcharts-3d-frame highcharts-3d-frame-right",zIndex:a.right.frontFacing?-1E3:1E3,faces:[{fill:b.color(a.right.color).brighten(.1).get(),vertexes:[{x:m,y:n,z:e},{x:p,y:d,z:r},{x:p,y:d,z:0},{x:m,y:n,z:h}],enabled:a.right.visible&&!a.bottom.visible},
{fill:b.color(a.right.color).brighten(.1).get(),vertexes:[{x:m,y:g,z:h},{x:p,y:l,z:0},{x:p,y:l,z:r},{x:m,y:g,z:e}],enabled:a.right.visible&&!a.top.visible},{fill:b.color(a.right.color).brighten(-.1).get(),vertexes:[{x:p,y:l,z:0},{x:p,y:d,z:0},{x:p,y:d,z:r},{x:p,y:l,z:r}],enabled:a.right.visible},{fill:b.color(a.right.color).brighten(-.1).get(),vertexes:[{x:m,y:n,z:h},{x:m,y:g,z:h},{x:m,y:g,z:e},{x:m,y:n,z:e}],enabled:a.right.visible},{fill:b.color(a.right.color).get(),vertexes:[{x:m,y:g,z:h},{x:m,
y:n,z:h},{x:p,y:d,z:0},{x:p,y:l,z:0}],enabled:a.right.visible&&!a.front.visible},{fill:b.color(a.right.color).get(),vertexes:[{x:m,y:n,z:e},{x:m,y:g,z:e},{x:p,y:l,z:r},{x:p,y:d,z:r}],enabled:a.right.visible&&!a.back.visible}]});this.frameShapes.back[w]({"class":"highcharts-3d-frame highcharts-3d-frame-back",zIndex:a.back.frontFacing?-1E3:1E3,faces:[{fill:b.color(a.back.color).brighten(.1).get(),vertexes:[{x:m,y:n,z:e},{x:c,y:n,z:e},{x:f,y:d,z:r},{x:p,y:d,z:r}],enabled:a.back.visible&&!a.bottom.visible},
{fill:b.color(a.back.color).brighten(.1).get(),vertexes:[{x:c,y:g,z:e},{x:m,y:g,z:e},{x:p,y:l,z:r},{x:f,y:l,z:r}],enabled:a.back.visible&&!a.top.visible},{fill:b.color(a.back.color).brighten(-.1).get(),vertexes:[{x:c,y:n,z:e},{x:c,y:g,z:e},{x:f,y:l,z:r},{x:f,y:d,z:r}],enabled:a.back.visible&&!a.left.visible},{fill:b.color(a.back.color).brighten(-.1).get(),vertexes:[{x:m,y:g,z:e},{x:m,y:n,z:e},{x:p,y:d,z:r},{x:p,y:l,z:r}],enabled:a.back.visible&&!a.right.visible},{fill:b.color(a.back.color).get(),
vertexes:[{x:f,y:l,z:r},{x:p,y:l,z:r},{x:p,y:d,z:r},{x:f,y:d,z:r}],enabled:a.back.visible},{fill:b.color(a.back.color).get(),vertexes:[{x:c,y:n,z:e},{x:m,y:n,z:e},{x:m,y:g,z:e},{x:c,y:g,z:e}],enabled:a.back.visible}]});this.frameShapes.front[w]({"class":"highcharts-3d-frame highcharts-3d-frame-front",zIndex:a.front.frontFacing?-1E3:1E3,faces:[{fill:b.color(a.front.color).brighten(.1).get(),vertexes:[{x:c,y:n,z:h},{x:m,y:n,z:h},{x:p,y:d,z:0},{x:f,y:d,z:0}],enabled:a.front.visible&&!a.bottom.visible},
{fill:b.color(a.front.color).brighten(.1).get(),vertexes:[{x:m,y:g,z:h},{x:c,y:g,z:h},{x:f,y:l,z:0},{x:p,y:l,z:0}],enabled:a.front.visible&&!a.top.visible},{fill:b.color(a.front.color).brighten(-.1).get(),vertexes:[{x:c,y:g,z:h},{x:c,y:n,z:h},{x:f,y:d,z:0},{x:f,y:l,z:0}],enabled:a.front.visible&&!a.left.visible},{fill:b.color(a.front.color).brighten(-.1).get(),vertexes:[{x:m,y:n,z:h},{x:m,y:g,z:h},{x:p,y:l,z:0},{x:p,y:d,z:0}],enabled:a.front.visible&&!a.right.visible},{fill:b.color(a.front.color).get(),
vertexes:[{x:p,y:l,z:0},{x:f,y:l,z:0},{x:f,y:d,z:0},{x:p,y:d,z:0}],enabled:a.front.visible},{fill:b.color(a.front.color).get(),vertexes:[{x:m,y:n,z:h},{x:c,y:n,z:h},{x:c,y:g,z:h},{x:m,y:g,z:h}],enabled:a.front.visible}]})}});x.prototype.retrieveStacks=function(b){var r=this.series,a={},f,p=1;this.series.forEach(function(l){f=w(l.options.stack,b?0:r.length-1-l.index);a[f]?a[f].series.push(l):(a[f]={series:[l],position:p},p++)});a.totalStacks=p+1;return a};x.prototype.get3dFrame=function(){var h=this,
r=h.options.chart.options3d,a=r.frame,f=h.plotLeft,p=h.plotLeft+h.plotWidth,l=h.plotTop,d=h.plotTop+h.plotHeight,c=r.depth,m=function(a){a=b.shapeArea3d(a,h);return.5<a?1:-.5>a?-1:0},g=m([{x:f,y:d,z:c},{x:p,y:d,z:c},{x:p,y:d,z:0},{x:f,y:d,z:0}]),n=m([{x:f,y:l,z:0},{x:p,y:l,z:0},{x:p,y:l,z:c},{x:f,y:l,z:c}]),k=m([{x:f,y:l,z:0},{x:f,y:l,z:c},{x:f,y:d,z:c},{x:f,y:d,z:0}]),e=m([{x:p,y:l,z:c},{x:p,y:l,z:0},{x:p,y:d,z:0},{x:p,y:d,z:c}]),t=m([{x:f,y:d,z:0},{x:p,y:d,z:0},{x:p,y:l,z:0},{x:f,y:l,z:0}]);m=m([{x:f,
y:l,z:c},{x:p,y:l,z:c},{x:p,y:d,z:c},{x:f,y:d,z:c}]);var x=!1,v=!1,q=!1,z=!1;[].concat(h.xAxis,h.yAxis,h.zAxis).forEach(function(a){a&&(a.horiz?a.opposite?v=!0:x=!0:a.opposite?z=!0:q=!0)});var y=function(a,d,c){for(var e=["size","color","visible"],g={},f=0;f<e.length;f++)for(var b=e[f],m=0;m<a.length;m++)if("object"===typeof a[m]){var n=a[m][b];if("undefined"!==typeof n&&null!==n){g[b]=n;break}}a=c;!0===g.visible||!1===g.visible?a=g.visible:"auto"===g.visible&&(a=0<d);return{size:w(g.size,1),color:w(g.color,
"none"),frontFacing:0<d,visible:a}};a={axes:{},bottom:y([a.bottom,a.top,a],g,x),top:y([a.top,a.bottom,a],n,v),left:y([a.left,a.right,a.side,a],k,q),right:y([a.right,a.left,a.side,a],e,z),back:y([a.back,a.front,a],m,!0),front:y([a.front,a.back,a],t,!1)};"auto"===r.axisLabelPosition?(e=function(a,d){return a.visible!==d.visible||a.visible&&d.visible&&a.frontFacing!==d.frontFacing},r=[],e(a.left,a.front)&&r.push({y:(l+d)/2,x:f,z:0,xDir:{x:1,y:0,z:0}}),e(a.left,a.back)&&r.push({y:(l+d)/2,x:f,z:c,xDir:{x:0,
y:0,z:-1}}),e(a.right,a.front)&&r.push({y:(l+d)/2,x:p,z:0,xDir:{x:0,y:0,z:1}}),e(a.right,a.back)&&r.push({y:(l+d)/2,x:p,z:c,xDir:{x:-1,y:0,z:0}}),g=[],e(a.bottom,a.front)&&g.push({x:(f+p)/2,y:d,z:0,xDir:{x:1,y:0,z:0}}),e(a.bottom,a.back)&&g.push({x:(f+p)/2,y:d,z:c,xDir:{x:-1,y:0,z:0}}),n=[],e(a.top,a.front)&&n.push({x:(f+p)/2,y:l,z:0,xDir:{x:1,y:0,z:0}}),e(a.top,a.back)&&n.push({x:(f+p)/2,y:l,z:c,xDir:{x:-1,y:0,z:0}}),k=[],e(a.bottom,a.left)&&k.push({z:(0+c)/2,y:d,x:f,xDir:{x:0,y:0,z:-1}}),e(a.bottom,
a.right)&&k.push({z:(0+c)/2,y:d,x:p,xDir:{x:0,y:0,z:1}}),d=[],e(a.top,a.left)&&d.push({z:(0+c)/2,y:l,x:f,xDir:{x:0,y:0,z:-1}}),e(a.top,a.right)&&d.push({z:(0+c)/2,y:l,x:p,xDir:{x:0,y:0,z:1}}),f=function(a,d,c){if(0===a.length)return null;if(1===a.length)return a[0];for(var e=0,g=A(a,h,!1),f=1;f<g.length;f++)c*g[f][d]>c*g[e][d]?e=f:c*g[f][d]===c*g[e][d]&&g[f].z<g[e].z&&(e=f);return a[e]},a.axes={y:{left:f(r,"x",-1),right:f(r,"x",1)},x:{top:f(n,"y",-1),bottom:f(g,"y",1)},z:{top:f(d,"y",-1),bottom:f(k,
"y",1)}}):a.axes={y:{left:{x:f,z:0,xDir:{x:1,y:0,z:0}},right:{x:p,z:0,xDir:{x:0,y:0,z:1}}},x:{top:{y:l,z:0,xDir:{x:1,y:0,z:0}},bottom:{y:d,z:0,xDir:{x:1,y:0,z:0}}},z:{top:{x:q?p:f,y:l,xDir:q?{x:0,y:0,z:1}:{x:0,y:0,z:-1}},bottom:{x:q?p:f,y:d,xDir:q?{x:0,y:0,z:1}:{x:0,y:0,z:-1}}}};return a};b.Fx.prototype.matrixSetter=function(){if(1>this.pos&&(t(this.start)||t(this.end))){var b=this.start||[1,0,0,1,0,0],r=this.end||[1,0,0,1,0,0];var a=[];for(var f=0;6>f;f++)a.push(this.pos*r[f]+(1-this.pos)*b[f])}else a=
this.end;this.elem.attr(this.prop,a,null,!0)};""});B(q,"parts-3d/Axis.js",[q["parts/Globals.js"],q["parts/Tick.js"],q["parts/Utilities.js"]],function(b,k,q){function v(d,c,f){if(!d.chart.is3d()||"colorAxis"===d.coll)return c;var g=d.chart,b=r*g.options.chart.options3d.alpha,m=r*g.options.chart.options3d.beta,e=x(f&&d.options.title.position3d,d.options.labels.position3d);f=x(f&&d.options.title.skew3d,d.options.labels.skew3d);var l=g.frame3d,h=g.plotLeft,k=g.plotWidth+h,w=g.plotTop,q=g.plotHeight+w;
g=!1;var t=0,v=0,u={x:0,y:1,z:0};c=d.swapZ({x:c.x,y:c.y,z:0});if(d.isZAxis)if(d.opposite){if(null===l.axes.z.top)return{};v=c.y-w;c.x=l.axes.z.top.x;c.y=l.axes.z.top.y;h=l.axes.z.top.xDir;g=!l.top.frontFacing}else{if(null===l.axes.z.bottom)return{};v=c.y-q;c.x=l.axes.z.bottom.x;c.y=l.axes.z.bottom.y;h=l.axes.z.bottom.xDir;g=!l.bottom.frontFacing}else if(d.horiz)if(d.opposite){if(null===l.axes.x.top)return{};v=c.y-w;c.y=l.axes.x.top.y;c.z=l.axes.x.top.z;h=l.axes.x.top.xDir;g=!l.top.frontFacing}else{if(null===
l.axes.x.bottom)return{};v=c.y-q;c.y=l.axes.x.bottom.y;c.z=l.axes.x.bottom.z;h=l.axes.x.bottom.xDir;g=!l.bottom.frontFacing}else if(d.opposite){if(null===l.axes.y.right)return{};t=c.x-k;c.x=l.axes.y.right.x;c.z=l.axes.y.right.z;h=l.axes.y.right.xDir;h={x:h.z,y:h.y,z:-h.x}}else{if(null===l.axes.y.left)return{};t=c.x-h;c.x=l.axes.y.left.x;c.z=l.axes.y.left.z;h=l.axes.y.left.xDir}"chart"!==e&&("flap"===e?d.horiz?(m=Math.sin(b),b=Math.cos(b),d.opposite&&(m=-m),g&&(m=-m),u={x:h.z*m,y:b,z:-h.x*m}):h={x:Math.cos(m),
y:0,z:Math.sin(m)}:"ortho"===e?d.horiz?(u=Math.cos(b),e=Math.sin(m)*u,b=-Math.sin(b),m=-u*Math.cos(m),u={x:h.y*m-h.z*b,y:h.z*e-h.x*m,z:h.x*b-h.y*e},b=1/Math.sqrt(u.x*u.x+u.y*u.y+u.z*u.z),g&&(b=-b),u={x:b*u.x,y:b*u.y,z:b*u.z}):h={x:Math.cos(m),y:0,z:Math.sin(m)}:d.horiz?u={x:Math.sin(m)*Math.sin(b),y:Math.cos(b),z:-Math.cos(m)*Math.sin(b)}:h={x:Math.cos(m),y:0,z:Math.sin(m)});c.x+=t*h.x+v*u.x;c.y+=t*h.y+v*u.y;c.z+=t*h.z+v*u.z;g=a([c],d.chart)[0];f&&(0>p(a([c,{x:c.x+h.x,y:c.y+h.y,z:c.z+h.z},{x:c.x+
u.x,y:c.y+u.y,z:c.z+u.z}],d.chart))&&(h={x:-h.x,y:-h.y,z:-h.z}),d=a([{x:c.x,y:c.y,z:c.z},{x:c.x+h.x,y:c.y+h.y,z:c.z+h.z},{x:c.x+u.x,y:c.y+u.y,z:c.z+u.z}],d.chart),g.matrix=[d[1].x-d[0].x,d[1].y-d[0].y,d[2].x-d[0].x,d[2].y-d[0].y,g.x,g.y],g.matrix[4]-=g.x*g.matrix[0]+g.y*g.matrix[2],g.matrix[5]-=g.x*g.matrix[1]+g.y*g.matrix[3]);return g}var t=q.addEvent,z=q.extend,w=q.merge,x=q.pick,A=q.splat;q=q.wrap;var h=b.Axis,u=b.Chart,r=b.deg2rad,a=b.perspective,f=b.perspective3D,p=b.shapeArea;w(!0,h.prototype.defaultOptions,
{labels:{position3d:"offset",skew3d:!1},title:{position3d:null,skew3d:null}});t(h,"afterSetOptions",function(){if(this.chart.is3d&&this.chart.is3d()&&"colorAxis"!==this.coll){var a=this.options;a.tickWidth=x(a.tickWidth,0);a.gridLineWidth=x(a.gridLineWidth,1)}});q(h.prototype,"getPlotLinePath",function(d){var c=d.apply(this,[].slice.call(arguments,1));if(!this.chart.is3d()||"colorAxis"===this.coll||null===c)return c;var f=this.chart,g=f.options.chart.options3d;g=this.isZAxis?f.plotWidth:g.depth;f=
f.frame3d;c=[this.swapZ({x:c[1],y:c[2],z:0}),this.swapZ({x:c[1],y:c[2],z:g}),this.swapZ({x:c[4],y:c[5],z:0}),this.swapZ({x:c[4],y:c[5],z:g})];g=[];this.horiz?(this.isZAxis?(f.left.visible&&g.push(c[0],c[2]),f.right.visible&&g.push(c[1],c[3])):(f.front.visible&&g.push(c[0],c[2]),f.back.visible&&g.push(c[1],c[3])),f.top.visible&&g.push(c[0],c[1]),f.bottom.visible&&g.push(c[2],c[3])):(f.front.visible&&g.push(c[0],c[2]),f.back.visible&&g.push(c[1],c[3]),f.left.visible&&g.push(c[0],c[1]),f.right.visible&&
g.push(c[2],c[3]));g=a(g,this.chart,!1);return this.chart.renderer.toLineSegments(g)});q(h.prototype,"getLinePath",function(a){return this.chart.is3d()&&"colorAxis"!==this.coll?[]:a.apply(this,[].slice.call(arguments,1))});q(h.prototype,"getPlotBandPath",function(a){if(!this.chart.is3d()||"colorAxis"===this.coll)return a.apply(this,[].slice.call(arguments,1));var c=arguments,d=c[2],g=[];c=this.getPlotLinePath({value:c[1]});d=this.getPlotLinePath({value:d});if(c&&d)for(var f=0;f<c.length;f+=6)g.push("M",
c[f+1],c[f+2],"L",c[f+4],c[f+5],"L",d[f+4],d[f+5],"L",d[f+1],d[f+2],"Z");return g});q(k.prototype,"getMarkPath",function(a){var d=a.apply(this,[].slice.call(arguments,1));d=[v(this.axis,{x:d[1],y:d[2],z:0}),v(this.axis,{x:d[4],y:d[5],z:0})];return this.axis.chart.renderer.toLineSegments(d)});t(k,"afterGetLabelPosition",function(a){z(a.pos,v(this.axis,a.pos))});q(h.prototype,"getTitlePosition",function(a){var d=a.apply(this,[].slice.call(arguments,1));return v(this,d,!0)});t(h,"drawCrosshair",function(a){this.chart.is3d()&&
"colorAxis"!==this.coll&&a.point&&(a.point.crosshairPos=this.isXAxis?a.point.axisXpos:this.len-a.point.axisYpos)});t(h,"destroy",function(){["backFrame","bottomFrame","sideFrame"].forEach(function(a){this[a]&&(this[a]=this[a].destroy())},this)});u.prototype.addZAxis=function(a){return new l(this,a)};u.prototype.collectionsWithUpdate.push("zAxis");u.prototype.collectionsWithInit.zAxis=[u.prototype.addZAxis];h.prototype.swapZ=function(a,c){return this.isZAxis?(c=c?0:this.chart.plotLeft,{x:c+a.z,y:a.y,
z:a.x-c}):a};var l=b.ZAxis=function(){this.init.apply(this,arguments)};z(l.prototype,h.prototype);z(l.prototype,{isZAxis:!0,setOptions:function(a){a=w({offset:0,lineWidth:0},a);h.prototype.setOptions.call(this,a);this.coll="zAxis"},setAxisSize:function(){h.prototype.setAxisSize.call(this);this.width=this.len=this.chart.options.chart.options3d.depth;this.right=this.chart.chartWidth-this.width-this.left},getSeriesExtremes:function(){var a=this,c=a.chart;a.hasVisibleSeries=!1;a.dataMin=a.dataMax=a.ignoreMinPadding=
a.ignoreMaxPadding=null;a.buildStacks&&a.buildStacks();a.series.forEach(function(d){if(d.visible||!c.options.chart.ignoreHiddenSeries)a.hasVisibleSeries=!0,d=d.zData,d.length&&(a.dataMin=Math.min(x(a.dataMin,d[0]),Math.min.apply(null,d)),a.dataMax=Math.max(x(a.dataMax,d[0]),Math.max.apply(null,d)))})}});t(u,"afterGetAxes",function(){var a=this,c=this.options;c=c.zAxis=A(c.zAxis||{});a.is3d()&&(this.zAxis=[],c.forEach(function(c,d){c.index=d;c.isX=!0;a.addZAxis(c).setScale()}))});q(h.prototype,"getSlotWidth",
function(a,c){if(this.chart.is3d()&&c&&c.label&&this.categories&&this.chart.frameShapes){var d=this.chart,g=this.ticks,b=this.gridGroup.element.childNodes[0].getBBox(),h=d.frameShapes.left.getBBox(),e=d.options.chart.options3d;d={x:d.plotWidth/2,y:d.plotHeight/2,z:e.depth/2,vd:x(e.depth,1)*x(e.viewDistance,0)};var l,r;e=c.pos;var p=g[e-1];g=g[e+1];0!==e&&p&&p.label.xy&&(l=f({x:p.label.xy.x,y:p.label.xy.y,z:null},d,d.vd));g&&g.label.xy&&(r=f({x:g.label.xy.x,y:g.label.xy.y,z:null},d,d.vd));g={x:c.label.xy.x,
y:c.label.xy.y,z:null};g=f(g,d,d.vd);return Math.abs(l?g.x-l.x:r?r.x-g.x:b.x-h.x)}return a.apply(this,[].slice.call(arguments,1))})});B(q,"parts-3d/Series.js",[q["parts/Globals.js"],q["parts/Utilities.js"]],function(b,k){var q=k.addEvent,y=k.pick,t=b.perspective;q(b.Series,"afterTranslate",function(){this.chart.is3d()&&this.translate3dPoints()});b.Series.prototype.translate3dPoints=function(){var b=this.chart,k=y(this.zAxis,b.options.zAxis[0]),q=[],v;for(v=0;v<this.data.length;v++){var h=this.data[v];
if(k&&k.translate){var u=k.isLog&&k.val2lin?k.val2lin(h.z):h.z;h.plotZ=k.translate(u);h.isInside=h.isInside?u>=k.min&&u<=k.max:!1}else h.plotZ=0;h.axisXpos=h.plotX;h.axisYpos=h.plotY;h.axisZpos=h.plotZ;q.push({x:h.plotX,y:h.plotY,z:h.plotZ})}b=t(q,b,!0);for(v=0;v<this.data.length;v++)h=this.data[v],k=b[v],h.plotX=k.x,h.plotY=k.y,h.plotZ=k.z}});B(q,"parts-3d/Column.js",[q["parts/Globals.js"],q["parts/Utilities.js"]],function(b,k){function q(b){var a=b.apply(this,[].slice.call(arguments,1));this.chart.is3d&&
this.chart.is3d()&&(a.stroke=this.options.edgeColor||a.fill,a["stroke-width"]=w(this.options.edgeWidth,1));return a}function y(b,a,f){var h=this.chart.is3d&&this.chart.is3d();h&&(this.options.inactiveOtherPoints=!0);b.call(this,a,f);h&&(this.options.inactiveOtherPoints=!1)}function t(b){for(var a=[],f=1;f<arguments.length;f++)a[f-1]=arguments[f];return this.series.chart.is3d()?this.graphic&&"g"!==this.graphic.element.nodeName:b.apply(this,a)}var z=k.addEvent,w=k.pick;k=k.wrap;var x=b.perspective,
A=b.Series,h=b.seriesTypes,u=b.svg;k(h.column.prototype,"translate",function(b){b.apply(this,[].slice.call(arguments,1));this.chart.is3d()&&this.translate3dShapes()});k(b.Series.prototype,"justifyDataLabel",function(b){return arguments[2].outside3dPlot?!1:b.apply(this,[].slice.call(arguments,1))});h.column.prototype.translate3dPoints=function(){};h.column.prototype.translate3dShapes=function(){var b=this,a=b.chart,f=b.options,h=f.depth,l=(f.stacking?f.stack||0:b.index)*(h+(f.groupZPadding||1)),d=
b.borderWidth%2?.5:0,c;a.inverted&&!b.yAxis.reversed&&(d*=-1);!1!==f.grouping&&(l=0);l+=f.groupZPadding||1;b.data.forEach(function(f){f.outside3dPlot=null;if(null!==f.y){var g=f.shapeArgs,m=f.tooltipPos,k;[["x","width"],["y","height"]].forEach(function(a){k=g[a[0]]-d;0>k&&(g[a[1]]+=g[a[0]]+d,g[a[0]]=-d,k=0);k+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]]<=d)){for(var c in g)g[c]=0;f.outside3dPlot=!0}});"rect"===
f.shapeType&&(f.shapeType="cuboid");g.z=l;g.depth=h;g.insidePlotArea=!0;c={x:g.x+g.width/2,y:g.y,z:l+h/2};a.inverted&&(c.x=g.height,c.y=f.clientX);f.plot3d=x([c],a,!0,!1)[0];m=x([{x:m[0],y:m[1],z:l+h/2}],a,!0,!1)[0];f.tooltipPos=[m.x,m.y]}});b.z=l};k(h.column.prototype,"animate",function(b){if(this.chart.is3d()){var a=arguments[1],f=this.yAxis,h=this,l=this.yAxis.reversed;u&&(a?h.data.forEach(function(a){null!==a.y&&(a.height=a.shapeArgs.height,a.shapey=a.shapeArgs.y,a.shapeArgs.height=1,l||(a.shapeArgs.y=
a.stackY?a.plotY+f.translate(a.stackY):a.plotY+(a.negative?-a.height:a.height)))}):(h.data.forEach(function(a){null!==a.y&&(a.shapeArgs.height=a.height,a.shapeArgs.y=a.shapey,a.graphic&&a.graphic.animate(a.shapeArgs,h.options.animation))}),this.drawDataLabels()))}else b.apply(this,[].slice.call(arguments,1))});k(h.column.prototype,"plotGroup",function(b,a,f,h,l,d){"dataLabelsGroup"!==a&&this.chart.is3d()&&(this[a]&&delete this[a],d&&(this.chart.columnGroup||(this.chart.columnGroup=this.chart.renderer.g("columnGroup").add(d)),
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,1))});k(h.column.prototype,"setVisible",function(b,a){var f=this,h;f.chart.is3d()&&f.data.forEach(function(b){h=(b.visible=b.options.visible=a="undefined"===typeof a?!w(f.visible,b.visible):a)?"visible":"hidden";f.options.data[f.data.indexOf(b)]=b.options;b.graphic&&b.graphic.attr({visibility:h})});
b.apply(this,Array.prototype.slice.call(arguments,1))});h.column.prototype.handle3dGrouping=!0;z(A,"afterInit",function(){if(this.chart.is3d()&&this.handle3dGrouping){var b=this.options,a=b.grouping,f=b.stacking,h=w(this.yAxis.options.reversedStacks,!0),l=0;if("undefined"===typeof a||a){a=this.chart.retrieveStacks(f);l=b.stack||0;for(f=0;f<a[l].series.length&&a[l].series[f]!==this;f++);l=10*(a.totalStacks-a[l].position)+(h?f:-f);this.xAxis.reversed||(l=10*a.totalStacks-l)}b.depth=b.depth||25;this.z=
this.z||0;b.zIndex=l}});k(h.column.prototype,"pointAttribs",q);k(h.column.prototype,"setState",y);k(h.column.prototype.pointClass.prototype,"hasNewShapeType",t);h.columnrange&&(k(h.columnrange.prototype,"pointAttribs",q),k(h.columnrange.prototype,"setState",y),k(h.columnrange.prototype.pointClass.prototype,"hasNewShapeType",t),h.columnrange.prototype.plotGroup=h.column.prototype.plotGroup,h.columnrange.prototype.setVisible=h.column.prototype.setVisible);k(A.prototype,"alignDataLabel",function(b,a,
f,h,l){var d=this.chart;h.outside3dPlot=a.outside3dPlot;if(d.is3d()&&this.is("column")){var c=this.options,m=w(h.inside,!!this.options.stacking),g=d.options.chart.options3d,k=a.pointWidth/2||0;c={x:l.x+k,y:l.y,z:this.z+c.depth/2};d.inverted&&(m&&(l.width=0,c.x+=a.shapeArgs.height/2),90<=g.alpha&&270>=g.alpha&&(c.y+=a.shapeArgs.width));c=x([c],d,!0,!1)[0];l.x=c.x-k;l.y=a.outside3dPlot?-9E9:c.y}b.apply(this,[].slice.call(arguments,1))});k(b.StackItem.prototype,"getStackBox",function(b,a,f,k,l,d,c,m){var g=
b.apply(this,[].slice.call(arguments,1));if(a.is3d()&&f.base){var n=+f.base.split(",")[0],p=a.series[n];n=a.options.chart.options3d;p&&p instanceof h.column&&(p={x:g.x+(a.inverted?c:d/2),y:g.y,z:p.options.depth/2},a.inverted&&(g.width=0,90<=n.alpha&&270>=n.alpha&&(p.y+=d)),p=x([p],a,!0,!1)[0],g.x=p.x-d/2,g.y=p.y)}return g})});B(q,"parts-3d/Pie.js",[q["parts/Globals.js"],q["parts/Utilities.js"]],function(b,k){var q=k.pick;k=k.wrap;var y=b.deg2rad,t=b.seriesTypes,z=b.svg;k(t.pie.prototype,"translate",
function(b){b.apply(this,[].slice.call(arguments,1));if(this.chart.is3d()){var k=this,q=k.options,h=q.depth||0,t=k.chart.options.chart.options3d,r=t.alpha,a=t.beta,f=q.stacking?(q.stack||0)*h:k._i*h;f+=h/2;!1!==q.grouping&&(f=0);k.data.forEach(function(b){var l=b.shapeArgs;b.shapeType="arc3d";l.z=f;l.depth=.75*h;l.alpha=r;l.beta=a;l.center=k.center;l=(l.end+l.start)/2;b.slicedTranslation={translateX:Math.round(Math.cos(l)*q.slicedOffset*Math.cos(r*y)),translateY:Math.round(Math.sin(l)*q.slicedOffset*
Math.cos(r*y))}})}});k(t.pie.prototype.pointClass.prototype,"haloPath",function(b){var k=arguments;return this.series.chart.is3d()?[]:b.call(this,k[1])});k(t.pie.prototype,"pointAttribs",function(b,k,t){b=b.call(this,k,t);t=this.options;this.chart.is3d()&&!this.chart.styledMode&&(b.stroke=t.edgeColor||k.color||this.color,b["stroke-width"]=q(t.edgeWidth,1));return b});k(t.pie.prototype,"drawDataLabels",function(b){if(this.chart.is3d()){var k=this.chart.options.chart.options3d;this.data.forEach(function(b){var h=
b.shapeArgs,q=h.r,r=(h.start+h.end)/2;b=b.labelPosition;var a=b.connectorPosition,f=-q*(1-Math.cos((h.alpha||k.alpha)*y))*Math.sin(r),p=q*(Math.cos((h.beta||k.beta)*y)-1)*Math.cos(r);[b.natural,a.breakAt,a.touchingSliceAt].forEach(function(a){a.x+=p;a.y+=f})})}b.apply(this,[].slice.call(arguments,1))});k(t.pie.prototype,"addPoint",function(b){b.apply(this,[].slice.call(arguments,1));this.chart.is3d()&&this.update(this.userOptions,!0)});k(t.pie.prototype,"animate",function(b){if(this.chart.is3d()){var k=
arguments[1],q=this.options.animation,h=this.center,t=this.group,r=this.markerGroup;z&&(!0===q&&(q={}),k?(t.oldtranslateX=t.translateX,t.oldtranslateY=t.translateY,k={translateX:h[0],translateY:h[1],scaleX:.001,scaleY:.001},t.attr(k),r&&(r.attrSetters=t.attrSetters,r.attr(k))):(k={translateX:t.oldtranslateX,translateY:t.oldtranslateY,scaleX:1,scaleY:1},t.animate(k,q),r&&r.animate(k,q)))}else b.apply(this,[].slice.call(arguments,1))})});B(q,"parts-3d/Scatter.js",[q["parts/Globals.js"],q["parts/Point.js"],
q["parts/Utilities.js"]],function(b,k,q){q=q.seriesType;var v=b.seriesTypes;q("scatter3d","scatter",{tooltip:{pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>z: <b>{point.z}</b><br/>"}},{pointAttribs:function(k){var q=v.scatter.prototype.pointAttribs.apply(this,arguments);this.chart.is3d()&&k&&(q.zIndex=b.pointCameraDistance(k,this.chart));return q},axisTypes:["xAxis","yAxis","zAxis"],pointArrayMap:["x","y","z"],parallelArrays:["x","y","z"],directTouch:!0},{applyOptions:function(){k.prototype.applyOptions.apply(this,
arguments);"undefined"===typeof this.z&&(this.z=0);return this}});""});B(q,"parts-3d/VMLRenderer.js",[q["parts/Globals.js"],q["parts/Utilities.js"]],function(b,k){k=k.addEvent;var q=b.Axis,y=b.SVGRenderer,t=b.VMLRenderer;t&&(b.setOptions({animate:!1}),t.prototype.face3d=y.prototype.face3d,t.prototype.polyhedron=y.prototype.polyhedron,t.prototype.elements3d=y.prototype.elements3d,t.prototype.element3d=y.prototype.element3d,t.prototype.cuboid=y.prototype.cuboid,t.prototype.cuboidPath=y.prototype.cuboidPath,
t.prototype.toLinePath=y.prototype.toLinePath,t.prototype.toLineSegments=y.prototype.toLineSegments,t.prototype.arc3d=function(b){b=y.prototype.arc3d.call(this,b);b.css({zIndex:b.zIndex});return b},b.VMLRenderer.prototype.arc3dPath=b.SVGRenderer.prototype.arc3dPath,k(q,"render",function(){this.sideFrame&&(this.sideFrame.css({zIndex:0}),this.sideFrame.front.attr({fill:this.sideFrame.color}));this.bottomFrame&&(this.bottomFrame.css({zIndex:1}),this.bottomFrame.front.attr({fill:this.bottomFrame.color}));
this.backFrame&&(this.backFrame.css({zIndex:0}),this.backFrame.front.attr({fill:this.backFrame.color}))}))});B(q,"masters/highcharts-3d.src.js",[],function(){})});
//# sourceMappingURL=highcharts-3d.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Highcharts cylinder module

 (c) 2010-2019 Kacper Madej

 License: www.highcharts.com/license
*/
(function(c){"object"===typeof module&&module.exports?(c["default"]=c,module.exports=c):"function"===typeof define&&define.amd?define("highcharts/modules/cylinder",["highcharts","highcharts/highcharts-3d"],function(f){c(f);c.Highcharts=f;return c}):c("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(c){function f(c,h,d,f){c.hasOwnProperty(h)||(c[h]=f.apply(null,d))}c=c?c._modules:{};f(c,"modules/cylinder.src.js",[c["parts/Globals.js"],c["parts/Color.js"],c["parts/Utilities.js"]],function(c,
f,d){var h=f.parse;f=d.merge;var t=d.pick,l=d.seriesType,u=c.charts,v=c.deg2rad,w=c.perspective;d=c.Renderer.prototype;var x=d.cuboidPath;l("cylinder","column",{},{},{shapeType:"cylinder",hasNewShapeType:c.seriesTypes.column.prototype.pointClass.prototype.hasNewShapeType});c=f(d.elements3d.cuboid,{parts:["top","bottom","front","back"],pathType:"cylinder",fillSetter:function(a){this.singleSetterForParts("fill",null,{front:a,back:a,top:h(a).brighten(.1).get(),bottom:h(a).brighten(-.1).get()});this.color=
this.fill=a;return this}});d.elements3d.cylinder=c;d.cylinder=function(a){return this.element3d("cylinder",a)};d.cylinderPath=function(a){var b=u[this.chartIndex],e=x.call(this,a),c=!e.isTop,p=!e.isFront,d=this.getCylinderEnd(b,a);a=this.getCylinderEnd(b,a,!0);return{front:this.getCylinderFront(d,a),back:this.getCylinderBack(d,a),top:d,bottom:a,zIndexes:{top:c?3:0,bottom:c?0:3,front:p?2:1,back:p?1:2,group:e.zIndexes.group}}};d.getCylinderFront=function(a,b){a=a.slice(0,a.simplified?9:17);a.push("L");
b.simplified?(a=a.concat(b.slice(7,9)).concat(b.slice(3,6)).concat(b.slice(0,3)),a[a.length-3]="L"):a.push(b[15],b[16],"C",b[13],b[14],b[11],b[12],b[8],b[9],"C",b[6],b[7],b[4],b[5],b[1],b[2]);a.push("Z");return a};d.getCylinderBack=function(a,b){var e=["M"];a.simplified?(e=e.concat(a.slice(7,12)),e.push("L",a[1],a[2])):e=e.concat(a.slice(15));e.push("L");b.simplified?e=e.concat(b.slice(1,3)).concat(b.slice(9,12)).concat(b.slice(6,9)):e.push(b[29],b[30],"C",b[27],b[28],b[25],b[26],b[22],b[23],"C",
b[20],b[21],b[18],b[19],b[15],b[16]);e.push("Z");return e};d.getCylinderEnd=function(a,b,e){var c=t(b.depth,b.width),d=Math.min(b.width,c)/2,f=v*(a.options.chart.options3d.beta-90+(b.alphaCorrection||0));e=b.y+(e?b.height:0);var g=.5519*d,h=b.width/2+b.x,l=c/2+b.z,k=[{x:0,y:e,z:d},{x:g,y:e,z:d},{x:d,y:e,z:g},{x:d,y:e,z:0},{x:d,y:e,z:-g},{x:g,y:e,z:-d},{x:0,y:e,z:-d},{x:-g,y:e,z:-d},{x:-d,y:e,z:-g},{x:-d,y:e,z:0},{x:-d,y:e,z:g},{x:-g,y:e,z:d},{x:0,y:e,z:d}],q=Math.cos(f),r=Math.sin(f),m,n;k.forEach(function(a,
b){m=a.x;n=a.z;k[b].x=m*q-n*r+h;k[b].z=n*q+m*r+l});a=w(k,a,!0);2.5>Math.abs(a[3].y-a[9].y)&&2.5>Math.abs(a[0].y-a[6].y)?(a=this.toLinePath([a[0],a[3],a[6],a[9]],!0),a.simplified=!0):a=this.getCurvedPath(a);return a};d.getCurvedPath=function(a){var b=["M",a[0].x,a[0].y],d=a.length-2,c;for(c=1;c<d;c+=3)b.push("C",a[c].x,a[c].y,a[c+1].x,a[c+1].y,a[c+2].x,a[c+2].y);return b}});f(c,"masters/modules/cylinder.src.js",[],function(){})});
//# sourceMappingURL=cylinder.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Highcharts funnel module

 (c) 2010-2019 Kacper Madej

 License: www.highcharts.com/license
*/
(function(d){"object"===typeof module&&module.exports?(d["default"]=d,module.exports=d):"function"===typeof define&&define.amd?define("highcharts/modules/funnel3d",["highcharts","highcharts/highcharts-3d","highcharts/modules/cylinder"],function(t){d(t);d.Highcharts=t;return d}):d("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(d){function t(d,m,l,h){d.hasOwnProperty(m)||(d[m]=h.apply(null,l))}d=d?d._modules:{};t(d,"modules/funnel3d.src.js",[d["parts/Globals.js"],d["parts/Color.js"],
d["parts/Utilities.js"]],function(d,m,l){var h=m.parse,t=l.error,D=l.extend,k=l.merge,B=l.pick,v=l.relativeLength;l=l.seriesType;var H=d.charts,J=d.seriesTypes;m=d.Renderer.prototype;var K=m.cuboidPath;l("funnel3d","column",{center:["50%","50%"],width:"90%",neckWidth:"30%",height:"100%",neckHeight:"25%",reversed:!1,gradientForSides:!0,animation:!1,edgeWidth:0,colorByPoint:!0,showInLegend:!1,dataLabels:{align:"right",crop:!1,inside:!1,overflow:"allow"}},{bindAxes:function(){d.Series.prototype.bindAxes.apply(this,
arguments);D(this.xAxis.options,{gridLineWidth:0,lineWidth:0,title:null,tickPositions:[]});D(this.yAxis.options,{gridLineWidth:0,title:null,labels:{enabled:!1}})},translate3dShapes:d.noop,translate:function(){d.Series.prototype.translate.apply(this,arguments);var a=0,b=this.chart,c=this.options,g=c.reversed,u=c.ignoreHiddenPoint,e=b.plotWidth,E=b.plotHeight,f=0,I=c.center,w=v(I[0],e),r=v(I[1],E),l=v(c.width,e),p,k,n=v(c.height,E),m=v(c.neckWidth,e),t=v(c.neckHeight,E),h=r-n/2+n-t;e=this.data;var z,
F,x,A,G,C,q;this.getWidthAt=k=function(b){var a=r-n/2;return b>h||n===t?m:m+(l-m)*(1-(b-a)/(n-t))};this.center=[w,r,n];this.centerX=w;e.forEach(function(b){u&&!1===b.visible||(a+=b.y)});e.forEach(function(e){G=null;z=a?e.y/a:0;x=r-n/2+f*n;A=x+z*n;p=k(x);C=A-x;q={gradientForSides:B(e.options.gradientForSides,c.gradientForSides),x:w,y:x,height:C,width:p,z:1,top:{width:p}};p=k(A);q.bottom={fraction:z,width:p};x>=h?q.isCylinder=!0:A>h&&(G=A,p=k(h),A=h,q.bottom.width=p,q.middle={fraction:C?(h-x)/C:0,width:p});
g&&(q.y=x=r+n/2-(f+z)*n,q.middle&&(q.middle.fraction=1-(C?q.middle.fraction:0)),p=q.width,q.width=q.bottom.width,q.bottom.width=p);e.shapeArgs=D(e.shapeArgs,q);e.percentage=100*z;e.plotX=w;e.plotY=g?r+n/2-(f+z/2)*n:(x+(G||A))/2;F=d.perspective([{x:w,y:e.plotY,z:g?-(l-k(e.plotY))/2:-k(e.plotY)/2}],b,!0)[0];e.tooltipPos=[F.x,F.y];e.dlBoxRaw={x:w,width:k(e.plotY),y:x,bottom:q.height,fullWidth:l};u&&!1===e.visible||(f+=z)})},alignDataLabel:function(a,b,c){var g=a.dlBoxRaw,u=this.chart.inverted,e=a.plotY>
B(this.translatedThreshold,this.yAxis.len),d=B(c.inside,!!this.options.stacking),f={x:g.x,y:g.y,height:0};c.align=B(c.align,!u||d?"center":e?"right":"left");c.verticalAlign=B(c.verticalAlign,u||d?"middle":e?"top":"bottom");"top"!==c.verticalAlign&&(f.y+=g.bottom/("bottom"===c.verticalAlign?1:2));f.width=this.getWidthAt(f.y);this.options.reversed&&(f.width=g.fullWidth-f.width);d?f.x-=f.width/2:"left"===c.align?(c.align="right",f.x-=1.5*f.width):"right"===c.align?(c.align="left",f.x+=f.width/2):f.x-=
f.width/2;a.dlBox=f;J.column.prototype.alignDataLabel.apply(this,arguments)}},{shapeType:"funnel3d",hasNewShapeType:d.seriesTypes.column.prototype.pointClass.prototype.hasNewShapeType});l=k(m.elements3d.cuboid,{parts:"top bottom frontUpper backUpper frontLower backLower rightUpper rightLower".split(" "),mainParts:["top","bottom"],sideGroups:["upperGroup","lowerGroup"],sideParts:{upperGroup:["frontUpper","backUpper","rightUpper"],lowerGroup:["frontLower","backLower","rightLower"]},pathType:"funnel3d",
opacitySetter:function(a){var b=this,c=b.parts,g=d.charts[b.renderer.chartIndex],u="group-opacity-"+a+"-"+g.index;b.parts=b.mainParts;b.singleSetterForParts("opacity",a);b.parts=c;g.renderer.filterId||(g.renderer.definition({tagName:"filter",id:u,children:[{tagName:"feComponentTransfer",children:[{tagName:"feFuncA",type:"table",tableValues:"0 "+a}]}]}),b.sideGroups.forEach(function(a){b[a].attr({filter:"url(#"+u+")"})}),b.renderer.styledMode&&(g.renderer.definition({tagName:"style",textContent:".highcharts-"+
u+" {filter:url(#"+u+")}"}),b.sideGroups.forEach(function(b){b.addClass("highcharts-"+u)})));return b},fillSetter:function(a){var b=this,c=h(a),g=c.rgba[3],d={top:h(a).brighten(.1).get(),bottom:h(a).brighten(-.2).get()};1>g?(c.rgba[3]=1,c=c.get("rgb"),b.attr({opacity:g})):c=a;c.linearGradient||c.radialGradient||!b.gradientForSides||(c={linearGradient:{x1:0,x2:1,y1:1,y2:1},stops:[[0,h(a).brighten(-.2).get()],[.5,a],[1,h(a).brighten(-.2).get()]]});c.linearGradient?b.sideGroups.forEach(function(a){var e=
b[a].gradientBox,f=c.linearGradient,g=k(c,{linearGradient:{x1:e.x+f.x1*e.width,y1:e.y+f.y1*e.height,x2:e.x+f.x2*e.width,y2:e.y+f.y2*e.height}});b.sideParts[a].forEach(function(b){d[b]=g})}):(k(!0,d,{frontUpper:c,backUpper:c,rightUpper:c,frontLower:c,backLower:c,rightLower:c}),c.radialGradient&&b.sideGroups.forEach(function(a){var c=b[a].gradientBox,e=c.x+c.width/2,g=c.y+c.height/2,d=Math.min(c.width,c.height);b.sideParts[a].forEach(function(a){b[a].setRadialReference([e,g,d])})}));b.singleSetterForParts("fill",
null,d);b.color=b.fill=a;c.linearGradient&&[b.frontLower,b.frontUpper].forEach(function(a){(a=(a=a.element)&&b.renderer.gradients[a.gradient])&&"userSpaceOnUse"!==a.attr("gradientUnits")&&a.attr({gradientUnits:"userSpaceOnUse"})});return b},adjustForGradient:function(){var a=this,b;a.sideGroups.forEach(function(c){var g={x:Number.MAX_VALUE,y:Number.MAX_VALUE},d={x:-Number.MAX_VALUE,y:-Number.MAX_VALUE};a.sideParts[c].forEach(function(c){b=a[c].getBBox(!0);g={x:Math.min(g.x,b.x),y:Math.min(g.y,b.y)};
d={x:Math.max(d.x,b.x+b.width),y:Math.max(d.y,b.y+b.height)}});a[c].gradientBox={x:g.x,width:d.x-g.x,y:g.y,height:d.y-g.y}})},zIndexSetter:function(){this.finishedOnAdd&&this.adjustForGradient();return this.renderer.Element.prototype.zIndexSetter.apply(this,arguments)},onAdd:function(){this.adjustForGradient();this.finishedOnAdd=!0}});m.elements3d.funnel3d=l;m.funnel3d=function(a){var b=this.element3d("funnel3d",a),c=this.styledMode,d={"stroke-width":1,stroke:"none"};b.upperGroup=this.g("funnel3d-upper-group").attr({zIndex:b.frontUpper.zIndex}).add(b);
[b.frontUpper,b.backUpper,b.rightUpper].forEach(function(a){c||a.attr(d);a.add(b.upperGroup)});b.lowerGroup=this.g("funnel3d-lower-group").attr({zIndex:b.frontLower.zIndex}).add(b);[b.frontLower,b.backLower,b.rightLower].forEach(function(a){c||a.attr(d);a.add(b.lowerGroup)});b.gradientForSides=a.gradientForSides;return b};m.funnel3dPath=function(a){this.getCylinderEnd||t("A required Highcharts module is missing: cylinder.js",!0,H[this.chartIndex]);var b=H[this.chartIndex],c=a.alphaCorrection=90-Math.abs(b.options.chart.options3d.alpha%
180-90),d=K.call(this,k(a,{depth:a.width,width:(a.width+a.bottom.width)/2})),l=d.isTop,e=!d.isFront,m=!!a.middle,f=this.getCylinderEnd(b,k(a,{x:a.x-a.width/2,z:a.z-a.width/2,alphaCorrection:c})),h=a.bottom.width,w=k(a,{width:h,x:a.x-h/2,z:a.z-h/2,alphaCorrection:c}),r=this.getCylinderEnd(b,w,!0),y=h,p=w,v=r,n=r;m&&(y=a.middle.width,p=k(a,{y:a.y+a.middle.fraction*a.height,width:y,x:a.x-y/2,z:a.z-y/2}),v=this.getCylinderEnd(b,p,!1),n=this.getCylinderEnd(b,p,!1));d={top:f,bottom:r,frontUpper:this.getCylinderFront(f,
v),zIndexes:{group:d.zIndexes.group,top:0!==l?0:3,bottom:1!==l?0:3,frontUpper:e?2:1,backUpper:e?1:2,rightUpper:e?2:1}};d.backUpper=this.getCylinderBack(f,v);f=1!==Math.min(y,a.width)/Math.max(y,a.width);d.rightUpper=this.getCylinderFront(this.getCylinderEnd(b,k(a,{x:a.x-a.width/2,z:a.z-a.width/2,alphaCorrection:f?-c:0}),!1),this.getCylinderEnd(b,k(p,{alphaCorrection:f?-c:0}),!m));m&&(f=1!==Math.min(y,h)/Math.max(y,h),k(!0,d,{frontLower:this.getCylinderFront(n,r),backLower:this.getCylinderBack(n,r),
rightLower:this.getCylinderFront(this.getCylinderEnd(b,k(w,{alphaCorrection:f?-c:0}),!0),this.getCylinderEnd(b,k(p,{alphaCorrection:f?-c:0}),!1)),zIndexes:{frontLower:e?2:1,backLower:e?1:2,rightLower:e?1:2}}));return d}});t(d,"masters/modules/funnel3d.src.js",[],function(){})});
//# sourceMappingURL=funnel3d.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Solid angular gauge module

 (c) 2010-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/solid-gauge",["highcharts","highcharts/highcharts-more"],function(e){b(e);b.Highcharts=e;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function e(b,q,e,h){b.hasOwnProperty(q)||(b[q]=h.apply(null,e))}b=b?b._modules:{};e(b,"modules/solid-gauge.src.js",[b["parts/Globals.js"],b["parts/Color.js"],b["mixins/legend-symbol.js"],
b["parts/Utilities.js"]],function(b,e,x,h){var l=e.parse,q=h.clamp,u=h.extend,v=h.isNumber,y=h.merge,t=h.pick,w=h.pInt;e=h.seriesType;h=h.wrap;h(b.Renderer.prototype.symbols,"arc",function(a,b,g,d,k,c){a=a(b,g,d,k,c);c.rounded&&(d=((c.r||d)-c.innerR)/2,c=["A",d,d,0,1,1,a[12],a[13]],a.splice.apply(a,[a.length-1,0].concat(["A",d,d,0,1,1,a[1],a[2]])),a.splice.apply(a,[11,3].concat(c)));return a});var z={initDataClasses:function(a){var b=this.chart,g,d=0,k=this.options;this.dataClasses=g=[];a.dataClasses.forEach(function(c,
f){c=y(c);g.push(c);c.color||("category"===k.dataClassColor?(f=b.options.colors,c.color=f[d++],d===f.length&&(d=0)):c.color=l(k.minColor).tweenTo(l(k.maxColor),f/(a.dataClasses.length-1)))})},initStops:function(a){this.stops=a.stops||[[0,this.options.minColor],[1,this.options.maxColor]];this.stops.forEach(function(a){a.color=l(a[1])})},toColor:function(a,b){var g=this.stops,d=this.dataClasses,k;if(d)for(k=d.length;k--;){var c=d[k];var f=c.from;g=c.to;if(("undefined"===typeof f||a>=f)&&("undefined"===
typeof g||a<=g)){var h=c.color;b&&(b.dataClass=k);break}}else{this.isLog&&(a=this.val2lin(a));a=1-(this.max-a)/(this.max-this.min);for(k=g.length;k--&&!(a>g[k][0]););f=g[k]||g[k+1];g=g[k+1]||f;a=1-(g[0]-a)/(g[0]-f[0]||1);h=f.color.tweenTo(g.color,a)}return h}};e("solidgauge","gauge",{colorByPoint:!0,dataLabels:{y:0}},{drawLegendSymbol:x.drawRectangle,translate:function(){var a=this.yAxis;u(a,z);!a.dataClasses&&a.options.dataClasses&&a.initDataClasses(a.options);a.initStops(a.options);b.seriesTypes.gauge.prototype.translate.call(this)},
drawPoints:function(){var a=this,b=a.yAxis,g=b.center,d=a.options,k=a.chart.renderer,c=d.overshoot,h=v(c)?c/180*Math.PI:0,e;v(d.threshold)&&(e=b.startAngleRad+b.translate(d.threshold,null,null,null,!0));this.thresholdAngleRad=t(e,b.startAngleRad);a.points.forEach(function(c){if(!c.isNull){var e=c.graphic,f=b.startAngleRad+b.translate(c.y,null,null,null,!0),r=w(t(c.options.radius,d.radius,100))*g[2]/200,m=w(t(c.options.innerRadius,d.innerRadius,60))*g[2]/200,n=b.toColor(c.y,c),p=Math.min(b.startAngleRad,
b.endAngleRad),l=Math.max(b.startAngleRad,b.endAngleRad);"none"===n&&(n=c.color||a.color||"none");"none"!==n&&(c.color=n);f=q(f,p-h,l+h);!1===d.wrap&&(f=q(f,p,l));p=Math.min(f,a.thresholdAngleRad);f=Math.max(f,a.thresholdAngleRad);f-p>2*Math.PI&&(f=p+2*Math.PI);c.shapeArgs=m={x:g[0],y:g[1],r:r,innerR:m,start:p,end:f,rounded:d.rounded};c.startR=r;e?(r=m.d,e.animate(u({fill:n},m)),r&&(m.d=r)):c.graphic=e=k.arc(m).attr({fill:n,"sweep-flag":0}).add(a.group);a.chart.styledMode||("square"!==d.linecap&&
e.attr({"stroke-linecap":"round","stroke-linejoin":"round"}),e.attr({stroke:d.borderColor||"none","stroke-width":d.borderWidth||0}));e&&e.addClass(c.getClassName(),!0)}})},animate:function(a){a||(this.startAngleRad=this.thresholdAngleRad,b.seriesTypes.pie.prototype.animate.call(this,a))}});""});e(b,"masters/modules/solid-gauge.src.js",[],function(){})});
//# sourceMappingURL=solid-gauge.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 (c) 2017-2019 Highsoft AS
 Authors: Jon Arild Nygard

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/venn",["highcharts"],function(v){a(v);a.Highcharts=v;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function v(a,g,e,f){a.hasOwnProperty(g)||(a[g]=f.apply(null,e))}a=a?a._modules:{};v(a,"mixins/draw-point.js",[],function(){var a=function(g){var e=this,f=e.graphic,a=g.animatableAttribs,u=g.onComplete,k=g.css,x=g.renderer;
if(e.shouldDraw())f||(e.graphic=f=x[g.shapeType](g.shapeArgs).add(g.group)),f.css(k).attr(g.attribs).animate(a,g.isNew?!1:void 0,u);else if(f){var w=function(){e.graphic=f=f.destroy();"function"===typeof u&&u()};Object.keys(a).length?f.animate(a,void 0,function(){w()}):w()}};return function(g){(g.attribs=g.attribs||{})["class"]=this.getClassName();a.call(this,g)}});v(a,"mixins/geometry.js",[],function(){return{getAngleBetweenPoints:function(a,g){return Math.atan2(g.x-a.x,g.y-a.y)},getCenterOfPoints:function(a){var g=
a.reduce(function(g,a){g.x+=a.x;g.y+=a.y;return g},{x:0,y:0});return{x:g.x/a.length,y:g.y/a.length}},getDistanceBetweenPoints:function(a,g){return Math.sqrt(Math.pow(g.x-a.x,2)+Math.pow(g.y-a.y,2))}}});v(a,"mixins/geometry-circles.js",[a["mixins/geometry.js"]],function(a){function g(c,b){b=Math.pow(10,b);return Math.round(c*b)/b}function e(c){if(0>=c)throw Error("radius of circle must be a positive number.");return Math.PI*c*c}function f(c,b){return c*c*Math.acos(1-b/c)-(c-b)*Math.sqrt(b*(2*c-b))}
function u(c,b){var a=t(c,b),h=c.r,e=b.r,f=[];if(a<h+e&&a>Math.abs(h-e)){h*=h;var k=(h-e*e+a*a)/(2*a);e=Math.sqrt(h-k*k);h=c.x;f=b.x;c=c.y;var n=b.y;b=h+k*(f-h)/a;k=c+k*(n-c)/a;c=e/a*-(n-c);a=e/a*-(f-h);f=[{x:g(b+c,14),y:g(k-a,14)},{x:g(b-c,14),y:g(k+a,14)}]}return f}function n(c){return c.reduce(function(c,a,g,e){e=e.slice(g+1).reduce(function(c,b,e){var h=[g,e+g+1];return c.concat(u(a,b).map(function(c){c.indexes=h;return c}))},[]);return c.concat(e)},[])}function k(c,b){return t(c,b)<=b.r+1e-10}
function x(c,b){return!b.some(function(b){return!k(c,b)})}function w(c){return n(c).filter(function(b){return x(b,c)})}var q=a.getAngleBetweenPoints,r=a.getCenterOfPoints,t=a.getDistanceBetweenPoints;return{getAreaOfCircle:e,getAreaOfIntersectionBetweenCircles:function(c){var b=w(c);if(1<b.length){var a=r(b);b=b.map(function(c){c.angle=q(a,c);return c}).sort(function(c,b){return b.angle-c.angle});var g=b[b.length-1];b=b.reduce(function(b,a){var g=b.startPoint,e=r([g,a]),f=a.indexes.filter(function(c){return-1<
g.indexes.indexOf(c)}).reduce(function(b,f){f=c[f];var h=q(f,a),k=q(f,g);h=k-(k-h+(k<h?2*Math.PI:0))/2;h=t(e,{x:f.x+f.r*Math.sin(h),y:f.y+f.r*Math.cos(h)});f=f.r;h>2*f&&(h=2*f);if(!b||b.width>h)b={r:f,largeArc:h>f?1:0,width:h,x:a.x,y:a.y};return b},null);if(f){var h=f.r;b.arcs.push(["A",h,h,0,f.largeArc,1,f.x,f.y]);b.startPoint=a}return b},{startPoint:g,arcs:[]}).arcs;if(0!==b.length&&1!==b.length){b.unshift(["M",g.x,g.y]);var e={center:a,d:b}}}return e},getCircleCircleIntersection:u,getCirclesIntersectionPoints:n,
getCirclesIntersectionPolygon:w,getCircularSegmentArea:f,getOverlapBetweenCircles:function(c,b,a){var h=0;a<c+b&&(a<=Math.abs(b-c)?h=e(c<b?c:b):(h=(c*c-b*b+a*a)/(2*a),a-=h,h=f(c,c-h)+f(b,b-a)),h=g(h,14));return h},isCircle1CompletelyOverlappingCircle2:function(c,b){return t(c,b)+b.r<c.r+1e-10},isPointInsideCircle:k,isPointInsideAllCircles:x,isPointOutsideAllCircles:function(c,b){return!b.some(function(b){return k(c,b)})},round:g}});v(a,"mixins/nelder-mead.js",[],function(){var a=function(a){a=a.slice(0,
-1);for(var g=a.length,f=[],u=function(a,g){a.sum+=g[a.i];return a},n=0;n<g;n++)f[n]=a.reduce(u,{sum:0,i:n}).sum/g;return f};return{getCentroid:a,nelderMead:function(g,e){var f=function(a,b){return a.fx-b.fx},u=function(a,b,g,f){return b.map(function(b,c){return a*b+g*f[c]})},n=function(a,b){b.fx=g(b);a[a.length-1]=b;return a},k=function(a){var b=a[0];return a.map(function(a){a=u(.5,b,.5,a);a.fx=g(a);return a})},x=function(a,b,f,e){a=u(f,a,e,b);a.fx=g(a);return a};e=function(a){var b=a.length,c=Array(b+
1);c[0]=a;c[0].fx=g(a);for(var f=0;f<b;++f){var e=a.slice();e[f]=e[f]?1.05*e[f]:.001;e.fx=g(e);c[f+1]=e}return c}(e);for(var w=0;100>w;w++){e.sort(f);var q=e[e.length-1],r=a(e),t=x(r,q,2,-1);t.fx<e[0].fx?(q=x(r,q,3,-2),e=n(e,q.fx<t.fx?q:t)):t.fx>=e[e.length-2].fx?t.fx>q.fx?(r=x(r,q,.5,.5),e=r.fx<q.fx?n(e,r):k(e)):(r=x(r,q,1.5,-.5),e=r.fx<t.fx?n(e,r):k(e)):e=n(e,t)}return e[0]}}});v(a,"modules/venn.src.js",[a["parts/Globals.js"],a["mixins/draw-point.js"],a["mixins/geometry.js"],a["mixins/geometry-circles.js"],
a["mixins/nelder-mead.js"],a["parts/Color.js"],a["parts/Utilities.js"]],function(a,g,e,f,v,n,k){function u(a,b){var d=a.sets,l=b.reduce(function(a,b){var p=-1<d.indexOf(b.sets[0]);a[p?"internal":"external"].push(b.circle);return a},{internal:[],external:[]});l.external=l.external.filter(function(a){return l.internal.some(function(d){return!R(a,d)})});a=X(l.internal,l.external);b=J(a,l.internal,l.external);return{position:a,width:b}}function w(a){var d={},b={};if(0<a.length){var l=K(a),p=a.filter(A);
a.forEach(function(a){var m=a.sets,c=m.join();if(m=A(a)?l[c]:r(m.map(function(a){return l[a]})))d[c]=m,b[c]=u(a,p)})}return{mapOfIdToShape:d,mapOfIdToLabelValues:b}}var q=f.getAreaOfCircle,r=f.getAreaOfIntersectionBetweenCircles,t=f.getCircleCircleIntersection,c=f.getCirclesIntersectionPolygon,b=f.getOverlapBetweenCircles,R=f.isCircle1CompletelyOverlappingCircle2,h=f.isPointInsideAllCircles,S=f.isPointInsideCircle,F=f.isPointOutsideAllCircles,T=v.nelderMead,U=n.parse;n=k.addEvent;var V=k.animObject,
G=k.extend,z=k.isArray,y=k.isNumber,B=k.isObject,W=k.isString,H=k.merge;k=k.seriesType;var Y=e.getCenterOfPoints,C=e.getDistanceBetweenPoints;a=a.seriesTypes;var Z=function(a){return Object.keys(a).map(function(b){return a[b]})},aa=function(a){var d=0;2===a.length&&(d=a[0],a=a[1],d=b(d.r,a.r,C(d,a)));return d},L=function(a,b){return b.reduce(function(b,d){var p=0;1<d.sets.length&&(p=d.value,d=aa(d.sets.map(function(b){return a[b]})),d=p-d,p=Math.round(d*d*1E11)/1E11);return b+p},0)},M=function(a,
b,m,c,p){var d=a(b),f=a(m);p=p||100;c=c||1e-10;var l=m-b,g=1;if(b>=m)throw Error("a must be smaller than b.");if(0<d*f)throw Error("f(a) and f(b) must have opposite signs.");if(0===d)var e=b;else if(0===f)e=m;else for(;g++<=p&&0!==I&&l>c;){l=(m-b)/2;e=b+l;var I=a(e);0<d*I?b=e:m=e}return e},D=function(a,c,m){var d=a+c;return 0>=m?d:q(a<c?a:c)<=m?0:M(function(d){d=b(a,c,d);return m-d},0,d)},A=function(a){return z(a.sets)&&1===a.sets.length},E=function(a,b,c){b=b.reduce(function(b,d){d=d.r-C(a,d);return d<=
b?d:b},Number.MAX_VALUE);return b=c.reduce(function(b,d){d=C(a,d)-d.r;return d<=b?d:b},b)},X=function(a,b){var d=a.reduce(function(d,c){var m=c.r/2;return[{x:c.x,y:c.y},{x:c.x+m,y:c.y},{x:c.x-m,y:c.y},{x:c.x,y:c.y+m},{x:c.x,y:c.y-m}].reduce(function(d,c){var m=E(c,a,b);d.margin<m&&(d.point=c,d.margin=m);return d},d)},{point:void 0,margin:-Number.MAX_VALUE}).point;d=T(function(d){return-E({x:d[0],y:d[1]},a,b)},[d.x,d.y]);d={x:d[0],y:d[1]};h(d,a)&&F(d,b)||(d=1<a.length?Y(c(a)):{x:a[0].x,y:a[0].y});
return d},J=function(a,b,c){var d=b.reduce(function(a,b){return Math.min(b.r,a)},Infinity),m=c.filter(function(b){return!S(a,b)});c=function(d,c){return M(function(f){var e={x:a.x+c*f,y:a.y};e=h(e,b)&&F(e,m);return-(d-f)+(e?0:Number.MAX_VALUE)},0,d)};return 2*Math.min(c(d,-1),c(d,1))},N=function(a){var b=a.filter(function(a){return 2===a.sets.length}).reduce(function(a,b){b.sets.forEach(function(d,c,e){B(a[d])||(a[d]={overlapping:{},totalOverlap:0});a[d].totalOverlap+=b.value;a[d].overlapping[e[1-
c]]=b.value});return a},{});a.filter(A).forEach(function(a){G(a,b[a.sets[0]])});return a},O=function(a,b){return b.totalOverlap-a.totalOverlap},K=function(a){var b=[],d={};a.filter(function(a){return 1===a.sets.length}).forEach(function(a){d[a.sets[0]]=a.circle={x:Number.MAX_VALUE,y:Number.MAX_VALUE,r:Math.sqrt(a.value/Math.PI)}});var c=function(a,d){var c=a.circle;c.x=d.x;c.y=d.y;b.push(a)};N(a);var e=a.filter(A).sort(O);c(e.shift(),{x:0,y:0});var f=a.filter(function(a){return 2===a.sets.length});
e.forEach(function(a){var e=a.circle,g=e.r,m=a.overlapping,p=b.reduce(function(a,c,p){var l=c.circle,h=D(g,l.r,m[c.sets[0]]),k=[{x:l.x+h,y:l.y},{x:l.x-h,y:l.y},{x:l.x,y:l.y+h},{x:l.x,y:l.y-h}];b.slice(p+1).forEach(function(a){var b=a.circle;a=D(g,b.r,m[a.sets[0]]);k=k.concat(t({x:l.x,y:l.y,r:h},{x:b.x,y:b.y,r:a}))});k.forEach(function(b){e.x=b.x;e.y=b.y;var c=L(d,f);c<a.loss&&(a.loss=c,a.coordinates=b)});return a},{loss:Number.MAX_VALUE,coordinates:void 0});c(a,p.coordinates)});return d},P=function(a){var b=
{};return B(a)&&y(a.value)&&-1<a.value&&z(a.sets)&&0<a.sets.length&&!a.sets.some(function(a){var c=!1;!b[a]&&W(a)?b[a]=!0:c=!0;return c})},Q=function(a){a=z(a)?a:[];var b=a.reduce(function(a,b){P(b)&&A(b)&&0<b.value&&-1===a.indexOf(b.sets[0])&&a.push(b.sets[0]);return a},[]).sort(),c=a.reduce(function(a,c){P(c)&&!c.sets.some(function(a){return-1===b.indexOf(a)})&&(a[c.sets.sort().join()]=c);return a},{});b.reduce(function(a,b,c,d){d.slice(c+1).forEach(function(c){a.push(b+","+c)});return a},[]).forEach(function(a){if(!c[a]){var b=
{sets:a.split(","),value:0};c[a]=b}});return Z(c)},ba=function(a,b,c){var d=c.bottom-c.top,e=c.right-c.left;d=Math.min(0<e?1/e*a:1,0<d?1/d*b:1);return{scale:d,centerX:a/2-(c.right+c.left)/2*d,centerY:b/2-(c.top+c.bottom)/2*d}};k("venn","scatter",{borderColor:"#cccccc",borderDashStyle:"solid",borderWidth:1,brighten:0,clip:!1,colorByPoint:!0,dataLabels:{enabled:!0,verticalAlign:"middle",formatter:function(){return this.point.name}},inactiveOtherPoints:!0,marker:!1,opacity:.75,showInLegend:!1,states:{hover:{opacity:1,
borderColor:"#333333"},select:{color:"#cccccc",borderColor:"#000000",animation:!1},inactive:{opacity:.075}},tooltip:{pointFormat:"{point.name}: {point.value}"}},{isCartesian:!1,axisTypes:[],directTouch:!0,pointArrayMap:["value"],translate:function(){var a=this.chart;this.processedXData=this.xData;this.generatePoints();var b=Q(this.options.data);b=w(b);var c=b.mapOfIdToShape,e=b.mapOfIdToLabelValues;b=Object.keys(c).filter(function(a){return(a=c[a])&&y(a.r)}).reduce(function(a,b){var d=c[b];b=d.x-
d.r;var f=d.x+d.r,e=d.y+d.r;d=d.y-d.r;if(!y(a.left)||a.left>b)a.left=b;if(!y(a.right)||a.right<f)a.right=f;if(!y(a.top)||a.top>d)a.top=d;if(!y(a.bottom)||a.bottom<e)a.bottom=e;return a},{top:0,bottom:0,left:0,right:0});a=ba(a.plotWidth,a.plotHeight,b);var f=a.scale,g=a.centerX,h=a.centerY;this.points.forEach(function(a){var b=z(a.sets)?a.sets:[],d=b.join(),m=c[d],k,l=e[d]||{};d=l.width;l=l.position;var p=a.options&&a.options.dataLabels;m&&(m.r?k={x:g+m.x*f,y:h+m.y*f,r:m.r*f}:m.d&&(k={d:m.d.reduce(function(a,
b){"M"===b[0]?(b[1]=g+b[1]*f,b[2]=h+b[2]*f):"A"===b[0]&&(b[1]*=f,b[2]*=f,b[6]=g+b[6]*f,b[7]=h+b[7]*f);return a.concat(b)},[]).join(" ")}),l?(l.x=g+l.x*f,l.y=h+l.y*f):l={},y(d)&&(d=Math.round(d*f)));a.shapeArgs=k;l&&k&&(a.plotX=l.x,a.plotY=l.y);d&&k&&(a.dlOptions=H(!0,{style:{width:d}},B(p)&&p));a.name=a.options.name||b.join("\u2229")})},drawPoints:function(){var a=this,b=a.chart,c=a.group,f=b.renderer;(a.points||[]).forEach(function(d){var e={zIndex:z(d.sets)?d.sets.length:0},g=d.shapeArgs;b.styledMode||
G(e,a.pointAttribs(d,d.state));d.draw({isNew:!d.graphic,animatableAttribs:g,attribs:e,group:c,renderer:f,shapeType:g&&g.d?"path":"circle"})})},pointAttribs:function(a,b){var c=this.options||{};a=H(c,{color:a&&a.color},a&&a.options||{},b&&c.states[b]||{});return{fill:U(a.color).setOpacity(a.opacity).brighten(a.brightness).get(),stroke:a.borderColor,"stroke-width":a.borderWidth,dashstyle:a.borderDashStyle}},animate:function(a){if(!a){var b=V(this.options.animation);this.points.forEach(function(a){var c=
a.shapeArgs;if(a.graphic&&c){var d={},e={};c.d?d.opacity=.001:(d.r=0,e.r=c.r);a.graphic.attr(d).animate(e,b);c.d&&setTimeout(function(){a&&a.graphic&&a.graphic.animate({opacity:1})},b.duration)}},this)}},utils:{addOverlapToSets:N,geometry:e,geometryCircles:f,getLabelWidth:J,getMarginFromCircles:E,getDistanceBetweenCirclesByOverlap:D,layoutGreedyVenn:K,loss:L,nelderMead:v,processVennData:Q,sortByTotalOverlap:O}},{draw:g,shouldDraw:function(){return!!this.shapeArgs},isValid:function(){return y(this.value)}});
n(a.venn,"afterSetOptions",function(a){var b=a.options.states;this.is("venn")&&Object.keys(b).forEach(function(a){b[a].halo=!1})})});v(a,"masters/modules/venn.src.js",[],function(){})});
//# sourceMappingURL=venn.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Accessibility module

 (c) 2010-2019 Highsoft AS
 Author: Oystein Moseng

 License: www.highcharts.com/license
*/
(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/accessibility",["highcharts"],function(t){a(t);a.Highcharts=t;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function t(a,f,l,m){a.hasOwnProperty(f)||(a[f]=m.apply(null,l))}a=a?a._modules:{};t(a,"modules/accessibility/utils/htmlUtilities.js",[a["parts/Utilities.js"],a["parts/Globals.js"]],function(a,f){function q(a){return a.replace(/&/g,
"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/\//g,"&#x2F;")}var m=a.merge,p=f.win,e=p.document;return{addClass:function(a,g){a.classList?a.classList.add(g):0>a.className.indexOf(g)&&(a.className+=g)},escapeStringForHTML:q,getElement:function(a){return e.getElementById(a)},getFakeMouseEvent:function(a){if("function"===typeof p.MouseEvent)return new p.MouseEvent(a);if(e.createEvent){var g=e.createEvent("MouseEvent");if(g.initMouseEvent)return g.initMouseEvent(a,
!0,!0,p,"click"===a?1:0,0,0,0,0,!1,!1,!1,!1,0,null),g}return{type:a}},removeElement:function(a){a&&a.parentNode&&a.parentNode.removeChild(a)},reverseChildNodes:function(a){for(var g=a.childNodes.length;g--;)a.appendChild(a.childNodes[g])},setElAttrs:function(a,g){Object.keys(g).forEach(function(e){var c=g[e];null===c?a.removeAttribute(e):(c=q(""+c),a.setAttribute(e,c))})},stripHTMLTagsFromString:function(a){return"string"===typeof a?a.replace(/<\/?[^>]+(>|$)/g,""):a},visuallyHideElement:function(a){m(!0,
a.style,{position:"absolute",width:"1px",height:"1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(1px, 1px, 1px, 1px)",marginTop:"-3px","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)",filter:"alpha(opacity=1)",opacity:"0.01"})}}});t(a,"modules/accessibility/utils/chartUtilities.js",[a["modules/accessibility/utils/htmlUtilities.js"],a["parts/Utilities.js"]],function(a,f){function q(a){if(a.points&&a.points.length&&a.points[0].graphic)return a.points[0].graphic.element}function m(a){var g=
q(a);return g&&g.parentNode||a.graph&&a.graph.element||a.group&&a.group.element}function p(a,e){e.setAttribute("aria-hidden",!1);e!==a.renderTo&&e.parentNode&&(Array.prototype.forEach.call(e.parentNode.childNodes,function(a){a.hasAttribute("aria-hidden")||a.setAttribute("aria-hidden",!0)}),p(a,e.parentNode))}var e=a.stripHTMLTagsFromString,h=f.find;return{getChartTitle:function(a){return e(a.options.title.text||a.langFormat("accessibility.defaultChartTitle",{chart:a}))},getAxisDescription:function(a){return e(a&&
(a.userOptions&&a.userOptions.accessibility&&a.userOptions.accessibility.description||a.axisTitle&&a.axisTitle.textStr||a.options.id||a.categories&&"categories"||a.isDatetimeAxis&&"Time"||"values"))},getPointFromXY:function(a,e,c){for(var d=a.length,b;d--;)if(b=h(a[d].points||[],function(b){return b.x===e&&b.y===c}))return b},getSeriesFirstPointElement:q,getSeriesFromName:function(a,e){return e?(a.series||[]).filter(function(a){return a.name===e}):a.series},getSeriesA11yElement:m,unhideChartElementFromAT:p,
hideSeriesFromAT:function(a){(a=m(a))&&a.setAttribute("aria-hidden",!0)}}});t(a,"modules/accessibility/KeyboardNavigationHandler.js",[a["parts/Utilities.js"]],function(a){function q(a,q){this.chart=a;this.keyCodeMap=q.keyCodeMap||[];this.validate=q.validate;this.init=q.init;this.terminate=q.terminate;this.response={success:1,prev:2,next:3,noHandler:4,fail:5}}var l=a.find;q.prototype={run:function(a){var q=a.which||a.keyCode,e=this.response.noHandler,h=l(this.keyCodeMap,function(a){return-1<a[0].indexOf(q)});
h?e=h[1].call(this,q,a):9===q&&(e=this.response[a.shiftKey?"prev":"next"]);return e}};return q});t(a,"modules/accessibility/utils/EventProvider.js",[a["parts/Globals.js"],a["parts/Utilities.js"]],function(a,f){var q=f.addEvent;f=f.extend;var m=function(){this.eventRemovers=[]};f(m.prototype,{addEvent:function(){var f=q.apply(a,arguments);this.eventRemovers.push(f);return f},removeAddedEvents:function(){this.eventRemovers.forEach(function(a){a()});this.eventRemovers=[]}});return m});t(a,"modules/accessibility/utils/DOMElementProvider.js",
[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/utils/htmlUtilities.js"]],function(a,f,l){var q=a.win.document;a=f.extend;var p=l.removeElement;l=function(){this.elements=[]};a(l.prototype,{createElement:function(){var a=q.createElement.apply(q,arguments);this.elements.push(a);return a},destroyCreatedElements:function(){this.elements.forEach(function(a){p(a)});this.elements=[]}});return l});t(a,"modules/accessibility/AccessibilityComponent.js",[a["parts/Globals.js"],a["parts/Utilities.js"],
a["modules/accessibility/utils/htmlUtilities.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/utils/EventProvider.js"],a["modules/accessibility/utils/DOMElementProvider.js"]],function(a,f,l,m,p,e){function h(){}var g=a.win,n=g.document,c=a.fireEvent;a=f.extend;var d=f.merge,b=l.removeElement,r=l.getFakeMouseEvent,k=m.unhideChartElementFromAT;h.prototype={initBase:function(b){this.chart=b;this.eventProvider=new p;this.domElementProvider=new e;this.keyCodes={left:37,
right:39,up:38,down:40,enter:13,space:32,esc:27,tab:9}},addEvent:function(){return this.eventProvider.addEvent.apply(this.eventProvider,arguments)},createElement:function(){return this.domElementProvider.createElement.apply(this.domElementProvider,arguments)},fireEventOnWrappedOrUnwrappedElement:function(b,a){var d=a.type;n.createEvent&&(b.dispatchEvent||b.fireEvent)?b.dispatchEvent?b.dispatchEvent(a):b.fireEvent(d,a):c(b,d,a)},fakeClickEvent:function(b){if(b){var a=r("click");this.fireEventOnWrappedOrUnwrappedElement(b,
a)}},addProxyGroup:function(b){this.createOrUpdateProxyContainer();var a=this.createElement("div");Object.keys(b||{}).forEach(function(d){null!==b[d]&&a.setAttribute(d,b[d])});this.chart.a11yProxyContainer.appendChild(a);return a},createOrUpdateProxyContainer:function(){var b=this.chart,a=b.renderer.box;b.a11yProxyContainer=b.a11yProxyContainer||this.createProxyContainerElement();a.nextSibling!==b.a11yProxyContainer&&b.container.insertBefore(b.a11yProxyContainer,a.nextSibling)},createProxyContainerElement:function(){var b=
n.createElement("div");b.className="highcharts-a11y-proxy-container";return b},createProxyButton:function(b,a,r,c,e){var x=b.element,v=this.createElement("button"),u=d({"aria-label":x.getAttribute("aria-label")},r);b=this.getElementPosition(c||b);Object.keys(u).forEach(function(b){null!==u[b]&&v.setAttribute(b,u[b])});v.className="highcharts-a11y-proxy-button";e&&this.addEvent(v,"click",e);this.setProxyButtonStyle(v,b);this.proxyMouseEventsForButton(x,v);a.appendChild(v);u["aria-hidden"]||k(this.chart,
v);return v},getElementPosition:function(b){var a=b.element;return(b=this.chart.renderTo)&&a&&a.getBoundingClientRect?(a=a.getBoundingClientRect(),b=b.getBoundingClientRect(),{x:a.left-b.left,y:a.top-b.top,width:a.right-a.left,height:a.bottom-a.top}):{x:0,y:0,width:1,height:1}},setProxyButtonStyle:function(b,a){d(!0,b.style,{"border-width":0,"background-color":"transparent",cursor:"pointer",outline:"none",opacity:.001,filter:"alpha(opacity=1)","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)",
zIndex:999,overflow:"hidden",padding:0,margin:0,display:"block",position:"absolute",width:(a.width||1)+"px",height:(a.height||1)+"px",left:(a.x||0)+"px",top:(a.y||0)+"px"})},proxyMouseEventsForButton:function(b,a){var d=this;"click touchstart touchend touchcancel touchmove mouseover mouseenter mouseleave mouseout".split(" ").forEach(function(r){d.addEvent(a,r,function(a){var r=d.cloneMouseEvent(a);b&&d.fireEventOnWrappedOrUnwrappedElement(b,r);a.stopPropagation();a.preventDefault()})})},cloneMouseEvent:function(b){if("function"===
typeof g.MouseEvent)return new g.MouseEvent(b.type,b);if(n.createEvent){var a=n.createEvent("MouseEvent");if(a.initMouseEvent)return a.initMouseEvent(b.type,b.bubbles,b.cancelable,b.view||g,b.detail,b.screenX,b.screenY,b.clientX,b.clientY,b.ctrlKey,b.altKey,b.shiftKey,b.metaKey,b.button,b.relatedTarget),a}return r(b.type)},destroyBase:function(){b(this.chart.a11yProxyContainer);this.domElementProvider.destroyCreatedElements();this.eventProvider.removeAddedEvents()}};a(h.prototype,{init:function(){},
getKeyboardNavigation:function(){},onChartUpdate:function(){},onChartRender:function(){},destroy:function(){}});return h});t(a,"modules/accessibility/KeyboardNavigation.js",[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/utils/htmlUtilities.js"],a["modules/accessibility/utils/EventProvider.js"]],function(a,f,l,m){function q(a,b){this.init(a,b)}var e=a.win,h=e.document,g=f.addEvent,n=f.fireEvent,c=l.getElement;g(h,"keydown",function(d){27===(d.which||d.keyCode)&&a.charts&&a.charts.forEach(function(b){b&&
b.dismissPopupContent&&b.dismissPopupContent()})});a.Chart.prototype.dismissPopupContent=function(){var a=this;n(this,"dismissPopupContent",{},function(){a.tooltip&&a.tooltip.hide(0);a.hideExportMenu()})};q.prototype={init:function(a,b){var d=this,k=this.eventProvider=new m;this.chart=a;this.components=b;this.modules=[];this.currentModuleIx=0;k.addEvent(a.renderTo,"keydown",function(b){return d.onKeydown(b)});k.addEvent(a.container,"focus",function(b){return d.onFocus(b)});k.addEvent(h,"mouseup",
function(){return d.onMouseUp()});k.addEvent(a.renderTo,"mouseover",function(){d.pointerIsOverChart=!0});k.addEvent(a.renderTo,"mouseout",function(){d.pointerIsOverChart=!1});this.update();this.modules.length&&this.modules[0].init(1)},update:function(a){var b=this.chart.options.accessibility;b=b&&b.keyboardNavigation;var d=this.components;this.updateContainerTabindex();b&&b.enabled&&a&&a.length?(this.modules=a.reduce(function(b,a){a=d[a].getKeyboardNavigation();return b.concat(a)},[]),this.updateExitAnchor()):
(this.modules=[],this.currentModuleIx=0,this.removeExitAnchor())},onFocus:function(a){var b,d=this.chart;a.relatedTarget&&d.container.contains(a.relatedTarget)||(null===(b=this.modules[0])||void 0===b?void 0:b.init(1))},onMouseUp:function(){if(!this.keyboardReset&&!this.pointerIsOverChart){var a=this.chart,b=this.modules&&this.modules[this.currentModuleIx||0];b&&b.terminate&&b.terminate();a.focusElement&&a.focusElement.removeFocusBorder();this.currentModuleIx=0;this.keyboardReset=!0}},onKeydown:function(a){a=
a||e.event;var b,d=this.modules&&this.modules.length&&this.modules[this.currentModuleIx];this.keyboardReset=!1;if(d){var k=d.run(a);k===d.response.success?b=!0:k===d.response.prev?b=this.prev():k===d.response.next&&(b=this.next());b&&(a.preventDefault(),a.stopPropagation())}},prev:function(){return this.move(-1)},next:function(){return this.move(1)},move:function(a){var b=this.modules&&this.modules[this.currentModuleIx];b&&b.terminate&&b.terminate(a);this.chart.focusElement&&this.chart.focusElement.removeFocusBorder();
this.currentModuleIx+=a;if(b=this.modules&&this.modules[this.currentModuleIx]){if(b.validate&&!b.validate())return this.move(a);if(b.init)return b.init(a),!0}this.currentModuleIx=0;0<a?(this.exiting=!0,this.exitAnchor.focus()):this.chart.container.focus();return!1},updateExitAnchor:function(){var a=c("highcharts-end-of-chart-marker-"+this.chart.index);this.removeExitAnchor();a?(this.makeElementAnExitAnchor(a),this.exitAnchor=a):this.createExitAnchor()},updateContainerTabindex:function(){var a=this.chart.options.accessibility;
a=a&&a.keyboardNavigation;a=!(a&&!1===a.enabled);var b=this.chart.container,r=b.getAttribute("tabIndex");a&&!r?b.setAttribute("tabindex","0"):a||"0"!==r||b.removeAttribute("tabindex")},makeElementAnExitAnchor:function(a){a.setAttribute("class","highcharts-exit-anchor");a.setAttribute("tabindex","0");a.setAttribute("aria-hidden",!1);this.addExitAnchorEventsToEl(a)},createExitAnchor:function(){var a=this.chart,b=this.exitAnchor=h.createElement("div");a.renderTo.appendChild(b);this.makeElementAnExitAnchor(b)},
removeExitAnchor:function(){this.exitAnchor&&this.exitAnchor.parentNode&&(this.exitAnchor.parentNode.removeChild(this.exitAnchor),delete this.exitAnchor)},addExitAnchorEventsToEl:function(a){var b=this.chart,d=this;this.eventProvider.addEvent(a,"focus",function(a){a=a||e.event;a.relatedTarget&&b.container.contains(a.relatedTarget)||d.exiting?d.exiting=!1:(b.renderTo.focus(),a.preventDefault(),d.modules&&d.modules.length&&(d.currentModuleIx=d.modules.length-1,(a=d.modules[d.currentModuleIx])&&a.validate&&
!a.validate()?d.prev():a&&a.init(-1)))})},destroy:function(){this.removeExitAnchor();this.eventProvider.removeAddedEvents();"0"===this.chart.container.getAttribute("tabindex")&&this.chart.container.removeAttribute("tabindex")}};return q});t(a,"modules/accessibility/components/LegendComponent.js",[a["parts/Globals.js"],a["parts/Legend.js"],a["parts/Utilities.js"],a["modules/accessibility/AccessibilityComponent.js"],a["modules/accessibility/KeyboardNavigationHandler.js"],a["modules/accessibility/utils/htmlUtilities.js"]],
function(a,f,l,m,p,e){var h=l.addEvent,g=l.extend,n=l.fireEvent,c=e.stripHTMLTagsFromString,d=e.removeElement;a.Chart.prototype.highlightLegendItem=function(b){var a=this.legend.allItems,d=this.highlightedLegendItemIx;if(a[b]){a[d]&&n(a[d].legendGroup.element,"mouseout");d=this.legend;var c=d.allItems[b].pageIx,e=d.currentPage;"undefined"!==typeof c&&c+1!==e&&d.scroll(1+c-e);this.setFocusToElement(a[b].legendItem,a[b].a11yProxyElement);n(a[b].legendGroup.element,"mouseover");return!0}return!1};h(f,
"afterColorizeItem",function(a){var b=a.item;this.chart.options.accessibility.enabled&&b&&b.a11yProxyElement&&b.a11yProxyElement.setAttribute("aria-pressed",a.visible?"false":"true")});a=function(){};a.prototype=new m;g(a.prototype,{init:function(){var a=this;this.addEvent(f,"afterScroll",function(){this.chart===a.chart&&a.updateProxies()})},updateLegendItemProxyVisibility:function(){var a=this.chart.legend,d=a.currentPage||1;(a.allItems||[]).forEach(function(a){var b=(a.pageIx||0)!==d-1;a.a11yProxyElement&&
(a.a11yProxyElement.style.visibility=b?"hidden":"visible")})},onChartRender:function(){this.legendProxyButtonClicked?delete this.legendProxyButtonClicked:this.updateProxies()},updateProxies:function(){d(this.legendProxyGroup);var a=this.chart,c=a.legend&&a.legend.allItems,k=a.options.legend.accessibility||{};!c||!c.length||a.colorAxis&&a.colorAxis.length||!1===k.enabled||(this.addLegendProxyGroup(),this.proxyLegendItems(),this.updateLegendItemProxyVisibility())},addLegendProxyGroup:function(){var a=
this.chart.options.accessibility,d=this.chart.langFormat("accessibility.legend.legendLabel",{});this.legendProxyGroup=this.addProxyGroup({"aria-label":d,role:"all"===a.landmarkVerbosity?"region":null})},proxyLegendItems:function(){var a=this;(this.chart.legend&&this.chart.legend.allItems||[]).forEach(function(b){b.legendItem&&b.legendItem.element&&a.proxyLegendItem(b)})},proxyLegendItem:function(a){var b=this,d=this.chart.langFormat("accessibility.legend.legendItem",{chart:this.chart,itemName:c(a.name)});
a.a11yProxyElement=this.createProxyButton(a.legendItem,this.legendProxyGroup,{tabindex:-1,"aria-pressed":!a.visible,"aria-label":d},a.legendGroup.div?a.legendItem:a.legendGroup,function(){b.legendProxyButtonClicked=!0})},getKeyboardNavigation:function(){var a=this.keyCodes,d=this;return new p(this.chart,{keyCodeMap:[[[a.left,a.right,a.up,a.down],function(a){return d.onKbdArrowKey(this,a)}],[[a.enter,a.space],function(){return d.onKbdClick(this)}]],validate:function(){return d.shouldHaveLegendNavigation()},
init:function(a){return d.onKbdNavigationInit(a)}})},onKbdArrowKey:function(a,d){var b=this.keyCodes,c=a.response,r=this.chart,v=r.options.accessibility,e=r.legend.allItems.length;d=d===b.left||d===b.up?-1:1;return r.highlightLegendItem(this.highlightedLegendItemIx+d)?(this.highlightedLegendItemIx+=d,c.success):1<e&&v.keyboardNavigation.wrapAround?(a.init(d),c.success):c[0<d?"next":"prev"]},onKbdClick:function(a){var b=this.chart.legend.allItems[this.highlightedLegendItemIx];b&&b.a11yProxyElement&&
n(b.a11yProxyElement,"click");return a.response.success},shouldHaveLegendNavigation:function(){var a=this.chart,d=a.colorAxis&&a.colorAxis.length,c=(a.options.legend||{}).accessibility||{};return!!(a.legend&&a.legend.allItems&&a.legend.display&&!d&&c.enabled&&c.keyboardNavigation&&c.keyboardNavigation.enabled)},onKbdNavigationInit:function(a){var b=this.chart,d=b.legend.allItems.length-1;a=0<a?0:d;b.highlightLegendItem(a);this.highlightedLegendItemIx=a}});return a});t(a,"modules/accessibility/components/MenuComponent.js",
[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/AccessibilityComponent.js"],a["modules/accessibility/KeyboardNavigationHandler.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/utils/htmlUtilities.js"]],function(a,f,l,m,p,e){function h(a){return a.exportSVGElements&&a.exportSVGElements[0]}f=f.extend;var g=p.unhideChartElementFromAT,n=e.removeElement,c=e.getFakeMouseEvent;a.Chart.prototype.showExportMenu=function(){var a=h(this);if(a&&(a=a.element,
a.onclick))a.onclick(c("click"))};a.Chart.prototype.hideExportMenu=function(){var a=this.exportDivElements;a&&this.exportContextMenu&&(a.forEach(function(a){if("highcharts-menu-item"===a.className&&a.onmouseout)a.onmouseout(c("mouseout"))}),this.highlightedExportItemIx=0,this.exportContextMenu.hideMenu(),this.container.focus())};a.Chart.prototype.highlightExportItem=function(a){var b=this.exportDivElements&&this.exportDivElements[a],d=this.exportDivElements&&this.exportDivElements[this.highlightedExportItemIx];
if(b&&"LI"===b.tagName&&(!b.children||!b.children.length)){var k=!!(this.renderTo.getElementsByTagName("g")[0]||{}).focus;b.focus&&k&&b.focus();if(d&&d.onmouseout)d.onmouseout(c("mouseout"));if(b.onmouseover)b.onmouseover(c("mouseover"));this.highlightedExportItemIx=a;return!0}return!1};a.Chart.prototype.highlightLastExportItem=function(){var a;if(this.exportDivElements)for(a=this.exportDivElements.length;a--;)if(this.highlightExportItem(a))return!0;return!1};a=function(){};a.prototype=new l;f(a.prototype,
{init:function(){var a=this.chart,b=this;this.addEvent(a,"exportMenuShown",function(){b.onMenuShown()});this.addEvent(a,"exportMenuHidden",function(){b.onMenuHidden()})},onMenuHidden:function(){var a=this.chart.exportContextMenu;a&&a.setAttribute("aria-hidden","true");this.isExportMenuShown=!1;this.setExportButtonExpandedState("false")},onMenuShown:function(){var a=this.chart,b=a.exportContextMenu;b&&(this.addAccessibleContextMenuAttribs(),g(a,b));this.isExportMenuShown=!0;this.setExportButtonExpandedState("true")},
setExportButtonExpandedState:function(a){var b=this.exportButtonProxy;b&&b.setAttribute("aria-expanded",a)},onChartRender:function(){var a=this.chart,b=a.options.accessibility;n(this.exportProxyGroup);var c=a.options.exporting,k=h(a);c&&!1!==c.enabled&&c.accessibility&&c.accessibility.enabled&&k&&k.element&&(this.exportProxyGroup=this.addProxyGroup("all"===b.landmarkVerbosity?{"aria-label":a.langFormat("accessibility.exporting.exportRegionLabel",{chart:a}),role:"region"}:{}),b=h(this.chart),this.exportButtonProxy=
this.createProxyButton(b,this.exportProxyGroup,{"aria-label":a.langFormat("accessibility.exporting.menuButtonLabel",{chart:a}),"aria-expanded":"false"}))},addAccessibleContextMenuAttribs:function(){var a=this.chart,b=a.exportDivElements;b&&b.length&&(b.forEach(function(a){"LI"!==a.tagName||a.children&&a.children.length?a.setAttribute("aria-hidden","true"):a.setAttribute("tabindex",-1)}),b=b[0].parentNode,b.removeAttribute("aria-hidden"),b.setAttribute("aria-label",a.langFormat("accessibility.exporting.chartMenuLabel",
{chart:a})))},getKeyboardNavigation:function(){var a=this.keyCodes,b=this.chart,c=this;return new m(b,{keyCodeMap:[[[a.left,a.up],function(){return c.onKbdPrevious(this)}],[[a.right,a.down],function(){return c.onKbdNext(this)}],[[a.enter,a.space],function(){return c.onKbdClick(this)}],[[a.esc],function(){return this.response.prev}]],validate:function(){return b.exportChart&&!1!==b.options.exporting.enabled&&!1!==b.options.exporting.accessibility.enabled},init:function(){var a=c.exportButtonProxy,
d=b.exportingGroup;d&&a&&b.setFocusToElement(d,a)},terminate:function(){b.hideExportMenu()}})},onKbdPrevious:function(a){var b=this.chart,d=b.options.accessibility;a=a.response;for(var c=b.highlightedExportItemIx||0;c--;)if(b.highlightExportItem(c))return a.success;return d.keyboardNavigation.wrapAround?(b.highlightLastExportItem(),a.success):a.prev},onKbdNext:function(a){var b=this.chart,c=b.options.accessibility;a=a.response;for(var d=(b.highlightedExportItemIx||0)+1;d<b.exportDivElements.length;++d)if(b.highlightExportItem(d))return a.success;
return c.keyboardNavigation.wrapAround?(b.highlightExportItem(0),a.success):a.next},onKbdClick:function(a){var b=this.chart,c=b.exportDivElements[b.highlightedExportItemIx],d=h(b).element;this.isExportMenuShown?this.fakeClickEvent(c):(this.fakeClickEvent(d),b.highlightExportItem(0));return a.response.success}});return a});t(a,"modules/accessibility/components/SeriesComponent/SeriesKeyboardNavigation.js",[a["parts/Globals.js"],a["parts/Point.js"],a["parts/Utilities.js"],a["modules/accessibility/KeyboardNavigationHandler.js"],
a["modules/accessibility/utils/EventProvider.js"],a["modules/accessibility/utils/chartUtilities.js"]],function(a,f,l,m,p,e){function h(a){var b=a.index,c=a.series.points,d=c.length;if(c[b]!==a)for(;d--;){if(c[d]===a)return d}else return b}function g(a){var b=a.chart.options.accessibility.keyboardNavigation.seriesNavigation,c=a.options.accessibility||{},d=c.keyboardNavigation;return d&&!1===d.enabled||!1===c.enabled||!1===a.options.enableMouseTracking||!a.visible||b.pointNavigationEnabledThreshold&&
b.pointNavigationEnabledThreshold<=a.points.length}function n(a){var b=a.series.chart.options.accessibility;return a.isNull&&b.keyboardNavigation.seriesNavigation.skipNullPoints||!1===a.visible||g(a.series)}function c(a,b,c,d){var e=Infinity,v=b.points.length,w=function(a){return!(k(a.plotX)&&k(a.plotY))};if(!w(a)){for(;v--;){var u=b.points[v];if(!w(u)&&(u=(a.plotX-u.plotX)*(a.plotX-u.plotX)*(c||1)+(a.plotY-u.plotY)*(a.plotY-u.plotY)*(d||1),u<e)){e=u;var r=v}}return k(r)?b.points[r]:void 0}}function d(a){var b=
!1;delete a.highlightedPoint;return b=a.series.reduce(function(a,b){return a||b.highlightFirstValidPoint()},!1)}function b(a,b){this.keyCodes=b;this.chart=a}var r=l.extend,k=l.defined,x=e.getPointFromXY,q=e.getSeriesFromName;a.Series.prototype.keyboardMoveVertical=!0;["column","pie"].forEach(function(b){a.seriesTypes[b]&&(a.seriesTypes[b].prototype.keyboardMoveVertical=!1)});f.prototype.highlight=function(){var a=this.series.chart;if(this.isNull)a.tooltip&&a.tooltip.hide(0);else this.onMouseOver();
this.graphic&&a.setFocusToElement(this.graphic);a.highlightedPoint=this;return this};a.Chart.prototype.highlightAdjacentPoint=function(a){var b=this.series,c=this.highlightedPoint,d=c&&h(c)||0,k=c&&c.series.points,e=this.series&&this.series[this.series.length-1];e=e&&e.points&&e.points[e.points.length-1];if(!b[0]||!b[0].points)return!1;if(c){if(b=b[c.series.index+(a?1:-1)],d=k[d+(a?1:-1)],!d&&b&&(d=b.points[a?0:b.points.length-1]),!d)return!1}else d=a?b[0].points[0]:e;return n(d)?(b=d.series,g(b)?
this.highlightedPoint=a?b.points[b.points.length-1]:b.points[0]:this.highlightedPoint=d,this.highlightAdjacentPoint(a)):d.highlight()};a.Series.prototype.highlightFirstValidPoint=function(){var a=this.chart.highlightedPoint,b=(a&&a.series)===this?h(a):0;a=this.points;var c=a.length;if(a&&c){for(var d=b;d<c;++d)if(!n(a[d]))return a[d].highlight();for(;0<=b;--b)if(!n(a[b]))return a[b].highlight()}return!1};a.Chart.prototype.highlightAdjacentSeries=function(a){var b,d=this.highlightedPoint;var e=(b=
this.series&&this.series[this.series.length-1])&&b.points&&b.points[b.points.length-1];if(!this.highlightedPoint)return b=a?this.series&&this.series[0]:b,(e=a?b&&b.points&&b.points[0]:e)?e.highlight():!1;b=this.series[d.series.index+(a?-1:1)];if(!b)return!1;e=c(d,b,4);if(!e)return!1;if(g(b))return e.highlight(),a=this.highlightAdjacentSeries(a),a?a:(d.highlight(),!1);e.highlight();return e.series.highlightFirstValidPoint()};a.Chart.prototype.highlightAdjacentPointVertical=function(a){var b=this.highlightedPoint,
d=Infinity,c;if(!k(b.plotX)||!k(b.plotY))return!1;this.series.forEach(function(e){g(e)||e.points.forEach(function(r){if(k(r.plotY)&&k(r.plotX)&&r!==b){var w=r.plotY-b.plotY,g=Math.abs(r.plotX-b.plotX);g=Math.abs(w)*Math.abs(w)+g*g*4;e.yAxis&&e.yAxis.reversed&&(w*=-1);!(0>=w&&a||0<=w&&!a||5>g||n(r))&&g<d&&(d=g,c=r)}})});return c?c.highlight():!1};r(b.prototype,{init:function(){var b=this,c=this.chart,e=this.eventProvider=new p;e.addEvent(a.Series,"destroy",function(){return b.onSeriesDestroy(this)});
e.addEvent(c,"afterDrilldown",function(){d(this);this.focusElement&&this.focusElement.removeFocusBorder()});e.addEvent(c,"drilldown",function(a){a=a.point;var d=a.series;b.lastDrilledDownPoint={x:a.x,y:a.y,seriesName:d?d.name:""}});e.addEvent(c,"drillupall",function(){setTimeout(function(){b.onDrillupAll()},10)})},onDrillupAll:function(){var a=this.lastDrilledDownPoint,b=this.chart,d=a&&q(b,a.seriesName),c;a&&d&&k(a.x)&&k(a.y)&&(c=x(d,a.x,a.y));b.container&&b.container.focus();c&&c.highlight&&c.highlight();
b.focusElement&&b.focusElement.removeFocusBorder()},getKeyboardNavigationHandler:function(){var a=this,b=this.keyCodes,d=this.chart,c=d.inverted;return new m(d,{keyCodeMap:[[c?[b.up,b.down]:[b.left,b.right],function(b){return a.onKbdSideways(this,b)}],[c?[b.left,b.right]:[b.up,b.down],function(b){return a.onKbdVertical(this,b)}],[[b.enter,b.space],function(){d.highlightedPoint&&d.highlightedPoint.firePointEvent("click");return this.response.success}]],init:function(b){return a.onHandlerInit(this,
b)},terminate:function(){return a.onHandlerTerminate()}})},onKbdSideways:function(a,b){var d=this.keyCodes;return this.attemptHighlightAdjacentPoint(a,b===d.right||b===d.down)},onKbdVertical:function(a,b){var d=this.chart,c=this.keyCodes;b=b===c.down||b===c.right;c=d.options.accessibility.keyboardNavigation.seriesNavigation;if(c.mode&&"serialize"===c.mode)return this.attemptHighlightAdjacentPoint(a,b);d[d.highlightedPoint&&d.highlightedPoint.series.keyboardMoveVertical?"highlightAdjacentPointVertical":
"highlightAdjacentSeries"](b);return a.response.success},onHandlerInit:function(a,b){var c=this.chart;if(0<b)d(c);else{b=c.series.length;for(var e;b--&&!(c.highlightedPoint=c.series[b].points[c.series[b].points.length-1],e=c.series[b].highlightFirstValidPoint()););}return a.response.success},onHandlerTerminate:function(){var a=this.chart,b=a.highlightedPoint;a.tooltip&&a.tooltip.hide(0);b&&(b.onMouseOut(),delete a.highlightedPoint)},attemptHighlightAdjacentPoint:function(a,b){var c=this.chart,d=c.options.accessibility.keyboardNavigation.wrapAround;
return c.highlightAdjacentPoint(b)?a.response.success:d?a.init(b?1:-1):a.response[b?"next":"prev"]},onSeriesDestroy:function(a){var b=this.chart;b.highlightedPoint&&b.highlightedPoint.series===a&&(delete b.highlightedPoint,b.focusElement&&b.focusElement.removeFocusBorder())},destroy:function(){this.eventProvider.removeAddedEvents()}});return b});t(a,"modules/accessibility/components/AnnotationsA11y.js",[a["parts/Utilities.js"],a["modules/accessibility/utils/htmlUtilities.js"]],function(a,f){function q(a){return(a.annotations||
[]).reduce(function(a,b){var c;!1!==(null===(c=b.options)||void 0===c?void 0:c.visible)&&(a=a.concat(b.labels));return a},[])}function m(a){var c,b,e,k,g=null===(b=null===(c=a.options)||void 0===c?void 0:c.accessibility)||void 0===b?void 0:b.description;return g?g:(null===(k=null===(e=a.graphic)||void 0===e?void 0:e.text)||void 0===k?void 0:k.textStr)||""}function p(a){var c,b,e=null===(b=null===(c=a.options)||void 0===c?void 0:c.accessibility)||void 0===b?void 0:b.description;if(e)return e;c=a.chart;
b=m(a);e=a.points.filter(function(a){return!!a.graphic}).map(function(a){var b,c;if(!(c=null===(b=null===a||void 0===a?void 0:a.accessibility)||void 0===b?void 0:b.valueDescription)){var d,e;c=(null===(e=null===(d=null===a||void 0===a?void 0:a.graphic)||void 0===d?void 0:d.element)||void 0===e?void 0:e.getAttribute("aria-label"))||""}a=(null===a||void 0===a?void 0:a.series.name)||"";return(a?a+", ":"")+"data point "+c}).filter(function(a){return!!a});var k=e.length;a="accessibility.screenReaderSection.annotations.description"+
(1<k?"MultiplePoints":k?"SinglePoint":"NoPoints");b={annotationText:b,numPoints:k,annotationPoint:e[0],additionalAnnotationPoints:e.slice(1)};return c.langFormat(a,b)}function e(a){return q(a).map(function(a){return(a=g(n(p(a))))?"<li>"+a+"</li>":""})}var h=a.inArray,g=f.escapeStringForHTML,n=f.stripHTMLTagsFromString;return{getAnnotationsInfoHTML:function(a){var c=a.annotations;return c&&c.length?"<ul>"+e(a).join(" ")+"</ul>":""},getAnnotationLabelDescription:p,getAnnotationListItems:e,getPointAnnotationTexts:function(a){var c=
q(a.series.chart).filter(function(b){return-1<h(a,b.points)});return c.length?c.map(function(a){return""+m(a)}):[]}}});t(a,"modules/accessibility/components/SeriesComponent/SeriesDescriber.js",[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/components/AnnotationsA11y.js"],a["modules/accessibility/utils/htmlUtilities.js"],a["modules/accessibility/utils/chartUtilities.js"],a["parts/Tooltip.js"]],function(a,f,l,m,p,e){function h(a){var b=a.index;return a.series&&a.series.data&&
F(b)?D(a.series.data,function(a){return!!(a&&"undefined"!==typeof a.index&&a.index>b&&a.graphic&&a.graphic.element)})||null:null}function g(a){var b=a.chart.options.accessibility.series.pointDescriptionEnabledThreshold;return!!(!1!==b&&a.points&&a.points.length>=b)}function n(a){var b=a.options.accessibility||{};return!g(a)&&!b.exposeAsGroupOnly}function c(a){var b=a.chart.options.accessibility.keyboardNavigation.seriesNavigation;return!(!a.points||!(a.points.length<b.pointNavigationEnabledThreshold||
!1===b.pointNavigationEnabledThreshold))}function d(a,b){var c=a.series.chart,d=c.options.accessibility.point||{};a=a.series.tooltipOptions||{};c=c.options.lang;return E(b)?A(b,d.valueDecimals||a.valueDecimals||-1,c.decimalPoint,c.accessibility.thousandsSep||c.thousandsSep):b}function b(a){var b=(a.options.accessibility||{}).description;return b&&a.chart.langFormat("accessibility.series.description",{description:b,series:a})||""}function r(a,b){return a.chart.langFormat("accessibility.series."+b+
"Description",{name:J(a[b]),series:a})}function k(a){var b=a.series,c=b.chart,d=c.options.accessibility.point||{};if(b.xAxis&&b.xAxis.isDatetimeAxis)return b=e.prototype.getXDateFormat.call({getDateFormat:e.prototype.getDateFormat,chart:c},a,c.options.tooltip,b.xAxis),d=d.dateFormatter&&d.dateFormatter(a)||d.dateFormat||b,c.time.dateFormat(d,a.x,void 0)}function x(a){var b=k(a),c=(a.series.xAxis||{}).categories&&F(a.category)&&(""+a.category).replace("<br/>"," "),d=a.id&&0>a.id.indexOf("highcharts-"),
e="x, "+a.x;return a.name||b||c||(d?a.id:e)}function q(a,b,c){var e=b||"",k=c||"";return a.series.pointArrayMap.reduce(function(b,c){b+=b.length?", ":"";var w=d(a,z(a[c],a.options[c]));return b+(c+": "+e+w+k)},"")}function v(a){var b=a.series,c=b.chart.options.accessibility.point||{},e=b.tooltipOptions||{},k=c.valuePrefix||e.valuePrefix||"";c=c.valueSuffix||e.valueSuffix||"";e=d(a,a["undefined"!==typeof a.value?"value":"y"]);return a.isNull?b.chart.langFormat("accessibility.series.nullPointValue",
{point:a}):b.pointArrayMap?q(a,k,c):k+e+c}function u(a){var b=a.series,c=b.chart,d=c.options.accessibility.point.valueDescriptionFormat,e=(b=z(b.xAxis&&b.xAxis.options.accessibility&&b.xAxis.options.accessibility.enabled,!c.angular))?x(a):"";a={point:a,index:F(a.index)?a.index+1:"",xDescription:e,value:v(a),separator:b?", ":""};return w(d,a,c)}function t(a){var b=a.series,c=b.chart,d=u(a),e=a.options&&a.options.accessibility&&a.options.accessibility.description;e=e?" "+e:"";b=1<c.series.length&&b.name?
" "+b.name+".":"";c=a.series.chart;var k=K(a),w={point:a,annotations:k};c=k.length?c.langFormat("accessibility.series.pointAnnotationsDescription",w):"";a.accessibility=a.accessibility||{};a.accessibility.valueDescription=d;return d+e+b+(c?" "+c:"")}function C(a){var b=n(a),d=c(a);(b||d)&&a.points.forEach(function(a){var c;if(!(c=a.graphic&&a.graphic.element)&&(c=a.series&&a.series.is("sunburst"),c=a.isNull&&!c)){var d=a.series,e=h(a);d=(c=e&&e.graphic)?c.parentGroup:d.graph||d.group;e=e?{x:z(a.plotX,
e.plotX,0),y:z(a.plotY,e.plotY,0)}:{x:z(a.plotX,0),y:z(a.plotY,0)};e=a.series.chart.renderer.rect(e.x,e.y,1,1);e.attr({"class":"highcharts-a11y-dummy-point",fill:"none",opacity:0,"fill-opacity":0,"stroke-opacity":0});d&&d.element?(a.graphic=e,a.hasDummyGraphic=!0,e.add(d),d.element.insertBefore(e.element,c?c.element:null),c=e.element):c=void 0}c&&(c.setAttribute("tabindex","-1"),b?(e=a.series,d=e.chart.options.accessibility.point||{},e=e.options.accessibility||{},a=G(H(e.pointDescriptionFormatter&&
e.pointDescriptionFormatter(a)||d.descriptionFormatter&&d.descriptionFormatter(a)||t(a))),c.setAttribute("role","img"),c.setAttribute("aria-label",a)):c.setAttribute("aria-hidden",!0))})}function y(a){var c=a.chart,d=c.types||[],e=b(a),k=function(b){return c[b]&&1<c[b].length&&a[b]},w=r(a,"xAxis"),g=r(a,"yAxis"),n={name:a.name||"",ix:a.index+1,numSeries:c.series&&c.series.length,numPoints:a.points&&a.points.length,series:a};d=1<d.length?"Combination":"";return(c.langFormat("accessibility.series.summary."+
a.type+d,n)||c.langFormat("accessibility.series.summary.default"+d,n))+(e?" "+e:"")+(k("yAxis")?" "+g:"")+(k("xAxis")?" "+w:"")}var A=a.numberFormat,w=a.format,D=f.find,E=f.isNumber,z=f.pick,F=f.defined,K=l.getPointAnnotationTexts,G=m.escapeStringForHTML,L=m.reverseChildNodes,H=m.stripHTMLTagsFromString,J=p.getAxisDescription,M=p.getSeriesFirstPointElement,N=p.getSeriesA11yElement,O=p.unhideChartElementFromAT;return{describeSeries:function(a){var b=a.chart,c=M(a),d=N(a),e=b.is3d&&b.is3d();if(d){d.lastChild!==
c||e||L(d);C(a);O(b,d);e=a.chart;b=e.options.chart||{};c=1<e.series.length;e=e.options.accessibility.series.describeSingleSeries;var k=(a.options.accessibility||{}).exposeAsGroupOnly;b.options3d&&b.options3d.enabled&&c||!(c||e||k||g(a))?d.setAttribute("aria-label",""):(b=a.chart.options.accessibility,c=b.landmarkVerbosity,(a.options.accessibility||{}).exposeAsGroupOnly?d.setAttribute("role","img"):"all"===c&&d.setAttribute("role","region"),d.setAttribute("tabindex","-1"),d.setAttribute("aria-label",
G(H(b.series.descriptionFormatter&&b.series.descriptionFormatter(a)||y(a)))))}},defaultPointDescriptionFormatter:t,defaultSeriesDescriptionFormatter:y,getPointA11yTimeDescription:k,getPointXDescription:x,getPointValue:v,getPointValueDescription:u}});t(a,"modules/accessibility/utils/Announcer.js",[a["parts/Globals.js"],a["modules/accessibility/utils/DOMElementProvider.js"],a["modules/accessibility/utils/htmlUtilities.js"]],function(a,f,l){var q=l.visuallyHideElement;l=function(){function a(a,h){this.chart=
a;this.domElementProvider=new f;this.announceRegion=this.addAnnounceRegion(h)}a.prototype.destroy=function(){this.domElementProvider.destroyCreatedElements()};a.prototype.announce=function(a){var e=this;this.announceRegion.innerHTML=a;this.clearAnnouncementRegionTimer&&clearTimeout(this.clearAnnouncementRegionTimer);this.clearAnnouncementRegionTimer=setTimeout(function(){e.announceRegion.innerHTML="";delete e.clearAnnouncementRegionTimer},1E3)};a.prototype.addAnnounceRegion=function(a){var e=this.chart.renderTo,
g=this.domElementProvider.createElement("div");g.setAttribute("aria-hidden",!1);g.setAttribute("aria-live",a);q(g);e.insertBefore(g,e.firstChild);return g};return a}();return a.Announcer=l});t(a,"modules/accessibility/components/SeriesComponent/NewDataAnnouncer.js",[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/components/SeriesComponent/SeriesDescriber.js"],a["modules/accessibility/utils/Announcer.js"],a["modules/accessibility/utils/EventProvider.js"]],
function(a,f,l,m,p,e){function h(a){var b=a.series.data.filter(function(b){return a.x===b.x&&a.y===b.y});return 1===b.length?b[0]:a}function g(a,b){var c=(a||[]).concat(b||[]).reduce(function(a,b){a[b.name+b.index]=b;return a},{});return Object.keys(c).map(function(a){return c[a]})}var n=f.extend,c=f.defined,d=l.getChartTitle,b=m.defaultPointDescriptionFormatter,r=m.defaultSeriesDescriptionFormatter;f=function(a){this.chart=a};n(f.prototype,{init:function(){var a=this.chart,b=a.options.accessibility.announceNewData.interruptUser?
"assertive":"polite";this.lastAnnouncementTime=0;this.dirty={allSeries:{}};this.eventProvider=new e;this.announcer=new p(a,b);this.addEventListeners()},destroy:function(){this.eventProvider.removeAddedEvents();this.announcer.destroy()},addEventListeners:function(){var b=this,c=this.chart,d=this.eventProvider;d.addEvent(c,"afterDrilldown",function(){b.lastAnnouncementTime=0});d.addEvent(a.Series,"updatedData",function(){b.onSeriesUpdatedData(this)});d.addEvent(c,"afterAddSeries",function(a){b.onSeriesAdded(a.series)});
d.addEvent(a.Series,"addPoint",function(a){b.onPointAdded(a.point)});d.addEvent(c,"redraw",function(){b.announceDirtyData()})},onSeriesUpdatedData:function(a){var b=this.chart;a.chart===b&&b.options.accessibility.announceNewData.enabled&&(this.dirty.hasDirty=!0,this.dirty.allSeries[a.name+a.index]=a)},onSeriesAdded:function(a){this.chart.options.accessibility.announceNewData.enabled&&(this.dirty.hasDirty=!0,this.dirty.allSeries[a.name+a.index]=a,this.dirty.newSeries=c(this.dirty.newSeries)?void 0:
a)},onPointAdded:function(a){var b=a.series.chart;this.chart===b&&b.options.accessibility.announceNewData.enabled&&(this.dirty.newPoint=c(this.dirty.newPoint)?void 0:a)},announceDirtyData:function(){var a=this;if(this.chart.options.accessibility.announceNewData&&this.dirty.hasDirty){var b=this.dirty.newPoint;b&&(b=h(b));this.queueAnnouncement(Object.keys(this.dirty.allSeries).map(function(b){return a.dirty.allSeries[b]}),this.dirty.newSeries,b);this.dirty={allSeries:{}}}},queueAnnouncement:function(a,
b,c){var d=this,e=this.chart.options.accessibility.announceNewData;if(e.enabled){var k=+new Date;e=Math.max(0,e.minAnnounceInterval-(k-this.lastAnnouncementTime));a=g(this.queuedAnnouncement&&this.queuedAnnouncement.series,a);if(b=this.buildAnnouncementMessage(a,b,c))this.queuedAnnouncement&&clearTimeout(this.queuedAnnouncementTimer),this.queuedAnnouncement={time:k,message:b,series:a},this.queuedAnnouncementTimer=setTimeout(function(){d&&d.announcer&&(d.lastAnnouncementTime=+new Date,d.announcer.announce(d.queuedAnnouncement.message),
delete d.queuedAnnouncement,delete d.queuedAnnouncementTimer)},e)}},buildAnnouncementMessage:function(c,e,g){var k=this.chart,n=k.options.accessibility.announceNewData;if(n.announcementFormatter&&(c=n.announcementFormatter(c,e,g),!1!==c))return c.length?c:null;c=a.charts&&1<a.charts.length?"Multiple":"Single";c=e?"newSeriesAnnounce"+c:g?"newPointAnnounce"+c:"newDataAnnounce";n=d(k);return k.langFormat("accessibility.announceNewData."+c,{chartTitle:n,seriesDesc:e?r(e):null,pointDesc:g?b(g):null,point:g,
series:e})}});return f});t(a,"modules/accessibility/components/SeriesComponent/forcedMarkers.js",[a["parts/Globals.js"],a["parts/Utilities.js"]],function(a,f){function q(a){p(!0,a,{marker:{enabled:!0,states:{normal:{opacity:0}}}})}var m=f.addEvent,p=f.merge;return function(){m(a.Series,"render",function(){var a=this.options,h=this.chart.options.accessibility.enabled,g=!1!==(this.options.accessibility&&this.options.accessibility.enabled);var n=this.chart.options.accessibility;n=this.points.length<
n.series.pointDescriptionEnabledThreshold||!1===n.series.pointDescriptionEnabledThreshold;var c=this.chart.options.accessibility.keyboardNavigation.seriesNavigation;c=this.points.length<c.pointNavigationEnabledThreshold||!1===c.pointNavigationEnabledThreshold;if(h&&g&&(n||c)){if(a.marker&&!1===a.marker.enabled&&(this.a11yMarkersForced=!0,q(this.options)),this._hasPointMarkers&&this.points&&this.points.length)for(a=this.points,h=a.length;h--;)g=a[h].options,g.marker&&(g.marker.enabled?p(!0,g.marker,
{states:{normal:{opacity:g.marker.states&&g.marker.states.normal&&g.marker.states.normal.opacity||1}}}):q(g))}else this.a11yMarkersForced&&this.resetMarkerOptions&&(delete this.a11yMarkersForced,a=this.resetA11yMarkerOptions,p(!0,this.options,{marker:{enabled:a.enabled,states:{normal:{opacity:a.states&&a.states.normal&&a.states.normal.opacity}}}}))});m(a.Series,"afterSetOptions",function(a){this.resetA11yMarkerOptions=p(a.options.marker||{},this.userOptions.marker||{})})}});t(a,"modules/accessibility/components/SeriesComponent/SeriesComponent.js",
[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/AccessibilityComponent.js"],a["modules/accessibility/components/SeriesComponent/SeriesKeyboardNavigation.js"],a["modules/accessibility/components/SeriesComponent/NewDataAnnouncer.js"],a["modules/accessibility/components/SeriesComponent/forcedMarkers.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/components/SeriesComponent/SeriesDescriber.js"],a["parts/Tooltip.js"]],function(a,f,l,m,p,e,h,g,n){f=
f.extend;var c=h.hideSeriesFromAT,d=g.describeSeries;a.SeriesAccessibilityDescriber=g;e();a=function(){};a.prototype=new l;f(a.prototype,{init:function(){this.newDataAnnouncer=new p(this.chart);this.newDataAnnouncer.init();this.keyboardNavigation=new m(this.chart,this.keyCodes);this.keyboardNavigation.init();this.hideTooltipFromATWhenShown();this.hideSeriesLabelsFromATWhenShown()},hideTooltipFromATWhenShown:function(){var a=this;this.addEvent(n,"refresh",function(){this.chart===a.chart&&this.label&&
this.label.element&&this.label.element.setAttribute("aria-hidden",!0)})},hideSeriesLabelsFromATWhenShown:function(){this.addEvent(this.chart,"afterDrawSeriesLabels",function(){this.series.forEach(function(a){a.labelBySeries&&a.labelBySeries.attr("aria-hidden",!0)})})},onChartRender:function(){this.chart.series.forEach(function(a){!1!==(a.options.accessibility&&a.options.accessibility.enabled)&&a.visible?d(a):c(a)})},getKeyboardNavigation:function(){return this.keyboardNavigation.getKeyboardNavigationHandler()},
destroy:function(){this.newDataAnnouncer.destroy();this.keyboardNavigation.destroy()}});return a});t(a,"modules/accessibility/components/ZoomComponent.js",[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/AccessibilityComponent.js"],a["modules/accessibility/KeyboardNavigationHandler.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/utils/htmlUtilities.js"]],function(a,f,l,m,p,e){var h=f.extend,g=f.pick,n=p.unhideChartElementFromAT,c=e.setElAttrs,
d=e.removeElement;a.Axis.prototype.panStep=function(a,c){var b=c||3;c=this.getExtremes();var d=(c.max-c.min)/b*a;b=c.max+d;d=c.min+d;var e=b-d;0>a&&d<c.dataMin?(d=c.dataMin,b=d+e):0<a&&b>c.dataMax&&(b=c.dataMax,d=b-e);this.setExtremes(d,b)};a=function(){};a.prototype=new l;h(a.prototype,{init:function(){var a=this,c=this.chart;["afterShowResetZoom","afterDrilldown","drillupall"].forEach(function(b){a.addEvent(c,b,function(){a.updateProxyOverlays()})})},onChartUpdate:function(){var a=this.chart,c=
this;a.mapNavButtons&&a.mapNavButtons.forEach(function(b,d){n(a,b.element);c.setMapNavButtonAttrs(b.element,"accessibility.zoom.mapZoom"+(d?"Out":"In"))})},setMapNavButtonAttrs:function(a,d){var b=this.chart;d=b.langFormat(d,{chart:b});c(a,{tabindex:-1,role:"button","aria-label":d})},onChartRender:function(){this.updateProxyOverlays()},updateProxyOverlays:function(){var a=this.chart;d(this.drillUpProxyGroup);d(this.resetZoomProxyGroup);a.resetZoomButton&&this.recreateProxyButtonAndGroup(a.resetZoomButton,
"resetZoomProxyButton","resetZoomProxyGroup",a.langFormat("accessibility.zoom.resetZoomButton",{chart:a}));a.drillUpButton&&this.recreateProxyButtonAndGroup(a.drillUpButton,"drillUpProxyButton","drillUpProxyGroup",a.langFormat("accessibility.drillUpButton",{chart:a,buttonText:a.getDrilldownBackText()}))},recreateProxyButtonAndGroup:function(a,c,e,g){d(this[e]);this[e]=this.addProxyGroup();this[c]=this.createProxyButton(a,this[e],{"aria-label":g,tabindex:-1})},getMapZoomNavigation:function(){var a=
this.keyCodes,c=this.chart,d=this;return new m(c,{keyCodeMap:[[[a.up,a.down,a.left,a.right],function(a){return d.onMapKbdArrow(this,a)}],[[a.tab],function(a,b){return d.onMapKbdTab(this,b)}],[[a.space,a.enter],function(){return d.onMapKbdClick(this)}]],validate:function(){return!!(c.mapZoom&&c.mapNavButtons&&c.mapNavButtons.length)},init:function(a){return d.onMapNavInit(a)}})},onMapKbdArrow:function(a,c){var b=this.keyCodes;this.chart[c===b.up||c===b.down?"yAxis":"xAxis"][0].panStep(c===b.left||
c===b.up?-1:1);return a.response.success},onMapKbdTab:function(a,c){var b=this.chart;a=a.response;var d=(c=c.shiftKey)&&!this.focusedMapNavButtonIx||!c&&this.focusedMapNavButtonIx;b.mapNavButtons[this.focusedMapNavButtonIx].setState(0);if(d)return b.mapZoom(),a[c?"prev":"next"];this.focusedMapNavButtonIx+=c?-1:1;c=b.mapNavButtons[this.focusedMapNavButtonIx];b.setFocusToElement(c.box,c.element);c.setState(2);return a.success},onMapKbdClick:function(a){this.fakeClickEvent(this.chart.mapNavButtons[this.focusedMapNavButtonIx].element);
return a.response.success},onMapNavInit:function(a){var b=this.chart,c=b.mapNavButtons[0],d=b.mapNavButtons[1];c=0<a?c:d;b.setFocusToElement(c.box,c.element);c.setState(2);this.focusedMapNavButtonIx=0<a?0:1},simpleButtonNavigation:function(a,c,d){var b=this.keyCodes,e=this,n=this.chart;return new m(n,{keyCodeMap:[[[b.tab,b.up,b.down,b.left,b.right],function(a,c){return this.response[a===b.tab&&c.shiftKey||a===b.left||a===b.up?"prev":"next"]}],[[b.space,b.enter],function(){var a=d(this,n);return g(a,
this.response.success)}]],validate:function(){return n[a]&&n[a].box&&e[c]},init:function(){n.setFocusToElement(n[a].box,e[c])}})},getKeyboardNavigation:function(){return[this.simpleButtonNavigation("resetZoomButton","resetZoomProxyButton",function(a,c){c.zoomOut()}),this.simpleButtonNavigation("drillUpButton","drillUpProxyButton",function(a,c){c.drillUp();return a.response.prev}),this.getMapZoomNavigation()]}});return a});t(a,"modules/accessibility/components/RangeSelectorComponent.js",[a["parts/Globals.js"],
a["parts/Utilities.js"],a["modules/accessibility/AccessibilityComponent.js"],a["modules/accessibility/KeyboardNavigationHandler.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/utils/htmlUtilities.js"]],function(a,f,l,m,p,e){f=f.extend;var h=p.unhideChartElementFromAT,g=e.setElAttrs;a.Chart.prototype.highlightRangeSelectorButton=function(a){var c=this.rangeSelector.buttons,d=this.highlightedRangeSelectorItemIx;"undefined"!==typeof d&&c[d]&&c[d].setState(this.oldRangeSelectorItemState||
0);this.highlightedRangeSelectorItemIx=a;return c[a]?(this.setFocusToElement(c[a].box,c[a].element),this.oldRangeSelectorItemState=c[a].state,c[a].setState(2),!0):!1};a=function(){};a.prototype=new l;f(a.prototype,{onChartUpdate:function(){var a=this.chart,c=this,d=a.rangeSelector;d&&(d.buttons&&d.buttons.length&&d.buttons.forEach(function(b){h(a,b.element);c.setRangeButtonAttrs(b)}),d.maxInput&&d.minInput&&["minInput","maxInput"].forEach(function(b,e){if(b=d[b])h(a,b),c.setRangeInputAttrs(b,"accessibility.rangeSelector."+
(e?"max":"min")+"InputLabel")}))},setRangeButtonAttrs:function(a){var c=this.chart;c=c.langFormat("accessibility.rangeSelector.buttonText",{chart:c,buttonText:a.text&&a.text.textStr});g(a.element,{tabindex:-1,role:"button","aria-label":c})},setRangeInputAttrs:function(a,c){var d=this.chart;g(a,{tabindex:-1,role:"textbox","aria-label":d.langFormat(c,{chart:d})})},getRangeSelectorButtonNavigation:function(){var a=this.chart,c=this.keyCodes,d=this;return new m(a,{keyCodeMap:[[[c.left,c.right,c.up,c.down],
function(a){return d.onButtonNavKbdArrowKey(this,a)}],[[c.enter,c.space],function(){return d.onButtonNavKbdClick(this)}]],validate:function(){return a.rangeSelector&&a.rangeSelector.buttons&&a.rangeSelector.buttons.length},init:function(b){var c=a.rangeSelector.buttons.length-1;a.highlightRangeSelectorButton(0<b?0:c)}})},onButtonNavKbdArrowKey:function(a,c){var d=a.response,b=this.keyCodes,e=this.chart,g=e.options.accessibility.keyboardNavigation.wrapAround;c=c===b.left||c===b.up?-1:1;return e.highlightRangeSelectorButton(e.highlightedRangeSelectorItemIx+
c)?d.success:g?(a.init(c),d.success):d[0<c?"next":"prev"]},onButtonNavKbdClick:function(a){a=a.response;var c=this.chart;3!==c.oldRangeSelectorItemState&&this.fakeClickEvent(c.rangeSelector.buttons[c.highlightedRangeSelectorItemIx].element);return a.success},getRangeSelectorInputNavigation:function(){var a=this.chart,c=this.keyCodes,d=this;return new m(a,{keyCodeMap:[[[c.tab,c.up,c.down],function(a,e){return d.onInputKbdMove(this,a===c.tab&&e.shiftKey||a===c.up?-1:1)}]],validate:function(){return a.rangeSelector&&
a.rangeSelector.inputGroup&&"hidden"!==a.rangeSelector.inputGroup.element.getAttribute("visibility")&&!1!==a.options.rangeSelector.inputEnabled&&a.rangeSelector.minInput&&a.rangeSelector.maxInput},init:function(a){d.onInputNavInit(a)},terminate:function(){d.onInputNavTerminate()}})},onInputKbdMove:function(a,c){var d=this.chart;a=a.response;var b=d.highlightedInputRangeIx+=c;if(1<b||0>b)return a[0<c?"next":"prev"];d.rangeSelector[b?"maxInput":"minInput"].focus();return a.success},onInputNavInit:function(a){var c=
this.chart;a=0<a?0:1;c.highlightedInputRangeIx=a;c.rangeSelector[a?"maxInput":"minInput"].focus()},onInputNavTerminate:function(){var a=this.chart.rangeSelector||{};a.maxInput&&a.hideInput("max");a.minInput&&a.hideInput("min")},getKeyboardNavigation:function(){return[this.getRangeSelectorButtonNavigation(),this.getRangeSelectorInputNavigation()]}});return a});t(a,"modules/accessibility/components/InfoRegionsComponent.js",[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/AccessibilityComponent.js"],
a["modules/accessibility/utils/Announcer.js"],a["modules/accessibility/components/AnnotationsA11y.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/utils/htmlUtilities.js"]],function(a,f,l,m,p,e,h){function g(a){return a.replace(/&lt;(h[1-7]|p|div|ul|ol|li)&gt;/g,"<$1>").replace(/&lt;&#x2F;(h[1-7]|p|div|ul|ol|li|a|button)&gt;/g,"</$1>").replace(/&lt;(div|a|button) id=&quot;([a-zA-Z\-0-9#]*?)&quot;&gt;/g,'<$1 id="$2">')}var n=a.win.document,c=f.extend,d=f.format,b=f.pick,
r=p.getAnnotationsInfoHTML,k=e.unhideChartElementFromAT,q=e.getChartTitle,t=e.getAxisDescription,v=h.addClass,u=h.setElAttrs,B=h.escapeStringForHTML,C=h.stripHTMLTagsFromString,y=h.getElement,A=h.visuallyHideElement;a.Chart.prototype.getTypeDescription=function(a){var b=a[0],c=this.series&&this.series[0]||{};c={numSeries:this.series.length,numPoints:c.points&&c.points.length,chart:this,mapTitle:c.mapTitle};if(!b)return this.langFormat("accessibility.chartTypes.emptyChart",c);if("map"===b)return c.mapTitle?
this.langFormat("accessibility.chartTypes.mapTypeDescription",c):this.langFormat("accessibility.chartTypes.unknownMap",c);if(1<this.types.length)return this.langFormat("accessibility.chartTypes.combinationChart",c);a=a[0];b=this.langFormat("accessibility.seriesTypeDescriptions."+a,c);var d=this.series&&2>this.series.length?"Single":"Multiple";return(this.langFormat("accessibility.chartTypes."+a+d,c)||this.langFormat("accessibility.chartTypes.default"+d,c))+(b?" "+b:"")};f=function(){};f.prototype=
new l;c(f.prototype,{init:function(){var a=this.chart,b=this;this.initRegionsDefinitions();this.addEvent(a,"afterGetTable",function(a){b.onDataTableCreated(a)});this.addEvent(a,"afterViewData",function(a){b.dataTableDiv=a;setTimeout(function(){b.focusDataTable()},300)});this.announcer=new m(a,"assertive")},initRegionsDefinitions:function(){var a=this;this.screenReaderSections={before:{element:null,buildContent:function(b){var c=b.options.accessibility.screenReaderSection.beforeChartFormatter;return c?
c(b):a.defaultBeforeChartFormatter(b)},insertIntoDOM:function(a,b){b.renderTo.insertBefore(a,b.renderTo.firstChild)},afterInserted:function(){"undefined"!==typeof a.sonifyButtonId&&a.initSonifyButton(a.sonifyButtonId);"undefined"!==typeof a.dataTableButtonId&&a.initDataTableButton(a.dataTableButtonId)}},after:{element:null,buildContent:function(b){var c=b.options.accessibility.screenReaderSection.afterChartFormatter;return c?c(b):a.defaultAfterChartFormatter()},insertIntoDOM:function(a,b){b.renderTo.insertBefore(a,
b.container.nextSibling)}}}},onChartRender:function(){var a=this;this.linkedDescriptionElement=this.getLinkedDescriptionElement();this.setLinkedDescriptionAttrs();Object.keys(this.screenReaderSections).forEach(function(b){a.updateScreenReaderSection(b)})},getLinkedDescriptionElement:function(){var a=this.chart.options.accessibility.linkedDescription;if(a){if("string"!==typeof a)return a;a=d(a,this.chart);a=n.querySelectorAll(a);if(1===a.length)return a[0]}},setLinkedDescriptionAttrs:function(){var a=
this.linkedDescriptionElement;a&&(a.setAttribute("aria-hidden","true"),v(a,"highcharts-linked-description"))},updateScreenReaderSection:function(a){var b=this.chart,c=this.screenReaderSections[a],d=c.buildContent(b),e=c.element=c.element||this.createElement("div"),g=e.firstChild||this.createElement("div");this.setScreenReaderSectionAttribs(e,a);g.innerHTML=d;e.appendChild(g);c.insertIntoDOM(e,b);A(g);k(b,g);c.afterInserted&&c.afterInserted()},setScreenReaderSectionAttribs:function(a,b){var c=this.chart,
d=c.langFormat("accessibility.screenReaderSection."+b+"RegionLabel",{chart:c});u(a,{id:"highcharts-screen-reader-region-"+b+"-"+c.index,"aria-label":d});a.style.position="relative";"all"===c.options.accessibility.landmarkVerbosity&&d&&a.setAttribute("role","region")},defaultBeforeChartFormatter:function(){var b=this.chart,c=b.options.accessibility.screenReaderSection.beforeChartFormat,d=this.getAxesDescription(),e="highcharts-a11y-sonify-data-btn-"+b.index,h="hc-linkto-highcharts-data-table-"+b.index,
f=r(b),k=b.langFormat("accessibility.screenReaderSection.annotations.heading",{chart:b});d={chartTitle:q(b),typeDescription:this.getTypeDescriptionText(),chartSubtitle:this.getSubtitleText(),chartLongdesc:this.getLongdescText(),xAxisDescription:d.xAxis,yAxisDescription:d.yAxis,playAsSoundButton:b.sonify?this.getSonifyButtonText(e):"",viewTableButton:b.getCSV?this.getDataTableButtonText(h):"",annotationsTitle:f?k:"",annotationsList:f};b=a.i18nFormat(c,d,b);this.dataTableButtonId=h;this.sonifyButtonId=
e;return g(B(b)).replace(/<(\w+)[^>]*?>\s*<\/\1>/g,"")},defaultAfterChartFormatter:function(){var b=this.chart,c=b.options.accessibility.screenReaderSection.afterChartFormat,d={endOfChartMarker:this.getEndOfChartMarkerText()};b=a.i18nFormat(c,d,b);return g(B(b)).replace(/<(\w+)[^>]*?>\s*<\/\1>/g,"")},getLinkedDescription:function(){var a=this.linkedDescriptionElement;return C(a&&a.innerHTML||"")},getLongdescText:function(){var a=this.chart.options,b=a.caption;b=b&&b.text;var c=this.getLinkedDescription();
return a.accessibility.description||c||b||""},getTypeDescriptionText:function(){var a=this.chart;return a.types?a.options.accessibility.typeDescription||a.getTypeDescription(a.types):""},getDataTableButtonText:function(a){var b=this.chart;b=b.langFormat("accessibility.table.viewAsDataTableButtonText",{chart:b,chartTitle:q(b)});return'<a id="'+a+'">'+b+"</a>"},getSonifyButtonText:function(a){var b,c=this.chart;if(!1===(null===(b=c.options.sonification)||void 0===b?void 0:b.enabled))return"";b=c.langFormat("accessibility.sonification.playAsSoundButtonText",
{chart:c,chartTitle:q(c)});return'<button id="'+a+'">'+b+"</button>"},getSubtitleText:function(){var a=this.chart.options.subtitle;return C(a&&a.text||"")},getEndOfChartMarkerText:function(){var a=this.chart,b=a.langFormat("accessibility.screenReaderSection.endOfChartMarker",{chart:a});return'<div id="highcharts-end-of-chart-marker-'+a.index+'">'+b+"</div>"},onDataTableCreated:function(a){var b=this.chart;b.options.accessibility.enabled&&(this.viewDataTableButton&&this.viewDataTableButton.setAttribute("aria-expanded",
"true"),a.html=a.html.replace("<table ",'<table tabindex="0" summary="'+b.langFormat("accessibility.table.tableSummary",{chart:b})+'"'))},focusDataTable:function(){var a=this.dataTableDiv;(a=a&&a.getElementsByTagName("table")[0])&&a.focus&&a.focus()},initSonifyButton:function(a){var b=this,c=this.sonifyButton=y(a),d=this.chart,e=function(a){null===c||void 0===c?void 0:c.setAttribute("aria-hidden","true");null===c||void 0===c?void 0:c.setAttribute("aria-label","");a.preventDefault();a.stopPropagation();
a=d.langFormat("accessibility.sonification.playAsSoundClickAnnouncement",{chart:d});b.announcer.announce(a);setTimeout(function(){null===c||void 0===c?void 0:c.removeAttribute("aria-hidden");null===c||void 0===c?void 0:c.removeAttribute("aria-label");d.sonify&&d.sonify()},1E3)};c&&d&&(u(c,{tabindex:"-1"}),c.onclick=function(a){var b;((null===(b=d.options.accessibility)||void 0===b?void 0:b.screenReaderSection.onPlayAsSoundClick)||e).call(this,a,d)})},initDataTableButton:function(a){var b=this.viewDataTableButton=
y(a),c=this.chart;a=a.replace("hc-linkto-","");b&&(u(b,{role:"button",tabindex:"-1","aria-expanded":!!y(a),href:"#"+a}),b.onclick=c.options.accessibility.screenReaderSection.onViewDataTableClick||function(){c.viewData()})},getAxesDescription:function(){var a=this.chart,c=function(c,d){c=a[c];return 1<c.length||c[0]&&b(c[0].options.accessibility&&c[0].options.accessibility.enabled,d)},d=!!a.types&&0>a.types.indexOf("map"),e=!!a.hasCartesianSeries,g=c("xAxis",!a.angular&&e&&d);c=c("yAxis",e&&d);d={};
g&&(d.xAxis=this.getAxisDescriptionText("xAxis"));c&&(d.yAxis=this.getAxisDescriptionText("yAxis"));return d},getAxisDescriptionText:function(a){var b=this,c=this.chart,d=c[a];return c.langFormat("accessibility.axis."+a+"Description"+(1<d.length?"Plural":"Singular"),{chart:c,names:d.map(function(a){return t(a)}),ranges:d.map(function(a){return b.getAxisRangeDescription(a)}),numAxes:d.length})},getAxisRangeDescription:function(a){var b=a.options||{};return b.accessibility&&"undefined"!==typeof b.accessibility.rangeDescription?
b.accessibility.rangeDescription:a.categories?this.getCategoryAxisRangeDesc(a):!a.isDatetimeAxis||0!==a.min&&0!==a.dataMin?this.getAxisFromToDescription(a):this.getAxisTimeLengthDesc(a)},getCategoryAxisRangeDesc:function(a){var b=this.chart;return a.dataMax&&a.dataMin?b.langFormat("accessibility.axis.rangeCategories",{chart:b,axis:a,numCategories:a.dataMax-a.dataMin+1}):""},getAxisTimeLengthDesc:function(a){var b=this.chart,c={},d="Seconds";c.Seconds=((a.max||0)-(a.min||0))/1E3;c.Minutes=c.Seconds/
60;c.Hours=c.Minutes/60;c.Days=c.Hours/24;["Minutes","Hours","Days"].forEach(function(a){2<c[a]&&(d=a)});var e=c[d].toFixed("Seconds"!==d&&"Minutes"!==d?1:0);return b.langFormat("accessibility.axis.timeRange"+d,{chart:b,axis:a,range:e.replace(".0","")})},getAxisFromToDescription:function(a){var b=this.chart,c=b.options.accessibility.screenReaderSection.axisRangeDateFormat,d=function(d){return a.isDatetimeAxis?b.time.dateFormat(c,a[d]):a[d]};return b.langFormat("accessibility.axis.rangeFromTo",{chart:b,
axis:a,rangeFrom:d("min"),rangeTo:d("max")})},destroy:function(){var a;null===(a=this.announcer)||void 0===a?void 0:a.destroy()}});return f});t(a,"modules/accessibility/components/ContainerComponent.js",[a["parts/Globals.js"],a["parts/Utilities.js"],a["modules/accessibility/utils/htmlUtilities.js"],a["modules/accessibility/utils/chartUtilities.js"],a["modules/accessibility/AccessibilityComponent.js"]],function(a,f,l,m,p){var e=a.win.document;a=f.extend;var h=l.stripHTMLTagsFromString,g=m.unhideChartElementFromAT,
n=m.getChartTitle;l=function(){};l.prototype=new p;a(l.prototype,{onChartUpdate:function(){this.handleSVGTitleElement();this.setSVGContainerLabel();this.setGraphicContainerAttrs();this.setRenderToAttrs();this.makeCreditsAccessible()},handleSVGTitleElement:function(){var a=this.chart,d="highcharts-title-"+a.index,b=h(a.langFormat("accessibility.svgContainerTitle",{chartTitle:n(a)}));if(b.length){var g=this.svgTitleElement=this.svgTitleElement||e.createElementNS("http://www.w3.org/2000/svg","title");
g.textContent=b;g.id=d;a.renderTo.insertBefore(g,a.renderTo.firstChild)}},setSVGContainerLabel:function(){var a=this.chart,d=h(a.langFormat("accessibility.svgContainerLabel",{chartTitle:n(a)}));a.renderer.box&&d.length&&a.renderer.box.setAttribute("aria-label",d)},setGraphicContainerAttrs:function(){var a=this.chart,d=a.langFormat("accessibility.graphicContainerLabel",{chartTitle:n(a)});d.length&&a.container.setAttribute("aria-label",d)},setRenderToAttrs:function(){var a=this.chart;"disabled"!==a.options.accessibility.landmarkVerbosity?
a.renderTo.setAttribute("role","region"):a.renderTo.removeAttribute("role");a.renderTo.setAttribute("aria-label",a.langFormat("accessibility.chartContainerLabel",{title:n(a),chart:a}))},makeCreditsAccessible:function(){var a=this.chart,d=a.credits;d&&(d.textStr&&d.element.setAttribute("aria-label",h(a.langFormat("accessibility.credits",{creditsStr:d.textStr}))),g(a,d.element))},destroy:function(){this.chart.renderTo.setAttribute("aria-hidden",!0)}});return l});t(a,"modules/accessibility/high-contrast-mode.js",
[a["parts/Globals.js"]],function(a){var f=a.isMS,l=a.win,m=l.document;return{isHighContrastModeActive:function(){var a=/(Edg)/.test(l.navigator.userAgent);if(l.matchMedia&&a)return l.matchMedia("(-ms-high-contrast: active)").matches;if(f&&l.getComputedStyle){a=m.createElement("div");a.style.backgroundImage="url(#)";m.body.appendChild(a);var e=(a.currentStyle||l.getComputedStyle(a)).backgroundImage;m.body.removeChild(a);return"none"===e}return!1},setHighContrastTheme:function(a){a.highContrastModeActive=
!0;var e=a.options.accessibility.highContrastTheme;a.update(e,!1);a.series.forEach(function(a){var g=e.plotOptions[a.type]||{};a.update({color:g.color||"windowText",colors:[g.color||"windowText"],borderColor:g.borderColor||"window"});a.points.forEach(function(a){a.options&&a.options.color&&a.update({color:g.color||"windowText",borderColor:g.borderColor||"window"},!1)})});a.redraw()}}});t(a,"modules/accessibility/high-contrast-theme.js",[],function(){return{chart:{backgroundColor:"window"},title:{style:{color:"windowText"}},
subtitle:{style:{color:"windowText"}},colorAxis:{minColor:"windowText",maxColor:"windowText",stops:[]},colors:["windowText"],xAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},yAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},tooltip:{backgroundColor:"window",
borderColor:"windowText",style:{color:"windowText"}},plotOptions:{series:{lineColor:"windowText",fillColor:"window",borderColor:"windowText",edgeColor:"windowText",borderWidth:1,dataLabels:{connectorColor:"windowText",color:"windowText",style:{color:"windowText",textOutline:"none"}},marker:{lineColor:"windowText",fillColor:"windowText"}},pie:{color:"window",colors:["window"],borderColor:"windowText",borderWidth:1},boxplot:{fillColor:"window"},candlestick:{lineColor:"windowText",fillColor:"window"},
errorbar:{fillColor:"window"}},legend:{backgroundColor:"window",itemStyle:{color:"windowText"},itemHoverStyle:{color:"windowText"},itemHiddenStyle:{color:"#555"},title:{style:{color:"windowText"}}},credits:{style:{color:"windowText"}},labels:{style:{color:"windowText"}},drilldown:{activeAxisLabelStyle:{color:"windowText"},activeDataLabelStyle:{color:"windowText"}},navigation:{buttonOptions:{symbolStroke:"windowText",theme:{fill:"window"}}},rangeSelector:{buttonTheme:{fill:"window",stroke:"windowText",
style:{color:"windowText"},states:{hover:{fill:"window",stroke:"windowText",style:{color:"windowText"}},select:{fill:"#444",stroke:"windowText",style:{color:"windowText"}}}},inputBoxBorderColor:"windowText",inputStyle:{backgroundColor:"window",color:"windowText"},labelStyle:{color:"windowText"}},navigator:{handles:{backgroundColor:"window",borderColor:"windowText"},outlineColor:"windowText",maskFill:"transparent",series:{color:"windowText",lineColor:"windowText"},xAxis:{gridLineColor:"windowText"}},
scrollbar:{barBackgroundColor:"#444",barBorderColor:"windowText",buttonArrowColor:"windowText",buttonBackgroundColor:"window",buttonBorderColor:"windowText",rifleColor:"windowText",trackBackgroundColor:"window",trackBorderColor:"windowText"}}});t(a,"modules/accessibility/options/options.js",[],function(){return{accessibility:{enabled:!0,screenReaderSection:{beforeChartFormat:"<h5>{chartTitle}</h5><div>{typeDescription}</div><div>{chartSubtitle}</div><div>{chartLongdesc}</div><div>{playAsSoundButton}</div><div>{viewTableButton}</div><div>{xAxisDescription}</div><div>{yAxisDescription}</div><div>{annotationsTitle}{annotationsList}</div>",
afterChartFormat:"{endOfChartMarker}",axisRangeDateFormat:"%Y-%m-%d %H:%M:%S"},series:{describeSingleSeries:!1,pointDescriptionEnabledThreshold:200},point:{valueDescriptionFormat:"{index}. {xDescription}{separator}{value}."},landmarkVerbosity:"all",linkedDescription:'*[data-highcharts-chart="{index}"] + .highcharts-description',keyboardNavigation:{enabled:!0,focusBorder:{enabled:!0,hideBrowserFocusOutline:!0,style:{color:"#335cad",lineWidth:2,borderRadius:3},margin:2},order:["series","zoom","rangeSelector",
"legend","chartMenu"],wrapAround:!0,seriesNavigation:{skipNullPoints:!0,pointNavigationEnabledThreshold:!1}},announceNewData:{enabled:!1,minAnnounceInterval:5E3,interruptUser:!1}},legend:{accessibility:{enabled:!0,keyboardNavigation:{enabled:!0}}},exporting:{accessibility:{enabled:!0}}}});t(a,"modules/accessibility/options/langOptions.js",[],function(){return{accessibility:{defaultChartTitle:"Chart",chartContainerLabel:"{title}. Highcharts interactive chart.",svgContainerLabel:"Interactive chart",
drillUpButton:"{buttonText}",credits:"Chart credits: {creditsStr}",thousandsSep:",",svgContainerTitle:"",graphicContainerLabel:"",screenReaderSection:{beforeRegionLabel:"Chart screen reader information.",afterRegionLabel:"",annotations:{heading:"Chart annotations summary",descriptionSinglePoint:"{annotationText}. Related to {annotationPoint}",descriptionMultiplePoints:"{annotationText}. Related to {annotationPoint}{ Also related to, #each(additionalAnnotationPoints)}",descriptionNoPoints:"{annotationText}"},
endOfChartMarker:"End of interactive chart."},sonification:{playAsSoundButtonText:"Play as sound, {chartTitle}",playAsSoundClickAnnouncement:"Play"},legend:{legendLabel:"Toggle series visibility",legendItem:"Toggle visibility of {itemName}"},zoom:{mapZoomIn:"Zoom chart",mapZoomOut:"Zoom out chart",resetZoomButton:"Reset zoom"},rangeSelector:{minInputLabel:"Select start date.",maxInputLabel:"Select end date.",buttonText:"Select range {buttonText}"},table:{viewAsDataTableButtonText:"View as data table, {chartTitle}",
tableSummary:"Table representation of chart."},announceNewData:{newDataAnnounce:"Updated data for chart {chartTitle}",newSeriesAnnounceSingle:"New data series: {seriesDesc}",newPointAnnounceSingle:"New data point: {pointDesc}",newSeriesAnnounceMultiple:"New data series in chart {chartTitle}: {seriesDesc}",newPointAnnounceMultiple:"New data point in chart {chartTitle}: {pointDesc}"},seriesTypeDescriptions:{boxplot:"Box plot charts are typically used to display groups of statistical data. Each data point in the chart can have up to 5 values: minimum, lower quartile, median, upper quartile, and maximum.",
arearange:"Arearange charts are line charts displaying a range between a lower and higher value for each point.",areasplinerange:"These charts are line charts displaying a range between a lower and higher value for each point.",bubble:"Bubble charts are scatter charts where each data point also has a size value.",columnrange:"Columnrange charts are column charts displaying a range between a lower and higher value for each point.",errorbar:"Errorbar series are used to display the variability of the data.",
funnel:"Funnel charts are used to display reduction of data in stages.",pyramid:"Pyramid charts consist of a single pyramid with item heights corresponding to each point value.",waterfall:"A waterfall chart is a column chart where each column contributes towards a total end value."},chartTypes:{emptyChart:"Empty chart",mapTypeDescription:"Map of {mapTitle} with {numSeries} data series.",unknownMap:"Map of unspecified region with {numSeries} data series.",combinationChart:"Combination chart with {numSeries} data series.",
defaultSingle:"Chart with {numPoints} data {#plural(numPoints, points, point)}.",defaultMultiple:"Chart with {numSeries} data series.",splineSingle:"Line chart with {numPoints} data {#plural(numPoints, points, point)}.",splineMultiple:"Line chart with {numSeries} lines.",lineSingle:"Line chart with {numPoints} data {#plural(numPoints, points, point)}.",lineMultiple:"Line chart with {numSeries} lines.",columnSingle:"Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.",columnMultiple:"Bar chart with {numSeries} data series.",
barSingle:"Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.",barMultiple:"Bar chart with {numSeries} data series.",pieSingle:"Pie chart with {numPoints} {#plural(numPoints, slices, slice)}.",pieMultiple:"Pie chart with {numSeries} pies.",scatterSingle:"Scatter chart with {numPoints} {#plural(numPoints, points, point)}.",scatterMultiple:"Scatter chart with {numSeries} data series.",boxplotSingle:"Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.",boxplotMultiple:"Boxplot with {numSeries} data series.",
bubbleSingle:"Bubble chart with {numPoints} {#plural(numPoints, bubbles, bubble)}.",bubbleMultiple:"Bubble chart with {numSeries} data series."},axis:{xAxisDescriptionSingular:"The chart has 1 X axis displaying {names[0]}. {ranges[0]}",xAxisDescriptionPlural:"The chart has {numAxes} X axes displaying {#each(names, -1) }and {names[-1]}.",yAxisDescriptionSingular:"The chart has 1 Y axis displaying {names[0]}. {ranges[0]}",yAxisDescriptionPlural:"The chart has {numAxes} Y axes displaying {#each(names, -1) }and {names[-1]}.",
timeRangeDays:"Range: {range} days.",timeRangeHours:"Range: {range} hours.",timeRangeMinutes:"Range: {range} minutes.",timeRangeSeconds:"Range: {range} seconds.",rangeFromTo:"Range: {rangeFrom} to {rangeTo}.",rangeCategories:"Range: {numCategories} categories."},exporting:{chartMenuLabel:"Chart menu",menuButtonLabel:"View chart menu",exportRegionLabel:"Chart menu"},series:{summary:{"default":"{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",defaultCombination:"{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",
line:"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",lineCombination:"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.",spline:"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",splineCombination:"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.",column:"{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.",
columnCombination:"{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.",bar:"{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.",barCombination:"{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.",pie:"{name}, pie {ix} of {numSeries} with {numPoints} {#plural(numPoints, slices, slice)}.",pieCombination:"{name}, series {ix} of {numSeries}. Pie with {numPoints} {#plural(numPoints, slices, slice)}.",
scatter:"{name}, scatter plot {ix} of {numSeries} with {numPoints} {#plural(numPoints, points, point)}.",scatterCombination:"{name}, series {ix} of {numSeries}, scatter plot with {numPoints} {#plural(numPoints, points, point)}.",boxplot:"{name}, boxplot {ix} of {numSeries} with {numPoints} {#plural(numPoints, boxes, box)}.",boxplotCombination:"{name}, series {ix} of {numSeries}. Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.",bubble:"{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.",
bubbleCombination:"{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.",map:"{name}, map {ix} of {numSeries} with {numPoints} {#plural(numPoints, areas, area)}.",mapCombination:"{name}, series {ix} of {numSeries}. Map with {numPoints} {#plural(numPoints, areas, area)}.",mapline:"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",maplineCombination:"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.",
mapbubble:"{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.",mapbubbleCombination:"{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}."},description:"{description}",xAxisDescription:"X axis, {name}",yAxisDescription:"Y axis, {name}",nullPointValue:"No value",pointAnnotationsDescription:"{Annotation: #each(annotations). }"}}}});t(a,"modules/accessibility/options/deprecatedOptions.js",[a["parts/Utilities.js"]],
function(a){function f(a,d,b){g("Highcharts: Deprecated option "+d+" used. This will be removed from future versions of Highcharts. Use "+b+" instead.",!1,a)}function l(a,d,b){for(var c,e=0;e<d.length-1;++e)c=d[e],a=a[c]=n(a[c],{});a[d[d.length-1]]=b}function m(a,d,b,e){function c(a,b){return b.reduce(function(a,b){return a[b]},a)}var g=c(a.options,d),h=c(a.options,b);Object.keys(e).forEach(function(c){var k=g[c];"undefined"!==typeof k&&(l(h,e[c],k),f(a,d.join(".")+"."+c,b.join(".")+"."+e[c].join(".")))})}
function p(a){var c=a.options.chart||{},b=a.options.accessibility||{};["description","typeDescription"].forEach(function(d){c[d]&&(b[d]=c[d],f(a,"chart."+d,"accessibility."+d))})}function e(a){a.axes.forEach(function(c){(c=c.options)&&c.description&&(c.accessibility=c.accessibility||{},c.accessibility.description=c.description,f(a,"axis.description","axis.accessibility.description"))})}function h(a){var c={description:["accessibility","description"],exposeElementToA11y:["accessibility","exposeAsGroupOnly"],
pointDescriptionFormatter:["accessibility","pointDescriptionFormatter"],skipKeyboardNavigation:["accessibility","keyboardNavigation","enabled"]};a.series.forEach(function(b){Object.keys(c).forEach(function(d){var e=b.options[d];"undefined"!==typeof e&&(l(b.options,c[d],"skipKeyboardNavigation"===d?!e:e),f(a,"series."+d,"series."+c[d].join(".")))})})}var g=a.error,n=a.pick;return function(a){p(a);e(a);a.series&&h(a);m(a,["accessibility"],["accessibility"],{pointDateFormat:["point","dateFormat"],pointDateFormatter:["point",
"dateFormatter"],pointDescriptionFormatter:["point","descriptionFormatter"],pointDescriptionThreshold:["series","pointDescriptionEnabledThreshold"],pointNavigationThreshold:["keyboardNavigation","seriesNavigation","pointNavigationEnabledThreshold"],pointValueDecimals:["point","valueDecimals"],pointValuePrefix:["point","valuePrefix"],pointValueSuffix:["point","valueSuffix"],screenReaderSectionFormatter:["screenReaderSection","beforeChartFormatter"],describeSingleSeries:["series","describeSingleSeries"],
seriesDescriptionFormatter:["series","descriptionFormatter"],onTableAnchorClick:["screenReaderSection","onViewDataTableClick"],axisRangeDateFormat:["screenReaderSection","axisRangeDateFormat"]});m(a,["accessibility","keyboardNavigation"],["accessibility","keyboardNavigation","seriesNavigation"],{skipNullPoints:["skipNullPoints"],mode:["mode"]});m(a,["lang","accessibility"],["lang","accessibility"],{legendItem:["legend","legendItem"],legendLabel:["legend","legendLabel"],mapZoomIn:["zoom","mapZoomIn"],
mapZoomOut:["zoom","mapZoomOut"],resetZoomButton:["zoom","resetZoomButton"],screenReaderRegionLabel:["screenReaderSection","beforeRegionLabel"],rangeSelectorButton:["rangeSelector","buttonText"],rangeSelectorMaxInput:["rangeSelector","maxInputLabel"],rangeSelectorMinInput:["rangeSelector","minInputLabel"],svgContainerEnd:["screenReaderSection","endOfChartMarker"],viewAsDataTable:["table","viewAsDataTableButtonText"],tableSummary:["table","tableSummary"]})}});t(a,"modules/accessibility/a11y-i18n.js",
[a["parts/Globals.js"],a["parts/Utilities.js"]],function(a,f){function l(a,h){var e=a.indexOf("#each("),f=a.indexOf("#plural("),c=a.indexOf("["),d=a.indexOf("]");if(-1<e){c=a.slice(e).indexOf(")")+e;var b=a.substring(0,e);f=a.substring(c+1);c=a.substring(e+6,c).split(",");e=Number(c[1]);a="";if(h=h[c[0]])for(e=isNaN(e)?h.length:e,e=0>e?h.length+e:Math.min(e,h.length),c=0;c<e;++c)a+=b+h[c]+f;return a.length?a:""}if(-1<f){b=a.slice(f).indexOf(")")+f;a=a.substring(f+8,b).split(",");switch(Number(h[a[0]])){case 0:a=
p(a[4],a[1]);break;case 1:a=p(a[2],a[1]);break;case 2:a=p(a[3],a[1]);break;default:a=a[1]}a?(h=a,h=h.trim&&h.trim()||h.replace(/^\s+|\s+$/g,"")):h="";return h}return-1<c?(f=a.substring(0,c),a=Number(a.substring(c+1,d)),h=h[f],!isNaN(a)&&h&&(0>a?(b=h[h.length+a],"undefined"===typeof b&&(b=h[0])):(b=h[a],"undefined"===typeof b&&(b=h[h.length-1]))),"undefined"!==typeof b?b:""):"{"+a+"}"}var m=f.format,p=f.pick;a.i18nFormat=function(a,f,g){var e=function(a,b){a=a.slice(b||0);var c=a.indexOf("{"),d=a.indexOf("}");
if(-1<c&&d>c)return{statement:a.substring(c+1,d),begin:b+c+1,end:b+d}},c=[],d=0;do{var b=e(a,d);var h=a.substring(d,b&&b.begin-1);h.length&&c.push({value:h,type:"constant"});b&&c.push({value:b.statement,type:"statement"});d=b?b.end+1:d+1}while(b);c.forEach(function(a){"statement"===a.type&&(a.value=l(a.value,f))});return m(c.reduce(function(a,b){return a+b.value},""),f,g)};a.Chart.prototype.langFormat=function(e,f){e=e.split(".");for(var g=this.options.lang,h=0;h<e.length;++h)g=g&&g[e[h]];return"string"===
typeof g?a.i18nFormat(g,f,this):""}});t(a,"modules/accessibility/focusBorder.js",[a["parts/Globals.js"],a["parts/Utilities.js"]],function(a,f){var l=f.addEvent,m=f.extend,p=f.pick;m(a.SVGElement.prototype,{addFocusBorder:function(a,f){this.focusBorder&&this.removeFocusBorder();var e=this.getBBox();a=p(a,3);e.x+=this.translateX?this.translateX:0;e.y+=this.translateY?this.translateY:0;this.focusBorder=this.renderer.rect(e.x-a,e.y-a,e.width+2*a,e.height+2*a,parseInt((f&&f.borderRadius||0).toString(),
10)).addClass("highcharts-focus-border").attr({zIndex:99}).add(this.parentGroup);this.renderer.styledMode||this.focusBorder.attr({stroke:f&&f.stroke,"stroke-width":f&&f.strokeWidth})},removeFocusBorder:function(){this.focusBorder&&(this.focusBorder.destroy(),delete this.focusBorder)}});a.Chart.prototype.setFocusToElement=function(a,f){var e=this.options.accessibility.keyboardNavigation.focusBorder;(f=f||a.element)&&f.focus&&(f.hcEvents&&f.hcEvents.focusin||l(f,"focusin",function(){}),f.focus(),e.hideBrowserFocusOutline&&
(f.style.outline="none"));e.enabled&&(this.focusElement&&this.focusElement.removeFocusBorder(),a.addFocusBorder(e.margin,{stroke:e.style.color,strokeWidth:e.style.lineWidth,borderRadius:e.style.borderRadius}),this.focusElement=a)}});t(a,"modules/accessibility/accessibility.js",[a["modules/accessibility/utils/chartUtilities.js"],a["parts/Globals.js"],a["modules/accessibility/KeyboardNavigationHandler.js"],a["parts/Point.js"],a["parts/Utilities.js"],a["modules/accessibility/AccessibilityComponent.js"],
a["modules/accessibility/KeyboardNavigation.js"],a["modules/accessibility/components/LegendComponent.js"],a["modules/accessibility/components/MenuComponent.js"],a["modules/accessibility/components/SeriesComponent/SeriesComponent.js"],a["modules/accessibility/components/ZoomComponent.js"],a["modules/accessibility/components/RangeSelectorComponent.js"],a["modules/accessibility/components/InfoRegionsComponent.js"],a["modules/accessibility/components/ContainerComponent.js"],a["modules/accessibility/high-contrast-mode.js"],
a["modules/accessibility/high-contrast-theme.js"],a["modules/accessibility/options/options.js"],a["modules/accessibility/options/langOptions.js"],a["modules/accessibility/options/deprecatedOptions.js"]],function(a,f,l,m,p,e,h,g,n,c,d,b,t,k,x,I,v,u,B){function q(a){this.init(a)}var r=p.addEvent,A=p.extend,w=p.fireEvent,D=p.merge,E=f.win.document;D(!0,f.defaultOptions,v,{accessibility:{highContrastTheme:I},lang:u});f.A11yChartUtilities=a;f.KeyboardNavigationHandler=l;f.AccessibilityComponent=e;q.prototype=
{init:function(a){this.chart=a;E.addEventListener&&a.renderer.isSVG?(B(a),this.initComponents(),this.keyboardNavigation=new h(a,this.components),this.update()):a.renderTo.setAttribute("aria-hidden",!0)},initComponents:function(){var a=this.chart,e=a.options.accessibility;this.components={container:new k,infoRegions:new t,legend:new g,chartMenu:new n,rangeSelector:new b,series:new c,zoom:new d};e.customComponents&&A(this.components,e.customComponents);var f=this.components;this.getComponentOrder().forEach(function(b){f[b].initBase(a);
f[b].init()})},getComponentOrder:function(){if(!this.components)return[];if(!this.components.series)return Object.keys(this.components);var a=Object.keys(this.components).filter(function(a){return"series"!==a});return["series"].concat(a)},update:function(){var a=this.components,b=this.chart,c=b.options.accessibility;w(b,"beforeA11yUpdate");b.types=this.getChartTypes();this.getComponentOrder().forEach(function(c){a[c].onChartUpdate();w(b,"afterA11yComponentUpdate",{name:c,component:a[c]})});this.keyboardNavigation.update(c.keyboardNavigation.order);
!b.highContrastModeActive&&x.isHighContrastModeActive()&&x.setHighContrastTheme(b);w(b,"afterA11yUpdate",{accessibility:this})},destroy:function(){var a=this.chart||{},b=this.components;Object.keys(b).forEach(function(a){b[a].destroy();b[a].destroyBase()});this.keyboardNavigation&&this.keyboardNavigation.destroy();a.renderTo&&a.renderTo.setAttribute("aria-hidden",!0);a.focusElement&&a.focusElement.removeFocusBorder()},getChartTypes:function(){var a={};this.chart.series.forEach(function(b){a[b.type]=
1});return Object.keys(a)}};f.Chart.prototype.updateA11yEnabled=function(){var a=this.accessibility,b=this.options.accessibility;b&&b.enabled?a?a.update():this.accessibility=new q(this):a?(a.destroy&&a.destroy(),delete this.accessibility):this.renderTo.setAttribute("aria-hidden",!0)};r(f.Chart,"render",function(a){this.a11yDirty&&this.renderTo&&(delete this.a11yDirty,this.updateA11yEnabled());var b=this.accessibility;b&&b.getComponentOrder().forEach(function(a){b.components[a].onChartRender()})});
r(f.Chart,"update",function(a){if(a=a.options.accessibility)a.customComponents&&(this.options.accessibility.customComponents=a.customComponents,delete a.customComponents),D(!0,this.options.accessibility,a),this.accessibility&&this.accessibility.destroy&&(this.accessibility.destroy(),delete this.accessibility);this.a11yDirty=!0});r(m,"update",function(){this.series.chart.accessibility&&(this.series.chart.a11yDirty=!0)});["addSeries","init"].forEach(function(a){r(f.Chart,a,function(){this.a11yDirty=
!0})});["update","updatedData","remove"].forEach(function(a){r(f.Series,a,function(){this.chart.accessibility&&(this.chart.a11yDirty=!0)})});["afterDrilldown","drillupall"].forEach(function(a){r(f.Chart,a,function(){this.accessibility&&this.accessibility.update()})});r(f.Chart,"destroy",function(){this.accessibility&&this.accessibility.destroy()})});t(a,"masters/modules/accessibility.src.js",[],function(){})});
//# sourceMappingURL=accessibility.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 (c) 2014-2019 Highsoft AS
 Authors: Jon Arild Nygard / Oystein Moseng

 License: www.highcharts.com/license
*/
(function(c){"object"===typeof module&&module.exports?(c["default"]=c,module.exports=c):"function"===typeof define&&define.amd?define("highcharts/modules/treemap",["highcharts"],function(p){c(p);c.Highcharts=p;return c}):c("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(c){function p(c,d,y,g){c.hasOwnProperty(d)||(c[d]=g.apply(null,y))}c=c?c._modules:{};p(c,"mixins/tree-series.js",[c["parts/Color.js"],c["parts/Utilities.js"]],function(c,d){var y=d.extend,g=d.isArray,z=d.isNumber,m=d.isObject,
k=d.merge,v=d.pick;return{getColor:function(f,l){var d=l.index,k=l.mapOptionsToLevel,w=l.parentColor,g=l.parentColorIndex,m=l.series,B=l.colors,y=l.siblings,q=m.points,x=m.chart.options.chart,A;if(f){q=q[f.i];f=k[f.level]||{};if(k=q&&f.colorByPoint){var t=q.index%(B?B.length:x.colorCount);var z=B&&B[t]}if(!m.chart.styledMode){B=q&&q.options.color;x=f&&f.color;if(A=w)A=(A=f&&f.colorVariation)&&"brightness"===A.key?c.parse(w).brighten(d/y*A.to).get():w;A=v(B,x,z,A,m.color)}var p=v(q&&q.options.colorIndex,
f&&f.colorIndex,t,g,l.colorIndex)}return{color:A,colorIndex:p}},getLevelOptions:function(f){var l=null;if(m(f)){l={};var c=z(f.from)?f.from:1;var d=f.levels;var w={};var v=m(f.defaults)?f.defaults:{};g(d)&&(w=d.reduce(function(l,d){if(m(d)&&z(d.level)){var f=k({},d);var E="boolean"===typeof f.levelIsConstant?f.levelIsConstant:v.levelIsConstant;delete f.levelIsConstant;delete f.level;d=d.level+(E?0:c-1);m(l[d])?y(l[d],f):l[d]=f}return l},{}));d=z(f.to)?f.to:1;for(f=0;f<=d;f++)l[f]=k({},v,m(w[f])?w[f]:
{})}return l},setTreeValues:function F(d,c){var l=c.before,k=c.idRoot,m=c.mapIdToNode[k],g=c.points[d.i],E=g&&g.options||{},q=0,x=[];y(d,{levelDynamic:d.level-(("boolean"===typeof c.levelIsConstant?c.levelIsConstant:1)?0:m.level),name:v(g&&g.name,""),visible:k===d.id||("boolean"===typeof c.visible?c.visible:!1)});"function"===typeof l&&(d=l(d,c));d.children.forEach(function(l,k){var g=y({},c);y(g,{index:k,siblings:d.children.length,visible:d.visible});l=F(l,g);x.push(l);l.visible&&(q+=l.val)});d.visible=
0<q||d.visible;l=v(E.value,q);y(d,{children:x,childrenTotal:q,isLeaf:d.visible&&!q,val:l});return d},updateRootId:function(d){if(m(d)){var c=m(d.options)?d.options:{};c=v(d.rootNode,c.rootId,"");m(d.userOptions)&&(d.userOptions.rootId=c);d.rootNode=c}return c}}});p(c,"mixins/draw-point.js",[],function(){var c=function(d){var c=this,g=c.graphic,z=d.animatableAttribs,m=d.onComplete,k=d.css,v=d.renderer;if(c.shouldDraw())g||(c.graphic=g=v[d.shapeType](d.shapeArgs).add(d.group)),g.css(k).attr(d.attribs).animate(z,
d.isNew?!1:void 0,m);else if(g){var f=function(){c.graphic=g=g.destroy();"function"===typeof m&&m()};Object.keys(z).length?g.animate(z,void 0,function(){f()}):f()}};return function(d){(d.attribs=d.attribs||{})["class"]=this.getClassName();c.call(this,d)}});p(c,"modules/treemap.src.js",[c["parts/Globals.js"],c["mixins/tree-series.js"],c["mixins/draw-point.js"],c["parts/Color.js"],c["mixins/legend-symbol.js"],c["parts/Point.js"],c["parts/Utilities.js"]],function(c,d,y,g,z,m,k){var v=g.parse,f=k.addEvent,
l=k.correctFloat,p=k.defined,F=k.error,w=k.extend,J=k.fireEvent,I=k.isArray,B=k.isNumber,K=k.isObject,q=k.isString,x=k.merge,A=k.objectEach,t=k.pick;g=k.seriesType;var L=k.stableSort,G=c.seriesTypes;k=c.noop;var M=d.getColor,N=d.getLevelOptions,C=c.Series,O=function(a,b,e){e=e||this;A(a,function(r,h){b.call(e,r,h,a)})},D=function(a,b,e){e=e||this;a=b.call(e,a);!1!==a&&D(a,b,e)},P=d.updateRootId,H=!1;g("treemap","scatter",{allowTraversingTree:!1,animationLimit:250,showInLegend:!1,marker:!1,colorByPoint:!1,
dataLabels:{defer:!1,enabled:!0,formatter:function(){var a=this&&this.point?this.point:{};return q(a.name)?a.name:""},inside:!0,verticalAlign:"middle"},tooltip:{headerFormat:"",pointFormat:"<b>{point.name}</b>: {point.value}<br/>"},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",brightness:G.heatmap?0:.1,halo:!1,opacity:.75,shadow:!1}}},{pointArrayMap:["value"],directTouch:!0,optionalAxis:"colorAxis",getSymbol:k,parallelArrays:["x","y","value","colorValue"],colorKey:"colorValue",trackerGroups:["group","dataLabelsGroup"],getListOfParents:function(a,b){a=I(a)?a:[];var e=I(b)?b:[];b=a.reduce(function(a,b,e){b=t(b.parent,"");"undefined"===typeof a[b]&&(a[b]=[]);a[b].push(e);return a},{"":[]});O(b,function(a,
b,d){""!==b&&-1===e.indexOf(b)&&(a.forEach(function(a){d[""].push(a)}),delete d[b])});return b},getTree:function(){var a=this.data.map(function(a){return a.id});a=this.getListOfParents(this.data,a);this.nodeMap=[];return this.buildNode("",-1,0,a,null)},hasData:function(){return!!this.processedXData.length},init:function(a,b){var e=c.colorMapSeriesMixin;e&&(this.colorAttribs=e.colorAttribs);this.eventsToUnbind.push(f(this,"setOptions",function(a){a=a.userOptions;p(a.allowDrillToNode)&&!p(a.allowTraversingTree)&&
(a.allowTraversingTree=a.allowDrillToNode,delete a.allowDrillToNode);p(a.drillUpButton)&&!p(a.traverseUpButton)&&(a.traverseUpButton=a.drillUpButton,delete a.drillUpButton)}));C.prototype.init.call(this,a,b);this.options.allowTraversingTree&&this.eventsToUnbind.push(f(this,"click",this.onClickDrillToNode))},buildNode:function(a,b,e,d,h){var c=this,n=[],r=c.points[b],f=0,u;(d[a]||[]).forEach(function(b){u=c.buildNode(c.points[b].id,b,e+1,d,a);f=Math.max(u.height+1,f);n.push(u)});b={id:a,i:b,children:n,
height:f,level:e,parent:h,visible:!1};c.nodeMap[b.id]=b;r&&(r.node=b);return b},setTreeValues:function(a){var b=this,e=b.options,d=b.nodeMap[b.rootNode];e="boolean"===typeof e.levelIsConstant?e.levelIsConstant:!0;var h=0,c=[],n=b.points[a.i];a.children.forEach(function(a){a=b.setTreeValues(a);c.push(a);a.ignore||(h+=a.val)});L(c,function(a,b){return a.sortIndex-b.sortIndex});var f=t(n&&n.options.value,h);n&&(n.value=f);w(a,{children:c,childrenTotal:h,ignore:!(t(n&&n.visible,!0)&&0<f),isLeaf:a.visible&&
!h,levelDynamic:a.level-(e?0:d.level),name:t(n&&n.name,""),sortIndex:t(n&&n.sortIndex,-f),val:f});return a},calculateChildrenAreas:function(a,b){var e=this,d=e.options,h=e.mapOptionsToLevel[a.level+1],c=t(e[h&&h.layoutAlgorithm]&&h.layoutAlgorithm,d.layoutAlgorithm),n=d.alternateStartingDirection,f=[];a=a.children.filter(function(a){return!a.ignore});h&&h.layoutStartingDirection&&(b.direction="vertical"===h.layoutStartingDirection?0:1);f=e[c](b,a);a.forEach(function(a,h){h=f[h];a.values=x(h,{val:a.childrenTotal,
direction:n?1-b.direction:b.direction});a.pointValues=x(h,{x:h.x/e.axisRatio,y:100-h.y-h.height,width:h.width/e.axisRatio});a.children.length&&e.calculateChildrenAreas(a,a.values)})},setPointValues:function(){var a=this,b=a.xAxis,e=a.yAxis,d=a.chart.styledMode;a.points.forEach(function(h){var c=h.node,n=c.pointValues;c=c.visible;if(n&&c){c=n.height;var f=n.width,r=n.x,u=n.y,k=d?0:(a.pointAttribs(h)["stroke-width"]||0)%2/2;n=Math.round(b.toPixels(r,!0))-k;f=Math.round(b.toPixels(r+f,!0))-k;r=Math.round(e.toPixels(u,
!0))-k;c=Math.round(e.toPixels(u+c,!0))-k;h.shapeArgs={x:Math.min(n,f),y:Math.min(r,c),width:Math.abs(f-n),height:Math.abs(c-r)};h.plotX=h.shapeArgs.x+h.shapeArgs.width/2;h.plotY=h.shapeArgs.y+h.shapeArgs.height/2}else delete h.plotX,delete h.plotY})},setColorRecursive:function(a,b,e,c,h){var d=this,f=d&&d.chart;f=f&&f.options&&f.options.colors;if(a){var r=M(a,{colors:f,index:c,mapOptionsToLevel:d.mapOptionsToLevel,parentColor:b,parentColorIndex:e,series:d,siblings:h});if(b=d.points[a.i])b.color=
r.color,b.colorIndex=r.colorIndex;(a.children||[]).forEach(function(b,e){d.setColorRecursive(b,r.color,r.colorIndex,e,a.children.length)})}},algorithmGroup:function(a,b,e,d){this.height=a;this.width=b;this.plot=d;this.startDirection=this.direction=e;this.lH=this.nH=this.lW=this.nW=this.total=0;this.elArr=[];this.lP={total:0,lH:0,nH:0,lW:0,nW:0,nR:0,lR:0,aspectRatio:function(a,b){return Math.max(a/b,b/a)}};this.addElement=function(a){this.lP.total=this.elArr[this.elArr.length-1];this.total+=a;0===
this.direction?(this.lW=this.nW,this.lP.lH=this.lP.total/this.lW,this.lP.lR=this.lP.aspectRatio(this.lW,this.lP.lH),this.nW=this.total/this.height,this.lP.nH=this.lP.total/this.nW,this.lP.nR=this.lP.aspectRatio(this.nW,this.lP.nH)):(this.lH=this.nH,this.lP.lW=this.lP.total/this.lH,this.lP.lR=this.lP.aspectRatio(this.lP.lW,this.lH),this.nH=this.total/this.width,this.lP.nW=this.lP.total/this.nH,this.lP.nR=this.lP.aspectRatio(this.lP.nW,this.nH));this.elArr.push(a)};this.reset=function(){this.lW=this.nW=
0;this.elArr=[];this.total=0}},algorithmCalcPoints:function(a,b,e,d){var h,c,f,r,k=e.lW,u=e.lH,g=e.plot,m=0,q=e.elArr.length-1;if(b)k=e.nW,u=e.nH;else var p=e.elArr[e.elArr.length-1];e.elArr.forEach(function(a){if(b||m<q)0===e.direction?(h=g.x,c=g.y,f=k,r=a/f):(h=g.x,c=g.y,r=u,f=a/r),d.push({x:h,y:c,width:f,height:l(r)}),0===e.direction?g.y+=r:g.x+=f;m+=1});e.reset();0===e.direction?e.width-=k:e.height-=u;g.y=g.parent.y+(g.parent.height-e.height);g.x=g.parent.x+(g.parent.width-e.width);a&&(e.direction=
1-e.direction);b||e.addElement(p)},algorithmLowAspectRatio:function(a,b,e){var d=[],h=this,c,f={x:b.x,y:b.y,parent:b},g=0,k=e.length-1,u=new this.algorithmGroup(b.height,b.width,b.direction,f);e.forEach(function(e){c=e.val/b.val*b.height*b.width;u.addElement(c);u.lP.nR>u.lP.lR&&h.algorithmCalcPoints(a,!1,u,d,f);g===k&&h.algorithmCalcPoints(a,!0,u,d,f);g+=1});return d},algorithmFill:function(a,b,e){var d=[],c,f=b.direction,g=b.x,k=b.y,l=b.width,u=b.height,m,q,p,t;e.forEach(function(e){c=e.val/b.val*
b.height*b.width;m=g;q=k;0===f?(t=u,p=c/t,l-=p,g+=p):(p=l,t=c/p,u-=t,k+=t);d.push({x:m,y:q,width:p,height:t});a&&(f=1-f)});return d},strip:function(a,b){return this.algorithmLowAspectRatio(!1,a,b)},squarified:function(a,b){return this.algorithmLowAspectRatio(!0,a,b)},sliceAndDice:function(a,b){return this.algorithmFill(!0,a,b)},stripes:function(a,b){return this.algorithmFill(!1,a,b)},translate:function(){var a=this,b=a.options,e=P(a);C.prototype.translate.call(a);var d=a.tree=a.getTree();var c=a.nodeMap[e];
a.renderTraverseUpButton(e);a.mapOptionsToLevel=N({from:c.level+1,levels:b.levels,to:d.height,defaults:{levelIsConstant:a.options.levelIsConstant,colorByPoint:b.colorByPoint}});""===e||c&&c.children.length||(a.setRootNode("",!1),e=a.rootNode,c=a.nodeMap[e]);D(a.nodeMap[a.rootNode],function(b){var e=!1,d=b.parent;b.visible=!0;if(d||""===d)e=a.nodeMap[d];return e});D(a.nodeMap[a.rootNode].children,function(a){var b=!1;a.forEach(function(a){a.visible=!0;a.children.length&&(b=(b||[]).concat(a.children))});
return b});a.setTreeValues(d);a.axisRatio=a.xAxis.len/a.yAxis.len;a.nodeMap[""].pointValues=e={x:0,y:0,width:100,height:100};a.nodeMap[""].values=e=x(e,{width:e.width*a.axisRatio,direction:"vertical"===b.layoutStartingDirection?0:1,val:d.val});a.calculateChildrenAreas(d,e);a.colorAxis||b.colorByPoint||a.setColorRecursive(a.tree);b.allowTraversingTree&&(b=c.pointValues,a.xAxis.setExtremes(b.x,b.x+b.width,!1),a.yAxis.setExtremes(b.y,b.y+b.height,!1),a.xAxis.setScale(),a.yAxis.setScale());a.setPointValues()},
drawDataLabels:function(){var a=this,b=a.mapOptionsToLevel,e,d;a.points.filter(function(a){return a.node.visible}).forEach(function(c){d=b[c.node.level];e={style:{}};c.node.isLeaf||(e.enabled=!1);d&&d.dataLabels&&(e=x(e,d.dataLabels),a._hasPointLabels=!0);c.shapeArgs&&(e.style.width=c.shapeArgs.width,c.dataLabel&&c.dataLabel.css({width:c.shapeArgs.width+"px"}));c.dlOptions=x(e,c.options.dataLabels)});C.prototype.drawDataLabels.call(this)},alignDataLabel:function(a,b,e){var c=e.style;!p(c.textOverflow)&&
b.text&&b.getBBox().width>b.text.textWidth&&b.css({textOverflow:"ellipsis",width:c.width+="px"});G.column.prototype.alignDataLabel.apply(this,arguments);a.dataLabel&&a.dataLabel.attr({zIndex:(a.node.zIndex||0)+1})},pointAttribs:function(a,b){var e=K(this.mapOptionsToLevel)?this.mapOptionsToLevel:{},c=a&&e[a.node.level]||{};e=this.options;var d=b&&e.states[b]||{},f=a&&a.getClassName()||"";a={stroke:a&&a.borderColor||c.borderColor||d.borderColor||e.borderColor,"stroke-width":t(a&&a.borderWidth,c.borderWidth,
d.borderWidth,e.borderWidth),dashstyle:a&&a.borderDashStyle||c.borderDashStyle||d.borderDashStyle||e.borderDashStyle,fill:a&&a.color||this.color};-1!==f.indexOf("highcharts-above-level")?(a.fill="none",a["stroke-width"]=0):-1!==f.indexOf("highcharts-internal-node-interactive")?(b=t(d.opacity,e.opacity),a.fill=v(a.fill).setOpacity(b).get(),a.cursor="pointer"):-1!==f.indexOf("highcharts-internal-node")?a.fill="none":b&&(a.fill=v(a.fill).brighten(d.brightness).get());return a},drawPoints:function(){var a=
this,b=a.chart,e=b.renderer,c=b.styledMode,d=a.options,f=c?{}:d.shadow,g=d.borderRadius,k=b.pointCount<d.animationLimit,l=d.allowTraversingTree;a.points.forEach(function(b){var h=b.node.levelDynamic,r={},m={},p={},n="level-group-"+h,q=!!b.graphic,t=k&&q,u=b.shapeArgs;b.shouldDraw()&&(g&&(m.r=g),x(!0,t?r:m,q?u:{},c?{}:a.pointAttribs(b,b.selected&&"select")),a.colorAttribs&&c&&w(p,a.colorAttribs(b)),a[n]||(a[n]=e.g(n).attr({zIndex:1E3-h}).add(a.group),a[n].survive=!0));b.draw({animatableAttribs:r,attribs:m,
css:p,group:a[n],renderer:e,shadow:f,shapeArgs:u,shapeType:"rect"});l&&b.graphic&&(b.drillId=d.interactByLeaf?a.drillToByLeaf(b):a.drillToByGroup(b))})},onClickDrillToNode:function(a){var b=(a=a.point)&&a.drillId;q(b)&&(a.setState(""),this.setRootNode(b,!0,{trigger:"click"}))},drillToByGroup:function(a){var b=!1;1!==a.node.level-this.nodeMap[this.rootNode].level||a.node.isLeaf||(b=a.id);return b},drillToByLeaf:function(a){var b=!1;if(a.node.parent!==this.rootNode&&a.node.isLeaf)for(a=a.node;!b;)a=
this.nodeMap[a.parent],a.parent===this.rootNode&&(b=a.id);return b},drillUp:function(){var a=this.nodeMap[this.rootNode];a&&q(a.parent)&&this.setRootNode(a.parent,!0,{trigger:"traverseUpButton"})},drillToNode:function(a,b){F("WARNING: treemap.drillToNode has been renamed to treemap.setRootNode, and will be removed in the next major version.");this.setRootNode(a,b)},setRootNode:function(a,b,c){a=w({newRootId:a,previousRootId:this.rootNode,redraw:t(b,!0),series:this},c);J(this,"setRootNode",a,function(a){var b=
a.series;b.idPreviousRoot=a.previousRootId;b.rootNode=a.newRootId;b.isDirty=!0;a.redraw&&b.chart.redraw()})},renderTraverseUpButton:function(a){var b=this,c=b.options.traverseUpButton,d=t(c.text,b.nodeMap[a].name,"< Back");if(""===a)b.drillUpButton&&(b.drillUpButton=b.drillUpButton.destroy());else if(this.drillUpButton)this.drillUpButton.placed=!1,this.drillUpButton.attr({text:d}).align();else{var f=(a=c.theme)&&a.states;this.drillUpButton=this.chart.renderer.button(d,null,null,function(){b.drillUp()},
a,f&&f.hover,f&&f.select).addClass("highcharts-drillup-button").attr({align:c.position.align,zIndex:7}).add().align(c.position,!1,c.relativeTo||"plotBox")}},buildKDTree:k,drawLegendSymbol:z.drawRectangle,getExtremes:function(){C.prototype.getExtremes.call(this,this.colorValueData);this.valueMin=this.dataMin;this.valueMax=this.dataMax;C.prototype.getExtremes.call(this)},getExtremesFromAll:!0,setState:function(a){this.options.inactiveOtherPoints=!0;C.prototype.setState.call(this,a,!1);this.options.inactiveOtherPoints=
!1},utils:{recursive:D}},{draw:y,setVisible:G.pie.prototype.pointClass.prototype.setVisible,getClassName:function(){var a=m.prototype.getClassName.call(this),b=this.series,c=b.options;this.node.level<=b.nodeMap[b.rootNode].level?a+=" highcharts-above-level":this.node.isLeaf||t(c.interactByLeaf,!c.allowTraversingTree)?this.node.isLeaf||(a+=" highcharts-internal-node"):a+=" highcharts-internal-node-interactive";return a},isValid:function(){return this.id||B(this.value)},setState:function(a){m.prototype.setState.call(this,
a);this.graphic&&this.graphic.attr({zIndex:"hover"===a?1:0})},shouldDraw:function(){return B(this.plotY)&&null!==this.y}});f(c.Series,"afterBindAxes",function(){var a=this.xAxis,b=this.yAxis;if(a&&b)if(this.is("treemap")){var c={endOnTick:!1,gridLineWidth:0,lineWidth:0,min:0,dataMin:0,minPadding:0,max:100,dataMax:100,maxPadding:0,startOnTick:!1,title:null,tickPositions:[]};w(b.options,c);w(a.options,c);H=!0}else H&&(b.setOptions(b.userOptions),a.setOptions(a.userOptions),H=!1)});""});p(c,"masters/modules/treemap.src.js",
[],function(){})});
//# sourceMappingURL=treemap.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 X-range series

 (c) 2010-2019 Torstein Honsi, Lars A. V. Cabrera

 License: www.highcharts.com/license
*/
(function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/xrange",["highcharts"],function(h){b(h);b.Highcharts=h;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function h(b,n,h,f){b.hasOwnProperty(n)||(b[n]=f.apply(null,h))}b=b?b._modules:{};h(b,"modules/xrange.src.js",[b["parts/Globals.js"],b["parts/Color.js"],b["parts/Point.js"],b["parts/Utilities.js"]],function(b,h,w,f){var n=
h.parse;h=f.addEvent;var p=f.clamp,z=f.correctFloat,A=f.defined,x=f.find,r=f.isNumber,u=f.isObject,t=f.merge,v=f.pick;f=f.seriesType;var y=b.seriesTypes.column,B=b.Axis,C=b.Series;f("xrange","column",{colorByPoint:!0,dataLabels:{formatter:function(){var a=this.point.partialFill;u(a)&&(a=a.amount);if(r(a)&&0<a)return z(100*a)+"%"},inside:!0,verticalAlign:"middle"},tooltip:{headerFormat:'<span style="font-size: 10px">{point.x} - {point.x2}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.yCategory}</b><br/>'},
borderRadius:3,pointRange:0},{type:"xrange",parallelArrays:["x","x2","y"],requireSorting:!1,animate:b.seriesTypes.line.prototype.animate,cropShoulder:1,getExtremesFromAll:!0,autoIncrement:b.noop,buildKDTree:b.noop,getColumnMetrics:function(){function a(){g.series.forEach(function(a){var c=a.xAxis;a.xAxis=a.yAxis;a.yAxis=c})}var g=this.chart;a();var d=y.prototype.getColumnMetrics.call(this);a();return d},cropData:function(a,g,d,b){g=C.prototype.cropData.call(this,this.x2Data,g,d,b);g.xData=a.slice(g.start,
g.end);return g},findPointIndex:function(a){var g=this.cropped,d=this.cropStart,b=this.points,c=a.id;if(c)var e=(e=x(b,function(a){return a.id===c}))?e.index:void 0;"undefined"===typeof e&&(e=(e=x(b,function(c){return c.x===a.x&&c.x2===a.x2&&!c.touched}))?e.index:void 0);g&&r(e)&&r(d)&&e>=d&&(e-=d);return e},translatePoint:function(a){var g=this.xAxis,d=this.yAxis,b=this.columnMetrics,c=this.options,e=c.minPointLength||0,f=a.plotX,h=v(a.x2,a.x+(a.len||0)),k=g.translate(h,0,0,0,1);h=Math.abs(k-f);
var m=this.chart.inverted,n=v(c.borderWidth,1)%2/2,l=b.offset,q=Math.round(b.width);e&&(e-=h,0>e&&(e=0),f-=e/2,k+=e/2);f=Math.max(f,-10);k=p(k,-10,g.len+10);A(a.options.pointWidth)&&(l-=(Math.ceil(a.options.pointWidth)-q)/2,q=Math.ceil(a.options.pointWidth));c.pointPlacement&&r(a.plotY)&&d.categories&&(a.plotY=d.translate(a.y,0,1,0,1,c.pointPlacement));a.shapeArgs={x:Math.floor(Math.min(f,k))+n,y:Math.floor(a.plotY+l)+n,width:Math.round(Math.abs(k-f)),height:q,r:this.options.borderRadius};c=a.shapeArgs.x;
e=c+a.shapeArgs.width;0>c||e>g.len?(c=p(c,0,g.len),e=p(e,0,g.len),k=e-c,a.dlBox=t(a.shapeArgs,{x:c,width:e-c,centerX:k?k/2:null})):a.dlBox=null;c=a.tooltipPos;e=m?1:0;k=m?0:1;b=this.columnMetrics?this.columnMetrics.offset:-b.width/2;c[e]=p(c[e]+h/2*(g.reversed?-1:1)*(m?-1:1),0,g.len-1);c[k]=p(c[k]+(m?-1:1)*b,0,d.len-1);if(b=a.partialFill)u(b)&&(b=b.amount),r(b)||(b=0),d=a.shapeArgs,a.partShapeArgs={x:d.x,y:d.y,width:d.width,height:d.height,r:this.options.borderRadius},f=Math.max(Math.round(h*b+a.plotX-
f),0),a.clipRectArgs={x:g.reversed?d.x+h-f:d.x,y:d.y,width:f,height:d.height}},translate:function(){y.prototype.translate.apply(this,arguments);this.points.forEach(function(a){this.translatePoint(a)},this)},drawPoint:function(a,b){var d=this.options,g=this.chart.renderer,c=a.graphic,e=a.shapeType,f=a.shapeArgs,h=a.partShapeArgs,k=a.clipRectArgs,m=a.partialFill,p=d.stacking&&!d.borderRadius,l=a.state,q=d.states[l||"normal"]||{},r="undefined"===typeof l?"attr":b;l=this.pointAttribs(a,l);q=v(this.chart.options.chart.animation,
q.animation);if(a.isNull||!1===a.visible)c&&(a.graphic=c.destroy());else{if(c)c.rect[b](f);else a.graphic=c=g.g("point").addClass(a.getClassName()).add(a.group||this.group),c.rect=g[e](t(f)).addClass(a.getClassName()).addClass("highcharts-partfill-original").add(c);h&&(c.partRect?(c.partRect[b](t(h)),c.partialClipRect[b](t(k))):(c.partialClipRect=g.clipRect(k.x,k.y,k.width,k.height),c.partRect=g[e](h).addClass("highcharts-partfill-overlay").add(c).clip(c.partialClipRect)));this.chart.styledMode||
(c.rect[b](l,q).shadow(d.shadow,null,p),h&&(u(m)||(m={}),u(d.partialFill)&&(m=t(m,d.partialFill)),a=m.fill||n(l.fill).brighten(-.3).get()||n(a.color||this.color).brighten(-.3).get(),l.fill=a,c.partRect[r](l,q).shadow(d.shadow,null,p)))}},drawPoints:function(){var a=this,b=a.getAnimationVerb();a.points.forEach(function(g){a.drawPoint(g,b)})},getAnimationVerb:function(){return this.chart.pointCount<(this.options.animationLimit||250)?"animate":"attr"}},{resolveColor:function(){var a=this.series;if(a.options.colorByPoint&&
!this.options.color){var b=a.options.colors||a.chart.options.colors;var d=this.y%(b?b.length:a.chart.options.chart.colorCount);b=b&&b[d];a.chart.styledMode||(this.color=b);this.options.colorIndex||(this.colorIndex=d)}else this.color||(this.color=a.color)},init:function(){w.prototype.init.apply(this,arguments);this.y||(this.y=0);return this},setState:function(){w.prototype.setState.apply(this,arguments);this.series.drawPoint(this,this.series.getAnimationVerb())},getLabelConfig:function(){var a=w.prototype.getLabelConfig.call(this),
b=this.series.yAxis.categories;a.x2=this.x2;a.yCategory=this.yCategory=b&&b[this.y];return a},tooltipDateKeys:["x","x2"],isValid:function(){return"number"===typeof this.x&&"number"===typeof this.x2}});h(B,"afterGetSeriesExtremes",function(){var a=this.series,b;if(this.isXAxis){var d=v(this.dataMax,-Number.MAX_VALUE);a.forEach(function(a){a.x2Data&&a.x2Data.forEach(function(a){a>d&&(d=a,b=!0)})});b&&(this.dataMax=d)}});""});h(b,"masters/modules/xrange.src.js",[],function(){})});
//# sourceMappingURL=xrange.js.map
/*
 Highmaps JS v8.0.4 (2020-03-10)

 Highmaps as a plugin for Highcharts or Highstock.

 (c) 2011-2019 Torstein Honsi

 License: www.highcharts.com/license
*/
(function(d){"object"===typeof module&&module.exports?(d["default"]=d,module.exports=d):"function"===typeof define&&define.amd?define("highcharts/modules/map",["highcharts"],function(w){d(w);d.Highcharts=w;return d}):d("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(d){function w(a,n,d,g){a.hasOwnProperty(n)||(a[n]=g.apply(null,d))}d=d?d._modules:{};w(d,"parts-map/MapAxis.js",[d["parts/Globals.js"],d["parts/Utilities.js"]],function(a,n){var d=n.addEvent,g=n.pick;a=a.Axis;d(a,"getSeriesExtremes",
function(){var k=[];this.isXAxis&&(this.series.forEach(function(f,a){f.useMapGeometry&&(k[a]=f.xData,f.xData=[])}),this.seriesXData=k)});d(a,"afterGetSeriesExtremes",function(){var k=this.seriesXData,f;if(this.isXAxis){var a=g(this.dataMin,Number.MAX_VALUE);var d=g(this.dataMax,-Number.MAX_VALUE);this.series.forEach(function(n,r){n.useMapGeometry&&(a=Math.min(a,g(n.minX,a)),d=Math.max(d,g(n.maxX,d)),n.xData=k[r],f=!0)});f&&(this.dataMin=a,this.dataMax=d);delete this.seriesXData}});d(a,"afterSetAxisTranslation",
function(){var k=this.chart;var f=k.plotWidth/k.plotHeight;k=k.xAxis[0];var a;"yAxis"===this.coll&&"undefined"!==typeof k.transA&&this.series.forEach(function(f){f.preserveAspectRatio&&(a=!0)});if(a&&(this.transA=k.transA=Math.min(this.transA,k.transA),f/=(k.max-k.min)/(this.max-this.min),f=1>f?this:k,k=(f.max-f.min)*f.transA,f.pixelPadding=f.len-k,f.minPixelPadding=f.pixelPadding/2,k=f.fixTo)){k=k[1]-f.toValue(k[0],!0);k*=f.transA;if(Math.abs(k)>f.minPixelPadding||f.min===f.dataMin&&f.max===f.dataMax)k=
0;f.minPixelPadding-=k}});d(a,"render",function(){this.fixTo=null})});w(d,"parts-map/ColorSeriesMixin.js",[d["parts/Globals.js"]],function(a){a.colorPointMixin={setVisible:function(a){var d=this,g=a?"show":"hide";d.visible=d.options.visible=!!a;["graphic","dataLabel"].forEach(function(a){if(d[a])d[a][g]()})}};a.colorSeriesMixin={optionalAxis:"colorAxis",colorAxis:0,translateColors:function(){var a=this,d=this.options.nullColor,g=this.colorAxis,k=this.colorKey;(this.data.length?this.data:this.points).forEach(function(f){var n=
f.getNestedProperty(k);if(n=f.options.color||(f.isNull?d:g&&"undefined"!==typeof n?g.toColor(n,f):f.color||a.color))f.color=n})}}});w(d,"parts-map/ColorAxis.js",[d["parts/Globals.js"],d["parts/Color.js"],d["parts/Point.js"],d["parts/Legend.js"],d["mixins/legend-symbol.js"],d["parts/Utilities.js"]],function(a,d,t,g,k,f){"";var n=d.parse;d=f.addEvent;var A=f.erase,u=f.extend,r=f.isNumber,c=f.merge,l=f.pick,m=f.splat,v=a.Axis;f=a.Chart;var z=a.Series,x=a.colorPointMixin,B=a.noop;u(z.prototype,a.colorSeriesMixin);
u(t.prototype,x);f.prototype.collectionsWithUpdate.push("colorAxis");f.prototype.collectionsWithInit.colorAxis=[f.prototype.addColorAxis];var h=a.ColorAxis=function(){this.init.apply(this,arguments)};u(h.prototype,v.prototype);u(h.prototype,{defaultColorAxisOptions:{lineWidth:0,minPadding:0,maxPadding:0,gridLineWidth:1,tickPixelInterval:72,startOnTick:!0,endOnTick:!0,offset:0,marker:{animation:{duration:50},width:.01,color:"#999999"},labels:{overflow:"justify",rotation:0},minColor:"#e6ebf5",maxColor:"#003399",
tickLength:5,showInLegend:!0},keepProps:["legendGroup","legendItemHeight","legendItemWidth","legendItem","legendSymbol"].concat(v.prototype.keepProps),init:function(b,e){this.coll="colorAxis";var p=this.buildOptions.call(b,this.defaultColorAxisOptions,e);v.prototype.init.call(this,b,p);e.dataClasses&&this.initDataClasses(e);this.initStops();this.horiz=!p.opposite;this.zoomEnabled=!1;this.defaultLegendLength=200},initDataClasses:function(b){var e=this.chart,p,y=0,q=e.options.chart.colorCount,h=this.options,
l=b.dataClasses.length;this.dataClasses=p=[];this.legendItems=[];b.dataClasses.forEach(function(b,C){b=c(b);p.push(b);if(e.styledMode||!b.color)"category"===h.dataClassColor?(e.styledMode||(C=e.options.colors,q=C.length,b.color=C[y]),b.colorIndex=y,y++,y===q&&(y=0)):b.color=n(h.minColor).tweenTo(n(h.maxColor),2>l?.5:C/(l-1))})},hasData:function(){return!(!this.tickPositions||!this.tickPositions.length)},setTickPositions:function(){if(!this.dataClasses)return v.prototype.setTickPositions.call(this)},
initStops:function(){this.stops=this.options.stops||[[0,this.options.minColor],[1,this.options.maxColor]];this.stops.forEach(function(b){b.color=n(b[1])})},buildOptions:function(b,e){var p=this.options.legend,y=e.layout?"vertical"!==e.layout:"vertical"!==p.layout;return c(b,{side:y?2:1,reversed:!y},e,{opposite:!y,showEmpty:!1,title:null,visible:p.enabled&&(e?!1!==e.visible:!0)})},setOptions:function(b){v.prototype.setOptions.call(this,b);this.options.crosshair=this.options.marker},setAxisSize:function(){var b=
this.legendSymbol,e=this.chart,p=e.options.legend||{},c,q;b?(this.left=p=b.attr("x"),this.top=c=b.attr("y"),this.width=q=b.attr("width"),this.height=b=b.attr("height"),this.right=e.chartWidth-p-q,this.bottom=e.chartHeight-c-b,this.len=this.horiz?q:b,this.pos=this.horiz?p:c):this.len=(this.horiz?p.symbolWidth:p.symbolHeight)||this.defaultLegendLength},normalizedValue:function(b){this.isLog&&(b=this.val2lin(b));return 1-(this.max-b)/(this.max-this.min||1)},toColor:function(b,e){var p=this.stops,c=this.dataClasses,
q;if(c)for(q=c.length;q--;){var h=c[q];var l=h.from;p=h.to;if(("undefined"===typeof l||b>=l)&&("undefined"===typeof p||b<=p)){var a=h.color;e&&(e.dataClass=q,e.colorIndex=h.colorIndex);break}}else{b=this.normalizedValue(b);for(q=p.length;q--&&!(b>p[q][0]););l=p[q]||p[q+1];p=p[q+1]||l;b=1-(p[0]-b)/(p[0]-l[0]||1);a=l.color.tweenTo(p.color,b)}return a},getOffset:function(){var b=this.legendGroup,e=this.chart.axisOffset[this.side];b&&(this.axisParent=b,v.prototype.getOffset.call(this),this.added||(this.added=
!0,this.labelLeft=0,this.labelRight=this.width),this.chart.axisOffset[this.side]=e)},setLegendColor:function(){var b=this.reversed;var e=b?1:0;b=b?0:1;e=this.horiz?[e,0,b,0]:[0,b,0,e];this.legendColor={linearGradient:{x1:e[0],y1:e[1],x2:e[2],y2:e[3]},stops:this.stops}},drawLegendSymbol:function(b,e){var p=b.padding,c=b.options,q=this.horiz,h=l(c.symbolWidth,q?this.defaultLegendLength:12),a=l(c.symbolHeight,q?12:this.defaultLegendLength),f=l(c.labelPadding,q?16:30);c=l(c.itemDistance,10);this.setLegendColor();
e.legendSymbol=this.chart.renderer.rect(0,b.baseline-11,h,a).attr({zIndex:1}).add(e.legendGroup);this.legendItemWidth=h+p+(q?c:f);this.legendItemHeight=a+p+(q?f:0)},setState:function(b){this.series.forEach(function(e){e.setState(b)})},visible:!0,setVisible:B,getSeriesExtremes:function(){var b=this.series,e=b.length,p;this.dataMin=Infinity;for(this.dataMax=-Infinity;e--;){var c=b[e];var q=c.colorKey=l(c.options.colorKey,c.colorKey,c.pointValKey,c.zoneAxis,"y");var h=c.pointArrayMap;var a=c[q+"Min"]&&
c[q+"Max"];if(c[q+"Data"])var f=c[q+"Data"];else if(h){f=[];h=h.indexOf(q);var m=c.yData;if(0<=h&&m)for(p=0;p<m.length;p++)f.push(l(m[p][h],m[p]))}else f=c.yData;a?(c.minColorValue=c[q+"Min"],c.maxColorValue=c[q+"Max"]):(z.prototype.getExtremes.call(c,f),c.minColorValue=c.dataMin,c.maxColorValue=c.dataMax);"undefined"!==typeof c.minColorValue&&(this.dataMin=Math.min(this.dataMin,c.minColorValue),this.dataMax=Math.max(this.dataMax,c.maxColorValue));a||z.prototype.getExtremes.call(c)}},drawCrosshair:function(b,
e){var c=e&&e.plotX,h=e&&e.plotY,q=this.pos,l=this.len;if(e){var a=this.toPixels(e.getNestedProperty(e.series.colorKey));a<q?a=q-2:a>q+l&&(a=q+l+2);e.plotX=a;e.plotY=this.len-a;v.prototype.drawCrosshair.call(this,b,e);e.plotX=c;e.plotY=h;this.cross&&!this.cross.addedToColorAxis&&this.legendGroup&&(this.cross.addClass("highcharts-coloraxis-marker").add(this.legendGroup),this.cross.addedToColorAxis=!0,this.chart.styledMode||this.cross.attr({fill:this.crosshair.color}))}},getPlotLinePath:function(b){var e=
b.translatedValue;return r(e)?this.horiz?["M",e-4,this.top-6,"L",e+4,this.top-6,e,this.top,"Z"]:["M",this.left,e,"L",this.left-6,e+6,this.left-6,e-6,"Z"]:v.prototype.getPlotLinePath.apply(this,arguments)},update:function(b,e){var p=this.chart,h=p.legend,q=this.buildOptions.call(p,{},b);this.series.forEach(function(b){b.isDirtyData=!0});(b.dataClasses&&h.allItems||this.dataClasses)&&this.destroyItems();p.options[this.coll]=c(this.userOptions,q);v.prototype.update.call(this,q,e);this.legendItem&&(this.setLegendColor(),
h.colorizeItem(this,!0))},destroyItems:function(){var b=this.chart;this.legendItem?b.legend.destroyItem(this):this.legendItems&&this.legendItems.forEach(function(e){b.legend.destroyItem(e)});b.isDirtyLegend=!0},remove:function(b){this.destroyItems();v.prototype.remove.call(this,b)},getDataClassLegendSymbols:function(){var b=this,e=this.chart,c=this.legendItems,h=e.options.legend,q=h.valueDecimals,l=h.valueSuffix||"",a;c.length||this.dataClasses.forEach(function(p,h){var f=!0,m=p.from,y=p.to,C=e.numberFormatter;
a="";"undefined"===typeof m?a="< ":"undefined"===typeof y&&(a="> ");"undefined"!==typeof m&&(a+=C(m,q)+l);"undefined"!==typeof m&&"undefined"!==typeof y&&(a+=" - ");"undefined"!==typeof y&&(a+=C(y,q)+l);c.push(u({chart:e,name:a,options:{},drawLegendSymbol:k.drawRectangle,visible:!0,setState:B,isDataClass:!0,setVisible:function(){f=this.visible=!f;b.series.forEach(function(b){b.points.forEach(function(b){b.dataClass===h&&b.setVisible(f)})});e.legend.colorizeItem(this,f)}},p))});return c},beforePadding:!1,
name:""});["fill","stroke"].forEach(function(b){a.Fx.prototype[b+"Setter"]=function(){this.elem.attr(b,n(this.start).tweenTo(n(this.end),this.pos),null,!0)}});d(f,"afterGetAxes",function(){var b=this,e=b.options;this.colorAxis=[];e.colorAxis&&(e.colorAxis=m(e.colorAxis),e.colorAxis.forEach(function(e,c){e.index=c;new h(b,e)}))});d(z,"bindAxes",function(){var b=this.axisTypes;b?-1===b.indexOf("colorAxis")&&b.push("colorAxis"):this.axisTypes=["colorAxis"]});d(g,"afterGetAllItems",function(b){var e=
[],c,h;(this.chart.colorAxis||[]).forEach(function(p){(c=p.options)&&c.showInLegend&&(c.dataClasses&&c.visible?e=e.concat(p.getDataClassLegendSymbols()):c.visible&&e.push(p),p.series.forEach(function(e){if(!e.options.showInLegend||c.dataClasses)"point"===e.options.legendType?e.points.forEach(function(e){A(b.allItems,e)}):A(b.allItems,e)}))});for(h=e.length;h--;)b.allItems.unshift(e[h])});d(g,"afterColorizeItem",function(b){b.visible&&b.item.legendColor&&b.item.legendSymbol.attr({fill:b.item.legendColor})});
d(g,"afterUpdate",function(){var b=this.chart.colorAxis;b&&b.forEach(function(b,c,h){b.update({},h)})});d(z,"afterTranslate",function(){(this.chart.colorAxis&&this.chart.colorAxis.length||this.colorAttribs)&&this.translateColors()})});w(d,"parts-map/ColorMapSeriesMixin.js",[d["parts/Globals.js"],d["parts/Point.js"],d["parts/Utilities.js"]],function(a,d,t){var g=t.defined;t=a.noop;var k=a.seriesTypes;a.colorMapPointMixin={dataLabelOnNull:!0,isValid:function(){return null!==this.value&&Infinity!==this.value&&
-Infinity!==this.value},setState:function(a){d.prototype.setState.call(this,a);this.graphic&&this.graphic.attr({zIndex:"hover"===a?1:0})}};a.colorMapSeriesMixin={pointArrayMap:["value"],axisTypes:["xAxis","yAxis","colorAxis"],trackerGroups:["group","markerGroup","dataLabelsGroup"],getSymbol:t,parallelArrays:["x","y","value"],colorKey:"value",pointAttribs:k.column.prototype.pointAttribs,colorAttribs:function(a){var f={};g(a.color)&&(f[this.colorProp||"fill"]=a.color);return f}}});w(d,"parts-map/MapNavigation.js",
[d["parts/Globals.js"],d["parts/Utilities.js"]],function(a,d){function n(c){c&&(c.preventDefault&&c.preventDefault(),c.stopPropagation&&c.stopPropagation(),c.cancelBubble=!0)}function g(c){this.init(c)}var k=d.addEvent,f=d.extend,D=d.merge,A=d.objectEach,u=d.pick;d=a.Chart;var r=a.doc;g.prototype.init=function(c){this.chart=c;c.mapNavButtons=[]};g.prototype.update=function(c){var a=this.chart,m=a.options.mapNavigation,d,g,x,B,h,b=function(b){this.handler.call(a,b);n(b)},e=a.mapNavButtons;c&&(m=a.options.mapNavigation=
D(a.options.mapNavigation,c));for(;e.length;)e.pop().destroy();u(m.enableButtons,m.enabled)&&!a.renderer.forExport&&A(m.buttons,function(c,l){d=D(m.buttonOptions,c);a.styledMode||(g=d.theme,g.style=D(d.theme.style,d.style),B=(x=g.states)&&x.hover,h=x&&x.select);c=a.renderer.button(d.text,0,0,b,g,B,h,0,"zoomIn"===l?"topbutton":"bottombutton").addClass("highcharts-map-navigation highcharts-"+{zoomIn:"zoom-in",zoomOut:"zoom-out"}[l]).attr({width:d.width,height:d.height,title:a.options.lang[l],padding:d.padding,
zIndex:5}).add();c.handler=d.onclick;k(c.element,"dblclick",n);e.push(c);var p=d,y=k(a,"load",function(){c.align(f(p,{width:c.width,height:2*c.height}),null,p.alignTo);y()})});this.updateEvents(m)};g.prototype.updateEvents=function(c){var a=this.chart;u(c.enableDoubleClickZoom,c.enabled)||c.enableDoubleClickZoomTo?this.unbindDblClick=this.unbindDblClick||k(a.container,"dblclick",function(c){a.pointer.onContainerDblClick(c)}):this.unbindDblClick&&(this.unbindDblClick=this.unbindDblClick());u(c.enableMouseWheelZoom,
c.enabled)?this.unbindMouseWheel=this.unbindMouseWheel||k(a.container,"undefined"===typeof r.onmousewheel?"DOMMouseScroll":"mousewheel",function(c){a.pointer.onContainerMouseWheel(c);n(c);return!1}):this.unbindMouseWheel&&(this.unbindMouseWheel=this.unbindMouseWheel())};f(d.prototype,{fitToBox:function(c,a){[["x","width"],["y","height"]].forEach(function(d){var f=d[0];d=d[1];c[f]+c[d]>a[f]+a[d]&&(c[d]>a[d]?(c[d]=a[d],c[f]=a[f]):c[f]=a[f]+a[d]-c[d]);c[d]>a[d]&&(c[d]=a[d]);c[f]<a[f]&&(c[f]=a[f])});
return c},mapZoom:function(c,a,d,f,k){var l=this.xAxis[0],m=l.max-l.min,h=u(a,l.min+m/2),b=m*c;m=this.yAxis[0];var e=m.max-m.min,p=u(d,m.min+e/2);e*=c;h=this.fitToBox({x:h-b*(f?(f-l.pos)/l.len:.5),y:p-e*(k?(k-m.pos)/m.len:.5),width:b,height:e},{x:l.dataMin,y:m.dataMin,width:l.dataMax-l.dataMin,height:m.dataMax-m.dataMin});b=h.x<=l.dataMin&&h.width>=l.dataMax-l.dataMin&&h.y<=m.dataMin&&h.height>=m.dataMax-m.dataMin;f&&(l.fixTo=[f-l.pos,a]);k&&(m.fixTo=[k-m.pos,d]);"undefined"===typeof c||b?(l.setExtremes(void 0,
void 0,!1),m.setExtremes(void 0,void 0,!1)):(l.setExtremes(h.x,h.x+h.width,!1),m.setExtremes(h.y,h.y+h.height,!1));this.redraw()}});k(d,"beforeRender",function(){this.mapNavigation=new g(this);this.mapNavigation.update()});a.MapNavigation=g});w(d,"parts-map/MapPointer.js",[d["parts/Globals.js"],d["parts/Utilities.js"]],function(a,d){var n=d.extend,g=d.pick;d=d.wrap;a=a.Pointer;n(a.prototype,{onContainerDblClick:function(a){var d=this.chart;a=this.normalize(a);d.options.mapNavigation.enableDoubleClickZoomTo?
d.pointer.inClass(a.target,"highcharts-tracker")&&d.hoverPoint&&d.hoverPoint.zoomTo():d.isInsidePlot(a.chartX-d.plotLeft,a.chartY-d.plotTop)&&d.mapZoom(.5,d.xAxis[0].toValue(a.chartX),d.yAxis[0].toValue(a.chartY),a.chartX,a.chartY)},onContainerMouseWheel:function(a){var d=this.chart;a=this.normalize(a);var g=a.detail||-(a.wheelDelta/120);d.isInsidePlot(a.chartX-d.plotLeft,a.chartY-d.plotTop)&&d.mapZoom(Math.pow(d.options.mapNavigation.mouseWheelSensitivity,g),d.xAxis[0].toValue(a.chartX),d.yAxis[0].toValue(a.chartY),
a.chartX,a.chartY)}});d(a.prototype,"zoomOption",function(a){var d=this.chart.options.mapNavigation;g(d.enableTouchZoom,d.enabled)&&(this.chart.options.chart.pinchType="xy");a.apply(this,[].slice.call(arguments,1))});d(a.prototype,"pinchTranslate",function(a,d,g,n,t,r,c){a.call(this,d,g,n,t,r,c);"map"===this.chart.options.chart.type&&this.hasZoom&&(a=n.scaleX>n.scaleY,this.pinchTranslateDirection(!a,d,g,n,t,r,c,a?n.scaleX:n.scaleY))})});w(d,"parts-map/MapSeries.js",[d["parts/Globals.js"],d["mixins/legend-symbol.js"],
d["parts/Point.js"],d["parts/Utilities.js"]],function(a,d,t,g){var k=g.extend,f=g.fireEvent,n=g.getNestedProperty,A=g.isArray,u=g.isNumber,r=g.merge,c=g.objectEach,l=g.pick,m=g.seriesType,v=g.splat,z=a.colorMapPointMixin,x=a.noop,B=a.Series,h=a.seriesTypes;m("map","scatter",{animation:!1,dataLabels:{crop:!1,formatter:function(){return this.point.value},inside:!0,overflow:!1,padding:0,verticalAlign:"middle"},marker:null,nullColor:"#f7f7f7",stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:"{point.name}: {point.value}<br/>"},
turboThreshold:0,allAreas:!0,borderColor:"#cccccc",borderWidth:1,joinBy:"hc-key",states:{hover:{halo:null,brightness:.2},normal:{animation:!0},select:{color:"#cccccc"},inactive:{opacity:1}}},r(a.colorMapSeriesMixin,{type:"map",getExtremesFromAll:!0,useMapGeometry:!0,forceDL:!0,searchPoint:x,directTouch:!0,preserveAspectRatio:!0,pointArrayMap:["value"],setOptions:function(b){b=B.prototype.setOptions.call(this,b);var e=b.joinBy;null===e&&(e="_i");e=this.joinBy=v(e);e[1]||(e[1]=e[0]);return b},getBox:function(b){var e=
Number.MAX_VALUE,c=-e,d=e,h=-e,f=e,m=e,g=this.xAxis,k=this.yAxis,r;(b||[]).forEach(function(b){if(b.path){"string"===typeof b.path&&(b.path=a.splitPath(b.path));var p=b.path||[],q=p.length,g=!1,y=-e,C=e,k=-e,n=e,v=b.properties;if(!b._foundBox){for(;q--;)u(p[q])&&(g?(y=Math.max(y,p[q]),C=Math.min(C,p[q])):(k=Math.max(k,p[q]),n=Math.min(n,p[q])),g=!g);b._midX=C+(y-C)*l(b.middleX,v&&v["hc-middle-x"],.5);b._midY=n+(k-n)*l(b.middleY,v&&v["hc-middle-y"],.5);b._maxX=y;b._minX=C;b._maxY=k;b._minY=n;b.labelrank=
l(b.labelrank,(y-C)*(k-n));b._foundBox=!0}c=Math.max(c,b._maxX);d=Math.min(d,b._minX);h=Math.max(h,b._maxY);f=Math.min(f,b._minY);m=Math.min(b._maxX-b._minX,b._maxY-b._minY,m);r=!0}});r&&(this.minY=Math.min(f,l(this.minY,e)),this.maxY=Math.max(h,l(this.maxY,-e)),this.minX=Math.min(d,l(this.minX,e)),this.maxX=Math.max(c,l(this.maxX,-e)),g&&"undefined"===typeof g.options.minRange&&(g.minRange=Math.min(5*m,(this.maxX-this.minX)/5,g.minRange||e)),k&&"undefined"===typeof k.options.minRange&&(k.minRange=
Math.min(5*m,(this.maxY-this.minY)/5,k.minRange||e)))},hasData:function(){return!!this.processedXData.length},getExtremes:function(){B.prototype.getExtremes.call(this,this.valueData);this.chart.hasRendered&&this.isDirtyData&&this.getBox(this.options.data);this.valueMin=this.dataMin;this.valueMax=this.dataMax;this.dataMin=this.minY;this.dataMax=this.maxY},translatePath:function(b){var e=!1,c=this.xAxis,a=this.yAxis,d=c.min,h=c.transA;c=c.minPixelPadding;var l=a.min,f=a.transA;a=a.minPixelPadding;var m,
g=[];if(b)for(m=b.length;m--;)u(b[m])?(g[m]=e?(b[m]-d)*h+c:(b[m]-l)*f+a,e=!e):g[m]=b[m];return g},setData:function(b,e,p,d){var h=this.options,l=this.chart.options.chart,m=l&&l.map,f=h.mapData,g=this.joinBy,y=h.keys||this.pointArrayMap,k=[],v={},x=this.chart.mapTransforms;!f&&m&&(f="string"===typeof m?a.maps[m]:m);b&&b.forEach(function(e,c){var a=0;if(u(e))b[c]={value:e};else if(A(e)){b[c]={};!h.keys&&e.length>y.length&&"string"===typeof e[0]&&(b[c]["hc-key"]=e[0],++a);for(var p=0;p<y.length;++p,
++a)y[p]&&"undefined"!==typeof e[a]&&(0<y[p].indexOf(".")?t.prototype.setNestedProperty(b[c],e[a],y[p]):b[c][y[p]]=e[a])}g&&"_i"===g[0]&&(b[c]._i=c)});this.getBox(b);(this.chart.mapTransforms=x=l&&l.mapTransforms||f&&f["hc-transform"]||x)&&c(x,function(b){b.rotation&&(b.cosAngle=Math.cos(b.rotation),b.sinAngle=Math.sin(b.rotation))});if(f){"FeatureCollection"===f.type&&(this.mapTitle=f.title,f=a.geojson(f,this.type,this));this.mapData=f;this.mapMap={};for(x=0;x<f.length;x++)l=f[x],m=l.properties,
l._i=x,g[0]&&m&&m[g[0]]&&(l[g[0]]=m[g[0]]),v[l[g[0]]]=l;this.mapMap=v;if(b&&g[1]){var z=g[1];b.forEach(function(b){b=n(z,b);v[b]&&k.push(v[b])})}if(h.allAreas){this.getBox(f);b=b||[];if(g[1]){var w=g[1];b.forEach(function(b){k.push(n(w,b))})}k="|"+k.map(function(b){return b&&b[g[0]]}).join("|")+"|";f.forEach(function(e){g[0]&&-1!==k.indexOf("|"+e[g[0]]+"|")||(b.push(r(e,{value:null})),d=!1)})}else this.getBox(k)}B.prototype.setData.call(this,b,e,p,d)},drawGraph:x,drawDataLabels:x,doFullTranslate:function(){return this.isDirtyData||
this.chart.isResizing||this.chart.renderer.isVML||!this.baseTrans},translate:function(){var b=this,e=b.xAxis,c=b.yAxis,a=b.doFullTranslate();b.generatePoints();b.data.forEach(function(p){u(p._midX)&&u(p._midY)&&(p.plotX=e.toPixels(p._midX,!0),p.plotY=c.toPixels(p._midY,!0));a&&(p.shapeType="path",p.shapeArgs={d:b.translatePath(p.path)})});f(b,"afterTranslate")},pointAttribs:function(b,e){e=b.series.chart.styledMode?this.colorAttribs(b):h.column.prototype.pointAttribs.call(this,b,e);e["stroke-width"]=
l(b.options[this.pointAttrToOptions&&this.pointAttrToOptions["stroke-width"]||"borderWidth"],"inherit");return e},drawPoints:function(){var b=this,e=b.xAxis,c=b.yAxis,a=b.group,d=b.chart,f=d.renderer,m=this.baseTrans;b.transformGroup||(b.transformGroup=f.g().attr({scaleX:1,scaleY:1}).add(a),b.transformGroup.survive=!0);if(b.doFullTranslate())d.hasRendered&&!d.styledMode&&b.points.forEach(function(e){e.shapeArgs&&(e.shapeArgs.fill=b.pointAttribs(e,e.state).fill)}),b.group=b.transformGroup,h.column.prototype.drawPoints.apply(b),
b.group=a,b.points.forEach(function(e){if(e.graphic){var c="";e.name&&(c+="highcharts-name-"+e.name.replace(/ /g,"-").toLowerCase());e.properties&&e.properties["hc-key"]&&(c+=" highcharts-key-"+e.properties["hc-key"].toLowerCase());c&&e.graphic.addClass(c);d.styledMode&&e.graphic.css(b.pointAttribs(e,e.selected&&"select"||void 0))}}),this.baseTrans={originX:e.min-e.minPixelPadding/e.transA,originY:c.min-c.minPixelPadding/c.transA+(c.reversed?0:c.len/c.transA),transAX:e.transA,transAY:c.transA},this.transformGroup.animate({translateX:0,
translateY:0,scaleX:1,scaleY:1});else{var g=e.transA/m.transAX;var k=c.transA/m.transAY;var n=e.toPixels(m.originX,!0);var v=c.toPixels(m.originY,!0);.99<g&&1.01>g&&.99<k&&1.01>k&&(k=g=1,n=Math.round(n),v=Math.round(v));var r=this.transformGroup;if(d.renderer.globalAnimation){var x=r.attr("translateX");var B=r.attr("translateY");var z=r.attr("scaleX");var t=r.attr("scaleY");r.attr({animator:0}).animate({animator:1},{step:function(b,e){r.attr({translateX:x+(n-x)*e.pos,translateY:B+(v-B)*e.pos,scaleX:z+
(g-z)*e.pos,scaleY:t+(k-t)*e.pos})}})}else r.attr({translateX:n,translateY:v,scaleX:g,scaleY:k})}d.styledMode||a.element.setAttribute("stroke-width",l(b.options[b.pointAttrToOptions&&b.pointAttrToOptions["stroke-width"]||"borderWidth"],1)/(g||1));this.drawMapDataLabels()},drawMapDataLabels:function(){B.prototype.drawDataLabels.call(this);this.dataLabelsGroup&&this.dataLabelsGroup.clip(this.chart.clipRect)},render:function(){var b=this,e=B.prototype.render;b.chart.renderer.isVML&&3E3<b.data.length?
setTimeout(function(){e.call(b)}):e.call(b)},animate:function(b){var e=this.options.animation,c=this.group,a=this.xAxis,d=this.yAxis,h=a.pos,l=d.pos;this.chart.renderer.isSVG&&(!0===e&&(e={duration:1E3}),b?c.attr({translateX:h+a.len/2,translateY:l+d.len/2,scaleX:.001,scaleY:.001}):c.animate({translateX:h,translateY:l,scaleX:1,scaleY:1},e))},animateDrilldown:function(b){var e=this.chart.plotBox,c=this.chart.drilldownLevels[this.chart.drilldownLevels.length-1],a=c.bBox,d=this.chart.options.drilldown.animation;
b||(b=Math.min(a.width/e.width,a.height/e.height),c.shapeArgs={scaleX:b,scaleY:b,translateX:a.x,translateY:a.y},this.points.forEach(function(b){b.graphic&&b.graphic.attr(c.shapeArgs).animate({scaleX:1,scaleY:1,translateX:0,translateY:0},d)}))},drawLegendSymbol:d.drawRectangle,animateDrillupFrom:function(b){h.column.prototype.animateDrillupFrom.call(this,b)},animateDrillupTo:function(b){h.column.prototype.animateDrillupTo.call(this,b)}}),k({applyOptions:function(b,e){var c=this.series;b=t.prototype.applyOptions.call(this,
b,e);e=c.joinBy;c.mapData&&c.mapMap&&(e=t.prototype.getNestedProperty.call(b,e[1]),(e="undefined"!==typeof e&&c.mapMap[e])?(c.xyFromShape&&(b.x=e._midX,b.y=e._midY),k(b,e)):b.value=b.value||null);return b},onMouseOver:function(b){g.clearTimeout(this.colorInterval);if(null!==this.value||this.series.options.nullInteraction)t.prototype.onMouseOver.call(this,b);else this.series.onMouseOut(b)},zoomTo:function(){var b=this.series;b.xAxis.setExtremes(this._minX,this._maxX,!1);b.yAxis.setExtremes(this._minY,
this._maxY,!1);b.chart.redraw()}},z));""});w(d,"parts-map/MapLineSeries.js",[d["parts/Globals.js"],d["parts/Utilities.js"]],function(a,d){d=d.seriesType;var n=a.seriesTypes;d("mapline","map",{lineWidth:1,fillColor:"none"},{type:"mapline",colorProp:"stroke",pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},pointAttribs:function(a,d){a=n.map.prototype.pointAttribs.call(this,a,d);a.fill=this.options.fillColor;return a},drawLegendSymbol:n.line.prototype.drawLegendSymbol});""});w(d,"parts-map/MapPointSeries.js",
[d["parts/Globals.js"]],function(a){var d=a.merge,t=a.Point,g=a.Series;a=a.seriesType;a("mappoint","scatter",{dataLabels:{crop:!1,defer:!1,enabled:!0,formatter:function(){return this.point.name},overflow:!1,style:{color:"#000000"}}},{type:"mappoint",forceDL:!0,drawDataLabels:function(){g.prototype.drawDataLabels.call(this);this.dataLabelsGroup&&this.dataLabelsGroup.clip(this.chart.clipRect)}},{applyOptions:function(a,f){a="undefined"!==typeof a.lat&&"undefined"!==typeof a.lon?d(a,this.series.chart.fromLatLonToPoint(a)):
a;return t.prototype.applyOptions.call(this,a,f)}});""});w(d,"parts-more/BubbleLegend.js",[d["parts/Globals.js"],d["parts/Color.js"],d["parts/Legend.js"],d["parts/Utilities.js"]],function(a,d,t,g){"";var k=d.parse;d=g.addEvent;var f=g.arrayMax,n=g.arrayMin,A=g.isNumber,u=g.merge,r=g.objectEach,c=g.pick,l=g.stableSort,m=g.wrap,v=a.Series,z=a.Chart,x=a.noop,B=a.setOptions;B({legend:{bubbleLegend:{borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,
connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:10,color:void 0},x:0,y:0},maxSize:60,minSize:10,legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0}}});B=function(){function a(b,e){this.options=this.symbols=this.visible=this.ranges=this.movementX=this.maxLabel=this.legendSymbol=this.legendItemWidth=this.legendItemHeight=
this.legendItem=this.legendGroup=this.legend=this.fontMetrics=this.chart=void 0;this.setState=x;this.init(b,e)}a.prototype.init=function(b,e){this.options=b;this.visible=!0;this.chart=e.chart;this.legend=e};a.prototype.addToLegend=function(b){b.splice(this.options.legendIndex,0,this)};a.prototype.drawLegendSymbol=function(b){var e=this.chart,a=this.options,d=c(b.options.itemDistance,20),h=a.ranges;var m=a.connectorDistance;this.fontMetrics=e.renderer.fontMetrics(a.labels.style.fontSize.toString()+
"px");h&&h.length&&A(h[0].value)?(l(h,function(b,e){return e.value-b.value}),this.ranges=h,this.setOptions(),this.render(),e=this.getMaxLabelSize(),h=this.ranges[0].radius,b=2*h,m=m-h+e.width,m=0<m?m:0,this.maxLabel=e,this.movementX="left"===a.labels.align?m:0,this.legendItemWidth=b+m+d,this.legendItemHeight=b+this.fontMetrics.h/2):b.options.bubbleLegend.autoRanges=!0};a.prototype.setOptions=function(){var b=this.ranges,e=this.options,a=this.chart.series[e.seriesIndex],d=this.legend.baseline,h={"z-index":e.zIndex,
"stroke-width":e.borderWidth},l={"z-index":e.zIndex,"stroke-width":e.connectorWidth},m=this.getLabelStyles(),f=a.options.marker.fillOpacity,g=this.chart.styledMode;b.forEach(function(p,q){g||(h.stroke=c(p.borderColor,e.borderColor,a.color),h.fill=c(p.color,e.color,1!==f?k(a.color).setOpacity(f).get("rgba"):a.color),l.stroke=c(p.connectorColor,e.connectorColor,a.color));b[q].radius=this.getRangeRadius(p.value);b[q]=u(b[q],{center:b[0].radius-b[q].radius+d});g||u(!0,b[q],{bubbleStyle:u(!1,h),connectorStyle:u(!1,
l),labelStyle:m})},this)};a.prototype.getLabelStyles=function(){var b=this.options,e={},a="left"===b.labels.align,d=this.legend.options.rtl;r(b.labels.style,function(b,c){"color"!==c&&"fontSize"!==c&&"z-index"!==c&&(e[c]=b)});return u(!1,e,{"font-size":b.labels.style.fontSize,fill:c(b.labels.style.color,"#000000"),"z-index":b.zIndex,align:d||a?"right":"left"})};a.prototype.getRangeRadius=function(b){var e=this.options;return this.chart.series[this.options.seriesIndex].getRadius.call(this,e.ranges[e.ranges.length-
1].value,e.ranges[0].value,e.minSize,e.maxSize,b)};a.prototype.render=function(){var b=this.chart.renderer,e=this.options.zThreshold;this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]});this.legendSymbol=b.g("bubble-legend");this.legendItem=b.g("bubble-legend-item");this.legendSymbol.translateX=0;this.legendSymbol.translateY=0;this.ranges.forEach(function(b){b.value>=e&&this.renderRange(b)},this);this.legendSymbol.add(this.legendItem);this.legendItem.add(this.legendGroup);this.hideOverlappingLabels()};
a.prototype.renderRange=function(b){var e=this.options,c=e.labels,a=this.chart.renderer,d=this.symbols,h=d.labels,l=b.center,m=Math.abs(b.radius),f=e.connectorDistance,g=c.align,k=c.style.fontSize;f=this.legend.options.rtl||"left"===g?-f:f;c=e.connectorWidth;var r=this.ranges[0].radius,v=l-m-e.borderWidth/2+c/2;k=k/2-(this.fontMetrics.h-k)/2;var x=a.styledMode;"center"===g&&(f=0,e.connectorDistance=0,b.labelStyle.align="center");g=v+e.labels.y;var n=r+f+e.labels.x;d.bubbleItems.push(a.circle(r,l+
((v%1?1:.5)-(c%2?0:.5)),m).attr(x?{}:b.bubbleStyle).addClass((x?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-symbol "+(e.className||"")).add(this.legendSymbol));d.connectors.push(a.path(a.crispLine(["M",r,v,"L",r+f,v],e.connectorWidth)).attr(x?{}:b.connectorStyle).addClass((x?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(e.connectorClassName||"")).add(this.legendSymbol));b=a.text(this.formatLabel(b),n,g+k).attr(x?{}:
b.labelStyle).addClass("highcharts-bubble-legend-labels "+(e.labels.className||"")).add(this.legendSymbol);h.push(b);b.placed=!0;b.alignAttr={x:n,y:g+k}};a.prototype.getMaxLabelSize=function(){var b,e;this.symbols.labels.forEach(function(c){e=c.getBBox(!0);b=b?e.width>b.width?e:b:e});return b||{}};a.prototype.formatLabel=function(b){var e=this.options,c=e.labels.formatter;e=e.labels.format;var a=this.chart.numberFormatter;return e?g.format(e,b):c?c.call(b):a(b.value,1)};a.prototype.hideOverlappingLabels=
function(){var b=this.chart,e=this.symbols;!this.options.labels.allowOverlap&&e&&(b.hideOverlappingLabels(e.labels),e.labels.forEach(function(b,c){b.newOpacity?b.newOpacity!==b.oldOpacity&&e.connectors[c].show():e.connectors[c].hide()}))};a.prototype.getRanges=function(){var b=this.legend.bubbleLegend,e=b.options.ranges,a,d=Number.MAX_VALUE,h=-Number.MAX_VALUE;b.chart.series.forEach(function(b){b.isBubble&&!b.ignoreSeries&&(a=b.zData.filter(A),a.length&&(d=c(b.options.zMin,Math.min(d,Math.max(n(a),
!1===b.options.displayNegative?b.options.zThreshold:-Number.MAX_VALUE))),h=c(b.options.zMax,Math.max(h,f(a)))))});var l=d===h?[{value:h}]:[{value:d},{value:(d+h)/2},{value:h,autoRanges:!0}];e.length&&e[0].radius&&l.reverse();l.forEach(function(b,c){e&&e[c]&&(l[c]=u(!1,e[c],b))});return l};a.prototype.predictBubbleSizes=function(){var b=this.chart,e=this.fontMetrics,c=b.legend.options,a="horizontal"===c.layout,d=a?b.legend.lastLineHeight:0,h=b.plotSizeX,l=b.plotSizeY,m=b.series[this.options.seriesIndex];
b=Math.ceil(m.minPxSize);var f=Math.ceil(m.maxPxSize);m=m.options.maxSize;var g=Math.min(l,h);if(c.floating||!/%$/.test(m))e=f;else if(m=parseFloat(m),e=(g+d-e.h/2)*m/100/(m/100+1),a&&l-e>=h||!a&&h-e>=l)e=f;return[b,Math.ceil(e)]};a.prototype.updateRanges=function(b,c){var e=this.legend.options.bubbleLegend;e.minSize=b;e.maxSize=c;e.ranges=this.getRanges()};a.prototype.correctSizes=function(){var b=this.legend,c=this.chart.series[this.options.seriesIndex];1<Math.abs(Math.ceil(c.maxPxSize)-this.options.maxSize)&&
(this.updateRanges(this.options.minSize,c.maxPxSize),b.render())};return a}();d(t,"afterGetAllItems",function(c){var b=this.bubbleLegend,e=this.options,d=e.bubbleLegend,h=this.chart.getVisibleBubbleSeriesIndex();b&&b.ranges&&b.ranges.length&&(d.ranges.length&&(d.autoRanges=!!d.ranges[0].autoRanges),this.destroyItem(b));0<=h&&e.enabled&&d.enabled&&(d.seriesIndex=h,this.bubbleLegend=new a.BubbleLegend(d,this),this.bubbleLegend.addToLegend(c.allItems))});z.prototype.getVisibleBubbleSeriesIndex=function(){for(var c=
this.series,b=0;b<c.length;){if(c[b]&&c[b].isBubble&&c[b].visible&&c[b].zData.length)return b;b++}return-1};t.prototype.getLinesHeights=function(){var c=this.allItems,b=[],e=c.length,a,d=0;for(a=0;a<e;a++)if(c[a].legendItemHeight&&(c[a].itemHeight=c[a].legendItemHeight),c[a]===c[e-1]||c[a+1]&&c[a]._legendItemPos[1]!==c[a+1]._legendItemPos[1]){b.push({height:0});var l=b[b.length-1];for(d;d<=a;d++)c[d].itemHeight>l.height&&(l.height=c[d].itemHeight);l.step=a}return b};t.prototype.retranslateItems=function(c){var b,
e,a,d=this.options.rtl,l=0;this.allItems.forEach(function(h,m){b=h.legendGroup.translateX;e=h._legendItemPos[1];if((a=h.movementX)||d&&h.ranges)a=d?b-h.options.maxSize/2:b+a,h.legendGroup.attr({translateX:a});m>c[l].step&&l++;h.legendGroup.attr({translateY:Math.round(e+c[l].height/2)});h._legendItemPos[1]=e+c[l].height/2})};d(v,"legendItemClick",function(){var c=this.chart,b=this.visible,e=this.chart.legend;e&&e.bubbleLegend&&(this.visible=!b,this.ignoreSeries=b,c=0<=c.getVisibleBubbleSeriesIndex(),
e.bubbleLegend.visible!==c&&(e.update({bubbleLegend:{enabled:c}}),e.bubbleLegend.visible=c),this.visible=b)});m(z.prototype,"drawChartBox",function(c,b,e){var a=this.legend,d=0<=this.getVisibleBubbleSeriesIndex();if(a&&a.options.enabled&&a.bubbleLegend&&a.options.bubbleLegend.autoRanges&&d){var l=a.bubbleLegend.options;d=a.bubbleLegend.predictBubbleSizes();a.bubbleLegend.updateRanges(d[0],d[1]);l.placed||(a.group.placed=!1,a.allItems.forEach(function(b){b.legendGroup.translateY=null}));a.render();
this.getMargins();this.axes.forEach(function(b){b.visible&&b.render();l.placed||(b.setScale(),b.updateNames(),r(b.ticks,function(b){b.isNew=!0;b.isNewLabel=!0}))});l.placed=!0;this.getMargins();c.call(this,b,e);a.bubbleLegend.correctSizes();a.retranslateItems(a.getLinesHeights())}else c.call(this,b,e),a&&a.options.enabled&&a.bubbleLegend&&(a.render(),a.retranslateItems(a.getLinesHeights()))});a.BubbleLegend=B;return a.BubbleLegend});w(d,"parts-more/BubbleSeries.js",[d["parts/Globals.js"],d["parts/Color.js"],
d["parts/Point.js"],d["parts/Utilities.js"]],function(a,d,t,g){var k=d.parse,f=g.arrayMax,n=g.arrayMin,A=g.clamp,u=g.extend,r=g.isNumber,c=g.pick,l=g.pInt;d=g.seriesType;g=a.Axis;var m=a.noop,v=a.Series,z=a.seriesTypes;d("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(c,a){var d=this.options.marker.fillOpacity;c=v.prototype.pointAttribs.call(this,c,a);1!==d&&(c.fill=k(c.fill).setOpacity(d).get("rgba"));return c},getRadii:function(c,a,d){var b=this.zData,e=this.yData,
l=d.minPxSize,m=d.maxPxSize,h=[];var f=0;for(d=b.length;f<d;f++){var g=b[f];h.push(this.getRadius(c,a,l,m,g,e[f]))}this.radii=h},getRadius:function(c,a,d,b,e,l){var m=this.options,h="width"!==m.sizeBy,f=m.zThreshold,g=a-c,k=.5;if(null===l||null===e)return null;if(r(e)){m.sizeByAbsoluteValue&&(e=Math.abs(e-f),g=Math.max(a-f,Math.abs(c-f)),c=0);if(e<c)return d/2-1;0<g&&(k=(e-c)/g)}h&&0<=k&&(k=Math.sqrt(k));return Math.ceil(d+k*(b-d))/2},animate:function(c){!c&&this.points.length<this.options.animationLimit&&
this.points.forEach(function(c){var a=c.graphic;if(a&&a.width){var b={x:a.x,y:a.y,width:a.width,height:a.height};a.attr({x:c.plotX,y:c.plotY,width:1,height:1});a.animate(b,this.options.animation)}},this)},hasData:function(){return!!this.processedXData.length},translate:function(){var c,a=this.data,d=this.radii;z.scatter.prototype.translate.call(this);for(c=a.length;c--;){var b=a[c];var e=d?d[c]:0;r(e)&&e>=this.minPxSize/2?(b.marker=u(b.marker,{radius:e,width:2*e,height:2*e}),b.dlBox={x:b.plotX-e,
y:b.plotY-e,width:2*e,height:2*e}):b.shapeArgs=b.plotY=b.dlBox=void 0}},alignDataLabel:z.column.prototype.alignDataLabel,buildKDTree:m,applyZones:m},{haloPath:function(c){return t.prototype.haloPath.call(this,0===c?0:(this.marker?this.marker.radius||0:0)+c)},ttBelow:!1});g.prototype.beforePadding=function(){var a=this,d=this.len,m=this.chart,b=0,e=d,g=this.isXAxis,k=g?"xData":"yData",v=this.min,z={},t=Math.min(m.plotWidth,m.plotHeight),u=Number.MAX_VALUE,w=-Number.MAX_VALUE,D=this.max-v,E=d/D,F=[];
this.series.forEach(function(b){var e=b.options;!b.bubblePadding||!b.visible&&m.options.chart.ignoreHiddenSeries||(a.allowZoomOutside=!0,F.push(b),g&&(["minSize","maxSize"].forEach(function(b){var c=e[b],a=/%$/.test(c);c=l(c);z[b]=a?t*c/100:c}),b.minPxSize=z.minSize,b.maxPxSize=Math.max(z.maxSize,z.minSize),b=b.zData.filter(r),b.length&&(u=c(e.zMin,A(n(b),!1===e.displayNegative?e.zThreshold:-Number.MAX_VALUE,u)),w=c(e.zMax,Math.max(w,f(b))))))});F.forEach(function(c){var d=c[k],l=d.length;g&&c.getRadii(u,
w,c);if(0<D)for(;l--;)if(r(d[l])&&a.dataMin<=d[l]&&d[l]<=a.max){var m=c.radii?c.radii[l]:0;b=Math.min((d[l]-v)*E-m,b);e=Math.max((d[l]-v)*E+m,e)}});F.length&&0<D&&!this.isLog&&(e-=d,E*=(d+Math.max(0,b)-Math.min(e,d))/d,[["min","userMin",b],["max","userMax",e]].forEach(function(b){"undefined"===typeof c(a.options[b[0]],a[b[1]])&&(a[b[0]]+=b[2]/E)}))};""});w(d,"parts-map/MapBubbleSeries.js",[d["parts/Globals.js"],d["parts/Point.js"],d["parts/Utilities.js"]],function(a,d,t){var g=t.merge;t=t.seriesType;
var k=a.seriesTypes;k.bubble&&t("mapbubble","bubble",{animationLimit:500,tooltip:{pointFormat:"{point.name}: {point.z}"}},{xyFromShape:!0,type:"mapbubble",pointArrayMap:["z"],getMapData:k.map.prototype.getMapData,getBox:k.map.prototype.getBox,setData:k.map.prototype.setData,setOptions:k.map.prototype.setOptions},{applyOptions:function(a,n){return a&&"undefined"!==typeof a.lat&&"undefined"!==typeof a.lon?d.prototype.applyOptions.call(this,g(a,this.series.chart.fromLatLonToPoint(a)),n):k.map.prototype.pointClass.prototype.applyOptions.call(this,
a,n)},isValid:function(){return"number"===typeof this.z},ttBelow:!1});""});w(d,"parts-map/HeatmapSeries.js",[d["parts/Globals.js"],d["mixins/legend-symbol.js"],d["parts/Utilities.js"]],function(a,d,t){var g=t.clamp,k=t.extend,f=t.fireEvent,n=t.merge,w=t.pick;t=t.seriesType;var u=a.colorMapPointMixin,r=a.noop,c=a.Series,l=a.seriesTypes;t("heatmap","scatter",{animation:!1,borderWidth:0,nullColor:"#f7f7f7",dataLabels:{formatter:function(){return this.point.value},inside:!0,verticalAlign:"middle",crop:!1,
overflow:!1,padding:0},marker:null,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}<br/>"},states:{hover:{halo:!1,brightness:.2}}},n(a.colorMapSeriesMixin,{pointArrayMap:["y","value"],hasPointSpecificOptions:!0,getExtremesFromAll:!0,directTouch:!0,init:function(){l.scatter.prototype.init.apply(this,arguments);var c=this.options;c.pointRange=w(c.pointRange,c.colsize||1);this.yAxis.axisPointRange=c.rowsize||1},translate:function(){this.generatePoints();var c=this.options,a=
c.colsize,d=c.pointPadding,l=void 0===d?0:d;c=c.rowsize;d=this.points;var k=this.xAxis,h=this.yAxis,b=(void 0===a?1:a)/2,e=(void 0===c?1:c)/2,r=this.pointPlacementToXValue(),n=function(b){return Math.round(g(k.translate(b,!1,!1,!1,!0,r),0,k.len))};d.forEach(function(c){var a=n(c.x-b),d=n(c.x+b),m=Math.round(g(h.translate(c.y-e,!1,!0,!1,!0),0,h.len)),f=Math.round(g(h.translate(c.y+e,!1,!0,!1,!0),0,h.len)),k=w(c.pointPadding,l);c.plotX=c.clientX=(a+d)/2;c.plotY=(m+f)/2;c.shapeType="rect";c.shapeArgs=
{x:Math.min(a,d)+k,y:Math.min(m,f)+k,width:Math.max(Math.abs(d-a)-2*k,0),height:Math.max(Math.abs(f-m)-2*k,0)}});f(this,"afterTranslate")},drawPoints:function(){var c=this.chart.styledMode?"css":"animate";l.column.prototype.drawPoints.call(this);this.points.forEach(function(a){a.graphic[c](this.colorAttribs(a))},this)},hasData:function(){return!!this.processedXData.length},getValidPoints:function(a,d){return c.prototype.getValidPoints.call(this,a,d,!0)},animate:r,getBox:r,drawLegendSymbol:d.drawRectangle,
alignDataLabel:l.column.prototype.alignDataLabel,getExtremes:function(){c.prototype.getExtremes.call(this,this.valueData);this.valueMin=this.dataMin;this.valueMax=this.dataMax;c.prototype.getExtremes.call(this)}}),k({haloPath:function(c){if(!c)return[];var a=this.shapeArgs;return["M",a.x-c,a.y-c,"L",a.x-c,a.y+a.height+c,a.x+a.width+c,a.y+a.height+c,a.x+a.width+c,a.y-c,"Z"]}},u));""});w(d,"parts-map/GeoJSON.js",[d["parts/Globals.js"],d["parts/Utilities.js"]],function(a,d){function n(a,c){var d,f=!1,
g=a.x,k=a.y;a=0;for(d=c.length-1;a<c.length;d=a++){var r=c[a][1]>k;var n=c[d][1]>k;r!==n&&g<(c[d][0]-c[a][0])*(k-c[a][1])/(c[d][1]-c[a][1])+c[a][0]&&(f=!f)}return f}var g=d.error,k=d.extend,f=d.format,w=d.merge;d=d.wrap;var A=a.Chart,u=a.win;A.prototype.transformFromLatLon=function(a,c){var d,f=(null===(d=this.userOptions.chart)||void 0===d?void 0:d.proj4)||u.proj4;if(!f)return g(21,!1,this),{x:0,y:null};a=f(c.crs,[a.lon,a.lat]);d=c.cosAngle||c.rotation&&Math.cos(c.rotation);f=c.sinAngle||c.rotation&&
Math.sin(c.rotation);a=c.rotation?[a[0]*d+a[1]*f,-a[0]*f+a[1]*d]:a;return{x:((a[0]-(c.xoffset||0))*(c.scale||1)+(c.xpan||0))*(c.jsonres||1)+(c.jsonmarginX||0),y:(((c.yoffset||0)-a[1])*(c.scale||1)+(c.ypan||0))*(c.jsonres||1)-(c.jsonmarginY||0)}};A.prototype.transformToLatLon=function(a,c){if("undefined"===typeof u.proj4)g(21,!1,this);else{a={x:((a.x-(c.jsonmarginX||0))/(c.jsonres||1)-(c.xpan||0))/(c.scale||1)+(c.xoffset||0),y:((-a.y-(c.jsonmarginY||0))/(c.jsonres||1)+(c.ypan||0))/(c.scale||1)+(c.yoffset||
0)};var d=c.cosAngle||c.rotation&&Math.cos(c.rotation),f=c.sinAngle||c.rotation&&Math.sin(c.rotation);c=u.proj4(c.crs,"WGS84",c.rotation?{x:a.x*d+a.y*-f,y:a.x*f+a.y*d}:a);return{lat:c.y,lon:c.x}}};A.prototype.fromPointToLatLon=function(a){var c=this.mapTransforms,d;if(c){for(d in c)if(Object.hasOwnProperty.call(c,d)&&c[d].hitZone&&n({x:a.x,y:-a.y},c[d].hitZone.coordinates[0]))return this.transformToLatLon(a,c[d]);return this.transformToLatLon(a,c["default"])}g(22,!1,this)};A.prototype.fromLatLonToPoint=
function(a){var c=this.mapTransforms,d;if(!c)return g(22,!1,this),{x:0,y:null};for(d in c)if(Object.hasOwnProperty.call(c,d)&&c[d].hitZone){var f=this.transformFromLatLon(a,c[d]);if(n({x:f.x,y:-f.y},c[d].hitZone.coordinates[0]))return f}return this.transformFromLatLon(a,c["default"])};a.geojson=function(a,c,d){var l=[],g=[],n=function(c){var a,d=c.length;g.push("M");for(a=0;a<d;a++)1===a&&g.push("L"),g.push(c[a][0],-c[a][1])};c=c||"map";a.features.forEach(function(a){var d=a.geometry,f=d.type;d=d.coordinates;
a=a.properties;var b;g=[];"map"===c||"mapbubble"===c?("Polygon"===f?(d.forEach(n),g.push("Z")):"MultiPolygon"===f&&(d.forEach(function(b){b.forEach(n)}),g.push("Z")),g.length&&(b={path:g})):"mapline"===c?("LineString"===f?n(d):"MultiLineString"===f&&d.forEach(n),g.length&&(b={path:g})):"mappoint"===c&&"Point"===f&&(b={x:d[0],y:-d[1]});b&&l.push(k(b,{name:a.name||a.NAME,properties:a}))});d&&a.copyrightShort&&(d.chart.mapCredits=f(d.chart.options.credits.mapText,{geojson:a}),d.chart.mapCreditsFull=
f(d.chart.options.credits.mapTextFull,{geojson:a}));return l};d(A.prototype,"addCredits",function(a,c){c=w(!0,this.options.credits,c);this.mapCredits&&(c.href=null);a.call(this,c);this.credits&&this.mapCreditsFull&&this.credits.attr({title:this.mapCreditsFull})})});w(d,"parts-map/Map.js",[d["parts/Globals.js"],d["parts/Utilities.js"]],function(a,d){function n(c,a,d,f,g,k,n,h){return["M",c+g,a,"L",c+d-k,a,"C",c+d-k/2,a,c+d,a+k/2,c+d,a+k,"L",c+d,a+f-n,"C",c+d,a+f-n/2,c+d-n/2,a+f,c+d-n,a+f,"L",c+h,a+
f,"C",c+h/2,a+f,c,a+f-h/2,c,a+f-h,"L",c,a+g,"C",c,a+g/2,c+g/2,a,c+g,a,"Z"]}var g=d.extend,k=d.merge,f=d.pick,w=a.Chart;d=a.defaultOptions;var A=a.Renderer,u=a.SVGRenderer,r=a.VMLRenderer;g(d.lang,{zoomIn:"Zoom in",zoomOut:"Zoom out"});d.mapNavigation={buttonOptions:{alignTo:"plotBox",align:"left",verticalAlign:"top",x:0,width:18,height:18,padding:5,style:{fontSize:"15px",fontWeight:"bold"},theme:{"stroke-width":1,"text-align":"center"}},buttons:{zoomIn:{onclick:function(){this.mapZoom(.5)},text:"+",
y:0},zoomOut:{onclick:function(){this.mapZoom(2)},text:"-",y:28}},mouseWheelSensitivity:1.1};a.splitPath=function(a){var c;a=a.replace(/([A-Za-z])/g," $1 ");a=a.replace(/^\s*/,"").replace(/\s*$/,"");a=a.split(/[ ,]+/);for(c=0;c<a.length;c++)/[a-zA-Z]/.test(a[c])||(a[c]=parseFloat(a[c]));return a};a.maps={};u.prototype.symbols.topbutton=function(a,d,f,g,k){return n(a-1,d-1,f,g,k.r,k.r,0,0)};u.prototype.symbols.bottombutton=function(a,d,f,g,k){return n(a-1,d-1,f,g,0,0,k.r,k.r)};A===r&&["topbutton",
"bottombutton"].forEach(function(a){r.prototype.symbols[a]=u.prototype.symbols[a]});a.Map=a.mapChart=function(c,d,g){var l="string"===typeof c||c.nodeName,m=arguments[l?1:0],n=m,r={endOnTick:!1,visible:!1,minPadding:0,maxPadding:0,startOnTick:!1},h=a.getOptions().credits;var b=m.series;m.series=null;m=k({chart:{panning:"xy",type:"map"},credits:{mapText:f(h.mapText,' \u00a9 <a href="{geojson.copyrightUrl}">{geojson.copyrightShort}</a>'),mapTextFull:f(h.mapTextFull,"{geojson.copyright}")},tooltip:{followTouchMove:!1},
xAxis:r,yAxis:k(r,{reversed:!0})},m,{chart:{inverted:!1,alignTicks:!1}});m.series=n.series=b;return l?new w(c,m,g):new w(m,d)}});w(d,"masters/modules/map.src.js",[],function(){})});
//# sourceMappingURL=map.js.map
/*
 Highcharts JS v8.0.4 (2020-03-10)

 Boost module

 (c) 2010-2019 Highsoft AS
 Author: Torstein Honsi

 License: www.highcharts.com/license

 This is a Highcharts module that draws long data series on a canvas in order
 to increase performance of the initial load time and tooltip responsiveness.

 Compatible with WebGL compatible browsers (not IE < 11).

 If this module is taken in as part of the core
 - All the loading logic should be merged with core. Update styles in the
   core.
 - Most of the method wraps should probably be added directly in parent
   methods.

 Notes for boost mode
 - Area lines are not drawn
 - Lines are not drawn on scatter charts
 - Zones and negativeColor don't work
 - Dash styles are not rendered on lines.
 - Columns are always one pixel wide. Don't set the threshold too low.
 - Disable animations
 - Marker shapes are not supported: markers will always be circles

 Optimizing tips for users
 - Set extremes (min, max) explicitly on the axes in order for Highcharts to
   avoid computing extremes.
 - Set enableMouseTracking to false on the series to improve total rendering
      time.
 - The default threshold is set based on one series. If you have multiple,
   dense series, the combined number of points drawn gets higher, and you may
   want to set the threshold lower in order to use optimizations.
 - If drawing large scatter charts, it's beneficial to set the marker radius
   to a value less than 1. This is to add additional spacing to make the chart
   more readable.
 - If the value increments on both the X and Y axis aren't small, consider
   setting useGPUTranslations to true on the boost settings object. If you do
   this and the increments are small (e.g. datetime axis with small time
   increments) it may cause rendering issues due to floating point rounding
   errors, so your millage may vary.

 Settings
    There are two ways of setting the boost threshold:
    - Per series: boost based on number of points in individual series
    - Per chart: boost based on the number of series

  To set the series boost threshold, set seriesBoostThreshold on the chart
  object.
  To set the series-specific threshold, set boostThreshold on the series
  object.

  In addition, the following can be set in the boost object:
  {
      //Wether or not to use alpha blending
      useAlpha: boolean - default: true
      //Set to true to perform translations on the GPU.
      //Much faster, but may cause rendering issues
      //when using values far from 0 due to floating point
      //rounding issues
      useGPUTranslations: boolean - default: false
      //Use pre-allocated buffers, much faster,
      //but may cause rendering issues with some data sets
      usePreallocated: boolean - default: false
  }
*/
(function(c){"object"===typeof module&&module.exports?(c["default"]=c,module.exports=c):"function"===typeof define&&define.amd?define("highcharts/modules/boost",["highcharts"],function(u){c(u);c.Highcharts=u;return c}):c("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(c){function u(c,w,p,G){c.hasOwnProperty(w)||(c[w]=G.apply(null,p))}c=c?c._modules:{};u(c,"modules/boost/boostables.js",[],function(){return"area arearange column columnrange bar line scatter heatmap bubble treemap".split(" ")});
u(c,"modules/boost/boostable-map.js",[c["modules/boost/boostables.js"]],function(c){var m={};c.forEach(function(c){m[c]=1});return m});u(c,"modules/boost/wgl-shader.js",[c["parts/Globals.js"],c["parts/Utilities.js"]],function(c,w){var m=w.clamp,G=w.error,r=c.pick;return function(e){function c(){p.length&&G("[highcharts boost] shader error - "+p.join("\n"))}function v(a,d){var b=e.createShader("vertex"===d?e.VERTEX_SHADER:e.FRAGMENT_SHADER);e.shaderSource(b,a);e.compileShader(b);return e.getShaderParameter(b,
e.COMPILE_STATUS)?b:(p.push("when compiling "+d+" shader:\n"+e.getShaderInfoLog(b)),!1)}function t(){function b(a){return e.getUniformLocation(h,a)}var d=v("#version 100\n#define LN10 2.302585092994046\nprecision highp float;\nattribute vec4 aVertexPosition;\nattribute vec4 aColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform mat4 uPMatrix;\nuniform float pSize;\nuniform float translatedThreshold;\nuniform bool hasThreshold;\nuniform bool skipTranslation;\nuniform float xAxisTrans;\nuniform float xAxisMin;\nuniform float xAxisMinPad;\nuniform float xAxisPointRange;\nuniform float xAxisLen;\nuniform bool  xAxisPostTranslate;\nuniform float xAxisOrdinalSlope;\nuniform float xAxisOrdinalOffset;\nuniform float xAxisPos;\nuniform bool  xAxisCVSCoord;\nuniform bool  xAxisIsLog;\nuniform bool  xAxisReversed;\nuniform float yAxisTrans;\nuniform float yAxisMin;\nuniform float yAxisMinPad;\nuniform float yAxisPointRange;\nuniform float yAxisLen;\nuniform bool  yAxisPostTranslate;\nuniform float yAxisOrdinalSlope;\nuniform float yAxisOrdinalOffset;\nuniform float yAxisPos;\nuniform bool  yAxisCVSCoord;\nuniform bool  yAxisIsLog;\nuniform bool  yAxisReversed;\nuniform bool  isBubble;\nuniform bool  bubbleSizeByArea;\nuniform float bubbleZMin;\nuniform float bubbleZMax;\nuniform float bubbleZThreshold;\nuniform float bubbleMinSize;\nuniform float bubbleMaxSize;\nuniform bool  bubbleSizeAbs;\nuniform bool  isInverted;\nfloat bubbleRadius(){\nfloat value = aVertexPosition.w;\nfloat zMax = bubbleZMax;\nfloat zMin = bubbleZMin;\nfloat radius = 0.0;\nfloat pos = 0.0;\nfloat zRange = zMax - zMin;\nif (bubbleSizeAbs){\nvalue = value - bubbleZThreshold;\nzMax = max(zMax - bubbleZThreshold, zMin - bubbleZThreshold);\nzMin = 0.0;\n}\nif (value < zMin){\nradius = bubbleZMin / 2.0 - 1.0;\n} else {\npos = zRange > 0.0 ? (value - zMin) / zRange : 0.5;\nif (bubbleSizeByArea && pos > 0.0){\npos = sqrt(pos);\n}\nradius = ceil(bubbleMinSize + pos * (bubbleMaxSize - bubbleMinSize)) / 2.0;\n}\nreturn radius * 2.0;\n}\nfloat translate(float val,\nfloat pointPlacement,\nfloat localA,\nfloat localMin,\nfloat minPixelPadding,\nfloat pointRange,\nfloat len,\nbool  cvsCoord,\nbool  isLog,\nbool  reversed\n){\nfloat sign = 1.0;\nfloat cvsOffset = 0.0;\nif (cvsCoord) {\nsign *= -1.0;\ncvsOffset = len;\n}\nif (isLog) {\nval = log(val) / LN10;\n}\nif (reversed) {\nsign *= -1.0;\ncvsOffset -= sign * len;\n}\nreturn sign * (val - localMin) * localA + cvsOffset + \n(sign * minPixelPadding);\n}\nfloat xToPixels(float value) {\nif (skipTranslation){\nreturn value;// + xAxisPos;\n}\nreturn translate(value, 0.0, xAxisTrans, xAxisMin, xAxisMinPad, xAxisPointRange, xAxisLen, xAxisCVSCoord, xAxisIsLog, xAxisReversed);// + xAxisPos;\n}\nfloat yToPixels(float value, float checkTreshold) {\nfloat v;\nif (skipTranslation){\nv = value;// + yAxisPos;\n} else {\nv = translate(value, 0.0, yAxisTrans, yAxisMin, yAxisMinPad, yAxisPointRange, yAxisLen, yAxisCVSCoord, yAxisIsLog, yAxisReversed);// + yAxisPos;\nif (v > yAxisLen) {\nv = yAxisLen;\n}\n}\nif (checkTreshold > 0.0 && hasThreshold) {\nv = min(v, translatedThreshold);\n}\nreturn v;\n}\nvoid main(void) {\nif (isBubble){\ngl_PointSize = bubbleRadius();\n} else {\ngl_PointSize = pSize;\n}\nvColor = aColor;\nif (skipTranslation && isInverted) {\ngl_Position = uPMatrix * vec4(aVertexPosition.y + yAxisPos, aVertexPosition.x + xAxisPos, 0.0, 1.0);\n} else if (isInverted) {\ngl_Position = uPMatrix * vec4(yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, xToPixels(aVertexPosition.x) + xAxisPos, 0.0, 1.0);\n} else {\ngl_Position = uPMatrix * vec4(xToPixels(aVertexPosition.x) + xAxisPos, yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, 0.0, 1.0);\n}\n}",
"vertex"),m=v("precision highp float;\nuniform vec4 fillColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform sampler2D uSampler;\nuniform bool isCircle;\nuniform bool hasColor;\nvoid main(void) {\nvec4 col = fillColor;\nvec4 tcol;\nif (hasColor) {\ncol = vColor;\n}\nif (isCircle) {\ntcol = texture2D(uSampler, gl_PointCoord.st);\ncol *= tcol;\nif (tcol.r < 0.0) {\ndiscard;\n} else {\ngl_FragColor = col;\n}\n} else {\ngl_FragColor = col;\n}\n}","fragment");if(!d||!m)return h=!1,
c(),!1;h=e.createProgram();e.attachShader(h,d);e.attachShader(h,m);e.linkProgram(h);if(!e.getProgramParameter(h,e.LINK_STATUS))return p.push(e.getProgramInfoLog(h)),c(),h=!1;e.useProgram(h);e.bindAttribLocation(h,0,"aVertexPosition");g=b("uPMatrix");l=b("pSize");D=b("fillColor");A=b("isBubble");f=b("bubbleSizeAbs");a=b("bubbleSizeByArea");k=b("uSampler");N=b("skipTranslation");J=b("isCircle");L=b("isInverted");return!0}function n(a,d){e&&h&&(a=b[a]=b[a]||e.getUniformLocation(h,a),e.uniform1f(a,d))}
var b={},h,g,l,D,A,f,a,N,J,L,p=[],k;return e&&!t()?!1:{psUniform:function(){return l},pUniform:function(){return g},fillColorUniform:function(){return D},setBubbleUniforms:function(b,d,c){var g=b.options,l=Number.MAX_VALUE,k=-Number.MAX_VALUE;e&&h&&"bubble"===b.type&&(l=r(g.zMin,m(d,!1===g.displayNegative?g.zThreshold:-Number.MAX_VALUE,l)),k=r(g.zMax,Math.max(k,c)),e.uniform1i(A,1),e.uniform1i(J,1),e.uniform1i(a,"width"!==b.options.sizeBy),e.uniform1i(f,b.options.sizeByAbsoluteValue),n("bubbleZMin",
l),n("bubbleZMax",k),n("bubbleZThreshold",b.options.zThreshold),n("bubbleMinSize",b.minPxSize),n("bubbleMaxSize",b.maxPxSize))},bind:function(){e&&h&&e.useProgram(h)},program:function(){return h},create:t,setUniform:n,setPMatrix:function(a){e&&h&&e.uniformMatrix4fv(g,!1,a)},setColor:function(a){e&&h&&e.uniform4f(D,a[0]/255,a[1]/255,a[2]/255,a[3])},setPointSize:function(a){e&&h&&e.uniform1f(l,a)},setSkipTranslation:function(a){e&&h&&e.uniform1i(N,!0===a?1:0)},setTexture:function(a){e&&h&&e.uniform1i(k,
a)},setDrawAsCircle:function(a){e&&h&&e.uniform1i(J,a?1:0)},reset:function(){e&&h&&(e.uniform1i(A,0),e.uniform1i(J,0))},setInverted:function(a){e&&h&&e.uniform1i(L,a)},destroy:function(){e&&h&&(e.deleteProgram(h),h=!1)}}}});u(c,"modules/boost/wgl-vbuffer.js",[],function(){return function(c,w,p){function m(){r&&(c.deleteBuffer(r),e=r=!1);t=0;q=p||2;n=[]}var r=!1,e=!1,q=p||2,v=!1,t=0,n;return{destroy:m,bind:function(){if(!r)return!1;c.vertexAttribPointer(e,q,c.FLOAT,!1,0,0)},data:n,build:function(b,
h,g){var l;n=b||[];if(!(n&&0!==n.length||v))return m(),!1;q=g||q;r&&c.deleteBuffer(r);v||(l=new Float32Array(n));r=c.createBuffer();c.bindBuffer(c.ARRAY_BUFFER,r);c.bufferData(c.ARRAY_BUFFER,v||l,c.STATIC_DRAW);e=c.getAttribLocation(w.program(),h);c.enableVertexAttribArray(e);return!0},render:function(b,e,g){var l=v?v.length:n.length;if(!r||!l)return!1;if(!b||b>l||0>b)b=0;if(!e||e>l)e=l;c.drawArrays(c[(g||"points").toUpperCase()],b/q,(e-b)/q);return!0},allocate:function(b){t=-1;v=new Float32Array(4*
b)},push:function(b,c,e,l){v&&(v[++t]=b,v[++t]=c,v[++t]=e,v[++t]=l)}}}});u(c,"modules/boost/wgl-renderer.js",[c["parts/Globals.js"],c["modules/boost/wgl-shader.js"],c["modules/boost/wgl-vbuffer.js"],c["parts/Color.js"],c["parts/Utilities.js"]],function(c,w,p,G,r){var e=G.parse,q=r.isNumber,m=r.merge,t=r.objectEach,n=c.win.document,b=c.some,h=c.pick;return function(g){function l(a){if(a.isSeriesBoosting){var b=!!a.options.stacking;var d=a.xData||a.options.xData||a.processedXData;b=(b?a.data:d||a.options.data).length;
"treemap"===a.type?b*=12:"heatmap"===a.type?b*=6:ka[a.type]&&(b*=2);return b}return 0}function D(){d.clear(d.COLOR_BUFFER_BIT|d.DEPTH_BUFFER_BIT)}function A(a,d){function c(a){a&&(d.colorData.push(a[0]),d.colorData.push(a[1]),d.colorData.push(a[2]),d.colorData.push(a[3]))}function f(a,b,d,f,e){c(e);y.usePreallocated?v.push(a,b,d?1:0,f||1):(K.push(a),K.push(b),K.push(d?1:0),K.push(f||1))}function l(){d.segments.length&&(d.segments[d.segments.length-1].to=K.length)}function k(){d.segments.length&&d.segments[d.segments.length-
1].from===K.length||(l(),d.segments.push({from:K.length}))}function g(a,b,d,e,k){c(k);f(a+d,b);c(k);f(a,b);c(k);f(a,b+e);c(k);f(a,b+e);c(k);f(a+d,b+e);c(k);f(a+d,b)}function S(a,b){y.useGPUTranslations||(d.skipTranslation=!0,a.x=w.toPixels(a.x,!0),a.y=L.toPixels(a.y,!0));b?K=[a.x,a.y,0,2].concat(K):f(a.x,a.y,0,2)}var X=a.pointArrayMap&&"low,high"===a.pointArrayMap.join(","),J=a.chart,h=a.options,N=!!h.stacking,m=h.data,q=a.xAxis.getExtremes(),n=q.min;q=q.max;var p=a.yAxis.getExtremes(),t=p.min;p=
p.max;var r=a.xData||h.xData||a.processedXData,D=a.yData||h.yData||a.processedYData,A=a.zData||h.zData||a.processedZData,L=a.yAxis,w=a.xAxis,u=a.chart.plotWidth,ia=!r||0===r.length,F=h.connectNulls,x=a.points||!1,H=!1,I=!1,O;m=N?a.data:r||m;r={x:Number.MAX_VALUE,y:0};var M={x:-Number.MAX_VALUE,y:0},R=0,W=!1,E=-1,P=!1,U=!1,ta="undefined"===typeof J.index,Q=!1,ea=!1;var B=!1;var ua=ka[a.type],fa=!1,pa=!0,qa=!0,Z=h.zones||!1,V=!1,ra=h.threshold,ha=!1;if(!(h.boostData&&0<h.boostData.length)){h.gapSize&&
(ha="value"!==h.gapUnit?h.gapSize*a.closestPointRange:h.gapSize);Z&&(b(Z,function(a){if("undefined"===typeof a.value)return V=new G(a.color),!0}),V||(V=a.pointAttribs&&a.pointAttribs().fill||a.color,V=new G(V)));J.inverted&&(u=a.chart.plotHeight);a.closestPointRangePx=Number.MAX_VALUE;k();if(x&&0<x.length)d.skipTranslation=!0,d.drawMode="triangles",x[0].node&&x[0].node.levelDynamic&&x.sort(function(a,b){if(a.node){if(a.node.levelDynamic>b.node.levelDynamic)return 1;if(a.node.levelDynamic<b.node.levelDynamic)return-1}return 0}),
x.forEach(function(b){var d=b.plotY;if("undefined"!==typeof d&&!isNaN(d)&&null!==b.y){d=b.shapeArgs;var f=J.styledMode?b.series.colorAttribs(b):f=b.series.pointAttribs(b);b=f["stroke-width"]||0;B=e(f.fill).rgba;B[0]/=255;B[1]/=255;B[2]/=255;"treemap"===a.type&&(b=b||1,O=e(f.stroke).rgba,O[0]/=255,O[1]/=255,O[2]/=255,g(d.x,d.y,d.width,d.height,O),b/=2);"heatmap"===a.type&&J.inverted&&(d.x=w.len-d.x,d.y=L.len-d.y,d.width=-d.width,d.height=-d.height);g(d.x+b,d.y+b,d.width-2*b,d.height-2*b,B)}});else{for(;E<
m.length-1;){var C=m[++E];if(ta)break;if(ia){x=C[0];var z=C[1];m[E+1]&&(U=m[E+1][0]);m[E-1]&&(P=m[E-1][0]);if(3<=C.length){var sa=C[2];C[2]>d.zMax&&(d.zMax=C[2]);C[2]<d.zMin&&(d.zMin=C[2])}}else x=C,z=D[E],m[E+1]&&(U=m[E+1]),m[E-1]&&(P=m[E-1]),A&&A.length&&(sa=A[E],A[E]>d.zMax&&(d.zMax=A[E]),A[E]<d.zMin&&(d.zMin=A[E]));if(F||null!==x&&null!==z){U&&U>=n&&U<=q&&(Q=!0);P&&P>=n&&P<=q&&(ea=!0);if(X){ia&&(z=C.slice(1,3));var aa=z[0];z=z[1]}else N&&(x=C.x,z=C.stackY,aa=z-C.y);null!==t&&"undefined"!==typeof t&&
null!==p&&"undefined"!==typeof p&&(pa=z>=t&&z<=p);x>q&&M.x<q&&(M.x=x,M.y=z);x<n&&r.x>n&&(r.x=x,r.y=z);if(null!==z||!F)if(null!==z&&(pa||Q||ea)){if((U>=n||x>=n)&&(P<=q||x<=q)&&(fa=!0),fa||Q||ea){ha&&x-P>ha&&k();Z&&(B=V.rgba,b(Z,function(a,b){b=Z[b-1];if("undefined"!==typeof a.value&&z<=a.value){if(!b||z>=b.value)B=e(a.color).rgba;return!0}}),B[0]/=255,B[1]/=255,B[2]/=255);if(!y.useGPUTranslations&&(d.skipTranslation=!0,x=w.toPixels(x,!0),z=L.toPixels(z,!0),x>u&&"points"===d.drawMode))continue;if(ua){C=
aa;if(!1===aa||"undefined"===typeof aa)C=0>z?z:0;X||N||(C=Math.max(null===ra?t:ra,t));y.useGPUTranslations||(C=L.toPixels(C,!0));f(x,C,0,0,B)}d.hasMarkers&&fa&&!1!==H&&(a.closestPointRangePx=Math.min(a.closestPointRangePx,Math.abs(x-H)));!y.useGPUTranslations&&!y.usePreallocated&&H&&1>Math.abs(x-H)&&I&&1>Math.abs(z-I)?y.debug.showSkipSummary&&++R:(h.step&&!qa&&f(x,I,0,2,B),f(x,z,0,"bubble"===a.type?sa||1:2,B),H=x,I=z,W=!0,qa=!1)}}else k()}else k()}y.debug.showSkipSummary&&console.log("skipped points:",
R);W||!1===F||"line_strip"!==a.drawMode||(r.x<Number.MAX_VALUE&&S(r,!0),M.x>-Number.MAX_VALUE&&S(M))}l()}}function f(){F=[];W.data=K=[];R=[];v&&v.destroy()}function a(a){k&&(k.setUniform("xAxisTrans",a.transA),k.setUniform("xAxisMin",a.min),k.setUniform("xAxisMinPad",a.minPixelPadding),k.setUniform("xAxisPointRange",a.pointRange),k.setUniform("xAxisLen",a.len),k.setUniform("xAxisPos",a.pos),k.setUniform("xAxisCVSCoord",!a.horiz),k.setUniform("xAxisIsLog",a.isLog),k.setUniform("xAxisReversed",!!a.reversed))}
function N(a){k&&(k.setUniform("yAxisTrans",a.transA),k.setUniform("yAxisMin",a.min),k.setUniform("yAxisMinPad",a.minPixelPadding),k.setUniform("yAxisPointRange",a.pointRange),k.setUniform("yAxisLen",a.len),k.setUniform("yAxisPos",a.pos),k.setUniform("yAxisCVSCoord",!a.horiz),k.setUniform("yAxisIsLog",a.isLog),k.setUniform("yAxisReversed",!!a.reversed))}function J(a,b){k.setUniform("hasThreshold",a);k.setUniform("translatedThreshold",b)}function L(b){if(b)u=b.chartWidth||800,H=b.chartHeight||400;
else return!1;if(!(d&&u&&H&&k))return!1;y.debug.timeRendering&&console.time("gl rendering");d.canvas.width=u;d.canvas.height=H;k.bind();d.viewport(0,0,u,H);k.setPMatrix([2/u,0,0,0,0,-(2/H),0,0,0,0,-2,0,-1,1,-1,1]);1<y.lineWidth&&!c.isMS&&d.lineWidth(y.lineWidth);v.build(W.data,"aVertexPosition",4);v.bind();k.setInverted(b.inverted);F.forEach(function(f,c){var l=f.series.options,g=l.marker;var m="undefined"!==typeof l.lineWidth?l.lineWidth:1;var n=l.threshold,r=q(n),t=f.series.yAxis.getThreshold(n);
n=h(l.marker?l.marker.enabled:null,f.series.xAxis.isRadial?!0:null,f.series.closestPointRangePx>2*((l.marker?l.marker.radius:10)||10));g=I[g&&g.symbol||f.series.symbol]||I.circle;if(!(0===f.segments.length||f.segmentslength&&f.segments[0].from===f.segments[0].to)){g.isReady&&(d.bindTexture(d.TEXTURE_2D,g.handle),k.setTexture(g.handle));b.styledMode?g=f.series.markerGroup&&f.series.markerGroup.getStyle("fill"):(g=f.series.pointAttribs&&f.series.pointAttribs().fill||f.series.color,l.colorByPoint&&(g=
f.series.chart.options.colors[c]));f.series.fillOpacity&&l.fillOpacity&&(g=(new G(g)).setOpacity(h(l.fillOpacity,1)).get());g=e(g).rgba;y.useAlpha||(g[3]=1);"lines"===f.drawMode&&y.useAlpha&&1>g[3]&&(g[3]/=10);"add"===l.boostBlending?(d.blendFunc(d.SRC_ALPHA,d.ONE),d.blendEquation(d.FUNC_ADD)):"mult"===l.boostBlending||"multiply"===l.boostBlending?d.blendFunc(d.DST_COLOR,d.ZERO):"darken"===l.boostBlending?(d.blendFunc(d.ONE,d.ONE),d.blendEquation(d.FUNC_MIN)):d.blendFuncSeparate(d.SRC_ALPHA,d.ONE_MINUS_SRC_ALPHA,
d.ONE,d.ONE_MINUS_SRC_ALPHA);k.reset();0<f.colorData.length&&(k.setUniform("hasColor",1),c=p(d,k),c.build(f.colorData,"aColor",4),c.bind());k.setColor(g);a(f.series.xAxis);N(f.series.yAxis);J(r,t);"points"===f.drawMode&&(l.marker&&l.marker.radius?k.setPointSize(2*l.marker.radius):k.setPointSize(1));k.setSkipTranslation(f.skipTranslation);"bubble"===f.series.type&&k.setBubbleUniforms(f.series,f.zMin,f.zMax);k.setDrawAsCircle(Q[f.series.type]||!1);if(0<m||"line_strip"!==f.drawMode)for(m=0;m<f.segments.length;m++)v.render(f.segments[m].from,
f.segments[m].to,f.drawMode);if(f.hasMarkers&&n)for(l.marker&&l.marker.radius?k.setPointSize(2*l.marker.radius):k.setPointSize(10),k.setDrawAsCircle(!0),m=0;m<f.segments.length;m++)v.render(f.segments[m].from,f.segments[m].to,"POINTS")}});y.debug.timeRendering&&console.timeEnd("gl rendering");g&&g();f()}function r(a){D();if(a.renderer.forExport)return L(a);M?L(a):setTimeout(function(){r(a)},1)}var k=!1,v=!1,d=!1,u=0,H=0,K=!1,R=!1,W={},M=!1,F=[],I={},ka={column:!0,columnrange:!0,bar:!0,area:!0,arearange:!0},
Q={scatter:!0,bubble:!0},y={pointSize:1,lineWidth:1,fillColor:"#AA00AA",useAlpha:!0,usePreallocated:!1,useGPUTranslations:!1,debug:{timeRendering:!1,timeSeriesProcessing:!1,timeSetup:!1,timeBufferCopy:!1,timeKDTree:!1,showSkipSummary:!1}};return W={allocateBufferForSingleSeries:function(a){var b=0;y.usePreallocated&&(a.isSeriesBoosting&&(b=l(a)),v.allocate(b))},pushSeries:function(a){0<F.length&&F[F.length-1].hasMarkers&&(F[F.length-1].markerTo=R.length);y.debug.timeSeriesProcessing&&console.time("building "+
a.type+" series");F.push({segments:[],markerFrom:R.length,colorData:[],series:a,zMin:Number.MAX_VALUE,zMax:-Number.MAX_VALUE,hasMarkers:a.options.marker?!1!==a.options.marker.enabled:!1,showMarkers:!0,drawMode:{area:"lines",arearange:"lines",areaspline:"line_strip",column:"lines",columnrange:"lines",bar:"lines",line:"line_strip",scatter:"points",heatmap:"triangles",treemap:"triangles",bubble:"points"}[a.type]||"line_strip"});A(a,F[F.length-1]);y.debug.timeSeriesProcessing&&console.timeEnd("building "+
a.type+" series")},setSize:function(a,b){u===a&&H===b||!k||(u=a,H=b,k.bind(),k.setPMatrix([2/u,0,0,0,0,-(2/H),0,0,0,0,-2,0,-1,1,-1,1]))},inited:function(){return M},setThreshold:J,init:function(a,b){function c(a,b){var f={isReady:!1,texture:n.createElement("canvas"),handle:d.createTexture()},c=f.texture.getContext("2d");I[a]=f;f.texture.width=512;f.texture.height=512;c.mozImageSmoothingEnabled=!1;c.webkitImageSmoothingEnabled=!1;c.msImageSmoothingEnabled=!1;c.imageSmoothingEnabled=!1;c.strokeStyle=
"rgba(255, 255, 255, 0)";c.fillStyle="#FFF";b(c);try{d.activeTexture(d.TEXTURE0),d.bindTexture(d.TEXTURE_2D,f.handle),d.texImage2D(d.TEXTURE_2D,0,d.RGBA,d.RGBA,d.UNSIGNED_BYTE,f.texture),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_WRAP_S,d.CLAMP_TO_EDGE),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_WRAP_T,d.CLAMP_TO_EDGE),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MAG_FILTER,d.LINEAR),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MIN_FILTER,d.LINEAR),d.bindTexture(d.TEXTURE_2D,null),f.isReady=!0}catch(Y){}}var l=0,g=["webgl",
"experimental-webgl","moz-webgl","webkit-3d"];M=!1;if(!a)return!1;for(y.debug.timeSetup&&console.time("gl setup");l<g.length&&!(d=a.getContext(g[l],{}));l++);if(d)b||f();else return!1;d.enable(d.BLEND);d.blendFunc(d.SRC_ALPHA,d.ONE_MINUS_SRC_ALPHA);d.disable(d.DEPTH_TEST);d.depthFunc(d.LESS);k=w(d);if(!k)return!1;v=p(d,k);c("circle",function(a){a.beginPath();a.arc(256,256,256,0,2*Math.PI);a.stroke();a.fill()});c("square",function(a){a.fillRect(0,0,512,512)});c("diamond",function(a){a.beginPath();
a.moveTo(256,0);a.lineTo(512,256);a.lineTo(256,512);a.lineTo(0,256);a.lineTo(256,0);a.fill()});c("triangle",function(a){a.beginPath();a.moveTo(0,512);a.lineTo(256,0);a.lineTo(512,512);a.lineTo(0,512);a.fill()});c("triangle-down",function(a){a.beginPath();a.moveTo(0,0);a.lineTo(256,512);a.lineTo(512,0);a.lineTo(0,0);a.fill()});M=!0;y.debug.timeSetup&&console.timeEnd("gl setup");return!0},render:r,settings:y,valid:function(){return!1!==d},clear:D,flush:f,setXAxis:a,setYAxis:N,data:K,gl:function(){return d},
allocateBuffer:function(a){var b=0;y.usePreallocated&&(a.series.forEach(function(a){a.isSeriesBoosting&&(b+=l(a))}),v.allocate(b))},destroy:function(){f();v.destroy();k.destroy();d&&(t(I,function(a){I[a].handle&&d.deleteTexture(I[a].handle)}),d.canvas.width=1,d.canvas.height=1)},setOptions:function(a){m(!0,y,a)}}}});u(c,"modules/boost/boost-attach.js",[c["parts/Globals.js"],c["modules/boost/wgl-renderer.js"],c["parts/Utilities.js"]],function(c,w,p){var m=p.error,r=c.win.document,e=r.createElement("canvas");
return function(q,p){var t=q.chartWidth,n=q.chartHeight,b=q,h=q.seriesGroup||p.group,g=r.implementation.hasFeature("www.http://w3.org/TR/SVG11/feature#Extensibility","1.1");b=q.isChartSeriesBoosting()?q:p;g=!1;b.renderTarget||(b.canvas=e,q.renderer.forExport||!g?(b.renderTarget=q.renderer.image("",0,0,t,n).addClass("highcharts-boost-canvas").add(h),b.boostClear=function(){b.renderTarget.attr({href:""})},b.boostCopy=function(){b.boostResizeTarget();b.renderTarget.attr({href:b.canvas.toDataURL("image/png")})}):
(b.renderTargetFo=q.renderer.createElement("foreignObject").add(h),b.renderTarget=r.createElement("canvas"),b.renderTargetCtx=b.renderTarget.getContext("2d"),b.renderTargetFo.element.appendChild(b.renderTarget),b.boostClear=function(){b.renderTarget.width=b.canvas.width;b.renderTarget.height=b.canvas.height},b.boostCopy=function(){b.renderTarget.width=b.canvas.width;b.renderTarget.height=b.canvas.height;b.renderTargetCtx.drawImage(b.canvas,0,0)}),b.boostResizeTarget=function(){t=q.chartWidth;n=q.chartHeight;
(b.renderTargetFo||b.renderTarget).attr({x:0,y:0,width:t,height:n}).css({pointerEvents:"none",mixedBlendMode:"normal",opacity:1});b instanceof c.Chart&&b.markerGroup.translate(q.plotLeft,q.plotTop)},b.boostClipRect=q.renderer.clipRect(),(b.renderTargetFo||b.renderTarget).clip(b.boostClipRect),b instanceof c.Chart&&(b.markerGroup=b.renderer.g().add(h),b.markerGroup.translate(p.xAxis.pos,p.yAxis.pos)));b.canvas.width=t;b.canvas.height=n;b.boostClipRect.attr(q.getBoostClipRect(b));b.boostResizeTarget();
b.boostClear();b.ogl||(b.ogl=w(function(){b.ogl.settings.debug.timeBufferCopy&&console.time("buffer copy");b.boostCopy();b.ogl.settings.debug.timeBufferCopy&&console.timeEnd("buffer copy")}),b.ogl.init(b.canvas)||m("[highcharts boost] - unable to init WebGL renderer"),b.ogl.setOptions(q.options.boost||{}),b instanceof c.Chart&&b.ogl.allocateBuffer(q));b.ogl.setSize(t,n);return b.ogl}});u(c,"modules/boost/boost-utils.js",[c["parts/Globals.js"],c["modules/boost/boostable-map.js"],c["modules/boost/boost-attach.js"]],
function(c,w,p){function m(){for(var b=[],c=0;c<arguments.length;c++)b[c]=arguments[c];var e=-Number.MAX_VALUE;b.forEach(function(b){if("undefined"!==typeof b&&null!==b&&"undefined"!==typeof b.length&&0<b.length)return e=b.length,!0});return e}function r(b,c,e){b&&c.renderTarget&&c.canvas&&!(e||c.chart).isChartSeriesBoosting()&&b.render(e||c.chart)}function e(b,c){b&&c.renderTarget&&c.canvas&&!c.chart.isChartSeriesBoosting()&&b.allocateBufferForSingleSeries(c)}function q(b,c,e,h,f,a){f=f||0;h=h||
3E3;for(var l=f+h,g=!0;g&&f<l&&f<b.length;)g=c(b[f],f),++f;g&&(f<b.length?a?q(b,c,e,h,f,a):t.requestAnimationFrame?t.requestAnimationFrame(function(){q(b,c,e,h,f)}):setTimeout(function(){q(b,c,e,h,f)}):e&&e())}function v(){var b=0,c,e=["webgl","experimental-webgl","moz-webgl","webkit-3d"],h=!1;if("undefined"!==typeof t.WebGLRenderingContext)for(c=n.createElement("canvas");b<e.length;b++)try{if(h=c.getContext(e[b]),"undefined"!==typeof h&&null!==h)return!0}catch(f){}return!1}var t=c.win,n=t.document,
b=c.pick,h={patientMax:m,boostEnabled:function(c){return b(c&&c.options&&c.options.boost&&c.options.boost.enabled,!0)},shouldForceChartSeriesBoosting:function(c){var e=0,h=0,g=b(c.options.boost&&c.options.boost.allowForce,!0);if("undefined"!==typeof c.boostForceChartBoost)return c.boostForceChartBoost;if(1<c.series.length)for(var f=0;f<c.series.length;f++){var a=c.series[f];0!==a.options.boostThreshold&&!1!==a.visible&&"heatmap"!==a.type&&(w[a.type]&&++h,m(a.processedXData,a.options.data,a.points)>=
(a.options.boostThreshold||Number.MAX_VALUE)&&++e)}c.boostForceChartBoost=g&&(h===c.series.length&&0<e||5<e);return c.boostForceChartBoost},renderIfNotSeriesBoosting:r,allocateIfNotSeriesBoosting:e,eachAsync:q,hasWebGLSupport:v,pointDrawHandler:function(b){var c=!0;this.chart.options&&this.chart.options.boost&&(c="undefined"===typeof this.chart.options.boost.enabled?!0:this.chart.options.boost.enabled);if(!c||!this.isSeriesBoosting)return b.call(this);this.chart.isBoosting=!0;if(b=p(this.chart,this))e(b,
this),b.pushSeries(this);r(b,this)}};c.hasWebGLSupport=v;return h});u(c,"modules/boost/boost-init.js",[c["parts/Globals.js"],c["parts/Utilities.js"],c["modules/boost/boost-utils.js"],c["modules/boost/boost-attach.js"]],function(c,w,p,u){var m=w.addEvent,e=w.extend,q=w.fireEvent,v=w.wrap,t=c.Series,n=c.seriesTypes,b=function(){},h=p.eachAsync,g=p.pointDrawHandler,l=p.allocateIfNotSeriesBoosting,G=p.renderIfNotSeriesBoosting,A=p.shouldForceChartSeriesBoosting,f;return function(){e(t.prototype,{renderCanvas:function(){function a(a,
b){var c=!1,f="undefined"===typeof k.index,e=!0;if(!f){if(ma){var h=a[0];var g=a[1]}else h=a,g=r[b];X?(ma&&(g=a.slice(1,3)),c=g[0],g=g[1]):ja&&(h=a.x,g=a.stackY,c=g-a.y);va||(e=g>=A&&g<=F);if(null!==g&&h>=v&&h<=w&&e)if(a=n.toPixels(h,!0),Q){if("undefined"===typeof T||a===D){X||(c=g);if("undefined"===typeof Y||g>ca)ca=g,Y=b;if("undefined"===typeof T||c<ba)ba=c,T=b}a!==D&&("undefined"!==typeof T&&(g=d.toPixels(ca,!0),S=d.toPixels(ba,!0),da(a,g,Y),S!==g&&da(a,S,T)),T=Y=void 0,D=a)}else g=Math.ceil(d.toPixels(g,
!0)),da(a,g,b)}return!f}function c(){q(e,"renderedCanvas");delete e.buildKDTree;e.buildKDTree();oa.debug.timeKDTree&&console.timeEnd("kd tree building")}var e=this,m=e.options||{},g=!1,k=e.chart,n=this.xAxis,d=this.yAxis,p=m.xData||e.processedXData,r=m.yData||e.processedYData,t=m.data;g=n.getExtremes();var v=g.min,w=g.max;g=d.getExtremes();var A=g.min,F=g.max,I={},D,Q=!!e.sampling,y=!1!==m.enableMouseTracking,S=d.getThreshold(m.threshold),X=e.pointArrayMap&&"low,high"===e.pointArrayMap.join(","),
ja=!!m.stacking,la=e.cropStart||0,va=e.requireSorting,ma=!p,ba,ca,T,Y,wa="x"===m.findNearestPointBy,na=this.xData||this.options.xData||this.processedXData||!1,da=function(a,b,c){a=Math.ceil(a);f=wa?a:a+","+b;y&&!I[f]&&(I[f]=!0,k.inverted&&(a=n.len-a,b=d.len-b),xa.push({x:na?na[la+c]:!1,clientX:a,plotX:a,plotY:b,i:la+c}))};g=u(k,e);k.isBoosting=!0;var oa=g.settings;if(this.visible){(this.points||this.graph)&&this.destroyGraphics();k.isChartSeriesBoosting()?(this.markerGroup&&this.markerGroup!==k.markerGroup&&
this.markerGroup.destroy(),this.markerGroup=k.markerGroup,this.renderTarget&&(this.renderTarget=this.renderTarget.destroy())):(this.markerGroup===k.markerGroup&&(this.markerGroup=void 0),this.markerGroup=e.plotGroup("markerGroup","markers",!0,1,k.seriesGroup));var xa=this.points=[];e.buildKDTree=b;g&&(l(g,this),g.pushSeries(e),G(g,this,k));k.renderer.forExport||(oa.debug.timeKDTree&&console.time("kd tree building"),h(ja?e.data:p||t,a,c))}}});["heatmap","treemap"].forEach(function(a){n[a]&&v(n[a].prototype,
"drawPoints",g)});n.bubble&&(delete n.bubble.prototype.buildKDTree,v(n.bubble.prototype,"markerAttribs",function(a){return this.isSeriesBoosting?!1:a.apply(this,[].slice.call(arguments,1))}));n.scatter.prototype.fill=!0;e(n.area.prototype,{fill:!0,fillOpacity:!0,sampling:!0});e(n.column.prototype,{fill:!0,sampling:!0});c.Chart.prototype.callbacks.push(function(a){m(a,"predraw",function(){a.boostForceChartBoost=void 0;a.boostForceChartBoost=A(a);a.isBoosting=!1;!a.isChartSeriesBoosting()&&a.didBoost&&
(a.didBoost=!1);a.boostClear&&a.boostClear();a.canvas&&a.ogl&&a.isChartSeriesBoosting()&&(a.didBoost=!0,a.ogl.allocateBuffer(a));a.markerGroup&&a.xAxis&&0<a.xAxis.length&&a.yAxis&&0<a.yAxis.length&&a.markerGroup.translate(a.xAxis[0].pos,a.yAxis[0].pos)});m(a,"render",function(){a.ogl&&a.isChartSeriesBoosting()&&a.ogl.render(a)})})}});u(c,"modules/boost/boost-overrides.js",[c["parts/Globals.js"],c["parts/Point.js"],c["parts/Utilities.js"],c["modules/boost/boost-utils.js"],c["modules/boost/boostables.js"],
c["modules/boost/boostable-map.js"]],function(c,w,p,u,r,e){var m=p.addEvent,v=p.error,t=p.isNumber,n=p.pick,b=p.wrap,h=u.boostEnabled,g=u.shouldForceChartSeriesBoosting;p=c.Chart;var l=c.Series,D=c.seriesTypes,A=c.getOptions().plotOptions;p.prototype.isChartSeriesBoosting=function(){return n(this.options.boost&&this.options.boost.seriesThreshold,50)<=this.series.length||g(this)};p.prototype.getBoostClipRect=function(b){var a={x:this.plotLeft,y:this.plotTop,width:this.plotWidth,height:this.plotHeight};
b===this&&this.yAxis.forEach(function(b){a.y=Math.min(b.pos,a.y);a.height=Math.max(b.pos-this.plotTop+b.len,a.height)},this);return a};l.prototype.getPoint=function(b){var a=b,c=this.xData||this.options.xData||this.processedXData||!1;!b||b instanceof this.pointClass||(a=(new this.pointClass).init(this,this.options.data[b.i],c?c[b.i]:void 0),a.category=n(this.xAxis.categories?this.xAxis.categories[a.x]:a.x,a.x),a.dist=b.dist,a.distX=b.distX,a.plotX=b.plotX,a.plotY=b.plotY,a.index=b.i,a.isInside=this.isPointInside(b));
return a};b(l.prototype,"searchPoint",function(b){return this.getPoint(b.apply(this,[].slice.call(arguments,1)))});b(w.prototype,"haloPath",function(b){var a=this.series,c=this.plotX,f=this.plotY,e=a.chart.inverted;a.isSeriesBoosting&&e&&(this.plotX=a.yAxis.len-f,this.plotY=a.xAxis.len-c);var g=b.apply(this,Array.prototype.slice.call(arguments,1));a.isSeriesBoosting&&e&&(this.plotX=c,this.plotY=f);return g});b(l.prototype,"markerAttribs",function(b,a){var c=a.plotX,f=a.plotY,e=this.chart.inverted;
this.isSeriesBoosting&&e&&(a.plotX=this.yAxis.len-f,a.plotY=this.xAxis.len-c);var g=b.apply(this,Array.prototype.slice.call(arguments,1));this.isSeriesBoosting&&e&&(a.plotX=c,a.plotY=f);return g});m(l,"destroy",function(){var b=this,a=b.chart;a.markerGroup===b.markerGroup&&(b.markerGroup=null);a.hoverPoints&&(a.hoverPoints=a.hoverPoints.filter(function(a){return a.series===b}));a.hoverPoint&&a.hoverPoint.series===b&&(a.hoverPoint=null)});b(l.prototype,"getExtremes",function(b){if(!this.isSeriesBoosting||
!this.hasExtremes||!this.hasExtremes())return b.apply(this,Array.prototype.slice.call(arguments,1))});["translate","generatePoints","drawTracker","drawPoints","render"].forEach(function(c){function a(a){var b=this.options.stacking&&("translate"===c||"generatePoints"===c);if(!this.isSeriesBoosting||b||!h(this.chart)||"heatmap"===this.type||"treemap"===this.type||!e[this.type]||0===this.options.boostThreshold)a.call(this);else if(this[c+"Canvas"])this[c+"Canvas"]()}b(l.prototype,c,a);"translate"===
c&&"column bar arearange columnrange heatmap treemap".split(" ").forEach(function(e){D[e]&&b(D[e].prototype,c,a)})});b(l.prototype,"processData",function(b){function a(a){return f.chart.isChartSeriesBoosting()||(a?a.length:0)>=(f.options.boostThreshold||Number.MAX_VALUE)}var f=this,g=this.options.data;h(this.chart)&&e[this.type]?(a(g)&&"heatmap"!==this.type&&"treemap"!==this.type&&!this.options.stacking&&this.hasExtremes&&this.hasExtremes(!0)||(b.apply(this,Array.prototype.slice.call(arguments,1)),
g=this.processedXData),(this.isSeriesBoosting=a(g))?(g=this.getFirstValidPoint(this.options.data),t(g)||c.isArray(g)||v(12,!1,this.chart),this.enterBoost()):this.exitBoost&&this.exitBoost()):b.apply(this,Array.prototype.slice.call(arguments,1))});m(l,"hide",function(){this.canvas&&this.renderTarget&&(this.ogl&&this.ogl.clear(),this.boostClear())});l.prototype.enterBoost=function(){this.alteredByBoost=[];["allowDG","directTouch","stickyTracking"].forEach(function(b){this.alteredByBoost.push({prop:b,
val:this[b],own:Object.hasOwnProperty.call(this,b)})},this);this.directTouch=this.allowDG=!1;this.stickyTracking=!0;this.labelBySeries&&(this.labelBySeries=this.labelBySeries.destroy())};l.prototype.exitBoost=function(){(this.alteredByBoost||[]).forEach(function(b){b.own?this[b.prop]=b.val:delete this[b.prop]},this);this.boostClear&&this.boostClear()};l.prototype.hasExtremes=function(b){var a=this.options,c=this.xAxis&&this.xAxis.options,e=this.yAxis&&this.yAxis.options,f=this.colorAxis&&this.colorAxis.options;
return a.data.length>(a.boostThreshold||Number.MAX_VALUE)&&t(e.min)&&t(e.max)&&(!b||t(c.min)&&t(c.max))&&(!f||t(f.min)&&t(f.max))};l.prototype.destroyGraphics=function(){var b=this,a=this.points,c,e;if(a)for(e=0;e<a.length;e+=1)(c=a[e])&&c.destroyElements&&c.destroyElements();["graph","area","tracker"].forEach(function(a){b[a]&&(b[a]=b[a].destroy())})};r.forEach(function(b){A[b]&&(A[b].boostThreshold=5E3,A[b].boostData=[],D[b].prototype.fillOpacity=!0)})});u(c,"modules/boost/named-colors.js",[c["parts/Color.js"]],
function(c){var m={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",
darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",feldspar:"#d19275",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",
goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslateblue:"#8470ff",
lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",
oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",
skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",violetred:"#d02090",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};return c.names=m});u(c,"modules/boost/boost.js",[c["parts/Globals.js"],c["modules/boost/boost-utils.js"],c["modules/boost/boost-init.js"],c["parts/Utilities.js"]],function(c,
u,p,G){G=G.error;u=u.hasWebGLSupport;u()?p():"undefined"!==typeof c.initCanvasBoost?c.initCanvasBoost():G(26)});u(c,"masters/modules/boost.src.js",[],function(){})});
//# sourceMappingURL=boost.js.map
