/* Highstock JS v8.2.2 (2020-10-22) (c) 2009-2018 Torstein Honsi License: www.highcharts.com/license */ (function(T,Q){"object"===typeof module&&module.exports?(Q["default"]=Q,module.exports=T.document?Q(T):Q):"function"===typeof define&&define.amd?define("highcharts/highstock",function(){return Q(T)}):(T.Highcharts&&T.Highcharts.error(16,!0),T.Highcharts=Q(T))})("undefined"!==typeof window?window:this,function(T){function Q(B,t,k,D){B.hasOwnProperty(t)||(B[t]=D.apply(null,k))}var k={};Q(k,"Core/Globals.js",[],function(){var B="undefined"!==typeof T?T:"undefined"!==typeof window?window:{},t=B.document, k=B.navigator&&B.navigator.userAgent||"",D=t&&t.createElementNS&&!!t.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,J=/(edge|msie|trident)/i.test(k)&&!B.opera,M=-1!==k.indexOf("Firefox"),n=-1!==k.indexOf("Chrome"),z=M&&4>parseInt(k.split("Firefox/")[1],10);return{product:"Highcharts",version:"8.2.2",deg2rad:2*Math.PI/360,doc:t,hasBidiBug:z,hasTouch:!!B.TouchEvent,isMS:J,isWebKit:-1!==k.indexOf("AppleWebKit"),isFirefox:M,isChrome:n,isSafari:!n&&-1!==k.indexOf("Safari"),isTouchDevice:/(Mobile|Android|Windows Phone)/.test(k), SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:D,win:B,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[],dateFormats:{}}});Q(k,"Core/Utilities.js",[k["Core/Globals.js"]],function(B){function t(c,l,x,a){var e=l?"Highcharts error":"Highcharts warning";32===c&&(c=e+": Deprecated member");var v=m(c),f=v?e+" #"+c+": www.highcharts.com/errors/"+c+"/":c.toString();e=function(){if(l)throw Error(f);d.console&&-1===t.messages.indexOf(f)&& console.log(f)};if("undefined"!==typeof a){var R="";v&&(f+="?");W(a,function(c,l){R+="\n - "+l+": "+c;v&&(f+=encodeURI(l)+"="+encodeURI(c))});f+=R}x?ca(x,"displayError",{code:c,message:f,params:a},e):e();t.messages.push(f)}function k(){var c,l=arguments,x={},a=function(c,l){"object"!==typeof c&&(c={});W(l,function(x,e){!D(x,!0)||r(x)||w(x)?c[e]=l[e]:c[e]=a(c[e]||{},x)});return c};!0===l[0]&&(x=l[1],l=Array.prototype.slice.call(l,2));var e=l.length;for(c=0;cc&&-Infinity=a&&(l=[1/a])));for(e=0;e=c||!v&&R<=(l[e]+(l[e+1]||l[e]))/2);e++);return f=x(f*a,-Math.round(Math.log(.001)/Math.LN10))},A=B.stableSort=function(c,l){var x=c.length,a,e;for(e=0;ex&&(x=c[l]);return x},c=B.destroyObjectProperties=function(c,l){W(c,function(x,a){x&&x!==l&&x.destroy&&x.destroy();delete c[a]})},l=B.discardElement=function(c){var l=B.garbageBin;l||(l=p("div"));c&&l.appendChild(c);l.innerHTML=""},x=B.correctFloat=function(c,l){return parseFloat(c.toPrecision(l||14))},R=B.timeUnits={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5,month:24192E5,year:314496E5},S= B.numberFormat=function(c,l,x,a){c=+c||0;l=+l;var e=B.defaultOptions.lang,v=(c.toString().split(".")[1]||"").split("e")[0].length,f=c.toString().split("e");if(-1===l)l=Math.min(v,20);else if(!m(l))l=2;else if(l&&f[1]&&0>f[1]){var R=l+ +f[1];0<=R?(f[0]=(+f[0]).toExponential(R).split("e")[0],l=R):(f[0]=f[0].split(".")[0]||0,c=20>l?(f[0]*Math.pow(10,f[1])).toFixed(l):0,f[1]=0)}var b=(Math.abs(f[1]?f[0]:c)+Math.pow(10,-Math.max(l,v)-1)).toFixed(l);v=String(O(b));R=3c?"-":"")+(R?v.substr(0,R)+a:"");c+=v.substr(R).replace(/(\d{3})(?=\d)/g,"$1"+a);l&&(c+=x+b.slice(-l));f[1]&&0!==+c&&(c+="e"+f[1]);return c};Math.easeInOutSine=function(c){return-.5*(Math.cos(Math.PI*c)-1)};var da=B.getStyle=function(c,l,x){if("width"===l)return l=Math.min(c.offsetWidth,c.scrollWidth),x=c.getBoundingClientRect&&c.getBoundingClientRect().width,x=l-1&&(l=Math.floor(x)),Math.max(0,l-B.getStyle(c,"padding-left")-B.getStyle(c,"padding-right"));if("height"=== l)return Math.max(0,Math.min(c.offsetHeight,c.scrollHeight)-B.getStyle(c,"padding-top")-B.getStyle(c,"padding-bottom"));d.getComputedStyle||t(27,!0);if(c=d.getComputedStyle(c,void 0))c=c.getPropertyValue(l),M(x,"opacity"!==l)&&(c=O(c));return c},ha=B.inArray=function(c,l,x){t(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"});return l.indexOf(c,x)},Y=B.find=Array.prototype.find?function(c,l){return c.find(l)}:function(c,l){var x,a=c.length;for(x=0;xl?c>16,(n&65280)>>8,n&255,1]:4===d&&(z=[(n&3840)>>4|(n&3840)>>8,(n&240)>>4|n&240,(n&15)<<4|n&15,1])}if(!z)for(G=this.parsers.length;G--&& !z;){var O=this.parsers[G];(d=O.regex.exec(n))&&(z=O.parse(d))}}this.rgba=z||[]};t.prototype.get=function(n){var z=this.input,G=this.rgba;if("undefined"!==typeof this.stops){var d=D(z);d.stops=[].concat(d.stops);this.stops.forEach(function(O,u){d.stops[u]=[d.stops[u][0],O.get(n)]})}else d=G&&k(G[0])?"rgb"===n||!n&&1===G[3]?"rgb("+G[0]+","+G[1]+","+G[2]+")":"a"===n?G[3]:"rgba("+G.join(",")+")":z;return d};t.prototype.brighten=function(n){var z,G=this.rgba;if(this.stops)this.stops.forEach(function(d){d.brighten(n)}); else if(k(n)&&0!==n)for(z=0;3>z;z++)G[z]+=J(255*n),0>G[z]&&(G[z]=0),255d)for(var O=0;O=u+this.startTime){this.now=this.end;this.pos=1;this.update();var w=F[this.prop]=!0;J(F,function(r){!0!==r&&(w=!1)});w&&O&&O.call(d);n=!1}else this.pos=G.easing((z-this.startTime)/u),this.now=this.start+(this.end-this.start)*this.pos,this.update(),n=!0;return n};t.prototype.initPath=function(n,z,G){function d(h,b){for(;h.lengthl.width)l={width:0,height:0}}else l=this.htmlGetBBox();x.isSVG&&(a=l.width,x=l.height,H&&(l.height=x={"11px,17":14,"13px,20":16}[f&&f.fontSize+","+Math.round(x)]||x),c&&(f=c*z,l.width=Math.abs(x*Math.sin(f))+Math.abs(a*Math.cos(f)),l.height=Math.abs(x*Math.cos(f))+ Math.abs(a*Math.sin(f))));if(A&&0]*>/g,"").replace(/</g, "<").replace(/>/g,">")))};C.prototype.toFront=function(){var a=this.element;a.parentNode.appendChild(a);return this};C.prototype.translate=function(a,c){return this.attr({translateX:a,translateY:c})};C.prototype.updateShadows=function(a,c,l){var x=this.shadows;if(x)for(var e=x.length;e--;)l.call(x[e],"height"===a?Math.max(c-(x[e].cutHeight||0),0):"d"===a?this.d:c,a,x[e])};C.prototype.updateTransform=function(){var a=this.translateX||0,c=this.translateY||0,l=this.scaleX,x=this.scaleY,e=this.inverted, f=this.rotation,b=this.matrix,p=this.element;e&&(a+=this.width,c+=this.height);a=["translate("+a+","+c+")"];h(b)&&a.push("matrix("+b.join(",")+")");e?a.push("rotate(90) scale(-1,1)"):f&&a.push("rotate("+f+" "+N(this.rotationOriginX,p.getAttribute("x"),0)+" "+N(this.rotationOriginY,p.getAttribute("y")||0)+")");(h(l)||h(x))&&a.push("scale("+N(l,1)+" "+N(x,1)+")");a.length&&p.setAttribute("transform",a.join(" "))};C.prototype.visibilitySetter=function(a,c,l){"inherit"===a?l.removeAttribute(c):this[c]!== a&&l.setAttribute(c,a);this[c]=a};C.prototype.xGetter=function(a){"circle"===this.element.nodeName&&("x"===a?a="cx":"y"===a&&(a="cy"));return this._defaultGetter(a)};C.prototype.zIndexSetter=function(a,c){var l=this.renderer,x=this.parentGroup,e=(x||l).element||l.box,f=this.element,b=!1;l=e===l.box;var p=this.added;var g;h(a)?(f.setAttribute("data-z-index",a),a=+a,this[c]===a&&(p=!1)):h(this[c])&&f.removeAttribute("data-z-index");this[c]=a;if(p){(a=this.zIndex)&&x&&(x.handleZ=!0);c=e.childNodes;for(g= c.length-1;0<=g&&!b;g--){x=c[g];p=x.getAttribute("data-z-index");var v=!h(p);if(x!==f)if(0>a&&v&&!l&&!g)e.insertBefore(f,c[g]),b=!0;else if(P(p)<=a||v&&(!h(a)||0<=a))e.insertBefore(f,c[g+1]||null),b=!0}b||(e.insertBefore(f,c[l?3:0]||null),b=!0)}return b};return C}();k.prototype["stroke-widthSetter"]=k.prototype.strokeSetter;k.prototype.yGetter=k.prototype.xGetter;k.prototype.matrixSetter=k.prototype.rotationOriginXSetter=k.prototype.rotationOriginYSetter=k.prototype.rotationSetter=k.prototype.scaleXSetter= k.prototype.scaleYSetter=k.prototype.translateXSetter=k.prototype.translateYSetter=k.prototype.verticalAlignSetter=function(a,e){this[e]=a;this.doTransform=!0};I.SVGElement=k;return I.SVGElement});Q(k,"Core/Renderer/SVG/SVGLabel.js",[k["Core/Renderer/SVG/SVGElement.js"],k["Core/Utilities.js"]],function(k,t){var B=this&&this.__extends||function(){var n=function(d,O){n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(u,d){u.__proto__=d}||function(u,d){for(var w in d)d.hasOwnProperty(w)&& (u[w]=d[w])};return n(d,O)};return function(d,O){function u(){this.constructor=d}n(d,O);d.prototype=null===O?Object.create(O):(u.prototype=O.prototype,new u)}}(),D=t.defined,J=t.extend,M=t.isNumber,n=t.merge,z=t.removeEvent;return function(G){function d(O,u,F,w,r,m,L,q,h,b){var g=G.call(this)||this;g.init(O,"g");g.textStr=u;g.x=F;g.y=w;g.anchorX=m;g.anchorY=L;g.baseline=h;g.className=b;"button"!==b&&g.addClass("highcharts-label");b&&g.addClass("highcharts-"+b);g.text=O.text("",0,0,q).attr({zIndex:1}); if("string"===typeof r){var f=/^url\((.*?)\)$/.test(r);if(g.renderer.symbols[r]||f)g.symbolKey=r}g.bBox=d.emptyBBox;g.padding=3;g.paddingLeft=0;g.baselineOffset=0;g.needsBox=O.styledMode||f;g.deferredAttr={};g.alignFactor=0;return g}B(d,G);d.prototype.alignSetter=function(d){d={left:0,center:.5,right:1}[d];d!==this.alignFactor&&(this.alignFactor=d,this.bBox&&M(this.xSetting)&&this.attr({x:this.xSetting}))};d.prototype.anchorXSetter=function(d,u){this.anchorX=d;this.boxAttr(u,Math.round(d)-this.getCrispAdjust()- this.xSetting)};d.prototype.anchorYSetter=function(d,u){this.anchorY=d;this.boxAttr(u,d-this.ySetting)};d.prototype.boxAttr=function(d,u){this.box?this.box.attr(d,u):this.deferredAttr[d]=u};d.prototype.css=function(O){if(O){var u={};O=n(O);d.textProps.forEach(function(w){"undefined"!==typeof O[w]&&(u[w]=O[w],delete O[w])});this.text.css(u);var F="fontSize"in u||"fontWeight"in u;if("width"in u||F)this.updateBoxSize(),F&&this.updateTextPadding()}return k.prototype.css.call(this,O)};d.prototype.destroy= function(){z(this.element,"mouseenter");z(this.element,"mouseleave");this.text&&this.text.destroy();this.box&&(this.box=this.box.destroy());k.prototype.destroy.call(this)};d.prototype.fillSetter=function(d,u){d&&(this.needsBox=!0);this.fill=d;this.boxAttr(u,d)};d.prototype.getBBox=function(){var d=this.bBox,u=this.padding;return{width:d.width+2*u,height:d.height+2*u,x:d.x-u,y:d.y-u}};d.prototype.getCrispAdjust=function(){return this.renderer.styledMode&&this.box?this.box.strokeWidth()%2/2:(this["stroke-width"]? parseInt(this["stroke-width"],10):0)%2/2};d.prototype.heightSetter=function(d){this.heightSetting=d};d.prototype.on=function(d,u){var F=this,w=F.text,r=w&&"SPAN"===w.element.tagName?w:void 0;if(r){var m=function(m){("mouseenter"===d||"mouseleave"===d)&&m.relatedTarget instanceof Element&&(F.element.contains(m.relatedTarget)||r.element.contains(m.relatedTarget))||u.call(F.element,m)};r.on(d,m)}k.prototype.on.call(F,d,m||u);return F};d.prototype.onAdd=function(){var d=this.textStr;this.text.add(this); this.attr({text:D(d)?d:"",x:this.x,y:this.y});this.box&&D(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})};d.prototype.paddingSetter=function(d){D(d)&&d!==this.padding&&(this.padding=d,this.updateTextPadding())};d.prototype.paddingLeftSetter=function(d){D(d)&&d!==this.paddingLeft&&(this.paddingLeft=d,this.updateTextPadding())};d.prototype.rSetter=function(d,u){this.boxAttr(u,d)};d.prototype.shadow=function(d){d&&!this.renderer.styledMode&&(this.updateBoxSize(),this.box&&this.box.shadow(d)); return this};d.prototype.strokeSetter=function(d,u){this.stroke=d;this.boxAttr(u,d)};d.prototype["stroke-widthSetter"]=function(d,u){d&&(this.needsBox=!0);this["stroke-width"]=d;this.boxAttr(u,d)};d.prototype["text-alignSetter"]=function(d){this.textAlign=d};d.prototype.textSetter=function(d){"undefined"!==typeof d&&this.text.attr({text:d});this.updateBoxSize();this.updateTextPadding()};d.prototype.updateBoxSize=function(){var n=this.text.element.style,u={},F=this.padding,w=this.paddingLeft,r=M(this.widthSetting)&& M(this.heightSetting)&&!this.textAlign||!D(this.text.textStr)?d.emptyBBox:this.text.getBBox();this.width=(this.widthSetting||r.width||0)+2*F+w;this.height=(this.heightSetting||r.height||0)+2*F;this.baselineOffset=F+Math.min(this.renderer.fontMetrics(n&&n.fontSize,this.text).b,r.height||Infinity);this.needsBox&&(this.box||(n=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect(),n.addClass(("button"===this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+ this.className+"-box":"")),n.add(this),n=this.getCrispAdjust(),u.x=n,u.y=(this.baseline?-this.baselineOffset:0)+n),u.width=Math.round(this.width),u.height=Math.round(this.height),this.box.attr(J(u,this.deferredAttr)),this.deferredAttr={});this.bBox=r};d.prototype.updateTextPadding=function(){var d=this.text,u=this.baseline?0:this.baselineOffset,F=this.paddingLeft+this.padding;D(this.widthSetting)&&this.bBox&&("center"===this.textAlign||"right"===this.textAlign)&&(F+={center:.5,right:1}[this.textAlign]* (this.widthSetting-this.bBox.width));if(F!==d.x||u!==d.y)d.attr("x",F),d.hasBoxWidthChanged&&(this.bBox=d.getBBox(!0),this.updateBoxSize()),"undefined"!==typeof u&&d.attr("y",u);d.x=F;d.y=u};d.prototype.widthSetter=function(d){this.widthSetting=M(d)?d:void 0};d.prototype.xSetter=function(d){this.x=d;this.alignFactor&&(d-=this.alignFactor*((this.widthSetting||this.bBox.width)+2*this.padding),this["forceAnimate:x"]=!0);this.xSetting=Math.round(d);this.attr("translateX",this.xSetting)};d.prototype.ySetter= function(d){this.ySetting=this.y=Math.round(d);this.attr("translateY",this.ySetting)};d.emptyBBox={width:0,height:0,x:0,y:0};d.textProps="color cursor direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" ");return d}(k)});Q(k,"Core/Renderer/SVG/SVGRenderer.js",[k["Core/Color/Color.js"],k["Core/Globals.js"],k["Core/Renderer/SVG/SVGElement.js"],k["Core/Renderer/SVG/SVGLabel.js"],k["Core/Utilities.js"]],function(k,t,I,D,J){var B= J.addEvent,n=J.attr,z=J.createElement,G=J.css,d=J.defined,O=J.destroyObjectProperties,u=J.extend,F=J.isArray,w=J.isNumber,r=J.isObject,m=J.isString,L=J.merge,q=J.objectEach,h=J.pick,b=J.pInt,g=J.splat,f=J.uniqueKey,a=t.charts,p=t.deg2rad,e=t.doc,E=t.isFirefox,H=t.isMS,y=t.isWebKit;J=t.noop;var N=t.svg,P=t.SVG_NS,K=t.symbolSizes,A=t.win,C=function(){function v(c,l,a,e,f,b,p){this.width=this.url=this.style=this.isSVG=this.imgCount=this.height=this.gradients=this.globalAnimation=this.defs=this.chartIndex= this.cacheKeys=this.cache=this.boxWrapper=this.box=this.alignedObjects=void 0;this.init(c,l,a,e,f,b,p)}v.prototype.init=function(c,l,a,f,b,p,g){var x=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"});g||x.css(this.getStyle(f));f=x.element;c.appendChild(f);n(c,"dir","ltr");-1===c.innerHTML.indexOf("xmlns")&&n(f,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=f;this.boxWrapper=x;this.alignedObjects=[];this.url=(E||y)&&e.getElementsByTagName("base").length?A.location.href.split("#")[0].replace(/<[^>]*>/g, "").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(e.createTextNode("Created with Highcharts 8.2.2"));this.defs=this.createElement("defs").add();this.allowHTML=p;this.forExport=b;this.styledMode=g;this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount=0;this.setSize(l,a,!1);var R;E&&c.getBoundingClientRect&&(l=function(){G(c,{left:0,top:0});R=c.getBoundingClientRect();G(c,{left:Math.ceil(R.left)-R.left+"px",top:Math.ceil(R.top)-R.top+ "px"})},l(),this.unSubPixelFix=B(A,"resize",l))};v.prototype.definition=function(c){function l(c,x){var f;g(c).forEach(function(c){var b=a.createElement(c.tagName),p={};q(c,function(c,l){"tagName"!==l&&"children"!==l&&"textContent"!==l&&(p[l]=c)});b.attr(p);b.add(x||a.defs);c.textContent&&b.element.appendChild(e.createTextNode(c.textContent));l(c.children||[],b);f=b});return f}var a=this;return l(c)};v.prototype.getStyle=function(c){return this.style=u({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif', fontSize:"12px"},c)};v.prototype.setStyle=function(c){this.boxWrapper.css(this.getStyle(c))};v.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width};v.prototype.destroy=function(){var c=this.defs;this.box=null;this.boxWrapper=this.boxWrapper.destroy();O(this.gradients||{});this.gradients=null;c&&(this.defs=c.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=null};v.prototype.createElement=function(c){var l=new this.Element;l.init(this,c);return l};v.prototype.getRadialAttr= function(c,l){return{cx:c[0]-c[2]/2+l.cx*c[2],cy:c[1]-c[2]/2+l.cy*c[2],r:l.r*c[2]}};v.prototype.truncate=function(c,l,a,f,b,p,g){var x=this,R=c.rotation,h,v=f?1:0,E=(a||f).length,S=E,H=[],A=function(c){l.firstChild&&l.removeChild(l.firstChild);c&&l.appendChild(e.createTextNode(c))},y=function(e,p){p=p||e;if("undefined"===typeof H[p])if(l.getSubStringLength)try{H[p]=b+l.getSubStringLength(0,f?p+1:p)}catch(ka){""}else x.getSpanWidth&&(A(g(a||f,e)),H[p]=b+x.getSpanWidth(c,l));return H[p]},m;c.rotation= 0;var C=y(l.textContent.length);if(m=b+C>p){for(;v<=E;)S=Math.ceil((v+E)/2),f&&(h=g(f,S)),C=y(S,h&&h.length-1),v===E?v=E+1:C>p?E=S-1:v=S;0===E?A(""):a&&E===a.length-1||A(h||g(a||f,S))}f&&f.splice(0,S);c.actualWidth=C;c.rotation=R;return m};v.prototype.buildText=function(c){var l=c.element,a=this,f=a.forExport,p=h(c.textStr,"").toString(),g=-1!==p.indexOf("<"),v=l.childNodes,E,H=n(l,"x"),A=c.styles,y=c.textWidth,C=A&&A.lineHeight,K=A&&A.textOutline,r=A&&"ellipsis"===A.textOverflow,d=A&&"nowrap"=== A.whiteSpace,L=A&&A.fontSize,w,u=v.length;A=y&&!c.added&&this.box;var F=function(c){var e;a.styledMode||(e=/(px|em)$/.test(c&&c.style.fontSize)?c.style.fontSize:L||a.style.fontSize||12);return C?b(C):a.fontMetrics(e,c.getAttribute("style")?c:l).h},z=function(c,l){q(a.escapes,function(a,e){l&&-1!==l.indexOf(a)||(c=c.toString().replace(new RegExp(a,"g"),e))});return c},O=function(c,l){var a=c.indexOf("<");c=c.substring(a,c.indexOf(">")-a);a=c.indexOf(l+"=");if(-1!==a&&(a=a+l.length+1,l=c.charAt(a), '"'===l||"'"===l))return c=c.substring(a+1),c.substring(0,c.indexOf(l))},k=//g;var t=[p,r,d,C,K,L,y].join();if(t!==c.textCache){for(c.textCache=t;u--;)l.removeChild(v[u]);g||K||r||y||-1!==p.indexOf(" ")&&(!d||k.test(p))?(A&&A.appendChild(l),g?(p=a.styledMode?p.replace(/<(b|strong)>/g,'').replace(/<(i|em)>/g,''):p.replace(/<(b|strong)>/g,'').replace(/<(i|em)>/g,''), p=p.replace(//g,"").split(k)):p=[p],p=p.filter(function(c){return""!==c}),p.forEach(function(x,b){var p=0,g=0;x=x.replace(/^\s+|\s+$/g,"").replace(//g,"|||");var R=x.split("|||");R.forEach(function(x){if(""!==x||1===R.length){var h={},v=e.createElementNS(a.SVG_NS,"tspan"),S,A;(S=O(x,"class"))&&n(v,"class",S);if(S=O(x,"style"))S=S.replace(/(;| |^)color([ :])/,"$1fill$2"),n(v,"style",S);if((A=O(x,"href"))&& !f&&-1===A.split(":")[0].toLowerCase().indexOf("javascript")){var m=e.createElementNS(a.SVG_NS,"a");n(m,"href",A);n(v,"class","highcharts-anchor");m.appendChild(v);a.styledMode||G(v,{cursor:"pointer"})}x=z(x.replace(/<[a-zA-Z\/](.|\n)*?>/g,"")||" ");if(" "!==x){v.appendChild(e.createTextNode(x));p?h.dx=0:b&&null!==H&&(h.x=H);n(v,h);l.appendChild(m||v);!p&&w&&(!N&&f&&G(v,{display:"block"}),n(v,"dy",F(v)));if(y){var C=x.replace(/([^\^])-/g,"$1- ").split(" ");h=!d&&(1c?c+3:Math.round(1.2*c);return{h:l,b:Math.round(.8*l),f:c}};v.prototype.rotCorr=function(c,l,a){var e=c;l&&a&&(e=Math.max(e*Math.cos(l*p),4)); return{x:-c/3*Math.sin(l*p),y:e}};v.prototype.pathToSegments=function(c){for(var l=[],a=[],e={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},f=0;f":">","'":"'",'"':"""};C.prototype.symbols={circle:function(a,c,l,e){return this.arc(a+l/2,c+e/2,l/2,e/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},square:function(a,c,l,e){return[["M",a,c],["L",a+l,c],["L",a+l,c+e],["L",a,c+e],["Z"]]},triangle:function(a,c,l,e){return[["M",a+l/2,c],["L",a+l,c+e],["L",a,c+e],["Z"]]},"triangle-down":function(a,c,l,e){return[["M",a,c],["L",a+l,c],["L",a+l/2,c+e],["Z"]]},diamond:function(a, c,l,e){return[["M",a+l/2,c],["L",a+l,c+e/2],["L",a+l/2,c+e],["L",a,c+e/2],["Z"]]},arc:function(a,c,l,e,f){var x=[];if(f){var p=f.start||0,b=f.end||0,g=f.r||l;l=f.r||e||l;var R=.001>Math.abs(b-p-2*Math.PI);b-=.001;e=f.innerR;R=h(f.open,R);var E=Math.cos(p),v=Math.sin(p),A=Math.cos(b),y=Math.sin(b);p=h(f.longArc,.001>b-p-Math.PI?0:1);x.push(["M",a+g*E,c+l*v],["A",g,l,0,p,h(f.clockwise,1),a+g*A,c+l*y]);d(e)&&x.push(R?["M",a+e*A,c+e*y]:["L",a+e*A,c+e*y],["A",e,e,0,p,d(f.clockwise)?1-f.clockwise:0,a+e* E,c+e*v]);R||x.push(["Z"])}return x},callout:function(a,c,l,e,f){var x=Math.min(f&&f.r||0,l,e),p=x+6,b=f&&f.anchorX||0;f=f&&f.anchorY||0;var g=[["M",a+x,c],["L",a+l-x,c],["C",a+l,c,a+l,c,a+l,c+x],["L",a+l,c+e-x],["C",a+l,c+e,a+l,c+e,a+l-x,c+e],["L",a+x,c+e],["C",a,c+e,a,c+e,a,c+e-x],["L",a,c+x],["C",a,c,a,c,a+x,c]];b&&b>l?f>c+p&&fb?f>c+p&&fe&&b>a+p&&bf&&b>a+p&&bthis.oldTextWidth)&&((f=this.textPxLength)||(B(n,{width:"",whiteSpace:h||"nowrap"}),f=n.offsetWidth),f=f>b);f&&(/[ \-]/.test(n.textContent||n.innerText)||"ellipsis"===n.style.textOverflow)?(B(n,{width:b+"px",display:"block",whiteSpace:h||"normal"}),this.oldTextWidth=b,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1;g!==this.cTT&&(h=d.fontMetrics(n.style.fontSize,n).b,!J(q)||q===(this.oldRotation|| 0)&&m===this.oldAlign||this.setSpanRotation(q,L,h),this.getSpanCorrection(!J(q)&&this.textPxLength||n.offsetWidth,h,L,q,m));B(n,{left:w+(this.xCorr||0)+"px",top:r+(this.yCorr||0)+"px"});this.cTT=g;this.oldRotation=q;this.oldAlign=m}}else this.alignOnAdd=!0},setSpanRotation:function(d,n,u){var F={},w=this.renderer.getTransformKey();F[w]=F.transform="rotate("+d+"deg)";F[w+(G?"Origin":"-origin")]=F.transformOrigin=100*n+"% "+u+"px";B(this.element,F)},getSpanCorrection:function(d,n,u){this.xCorr=-d*u; this.yCorr=-n}});return t});Q(k,"Core/Renderer/HTML/HTMLRenderer.js",[k["Core/Globals.js"],k["Core/Renderer/SVG/SVGElement.js"],k["Core/Renderer/SVG/SVGRenderer.js"],k["Core/Utilities.js"]],function(k,t,I,D){var B=k.isFirefox,M=k.isMS,n=k.isWebKit,z=k.win,G=D.attr,d=D.createElement,O=D.extend,u=D.pick;O(I.prototype,{getTransformKey:function(){return M&&!/Edge/.test(z.navigator.userAgent)?"-ms-transform":n?"-webkit-transform":B?"MozTransform":z.opera?"-o-transform":""},html:function(F,w,r){var m=this.createElement("span"), L=m.element,q=m.renderer,h=q.isSVG,b=function(b,f){["opacity","visibility"].forEach(function(a){b[a+"Setter"]=function(p,e,g){var h=b.div?b.div.style:f;t.prototype[a+"Setter"].call(this,p,e,g);h&&(h[e]=p)}});b.addedSetters=!0};m.textSetter=function(b){b!==L.innerHTML&&(delete this.bBox,delete this.oldTextWidth);this.textStr=b;L.innerHTML=u(b,"");m.doTransform=!0};h&&b(m,m.element.style);m.xSetter=m.ySetter=m.alignSetter=m.rotationSetter=function(b,f){"align"===f?m.alignValue=m.textAlign=b:m[f]=b; m.doTransform=!0};m.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)};m.attr({text:F,x:Math.round(w),y:Math.round(r)}).css({position:"absolute"});q.styledMode||m.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize});L.style.whiteSpace="nowrap";m.css=m.htmlCss;h&&(m.add=function(g){var f=q.box.parentNode,a=[];if(this.parentGroup=g){var p=g.div;if(!p){for(;g;)a.push(g),g=g.parentGroup;a.reverse().forEach(function(e){function g(a,f){e[f]=a;"translateX"=== f?y.left=a+"px":y.top=a+"px";e.doTransform=!0}var h=G(e.element,"class");p=e.div=e.div||d("div",h?{className:h}:void 0,{position:"absolute",left:(e.translateX||0)+"px",top:(e.translateY||0)+"px",display:e.display,opacity:e.opacity,pointerEvents:e.styles&&e.styles.pointerEvents},p||f);var y=p.style;O(e,{classSetter:function(a){return function(e){this.element.setAttribute("class",e);a.className=e}}(p),on:function(){a[0].div&&m.on.apply({element:a[0].div},arguments);return e},translateXSetter:g,translateYSetter:g}); e.addedSetters||b(e)})}}else p=f;p.appendChild(L);m.added=!0;m.alignOnAdd&&m.htmlUpdateTransform();return m});return m}});return I});Q(k,"Core/Axis/Tick.js",[k["Core/Globals.js"],k["Core/Utilities.js"]],function(k,t){var B=t.clamp,D=t.correctFloat,J=t.defined,M=t.destroyObjectProperties,n=t.extend,z=t.fireEvent,G=t.isNumber,d=t.merge,O=t.objectEach,u=t.pick,F=k.deg2rad;t=function(){function w(r,m,d,q,h){this.isNewLabel=this.isNew=!0;this.axis=r;this.pos=m;this.type=d||"";this.parameters=h||{};this.tickmarkOffset= this.parameters.tickmarkOffset;this.options=this.parameters.options;z(this,"init");d||q||this.addLabel()}w.prototype.addLabel=function(){var r=this,m=r.axis,d=m.options,q=m.chart,h=m.categories,b=m.logarithmic,g=m.names,f=r.pos,a=u(r.options&&r.options.labels,d.labels),p=m.tickPositions,e=f===p[0],E=f===p[p.length-1];g=this.parameters.category||(h?u(h[f],g[f],f):f);var H=r.label;h=(!a.step||1===a.step)&&1===m.tickInterval;p=p.info;var y,N;if(m.dateTime&&p){var P=q.time.resolveDTLFormat(d.dateTimeLabelFormats[!d.grid&& p.higherRanks[f]||p.unitName]);var K=P.main}r.isFirst=e;r.isLast=E;r.formatCtx={axis:m,chart:q,isFirst:e,isLast:E,dateTimeLabelFormat:K,tickPositionInfo:p,value:b?D(b.lin2log(g)):g,pos:f};d=m.labelFormatter.call(r.formatCtx,this.formatCtx);if(N=P&&P.list)r.shortenLabel=function(){for(y=0;ya&&q-p*eb&&(N=Math.round((h-q)/Math.cos(a*F)));else if(h=q+(1-p)*e,q-p*eb&&(H=b-r.x+H*p,y=-1),H=Math.min(E,H),HH||m.autoRotation&&(f.styles||{}).width)N=H;N&&(this.shortenLabel?this.shortenLabel():(P.width=Math.floor(N)+"px",(d.style||{}).textOverflow||(P.textOverflow= "ellipsis"),f.css(P)))};w.prototype.moveLabel=function(r,m){var d=this,q=d.label,h=!1,b=d.axis,g=b.reversed;q&&q.textStr===r?(d.movedLabel=q,h=!0,delete d.label):O(b.ticks,function(a){h||a.isNew||a===d||!a.label||a.label.textStr!==r||(d.movedLabel=a.label,h=!0,a.labelPos=d.movedLabel.xy,delete a.label)});if(!h&&(d.labelPos||q)){var f=d.labelPos||q.xy;q=b.horiz?g?0:b.width+b.left:f.x;b=b.horiz?f.y:g?b.width+b.left:0;d.movedLabel=d.createLabel({x:q,y:b},r,m);d.movedLabel&&d.movedLabel.attr({opacity:0})}}; w.prototype.render=function(r,m,d){var q=this.axis,h=q.horiz,b=this.pos,g=u(this.tickmarkOffset,q.tickmarkOffset);b=this.getPosition(h,b,g,m);g=b.x;var f=b.y;q=h&&g===q.pos+q.len||!h&&f===q.pos?-1:1;d=u(d,1);this.isActive=!0;this.renderGridLine(m,d,q);this.renderMark(b,d,q);this.renderLabel(b,m,d,r);this.isNew=!1;z(this,"afterRender")};w.prototype.renderGridLine=function(r,m,d){var q=this.axis,h=q.options,b=this.gridLine,g={},f=this.pos,a=this.type,p=u(this.tickmarkOffset,q.tickmarkOffset),e=q.chart.renderer, E=a?a+"Grid":"grid",H=h[E+"LineWidth"],y=h[E+"LineColor"];h=h[E+"LineDashStyle"];b||(q.chart.styledMode||(g.stroke=y,g["stroke-width"]=H,h&&(g.dashstyle=h)),a||(g.zIndex=1),r&&(m=0),this.gridLine=b=e.path().attr(g).addClass("highcharts-"+(a?a+"-":"")+"grid-line").add(q.gridGroup));if(b&&(d=q.getPlotLinePath({value:f+p,lineWidth:b.strokeWidth()*d,force:"pass",old:r})))b[r||this.isNew?"attr":"animate"]({d:d,opacity:m})};w.prototype.renderMark=function(d,m,w){var q=this.axis,h=q.options,b=q.chart.renderer, g=this.type,f=g?g+"Tick":"tick",a=q.tickSize(f),p=this.mark,e=!p,E=d.x;d=d.y;var H=u(h[f+"Width"],!g&&q.isXAxis?1:0);h=h[f+"Color"];a&&(q.opposite&&(a[0]=-a[0]),e&&(this.mark=p=b.path().addClass("highcharts-"+(g?g+"-":"")+"tick").add(q.axisGroup),q.chart.styledMode||p.attr({stroke:h,"stroke-width":H})),p[e?"attr":"animate"]({d:this.getMarkPath(E,d,a[0],p.strokeWidth()*w,q.horiz,b),opacity:m}))};w.prototype.renderLabel=function(d,m,w,q){var h=this.axis,b=h.horiz,g=h.options,f=this.label,a=g.labels, p=a.step;h=u(this.tickmarkOffset,h.tickmarkOffset);var e=!0,E=d.x;d=d.y;f&&G(E)&&(f.xy=d=this.getLabelPosition(E,d,f,b,a,h,q,p),this.isFirst&&!this.isLast&&!u(g.showFirstLabel,1)||this.isLast&&!this.isFirst&&!u(g.showLastLabel,1)?e=!1:!b||a.step||a.rotation||m||0===w||this.handleOverflow(d),p&&q%p&&(e=!1),e&&G(d.y)?(d.opacity=w,f[this.isNewLabel?"attr":"animate"](d),this.isNewLabel=!1):(f.attr("y",-9999),this.isNewLabel=!0))};w.prototype.replaceMovedLabel=function(){var d=this.label,m=this.axis,w= m.reversed;if(d&&!this.isNew){var q=m.horiz?w?m.left:m.width+m.left:d.xy.x;w=m.horiz?d.xy.y:w?m.width+m.top:m.top;d.animate({x:q,y:w,opacity:0},void 0,d.destroy);delete this.label}m.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel};return w}();k.Tick=t;return k.Tick});Q(k,"Core/Time.js",[k["Core/Globals.js"],k["Core/Utilities.js"]],function(k,t){var B=t.defined,D=t.error,J=t.extend,M=t.isObject,n=t.merge,z=t.objectEach,G=t.pad,d=t.pick,O=t.splat,u=t.timeUnits,F=k.win;t=function(){function w(d){this.options= {};this.variableTimezone=this.useUTC=!1;this.Date=F.Date;this.getTimezoneOffset=this.timezoneOffsetFunction();this.update(d)}w.prototype.get=function(d,m){if(this.variableTimezone||this.timezoneOffset){var r=m.getTime(),q=r-this.getTimezoneOffset(m);m.setTime(q);d=m["getUTC"+d]();m.setTime(r);return d}return this.useUTC?m["getUTC"+d]():m["get"+d]()};w.prototype.set=function(d,m,w){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===d||"Seconds"===d||"Minutes"===d)return m["setUTC"+ d](w);var q=this.getTimezoneOffset(m);q=m.getTime()-q;m.setTime(q);m["setUTC"+d](w);d=this.getTimezoneOffset(m);q=m.getTime()+d;return m.setTime(q)}return this.useUTC?m["setUTC"+d](w):m["set"+d](w)};w.prototype.update=function(r){var m=d(r&&r.useUTC,!0);this.options=r=n(!0,this.options||{},r);this.Date=r.Date||F.Date||Date;this.timezoneOffset=(this.useUTC=m)&&r.timezoneOffset;this.getTimezoneOffset=this.timezoneOffsetFunction();this.variableTimezone=!(m&&!r.getTimezoneOffset&&!r.timezone)};w.prototype.makeTime= function(r,m,w,q,h,b){if(this.useUTC){var g=this.Date.UTC.apply(0,arguments);var f=this.getTimezoneOffset(g);g+=f;var a=this.getTimezoneOffset(g);f!==a?g+=a-f:f-36E5!==this.getTimezoneOffset(g-36E5)||k.isSafari||(g-=36E5)}else g=(new this.Date(r,m,d(w,1),d(q,0),d(h,0),d(b,0))).getTime();return g};w.prototype.timezoneOffsetFunction=function(){var d=this,m=this.options,w=m.moment||F.moment;if(!this.useUTC)return function(m){return 6E4*(new Date(m.toString())).getTimezoneOffset()};if(m.timezone){if(w)return function(d){return 6E4* -w.tz(d,m.timezone).utcOffset()};D(25)}return this.useUTC&&m.getTimezoneOffset?function(d){return 6E4*m.getTimezoneOffset(d.valueOf())}:function(){return 6E4*(d.timezoneOffset||0)}};w.prototype.dateFormat=function(r,m,w){var q;if(!B(m)||isNaN(m))return(null===(q=k.defaultOptions.lang)||void 0===q?void 0:q.invalidDate)||"";r=d(r,"%Y-%m-%d %H:%M:%S");var h=this;q=new this.Date(m);var b=this.get("Hours",q),g=this.get("Day",q),f=this.get("Date",q),a=this.get("Month",q),p=this.get("FullYear",q),e=k.defaultOptions.lang, E=null===e||void 0===e?void 0:e.weekdays,H=null===e||void 0===e?void 0:e.shortWeekdays;q=J({a:H?H[g]:E[g].substr(0,3),A:E[g],d:G(f),e:G(f,2," "),w:g,b:e.shortMonths[a],B:e.months[a],m:G(a+1),o:a+1,y:p.toString().substr(2,2),Y:p,H:G(b),k:b,I:G(b%12||12),l:b%12||12,M:G(this.get("Minutes",q)),p:12>b?"AM":"PM",P:12>b?"am":"pm",S:G(q.getSeconds()),L:G(Math.floor(m%1E3),3)},k.dateFormats);z(q,function(a,e){for(;-1!==r.indexOf("%"+e);)r=r.replace("%"+e,"function"===typeof a?a.call(h,m):a)});return w?r.substr(0, 1).toUpperCase()+r.substr(1):r};w.prototype.resolveDTLFormat=function(d){return M(d,!0)?d:(d=O(d),{main:d[0],from:d[1],to:d[2]})};w.prototype.getTimeTicks=function(r,m,w,q){var h=this,b=[],g={};var f=new h.Date(m);var a=r.unitRange,p=r.count||1,e;q=d(q,1);if(B(m)){h.set("Milliseconds",f,a>=u.second?0:p*Math.floor(h.get("Milliseconds",f)/p));a>=u.second&&h.set("Seconds",f,a>=u.minute?0:p*Math.floor(h.get("Seconds",f)/p));a>=u.minute&&h.set("Minutes",f,a>=u.hour?0:p*Math.floor(h.get("Minutes",f)/p)); a>=u.hour&&h.set("Hours",f,a>=u.day?0:p*Math.floor(h.get("Hours",f)/p));a>=u.day&&h.set("Date",f,a>=u.month?1:Math.max(1,p*Math.floor(h.get("Date",f)/p)));if(a>=u.month){h.set("Month",f,a>=u.year?0:p*Math.floor(h.get("Month",f)/p));var E=h.get("FullYear",f)}a>=u.year&&h.set("FullYear",f,E-E%p);a===u.week&&(E=h.get("Day",f),h.set("Date",f,h.get("Date",f)-E+q+(E4*u.month|| h.getTimezoneOffset(m)!==h.getTimezoneOffset(w));m=f.getTime();for(f=1;mb.length&&b.forEach(function(a){0===a%18E5&&"000000000"===h.dateFormat("%H%M%S%L",a)&&(g[a]="day")})}b.info=J(r,{higherRanks:g,totalRange:a*p});return b};return w}();k.Time=t;return k.Time});Q(k,"Core/Options.js", [k["Core/Globals.js"],k["Core/Color/Color.js"],k["Core/Time.js"],k["Core/Utilities.js"]],function(k,t,I,D){var B=k.isTouchDevice,M=k.svg;t=t.parse;D=D.merge;"";k.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:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},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:M,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:B?25:10,headerFormat:'{point.key}
',pointFormat:'\u25cf {series.name}: {point.y}
',backgroundColor:t("#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"}};"";k.time=new I(D(k.defaultOptions.global,k.defaultOptions.time));k.dateFormat=function(n,z,G){return k.time.dateFormat(n,z,G)};return{dateFormat:k.dateFormat,defaultOptions:k.defaultOptions,time:k.time}}); Q(k,"Core/Axis/Axis.js",[k["Core/Animation/AnimationUtilities.js"],k["Core/Color/Color.js"],k["Core/Globals.js"],k["Core/Axis/Tick.js"],k["Core/Utilities.js"],k["Core/Options.js"]],function(k,t,I,D,J,M){var n=k.animObject,z=J.addEvent,G=J.arrayMax,d=J.arrayMin,O=J.clamp,u=J.correctFloat,F=J.defined,w=J.destroyObjectProperties,r=J.error,m=J.extend,L=J.fireEvent,q=J.format,h=J.getMagnitude,b=J.isArray,g=J.isFunction,f=J.isNumber,a=J.isString,p=J.merge,e=J.normalizeTickInterval,E=J.objectEach,H=J.pick, y=J.relativeLength,N=J.removeEvent,P=J.splat,K=J.syncTimeout,A=M.defaultOptions,C=I.deg2rad;k=function(){function v(c,a){this.zoomEnabled=this.width=this.visible=this.userOptions=this.translationSlope=this.transB=this.transA=this.top=this.ticks=this.tickRotCorr=this.tickPositions=this.tickmarkOffset=this.tickInterval=this.tickAmount=this.side=this.series=this.right=this.positiveValuesOnly=this.pos=this.pointRangePadding=this.pointRange=this.plotLinesAndBandsGroups=this.plotLinesAndBands=this.paddedTicks= this.overlap=this.options=this.oldMin=this.oldMax=this.offset=this.names=this.minPixelPadding=this.minorTicks=this.minorTickInterval=this.min=this.maxLabelLength=this.max=this.len=this.left=this.labelFormatter=this.labelEdge=this.isLinked=this.height=this.hasVisibleSeries=this.hasNames=this.coll=this.closestPointRange=this.chart=this.categories=this.bottom=this.alternateBands=void 0;this.init(c,a)}v.prototype.init=function(c,a){var l=a.isX,e=this;e.chart=c;e.horiz=c.inverted&&!e.isZAxis?!l:l;e.isXAxis= l;e.coll=e.coll||(l?"xAxis":"yAxis");L(this,"init",{userOptions:a});e.opposite=a.opposite;e.side=a.side||(e.horiz?e.opposite?0:2:e.opposite?1:3);e.setOptions(a);var f=this.options,b=f.type;e.labelFormatter=f.labels.formatter||e.defaultLabelFormatter;e.userOptions=a;e.minPixelPadding=0;e.reversed=f.reversed;e.visible=!1!==f.visible;e.zoomEnabled=!1!==f.zoomEnabled;e.hasNames="category"===b||!0===f.categories;e.categories=f.categories||e.hasNames;e.names||(e.names=[],e.names.keys={});e.plotLinesAndBandsGroups= {};e.positiveValuesOnly=!!e.logarithmic;e.isLinked=F(f.linkedTo);e.ticks={};e.labelEdge=[];e.minorTicks={};e.plotLinesAndBands=[];e.alternateBands={};e.len=0;e.minRange=e.userMinRange=f.minRange||f.maxZoom;e.range=f.range;e.offset=f.offset||0;e.max=null;e.min=null;e.crosshair=H(f.crosshair,P(c.options.tooltip.crosshairs)[l?0:1],!1);a=e.options.events;-1===c.axes.indexOf(e)&&(l?c.axes.splice(c.xAxis.length,0,e):c.axes.push(e),c[e.coll].push(e));e.series=e.series||[];c.inverted&&!e.isZAxis&&l&&"undefined"=== typeof e.reversed&&(e.reversed=!0);e.labelRotation=e.options.labels.rotation;E(a,function(c,a){g(c)&&z(e,a,c)});L(this,"afterInit")};v.prototype.setOptions=function(c){this.options=p(v.defaultOptions,"yAxis"===this.coll&&v.defaultYAxisOptions,[v.defaultTopAxisOptions,v.defaultRightAxisOptions,v.defaultBottomAxisOptions,v.defaultLeftAxisOptions][this.side],p(A[this.coll],c));L(this,"afterSetOptions",{userOptions:c})};v.prototype.defaultLabelFormatter=function(){var c=this.axis,a=f(this.value)?this.value: NaN,e=c.chart.time,b=c.categories,p=this.dateTimeLabelFormat,g=A.lang,h=g.numericSymbols;g=g.numericSymbolMagnitude||1E3;var E=h&&h.length,v=c.options.labels.format;c=c.logarithmic?Math.abs(a):c.tickInterval;var y=this.chart,H=y.numberFormatter;if(v)var m=q(v,this,y);else if(b)m=""+this.value;else if(p)m=e.dateFormat(p,a);else if(E&&1E3<=c)for(;E--&&"undefined"===typeof m;)e=Math.pow(g,E+1),c>=e&&0===10*a%e&&null!==h[E]&&0!==a&&(m=H(a/e,-1)+h[E]);"undefined"===typeof m&&(m=1E4<=Math.abs(a)?H(a,-1): H(a,-1,void 0,""));return m};v.prototype.getSeriesExtremes=function(){var c=this,a=c.chart,e;L(this,"getSeriesExtremes",null,function(){c.hasVisibleSeries=!1;c.dataMin=c.dataMax=c.threshold=null;c.softThreshold=!c.isXAxis;c.stacking&&c.stacking.buildStacks();c.series.forEach(function(l){if(l.visible||!a.options.chart.ignoreHiddenSeries){var x=l.options,b=x.threshold;c.hasVisibleSeries=!0;c.positiveValuesOnly&&0>=b&&(b=null);if(c.isXAxis){if(x=l.xData,x.length){x=c.logarithmic?x.filter(c.validatePositiveValue): x;e=l.getXExtremes(x);var p=e.min;var g=e.max;f(p)||p instanceof Date||(x=x.filter(f),e=l.getXExtremes(x),p=e.min,g=e.max);x.length&&(c.dataMin=Math.min(H(c.dataMin,p),p),c.dataMax=Math.max(H(c.dataMax,g),g))}}else if(l=l.applyExtremes(),f(l.dataMin)&&(p=l.dataMin,c.dataMin=Math.min(H(c.dataMin,p),p)),f(l.dataMax)&&(g=l.dataMax,c.dataMax=Math.max(H(c.dataMax,g),g)),F(b)&&(c.threshold=b),!x.softThreshold||c.positiveValuesOnly)c.softThreshold=!1}})});L(this,"afterGetSeriesExtremes")};v.prototype.translate= function(c,a,e,b,p,g){var l=this.linkedParent||this,x=1,h=0,E=b?l.oldTransA:l.transA;b=b?l.oldMin:l.min;var A=l.minPixelPadding;p=(l.isOrdinal||l.brokenAxis&&l.brokenAxis.hasBreaks||l.logarithmic&&p)&&l.lin2val;E||(E=l.transA);e&&(x*=-1,h=l.len);l.reversed&&(x*=-1,h-=x*(l.sector||l.len));a?(c=(c*x+h-A)/E+b,p&&(c=l.lin2val(c))):(p&&(c=l.val2lin(c)),c=f(b)?x*(c-b)*E+h+x*A+(f(g)?E*g:0):void 0);return c};v.prototype.toPixels=function(c,a){return this.translate(c,!1,!this.horiz,null,!0)+(a?0:this.pos)}; v.prototype.toValue=function(c,a){return this.translate(c-(a?0:this.pos),!0,!this.horiz,null,!0)};v.prototype.getPlotLinePath=function(c){function a(c,a,l){if("pass"!==y&&cl)y?c=O(c,a,l):r=!0;return c}var e=this,b=e.chart,p=e.left,g=e.top,h=c.old,E=c.value,A=c.translatedValue,v=c.lineWidth,y=c.force,m,d,C,q,K=h&&b.oldChartHeight||b.chartHeight,N=h&&b.oldChartWidth||b.chartWidth,r,w=e.transB;c={value:E,lineWidth:v,old:h,force:y,acrossPanes:c.acrossPanes,translatedValue:A};L(this,"getPlotLinePath", c,function(c){A=H(A,e.translate(E,null,null,h));A=O(A,-1E5,1E5);m=C=Math.round(A+w);d=q=Math.round(K-A-w);f(A)?e.horiz?(d=g,q=K-e.bottom,m=C=a(m,p,p+e.width)):(m=p,C=N-e.right,d=q=a(d,g,g+e.height)):(r=!0,y=!1);c.path=r&&!y?null:b.renderer.crispLine([["M",m,d],["L",C,q]],v||1)});return c.path};v.prototype.getLinearTickPositions=function(c,a,e){var l=u(Math.floor(a/c)*c);e=u(Math.ceil(e/c)*c);var f=[],x;u(l+c)===l&&(x=20);if(this.single)return[a];for(a=l;a<=e;){f.push(a);a=u(a+c,x);if(a===b)break; var b=a}return f};v.prototype.getMinorTickInterval=function(){var c=this.options;return!0===c.minorTicks?H(c.minorTickInterval,"auto"):!1===c.minorTicks?null:c.minorTickInterval};v.prototype.getMinorTickPositions=function(){var c=this.options,a=this.tickPositions,e=this.minorTickInterval,f=[],b=this.pointRangePadding||0,p=this.min-b;b=this.max+b;var g=b-p;if(g&&g/e=this.minRange;var y=this.minRange;var v=(y-e+a)/2;v=[a-v,H(c.min,a-v)];A&&(v[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin);a=G(v);e=[a+y,H(c.max,a+y)];A&&(e[2]=f?f.log2lin(this.dataMax):this.dataMax);e=d(e);e-a=q)P=q,y=0;else if(a.dataMax<=q){var n=q;v=0}a.min= H(N,P,a.dataMin);a.max=H(w,n,a.dataMax)}p&&(a.positiveValuesOnly&&!c&&0>=Math.min(a.min,H(a.dataMin,a.min))&&r(10,1,b),a.min=u(p.log2lin(a.min),16),a.max=u(p.log2lin(a.max),16));a.range&&F(a.max)&&(a.userMin=a.min=N=Math.max(a.dataMin,a.minFromRange()),a.userMax=w=a.max,a.range=null);L(a,"foundExtremes");a.beforePadding&&a.beforePadding();a.adjustForMinRange();!(C||a.axisPointRange||a.stacking&&a.stacking.usePercentage||A)&&F(a.min)&&F(a.max)&&(b=a.max-a.min)&&(!F(N)&&y&&(a.min-=b*y),!F(w)&&v&&(a.max+= b*v));f(a.userMin)||(f(g.softMin)&&g.softMina.max&&(a.max=w=g.softMax),f(g.ceiling)&&(a.max=Math.min(a.max,g.ceiling)));K&&F(a.dataMin)&&(q=q||0,!F(N)&&a.min=q?a.min=a.options.minRange?Math.min(q,a.max-a.minRange):q:!F(w)&&a.max>q&&a.dataMax<=q&&(a.max=a.options.minRange?Math.max(q,a.min+a.minRange):q));a.tickInterval=a.min===a.max||"undefined"===typeof a.min||"undefined"=== typeof a.max?1:A&&!m&&d===a.linkedParent.options.tickPixelInterval?m=a.linkedParent.tickInterval:H(m,this.tickAmount?(a.max-a.min)/Math.max(this.tickAmount-1,1):void 0,C?1:(a.max-a.min)*d/Math.max(a.len,d));E&&!c&&a.series.forEach(function(c){c.processData(a.min!==a.oldMin||a.max!==a.oldMax)});a.setAxisTranslation(!0);L(this,"initialAxisTranslation");a.pointRange&&!m&&(a.tickInterval=Math.max(a.pointRange,a.tickInterval));c=H(g.minTickInterval,a.dateTime&&!a.series.some(function(c){return c.noSharedTooltip})? a.closestPointRange:0);!m&&a.tickIntervala.tickInterval||void 0!==this.tickAmount),!!this.tickAmount));this.tickAmount||(a.tickInterval=a.unsquish());this.setTickPositions()};v.prototype.setTickPositions=function(){var c=this.options,a=c.tickPositions;var e=this.getMinorTickInterval();var f=c.tickPositioner,b=this.hasVerticalPanning(),p="colorAxis"===this.coll,g=(p|| !b)&&c.startOnTick;b=(p||!b)&&c.endOnTick;this.tickmarkOffset=this.categories&&"between"===c.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval="auto"===e&&this.tickInterval?this.tickInterval/5:e;this.single=this.min===this.max&&F(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==c.allowDecimals);this.tickPositions=e=a&&a.slice();!e&&(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))?e=this.dateTime?this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval, c.units),this.min,this.max,c.startOfWeek,this.ordinal&&this.ordinal.positions,this.closestPointRange,!0):this.logarithmic?this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max):(e=[this.min,this.max],r(19,!1,this.chart)),e.length>this.len&&(e=[e[0],e.pop()],e[0]===e[1]&&(e.length=1)),this.tickPositions=e,f&&(f=f.apply(this,[this.min,this.max])))&&(this.tickPositions=e=f);this.paddedTicks=e.slice(0);this.trimTicks(e, g,b);this.isLinked||(this.single&&2>e.length&&!this.categories&&!this.series.some(function(c){return c.is("heatmap")&&"between"===c.options.pointPlacement})&&(this.min-=.5,this.max+=.5),a||f||this.adjustTickAmount());L(this,"afterSetTickPositions")};v.prototype.trimTicks=function(c,a,e){var l=c[0],f=c[c.length-1],b=!this.isOrdinal&&this.minPointOffset||0;L(this,"trimTicks");if(!this.isLinked){if(a&&-Infinity!==l)this.min=l;else for(;this.min-b>c[0];)c.shift();if(e)this.max=f;else for(;this.max+b< c[c.length-1];)c.pop();0===c.length&&F(l)&&!this.options.tickPositions&&c.push((f+l)/2)}};v.prototype.alignToOthers=function(){var c={},a,e=this.options;!1===this.chart.options.chart.alignTicks||!1===e.alignTicks||!1===e.startOnTick||!1===e.endOnTick||this.logarithmic||this.chart[this.coll].forEach(function(e){var l=e.options;l=[e.horiz?l.left:l.top,l.width,l.height,l.pane].join();e.series.length&&(c[l]?a=!0:c[l]=1)});return a};v.prototype.getTickAmount=function(){var c=this.options,a=c.tickAmount, e=c.tickPixelInterval;!F(c.tickInterval)&&!a&&this.lena&&(this.finalTickAmt=a,a=5);this.tickAmount=a};v.prototype.adjustTickAmount=function(){var c=this.options,a=this.tickInterval,e=this.tickPositions,f=this.tickAmount,b=this.finalTickAmt,p=e&&e.length,g=H(this.threshold,this.softThreshold?0:null),h;if(this.hasData()){if(pf&&(this.tickInterval*=2,this.setTickPositions());if(F(b)){for(a=c=e.length;a--;)(3===b&&1===a%2||2>=b&&0g&&(a=g)),F(f)&&(bg&&(b=g))),e.displayBtn="undefined"!==typeof a||"undefined"!==typeof b,e.setExtremes(a,b,!1,void 0,{trigger:"zoom"});c.zoomed=!0});return c.zoomed};v.prototype.setAxisSize=function(){var c=this.chart,a=this.options,e=a.offsets||[0,0,0,0],f=this.horiz,b=this.width=Math.round(y(H(a.width,c.plotWidth-e[3]+e[1]),c.plotWidth)), p=this.height=Math.round(y(H(a.height,c.plotHeight-e[0]+e[2]),c.plotHeight)),g=this.top=Math.round(y(H(a.top,c.plotTop+e[0]),c.plotHeight,c.plotTop));a=this.left=Math.round(y(H(a.left,c.plotLeft+e[3]),c.plotWidth,c.plotLeft));this.bottom=c.chartHeight-p-g;this.right=c.chartWidth-b-a;this.len=Math.max(f?b:p,0);this.pos=f?a:g};v.prototype.getExtremes=function(){var c=this.logarithmic;return{min:c?u(c.lin2log(this.min)):this.min,max:c?u(c.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax, userMin:this.userMin,userMax:this.userMax}};v.prototype.getThreshold=function(c){var a=this.logarithmic,e=a?a.lin2log(this.min):this.min;a=a?a.lin2log(this.max):this.max;null===c||-Infinity===c?c=e:Infinity===c?c=a:e>c?c=e:aa?c.align="right":195a&&(c.align="left")});return c.align};v.prototype.tickSize=function(c){var a= this.options,e=a["tick"===c?"tickLength":"minorTickLength"],f=H(a["tick"===c?"tickWidth":"minorTickWidth"],"tick"===c&&this.isXAxis&&!this.categories?1:0);if(f&&e){"inside"===a[c+"Position"]&&(e=-e);var b=[e,f]}c={tickSize:b};L(this,"afterTickSize",c);return c.tickSize};v.prototype.labelMetrics=function(){var c=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style&&this.options.labels.style.fontSize,this.ticks[c]&&this.ticks[c].label)};v.prototype.unsquish= function(){var c=this.options.labels,a=this.horiz,e=this.tickInterval,f=e,b=this.len/(((this.categories?1:0)+this.max-this.min)/e),p,g=c.rotation,h=this.labelMetrics(),E,A=Number.MAX_VALUE,v,y=this.max-this.min,m=function(c){var a=c/(b||1);a=1y&&Infinity!==c&&Infinity!==b&&y&&(a=Math.ceil(y/e));return u(a*e)};a?(v=!c.staggerLines&&!c.step&&(F(g)?[g]:b=c){E=m(Math.abs(h.h/Math.sin(C*c))); var a=E+Math.abs(c/360);a(p.step||0))return p.rotation?0:(this.staggerLines||1)*this.len/g;if(!b){c=null===(a=null===p||void 0===p?void 0:p.style)||void 0===a?void 0:a.width;if(void 0!==c)return parseInt(c, 10);if(h)return h-e.spacing[3]}return.33*e.chartWidth};v.prototype.renderUnsquish=function(){var c=this.chart,e=c.renderer,f=this.tickPositions,b=this.ticks,p=this.options.labels,g=p&&p.style||{},h=this.horiz,E=this.getSlotWidth(),A=Math.max(1,Math.round(E-2*(p.padding||5))),v={},y=this.labelMetrics(),H=p.style&&p.style.textOverflow,m=0;a(p.rotation)||(v.rotation=p.rotation||0);f.forEach(function(c){c=b[c];c.movedLabel&&c.replaceMovedLabel();c&&c.label&&c.label.textPxLength>m&&(m=c.label.textPxLength)}); this.maxLabelLength=m;if(this.autoRotation)m>A&&m>y.h?v.rotation=this.labelRotation:this.labelRotation=0;else if(E){var d=A;if(!H){var C="clip";for(A=f.length;!h&&A--;){var q=f[A];if(q=b[q].label)q.styles&&"ellipsis"===q.styles.textOverflow?q.css({textOverflow:"clip"}):q.textPxLength>E&&q.css({width:E+"px"}),q.getBBox().height>this.len/f.length-(y.h-y.f)&&(q.specificTextOverflow="ellipsis")}}}v.rotation&&(d=m>.5*c.chartHeight?.33*c.chartHeight:m,H||(C="ellipsis"));if(this.labelAlign=p.align||this.autoLabelAlign(this.labelRotation))v.align= this.labelAlign;f.forEach(function(c){var a=(c=b[c])&&c.label,e=g.width,l={};a&&(a.attr(v),c.shortenLabel?c.shortenLabel():d&&!e&&"nowrap"!==g.whiteSpace&&(d= this.min&&c<=this.max||(null===(e=this.grid)||void 0===e?0:e.isColumn))b[c]||(b[c]=new D(this,c)),p&&b[c].isNew&&b[c].render(a,!0,-1),b[c].render(a)};v.prototype.render=function(){var c=this,a=c.chart,e=c.logarithmic,b=c.options,p=c.isLinked,g=c.tickPositions,h=c.axisTitle,A=c.ticks,v=c.minorTicks,y=c.alternateBands,m=b.stackLabels,H=b.alternateGridColor,d=c.tickmarkOffset,C=c.axisLine,q=c.showAxis,N=n(a.renderer.globalAnimation),r,w;c.labelEdge.length=0;c.overlap=!1;[A,v,y].forEach(function(c){E(c, function(c){c.isActive=!1})});if(c.hasData()||p)c.minorTickInterval&&!c.categories&&c.getMinorTickPositions().forEach(function(a){c.renderMinorTick(a)}),g.length&&(g.forEach(function(a,e){c.renderTick(a,e)}),d&&(0===c.min||c.single)&&(A[-1]||(A[-1]=new D(c,-1,null,!0)),A[-1].render(-1))),H&&g.forEach(function(l,f){w="undefined"!==typeof g[f+1]?g[f+1]+d:c.max-d;0===f%2&&ld&&(!u||g<=k)&&"undefined"!==typeof g&&m.push(g);g>k&&(q=!0);var g=b}}}else d=this.lin2log(d),k=this.lin2log(k),n=u?F.getMinorTickInterval():r.tickInterval,n=M("auto"===n?null:n,this.minorAutoInterval,r.tickPixelInterval/(u?5:1)*(k-d)/((u?w/F.tickPositions.length:w)||1)),n=J(n,void 0,D(n)),m=F.getLinearTickPositions(n,d,k).map(this.log2lin), u||(this.minorAutoInterval=n/5);u||(F.tickInterval=n);return m};n.prototype.lin2log=function(n){return Math.pow(10,n)};n.prototype.log2lin=function(n){return Math.log(n)/Math.LN10};return n}();t=function(){function k(){}k.compose=function(k){k.keepProps.push("logarithmic");var d=k.prototype,z=n.prototype;d.log2lin=z.log2lin;d.lin2log=z.lin2log;B(k,"init",function(d){var u=this.logarithmic;"logarithmic"!==d.userOptions.type?this.logarithmic=void 0:(u||(u=this.logarithmic=new n(this)),this.log2lin!== u.log2lin&&(u.log2lin=this.log2lin.bind(this)),this.lin2log!==u.lin2log&&(u.lin2log=this.lin2log.bind(this)))});B(k,"afterInit",function(){var d=this.logarithmic;d&&(this.lin2val=function(u){return d.lin2log(u)},this.val2lin=function(u){return d.log2lin(u)})})};return k}();t.compose(k);return t});Q(k,"Core/Axis/PlotLineOrBand.js",[k["Core/Axis/Axis.js"],k["Core/Globals.js"],k["Core/Utilities.js"]],function(k,t,I){var B=I.arrayMax,J=I.arrayMin,M=I.defined,n=I.destroyObjectProperties,z=I.erase,G=I.extend, d=I.merge,O=I.objectEach,u=I.pick;I=function(){function k(d,r){this.axis=d;r&&(this.options=r,this.id=r.id)}k.prototype.render=function(){t.fireEvent(this,"render");var w=this,r=w.axis,m=r.horiz,n=r.logarithmic,q=w.options,h=q.label,b=w.label,g=q.to,f=q.from,a=q.value,p=M(f)&&M(g),e=M(a),E=w.svgElem,H=!E,y=[],N=q.color,P=u(q.zIndex,0),K=q.events;y={"class":"highcharts-plot-"+(p?"band ":"line ")+(q.className||"")};var A={},C=r.chart.renderer,v=p?"bands":"lines";n&&(f=n.log2lin(f),g=n.log2lin(g),a= n.log2lin(a));r.chart.styledMode||(e?(y.stroke=N||"#999999",y["stroke-width"]=u(q.width,1),q.dashStyle&&(y.dashstyle=q.dashStyle)):p&&(y.fill=N||"#e6ebf5",q.borderWidth&&(y.stroke=q.borderColor,y["stroke-width"]=q.borderWidth)));A.zIndex=P;v+="-"+P;(n=r.plotLinesAndBandsGroups[v])||(r.plotLinesAndBandsGroups[v]=n=C.g("plot-"+v).attr(A).add());H&&(w.svgElem=E=C.path().attr(y).add(n));if(e)y=r.getPlotLinePath({value:a,lineWidth:E.strokeWidth(),acrossPanes:q.acrossPanes});else if(p)y=r.getPlotBandPath(f, g,q);else return;!w.eventsAdded&&K&&(O(K,function(c,a){E.on(a,function(c){K[a].apply(w,[c])})}),w.eventsAdded=!0);(H||!E.d)&&y&&y.length?E.attr({d:y}):E&&(y?(E.show(!0),E.animate({d:y})):E.d&&(E.hide(),b&&(w.label=b=b.destroy())));h&&(M(h.text)||M(h.formatter))&&y&&y.length&&0this.max&&w>this.max;if(r&&m){if(d){var b=r.toString()===m.toString(); h=0}for(d=0;db){y=d;break}if(h[y]&&e.substr(h[y])!=="01-01 00:00:00.000".substr(h[y]))break;"week"!==y&&(d=y)}if(y)var m=p.resolveDTLFormat(a[y]).main;return m};h.prototype.getLabel=function(){var b,g,f=this,a=this.chart.renderer,p=this.chart.styledMode,e=this.options, h="tooltip"+(M(e.className)?" "+e.className:""),d=(null===(b=e.style)||void 0===b?void 0:b.pointerEvents)||(!this.followPointer&&e.stickOnContact?"auto":"none"),y;b=function(){f.inContact=!0};var m=function(){var a=f.chart.hoverSeries;f.inContact=!1;if(a&&a.onMouseOut)a.onMouseOut()};if(!this.label){this.outside&&(this.container=y=k.doc.createElement("div"),y.className="highcharts-tooltip-container",J(y,{position:"absolute",top:"1px",pointerEvents:d,zIndex:3}),k.doc.body.appendChild(y),this.renderer= a=new k.Renderer(y,0,0,null===(g=this.chart.options.chart)||void 0===g?void 0:g.style,void 0,void 0,a.styledMode));this.split?this.label=a.g(h):(this.label=a.label("",0,0,e.shape||"callout",null,null,e.useHTML,null,h).attr({padding:e.padding,r:e.borderRadius}),p||this.label.attr({fill:e.backgroundColor,"stroke-width":e.borderWidth}).css(e.style).css({pointerEvents:d}).shadow(e.shadow));p&&(this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index));if(f.outside&&!f.split){var q= this.label,K=q.xSetter,A=q.ySetter;q.xSetter=function(a){K.call(q,f.distance);y.style.left=a+"px"};q.ySetter=function(a){A.call(q,f.distance);y.style.top=a+"px"}}this.label.on("mouseenter",b).on("mouseleave",m).attr({zIndex:8}).add()}return this.label};h.prototype.getPosition=function(b,g,f){var a=this.chart,p=this.distance,e={},h=a.inverted&&f.h||0,d,y=this.outside,m=y?B.documentElement.clientWidth-2*p:a.chartWidth,q=y?Math.max(B.body.scrollHeight,B.documentElement.scrollHeight,B.body.offsetHeight, B.documentElement.offsetHeight,B.documentElement.clientHeight):a.chartHeight,K=a.pointer.getChartPosition(),A=a.containerScaling,C=function(a){return A?a*A.scaleX:a},v=function(a){return A?a*A.scaleY:a},c=function(c){var e="x"===c;return[c,e?m:q,e?b:g].concat(y?[e?C(b):v(g),e?K.left-p+C(f.plotX+a.plotLeft):K.top-p+v(f.plotY+a.plotTop),0,e?m:q]:[e?b:g,e?f.plotX+a.plotLeft:f.plotY+a.plotTop,e?a.plotLeft:a.plotTop,e?a.plotLeft+a.plotWidth:a.plotTop+a.plotHeight])},l=c("y"),x=c("x"),r=!this.followPointer&& w(f.ttBelow,!a.inverted===!!f.negative),u=function(a,c,l,f,b,g,x){var E="y"===a?v(p):C(p),A=(l-f)/2,d=fm-h?m:m-h);else if(y)e[a]=Math.max(g,b+h+l>c?b:b+h);else return!1},n=function(a,c,l,f,b){var g;bc-p?g=!1:e[a]=bc-f/2?c-f-2:b-l/2;return g},k=function(a){var c=l;l=x;x=c;d=a},F=function(){!1!==u.apply(0,l)?!1!==n.apply(0,x)||d||(k(!0),F()):d?e.x=e.y=0:(k(!0),F())};(a.inverted||1=v+y&&R.pos+N<=v+y+h-A&&(P=R.pos+N);K=D(K,n.left-l,n.right+l);"number"===typeof P?(C=C.height+1,N=r?r.call(a,m,C,p):f(K,P,E,m),e.push({align:r?0:void 0,anchorX:K,anchorY:P,boxWidth:m,point:p,rank:w(N.rank,E?1:0),size:C,target:N.y,tt:b, x:N.x})):b.isActive=!1}return e},[]);!r&&b.some(function(a){return a.xf[0]?Math.max(Math.abs(f[0]),p.width-f[0]):Math.max(Math.abs(f[0]),p.width);a.height=0>f[1]?Math.max(Math.abs(f[1]), p.height-Math.abs(f[1])):Math.max(Math.abs(f[1]),p.height);this.tracker?this.tracker.attr(a):(this.tracker=g.renderer.rect(a).addClass("highcharts-tracker").add(g),b.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}}};h.prototype.styledModeFormat=function(b){return b.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex}"')};h.prototype.tooltipFooterHeaderFormatter=function(b,g){var f=g?"footer": "header",a=b.series,p=a.tooltipOptions,e=p.xDateFormat,h=a.xAxis,m=h&&"datetime"===h.options.type&&O(b.key),y=p[f+"Format"];g={isFooter:g,labelConfig:b};G(this,"headerFormatter",g,function(f){m&&!e&&(e=this.getXDateFormat(b,p,h));m&&e&&(b.point&&b.point.tooltipDateKeys||["key"]).forEach(function(a){y=y.replace("{point."+a+"}","{point."+a+":"+e+"}")});a.chart.styledMode&&(y=this.styledModeFormat(y));f.text=d(y,{point:b,series:a},this.chart)});return g.text};h.prototype.update=function(b){this.destroy(); F(!0,this.chart.options.tooltip.userOptions,b);this.init(this.chart,F(!0,this.options,b))};h.prototype.updatePosition=function(b){var g=this.chart,f=g.pointer,a=this.getLabel(),p=b.plotX+g.plotLeft,e=b.plotY+g.plotTop;f=f.getChartPosition();b=(this.options.positioner||this.getPosition).call(this,a.width,a.height,b);if(this.outside){var h=(this.options.borderWidth||0)+2*this.distance;this.renderer.setSize(a.width+h,a.height+h,!1);if(g=g.containerScaling)J(this.container,{transform:"scale("+g.scaleX+ ", "+g.scaleY+")"}),p*=g.scaleX,e*=g.scaleY;p+=f.left-b.x;e+=f.top-b.y}this.move(Math.round(b.x),Math.round(b.y||0),p,e)};return h}();k.Tooltip=q;return k.Tooltip});Q(k,"Core/Pointer.js",[k["Core/Color/Color.js"],k["Core/Globals.js"],k["Core/Tooltip.js"],k["Core/Utilities.js"]],function(k,t,I,D){var B=k.parse,M=t.charts,n=t.noop,z=D.addEvent,G=D.attr,d=D.css,O=D.defined,u=D.extend,F=D.find,w=D.fireEvent,r=D.isNumber,m=D.isObject,L=D.objectEach,q=D.offset,h=D.pick,b=D.splat;"";k=function(){function g(f, a){this.lastValidTouch={};this.pinchDown=[];this.runChartClick=!1;this.chart=f;this.hasDragged=!1;this.options=a;this.unbindContainerMouseLeave=function(){};this.unbindContainerMouseEnter=function(){};this.init(f,a)}g.prototype.applyInactiveState=function(f){var a=[],b;(f||[]).forEach(function(e){b=e.series;a.push(b);b.linkedParent&&a.push(b.linkedParent);b.linkedSeries&&(a=a.concat(b.linkedSeries));b.navigatorSeries&&a.push(b.navigatorSeries)});this.chart.series.forEach(function(e){-1===a.indexOf(e)? e.setState("inactive",!0):e.options.inactiveOtherPoints&&e.setAllPointsToState("inactive")})};g.prototype.destroy=function(){var f=this;"undefined"!==typeof f.unDocMouseMove&&f.unDocMouseMove();this.unbindContainerMouseLeave();t.chartCount||(t.unbindDocumentMouseUp&&(t.unbindDocumentMouseUp=t.unbindDocumentMouseUp()),t.unbindDocumentTouchEnd&&(t.unbindDocumentTouchEnd=t.unbindDocumentTouchEnd()));clearInterval(f.tooltipTimeout);L(f,function(a,b){f[b]=void 0})};g.prototype.drag=function(f){var a=this.chart, b=a.options.chart,e=f.chartX,g=f.chartY,h=this.zoomHor,d=this.zoomVert,q=a.plotLeft,r=a.plotTop,K=a.plotWidth,A=a.plotHeight,C=this.selectionMarker,v=this.mouseDownX||0,c=this.mouseDownY||0,l=m(b.panning)?b.panning&&b.panning.enabled:b.panning,x=b.panKey&&f[b.panKey+"Key"];if(!C||!C.touch)if(eq+K&&(e=q+K),gr+A&&(g=r+A),this.hasDragged=Math.sqrt(Math.pow(v-e,2)+Math.pow(c-g,2)),10e.options.findNearestPointBy.indexOf("y");e=e.searchPoint(b,f);if((f=m(e,!0))&&!(f=!m(g,!0))){f=g.distX-e.distX;var p=g.dist-e.dist,h=(e.series.group&&e.series.group.zIndex)-(g.series.group&&g.series.group.zIndex);f=0<(0!==f&&a?f:0!==p?p:0!==h?h:g.series.index>e.series.index?-1:1)}f&&(g=e)});return g};g.prototype.getChartCoordinatesFromPoint=function(f,a){var b=f.series,e=b.xAxis;b=b.yAxis;var g=h(f.clientX, f.plotX),d=f.shapeArgs;if(e&&b)return a?{chartX:e.len+e.pos-g,chartY:b.len+b.pos-f.plotY}:{chartX:g+e.pos,chartY:f.plotY+b.pos};if(d&&d.x&&d.y)return{chartX:d.x,chartY:d.y}};g.prototype.getChartPosition=function(){return this.chartPosition||(this.chartPosition=q(this.chart.container))};g.prototype.getCoordinates=function(f){var a={xAxis:[],yAxis:[]};this.chart.axes.forEach(function(b){a[b.isXAxis?"xAxis":"yAxis"].push({axis:b,value:b.toValue(f[b.horiz?"chartX":"chartY"])})});return a};g.prototype.getHoverData= function(f,a,b,e,g,d){var p,E=[];e=!(!e||!f);var q=a&&!a.stickyTracking,H={chartX:d?d.chartX:void 0,chartY:d?d.chartY:void 0,shared:g};w(this,"beforeGetHoverData",H);q=q?[a]:b.filter(function(a){return H.filter?H.filter(a):a.visible&&!(!g&&a.directTouch)&&h(a.options.enableMouseTracking,!0)&&a.stickyTracking});a=(p=e||!d?f:this.findNearestKDPoint(q,g,d))&&p.series;p&&(g&&!a.noSharedTooltip?(q=b.filter(function(a){return H.filter?H.filter(a):a.visible&&!(!g&&a.directTouch)&&h(a.options.enableMouseTracking, !0)&&!a.noSharedTooltip}),q.forEach(function(a){var e=F(a.points,function(a){return a.x===p.x&&!a.isNull});m(e)&&(a.chart.isBoosting&&(e=a.getPoint(e)),E.push(e))})):E.push(p));H={hoverPoint:p};w(this,"afterGetHoverData",H);return{hoverPoint:H.hoverPoint,hoverSeries:a,hoverPoints:E}};g.prototype.getPointFromEvent=function(f){f=f.target;for(var a;f&&!a;)a=f.point,f=f.parentNode;return a};g.prototype.onTrackerMouseOut=function(f){f=f.relatedTarget||f.toElement;var a=this.chart.hoverSeries;this.isDirectTouch= !1;if(!(!a||!f||a.stickyTracking||this.inClass(f,"highcharts-tooltip")||this.inClass(f,"highcharts-series-"+a.index)&&this.inClass(f,"highcharts-tracker")))a.onMouseOut()};g.prototype.inClass=function(f,a){for(var b;f;){if(b=G(f,"class")){if(-1!==b.indexOf(a))return!0;if(-1!==b.indexOf("highcharts-container"))return!1}f=f.parentNode}};g.prototype.init=function(b,a){this.options=a;this.chart=b;this.runChartClick=a.chart.events&&!!a.chart.events.click;this.pinchDown=[];this.lastValidTouch={};I&&(b.tooltip= new I(b,a.tooltip),this.followTouchMove=h(a.tooltip.followTouchMove,!0));this.setDOMEvents()};g.prototype.normalize=function(b,a){var f=b.touches,e=f?f.length?f.item(0):h(f.changedTouches,b.changedTouches)[0]:b;a||(a=this.getChartPosition());f=e.pageX-a.left;a=e.pageY-a.top;if(e=this.chart.containerScaling)f/=e.scaleX,a/=e.scaleY;return u(b,{chartX:Math.round(f),chartY:Math.round(a)})};g.prototype.onContainerClick=function(b){var a=this.chart,f=a.hoverPoint;b=this.normalize(b);var e=a.plotLeft,g= a.plotTop;a.cancelClick||(f&&this.inClass(b.target,"highcharts-tracker")?(w(f.series,"click",u(b,{point:f})),a.hoverPoint&&f.firePointEvent("click",b)):(u(b,this.getCoordinates(b)),a.isInsidePlot(b.chartX-e,b.chartY-g)&&w(a,"click",b)))};g.prototype.onContainerMouseDown=function(b){var a=1===((b.buttons||b.button)&1);b=this.normalize(b);if(t.isFirefox&&0!==b.button)this.onContainerMouseMove(b);if("undefined"===typeof b.button||a)this.zoomOption(b),a&&b.preventDefault&&b.preventDefault(),this.dragStart(b)}; g.prototype.onContainerMouseLeave=function(b){var a=M[h(t.hoverChartIndex,-1)],f=this.chart.tooltip;b=this.normalize(b);a&&(b.relatedTarget||b.toElement)&&(a.pointer.reset(),a.pointer.chartPosition=void 0);f&&!f.isHidden&&this.reset()};g.prototype.onContainerMouseEnter=function(b){delete this.chartPosition};g.prototype.onContainerMouseMove=function(b){var a=this.chart;b=this.normalize(b);this.setHoverChartIndex();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)};g.prototype.onDocumentTouchEnd=function(b){M[t.hoverChartIndex]&&M[t.hoverChartIndex].pointer.drop(b)};g.prototype.onContainerTouchMove=function(b){this.touch(b)};g.prototype.onContainerTouchStart=function(b){this.zoomOption(b);this.touch(b,!0)};g.prototype.onDocumentMouseMove=function(b){var a=this.chart,f=this.chartPosition;b=this.normalize(b,f);var e=a.tooltip;!f||e&& e.isStickyOnContact()||a.isInsidePlot(b.chartX-a.plotLeft,b.chartY-a.plotTop)||this.inClass(b.target,"highcharts-tracker")||this.reset()};g.prototype.onDocumentMouseUp=function(b){var a=M[h(t.hoverChartIndex,-1)];a&&a.pointer.drop(b)};g.prototype.pinch=function(b){var a=this,f=a.chart,e=a.pinchDown,g=b.touches||[],d=g.length,m=a.lastValidTouch,q=a.hasZoom,r=a.selectionMarker,K={},A=1===d&&(a.inClass(b.target,"highcharts-tracker")&&f.runTrackerClick||a.runChartClick),C={};1r.max&&(a=r.max-l,F=!0);F?(u-=.8*(u-d[y][0]),"number"===typeof k&&(k-=.8*(k-d[y][1])), p()):d[y]=[u,k];H||(h[y]=x-c,h[v]=l);h=H?1/q:q;g[v]=l;g[y]=a;e[H?b?"scaleY":"scaleX":"scale"+A]=q;e["translate"+A]=h*c+(u-h*w)};g.prototype.reset=function(f,a){var p=this.chart,e=p.hoverSeries,g=p.hoverPoint,h=p.hoverPoints,d=p.tooltip,m=d&&d.shared?h:g;f&&m&&b(m).forEach(function(a){a.series.isCartesian&&"undefined"===typeof a.plotX&&(f=!1)});if(f)d&&m&&b(m).length&&(d.refresh(m),d.shared&&h?h.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),p.axes.forEach(function(a){a.crosshair&&g.series[a.coll]===a&&a.drawCrosshair(null,g)})));else{if(g)g.onMouseOut();h&&h.forEach(function(a){a.setState()});if(e)e.onMouseOut();d&&d.hide(a);this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove());p.axes.forEach(function(a){a.hideCrosshair()});this.hoverX=p.hoverPoints=p.hoverPoint=null}};g.prototype.runPointActions=function(b,a){var f=this.chart, e=f.tooltip&&f.tooltip.options.enabled?f.tooltip:void 0,g=e?e.shared:!1,d=a||f.hoverPoint,m=d&&d.series||f.hoverSeries;m=this.getHoverData(d,m,f.series,(!b||"touchmove"!==b.type)&&(!!a||m&&m.directTouch&&this.isDirectTouch),g,b);d=m.hoverPoint;var q=m.hoverPoints;a=(m=m.hoverSeries)&&m.tooltipOptions.followPointer;g=g&&m&&!m.noSharedTooltip;if(d&&(d!==f.hoverPoint||e&&e.isHidden)){(f.hoverPoints||[]).forEach(function(a){-1===q.indexOf(a)&&a.setState()});if(f.hoverSeries!==m)m.onMouseOver();this.applyInactiveState(q); (q||[]).forEach(function(a){a.setState("hover")});f.hoverPoint&&f.hoverPoint.firePointEvent("mouseOut");if(!d.series)return;f.hoverPoints=q;f.hoverPoint=d;d.firePointEvent("mouseOver");e&&e.refresh(g?q:d,b)}else a&&e&&!e.isHidden&&(d=e.getAnchor([{}],b),e.updatePosition({plotX:d[0],plotY:d[1]}));this.unDocMouseMove||(this.unDocMouseMove=z(f.container.ownerDocument,"mousemove",function(a){var e=M[t.hoverChartIndex];if(e)e.pointer.onDocumentMouseMove(a)}));f.axes.forEach(function(a){var e=h((a.crosshair|| {}).snap,!0),g;e&&((g=f.hoverPoint)&&g.series[a.coll]===a||(g=F(q,function(e){return e.series[a.coll]===a})));g||!e?a.drawCrosshair(b,g):a.hideCrosshair()})};g.prototype.scaleGroups=function(b,a){var f=this.chart,e;f.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?f.clipRect:null)),g.dataLabelsGroup&&g.dataLabelsGroup.attr(e))});f.clipRect.attr(a||f.clipBox)};g.prototype.setDOMEvents= function(){var b=this.chart.container,a=b.ownerDocument;b.onmousedown=this.onContainerMouseDown.bind(this);b.onmousemove=this.onContainerMouseMove.bind(this);b.onclick=this.onContainerClick.bind(this);this.unbindContainerMouseEnter=z(b,"mouseenter",this.onContainerMouseEnter.bind(this));this.unbindContainerMouseLeave=z(b,"mouseleave",this.onContainerMouseLeave.bind(this));t.unbindDocumentMouseUp||(t.unbindDocumentMouseUp=z(a,"mouseup",this.onDocumentMouseUp.bind(this)));t.hasTouch&&(z(b,"touchstart", this.onContainerTouchStart.bind(this)),z(b,"touchmove",this.onContainerTouchMove.bind(this)),t.unbindDocumentTouchEnd||(t.unbindDocumentTouchEnd=z(a,"touchend",this.onDocumentTouchEnd.bind(this))))};g.prototype.setHoverChartIndex=function(){var b=this.chart,a=t.charts[h(t.hoverChartIndex,-1)];if(a&&a!==b)a.pointer.onContainerMouseLeave({relatedTarget:!0});a&&a.mouseIsDown||(t.hoverChartIndex=b.index)};g.prototype.touch=function(b,a){var f=this.chart,e;this.setHoverChartIndex();if(1===b.touches.length)if(b= this.normalize(b),(e=f.isInsidePlot(b.chartX-f.plotLeft,b.chartY-f.plotTop))&&!f.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}h(g,!0)&&this.pinch(b)}else a&&this.reset();else 2===b.touches.length&&this.pinch(b)};g.prototype.zoomOption=function(b){var a=this.chart,f=a.options.chart,e=f.zoomType||"";a=a.inverted;/touch/.test(b.type)&&(e=h(f.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 g}();return t.Pointer=k});Q(k,"Core/MSPointer.js",[k["Core/Globals.js"],k["Core/Pointer.js"],k["Core/Utilities.js"]],function(k,t,I){function B(){var d=[];d.item=function(d){return this[d]};u(w,function(m){d.push({pageX:m.pageX,pageY:m.pageY,target:m.target})});return d}function J(d,r,q,h){"touch"!==d.pointerType&&d.pointerType!==d.MSPOINTER_TYPE_TOUCH||!n[k.hoverChartIndex]||(h(d),h=n[k.hoverChartIndex].pointer, h[r]({type:q,target:d.currentTarget,preventDefault:G,touches:B()}))}var M=this&&this.__extends||function(){var d=function(m,q){d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(h,b){h.__proto__=b}||function(h,b){for(var g in b)b.hasOwnProperty(g)&&(h[g]=b[g])};return d(m,q)};return function(m,q){function h(){this.constructor=m}d(m,q);m.prototype=null===q?Object.create(q):(h.prototype=q.prototype,new h)}}(),n=k.charts,z=k.doc,G=k.noop,d=I.addEvent,O=I.css,u=I.objectEach,F=I.removeEvent, w={},r=!!k.win.PointerEvent;return function(m){function u(){return null!==m&&m.apply(this,arguments)||this}M(u,m);u.prototype.batchMSEvents=function(d){d(this.chart.container,r?"pointerdown":"MSPointerDown",this.onContainerPointerDown);d(this.chart.container,r?"pointermove":"MSPointerMove",this.onContainerPointerMove);d(z,r?"pointerup":"MSPointerUp",this.onDocumentPointerUp)};u.prototype.destroy=function(){this.batchMSEvents(F);m.prototype.destroy.call(this)};u.prototype.init=function(d,h){m.prototype.init.call(this, d,h);this.hasZoom&&O(d.container,{"-ms-touch-action":"none","touch-action":"none"})};u.prototype.onContainerPointerDown=function(d){J(d,"onContainerTouchStart","touchstart",function(h){w[h.pointerId]={pageX:h.pageX,pageY:h.pageY,target:h.currentTarget}})};u.prototype.onContainerPointerMove=function(d){J(d,"onContainerTouchMove","touchmove",function(h){w[h.pointerId]={pageX:h.pageX,pageY:h.pageY};w[h.pointerId].target||(w[h.pointerId].target=h.currentTarget)})};u.prototype.onDocumentPointerUp=function(d){J(d, "onDocumentTouchEnd","touchend",function(h){delete w[h.pointerId]})};u.prototype.setDOMEvents=function(){m.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(d)};return u}(t)});Q(k,"Core/Legend.js",[k["Core/Animation/AnimationUtilities.js"],k["Core/Globals.js"],k["Core/Utilities.js"]],function(k,t,I){var B=k.animObject,J=k.setAnimation,M=I.addEvent,n=I.css,z=I.defined,G=I.discardElement,d=I.find,O=I.fireEvent,u=I.format,F=I.isNumber,w=I.merge,r=I.pick,m=I.relativeLength, L=I.stableSort,q=I.syncTimeout;k=I.wrap;I=t.isFirefox;var h=t.marginNames,b=t.win,g=function(){function b(a,b){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=a;this.init(a,b)}b.prototype.init=function(a,b){this.chart=a;this.setOptions(b);b.enabled&&(this.render(),M(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=M(this.chart,"render",function(){this.legend.proximatePositions();this.legend.positionItems()}):this.unchartrender&&this.unchartrender())};b.prototype.setOptions=function(a){var b=r(a.padding, 8);this.options=a;this.chart.styledMode||(this.itemStyle=a.itemStyle,this.itemHiddenStyle=w(this.itemStyle,a.itemHiddenStyle));this.itemMarginTop=a.itemMarginTop||0;this.itemMarginBottom=a.itemMarginBottom||0;this.padding=b;this.initialItemY=b-5;this.symbolWidth=r(a.symbolWidth,16);this.pages=[];this.proximate="proximate"===a.layout&&!this.chart.inverted;this.baseline=void 0};b.prototype.update=function(a,b){var e=this.chart;this.setOptions(w(!0,this.options,a));this.destroy();e.isDirtyLegend=e.isDirtyBox= !0;r(b,!0)&&e.redraw();O(this,"afterUpdate")};b.prototype.colorizeItem=function(a,b){a.legendGroup[b?"removeClass":"addClass"]("highcharts-legend-item-hidden");if(!this.chart.styledMode){var e=this.options,f=a.legendItem,g=a.legendLine,p=a.legendSymbol,h=this.itemHiddenStyle.color;e=b?e.itemStyle.color:h;var d=b?a.color||h:h,m=a.options&&a.options.marker,A={fill:d};f&&f.css({fill:e,color:e});g&&g.attr({stroke:d});p&&(m&&p.isMarker&&(A=a.pointAttribs(),b||(A.stroke=A.fill=h)),p.attr(A))}O(this,"afterColorizeItem", {item:a,visible:b})};b.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()};b.prototype.positionItem=function(a){var b=this,e=this.options,f=e.symbolPadding,g=!e.rtl,h=a._legendItemPos;e=h[0];h=h[1];var d=a.checkbox,m=a.legendGroup;m&&m.element&&(f={translateX:g?e:this.legendWidth-e-2*f-4,translateY:h},g=function(){O(b,"afterPositionItem",{item:a})},z(m.translateY)?m.animate(f,void 0,g):(m.attr(f),g()));d&&(d.x=e,d.y=h)}; b.prototype.destroyItem=function(a){var b=a.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(e){a[e]&&(a[e]=a[e].destroy())});b&&G(a.checkbox)};b.prototype.destroy=function(){function a(a){this[a]&&(this[a]=this[a].destroy())}this.getAllItems().forEach(function(b){["legendItem","legendGroup"].forEach(a,b)});"clipRect up down pager nav box title group".split(" ").forEach(a,this);this.display=null};b.prototype.positionCheckboxes=function(){var a=this.group&&this.group.alignAttr, b=this.clipHeight||this.legendHeight,e=this.titleHeight;if(a){var f=a.translateY;this.allItems.forEach(function(g){var p=g.checkbox;if(p){var h=f+e+p.y+(this.scrollOffset||0)+3;n(p,{left:a.translateX+g.checkboxOffset+p.x-20+"px",top:h+"px",display:this.proximate||h>f-6&&hq?this.maxItemWidth:a.itemWidth;f&&this.itemX-e+b>q&&(this.itemX=e,this.lastLineHeight&&(this.itemY+=d+this.lastLineHeight+h),this.lastLineHeight=0);this.lastItemY=d+this.itemY+h;this.lastLineHeight=Math.max(g,this.lastLineHeight);a._legendItemPos=[this.itemX,this.itemY];f?this.itemX+=b:(this.itemY+=d+g+h,this.lastLineHeight=g);this.offsetWidth=this.widthOption||Math.max((f? this.itemX-e-(a.checkbox?0:m):b)+e,this.offsetWidth)};b.prototype.getAllItems=function(){var a=[];this.chart.series.forEach(function(b){var e=b&&b.options;b&&r(e.showInLegend,z(e.linkedTo)?!1:void 0,!0)&&(a=a.concat(b.legendItems||("point"===e.legendType?b.data:b)))});O(this,"afterGetAllItems",{allItems:a});return a};b.prototype.getAlignment=function(){var a=this.options;return this.proximate?a.align.charAt(0)+"tv":a.floating?"":a.align.charAt(0)+a.verticalAlign.charAt(0)+a.layout.charAt(0)};b.prototype.adjustMargins= function(a,b){var e=this.chart,f=this.options,g=this.getAlignment();g&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(p,d){p.test(g)&&!z(a[d])&&(e[h[d]]=Math.max(e[h[d]],e.legend[(d+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][d]*f[d%2?"x":"y"]+r(f.margin,12)+b[d]+(e.titleOffset[d]||0)))})};b.prototype.proximatePositions=function(){var a=this.chart,b=[],e="left"===this.options.align;this.allItems.forEach(function(f){var g;var p=e;if(f.yAxis){f.xAxis.options.reversed&& (p=!p);f.points&&(g=d(p?f.points:f.points.slice(0).reverse(),function(a){return F(a.plotY)}));p=this.itemMarginTop+f.legendItem.getBBox().height+this.itemMarginBottom;var h=f.yAxis.top-a.plotTop;f.visible?(g=g?g.plotY:f.yAxis.height,g+=h-.3*p):g=h+f.yAxis.height;b.push({target:g,size:p,item:f})}},this);t.distribute(b,a.plotHeight);b.forEach(function(e){e.item._legendItemPos[1]=a.plotTop-a.spacing[0]+e.pos})};b.prototype.render=function(){var a=this.chart,b=a.renderer,e=this.group,f=this.box,g=this.options, h=this.padding;this.itemX=h;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=m(g.width,a.spacingBox.width-h);var d=a.spacingBox.width-2*h-g.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(d/=2);this.maxLegendWidth=this.widthOption||d;e||(this.group=e=b.g("legend").attr({zIndex:7}).add(),this.contentGroup=b.g().attr({zIndex:1}).add(e),this.scrollGroup=b.g().add(this.contentGroup));this.renderTitle();var q=this.getAllItems();L(q,function(a,e){return(a.options&& a.options.legendIndex||0)-(e.options&&e.options.legendIndex||0)});g.reversed&&q.reverse();this.allItems=q;this.display=d=!!q.length;this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0;q.forEach(this.renderItem,this);q.forEach(this.layoutItem,this);q=(this.widthOption||this.offsetWidth)+h;var r=this.lastItemY+this.lastLineHeight+this.titleHeight;r=this.handleOverflow(r);r+=h;f||(this.box=f=b.rect().addClass("highcharts-legend-box").attr({r:g.borderRadius}).add(e),f.isNew=!0); a.styledMode||f.attr({stroke:g.borderColor,"stroke-width":g.borderWidth||0,fill:g.backgroundColor||"none"}).shadow(g.shadow);0h&&!1!==C.enabled?(this.clipHeight=q=Math.max(h-20-this.titleHeight-d,0),this.currentPage=r(this.currentPage,1),this.fullHeight=a,w.forEach(function(a,c){var e=a._legendItemPos[1],b=Math.round(a.legendItem.getBBox().height),l=x.length;if(!l||e-x[l-1]>q&&(u||e)!==x[l-1])x.push(u||e),l++;a.pageIx=l-1;u&&(w[c-1].pageIx=l-1);c===w.length-1&&e+b-x[l-1]>q&&e!==u&&(x.push(e),a.pageIx=l);e!==u&&(u=e)}),A||(A=b.clipRect=f.clipRect(0,d,9999, 0),b.contentGroup.clip(A)),n(q),l||(this.nav=l=f.g().attr({zIndex:1}).add(this.group),this.up=f.symbol("triangle",0,0,c,c).add(l),k("upTracker").on("click",function(){b.scroll(-1,v)}),this.pager=f.text("",15,10).addClass("highcharts-legend-navigation"),e.styledMode||this.pager.css(C.style),this.pager.add(l),this.down=f.symbol("triangle-down",0,0,c,c).add(l),k("downTracker").on("click",function(){b.scroll(1,v)})),b.scroll(0),a=h):l&&(n(),this.nav=l.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight= 0);return a};b.prototype.scroll=function(a,b){var e=this,f=this.chart,g=this.pages,p=g.length,h=this.currentPage+a;a=this.clipHeight;var d=this.options.navigation,m=this.pager,A=this.padding;h>p&&(h=p);0=f.value;)f=b[++g];this.nonZonedColor||(this.nonZonedColor=this.color);this.color=f&&f.color&&!this.options.color?f.color:this.nonZonedColor;return f};q.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType};q.prototype.init=function(h,b,g){this.series=h;this.applyOptions(b,g);this.id=J(this.id)? this.id:L();this.resolveColor();h.chart.pointCount++;z(this,"afterInit");return this};q.prototype.optionsToObject=function(h){var b={},g=this.series,f=g.options.keys,a=f||g.pointArrayMap||["y"],p=a.length,e=0,d=0;if(u(h)||null===h)b[a[0]]=h;else if(O(h))for(!f&&h.length>p&&(g=typeof h[0],"string"===g?b.name=h[0]:"number"===g&&(b.x=h[0]),e++);d=N(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 N(b,a.length-1)},bindAxes:function(){var a= this,e=a.options,b=a.chart,f;g(this,"bindAxes",null,function(){(a.axisTypes||[]).forEach(function(c){b[c].forEach(function(b){f=b.options;if(e[c]===f.index||"undefined"!==typeof e[c]&&e[c]===f.id||"undefined"===typeof e[c]&&0===f.index)a.insert(b.series),a[c]=b,b.isDirty=!0});a[c]||a.optionalAxis===c||q(18,!0,b)})});g(this,"afterBindAxes")},updateParallelArrays:function(a,b){var c=a.series,l=arguments,f=e(b)?function(e){var l="y"===e&&c.toYData?c.toYData(a):a[e];c[e+"Data"][b]=l}:function(a){Array.prototype[b].apply(c[a+ "Data"],Array.prototype.slice.call(l,2))};c.parallelArrays.forEach(f)},hasData:function(){return this.visible&&"undefined"!==typeof this.dataMax&&"undefined"!==typeof this.dataMin||this.visible&&this.yData&&0=this.cropStart?A-this.cropStart:A);!d&&g[A]&&g[A].touched&&(A=void 0);return A},drawLegendSymbol:D.drawLineMarker,updateData:function(a,b){var c=this.options,f=c.dataSorting,l=this.points,g=[],d,h,p,A=this.requireSorting,v=a.length===l.length,q=!0;this.xIncrement=null;a.forEach(function(a,b){var h=m(a)&&this.pointClass.prototype.optionsToObject.call({series:this},a)||{};var x=h.x;if(h.id||e(x)){if(x=this.findPointIndex(h,p),-1===x||"undefined"=== typeof x?g.push(a):l[x]&&a!==c.data[x]?(l[x].update(a,!1,null,!1),l[x].touched=!0,A&&(p=x+1)):l[x]&&(l[x].touched=!0),!v||b!==x||f&&f.enabled||this.hasDerivedData)d=!0}else g.push(a)},this);if(d)for(a=l.length;a--;)(h=l[a])&&!h.touched&&h.remove&&h.remove(!1,b);else!v||f&&f.enabled?q=!1:(a.forEach(function(a,c){l[c].update&&a!==l[c].y&&l[c].update(a,!1,null,!1)}),g.length=0);l.forEach(function(a){a&&(a.touched=!1)});if(!q)return!1;g.forEach(function(a){this.addPoint(a,!1,null,null,!1)},this);null=== this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=u(this.xData),this.autoIncrement());return!0},setData:function(c,b,f,g){var l=this,h=l.points,d=h&&h.length||0,p,m=l.options,x=l.chart,A=m.dataSorting,v=null,C=l.xAxis;v=m.turboThreshold;var y=this.xData,r=this.yData,k=(p=l.pointArrayMap)&&p.length,n=m.keys,H=0,K=1,w;c=c||[];p=c.length;b=N(b,!0);A&&A.enabled&&(c=this.sortData(c));!1!==g&&p&&d&&!l.cropped&&!l.hasGroupedData&&l.visible&&!l.isSeriesBoosting&&(w=this.updateData(c,f));if(!w){l.xIncrement= null;l.colorCounter=0;this.parallelArrays.forEach(function(a){l[a+"Data"].length=0});if(v&&p>v)if(v=l.getFirstValidPoint(c),e(v))for(f=0;fa?1:0}).forEach(function(a,c){a.x=c},this);c.linkedSeries&&c.linkedSeries.forEach(function(c){var e=c.options,f=e.data;e.dataSorting&&e.dataSorting.enabled||!f||(f.forEach(function(e,l){f[l]=b(c,e);a[l]&&(f[l].x=a[l].x,f[l].index=l)}),c.setData(f,!1))});return a},getProcessedData:function(a){var c=this.xData,e=this.yData,b=c.length;var f=0;var g=this.xAxis,h=this.options;var d=h.cropThreshold;var p=a||this.getExtremesFromAll||h.getExtremesFromAll, m=this.isCartesian;a=g&&g.val2lin;h=!(!g||!g.logarithmic);var A=this.requireSorting;if(g){g=g.getExtremes();var v=g.min;var C=g.max}if(m&&this.sorted&&!p&&(!d||b>d||this.forceCrop))if(c[b-1]C)c=[],e=[];else if(this.yData&&(c[0]C)){f=this.cropData(this.xData,this.yData,v,C);c=f.xData;e=f.yData;f=f.start;var y=!0}for(d=c.length||1;--d;)if(b=h?a(c[d])-a(c[d-1]):c[d]-c[d-1],0b&&A&&(q(15,!1,this.chart),A=!1);return{xData:c,yData:e,cropped:y, cropStart:f,closestPointRange:r}},processData:function(a){var c=this.xAxis;if(this.isCartesian&&!this.isDirty&&!c.isDirty&&!this.yAxis.isDirty&&!a)return!1;a=this.getProcessedData();this.cropped=a.cropped;this.cropStart=a.cropStart;this.processedXData=a.xData;this.processedYData=a.yData;this.closestPointRange=this.basePointRange=a.closestPointRange},cropData:function(a,e,b,f,g){var c=a.length,l=0,h=c,d;g=N(g,this.cropShoulder);for(d=0;d=b){l=Math.max(0,d-g);break}for(b=d;b f){h=b+g;break}return{xData:a.slice(l,h),yData:e.slice(l,h),start:l,end:h}},generatePoints:function(){var a=this.options,e=a.data,b=this.data,f,d=this.processedXData,p=this.processedYData,m=this.pointClass,A=d.length,v=this.cropStart||0,q=this.hasGroupedData;a=a.keys;var C=[],y;b||q||(b=[],b.length=e.length,b=this.data=b);a&&q&&(this.options.keys=!1);for(y=0;y=m&&(d[y-v]||C)<=A;if(r&&C)if(r=E.length)for(;r--;)e(E[r])&&(h[p++]=E[r]);else h[p++]=E}c={dataMin:F(h),dataMax:u(h)};g(this,"afterGetExtremes",{dataExtremes:c}); return c},applyExtremes:function(){var a=this.getExtremes();this.dataMin=a.dataMin;this.dataMax=a.dataMax;return a},getFirstValidPoint:function(a){for(var c=null,e=a.length,b=0;null===c&&b=F&&(F=null),P.total=P.stackTotal=B.total,P.percentage=B.total&&P.y/B.total*100,P.stackY=z,this.irregularWidths||B.setOffset(this.pointXOffset||0,this.barW||0));P.yBottom=m(F)?w(p.translate(F,0,1,0,1),-1E5,1E5):null;q&&(z=this.modifyValue(z,P));P.plotY="number"===typeof z&&Infinity!==z?w(p.translate(z,0,1,0,1),-1E5,1E5):void 0;P.isInside=this.isPointInside(P);P.clientX=E?r(f.translate(t,0,0,0,1,C)):H;P.negative=P[K]<(c[K+ "Threshold"]||k||0);P.category=d&&"undefined"!==typeof d[P.x]?d[P.x]:P.x;if(!P.isNull&&!1!==P.visible){"undefined"!==typeof O&&(u=Math.min(u,Math.abs(H-O)));var O=H}P.zone=this.zones.length&&P.getZone();!P.graphic&&this.group&&h&&(P.isNew=!0)}this.closestPointRangePx=u;g(this,"afterTranslate")},getValidPoints:function(a,e,b){var c=this.chart;return(a||this.points||[]).filter(function(a){return e&&!c.isInsidePlot(a.plotX,a.plotY,c.inverted)?!1:!1!==a.visible&&(b||!a.isNull)})},getClipBox:function(a, e){var c=this.options,b=this.chart,f=b.inverted,l=this.xAxis,g=l&&this.yAxis,d=b.options.chart.scrollablePlotArea||{};a&&!1===c.clip&&g?a=f?{y:-b.chartWidth+g.len+g.pos,height:b.chartWidth,width:b.chartHeight,x:-b.chartHeight+l.len+l.pos}:{y:-g.pos,height:b.chartHeight,width:b.chartWidth,x:-l.pos}:(a=this.clipBox||b.clipBox,e&&(a.width=b.plotSizeX,a.x=(b.scrollablePixelsX||0)*(d.scrollPositionX||0)));return e?{width:a.width,x:a.x}:a},setClip:function(a){var c=this.chart,b=this.options,e=c.renderer, f=c.inverted,g=this.clipBox,d=this.getClipBox(a),h=this.sharedClipKey||["_sharedClip",a&&a.duration,a&&a.easing,d.height,b.xAxis,b.yAxis].join(),p=c[h],m=c[h+"m"];a&&(d.width=0,f&&(d.x=c.plotHeight+(!1!==b.clip?0:c.plotTop)));p?c.hasLoaded||p.attr(d):(a&&(c[h+"m"]=m=e.clipRect(f?c.plotSizeX+99:-99,f?-c.plotLeft:-c.plotTop,99,f?c.chartWidth:c.chartHeight)),c[h]=p=e.clipRect(d),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|| g?p:c.clipRect),this.markerGroup.clip(m),this.sharedClipKey=h;a||(p.count[this.index]&&(delete p.count[this.index],--p.count.length),0===p.count.length&&h&&c[h]&&(g||(c[h]=c[h].destroy()),c[h+"m"]&&(c[h+"m"]=c[h+"m"].destroy())))},animate:function(a){var c=this.chart,b=G(this.options.animation);if(!c.hasRendered)if(a)this.setClip(b);else{var e=this.sharedClipKey;a=c[e];var f=this.getClipBox(b,!0);a&&a.animate(f,b);c[e+"m"]&&c[e+"m"].animate({width:f.width+99,x:f.x-(c.inverted?0:99)},b)}},afterAnimate:function(){this.setClip(); g(this,"afterAnimate");this.finishedAnimating=!0},drawPoints:function(){var a=this.points,b=this.chart,e,f,g=this.options.marker,d=this[this.specialGroup]||this.markerGroup,h=this.xAxis,p=N(g.enabled,!h||h.isRadial?!0:null,this.closestPointRangePx>=g.enabledThreshold*g.radius);if(!1!==g.enabled||this._hasPointMarkers)for(e=0;el&&b.shadow));h&&(h.startX=e.xMap,h.isArea=e.isArea)})},getZonesGraphs:function(a){this.zones.forEach(function(c,b){b=["zone-graph-"+b,"highcharts-graph highcharts-zone-graph-"+ b+" "+(c.className||"")];this.chart.styledMode||b.push(c.color||this.color,c.dashStyle||this.options.dashStyle);a.push(b)},this);return a},applyZones:function(){var a=this,b=this.chart,e=b.renderer,f=this.zones,g,h,d=this.clips||[],p,m=this.graph,A=this.area,v=Math.max(b.chartWidth,b.chartHeight),q=this[(this.zoneAxis||"y")+"Axis"],y=b.inverted,C,E,r,k=!1,n,H;if(f.length&&(m||A)&&q&&"undefined"!==typeof q.min){var K=q.reversed;var u=q.horiz;m&&!this.showLine&&m.hide();A&&A.hide();var P=q.getExtremes(); f.forEach(function(c,f){g=K?u?b.plotWidth:0:u?0:q.toPixels(P.min)||0;g=w(N(h,g),0,v);h=w(Math.round(q.toPixels(N(c.value,P.max),!0)||0),0,v);k&&(g=h=q.toPixels(P.max));C=Math.abs(g-h);E=Math.min(g,h);r=Math.max(g,h);q.isXAxis?(p={x:y?r:E,y:0,width:C,height:v},u||(p.x=b.plotHeight-p.x)):(p={x:0,y:y?r:E,width:v,height:C},u&&(p.y=b.plotWidth-p.y));y&&e.isVML&&(p=q.isXAxis?{x:0,y:K?E:r,height:p.width,width:b.chartWidth}:{x:p.y-b.plotLeft-b.spacingBox.x,y:0,width:p.height,height:b.chartHeight});d[f]?d[f].animate(p): d[f]=e.clipRect(p);n=a["zone-area-"+f];H=a["zone-graph-"+f];m&&H&&H.clip(d[f]);A&&n&&n.clip(d[f]);k=c.value>P.max;a.resetZones&&0===h&&(h=void 0)});this.clips=d}else a.visible&&(m&&m.show(!0),A&&A.show(!0))},invertGroups:function(a){function c(){["group","markerGroup"].forEach(function(c){b[c]&&(e.renderer.isVML&&b[c].attr({width:b.yAxis.len,height:b.xAxis.len}),b[c].width=b.yAxis.len,b[c].height=b.xAxis.len,b[c].invert(b.isRadialSeries?!1:a))})}var b=this,e=b.chart;b.xAxis&&(b.eventsToUnbind.push(B(e, "resize",c)),c(),b.invertGroups=c)},plotGroup:function(a,b,e,f,g){var c=this[a],l=!c;e={visibility:e,zIndex:f||.1};"undefined"===typeof this.opacity||this.chart.styledMode||"inactive"===this.state||(e.opacity=this.opacity);l&&(this[a]=c=this.chart.renderer.g().add(g));c.addClass("highcharts-"+b+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(m(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(c.hasClass("highcharts-tracker")?" highcharts-tracker": ""),!0);c.attr(e)[l?"attr":"animate"](this.getPlotBox());return c},getPlotBox:function(){var a=this.chart,b=this.xAxis,e=this.yAxis;a.inverted&&(b=e,e=this.xAxis);return{translateX:b?b.left:a.plotLeft,translateY:e?e.top:a.plotTop,scaleX:1,scaleY:1}},removeEvents:function(a){a?this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind.length=0):P(this)},render:function(){var a=this,b=a.chart,e=a.options,f=G(e.animation),h=!a.finishedAnimating&&b.renderer.isSVG&& f.duration,d=a.visible?"inherit":"hidden",p=e.zIndex,m=a.hasRendered,v=b.seriesGroup,q=b.inverted;g(this,"render");var y=a.plotGroup("group","series",d,p,v);a.markerGroup=a.plotGroup("markerGroup","markers",d,p,v);h&&a.animate&&a.animate(!0);y.inverted=a.isCartesian||a.invertable?q:!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(q); !1===e.clip||a.sharedClipKey||m||y.clip(b.clipRect);h&&a.animate&&a.animate();m||(h&&f.defer&&(h+=f.defer),a.animationTimeout=A(function(){a.afterAnimate()},h||0));a.isDirty=!1;a.hasRendered=!0;g(a,"afterRender")},redraw:function(){var a=this.chart,b=this.isDirty||this.isDirtyData,e=this.group,f=this.xAxis,g=this.yAxis;e&&(a.inverted&&e.attr({width:a.plotWidth,height:a.plotHeight}),e.animate({translateX:N(f&&f.left,a.plotLeft),translateY:N(g&&g.top,a.plotTop)}));this.translate();this.render();b&& delete this.kdTree},kdAxisArray:["clientX","plotY"],searchPoint:function(a,b){var c=this.xAxis,e=this.yAxis,f=this.chart.inverted;return this.searchKDTree({clientX:f?c.len-a.chartY+c.pos:a.chartX-c.pos,plotY:f?e.len-a.chartX+e.pos:a.chartY-e.pos},b,a)},buildKDTree:function(a){function c(a,e,f){var g;if(g=a&&a.length){var l=b.kdAxisArray[e%f];a.sort(function(a,c){return a[l]-c[l]});g=Math.floor(g/2);return{point:a[g],left:c(a.slice(0,g),e+1,f),right:c(a.slice(g+1),e+1,f)}}}this.buildingKdTree=!0;var b= this,e=-1A?"left":"right";q=0>A?"right":"left";b[y]&&(y=c(a,b[y],e+1,d),v=y[h]y;)k--;this.updateParallelArrays(A,"splice",k,0,0);this.updateParallelArrays(A,k);p&&A.name&&(p[y]=A.name);m.splice(k,0,a);v&&(this.data.splice(k,0,null),this.processData());"point"===l.legendType&&this.generatePoints();e&&(d[0]&&d[0].remove?d[0].remove(!1):(d.shift(),this.updateParallelArrays(A,"shift"),m.shift()));!1!==g&&f(this,"addPoint",{point:A});this.isDirtyData=this.isDirty=!0;b&&h.redraw(c)},removePoint:function(a,b,e){var c=this,f=c.data, g=f[a],d=c.points,h=c.chart,p=function(){d&&d.length===f.length&&d.splice(a,1);f.splice(a,1);c.options.data.splice(a,1);c.updateParallelArrays(g||{series:c},"splice",a,1);g&&g.destroy();c.isDirty=!0;c.isDirtyData=!0;b&&h.redraw()};u(e,h);b=N(b,!0);g?g.firePointEvent("remove",null,p):p()},remove:function(a,b,e,c){function g(){d.destroy(c);d.remove=null;h.isDirtyLegend=h.isDirtyBox=!0;h.linkSeries();N(a,!0)&&h.redraw(b)}var d=this,h=d.chart;!1!==e?f(d,"remove",null,g):g()},update:function(a,e){a=J.cleanRecursively(a, this.userOptions);f(this,"update",{options:a});var d=this,c=d.chart,l=d.userOptions,h=d.initialType||d.type,p=c.options.plotOptions,m=a.type||l.type||c.options.chart.type,q=!(this.hasDerivedData||m&&m!==this.type||"undefined"!==typeof a.pointStart||"undefined"!==typeof a.pointInterval||d.hasOptionChanged("dataGrouping")||d.hasOptionChanged("pointStart")||d.hasOptionChanged("pointInterval")||d.hasOptionChanged("pointIntervalUnit")||d.hasOptionChanged("keys")),A=F[h].prototype,y,k=["eventOptions","navigatorSeries", "baseSeries"],E=d.finishedAnimating&&{animation:!1},C={};q&&(k.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","_hasPointLabels","mapMap","mapData","minY","maxY","minX","maxX"),!1!==a.visible&&k.push("area","graph"),d.parallelArrays.forEach(function(a){k.push(a+"Data")}),a.data&&(a.dataSorting&&g(d.options.dataSorting,a.dataSorting),this.setData(a.data,!1)));a=H(l,E,{index:"undefined"===typeof l.index?d.index:l.index,pointStart:N(p&&p.series&& p.series.pointStart,l.pointStart,d.xData[0])},!q&&{data:d.options.data},a);q&&a.data&&(a.data=d.options.data);k=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(k);k.forEach(function(a){k[a]=d[a];delete d[a]});d.remove(!1,null,!1,!0);for(y in A)d[y]=void 0;F[m||h]?g(d,F[m||h].prototype):b(17,!0,c,{missingModuleFor:m||h});k.forEach(function(a){d[a]=k[a]});d.init(c,a);if(q&&this.points){var n=d.options;!1===n.visible?(C.graphic=1,C.dataLabel=1):d._hasPointLabels||(a=n.marker,l=n.dataLabels, a&&(!1===a.enabled||"symbol"in a)&&(C.graphic=1),l&&!1===l.enabled&&(C.dataLabel=1));this.points.forEach(function(a){a&&a.series&&(a.resolveColor(),Object.keys(C).length&&a.destroyElements(C),!1===n.showInLegend&&a.legendItem&&c.legend.destroyItem(a))},this)}d.initialType=h;c.linkSeries();f(this,"afterUpdate");N(e,!0)&&c.redraw(q?void 0:!1)},setName:function(a){this.name=this.options.name=this.userOptions.name=a;this.chart.isDirtyLegend=!0},hasOptionChanged:function(a){var b=this.options[a],e=this.chart.options.plotOptions, c=this.userOptions[a];return c?b!==c:b!==N(e&&e[this.type]&&e[this.type][a],e&&e.series&&e.series[a],b)}});g(t.prototype,{update:function(a,b){var e=this.chart,c=a&&a.events||{};a=H(this.userOptions,a);e.options[this.coll].indexOf&&(e.options[this.coll][e.options[this.coll].indexOf(this.userOptions)]=a);y(e.options[this.coll].events,function(a,b){"undefined"===typeof c[b]&&(c[b]=void 0)});this.destroy(!0);this.init(e,g(a,{events:c}));e.isDirtyBox=!0;N(b,!0)&&e.redraw()},remove:function(b){for(var e= this.chart,f=this.coll,c=this.series,g=c.length;g--;)c[g]&&c[g].remove(!1);h(e.axes,this);h(e[f],this);a(e.options[f])?e.options[f].splice(this.options.index,1):delete e.options[f];e[f].forEach(function(a,c){a.options.index=a.userOptions.index=c});this.destroy();e.isDirtyBox=!0;N(b,!0)&&e.redraw()},setTitle:function(a,b){this.update({title:a},b)},setCategories:function(a,b){this.update({categories:a},b)}})});Q(k,"Series/AreaSeries.js",[k["Core/Series/Series.js"],k["Core/Color/Color.js"],k["Core/Globals.js"], k["Mixins/LegendSymbol.js"],k["Core/Utilities.js"]],function(k,t,I,D,J){var B=t.parse,n=J.objectEach,z=J.pick,G=I.Series;k.seriesType("area","line",{threshold:0},{singleStacks:!1,getStackPoints:function(d){var k=[],u=[],t=this.xAxis,w=this.yAxis,r=w.stacking.stacks[this.stackKey],m={},L=this.index,q=w.series,h=q.length,b=z(w.options.reversedStacks,!0)?1:-1,g;d=d||this.points;if(this.options.stacking){for(g=0;gk&&F>z?(F=Math.max(k,z),w=2*z-F):FI&&w>z?(w=Math.max(I,z),F=2*z-w):w=Math.abs(h)&&.5q.closestPointRange*q.xAxis.transA;g=q.borderWidth=m(b.borderWidth,g?0:1);var f=q.xAxis,a=q.yAxis,p=b.threshold,e=q.translatedThreshold=a.getThreshold(p),k=m(b.minPointLength,5),n=q.getColumnMetrics(),y=n.width,r=q.barW=Math.max(y,1+2*g),u=q.pointXOffset=n.offset,K=q.dataMin,A=q.dataMax;h.inverted&&(e-=.5);b.pointPadding&&(r=Math.ceil(r));M.prototype.translate.apply(q);q.points.forEach(function(g){var v= m(g.yBottom,e),c=999+Math.abs(v),l=y,E=g.plotX||0;c=d(g.plotY,-c,a.len+c);var C=E+u,H=r,N=Math.min(c,v),P=Math.max(c,v)-N;if(k&&Math.abs(P)k?v-k:e-(t?k:0)}B(g.options.pointWidth)&&(l=H=Math.ceil(g.options.pointWidth),C-=Math.round((l-y)/2));b.centerInCategory&&(C=q.adjustForMissingColumns(C,l,g,n));g.barX=C;g.pointWidth=l;g.tooltipPos=h.inverted?[a.len+a.pos-h.plotLeft- c,f.len+f.pos-h.plotTop-(E||0)-u-H/2,P]:[C+H/2,c+a.pos-h.plotTop,P];g.shapeType=q.pointClass.prototype.shapeType||"rect";g.shapeArgs=q.crispCol.apply(q,g.isNull?[C,e,H,0]:[C,N,H,P])})},getSymbol:k,drawLegendSymbol:J.drawRectangle,drawGraph:function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},pointAttribs:function(d,h){var b=this.options,g=this.pointAttrToOptions||{};var f=g.stroke||"borderColor";var a=g["stroke-width"]||"borderWidth",p=d&&d.color||this.color,e=d&&d[f]|| b[f]||this.color||p,k=d&&d[a]||b[a]||this[a]||0;g=d&&d.options.dashStyle||b.dashStyle;var q=m(d&&d.opacity,b.opacity,1);if(d&&this.zones.length){var y=d.getZone();p=d.options.color||y&&(y.color||d.nonZonedColor)||this.color;y&&(e=y.borderColor||e,g=y.dashStyle||g,k=y.borderWidth||k)}h&&d&&(d=r(b.states[h],d.options.states&&d.options.states[h]||{}),h=d.brightness,p=d.color||"undefined"!==typeof h&&G(p).brighten(d.brightness).get()||p,e=d[f]||e,k=d[a]||k,g=d.dashStyle||g,q=m(d.opacity,q));f={fill:p, stroke:e,"stroke-width":k,opacity:q};g&&(f.dashstyle=g);return f},drawPoints:function(){var d=this,h=this.chart,b=d.options,g=h.renderer,f=b.animationLimit||250,a;d.points.forEach(function(p){var e=p.graphic,m=!!e,k=e&&h.pointCount\u25cf
{series.name}
',pointFormat:"x: {point.x}
y: {point.y}
"}},{sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group", "markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,drawGraph:function(){(this.options.lineWidth||0===this.options.lineWidth&&this.graph&&this.graph.strokeWidth())&&B.prototype.drawGraph.call(this)},applyJitter:function(){var k=this,t=this.options.jitter,n=this.points.length;t&&this.points.forEach(function(z,G){["x","y"].forEach(function(d,B){var u="plot"+d.toUpperCase();if(t[d]&&!z.isNull){var F=k[d+"Axis"];var w=t[d]*F.transA;if(F&&!F.isLog){var r=Math.max(0,z[u]-w);F=Math.min(F.len,z[u]+w); B=1E4*Math.sin(G+B*n);z[u]=r+(F-r)*(B-Math.floor(B));"x"===d&&(z.clientX=z.plotX)}}})})}});I(B,"afterTranslate",function(){this.applyJitter&&this.applyJitter()});""});Q(k,"Mixins/CenteredSeries.js",[k["Core/Globals.js"],k["Core/Utilities.js"]],function(k,t){var B=t.isNumber,D=t.pick,J=t.relativeLength,M=k.deg2rad;return k.CenteredSeriesMixin={getCenter:function(){var n=this.options,t=this.chart,G=2*(n.slicedOffset||0),d=t.plotWidth-2*G,B=t.plotHeight-2*G,u=n.center,F=Math.min(d,B),w=n.size,r=n.innerSize|| 0;"string"===typeof w&&(w=parseFloat(w));"string"===typeof r&&(r=parseFloat(r));n=[D(u[0],"50%"),D(u[1],"50%"),D(w&&0>w?void 0:n.size,"100%"),D(r&&0>r?void 0:n.innerSize||0,"0%")];!t.angular||this instanceof k.Series||(n[3]=0);for(u=0;4>u;++u)w=n[u],t=2>u||2===u&&/%$/.test(w),n[u]=J(w,[d,B,F,n[2]][u])+(t?G:0);n[3]>n[2]&&(n[3]=n[2]);return n},getStartAndEndRadians:function(k,t){k=B(k)?k:0;t=B(t)&&t>k&&360>t-k?t:k+360;return{start:M*(k+-90),end:M*(t+-90)}}}});Q(k,"Series/PieSeries.js",[k["Core/Animation/AnimationUtilities.js"], k["Core/Series/Series.js"],k["Mixins/CenteredSeries.js"],k["Core/Globals.js"],k["Mixins/LegendSymbol.js"],k["Series/LineSeries.js"],k["Core/Series/Point.js"],k["Core/Renderer/SVG/SVGRenderer.js"],k["Core/Utilities.js"]],function(k,t,I,D,J,M,n,z,G){var d=k.setAnimation,B=I.getStartAndEndRadians;k=D.noop;var u=G.addEvent,F=G.clamp,w=G.defined,r=G.fireEvent,m=G.isNumber,L=G.merge,q=G.pick,h=G.relativeLength;t.seriesType("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:t.seriesTypes.column.prototype.pointAttribs,animate:function(b){var g=this,f=g.points,a=g.startAngleRad;b||f.forEach(function(b){var e=b.graphic,f=b.shapeArgs;e&&f&&(e.attr({r:q(b.startR,g.center&&g.center[3]/2),start:a,end:a}),e.animate({r:f.r,start:f.start,end:f.end},g.options.animation))})},hasData:function(){return!!this.processedXData.length},updateTotals:function(){var b,g=0,f=this.points,a=f.length,d=this.options.ignoreHiddenPoint; for(b=0;b1.5*Math.PI?C-=2*Math.PI:C<-Math.PI/2&&(C+=2*Math.PI);K.slicedTranslation={translateX:Math.round(Math.cos(C)*a),translateY:Math.round(Math.sin(C)*a)};var v=Math.cos(C)*b[2]/2;var c=Math.sin(C)*b[2]/2;K.tooltipPos=[b[0]+.7*v,b[1]+.7*c];K.half=C<-Math.PI/2||C>Math.PI/2?1:0;K.angle=C;A=Math.min(d,K.labelDistance/5);K.labelPosition={natural:{x:b[0]+ v+Math.cos(C)*K.labelDistance,y:b[1]+c+Math.sin(C)*K.labelDistance},"final":{},alignment:0>K.labelDistance?"center":K.half?"right":"left",connectorPosition:{breakAt:{x:b[0]+v+Math.cos(C)*A,y:b[1]+c+Math.sin(C)*A},touchingSliceAt:{x:b[0]+v,y:b[1]+c}}}}r(this,"afterTranslate")},drawEmpty:function(){var b=this.startAngleRad,g=this.endAngleRad,f=this.options;if(0===this.total&&this.center){var a=this.center[0];var d=this.center[1];this.graph||(this.graph=this.chart.renderer.arc(a,d,this.center[1]/2,0, b,g).addClass("highcharts-empty-series").add(this.group));this.graph.attr({d:z.prototype.symbols.arc(a,d,this.center[2]/2,0,{start:b,end:g,innerR:this.center[3]/2})});this.chart.styledMode||this.graph.attr({"stroke-width":f.borderWidth,fill:f.fillColor||"none",stroke:f.color||"#cccccc"})}else this.graph&&(this.graph=this.graph.destroy())},redrawPoints:function(){var b=this,g=b.chart,f=g.renderer,a,d,e,h,m=b.options.shadow;this.drawEmpty();!m||b.shadowGroup||g.styledMode||(b.shadowGroup=f.g("shadow").attr({zIndex:-1}).add(b.group)); b.points.forEach(function(p){var k={};d=p.graphic;if(!p.isNull&&d){h=p.shapeArgs;a=p.getTranslate();if(!g.styledMode){var q=p.shadowGroup;m&&!q&&(q=p.shadowGroup=f.g("shadow").add(b.shadowGroup));q&&q.attr(a);e=b.pointAttribs(p,p.selected&&"select")}p.delayedRendering?(d.setRadialReference(b.center).attr(h).attr(a),g.styledMode||d.attr(e).attr({"stroke-linejoin":"round"}).shadow(m,q),p.delayedRendering=!1):(d.setRadialReference(b.center),g.styledMode||L(!0,k,e),L(!0,k,h,a),d.animate(k));d.attr({visibility:p.visible? "inherit":"hidden"});d.addClass(p.getClassName())}else d&&(p.graphic=d.destroy())})},drawPoints:function(){var b=this.chart.renderer;this.points.forEach(function(g){g.graphic&&g.hasNewShapeType()&&(g.graphic=g.graphic.destroy());g.graphic||(g.graphic=b[g.shapeType](g.shapeArgs).add(g.series.group),g.delayedRendering=!0)})},searchPoint:k,sortByAngle:function(b,g){b.sort(function(b,a){return"undefined"!==typeof b.angle&&(a.angle-b.angle)*g})},drawLegendSymbol:J.drawRectangle,getCenter:I.getCenter,getSymbol:k, drawGraph:null},{init:function(){n.prototype.init.apply(this,arguments);var b=this;b.name=q(b.name,"Slice");var g=function(f){b.slice("select"===f.type)};u(b,"select",g);u(b,"unselect",g);return b},isValid:function(){return m(this.y)&&0<=this.y},setVisible:function(b,g){var f=this,a=f.series,d=a.chart,e=a.options.ignoreHiddenPoint;g=q(g,e);b!==f.visible&&(f.visible=f.options.visible=b="undefined"===typeof b?!f.visible:b,a.options.data[a.data.indexOf(f)]=f.options,["graphic","dataLabel","connector", "shadowGroup"].forEach(function(a){if(f[a])f[a][b?"show":"hide"](!0)}),f.legendItem&&d.legend.colorizeItem(f,b),b||"hover"!==f.state||f.setState(""),e&&(a.isDirty=!0),g&&d.redraw())},slice:function(b,g,f){var a=this.series;d(f,a.chart);q(g,!0);this.sliced=this.options.sliced=w(b)?b:!this.sliced;a.options.data[a.data.indexOf(this)]=this.options;this.graphic&&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(b){var g=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(g.x,g.y,g.r+b,g.r+b,{innerR:g.r-1,start:g.start,end:g.end})},connectorShapes:{fixedOffset:function(b,g,f){var a=g.breakAt;g=g.touchingSliceAt;return[["M",b.x,b.y],f.softConnector?["C",b.x+("left"===b.alignment?-5:5),b.y,2*a.x-g.x,2*a.y-g.y,a.x,a.y]:["L",a.x,a.y],["L",g.x,g.y]]},straight:function(b,g){g=g.touchingSliceAt;return[["M", b.x,b.y],["L",g.x,g.y]]},crookedLine:function(b,g,f){g=g.touchingSliceAt;var a=this.series,d=a.center[0],e=a.chart.plotWidth,m=a.chart.plotLeft;a=b.alignment;var k=this.shapeArgs.r;f=h(f.crookDistance,1);e="left"===a?d+k+(e+m-d-k)*(1-f):m+(d-k)*f;f=["L",e,b.y];d=!0;if("left"===a?e>b.x||eg.x)d=!1;b=[["M",b.x,b.y]];d&&b.push(f);b.push(["L",g.x,g.y]);return b}},getConnectorPath:function(){var b=this.labelPosition,g=this.series.options.dataLabels,f=g.connectorShape,a=this.connectorShapes; a[f]&&(f=a[f]);return f.call(this,{x:b.final.x,y:b.final.y,alignment:b.alignment},b.connectorPosition,g)}});""});Q(k,"Core/Series/DataLabels.js",[k["Core/Animation/AnimationUtilities.js"],k["Core/Globals.js"],k["Core/Series/CartesianSeries.js"],k["Core/Utilities.js"]],function(k,t,I,D){var B=k.getDeferredAnimation;k=t.noop;var M=t.seriesTypes,n=D.arrayMax,z=D.clamp,G=D.defined,d=D.extend,O=D.fireEvent,u=D.format,F=D.isArray,w=D.merge,r=D.objectEach,m=D.pick,L=D.relativeLength,q=D.splat,h=D.stableSort; "";t.distribute=function(b,g,f){function a(a,b){return a.target-b.target}var d,e=!0,k=b,q=[];var y=0;var n=k.reducedLen||g;for(d=b.length;d--;)y+=b[d].size;if(y>n){h(b,function(a,b){return(b.rank||0)-(a.rank||0)});for(y=d=0;y<=n;)y+=b[d].size,d++;q=b.splice(d-1,b.length)}h(b,a);for(b=b.map(function(a){return{size:a.size,targets:[a.target],align:m(a.align,.5)}});e;){for(d=b.length;d--;)e=b[d],y=(Math.min.apply(0,e.targets)+Math.max.apply(0,e.targets))/2,e.pos=z(y-e.size*e.align,0,g-e.size);d=b.length; for(e=!1;d--;)0b[d].pos&&(b[d-1].size+=b[d].size,b[d-1].targets=b[d-1].targets.concat(b[d].targets),b[d-1].align=.5,b[d-1].pos+b[d-1].size>g&&(b[d-1].pos=g-b[d-1].size),b.splice(d,1),e=!0)}k.push.apply(k,q);d=0;b.some(function(a){var b=0;if(a.targets.some(function(){k[d].pos=a.pos+b;if("undefined"!==typeof f&&Math.abs(k[d].pos-k[d].target)>f)return k.slice(0,d+1).forEach(function(a){delete a.pos}),k.reducedLen=(k.reducedLen||g)-.1*g,k.reducedLen>.1*g&&t.distribute(k,g,f), !0;b+=k[d].size;d++}))return!0});h(k,a)};I.prototype.drawDataLabels=function(){function b(a,b){var e=b.filter;return e?(b=e.operator,a=a[e.property],e=e.value,">"===b&&a>e||"<"===b&&a="===b&&a>=e||"<="===b&&a<=e||"=="===b&&a==e||"==="===b&&a===e?!0:!1):!0}function g(a,b){var e=[],c;if(F(a)&&!F(b))e=a.map(function(a){return w(a,b)});else if(F(b)&&!F(a))e=b.map(function(c){return w(a,c)});else if(F(a)||F(b))for(c=Math.max(a.length,b.length);c--;)e[c]=w(a[c],b[c]);else e=w(a,b);return e}var f= this,a=f.chart,d=f.options,e=d.dataLabels,h=f.points,k,y=f.hasRendered||0,n=e.animation;n=e.defer?B(a,n,f):{defer:0,duration:0};var t=a.renderer;e=g(g(a.options.plotOptions&&a.options.plotOptions.series&&a.options.plotOptions.series.dataLabels,a.options.plotOptions&&a.options.plotOptions[f.type]&&a.options.plotOptions[f.type].dataLabels),e);O(this,"drawDataLabels");if(F(e)||e.enabled||f._hasPointLabels){var K=f.plotGroup("dataLabelsGroup","data-labels",y?"inherit":"hidden",e.zIndex||6);K.attr({opacity:+y}); !y&&(y=f.dataLabelsGroup)&&(f.visible&&K.show(!0),y[d.animation?"animate":"attr"]({opacity:1},n));h.forEach(function(h){k=q(g(e,h.dlOptions||h.options&&h.options.dataLabels));k.forEach(function(e,g){var c=e.enabled&&(!h.isNull||h.dataLabelOnNull)&&b(h,e),l=h.dataLabels?h.dataLabels[g]:h.dataLabel,p=h.connectors?h.connectors[g]:h.connector,k=m(e.distance,h.labelDistance),q=!l;if(c){var y=h.getLabelConfig();var v=m(e[h.formatPrefix+"Format"],e.format);y=G(v)?u(v,y,a):(e[h.formatPrefix+"Formatter"]|| e.formatter).call(y,e);v=e.style;var A=e.rotation;a.styledMode||(v.color=m(e.color,v.color,f.color,"#000000"),"contrast"===v.color?(h.contrastColor=t.getContrast(h.color||f.color),v.color=!G(k)&&e.inside||0>k||d.stacking?h.contrastColor:"#000000"):delete h.contrastColor,d.cursor&&(v.cursor=d.cursor));var n={r:e.borderRadius||0,rotation:A,padding:e.padding,zIndex:1};a.styledMode||(n.fill=e.backgroundColor,n.stroke=e.borderColor,n["stroke-width"]=e.borderWidth);r(n,function(a,c){"undefined"===typeof a&& delete n[c]})}!l||c&&G(y)?c&&G(y)&&(l?n.text=y:(h.dataLabels=h.dataLabels||[],l=h.dataLabels[g]=A?t.text(y,0,-9999,e.useHTML).addClass("highcharts-data-label"):t.label(y,0,-9999,e.shape,null,null,e.useHTML,null,"data-label"),g||(h.dataLabel=l),l.addClass(" highcharts-data-label-color-"+h.colorIndex+" "+(e.className||"")+(e.useHTML?" highcharts-tracker":""))),l.options=e,l.attr(n),a.styledMode||l.css(v).shadow(e.shadow),l.added||l.add(K),e.textPath&&!e.useHTML&&(l.setTextPath(h.getDataLabelPath&&h.getDataLabelPath(l)|| h.graphic,e.textPath),h.dataLabelPath&&!e.textPath.enabled&&(h.dataLabelPath=h.dataLabelPath.destroy())),f.alignDataLabel(h,l,e,null,q)):(h.dataLabel=h.dataLabel&&h.dataLabel.destroy(),h.dataLabels&&(1===h.dataLabels.length?delete h.dataLabels:delete h.dataLabels[g]),g||delete h.dataLabel,p&&(h.connector=h.connector.destroy(),h.connectors&&(1===h.connectors.length?delete h.connectors:delete h.connectors[g])))})})}O(this,"afterDrawDataLabels")};I.prototype.alignDataLabel=function(b,g,f,a,h){var e= this,p=this.chart,k=this.isCartesian&&p.inverted,q=this.enabledDataSorting,n=m(b.dlBox&&b.dlBox.centerX,b.plotX,-9999),r=m(b.plotY,-9999),K=g.getBBox(),A=f.rotation,C=f.align,v=p.isInsidePlot(n,Math.round(r),k),c="justify"===m(f.overflow,q?"none":"justify"),l=this.visible&&!1!==b.visible&&(b.series.forceDL||q&&!c||v||f.inside&&a&&p.isInsidePlot(n,k?a.x+1:a.y+a.height-1,k));var x=function(a){q&&e.xAxis&&!c&&e.setDataLabelStartPos(b,g,h,v,a)};if(l){var u=p.renderer.fontMetrics(p.styledMode?void 0:f.style.fontSize, g).b;a=d({x:k?this.yAxis.len-r:n,y:Math.round(k?this.xAxis.len-n:r),width:0,height:0},a);d(f,{width:K.width,height:K.height});A?(c=!1,n=p.renderer.rotCorr(u,A),n={x:a.x+(f.x||0)+a.width/2+n.x,y:a.y+(f.y||0)+{top:0,middle:.5,bottom:1}[f.verticalAlign]*a.height},x(n),g[h?"attr":"animate"](n).attr({align:C}),x=(A+720)%360,x=180x,"left"===C?n.y-=x?K.height:0:"center"===C?(n.x-=K.width/2,n.y-=K.height/2):"right"===C&&(n.x-=K.width,n.y-=x?0:K.height),g.placed=!0,g.alignAttr=n):(x(a),g.align(f,null, a),n=g.alignAttr);c&&0<=a.height?this.justifyDataLabel(g,f,n,K,a,h):m(f.crop,!0)&&(l=p.isInsidePlot(n.x,n.y)&&p.isInsidePlot(n.x+K.width,n.y+K.height));if(f.shape&&!A)g[h?"attr":"animate"]({anchorX:k?p.plotWidth-b.plotY:b.plotX,anchorY:k?p.plotHeight-b.plotX:b.plotY})}h&&q&&(g.placed=!1);l||q&&!c||(g.hide(!0),g.placed=!1)};I.prototype.setDataLabelStartPos=function(b,g,f,a,d){var e=this.chart,h=e.inverted,p=this.xAxis,m=p.reversed,k=h?g.height/2:g.width/2;b=(b=b.pointWidth)?b/2:0;p=h?d.x:m?-k-b:p.width- k+b;d=h?m?this.yAxis.height-k+b:-k-b:d.y;g.startXPos=p;g.startYPos=d;a?"hidden"===g.visibility&&(g.show(),g.attr({opacity:0}).animate({opacity:1})):g.attr({opacity:1}).animate({opacity:0},void 0,g.hide);e.hasRendered&&(f&&g.attr({x:g.startXPos,y:g.startYPos}),g.placed=!0)};I.prototype.justifyDataLabel=function(b,g,f,a,d,e){var h=this.chart,p=g.align,m=g.verticalAlign,k=b.box?0:b.padding||0,q=g.x;q=void 0===q?0:q;var n=g.y;var A=void 0===n?0:n;n=f.x+k;if(0>n){"right"===p&&0<=q?(g.align="left",g.inside= !0):q-=n;var r=!0}n=f.x+a.width-k;n>h.plotWidth&&("left"===p&&0>=q?(g.align="right",g.inside=!0):q+=h.plotWidth-n,r=!0);n=f.y+k;0>n&&("bottom"===m&&0<=A?(g.verticalAlign="top",g.inside=!0):A-=n,r=!0);n=f.y+a.height-k;n>h.plotHeight&&("top"===m&&0>=A?(g.verticalAlign="bottom",g.inside=!0):A+=h.plotHeight-n,r=!0);r&&(g.x=q,g.y=A,b.placed=!e,b.align(g,void 0,d));return r};M.pie&&(M.pie.prototype.dataLabelPositioners={radialDistributionY:function(b){return b.top+b.distributeBox.pos},radialDistributionX:function(b, g,f,a){return b.getX(fg.bottom-2?a:f,g.half,g)},justify:function(b,g,f){return f[0]+(b.half?-1:1)*(g+b.labelDistance)},alignToPlotEdges:function(b,g,f,a){b=b.getBBox().width;return g?b+a:f-b-a},alignToConnectors:function(b,g,f,a){var d=0,e;b.forEach(function(a){e=a.dataLabel.getBBox().width;e>d&&(d=e)});return g?d+a:f-d-a}},M.pie.prototype.drawDataLabels=function(){var b=this,g=b.data,f,a=b.chart,d=b.options.dataLabels||{},e=d.connectorPadding,h,k=a.plotWidth,q=a.plotHeight,r=a.plotLeft, u=Math.round(a.chartWidth/3),K,A=b.center,C=A[2]/2,v=A[1],c,l,x,z,F=[[],[]],L,B,D,J,O=[0,0,0,0],M=b.dataLabelPositioners,U;b.visible&&(d.enabled||b._hasPointLabels)&&(g.forEach(function(a){a.dataLabel&&a.visible&&a.dataLabel.shortened&&(a.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),a.dataLabel.shortened=!1)}),I.prototype.drawDataLabels.apply(b),g.forEach(function(a){a.dataLabel&&(a.visible?(F[a.half].push(a),a.dataLabel._pos=null,!G(d.style.width)&&!G(a.options.dataLabels&& a.options.dataLabels.style&&a.options.dataLabels.style.width)&&a.dataLabel.getBBox().width>u&&(a.dataLabel.css({width:Math.round(.7*u)+"px"}),a.dataLabel.shortened=!0)):(a.dataLabel=a.dataLabel.destroy(),a.dataLabels&&1===a.dataLabels.length&&delete a.dataLabels))}),F.forEach(function(g,h){var p=g.length,n=[],y;if(p){b.sortByAngle(g,h-.5);if(0k-e&&0===h&&(K=Math.round(L+ l-k+e),O[1]=Math.max(K,O[1])),0>B-z/2?O[0]=Math.max(Math.round(-B+z/2),O[0]):B+z/2>q&&(O[2]=Math.max(Math.round(B+z/2-q),O[2])),c.sideOverflow=K)}}}),0===n(O)||this.verifyDataLabelOverflow(O))&&(this.placeDataLabels(),this.points.forEach(function(e){U=w(d,e.options.dataLabels);if(h=m(U.connectorWidth,1)){var f;K=e.connector;if((c=e.dataLabel)&&c._pos&&e.visible&&0m(this.translatedThreshold,h.yAxis.len)),q=m(f.inside,!!this.options.stacking);p&&(a=w(p),0>a.y&&(a.height+=a.y,a.y=0),p=a.y+a.height-h.yAxis.len,0=q.x+q.width||h.x+h.width<=q.x||h.y>=q.y+q.height||h.y+h.height<=q.y||((z.labelrank=p&&h<=c||l||!r(h))m=!0;f[l?"zoomX":"zoomY"]&&m&&(e=g.zoom(a.min,a.max),g.displayBtn&&(d=!0))});var m=b.resetZoomButton;d&&!m?b.showResetZoom():!d&&g(m)&&(b.resetZoomButton=m.destroy());e&&b.redraw(p(b.options.chart.animation, a&&a.animation,100>b.pointCount))},pan:function(a,f){var e=this,g=e.hoverPoints,d=e.options.chart,h=e.options.mapNavigation&&e.options.mapNavigation.enabled,m;f="object"===typeof f?f:{enabled:f,type:"x"};d&&d.panning&&(d.panning=f);var k=f.type;L(this,"pan",{originalEvent:a},function(){g&&g.forEach(function(a){a.setState()});var f=[1];"xy"===k?f=[1,0]:"y"===k&&(f=[0]);f.forEach(function(f){var c=e[f?"xAxis":"yAxis"][0],g=c.horiz,d=a[g?"chartX":"chartY"];g=g?"mouseDownX":"mouseDownY";var q=e[g],n= (c.pointRange||0)/2,v=c.reversed&&!e.inverted||!c.reversed&&e.inverted?-1:1,y=c.getExtremes(),A=c.toValue(q-d,!0)+n*v;v=c.toValue(q+c.len-d,!0)-n*v;var r=v=v&&A<=n&&(c.setExtremes(q,A,!1,!1,{trigger:"pan"}),e.resetZoomButton||h||q===v||A===n||!k.match("y")||(e.showResetZoom(),c.displayBtn=!1),m=!0),e[g]= d)});m&&e.redraw(!1);w(e.container,{cursor:"move"})})}});m(n.prototype,{select:function(a,b){var e=this,f=e.series,g=f.chart;this.selectedStaging=a=p(a,!e.selected);e.firePointEvent(a?"select":"unselect",{accumulate:b},function(){e.selected=e.options.selected=a;f.options.data[f.data.indexOf(e)]=e.options;e.setState(a&&"select");b||g.getSelectedPoints().forEach(function(a){var b=a.series;a.selected&&a!==e&&(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,e=b.pointer;a=a?e.normalize(a):e.getChartCoordinatesFromPoint(this,b.inverted);e.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 b= this,g=f(b.series.options.point,b.options).events;b.events=g;a(g,function(a,e){h(a)&&u(b,e,a)});this.hasImportedEvents=!0}},setState:function(a,b){var e=this.series,f=this.state,g=e.options.states[a||"normal"]||{},d=B.plotOptions[e.type].marker&&e.options.marker,h=d&&!1===d.enabled,k=d&&d.states&&d.states[a||"normal"]||{},q=!1===k.enabled,n=e.stateMarkerGraphic,c=this.marker||{},l=e.chart,r=e.halo,u,w=d&&e.markerAttribs;a=a||"";if(!(a===this.state&&!b||this.selected&&"select"!==a||!1===g.enabled|| a&&(q||h&&!1===k.enabled)||a&&c.states&&c.states[a]&&!1===c.states[a].enabled)){this.state=a;w&&(u=e.markerAttribs(this,a));if(this.graphic){f&&this.graphic.removeClass("highcharts-point-"+f);a&&this.graphic.addClass("highcharts-point-"+a);if(!l.styledMode){var E=e.pointAttribs(this,a);var t=p(l.options.chart.animation,g.animation);e.options.inactiveOtherPoints&&E.opacity&&((this.dataLabels||[]).forEach(function(a){a&&a.animate({opacity:E.opacity},t)}),this.connector&&this.connector.animate({opacity:E.opacity}, t));this.graphic.animate(E,t)}u&&this.graphic.animate(u,p(l.options.chart.animation,k.animation,d.animation));n&&n.hide()}else{if(a&&k){f=c.symbol||e.symbol;n&&n.currentSymbol!==f&&(n=n.destroy());if(u)if(n)n[b?"animate":"attr"]({x:u.x,y:u.y});else f&&(e.stateMarkerGraphic=n=l.renderer.symbol(f,u.x,u.y,u.width,u.height).add(e.markerGroup),n.currentSymbol=f);!l.styledMode&&n&&n.attr(e.pointAttribs(this,a))}n&&(n[a&&this.isInside?"show":"hide"](),n.element.point=this)}a=g.halo;g=(n=this.graphic||n)&& n.visibility||"inherit";a&&a.size&&n&&"hidden"!==g&&!this.isCluster?(r||(e.halo=r=l.renderer.path().add(n.parentGroup)),r.show()[b?"animate":"attr"]({d:this.haloPath(a.size)}),r.attr({"class":"highcharts-halo highcharts-color-"+p(this.colorIndex,e.colorIndex)+(this.className?" "+this.className:""),visibility:g,zIndex:-1}),r.point=this,l.styledMode||r.attr(m({fill:this.color||e.color,"fill-opacity":a.opacity},a.attributes))):r&&r.point&&r.point.haloPath&&r.animate({d:r.point.haloPath(0)},null,r.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)}});m(J.prototype,{onMouseOver:function(){var a=this.chart,b=a.hoverSeries;a.pointer.setHoverChartIndex();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,f=b.tooltip,g=b.hoverPoint;b.hoverSeries=null;if(g)g.onMouseOut();this&&a.events.mouseOut&& L(this,"mouseOut");!f||this.stickyTracking||f.shared&&!this.noSharedTooltip||f.hide();b.series.forEach(function(a){a.setState("",!0)})},setState:function(a,b){var e=this,f=e.options,g=e.graph,d=f.inactiveOtherPoints,h=f.states,m=f.lineWidth,k=f.opacity,q=p(h[a||"normal"]&&h[a||"normal"].animation,e.chart.options.chart.animation);f=0;a=a||"";if(e.state!==a&&([e.group,e.markerGroup,e.dataLabelsGroup].forEach(function(c){c&&(e.state&&c.removeClass("highcharts-series-"+e.state),a&&c.addClass("highcharts-series-"+ a))}),e.state=a,!e.chart.styledMode)){if(h[a]&&!1===h[a].enabled)return;a&&(m=h[a].lineWidth||m+(h[a].lineWidthPlus||0),k=p(h[a].opacity,k));if(g&&!g.dashstyle)for(h={"stroke-width":m},g.animate(h,q);e["zone-graph-"+f];)e["zone-graph-"+f].attr(h),f+=1;d||[e.group,e.markerGroup,e.dataLabelsGroup,e.labelBySeries].forEach(function(a){a&&a.animate({opacity:k},q)})}b&&d&&e.points&&e.setAllPointsToState(a)},setAllPointsToState:function(a){this.points.forEach(function(b){b.setState&&b.setState(a)})},setVisible:function(a, b){var e=this,f=e.chart,g=e.legendItem,d=f.options.chart.ignoreHiddenSeries,h=e.visible;var p=(e.visible=a=e.options.visible=e.userOptions.visible="undefined"===typeof a?!h:a)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(a){if(e[a])e[a][p]()});if(f.hoverSeries===e||(f.hoverPoint&&f.hoverPoint.series)===e)e.onMouseOut();g&&f.legend.colorizeItem(e,a);e.isDirty=!0;e.options.stacking&&f.series.forEach(function(a){a.options.stacking&&a.visible&&(a.isDirty=!0)}); e.linkedSeries.forEach(function(b){b.setVisible(a,!1)});d&&(f.isDirtyBox=!0);L(e,p);!1!==b&&f.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:I.drawTrackerGraph})});Q(k,"Core/Responsive.js",[k["Core/Chart/Chart.js"],k["Core/Utilities.js"]],function(k,t){var B=t.find,D=t.isArray,J=t.isObject, M=t.merge,n=t.objectEach,z=t.pick,G=t.splat,d=t.uniqueKey;k.prototype.setResponsive=function(k,n){var u=this.options.responsive,w=[],r=this.currentResponsive;!n&&u&&u.rules&&u.rules.forEach(function(m){"undefined"===typeof m._id&&(m._id=d());this.matchResponsiveRule(m,w)},this);n=M.apply(0,w.map(function(d){return B(u.rules,function(m){return m._id===d}).chartOptions}));n.isResponsiveOptions=!0;w=w.toString()||void 0;w!==(r&&r.ruleIds)&&(r&&this.update(r.undoOptions,k,!0),w?(r=this.currentOptions(n), r.isResponsiveOptions=!0,this.currentResponsive={ruleIds:w,mergedOptions:n,undoOptions:r},this.update(n,k,!0)):this.currentResponsive=void 0)};k.prototype.matchResponsiveRule=function(d,k){var n=d.condition;(n.callback||function(){return this.chartWidth<=z(n.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=z(n.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=z(n.minWidth,0)&&this.chartHeight>=z(n.minHeight,0)}).call(this)&&k.push(d._id)};k.prototype.currentOptions=function(d){function k(d,m,u,q){var h; n(d,function(b,g){if(!q&&-1r&&(w?d=k-m:k=d+m);n(d)&&n(k)||(d=k=void 0);return{min:d,max:k}};return d}(); return function(){function d(){}d.compose=function(d){d.keepProps.push("navigatorAxis");D(d,"init",function(){this.navigatorAxis||(this.navigatorAxis=new G(this))});D(d,"zoom",function(d){var k=this.chart.options,n=k.navigator,r=this.navigatorAxis,m=k.chart.pinchType,u=k.rangeSelector;k=k.chart.zoomType;this.isXAxis&&(n&&n.enabled||u&&u.enabled)&&("y"===k?d.zoomed=!1:(!B&&"xy"===k||B&&"xy"===m)&&this.options.range&&(n=r.previousZoom,M(d.newMin)?r.previousZoom=[this.min,this.max]:n&&(d.newMin=n[0], d.newMax=n[1],r.previousZoom=void 0)));"undefined"!==typeof d.zoomed&&d.preventDefault()})};d.AdditionsClass=G;return d}()});Q(k,"Core/Axis/ScrollbarAxis.js",[k["Core/Globals.js"],k["Core/Utilities.js"]],function(k,t){var B=t.addEvent,D=t.defined,J=t.pick;return function(){function t(){}t.compose=function(n,t){B(n,"afterInit",function(){var n=this;n.options&&n.options.scrollbar&&n.options.scrollbar.enabled&&(n.options.scrollbar.vertical=!n.horiz,n.options.startOnTick=n.options.endOnTick=!1,n.scrollbar= new t(n.chart.renderer,n.options.scrollbar,n.chart),B(n.scrollbar,"changed",function(d){var t=J(n.options&&n.options.min,n.min),u=J(n.options&&n.options.max,n.max),z=D(n.dataMin)?Math.min(t,n.min,n.dataMin):t,w=(D(n.dataMax)?Math.max(u,n.max,n.dataMax):u)-z;D(t)&&D(u)&&(n.horiz&&!n.reversed||!n.horiz&&n.reversed?(t=z+w*this.to,z+=w*this.from):(t=z+w*(1-this.from),z+=w*(1-this.to)),J(this.options.liveRedraw,k.svg&&!k.isTouchDevice&&!this.chart.isBoosting)||"mouseup"===d.DOMType||!D(d.DOMType)?n.setExtremes(z, t,!0,"mousemove"!==d.DOMType,d):this.setRange(this.from,this.to))}))});B(n,"afterRender",function(){var k=Math.min(J(this.options.min,this.min),this.min,J(this.dataMin,this.min)),d=Math.max(J(this.options.max,this.max),this.max,J(this.dataMax,this.max)),n=this.scrollbar,u=this.axisTitleMargin+(this.titleOffset||0),t=this.chart.scrollbarsOffsets,w=this.options.margin||0;n&&(this.horiz?(this.opposite||(t[1]+=u),n.position(this.left,this.top+this.height+2+t[1]-(this.opposite?w:0),this.width,this.height), this.opposite||(t[1]+=w),u=1):(this.opposite&&(t[0]+=u),n.position(this.left+this.width+2+t[0]-(this.opposite?0:w),this.top,this.width,this.height),this.opposite&&(t[0]+=w),u=0),t[u]+=n.size+n.options.margin,isNaN(k)||isNaN(d)||!D(this.min)||!D(this.max)||this.min===this.max?n.setRange(0,1):(t=(this.min-k)/(d-k),k=(this.max-k)/(d-k),this.horiz&&!this.reversed||!this.horiz&&this.reversed?n.setRange(t,k):n.setRange(1-k,1-t)))});B(n,"afterGetOffset",function(){var k=this.horiz?2:1,d=this.scrollbar;d&& (this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[k]+=d.size+d.options.margin)})};return t}()});Q(k,"Core/Scrollbar.js",[k["Core/Axis/Axis.js"],k["Core/Globals.js"],k["Core/Axis/ScrollbarAxis.js"],k["Core/Utilities.js"],k["Core/Options.js"]],function(k,t,I,D,J){var B=D.addEvent,n=D.correctFloat,z=D.defined,G=D.destroyObjectProperties,d=D.fireEvent,O=D.merge,u=D.pick,F=D.removeEvent;D=J.defaultOptions;var w=t.hasTouch,r=t.isTouchDevice,m=t.swapXY=function(d,k){k&&d.forEach(function(d){for(var b= d.length,g,f=0;fthis.calculatedWidth?h.minWidth:0;return{chartX:(d.chartX-this.x-this.xOffset)/(this.barWidth-h),chartY:(d.chartY-this.y-this.yOffset)/(this.barWidth-h)}};k.prototype.destroy=function(){var d=this.chart.scroller;this.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(d){this[d]&&this[d].destroy&& (this[d]=this[d].destroy())},this);d&&this===d.scrollbar&&(d.scrollbar=null,G(d.scrollbarButtons))};k.prototype.drawScrollbarButton=function(d){var h=this.renderer,b=this.scrollbarButtons,g=this.options,f=this.size;var a=h.g().add(this.group);b.push(a);a=h.rect().addClass("highcharts-scrollbar-button").add(a);this.chart.styledMode||a.attr({stroke:g.buttonBorderColor,"stroke-width":g.buttonBorderWidth,fill:g.buttonBackgroundColor});a.attr(a.crisp({x:-.5,y:-.5,width:f+1,height:f+1,r:g.buttonBorderRadius}, a.strokeWidth()));a=h.path(m([["M",f/2+(d?-1:1),f/2-3],["L",f/2+(d?-1:1),f/2+3],["L",f/2+(d?2:-2),f/2]],g.vertical)).addClass("highcharts-scrollbar-arrow").add(b[d]);this.chart.styledMode||a.attr({fill:g.buttonArrowColor})};k.prototype.init=function(d,h,b){this.scrollbarButtons=[];this.renderer=d;this.userOptions=h;this.options=O(k.defaultOptions,h);this.chart=b;this.size=u(this.options.size,this.options.height);h.enabled&&(this.render(),this.addEvents())};k.prototype.mouseDownHandler=function(d){d= this.chart.pointer.normalize(d);d=this.cursorToScrollbarPosition(d);this.chartX=d.chartX;this.chartY=d.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=!0};k.prototype.mouseMoveHandler=function(k){var h=this.chart.pointer.normalize(k),b=this.options.vertical?"chartY":"chartX",g=this.initPositions||[];!this.grabbedCenter||k.touches&&0===k.touches[0][b]||(h=this.cursorToScrollbarPosition(h)[b],b=this[b],b=h-b,this.hasDragged=!0,this.updatePosition(g[0]+b,g[1]+b),this.hasDragged&&d(this, "changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:k.type,DOMEvent:k}))};k.prototype.mouseUpHandler=function(k){this.hasDragged&&d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:k.type,DOMEvent:k});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};k.prototype.position=function(d,h,b,g){var f=this.options.vertical,a=0,p=this.rendered?"animate":"attr";this.x=d;this.y=h+this.trackBorderWidth;this.width=b;this.xOffset=this.height=g;this.yOffset=a;f? (this.width=this.yOffset=b=a=this.size,this.xOffset=h=0,this.barWidth=g-2*b,this.x=d+=this.options.margin):(this.height=this.xOffset=g=h=this.size,this.barWidth=b-2*g,this.y+=this.options.margin);this.group[p]({translateX:d,translateY:this.y});this.track[p]({width:b,height:g});this.scrollbarButtons[1][p]({translateX:f?0:b-h,translateY:f?g-a:0})};k.prototype.removeEvents=function(){this._events.forEach(function(d){F.apply(null,d)});this._events.length=0};k.prototype.render=function(){var d=this.renderer, h=this.options,b=this.size,g=this.chart.styledMode,f;this.group=f=d.g("scrollbar").attr({zIndex:h.zIndex,translateY:-99999}).add();this.track=d.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:h.trackBorderRadius||0,height:b,width:b}).add(f);g||this.track.attr({fill:h.trackBackgroundColor,stroke:h.trackBorderColor,"stroke-width":h.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%2/2});this.scrollbarGroup=d.g().add(f);this.scrollbar= d.rect().addClass("highcharts-scrollbar-thumb").attr({height:b,width:b,r:h.barBorderRadius||0}).add(this.scrollbarGroup);this.scrollbarRifles=d.path(m([["M",-3,b/4],["L",-3,2*b/3],["M",0,b/4],["L",0,2*b/3],["M",3,b/4],["L",3,2*b/3]],h.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);g||(this.scrollbar.attr({fill:h.barBackgroundColor,stroke:h.barBorderColor,"stroke-width":h.barBorderWidth}),this.scrollbarRifles.attr({stroke:h.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)};k.prototype.setRange=function(d,h){var b=this.options,g=b.vertical,f=b.minWidth,a=this.barWidth,p,e=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(z(a)){d=Math.max(d,0);var k=Math.ceil(a*d);this.calculatedWidth=p=n(a*Math.min(h,1)-k);p=p?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===b.showFull&&(0>=d&&1<=h?this.group.hide():this.group.show());this.rendered= !0}};k.prototype.trackClick=function(k){var h=this.chart.pointer.normalize(k),b=this.to-this.from,g=this.y+this.scrollbarTop,f=this.x+this.scrollbarLeft;this.options.vertical&&h.chartY>g||!this.options.vertical&&h.chartX>f?this.updatePosition(this.from+b,this.to+b):this.updatePosition(this.from-b,this.to-b);d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:k})};k.prototype.update=function(d){this.destroy();this.init(this.chart.renderer,O(!0,this.options,d),this.chart)};k.prototype.updatePosition= function(d,h){1d&&(h=n(h-d),d=0);this.from=d;this.to=h};k.defaultOptions={height:r?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};return k}();t.Scrollbar|| (D.scrollbar=O(!0,J.defaultOptions,D.scrollbar),t.Scrollbar=J,I.compose(k,J));return t.Scrollbar});Q(k,"Core/Navigator.js",[k["Core/Axis/Axis.js"],k["Core/Series/Series.js"],k["Core/Chart/Chart.js"],k["Core/Color/Color.js"],k["Core/Globals.js"],k["Series/LineSeries.js"],k["Core/Axis/NavigatorAxis.js"],k["Core/Options.js"],k["Core/Scrollbar.js"],k["Core/Utilities.js"]],function(k,t,I,D,J,M,n,z,G,d){D=D.parse;var B=J.hasTouch,u=J.isTouchDevice,F=z.defaultOptions,w=d.addEvent,r=d.clamp,m=d.correctFloat, L=d.defined,q=d.destroyObjectProperties,h=d.erase,b=d.extend,g=d.find,f=d.isArray,a=d.isNumber,p=d.merge,e=d.pick,E=d.removeEvent,H=d.splat,y=function(b){for(var e=[],f=1;ft&&(this.grabbedLeft?d=k.toPixels(f-t-n,!0):this.grabbedRight&&(g=k.toPixels(b+t+n,!0)));this.zoomedMax=r(Math.max(d,g),0,y);this.zoomedMin=r(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(d,g),0,y);this.range=this.zoomedMax-this.zoomedMin;y=Math.round(this.zoomedMax);d=Math.round(this.zoomedMin); v&&(this.navigatorGroup.attr({visibility:"visible"}),A=A&&!this.hasDragged?"animate":"attr",this.drawMasks(d,y,u,A),this.drawOutline(d,y,u,A),this.navigatorOptions.handles.enabled&&(this.drawHandle(d,0,u,A),this.drawHandle(y,1,u,A)));this.scrollbar&&(u?(u=this.top-h,q=this.left-h+(v||!q.opposite?0:(q.titleOffset||0)+q.axisTitleMargin),h=p+2*h):(u=this.top+(v?this.height:-h),q=this.left-h),this.scrollbar.position(q,u,c,h),this.scrollbar.setRange(this.zoomedMin/(p||1),this.zoomedMax/(p||1)));this.rendered= !0}};d.prototype.addMouseEvents=function(){var a=this,b=a.chart,e=b.container,f=[],c,d;a.mouseMoveHandler=c=function(c){a.onMouseMove(c)};a.mouseUpHandler=d=function(c){a.onMouseUp(c)};f=a.getPartsEvents("mousedown");f.push(w(b.renderTo,"mousemove",c),w(e.ownerDocument,"mouseup",d));B&&(f.push(w(b.renderTo,"touchmove",c),w(e.ownerDocument,"touchend",d)),f.concat(a.getPartsEvents("touchstart")));a.eventsToUnbind=f;a.series&&a.series[0]&&f.push(w(a.series[0].xAxis,"foundExtremes",function(){b.navigator.modifyNavigatorAxisExtremes()}))}; d.prototype.getPartsEvents=function(a){var b=this,e=[];["shades","handles"].forEach(function(f){b[f].forEach(function(c,d){e.push(w(c.element,a,function(a){b[f+"Mousedown"](a,d)}))})});return e};d.prototype.shadesMousedown=function(a,b){a=this.chart.pointer.normalize(a);var e=this.chart,f=this.xAxis,c=this.zoomedMin,d=this.left,g=this.size,h=this.range,p=a.chartX;e.inverted&&(p=a.chartY,d=this.top);if(1===b)this.grabbedCenter=p,this.fixedWidth=h,this.dragOffset=p-c;else{a=p-d-h/2;if(0===b)a=Math.max(0, a);else if(2===b&&a+h>=g)if(a=g-h,this.reversedExtremes){a-=h;var k=this.getUnionExtremes().dataMin}else var m=this.getUnionExtremes().dataMax;a!==c&&(this.fixedWidth=h,b=f.navigatorAxis.toFixedRange(a,a+h,k,m),L(b.min)&&e.xAxis[0].setExtremes(Math.min(b.min,b.max),Math.max(b.min,b.max),!0,null,{trigger:"navigator"}))}};d.prototype.handlesMousedown=function(a,b){this.chart.pointer.normalize(a);a=this.chart;var e=a.xAxis[0],f=this.reversedExtremes;0===b?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax, this.fixedExtreme=f?e.min:e.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=f?e.max:e.min);a.fixedRange=null};d.prototype.onMouseMove=function(a){var b=this,f=b.chart,d=b.left,c=b.navigatorSize,g=b.range,h=b.dragOffset,p=f.inverted;a.touches&&0===a.touches[0].pageX||(a=f.pointer.normalize(a),f=a.chartX,p&&(d=b.top,f=a.chartY),b.grabbedLeft?(b.hasDragged=!0,b.render(0,0,f-d,b.otherHandlePos)):b.grabbedRight?(b.hasDragged=!0,b.render(0,0,b.otherHandlePos,f-d)):b.grabbedCenter&& (b.hasDragged=!0,fc+h-g&&(f=c+h-g),b.render(0,0,f-h,f-h+g)),b.hasDragged&&b.scrollbar&&e(b.scrollbar.options.liveRedraw,J.svg&&!u&&!this.chart.isBoosting)&&(a.DOMType=a.type,setTimeout(function(){b.onMouseUp(a)},0)))};d.prototype.onMouseUp=function(b){var e=this.chart,f=this.xAxis,d=this.scrollbar,c=b.DOMEvent||b,g=e.inverted,h=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!d||!d.hasDragged)||"scrollbar"===b.trigger){d=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var p= this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var k=this.fixedExtreme;this.zoomedMax===this.size&&(k=this.reversedExtremes?d.dataMin:d.dataMax);0===this.zoomedMin&&(p=this.reversedExtremes?d.dataMax:d.dataMin);f=f.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,p,k);L(f.min)&&e.xAxis[0].setExtremes(Math.min(f.min,f.max),Math.max(f.min,f.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:c})}"mousemove"!==b.DOMType&&"touchmove"!==b.DOMType&& (this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null);this.navigatorEnabled&&a(this.zoomedMin)&&a(this.zoomedMax)&&(e=Math.round(this.zoomedMin),b=Math.round(this.zoomedMax),this.shades&&this.drawMasks(e,b,g,h),this.outline&&this.drawOutline(e,b,g,h),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(e,0,g,h),this.drawHandle(b,1,g,h)))};d.prototype.removeEvents= function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};d.prototype.removeBaseSeriesEvents=function(){var a=this.baseSeries||[];this.navigatorEnabled&&a[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&a.forEach(function(a){E(a,"updatedData",this.updatedDataHandler)},this),a[0].xAxis&&E(a[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};d.prototype.init=function(a){var b=a.options,f=b.navigator,d=f.enabled, c=b.scrollbar,g=c.enabled;b=d?f.height:0;var h=g?c.height:0;this.handles=[];this.shades=[];this.chart=a;this.setBaseSeries();this.height=b;this.scrollbarHeight=h;this.scrollbarEnabled=g;this.navigatorEnabled=d;this.navigatorOptions=f;this.scrollbarOptions=c;this.outlineHeight=b+h;this.opposite=e(f.opposite,!(d||!a.inverted));var m=this;d=m.baseSeries;c=a.xAxis.length;g=a.yAxis.length;var q=d&&d[0]&&d[0].xAxis||a.xAxis[0]||{options:{}};a.isDirtyBox=!0;m.navigatorEnabled?(m.xAxis=new k(a,p({breaks:q.options.breaks, ordinal:q.options.ordinal},f.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:c,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},a.inverted?{offsets:[h,0,-h,0],width:b}:{offsets:[0,-h,0,h],height:b})),m.yAxis=new k(a,p(f.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:g,isInternal:!0,reversed:e(f.yAxis&&f.yAxis.reversed,a.yAxis[0]&&a.yAxis[0].reversed,!1),zoomEnabled:!1},a.inverted?{width:b}: {height:b})),d||f.series.data?m.updateNavigatorSeries(!1):0===a.series.length&&(m.unbindRedraw=w(a,"beforeRedraw",function(){0c.indexOf(b)?(b&&(E(b,"updatedData",g.updatedDataHandler),delete b.navigatorSeries),a.chart&&a.destroy(),!1):!0});c&&c.length&&c.forEach(function(a){var r=a.navigatorSeries,v=b({color:a.color,visible:a.visible},f(m)?F.navigator.series: m);r&&!1===g.navigatorOptions.adaptToUpdatedData||(q.name="Navigator "+c.length,l=a.options||{},n=l.navigatorOptions||{},k=p(l,q,v,n),k.pointRange=e(v.pointRange,n.pointRange,F.plotOptions[k.type||"line"].pointRange),v=n.data||v.data,g.hasNavigatorData=g.hasNavigatorData||!!v,k.data=v||l.data&&l.data.slice(0),r&&r.options?r.update(k,d):(a.navigatorSeries=h.initSeries(k),a.navigatorSeries.baseSeries=a,y.push(a.navigatorSeries)))});if(m.data&&(!c||!c.length)||f(m))g.hasNavigatorData=!1,m=H(m),m.forEach(function(a, b){q.name="Navigator "+(y.length+1);k=p(F.navigator.series,{color:h.series[b]&&!h.series[b].options.isInternal&&h.series[b].color||h.options.colors[b]||h.options.colors[0]},q,a);k.data=a.data;k.data&&(g.hasNavigatorData=!0,y.push(h.initSeries(k)))});a&&this.addBaseSeriesEvents()};d.prototype.addBaseSeriesEvents=function(){var a=this,b=a.baseSeries||[];b[0]&&b[0].xAxis&&w(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes);b.forEach(function(b){w(b,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0, !1)});w(b,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)});!1!==this.navigatorOptions.adaptToUpdatedData&&b.xAxis&&w(b,"updatedData",this.updatedDataHandler);w(b,"remove",function(){this.navigatorSeries&&(h(a.series,this.navigatorSeries),L(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)})},this)};d.prototype.getBaseSeriesMin=function(a){return this.baseSeries.reduce(function(a,b){return Math.min(a,b.xData?b.xData[0]:a)},a)}; d.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))};d.prototype.modifyBaseAxisExtremes=function(){var b=this.chart.navigator,f=this.getExtremes(),d=f.dataMin,g=f.dataMax;f=f.max-f.min;var c=b.stickToMin,h=b.stickToMax,p=e(this.options.overscroll,0),k=b.series&&b.series[0],m=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(c){var n= d;var q=n+f}h&&(q=g+p,c||(n=Math.max(d,q-f,b.getBaseSeriesMin(k&&k.xData?k.xData[0]:-Number.MAX_VALUE))));m&&(c||h)&&a(n)&&(this.min=this.userMin=n,this.max=this.userMax=q)}b.stickToMin=b.stickToMax=null};d.prototype.updatedDataHandler=function(){var b=this.chart.navigator,e=this.navigatorSeries,f=b.getBaseSeriesMin(this.xData[0]);b.stickToMax=b.reversedExtremes?0===Math.round(b.zoomedMin):Math.round(b.zoomedMax)>=Math.round(b.size);b.stickToMin=a(this.xAxis.min)&&this.xAxis.min<=f&&(!this.chart.fixedRange|| !b.stickToMax);e&&!b.hasNavigatorData&&(e.options.pointStart=this.xData[0],e.setData(this.options.data,!1,null,!1))};d.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(w(this.chart,"redraw",function(){var a=this.navigator,b=a&&(a.baseSeries&&a.baseSeries[0]&&a.baseSeries[0].xAxis||this.xAxis[0]);b&&a.render(b.min,b.max)}),w(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}))};d.prototype.destroy=function(){this.removeEvents();this.xAxis&&(h(this.chart.xAxis,this.xAxis),h(this.chart.axes,this.xAxis));this.yAxis&&(h(this.chart.yAxis,this.yAxis),h(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){q(a)},this)};return d}();J.Navigator||(J.Navigator=N,n.compose(k),w(I,"beforeShowResetZoom",function(){var a=this.options,b=a.navigator,e=a.rangeSelector;if((b&&b.enabled||e&&e.enabled)&&(!u&&"x"===a.chart.zoomType||u&&"x"===a.chart.pinchType))return!1}),w(I,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new N(this)}),w(I,"afterSetChartSize", function(){var a=this.legend,b=this.navigator;if(b){var f=a&&a.options;var d=b.xAxis;var g=b.yAxis;var c=b.scrollbarHeight;this.inverted?(b.left=b.opposite?this.chartWidth-c-b.height:this.spacing[3]+c,b.top=this.plotTop+c):(b.left=this.plotLeft+c,b.top=b.navigatorOptions.top||this.chartHeight-b.height-c-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(f&&"bottom"===f.verticalAlign&&"proximate"!==f.layout&&f.enabled&&!f.floating?a.legendHeight+e(f.margin, 10):0)-(this.titleOffset?this.titleOffset[2]:0));d&&g&&(this.inverted?d.options.left=g.options.left=b.left:d.options.top=g.options.top=b.top,d.setAxisSize(),g.setAxisSize())}}),w(I,"update",function(a){var b=a.options.navigator||{},e=a.options.scrollbar||{};this.navigator||this.scroller||!b.enabled&&!e.enabled||(p(!0,this.options.navigator,b),p(!0,this.options.scrollbar,e),delete a.options.navigator,delete a.options.scrollbar)}),w(I,"afterUpdate",function(a){this.navigator||this.scroller||!this.options.navigator.enabled&& !this.options.scrollbar.enabled||(this.scroller=this.navigator=new N(this),e(a.redraw,!0)&&this.redraw(a.animation))}),w(I,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),w(M,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),I.prototype.callbacks.push(function(a){var b=a.navigator;b&&a.xAxis[0]&&(a=a.xAxis[0].getExtremes(),b.render(a.min,a.max))}));J.Navigator=N;return J.Navigator});Q(k,"Core/Axis/OrdinalAxis.js", [k["Core/Axis/Axis.js"],k["Core/Globals.js"],k["Core/Series/CartesianSeries.js"],k["Core/Utilities.js"],k["Core/Chart/Chart.js"]],function(k,t,I,D,J){var B=D.addEvent,n=D.css,z=D.defined,G=D.pick,d=D.timeUnits,O;(function(k){var u=function(){function d(d){this.index={};this.axis=d}d.prototype.beforeSetTickPositions=function(){var d=this.axis,k=d.ordinal,n=[],q,h=!1,b=d.getExtremes(),g=b.min,f=b.max,a,p=d.isXAxis&&!!d.options.breaks;b=d.options.ordinal;var e=Number.MAX_VALUE,u=d.chart.options.chart.ignoreHiddenSeries, t;if(b||p){d.series.forEach(function(a,b){q=[];if(!(u&&!1===a.visible||!1===a.takeOrdinalPosition&&!p)&&(n=n.concat(a.processedXData),y=n.length,n.sort(function(a,b){return a-b}),e=Math.min(e,G(a.closestPointRange,e)),y)){for(b=0;bw||f-n[n.length-1]>w)&&(h=!0)}else d.options.overscroll&& (2===y?e=n[1]-n[0]:1===y?(e=d.options.overscroll,n=[n[0],n[0]+e]):e=k.overscrollPointsRange);h?(d.options.overscroll&&(k.overscrollPointsRange=e,n=n.concat(k.getOverscrollPositions())),k.positions=n,w=d.ordinal2lin(Math.max(g,n[0]),!0),a=Math.max(d.ordinal2lin(Math.min(f,n[n.length-1]),!0),1),k.slope=f=(f-g)/(a-w),k.offset=g-w*f):(k.overscrollPointsRange=G(d.closestPointRange,k.overscrollPointsRange),k.positions=d.ordinal.slope=k.offset=void 0)}d.isOrdinal=b&&h;k.groupIntervalFactor=null};d.prototype.getExtendedPositions= function(){var d=this,k=d.axis,n=k.constructor.prototype,q=k.chart,h=k.series[0].currentDataGrouping,b=d.index,g=h?h.count+h.unitName:"raw",f=k.options.overscroll,a=k.getExtremes(),p;b||(b=d.index={});if(!b[g]){var e={series:[],chart:q,getExtremes:function(){return{min:a.dataMin,max:a.dataMax+f}},options:{ordinal:!0},ordinal:{},ordinal2lin:n.ordinal2lin,val2lin:n.val2lin};e.ordinal.axis=e;k.series.forEach(function(a){p={xAxis:e,xData:a.xData.slice(),chart:q,destroyGroupedData:t.noop,getProcessedData:I.prototype.getProcessedData}; p.xData=p.xData.concat(d.getOverscrollPositions());p.options={dataGrouping:h?{enabled:!0,forced:!0,approximation:"open",units:[[h.unitName,[h.count]]]}:{enabled:!1}};a.processData.apply(p);e.series.push(p)});k.ordinal.beforeSetTickPositions.apply({axis:e});b[g]=e.ordinal.positions}return b[g]};d.prototype.getGroupIntervalFactor=function(d,k,n){n=n.processedXData;var m=n.length,h=[];var b=this.groupIntervalFactor;if(!b){for(b=0;bf.length||"undefined"===typeof h)return w.getTimeTicks.apply(w,arguments);var v=f.length;for(m=0;mb;f[m]5*a||c){if(f[m]>u){for(n=w.getTimeTicks(k,f[e],f[m],g);n.length&&n[0]<=u;)n.shift(); n.length&&(u=n[n.length-1]);C.push(r.length);r=r.concat(n)}e=m+1}if(c)break}n=n.info;if(p&&n.unitRange<=d.hour){m=r.length-1;for(e=1;eb?C-1:C;for(x=void 0;e--;)m=l[e],C=Math.abs(x-m),x&&C<.8*t&& (null===w||C<.8*w)?(q[r[e]]&&!q[r[e+1]]?(C=e+1,x=m):C=e,r.splice(C,1)):x=m}return r};t.lin2val=function(d,h){var b=this.ordinal,g=b.positions;if(g){var f=b.slope,a=b.offset;b=g.length-1;if(h)if(0>d)d=g[0];else if(d>b)d=g[b];else{b=Math.floor(d);var k=d-b}else for(;b--;)if(h=f*b+a,d>=h){f=f*(b+1)+a;k=(d-h)/(f-h);break}return"undefined"!==typeof k&&"undefined"!==typeof g[b]?g[b]+(k?k*(g[b+1]-g[b]):0):d}return d};t.val2lin=function(d,h){var b=this.ordinal,g=b.positions;if(g){var f=g.length,a;for(a=f;a--;)if(g[a]=== d){var k=a;break}for(a=f-1;a--;)if(d>g[a]||0===a){d=(d-g[a])/(g[a+1]-g[a]);k=a+d;break}h=h?k:b.slope*(k||0)+b.offset}else h=d;return h};t.ordinal2lin=t.val2lin;B(u,"afterInit",function(){this.ordinal||(this.ordinal=new k.Composition(this))});B(u,"foundExtremes",function(){this.isXAxis&&z(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&& z(this.userMin)&&(this.min+=this.options.overscroll))});B(u,"afterSetScale",function(){this.horiz&&!this.isDirty&&(this.isDirty=this.isOrdinal&&this.chart.navigator&&!this.chart.navigator.adaptToUpdatedData)});B(u,"initialAxisTranslation",function(){this.ordinal&&(this.ordinal.beforeSetTickPositions(),this.tickInterval=this.ordinal.postProcessTickInterval(this.tickInterval))});B(r,"pan",function(d){var h=this.xAxis[0],b=h.options.overscroll,g=d.originalEvent.chartX,f=this.options.chart&&this.options.chart.panning, a=!1;if(f&&"y"!==f.type&&h.options.ordinal&&h.series.length){var k=this.mouseDownX,e=h.getExtremes(),m=e.dataMax,q=e.min,y=e.max,r=this.hoverPoints,u=h.closestPointRange||h.ordinal&&h.ordinal.overscrollPointsRange;k=(k-g)/(h.translationSlope*(h.ordinal.slope||u));var t={ordinal:{positions:h.ordinal.getExtendedPositions()}};u=h.lin2val;var w=h.val2lin;if(!t.ordinal.positions)a=!0;else if(1k){r=t;var C=h.ordinal.positions?h:t}else r=h.ordinal.positions? h:t,C=t;t=C.ordinal.positions;m>t[t.length-1]&&t.push(m);this.fixedRange=y-q;k=h.navigatorAxis.toFixedRange(null,null,u.apply(r,[w.apply(r,[q,!0])+k,!0]),u.apply(C,[w.apply(C,[y,!0])+k,!0]));k.min>=Math.min(e.dataMin,q)&&k.max<=Math.max(m,y)+b&&h.setExtremes(k.min,k.max,!0,!1,{trigger:"pan"});this.mouseDownX=g;n(this.container,{cursor:"move"})}}else a=!0;a||f&&/y/.test(f.type)?b&&(h.max=h.dataMax+b):d.preventDefault()});B(m,"updatedData",function(){var d=this.xAxis;d&&d.options.ordinal&&delete d.ordinal.index})}})(O|| (O={}));O.compose(k,J,I);return O});Q(k,"Core/Axis/BrokenAxis.js",[k["Core/Axis/Axis.js"],k["Series/LineSeries.js"],k["Extensions/Stacking.js"],k["Core/Utilities.js"]],function(k,t,I,D){var B=D.addEvent,M=D.find,n=D.fireEvent,z=D.isArray,G=D.isNumber,d=D.pick,O=function(){function u(d){this.hasBreaks=!1;this.axis=d}u.isInBreak=function(d,k){var n=d.repeat||Infinity,m=d.from,u=d.to-d.from;k=k>=m?(k-m)%n:n-(m-k)%n;return d.inclusive?k<=u:k=d)break;else m.to=d)break;else if(u.isInBreak(t,d)){n-=d-t.from;break}}return n};u.prototype.findBreakAt=function(d,k){return M(k,function(k){return k.froma;)y-=f;for(;yb.to||g>b.from&&ab.from&&ab.from&&a>b.to&&ad&&k>=this.basePointRange&&(d=k),g=void 0;h--;)g&&!1!==g.visible||(g=n[h+1]),k=n[h],!1!==g.visible&&!1!==k.visible&&(g.x-k.x>d&&(g=(k.x+g.x)/2,n.splice(h+1,0,{isNull:!0,x:g}),b.stacking&&this.options.stacking&&(g=b.stacking.stacks[this.stackKey][g]=new I(b,b.options.stackLabels,!1,g,this.stack),g.total=0)),g=k);return this.getGraphPath(n)};B(k,"init",function(){this.brokenAxis||(this.brokenAxis=new O(this))});B(k,"afterInit",function(){"undefined"!== typeof this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)});B(k,"afterSetTickPositions",function(){var d=this.brokenAxis;if(d&&d.hasBreaks){var k=this.tickPositions,n=this.tickPositions.info,h=[],b;for(b=0;b=e[0]);H++);for(H;H<=n;H++){for(;"undefined"!== typeof e[E+1]&&a[H]>=e[E+1]||H===n;){var N=e[E];f.dataGroupInfo={start:f.cropStart+z,length:r[0].length};var K=d.apply(f,r);f.pointClass&&!u(f.dataGroupInfo.options)&&(f.dataGroupInfo.options=L(f.pointClass.prototype.optionsToObject.call({series:f},f.options.data[f.cropStart+z])),w.forEach(function(a){delete f.dataGroupInfo.options[a]}));"undefined"!==typeof K&&(c.push(N),l.push(K),p.push(f.dataGroupInfo));z=H;for(N=0;Nthis.chart.plotSizeX/f||b&&h.forced)&&(g=!0);return g?f:0};k.prototype.setDataGrouping=function(a,b){var e;b=q(b,!0);a||(a={forced:!1,units:null});if(this instanceof k)for(e=this.series.length;e--;)this.series[e].update({dataGrouping:a}, !1);else this.chart.options.series.forEach(function(b){b.dataGrouping=a},!1);this.ordinal&&(this.ordinal.slope=void 0);b&&this.chart.redraw()};I.dataGrouping=g;"";return g});Q(k,"Series/OHLCSeries.js",[k["Core/Series/Series.js"],k["Core/Series/Point.js"]],function(k,t){var B=k.seriesTypes;k.seriesType("ohlc","column",{lineWidth:1,tooltip:{pointFormat:'\u25cf {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
'}, threshold:null,states:{hover:{lineWidth:3}},stickyTracking:!0},{directTouch:!1,pointArrayMap:["open","high","low","close"],toYData:function(k){return[k.open,k.high,k.low,k.close]},pointValKey:"close",pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},init:function(){B.column.prototype.init.apply(this,arguments);this.options.stacking=void 0},pointAttribs:function(k,t){t=B.column.prototype.pointAttribs.call(this,k,t);var D=this.options;delete t.fill;!k.options.color&&D.upColor&&k.opend)break}}}G.forEach(function(a,b){a.plotX+=h;if("undefined"===typeof a.plotY||m)0<=a.plotX&&a.plotX<=L.len?m?(a.plotY=L.translate(a.x, 0,1,0,1),a.plotX=B(a.y)?q.translate(a.y,0,0,0,1):0):a.plotY=(L.opposite?0:k.yAxis.len)+L.offset:a.shapeArgs={};if((I=G[b-1])&&I.plotX===a.plotX){"undefined"===typeof I.stackIndex&&(I.stackIndex=0);var e=I.stackIndex+1}a.stackIndex=e});this.onSeries=u}}});Q(k,"Series/FlagsSeries.js",[k["Core/Series/Series.js"],k["Core/Globals.js"],k["Mixins/OnSeries.js"],k["Core/Renderer/SVG/SVGElement.js"],k["Core/Renderer/SVG/SVGRenderer.js"],k["Core/Utilities.js"]],function(k,t,I,D,J,M){function n(d){q[d+"pin"]= function(b,g,f,a,h){var e=h&&h.anchorX;h=h&&h.anchorY;"circle"===d&&a>f&&(b-=Math.round((a-f)/2),f=a);var k=q[d](b,g,f,a);if(e&&h){var p=e;"circle"===d?p=b+f/2:(b=k[0],f=k[1],"M"===b[0]&&"L"===f[0]&&(p=(b[1]+f[1])/2));k.push(["M",p,g>h?g:g+a],["L",e,h]);k=k.concat(q.circle(e-1,h-1,2,2))}return k}}var z=t.noop,B=M.addEvent,d=M.defined,O=M.isNumber,u=M.merge,F=M.objectEach,w=M.wrap;M=t.Renderer;var r=t.Series,m=t.TrackerMixin,L=t.VMLRenderer,q=J.prototype.symbols;"";k.seriesType("flags","column",{pointRange:0, allowOverlapX:!1,shape:"flag",stackDistance:12,textAlign:"center",tooltip:{pointFormat:"{point.text}
"},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:r.prototype.init,pointAttribs:function(d,b){var g=this.options,f=d&&d.color||this.color,a=g.lineColor,h=d&&d.lineWidth;d=d&&d.fillColor|| g.fillColor;b&&(d=g.states[b].fillColor,a=g.states[b].lineColor,h=g.states[b].lineWidth);return{fill:d||f,stroke:a||f,"stroke-width":h||g.lineWidth||0}},translate:I.translate,getPlotBox:I.getPlotBox,drawPoints:function(){var h=this.points,b=this.chart,g=b.renderer,f=b.inverted,a=this.options,k=a.y,e,m=this.yAxis,n={},q=[];for(e=h.length;e--;){var r=h[e];var z=(f?r.plotY:r.plotX)>this.xAxis.len;var B=r.plotX;var A=r.stackIndex;var C=r.options.shape||a.shape;var v=r.plotY;"undefined"!==typeof v&&(v= r.plotY+k-("undefined"!==typeof A&&A*a.stackDistance));r.anchorX=A?void 0:r.plotX;var c=A?void 0:r.plotY;var l="flag"!==C;A=r.graphic;"undefined"!==typeof v&&0<=B&&!z?(A||(A=r.graphic=g.label("",null,null,C,null,null,a.useHTML),b.styledMode||A.attr(this.pointAttribs(r)).css(u(a.style,r.style)),A.attr({align:l?"center":"left",width:a.width,height:a.height,"text-align":a.textAlign}).addClass("highcharts-point").add(this.markerGroup),r.graphic.div&&(r.graphic.div.point=r),b.styledMode||A.shadow(a.shadow), A.isNew=!0),0n-k, E=h=864E5*{month:28,year:365}[p]*m-w&&f-36E5<=864E5*{month:31,year:366}[p]*m+w?h=!0:"ytd"===p?(h=r-q+w===f,A=!b):"all"===p&&(h=d.max-d.min>=n-k,C=!b&&c&&h);p=!l&&(x||E||C||g);m=b&&h||h&&!c&&!A||b&&a.frozenStates;p?y=3:m&&(c=!0,y=2);v.state!==y&&(v.setState(y),0===y&&t===e&&a.setSelected(null))})};a.prototype.computeButtonRange=function(a){var b=a.type,d=a.count||1,f={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5}; if(f[b])a._range=f[b]*d;else if("month"===b||"year"===b)a._range=864E5*{month:30,year:365}[b]*d;a._offsetMin=h(a.offsetMin,0);a._offsetMax=h(a.offsetMax,0);a._range+=a._offsetMax-a._offsetMin};a.prototype.setInputValue=function(a,b){var e=this.chart.options.rangeSelector,d=this.chart.time,f=this[a+"Input"];O(b)&&(f.previousValue=f.HCTime,f.HCTime=b);f.value=d.dateFormat(e.inputEditDateFormat||"%Y-%m-%d",f.HCTime);this[a+"DateBox"].attr({text:d.dateFormat(e.inputDateFormat||"%b %e, %Y",f.HCTime)})}; a.prototype.showInput=function(a){var b=this.inputGroup,f=this[a+"DateBox"];d(this[a+"Input"],{left:b.translateX+f.x+"px",top:b.translateY+"px",width:f.width-2+"px",height:f.height-2+"px",border:"2px solid silver"})};a.prototype.hideInput=function(a){d(this[a+"Input"],{border:0,width:"1px",height:"1px"});this.setInputValue(a)};a.prototype.defaultInputDateParser=function(a,b){var e=new Date;return I.isSafari?Date.parse(a.split(" ").join("T")):b?Date.parse(a+"Z"):Date.parse(a)-6E4*e.getTimezoneOffset()}; a.prototype.drawInput=function(a){function e(){var a=t.value,c=g.xAxis[0];var e=g.scroller&&g.scroller.xAxis?g.scroller.xAxis:c;var d=e.dataMin,h=e.dataMax;e=(p.inputDateParser||l)(a,g.time.useUTC);e!==t.previousValue&&(t.previousValue=e,m(e)||(e=a.split("-"),e=Date.UTC(b(e[0]),b(e[1])-1,b(e[2]))),m(e)&&(g.time.useUTC||(e+=6E4*(new Date).getTimezoneOffset()),r?e>f.maxInput.HCTime?e=void 0:eh&&(e=h),"undefined"!==typeof e&&c.setExtremes(r?e:c.min,r?c.max:e, void 0,void 0,{trigger:"rangeSelectorInput"})))}var f=this,g=f.chart,h=g.renderer.style||{},k=g.renderer,p=g.options.rangeSelector,q=f.div,r="min"===a,t,u,c=this.inputGroup,l=this.defaultInputDateParser;this[a+"Label"]=u=k.label(n.lang[r?"rangeSelectorFrom":"rangeSelectorTo"],this.inputGroup.offset).addClass("highcharts-range-label").attr({padding:2}).add(c);c.offset+=u.width+5;this[a+"DateBox"]=k=k.label("",c.offset).addClass("highcharts-range-input").attr({padding:2,width:p.inputBoxWidth||90,height:p.inputBoxHeight|| 17,"text-align":"center"}).on("click",function(){f.showInput(a);f[a+"Input"].focus()});g.styledMode||k.attr({stroke:p.inputBoxBorderColor||"#cccccc","stroke-width":1});k.add(c);c.offset+=k.width+(r?10:0);this[a+"Input"]=t=B("input",{name:a,className:"highcharts-range-selector",type:"text"},{top:g.plotTop+"px"},q);g.styledMode||(u.css(L(h,p.labelStyle)),k.css(L({color:"#333333"},h,p.inputStyle)),d(t,w({position:"absolute",border:0,width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:h.fontSize, fontFamily:h.fontFamily,top:"-9999em"},p.inputStyle)));t.onfocus=function(){f.showInput(a)};t.onblur=function(){t===I.doc.activeElement&&e();f.hideInput(a);t.blur()};t.onchange=e;t.onkeypress=function(a){13===a.keyCode&&e()}};a.prototype.getPosition=function(){var a=this.chart,b=a.options.rangeSelector;a="top"===b.verticalAlign?a.plotTop-a.axisOffset[0]:0;return{buttonTop:a+b.buttonPosition.y,inputTop:a+b.inputPosition.y-10}};a.prototype.getYTDExtremes=function(a,b,d){var e=this.chart.time,f=new e.Date(a), g=e.get("FullYear",f);d=d?e.Date.UTC(g,0,1):+new e.Date(g,0,1);b=Math.max(b||0,d);f=f.getTime();return{max:Math.min(a||f,f),min:b}};a.prototype.render=function(a,b){var e=this,d=e.chart,f=d.renderer,g=d.container,k=d.options,m=k.exporting&&!1!==k.exporting.enabled&&k.navigation&&k.navigation.buttonOptions,p=n.lang,q=e.div,r=k.rangeSelector,c=h(k.chart.style&&k.chart.style.zIndex,0)+1;k=r.floating;var l=e.buttons;q=e.inputGroup;var t=r.buttonTheme,u=r.buttonPosition,w=r.inputPosition,z=r.inputEnabled, F=t&&t.states,D=d.plotLeft,G=e.buttonGroup,I,J=e.options.verticalAlign,L=d.legend,M=L&&L.options,O=u.y,Q=w.y,T=d.hasLoaded,ba=T?"animate":"attr",X=0,V=0;if(!1!==r.enabled){e.rendered||(e.group=I=f.g("range-selector-group").attr({zIndex:7}).add(),e.buttonGroup=G=f.g("range-selector-buttons").add(I),e.zoomText=f.text(p.rangeSelectorZoom,0,15).add(G),d.styledMode||(e.zoomText.css(r.labelStyle),t["stroke-width"]=h(t["stroke-width"],0)),e.buttonOptions.forEach(function(a,b){l[b]=f.button(a.text,0,0,function(c){var d= a.events&&a.events.click,f;d&&(f=d.call(a,c));!1!==f&&e.clickButton(b);e.isActive=!0},t,F&&F.hover,F&&F.select,F&&F.disabled).attr({"text-align":"center"}).add(G)}),!1!==z&&(e.div=q=B("div",null,{position:"relative",height:0,zIndex:c}),g.parentNode.insertBefore(q,g),e.inputGroup=q=f.g("input-group").add(I),q.offset=0,e.drawInput("min"),e.drawInput("max")));e.zoomText[ba]({x:h(D+u.x,D)});var fa=h(D+u.x,D)+e.zoomText.getBBox().width+5;e.buttonOptions.forEach(function(a,b){l[b][ba]({x:fa});fa+=l[b].width+ h(r.buttonSpacing,5)});D=d.plotLeft-d.spacing[3];e.updateButtonStates();m&&this.titleCollision(d)&&"top"===J&&"right"===u.align&&u.y+G.getBBox().height-12<(m.y||0)+m.height&&(X=-40);g=u.x-d.spacing[3];"right"===u.align?g+=X-D:"center"===u.align&&(g-=D/2);G.align({y:u.y,width:G.getBBox().width,align:u.align,x:g},!0,d.spacingBox);e.group.placed=T;e.buttonGroup.placed=T;!1!==z&&(X=m&&this.titleCollision(d)&&"top"===J&&"right"===w.align&&w.y-q.getBBox().height-12<(m.y||0)+m.height+d.spacing[0]?-40:0, "left"===w.align?g=D:"right"===w.align&&(g=-Math.max(d.axisOffset[1],-X)),q.align({y:w.y,width:q.getBBox().width,align:w.align,x:w.x+g-2},!0,d.spacingBox),m=q.alignAttr.translateX+q.alignOptions.x-X+q.getBBox().x+2,g=q.alignOptions.width,p=G.alignAttr.translateX+G.getBBox().x,D=G.getBBox().width+20,(w.align===u.align||p+D>m&&m+g>p&&O=-X?0:-X),translateY:q.alignAttr.translateY+G.getBBox().height+10}),e.setInputValue("min", a),e.setInputValue("max",b),e.inputGroup.placed=T);e.group.align({verticalAlign:J},!0,d.spacingBox);a=e.group.getBBox().height+20;b=e.group.alignAttr.translateY;"bottom"===J&&(L=M&&"bottom"===M.verticalAlign&&M.enabled&&!M.floating?L.legendHeight+h(M.margin,10):0,a=a+L-20,V=b-a-(k?0:r.y)-(d.titleOffset?d.titleOffset[2]:0)-10);if("top"===J)k&&(V=0),d.titleOffset&&d.titleOffset[0]&&(V=d.titleOffset[0]),V+=d.margin[0]-d.spacing[0]||0;else if("middle"===J)if(Q===O)V=0>Q?b+void 0:b;else if(Q||O)V=0>Q|| 0>O?V-Math.min(Q,O):b-a+NaN;e.group.translate(r.x,r.y+Math.floor(V));!1!==z&&(e.minInput.style.marginTop=e.group.translateY+"px",e.maxInput.style.marginTop=e.group.translateY+"px");e.rendered=!0}};a.prototype.getHeight=function(){var a=this.options,b=this.group,d=a.y,f=a.buttonPosition.y,g=a.inputPosition.y;if(a.height)return a.height;a=b?b.getBBox(!0).height+13+d:0;b=Math.min(g,f);if(0>g&&0>f||0k+d.width)&&(D?n=c=O(n,k,k+d.width):b=!0);b||r.push(["M",n,p],["L",c,l])}):G.forEach(function(a){var b;n=a.pos;c=n+a.len;p=l=Math.round(m+d.height-I);"pass"!==D&&(pm+d.height)&&(D?p=l=O(p,m,m+d.height):b=!0);b||r.push(["M",n,p],["L",c,l])})); a.path=0G?"hidden":"visible"});h=c.getBBox();if(L(c.y))if(k){if(t&&!m||!t&&m)p=c.y-h.height}else p=c.y-h.height/2;k?(e=n-h.x,d=n+this.width-h.x):(e="left"===this.labelAlign?n:0,d="right"===this.labelAlign?n+this.width:f.chartWidth);c.translateX=d&&(z=-(c.translateX+h.width-d)); c.attr({x:g+z,y:p,anchorX:k?g:this.opposite?0:f.chartWidth,anchorY:k?this.opposite?f.chartHeight:0:p+h.height/2})}});n.init=function(){f.apply(this,arguments);this.setCompare(this.options.compare)};n.setCompare=function(a){this.modifyValue="value"===a||"percent"===a?function(b,e){var d=this.compareValue;return"undefined"!==typeof b&&"undefined"!==typeof d?(b="value"===a?b-d:b/d*100-(100===this.options.compareBase?0:100),e&&(e.change=b),b):0}:null;this.userOptions.compare=a;this.chart.hasRendered&& (this.isDirty=!0)};n.processData=function(b){var e,d=-1,f=!0===this.options.compareStart?0:1;a.apply(this,arguments);if(this.xAxis&&this.processedYData){var g=this.processedXData;var h=this.processedYData;var k=h.length;this.pointArrayMap&&(d=this.pointArrayMap.indexOf(this.options.pointValKey||this.pointValKey||"y"));for(e=0;e=this.xAxis.min&&0!==m){this.compareValue=m;break}}}};z(D,"afterGetExtremes",function(a){a=a.dataExtremes;if(this.modifyValue&& a){var b=[this.modifyValue(a.dataMin),this.modifyValue(a.dataMax)];a.dataMin=d(b);a.dataMax=B(b)}});k.prototype.setCompare=function(a,d){this.isXAxis||(this.series.forEach(function(b){b.setCompare(a)}),b(d,!0)&&this.chart.redraw())};J.prototype.tooltipFormatter=function(a){var d=this.series.chart.numberFormatter;a=a.replace("{point.change}",(0