/*
 Highstock JS v9.1.1 (2021-06-03)

 (c) 2009-2021 Torstein Honsi

 License: www.highcharts.com/license
*/
'use strict';(function(V,P){"object"===typeof module&&module.exports?(P["default"]=P,module.exports=V.document?P(V):P):"function"===typeof define&&define.amd?define("highcharts/highstock",function(){return P(V)}):(V.Highcharts&&V.Highcharts.error(16,!0),V.Highcharts=P(V))})("undefined"!==typeof window?window:this,function(V){function P(c,v,A,C){c.hasOwnProperty(v)||(c[v]=C.apply(null,A))}var c={};P(c,"Core/Globals.js",[],function(){var c="undefined"!==typeof V?V:"undefined"!==typeof window?window:
{},v;(function(q){q.SVG_NS="http://www.w3.org/2000/svg";q.product="Highcharts";q.version="9.1.1";q.win=c;q.doc=q.win.document;q.svg=q.doc&&q.doc.createElementNS&&!!q.doc.createElementNS(q.SVG_NS,"svg").createSVGRect;q.userAgent=q.win.navigator&&q.win.navigator.userAgent||"";q.isChrome=-1!==q.userAgent.indexOf("Chrome");q.isFirefox=-1!==q.userAgent.indexOf("Firefox");q.isMS=/(edge|msie|trident)/i.test(q.userAgent)&&!q.win.opera;q.isSafari=!q.isChrome&&-1!==q.userAgent.indexOf("Safari");q.isTouchDevice=
/(Mobile|Android|Windows Phone)/.test(q.userAgent);q.isWebKit=-1!==q.userAgent.indexOf("AppleWebKit");q.deg2rad=2*Math.PI/360;q.hasBidiBug=q.isFirefox&&4>parseInt(q.userAgent.split("Firefox/")[1],10);q.hasTouch=!!q.win.TouchEvent;q.marginNames=["plotTop","marginRight","marginBottom","plotLeft"];q.noop=function(){};q.supportsPassiveEvents=function(){var c=!1;if(!q.isMS){var v=Object.defineProperty({},"passive",{get:function(){c=!0}});q.win.addEventListener&&q.win.removeEventListener&&(q.win.addEventListener("testPassive",
q.noop,v),q.win.removeEventListener("testPassive",q.noop,v))}return c}();q.charts=[];q.dateFormats={};q.seriesTypes={};q.symbolSizes={}})(v||(v={}));return v});P(c,"Core/Utilities.js",[c["Core/Globals.js"]],function(q){function c(a,l,f,e){var h=l?"Highcharts error":"Highcharts warning";32===a&&(a=h+": Deprecated member");var G=d(a),O=G?h+" #"+a+": www.highcharts.com/errors/"+a+"/":a.toString();if("undefined"!==typeof e){var r="";G&&(O+="?");M(e,function(y,Q){r+="\n - "+Q+": "+y;G&&(O+=encodeURI(Q)+
"="+encodeURI(y))});O+=r}J(q,"displayError",{chart:f,code:a,message:O,params:e},function(){if(l)throw Error(O);t.console&&-1===c.messages.indexOf(O)&&console.warn(O)});c.messages.push(O)}function A(a,l){var f={};M(a,function(G,h){if(H(a[h],!0)&&!a.nodeType&&l[h])G=A(a[h],l[h]),Object.keys(G).length&&(f[h]=G);else if(H(a[h])||a[h]!==l[h])f[h]=a[h]});return f}function C(a,l){return parseInt(a,l||10)}function z(a){return"string"===typeof a}function D(a){a=Object.prototype.toString.call(a);return"[object Array]"===
a||"[object Array Iterator]"===a}function H(a,l){return!!a&&"object"===typeof a&&(!l||!D(a))}function K(a){return H(a)&&"number"===typeof a.nodeType}function p(a){var l=a&&a.constructor;return!(!H(a,!0)||K(a)||!l||!l.name||"Object"===l.name)}function d(a){return"number"===typeof a&&!isNaN(a)&&Infinity>a&&-Infinity<a}function m(a){return"undefined"!==typeof a&&null!==a}function b(a,l,f){var e;z(l)?m(f)?a.setAttribute(l,f):a&&a.getAttribute&&((e=a.getAttribute(l))||"class"!==l||(e=a.getAttribute(l+
"Name"))):M(l,function(f,l){a.setAttribute(l,f)});return e}function g(a,l){var f;a||(a={});for(f in l)a[f]=l[f];return a}function L(){for(var a=arguments,l=a.length,f=0;f<l;f++){var e=a[f];if("undefined"!==typeof e&&null!==e)return e}}function x(a,l){q.isMS&&!q.svg&&l&&"undefined"!==typeof l.opacity&&(l.filter="alpha(opacity="+100*l.opacity+")");g(a.style,l)}function n(a,l,f,r,h){a=e.createElement(a);l&&g(a,l);h&&x(a,{padding:"0",border:"none",margin:"0"});f&&x(a,f);r&&r.appendChild(a);return a}function B(a,
l){return parseFloat(a.toPrecision(l||14))}function k(a,l,f){var e=q.getStyle||k;if("width"===l)return l=Math.min(a.offsetWidth,a.scrollWidth),f=a.getBoundingClientRect&&a.getBoundingClientRect().width,f<l&&f>=l-1&&(l=Math.floor(f)),Math.max(0,l-(e(a,"padding-left",!0)||0)-(e(a,"padding-right",!0)||0));if("height"===l)return Math.max(0,Math.min(a.offsetHeight,a.scrollHeight)-(e(a,"padding-top",!0)||0)-(e(a,"padding-bottom",!0)||0));t.getComputedStyle||c(27,!0);if(a=t.getComputedStyle(a,void 0)){var h=
a.getPropertyValue(l);L(f,"opacity"!==l)&&(h=C(h))}return h}function M(a,l,f){for(var e in a)Object.hasOwnProperty.call(a,e)&&l.call(f||a[e],a[e],e,a)}function N(a,l,f){function e(f,y){var Q=a.removeEventListener||q.removeEventListenerPolyfill;Q&&Q.call(a,f,y,!1)}function h(f){var y;if(a.nodeName){if(l){var Q={};Q[l]=!0}else Q=f;M(Q,function(a,Q){if(f[Q])for(y=f[Q].length;y--;)e(Q,f[Q][y].fn)})}}var r="function"===typeof a&&a.prototype||a;if(Object.hasOwnProperty.call(r,"hcEvents")){var O=r.hcEvents;
l?(r=O[l]||[],f?(O[l]=r.filter(function(a){return f!==a.fn}),e(l,f)):(h(O),O[l]=[])):(h(O),delete r.hcEvents)}}function J(a,l,f,r){f=f||{};if(e.createEvent&&(a.dispatchEvent||a.fireEvent&&a!==q)){var h=e.createEvent("Events");h.initEvent(l,!0,!0);f=g(h,f);a.dispatchEvent?a.dispatchEvent(f):a.fireEvent(l,f)}else if(a.hcEvents){f.target||g(f,{preventDefault:function(){f.defaultPrevented=!0},target:a,type:l});h=[];for(var u=a,O=!1;u.hcEvents;)Object.hasOwnProperty.call(u,"hcEvents")&&u.hcEvents[l]&&
(h.length&&(O=!0),h.unshift.apply(h,u.hcEvents[l])),u=Object.getPrototypeOf(u);O&&h.sort(function(a,y){return a.order-y.order});h.forEach(function(l){!1===l.fn.call(a,f)&&f.preventDefault()})}r&&!f.defaultPrevented&&r.call(a,f)}var w=q.charts,e=q.doc,t=q.win;"";(c||(c={})).messages=[];var a;Math.easeInOutSine=function(a){return-.5*(Math.cos(Math.PI*a)-1)};var r=Array.prototype.find?function(a,l){return a.find(l)}:function(a,l){var f,e=a.length;for(f=0;f<e;f++)if(l(a[f],f))return a[f]};M({map:"map",
each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(a,l){q[l]=function(f){var e;c(32,!1,void 0,(e={},e["Highcharts."+l]="use Array."+a,e));return Array.prototype[a].apply(f,[].slice.call(arguments,1))}});var E,F=function(){var a=Math.random().toString(36).substring(2,9)+"-",l=0;return function(){return"highcharts-"+(E?"":a)+l++}}();t.jQuery&&(t.jQuery.fn.highcharts=function(){var a=[].slice.call(arguments);if(this[0])return a[0]?(new (q[z(a[0])?a.shift():"Chart"])(this[0],a[0],a[1]),
this):w[b(this[0],"data-highcharts-chart")]});return{addEvent:function(a,l,f,e){void 0===e&&(e={});var h="function"===typeof a&&a.prototype||a;Object.hasOwnProperty.call(h,"hcEvents")||(h.hcEvents={});h=h.hcEvents;q.Point&&a instanceof q.Point&&a.series&&a.series.chart&&(a.series.chart.runTrackerClick=!0);var r=a.addEventListener||q.addEventListenerPolyfill;r&&r.call(a,l,f,q.supportsPassiveEvents?{passive:void 0===e.passive?-1!==l.indexOf("touch"):e.passive,capture:!1}:!1);h[l]||(h[l]=[]);h[l].push({fn:f,
order:"number"===typeof e.order?e.order:Infinity});h[l].sort(function(a,f){return a.order-f.order});return function(){N(a,l,f)}},arrayMax:function(a){for(var l=a.length,f=a[0];l--;)a[l]>f&&(f=a[l]);return f},arrayMin:function(a){for(var l=a.length,f=a[0];l--;)a[l]<f&&(f=a[l]);return f},attr:b,clamp:function(a,l,f){return a>l?a<f?a:f:l},cleanRecursively:A,clearTimeout:function(a){m(a)&&clearTimeout(a)},correctFloat:B,createElement:n,css:x,defined:m,destroyObjectProperties:function(a,l){M(a,function(f,
e){f&&f!==l&&f.destroy&&f.destroy();delete a[e]})},discardElement:function(e){a||(a=n("div"));e&&a.appendChild(e);a.innerHTML=""},erase:function(a,l){for(var f=a.length;f--;)if(a[f]===l){a.splice(f,1);break}},error:c,extend:g,extendClass:function(a,l){var f=function(){};f.prototype=new a;g(f.prototype,l);return f},find:r,fireEvent:J,getMagnitude:function(a){return Math.pow(10,Math.floor(Math.log(a)/Math.LN10))},getNestedProperty:function(a,l){for(a=a.split(".");a.length&&m(l);){var f=a.shift();if("undefined"===
typeof f||"__proto__"===f)return;l=l[f];if(!m(l)||"function"===typeof l||"number"===typeof l.nodeType||l===t)return}return l},getStyle:k,inArray:function(a,l,f){c(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"});return l.indexOf(a,f)},isArray:D,isClass:p,isDOMElement:K,isFunction:function(a){return"function"===typeof a},isNumber:d,isObject:H,isString:z,keys:function(a){c(32,!1,void 0,{"Highcharts.keys":"use Object.keys"});return Object.keys(a)},merge:function(){var a,l=arguments,f={},e=function(a,
f){"object"!==typeof a&&(a={});M(f,function(l,y){"__proto__"!==y&&"constructor"!==y&&(!H(l,!0)||p(l)||K(l)?a[y]=f[y]:a[y]=e(a[y]||{},l))});return a};!0===l[0]&&(f=l[1],l=Array.prototype.slice.call(l,2));var h=l.length;for(a=0;a<h;a++)f=e(f,l[a]);return f},normalizeTickInterval:function(a,l,f,e,h){var r=a;f=L(f,1);var O=a/f;l||(l=h?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===e&&(1===f?l=l.filter(function(a){return 0===a%1}):.1>=f&&(l=[1/f])));for(e=0;e<l.length&&!(r=l[e],h&&r*f>=a||!h&&O<=(l[e]+
(l[e+1]||l[e]))/2);e++);return r=B(r*f,-Math.round(Math.log(.001)/Math.LN10))},objectEach:M,offset:function(a){var l=e.documentElement;a=a.parentElement||a.parentNode?a.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:a.top+(t.pageYOffset||l.scrollTop)-(l.clientTop||0),left:a.left+(t.pageXOffset||l.scrollLeft)-(l.clientLeft||0),width:a.width,height:a.height}},pad:function(a,l,f){return Array((l||2)+1-String(a).replace("-","").length).join(f||"0")+a},pick:L,pInt:C,relativeLength:function(a,
l,f){return/%$/.test(a)?l*parseFloat(a)/100+(f||0):parseFloat(a)},removeEvent:N,splat:function(a){return D(a)?a:[a]},stableSort:function(a,l){var f=a.length,e,h;for(h=0;h<f;h++)a[h].safeI=h;a.sort(function(a,f){e=l(a,f);return 0===e?a.safeI-f.safeI:e});for(h=0;h<f;h++)delete a[h].safeI},syncTimeout:function(a,e,f){if(0<e)return setTimeout(a,e,f);a.call(0,f);return-1},timeUnits:{millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5,month:24192E5,year:314496E5},uniqueKey:F,useSerialIds:function(a){return E=
L(a,E)},wrap:function(a,e,f){var l=a[e];a[e]=function(){var a=Array.prototype.slice.call(arguments),e=arguments,r=this;r.proceed=function(){l.apply(r,arguments.length?arguments:e)};a.unshift(l);a=f.apply(this,a);r.proceed=null;return a}}}});P(c,"Core/Color/Palette.js",[],function(){return{colors:"#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1".split(" "),backgroundColor:"#ffffff",neutralColor100:"#000000",neutralColor80:"#333333",neutralColor60:"#666666",neutralColor40:"#999999",
neutralColor20:"#cccccc",neutralColor10:"#e6e6e6",neutralColor5:"#f2f2f2",neutralColor3:"#f7f7f7",highlightColor100:"#003399",highlightColor80:"#335cad",highlightColor60:"#6685c2",highlightColor20:"#ccd6eb",highlightColor10:"#e6ebf5",positiveColor:"#06b535",negativeColor:"#f21313"}});P(c,"Core/Chart/ChartDefaults.js",[c["Core/Color/Palette.js"]],function(q){return{panning:{enabled:!1,type:"x"},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}},zoomBySingleTouch:!1,width:null,height:null,borderColor:q.highlightColor80,backgroundColor:q.backgroundColor,plotBorderColor:q.neutralColor20}});P(c,"Core/Color/Color.js",[c["Core/Globals.js"],c["Core/Utilities.js"]],function(q,c){var v=c.isNumber,C=c.merge,z=c.pInt;c=function(){function c(v){this.parsers=[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(p){return[z(p[1]),
z(p[2]),z(p[3]),parseFloat(p[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(p){return[z(p[1]),z(p[2]),z(p[3]),1]}}];this.rgba=[];var K=q.Color;if(K&&K!==c)return new K(v);if(!(this instanceof c))return new c(v);this.init(v)}c.parse=function(q){return new c(q)};c.prototype.init=function(q){var K,p;if((this.input=q=c.names[q&&q.toLowerCase?q.toLowerCase():""]||q)&&q.stops)this.stops=q.stops.map(function(b){return new c(b[1])});else{if(q&&q.charAt&&
"#"===q.charAt()){var d=q.length;q=parseInt(q.substr(1),16);7===d?K=[(q&16711680)>>16,(q&65280)>>8,q&255,1]:4===d&&(K=[(q&3840)>>4|(q&3840)>>8,(q&240)>>4|q&240,(q&15)<<4|q&15,1])}if(!K)for(p=this.parsers.length;p--&&!K;){var m=this.parsers[p];(d=m.regex.exec(q))&&(K=m.parse(d))}}this.rgba=K||[]};c.prototype.get=function(q){var c=this.input,p=this.rgba;if("undefined"!==typeof this.stops){var d=C(c);d.stops=[].concat(d.stops);this.stops.forEach(function(m,b){d.stops[b]=[d.stops[b][0],m.get(q)]})}else d=
p&&v(p[0])?"rgb"===q||!q&&1===p[3]?"rgb("+p[0]+","+p[1]+","+p[2]+")":"a"===q?p[3]:"rgba("+p.join(",")+")":c;return d};c.prototype.brighten=function(q){var c,p=this.rgba;if(this.stops)this.stops.forEach(function(d){d.brighten(q)});else if(v(q)&&0!==q)for(c=0;3>c;c++)p[c]+=z(255*q),0>p[c]&&(p[c]=0),255<p[c]&&(p[c]=255);return this};c.prototype.setOpacity=function(q){this.rgba[3]=q;return this};c.prototype.tweenTo=function(q,c){var p=this.rgba,d=q.rgba;d.length&&p&&p.length?(q=1!==d[3]||1!==p[3],c=(q?
"rgba(":"rgb(")+Math.round(d[0]+(p[0]-d[0])*(1-c))+","+Math.round(d[1]+(p[1]-d[1])*(1-c))+","+Math.round(d[2]+(p[2]-d[2])*(1-c))+(q?","+(d[3]+(p[3]-d[3])*(1-c)):"")+")"):c=q.input||"none";return c};c.names={white:"#ffffff",black:"#000000"};return c}();"";return c});P(c,"Core/Time.js",[c["Core/Globals.js"],c["Core/Utilities.js"]],function(q,c){var v=q.win,C=c.defined,z=c.error,D=c.extend,H=c.isObject,K=c.merge,p=c.objectEach,d=c.pad,m=c.pick,b=c.splat,g=c.timeUnits,L=q.isSafari&&Intl.DateTimeFormat.prototype.formatRange,
x=q.isSafari&&!Intl.DateTimeFormat.prototype.formatRange;c=function(){function n(b){this.options={};this.variableTimezone=this.useUTC=!1;this.Date=v.Date;this.getTimezoneOffset=this.timezoneOffsetFunction();this.update(b)}n.prototype.get=function(b,k){if(this.variableTimezone||this.timezoneOffset){var n=k.getTime(),B=n-this.getTimezoneOffset(k);k.setTime(B);b=k["getUTC"+b]();k.setTime(n);return b}return this.useUTC?k["getUTC"+b]():k["get"+b]()};n.prototype.set=function(b,k,n){if(this.variableTimezone||
this.timezoneOffset){if("Milliseconds"===b||"Seconds"===b||"Minutes"===b&&0===this.getTimezoneOffset(k)%36E5)return k["setUTC"+b](n);var g=this.getTimezoneOffset(k);g=k.getTime()-g;k.setTime(g);k["setUTC"+b](n);b=this.getTimezoneOffset(k);g=k.getTime()+b;return k.setTime(g)}return this.useUTC||L&&"FullYear"===b?k["setUTC"+b](n):k["set"+b](n)};n.prototype.update=function(b){var k=m(b&&b.useUTC,!0);this.options=b=K(!0,this.options||{},b);this.Date=b.Date||v.Date||Date;this.timezoneOffset=(this.useUTC=
k)&&b.timezoneOffset;this.getTimezoneOffset=this.timezoneOffsetFunction();this.variableTimezone=k&&!(!b.getTimezoneOffset&&!b.timezone)};n.prototype.makeTime=function(b,k,n,g,d,w){if(this.useUTC){var e=this.Date.UTC.apply(0,arguments);var t=this.getTimezoneOffset(e);e+=t;var a=this.getTimezoneOffset(e);t!==a?e+=a-t:t-36E5!==this.getTimezoneOffset(e-36E5)||x||(e-=36E5)}else e=(new this.Date(b,k,m(n,1),m(g,0),m(d,0),m(w,0))).getTime();return e};n.prototype.timezoneOffsetFunction=function(){var b=this,
k=this.options,n=k.moment||v.moment;if(!this.useUTC)return function(k){return 6E4*(new Date(k.toString())).getTimezoneOffset()};if(k.timezone){if(n)return function(b){return 6E4*-n.tz(b,k.timezone).utcOffset()};z(25)}return this.useUTC&&k.getTimezoneOffset?function(b){return 6E4*k.getTimezoneOffset(b.valueOf())}:function(){return 6E4*(b.timezoneOffset||0)}};n.prototype.dateFormat=function(b,k,n){if(!C(k)||isNaN(k))return q.defaultOptions.lang&&q.defaultOptions.lang.invalidDate||"";b=m(b,"%Y-%m-%d %H:%M:%S");
var g=this,B=new this.Date(k),w=this.get("Hours",B),e=this.get("Day",B),t=this.get("Date",B),a=this.get("Month",B),r=this.get("FullYear",B),E=q.defaultOptions.lang,F=E&&E.weekdays,G=E&&E.shortWeekdays;B=D({a:G?G[e]:F[e].substr(0,3),A:F[e],d:d(t),e:d(t,2," "),w:e,b:E.shortMonths[a],B:E.months[a],m:d(a+1),o:a+1,y:r.toString().substr(2,2),Y:r,H:d(w),k:w,I:d(w%12||12),l:w%12||12,M:d(this.get("Minutes",B)),p:12>w?"AM":"PM",P:12>w?"am":"pm",S:d(B.getSeconds()),L:d(Math.floor(k%1E3),3)},q.dateFormats);p(B,
function(a,f){for(;-1!==b.indexOf("%"+f);)b=b.replace("%"+f,"function"===typeof a?a.call(g,k):a)});return n?b.substr(0,1).toUpperCase()+b.substr(1):b};n.prototype.resolveDTLFormat=function(n){return H(n,!0)?n:(n=b(n),{main:n[0],from:n[1],to:n[2]})};n.prototype.getTimeTicks=function(b,k,n,d){var B=this,w=[],e={},t=new B.Date(k),a=b.unitRange,r=b.count||1,E;d=m(d,1);if(C(k)){B.set("Milliseconds",t,a>=g.second?0:r*Math.floor(B.get("Milliseconds",t)/r));a>=g.second&&B.set("Seconds",t,a>=g.minute?0:r*
Math.floor(B.get("Seconds",t)/r));a>=g.minute&&B.set("Minutes",t,a>=g.hour?0:r*Math.floor(B.get("Minutes",t)/r));a>=g.hour&&B.set("Hours",t,a>=g.day?0:r*Math.floor(B.get("Hours",t)/r));a>=g.day&&B.set("Date",t,a>=g.month?1:Math.max(1,r*Math.floor(B.get("Date",t)/r)));if(a>=g.month){B.set("Month",t,a>=g.year?0:r*Math.floor(B.get("Month",t)/r));var F=B.get("FullYear",t)}a>=g.year&&B.set("FullYear",t,F-F%r);a===g.week&&(F=B.get("Day",t),B.set("Date",t,B.get("Date",t)-F+d+(F<d?-7:0)));F=B.get("FullYear",
t);d=B.get("Month",t);var G=B.get("Date",t),l=B.get("Hours",t);k=t.getTime();!B.variableTimezone&&B.useUTC||!C(n)||(E=n-k>4*g.month||B.getTimezoneOffset(k)!==B.getTimezoneOffset(n));k=t.getTime();for(t=1;k<n;)w.push(k),k=a===g.year?B.makeTime(F+t*r,0):a===g.month?B.makeTime(F,d+t*r):!E||a!==g.day&&a!==g.week?E&&a===g.hour&&1<r?B.makeTime(F,d,G,l+t*r):k+a*r:B.makeTime(F,d,G+t*r*(a===g.day?1:7)),t++;w.push(k);a<=g.hour&&1E4>w.length&&w.forEach(function(a){0===a%18E5&&"000000000"===B.dateFormat("%H%M%S%L",
a)&&(e[a]="day")})}w.info=D(b,{higherRanks:e,totalRange:a*r});return w};return n}();"";return c});P(c,"Core/DefaultOptions.js",[c["Core/Globals.js"],c["Core/Chart/ChartDefaults.js"],c["Core/Color/Color.js"],c["Core/Color/Palette.js"],c["Core/Time.js"],c["Core/Utilities.js"]],function(q,c,A,C,z,D){var v=q.isTouchDevice,K=q.svg;A=A.parse;var p=D.merge;"";var d={colors:C.colors,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:c,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:C.neutralColor80}},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:C.neutralColor40,borderRadius:0,navigation:{activeColor:C.highlightColor100,inactiveColor:C.neutralColor20},itemStyle:{color:C.neutralColor80,cursor:"pointer",fontSize:"12px",fontWeight:"bold",textOverflow:"ellipsis"},
itemHoverStyle:{color:C.neutralColor100},itemHiddenStyle:{color:C.neutralColor20},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:C.backgroundColor,opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:K,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:v?25:10,headerFormat:'<span style="font-size: 10px">{point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:A(C.neutralColor3).setOpacity(.85).get(),borderWidth:1,shadow:!0,style:{color:C.neutralColor80,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:C.neutralColor40,fontSize:"9px"},text:"Highcharts.com"}};d.chart.styledMode=!1;"";var m=new z(p(d.global,d.time));return{defaultOptions:d,defaultTime:m,getOptions:function(){return d},setOptions:function(b){p(!0,d,b);if(b.time||b.global)q.time?q.time.update(p(d.global,d.time,b.global,b.time)):q.time=m;return d}}});P(c,"Core/Animation/Fx.js",
[c["Core/Color/Color.js"],c["Core/Globals.js"],c["Core/Utilities.js"]],function(q,c,A){var v=q.parse,z=c.win,D=A.isNumber,H=A.objectEach;return function(){function q(p,d,m){this.pos=NaN;this.options=d;this.elem=p;this.prop=m}q.prototype.dSetter=function(){var p=this.paths,d=p&&p[0];p=p&&p[1];var m=this.now||0,b=[];if(1!==m&&d&&p)if(d.length===p.length&&1>m)for(var g=0;g<p.length;g++){for(var L=d[g],x=p[g],n=[],B=0;B<x.length;B++){var k=L[B],M=x[B];D(k)&&D(M)&&("A"!==x[0]||4!==B&&5!==B)?n[B]=k+m*(M-
k):n[B]=M}b.push(n)}else b=p;else b=this.toD||[];this.elem.attr("d",b,void 0,!0)};q.prototype.update=function(){var p=this.elem,d=this.prop,m=this.now,b=this.options.step;if(this[d+"Setter"])this[d+"Setter"]();else p.attr?p.element&&p.attr(d,m,null,!0):p.style[d]=m+this.unit;b&&b.call(p,m,this)};q.prototype.run=function(p,d,m){var b=this,g=b.options,L=function(n){return L.stopped?!1:b.step(n)},x=z.requestAnimationFrame||function(b){setTimeout(b,13)},n=function(){for(var b=0;b<q.timers.length;b++)q.timers[b]()||
q.timers.splice(b--,1);q.timers.length&&x(n)};p!==d||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=p,this.end=d,this.unit=m,this.now=this.start,this.pos=0,L.elem=this.elem,L.prop=this.prop,L()&&1===q.timers.push(L)&&x(n)):(delete g.curAnim[this.prop],g.complete&&0===Object.keys(g.curAnim).length&&g.complete.call(this.elem))};q.prototype.step=function(p){var d=+new Date,m=this.options,b=this.elem,g=m.complete,L=m.duration,x=m.curAnim;if(b.attr&&!b.element)p=!1;else if(p||
d>=L+this.startTime){this.now=this.end;this.pos=1;this.update();var n=x[this.prop]=!0;H(x,function(b){!0!==b&&(n=!1)});n&&g&&g.call(b);p=!1}else this.pos=m.easing((d-this.startTime)/L),this.now=this.start+(this.end-this.start)*this.pos,this.update(),p=!0;return p};q.prototype.initPath=function(p,d,m){function b(k,b){for(;k.length<N;){var e=k[0],t=b[N-k.length];t&&"M"===e[0]&&(k[0]="C"===t[0]?["C",e[1],e[2],e[1],e[2],e[1],e[2]]:["L",e[1],e[2]]);k.unshift(e);n&&(e=k.pop(),k.push(k[k.length-1],e))}}
function g(k,b){for(;k.length<N;)if(b=k[Math.floor(k.length/B)-1].slice(),"C"===b[0]&&(b[1]=b[5],b[2]=b[6]),n){var e=k[Math.floor(k.length/B)].slice();k.splice(k.length/2,0,b,e)}else k.push(b)}var L=p.startX,x=p.endX;m=m.slice();var n=p.isArea,B=n?2:1;d=d&&d.slice();if(!d)return[m,m];if(L&&x&&x.length){for(p=0;p<L.length;p++)if(L[p]===x[0]){var k=p;break}else if(L[0]===x[x.length-L.length+p]){k=p;var M=!0;break}else if(L[L.length-1]===x[x.length-L.length+p]){k=L.length-p;break}"undefined"===typeof k&&
(d=[])}if(d.length&&D(k)){var N=m.length+k*B;M?(b(d,m),g(m,d)):(b(m,d),g(d,m))}return[d,m]};q.prototype.fillSetter=function(){q.prototype.strokeSetter.apply(this,arguments)};q.prototype.strokeSetter=function(){this.elem.attr(this.prop,v(this.start).tweenTo(v(this.end),this.pos),null,!0)};q.timers=[];return q}()});P(c,"Core/Animation/AnimationUtilities.js",[c["Core/Animation/Fx.js"],c["Core/Utilities.js"]],function(q,c){function v(b){return p(b)?d({duration:500,defer:0},b):{duration:b?500:0,defer:0}}
function C(b,d){for(var g=q.timers.length;g--;)q.timers[g].elem!==b||d&&d!==q.timers[g].prop||(q.timers[g].stopped=!0)}var z=c.defined,D=c.getStyle,H=c.isArray,K=c.isNumber,p=c.isObject,d=c.merge,m=c.objectEach,b=c.pick;return{animate:function(b,L,x){var n,g="",k,M;if(!p(x)){var N=arguments;x={duration:N[2],easing:N[3],complete:N[4]}}K(x.duration)||(x.duration=400);x.easing="function"===typeof x.easing?x.easing:Math[x.easing]||Math.easeInOutSine;x.curAnim=d(L);m(L,function(d,w){C(b,w);M=new q(b,x,
w);k=void 0;"d"===w&&H(L.d)?(M.paths=M.initPath(b,b.pathArray,L.d),M.toD=L.d,n=0,k=1):b.attr?n=b.attr(w):(n=parseFloat(D(b,w))||0,"opacity"!==w&&(g="px"));k||(k=d);"string"===typeof k&&k.match("px")&&(k=k.replace(/px/g,""));M.run(n,k,g)})},animObject:v,getDeferredAnimation:function(b,d,m){var n=v(d),g=0,k=0;(m?[m]:b.series).forEach(function(b){b=v(b.options.animation);g=d&&z(d.defer)?n.defer:Math.max(g,b.duration+b.defer);k=Math.min(n.duration,b.duration)});b.renderer.forExport&&(g=0);return{defer:Math.max(0,
g-k),duration:Math.min(g,k)}},setAnimation:function(g,d){d.renderer.globalAnimation=b(g,d.options.chart.animation,!0)},stop:C}});P(c,"Core/Renderer/HTML/AST.js",[c["Core/Globals.js"],c["Core/Utilities.js"]],function(q,c){var v=q.SVG_NS,C=c.attr,z=c.createElement,D=c.discardElement,H=c.error,K=c.isString,p=c.objectEach,d=c.splat;try{var m=!!(new DOMParser).parseFromString("","text/html")}catch(b){m=!1}c=function(){function b(b){this.nodes="string"===typeof b?this.parseMarkup(b):b}b.filterUserAttributes=
function(g){p(g,function(d,m){var n=!0;-1===b.allowedAttributes.indexOf(m)&&(n=!1);-1!==["background","dynsrc","href","lowsrc","src"].indexOf(m)&&(n=K(d)&&b.allowedReferences.some(function(b){return 0===d.indexOf(b)}));n||(H("Highcharts warning: Invalid attribute '"+m+"' in config"),delete g[m])});return g};b.setElementHTML=function(g,d){g.innerHTML="";d&&(new b(d)).addToDOM(g)};b.prototype.addToDOM=function(g){function m(g,n){var B;d(g).forEach(function(k){var g=k.tagName,d=k.textContent?q.doc.createTextNode(k.textContent):
void 0;if(g)if("#text"===g)var x=d;else if(-1!==b.allowedTags.indexOf(g)){g=q.doc.createElementNS("svg"===g?v:n.namespaceURI||v,g);var w=k.attributes||{};p(k,function(e,t){"tagName"!==t&&"attributes"!==t&&"children"!==t&&"textContent"!==t&&(w[t]=e)});C(g,b.filterUserAttributes(w));d&&g.appendChild(d);m(k.children||[],g);x=g}else H("Highcharts warning: Invalid tagName '"+g+"' in config");x&&n.appendChild(x);B=x});return B}return m(this.nodes,g)};b.prototype.parseMarkup=function(b){var g=[];if(m)b=
(new DOMParser).parseFromString(b,"text/html");else{var d=z("div");d.innerHTML=b;b={body:d}}var n=function(b,k){var g=b.nodeName.toLowerCase(),d={tagName:g};if("#text"===g){g=b.textContent||"";if(/^[\s]*$/.test(g))return;d.textContent=g}if(g=b.attributes){var B={};[].forEach.call(g,function(e){B[e.name]=e.value});d.attributes=B}if(b.childNodes.length){var w=[];[].forEach.call(b.childNodes,function(e){n(e,w)});w.length&&(d.children=w)}k.push(d)};[].forEach.call(b.body.childNodes,function(b){return n(b,
g)});d&&D(d);return g};b.allowedTags="a b br button caption circle clipPath code dd defs div dl dt em feComponentTransfer feFuncA feFuncB feFuncG feFuncR feGaussianBlur feOffset feMerge feMergeNode filter h1 h2 h3 h4 h5 h6 hr i img li linearGradient marker ol p path pattern pre rect small span stop strong style sub sup svg table text thead tbody tspan td th tr u ul #text".split(" ");b.allowedAttributes="aria-controls aria-describedby aria-expanded aria-haspopup aria-hidden aria-label aria-labelledby aria-live aria-pressed aria-readonly aria-roledescription aria-selected class clip-path color colspan cx cy d dx dy disabled fill height href id in markerHeight markerWidth offset opacity orient padding paddingLeft paddingRight patternUnits r refX refY role scope slope src startOffset stdDeviation stroke stroke-linecap stroke-width style tableValues result rowspan summary target tabindex text-align textAnchor textLength type valign width x x1 x2 y y1 y2 zIndex".split(" ");
b.allowedReferences="https:// http:// mailto: / ../ ./ #".split(" ");return b}();"";return c});P(c,"Core/FormatUtilities.js",[c["Core/DefaultOptions.js"],c["Core/Utilities.js"]],function(q,c){function v(d,m,b,g){d=+d||0;m=+m;var L=C.lang,x=(d.toString().split(".")[1]||"").split("e")[0].length,n=d.toString().split("e"),B=m;if(-1===m)m=Math.min(x,20);else if(!H(m))m=2;else if(m&&n[1]&&0>n[1]){var k=m+ +n[1];0<=k?(n[0]=(+n[0]).toExponential(k).split("e")[0],m=k):(n[0]=n[0].split(".")[0]||0,d=20>m?(n[0]*
Math.pow(10,n[1])).toFixed(m):0,n[1]=0)}k=(Math.abs(n[1]?n[0]:d)+Math.pow(10,-Math.max(m,x)-1)).toFixed(m);x=String(p(k));var M=3<x.length?x.length%3:0;b=K(b,L.decimalPoint);g=K(g,L.thousandsSep);d=(0>d?"-":"")+(M?x.substr(0,M)+g:"");d=0>+n[1]&&!B?"0":d+x.substr(M).replace(/(\d{3})(?=\d)/g,"$1"+g);m&&(d+=b+k.slice(-m));n[1]&&0!==+d&&(d+="e"+n[1]);return d}var C=q.defaultOptions,z=q.defaultTime,D=c.getNestedProperty,H=c.isNumber,K=c.pick,p=c.pInt;return{dateFormat:function(d,m,b){return z.dateFormat(d,
m,b)},format:function(d,m,b){var g="{",p=!1,x=/f$/,n=/\.([0-9])/,B=C.lang,k=b&&b.time||z;b=b&&b.numberFormatter||v;for(var M=[];d;){var N=d.indexOf(g);if(-1===N)break;var J=d.slice(0,N);if(p){J=J.split(":");g=D(J.shift()||"",m);if(J.length&&"number"===typeof g)if(J=J.join(":"),x.test(J)){var w=parseInt((J.match(n)||["","-1"])[1],10);null!==g&&(g=b(g,w,B.decimalPoint,-1<J.indexOf(",")?B.thousandsSep:""))}else g=k.dateFormat(J,g);M.push(g)}else M.push(J);d=d.slice(N+1);g=(p=!p)?"}":"{"}M.push(d);return M.join("")},
numberFormat:v}});P(c,"Core/Renderer/SVG/SVGElement.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Renderer/HTML/AST.js"],c["Core/Color/Color.js"],c["Core/Globals.js"],c["Core/Color/Palette.js"],c["Core/Utilities.js"]],function(q,c,A,C,z,D){var v=q.animate,K=q.animObject,p=q.stop,d=C.deg2rad,m=C.doc,b=C.noop,g=C.svg,L=C.SVG_NS,x=C.win,n=D.addEvent,B=D.attr,k=D.createElement,M=D.css,N=D.defined,J=D.erase,w=D.extend,e=D.fireEvent,t=D.isArray,a=D.isFunction,r=D.isNumber,E=D.isString,F=D.merge,
G=D.objectEach,l=D.pick,f=D.pInt,I=D.syncTimeout,h=D.uniqueKey;q=function(){function u(){this.element=void 0;this.onEvents={};this.opacity=1;this.renderer=void 0;this.SVG_NS=L;this.symbolCustomAttribs="x y width height r start end innerR anchorX anchorY rounded".split(" ")}u.prototype._defaultGetter=function(a){a=l(this[a+"Value"],this[a],this.element?this.element.getAttribute(a):null,0);/^[\-0-9\.]+$/.test(a)&&(a=parseFloat(a));return a};u.prototype._defaultSetter=function(a,f,y){y.setAttribute(f,
a)};u.prototype.add=function(a){var f=this.renderer,y=this.element;a&&(this.parentGroup=a);this.parentInverted=a&&a.inverted;"undefined"!==typeof this.textStr&&"text"===this.element.nodeName&&f.buildText(this);this.added=!0;if(!a||a.handleZ||this.zIndex)var Q=this.zIndexSetter();Q||(a?a.element:f.box).appendChild(y);if(this.onAdd)this.onAdd();return this};u.prototype.addClass=function(a,f){var y=f?"":this.attr("class")||"";a=(a||"").split(/ /g).reduce(function(a,f){-1===y.indexOf(f)&&a.push(f);return a},
y?[y]:[]).join(" ");a!==y&&this.attr("class",a);return this};u.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)};u.prototype.align=function(a,f,y){var Q={},e=this.renderer,h=e.alignedObjects,r,O,u;if(a){if(this.alignOptions=a,this.alignByTranslate=f,!y||E(y))this.alignTo=r=y||"renderer",J(h,this),h.push(this),y=void 0}else a=this.alignOptions,f=this.alignByTranslate,r=this.alignTo;y=l(y,e[r],"scrollablePlotBox"===r?e.plotBox:void 0,e);r=a.align;var t=
a.verticalAlign;e=(y.x||0)+(a.x||0);h=(y.y||0)+(a.y||0);"right"===r?O=1:"center"===r&&(O=2);O&&(e+=(y.width-(a.width||0))/O);Q[f?"translateX":"x"]=Math.round(e);"bottom"===t?u=1:"middle"===t&&(u=2);u&&(h+=(y.height-(a.height||0))/u);Q[f?"translateY":"y"]=Math.round(h);this[this.placed?"animate":"attr"](Q);this.placed=!0;this.alignAttr=Q;return this};u.prototype.alignSetter=function(a){var f={left:"start",center:"middle",right:"end"};f[a]&&(this.alignValue=a,this.element.setAttribute("text-anchor",
f[a]))};u.prototype.animate=function(a,f,y){var e=this,h=K(l(f,this.renderer.globalAnimation,!0));f=h.defer;l(m.hidden,m.msHidden,m.webkitHidden,!1)&&(h.duration=0);0!==h.duration?(y&&(h.complete=y),I(function(){e.element&&v(e,a,h)},f)):(this.attr(a,void 0,y),G(a,function(a,f){h.step&&h.step.call(this,a,{prop:f,pos:1,elem:this})},this));return this};u.prototype.applyTextOutline=function(a){var f=this.element;-1!==a.indexOf("contrast")&&(a=a.replace(/contrast/g,this.renderer.getContrast(f.style.fill)));
var y=a.split(" ");a=y[y.length-1];if((y=y[0])&&"none"!==y&&C.svg){this.fakeTS=!0;this.ySetter=this.xSetter;y=y.replace(/(^[\d\.]+)(.*?)$/g,function(a,f,y){return 2*Number(f)+y});this.removeTextOutline();var e=m.createElementNS(L,"tspan");B(e,{"class":"highcharts-text-outline",fill:a,stroke:a,"stroke-width":y,"stroke-linejoin":"round"});[].forEach.call(f.childNodes,function(a){var f=a.cloneNode(!0);f.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(function(a){return f.removeAttribute(a)});
e.appendChild(f)});var h=m.createElementNS(L,"tspan");h.textContent="\u200b";["x","y"].forEach(function(a){var y=f.getAttribute(a);y&&h.setAttribute(a,y)});e.appendChild(h);f.insertBefore(e,f.firstChild)}};u.prototype.attr=function(a,f,y,e){var Q=this.element,h=this.symbolCustomAttribs,l,r=this,u,O;if("string"===typeof a&&"undefined"!==typeof f){var t=a;a={};a[t]=f}"string"===typeof a?r=(this[a+"Getter"]||this._defaultGetter).call(this,a,Q):(G(a,function(f,y){u=!1;e||p(this,y);this.symbolName&&-1!==
h.indexOf(y)&&(l||(this.symbolAttr(a),l=!0),u=!0);!this.rotation||"x"!==y&&"y"!==y||(this.doTransform=!0);u||(O=this[y+"Setter"]||this._defaultSetter,O.call(this,f,y,Q),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(y)&&this.updateShadows(y,f,O))},this),this.afterSetters());y&&y.call(this);return r};u.prototype.clip=function(a){return this.attr("clip-path",a?"url("+this.renderer.url+"#"+a.id+")":"none")};u.prototype.crisp=function(a,f){f=f||a.strokeWidth||
0;var y=Math.round(f)%2/2;a.x=Math.floor(a.x||this.x||0)+y;a.y=Math.floor(a.y||this.y||0)+y;a.width=Math.floor((a.width||this.width||0)-2*y);a.height=Math.floor((a.height||this.height||0)-2*y);N(a.strokeWidth)&&(a.strokeWidth=f);return a};u.prototype.complexColor=function(a,f,y){var Q=this.renderer,l,r,u,b,O,k,E,n,g,d,I=[],w;e(this.renderer,"complexColor",{args:arguments},function(){a.radialGradient?r="radialGradient":a.linearGradient&&(r="linearGradient");if(r){u=a[r];O=Q.gradients;k=a.stops;g=y.radialReference;
t(u)&&(a[r]=u={x1:u[0],y1:u[1],x2:u[2],y2:u[3],gradientUnits:"userSpaceOnUse"});"radialGradient"===r&&g&&!N(u.gradientUnits)&&(b=u,u=F(u,Q.getRadialAttr(g,b),{gradientUnits:"userSpaceOnUse"}));G(u,function(a,f){"id"!==f&&I.push(f,a)});G(k,function(a){I.push(a)});I=I.join(",");if(O[I])d=O[I].attr("id");else{u.id=d=h();var e=O[I]=Q.createElement(r).attr(u).add(Q.defs);e.radAttr=b;e.stops=[];k.forEach(function(a){0===a[1].indexOf("rgba")?(l=A.parse(a[1]),E=l.get("rgb"),n=l.get("a")):(E=a[1],n=1);a=Q.createElement("stop").attr({offset:a[0],
"stop-color":E,"stop-opacity":n}).add(e);e.stops.push(a)})}w="url("+Q.url+"#"+d+")";y.setAttribute(f,w);y.gradient=I;a.toString=function(){return w}}})};u.prototype.css=function(a){var e=this.styles,y={},Q=this.element,h=["textOutline","textOverflow","width"],l="",r=!e;a&&a.color&&(a.fill=a.color);e&&G(a,function(a,f){e&&e[f]!==a&&(y[f]=a,r=!0)});if(r){e&&(a=w(e,y));if(a)if(null===a.width||"auto"===a.width)delete this.textWidth;else if("text"===Q.nodeName.toLowerCase()&&a.width)var u=this.textWidth=
f(a.width);this.styles=a;u&&!g&&this.renderer.forExport&&delete a.width;if(Q.namespaceURI===this.SVG_NS){var t=function(a,f){return"-"+f.toLowerCase()};G(a,function(a,f){-1===h.indexOf(f)&&(l+=f.replace(/([A-Z])/g,t)+":"+a+";")});l&&B(Q,"style",l)}else M(Q,a);this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),a&&a.textOutline&&this.applyTextOutline(a.textOutline))}return this};u.prototype.dashstyleSetter=function(a){var e=this["stroke-width"];"inherit"===e&&(e=1);if(a=a&&a.toLowerCase()){var y=
a.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(a=y.length;a--;)y[a]=""+f(y[a])*l(e,NaN);a=y.join(",").replace(/NaN/g,"none");this.element.setAttribute("stroke-dasharray",a)}};u.prototype.destroy=function(){var a=this,f=a.element||{},y=a.renderer,e=f.ownerSVGElement,h=y.isSVG&&"SPAN"===f.nodeName&&a.parentGroup||
void 0;f.onclick=f.onmouseout=f.onmouseover=f.onmousemove=f.point=null;p(a);if(a.clipPath&&e){var l=a.clipPath;[].forEach.call(e.querySelectorAll("[clip-path],[CLIP-PATH]"),function(a){-1<a.getAttribute("clip-path").indexOf(l.element.id)&&a.removeAttribute("clip-path")});a.clipPath=l.destroy()}if(a.stops){for(e=0;e<a.stops.length;e++)a.stops[e].destroy();a.stops.length=0;a.stops=void 0}a.safeRemoveChild(f);for(y.styledMode||a.destroyShadows();h&&h.div&&0===h.div.childNodes.length;)f=h.parentGroup,
a.safeRemoveChild(h.div),delete h.div,h=f;a.alignTo&&J(y.alignedObjects,a);G(a,function(f,e){a[e]&&a[e].parentGroup===a&&a[e].destroy&&a[e].destroy();delete a[e]})};u.prototype.destroyShadows=function(){(this.shadows||[]).forEach(function(a){this.safeRemoveChild(a)},this);this.shadows=void 0};u.prototype.destroyTextPath=function(a,f){var e=a.getElementsByTagName("text")[0];if(e){if(e.removeAttribute("dx"),e.removeAttribute("dy"),f.element.setAttribute("id",""),this.textPathWrapper&&e.getElementsByTagName("textPath").length){for(a=
this.textPathWrapper.element.childNodes;a.length;)e.appendChild(a[0]);e.removeChild(this.textPathWrapper.element)}}else if(a.getAttribute("dx")||a.getAttribute("dy"))a.removeAttribute("dx"),a.removeAttribute("dy");this.textPathWrapper&&(this.textPathWrapper=this.textPathWrapper.destroy())};u.prototype.dSetter=function(a,f,e){t(a)&&("string"===typeof a[0]&&(a=this.renderer.pathToSegments(a)),this.pathArray=a,a=a.reduce(function(a,f,e){return f&&f.join?(e?a+" ":"")+f.join(" "):(f||"").toString()},""));
/(NaN| {2}|^$)/.test(a)&&(a="M 0 0");this[f]!==a&&(e.setAttribute(f,a),this[f]=a)};u.prototype.fadeOut=function(a){var f=this;f.animate({opacity:0},{duration:l(a,150),complete:function(){f.attr({y:-9999}).hide()}})};u.prototype.fillSetter=function(a,f,e){"string"===typeof a?e.setAttribute(f,a):a&&this.complexColor(a,f,e)};u.prototype.getBBox=function(f,e){var y=this.renderer,h=this.element,r=this.styles,t=this.textStr,b=y.cache,k=y.cacheKeys,E=h.namespaceURI===this.SVG_NS;e=l(e,this.rotation,0);var F=
y.styledMode?h&&u.prototype.getStyle.call(h,"font-size"):r&&r.fontSize,O;if(N(t)){var n=t.toString();-1===n.indexOf("<")&&(n=n.replace(/[0-9]/g,"0"));n+=["",e,F,this.textWidth,r&&r.textOverflow,r&&r.fontWeight].join()}n&&!f&&(O=b[n]);if(!O){if(E||y.forExport){try{var G=this.fakeTS&&function(a){var f=h.querySelector(".highcharts-text-outline");f&&M(f,{display:a})};a(G)&&G("none");O=h.getBBox?w({},h.getBBox()):{width:h.offsetWidth,height:h.offsetHeight};a(G)&&G("")}catch(U){""}if(!O||0>O.width)O={width:0,
height:0}}else O=this.htmlGetBBox();y.isSVG&&(f=O.width,y=O.height,E&&(O.height=y={"11px,17":14,"13px,20":16}[r&&r.fontSize+","+Math.round(y)]||y),e&&(r=e*d,O.width=Math.abs(y*Math.sin(r))+Math.abs(f*Math.cos(r)),O.height=Math.abs(y*Math.cos(r))+Math.abs(f*Math.sin(r))));if(n&&0<O.height){for(;250<k.length;)delete b[k.shift()];b[n]||k.push(n);b[n]=O}}return O};u.prototype.getStyle=function(a){return x.getComputedStyle(this.element||this,"").getPropertyValue(a)};u.prototype.hasClass=function(a){return-1!==
(""+this.attr("class")).split(" ").indexOf(a)};u.prototype.hide=function(a){a?this.attr({y:-9999}):this.attr({visibility:"hidden"});return this};u.prototype.htmlGetBBox=function(){return{height:0,width:0,x:0,y:0}};u.prototype.init=function(a,f){this.element="span"===f?k(f):m.createElementNS(this.SVG_NS,f);this.renderer=a;e(this,"afterInit")};u.prototype.invert=function(a){this.inverted=a;this.updateTransform();return this};u.prototype.on=function(a,f){var e=this.onEvents;if(e[a])e[a]();e[a]=n(this.element,
a,f);return this};u.prototype.opacitySetter=function(a,f,e){this.opacity=a=Number(Number(a).toFixed(3));e.setAttribute(f,a)};u.prototype.removeClass=function(a){return this.attr("class",(""+this.attr("class")).replace(E(a)?new RegExp("(^| )"+a+"( |$)"):a," ").replace(/ +/g," ").trim())};u.prototype.removeTextOutline=function(){var a=this.element.querySelector("tspan.highcharts-text-outline");a&&this.safeRemoveChild(a)};u.prototype.safeRemoveChild=function(a){var f=a.parentNode;f&&f.removeChild(a)};
u.prototype.setRadialReference=function(a){var f=this.element.gradient&&this.renderer.gradients[this.element.gradient];this.element.radialReference=a;f&&f.radAttr&&f.animate(this.renderer.getRadialAttr(a,f.radAttr));return this};u.prototype.setTextPath=function(a,f){var e=this.element,l=this.text?this.text.element:e,u={textAnchor:"text-anchor"},t=!1,k=this.textPathWrapper,R=!k;f=F(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},f);var E=c.filterUserAttributes(f.attributes);
if(a&&f&&f.enabled){k&&null===k.element.parentNode?(R=!0,k=k.destroy()):k&&this.removeTextOutline.call(k.parentGroup);this.options&&this.options.padding&&(E.dx=-this.options.padding);k||(this.textPathWrapper=k=this.renderer.createElement("textPath"),t=!0);var n=k.element;(f=a.element.getAttribute("id"))||a.element.setAttribute("id",f=h());if(R)for(l.setAttribute("y",0),r(E.dx)&&l.setAttribute("x",-E.dx),a=[].slice.call(l.childNodes),R=0;R<a.length;R++){var g=a[R];g.nodeType!==Node.TEXT_NODE&&"tspan"!==
g.nodeName||n.appendChild(g)}t&&k&&k.add({element:l});n.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+f);N(E.dy)&&(n.parentNode.setAttribute("dy",E.dy),delete E.dy);N(E.dx)&&(n.parentNode.setAttribute("dx",E.dx),delete E.dx);G(E,function(a,f){n.setAttribute(u[f]||f,a)});e.removeAttribute("transform");this.removeTextOutline.call(k);this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0});this.applyTextOutline=this.updateTransform=b}else k&&(delete this.updateTransform,
delete this.applyTextOutline,this.destroyTextPath(e,a),this.updateTransform(),this.options&&this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this};u.prototype.shadow=function(a,f,e){var y=[],h=this.element,l=this.oldShadowOptions,r={color:z.neutralColor100,offsetX:this.parentInverted?-1:1,offsetY:this.parentInverted?-1:1,opacity:.15,width:3},u=!1,t;!0===a?t=r:"object"===typeof a&&(t=w(r,a));t&&(t&&l&&G(t,function(a,f){a!==l[f]&&(u=!0)}),u&&this.destroyShadows(),
this.oldShadowOptions=t);if(!t)this.destroyShadows();else if(!this.shadows){var b=t.opacity/t.width;var k=this.parentInverted?"translate("+t.offsetY+", "+t.offsetX+")":"translate("+t.offsetX+", "+t.offsetY+")";for(r=1;r<=t.width;r++){var E=h.cloneNode(!1);var F=2*t.width+1-2*r;B(E,{stroke:a.color||z.neutralColor100,"stroke-opacity":b*r,"stroke-width":F,transform:k,fill:"none"});E.setAttribute("class",(E.getAttribute("class")||"")+" highcharts-shadow");e&&(B(E,"height",Math.max(B(E,"height")-F,0)),
E.cutHeight=F);f?f.element.appendChild(E):h.parentNode&&h.parentNode.insertBefore(E,h);y.push(E)}this.shadows=y}return this};u.prototype.show=function(a){return this.attr({visibility:a?"inherit":"visible"})};u.prototype.strokeSetter=function(a,f,e){this[f]=a;this.stroke&&this["stroke-width"]?(u.prototype.fillSetter.call(this,this.stroke,"stroke",e),e.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===f&&0===a&&this.hasStroke?(e.removeAttribute("stroke"),this.hasStroke=
!1):this.renderer.styledMode&&this["stroke-width"]&&(e.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)};u.prototype.strokeWidth=function(){if(!this.renderer.styledMode)return this["stroke-width"]||0;var a=this.getStyle("stroke-width"),e=0;if(a.indexOf("px")===a.length-2)e=f(a);else if(""!==a){var h=m.createElementNS(L,"rect");B(h,{width:a,"stroke-width":0});this.element.parentNode.appendChild(h);e=h.getBBox().width;h.parentNode.removeChild(h)}return e};u.prototype.symbolAttr=
function(a){var f=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(e){f[e]=l(a[e],f[e])});f.attr({d:f.renderer.symbols[f.symbolName](f.x,f.y,f.width,f.height,f)})};u.prototype.textSetter=function(a){a!==this.textStr&&(delete this.textPxLength,this.textStr=a,this.added&&this.renderer.buildText(this))};u.prototype.titleSetter=function(a){var f=this.element,e=f.getElementsByTagName("title")[0]||m.createElementNS(this.SVG_NS,"title");f.insertBefore?f.insertBefore(e,
f.firstChild):f.appendChild(e);e.textContent=String(l(a,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")};u.prototype.toFront=function(){var a=this.element;a.parentNode.appendChild(a);return this};u.prototype.translate=function(a,f){return this.attr({translateX:a,translateY:f})};u.prototype.updateShadows=function(a,f,e){var h=this.shadows;if(h)for(var l=h.length;l--;)e.call(h[l],"height"===a?Math.max(f-(h[l].cutHeight||0),0):"d"===a?this.d:f,a,h[l])};u.prototype.updateTransform=
function(){var a=this.scaleX,f=this.scaleY,e=this.inverted,h=this.rotation,r=this.matrix,u=this.element,t=this.translateX||0,b=this.translateY||0;e&&(t+=this.width,b+=this.height);t=["translate("+t+","+b+")"];N(r)&&t.push("matrix("+r.join(",")+")");e?t.push("rotate(90) scale(-1,1)"):h&&t.push("rotate("+h+" "+l(this.rotationOriginX,u.getAttribute("x"),0)+" "+l(this.rotationOriginY,u.getAttribute("y")||0)+")");(N(a)||N(f))&&t.push("scale("+l(a,1)+" "+l(f,1)+")");t.length&&u.setAttribute("transform",
t.join(" "))};u.prototype.visibilitySetter=function(a,f,e){"inherit"===a?e.removeAttribute(f):this[f]!==a&&e.setAttribute(f,a);this[f]=a};u.prototype.xGetter=function(a){"circle"===this.element.nodeName&&("x"===a?a="cx":"y"===a&&(a="cy"));return this._defaultGetter(a)};u.prototype.zIndexSetter=function(a,e){var h=this.renderer,l=this.parentGroup,r=(l||h).element||h.box,u=this.element;h=r===h.box;var t=!1;var b=this.added;var k;N(a)?(u.setAttribute("data-z-index",a),a=+a,this[e]===a&&(b=!1)):N(this[e])&&
u.removeAttribute("data-z-index");this[e]=a;if(b){(a=this.zIndex)&&l&&(l.handleZ=!0);e=r.childNodes;for(k=e.length-1;0<=k&&!t;k--){l=e[k];b=l.getAttribute("data-z-index");var E=!N(b);if(l!==u)if(0>a&&E&&!h&&!k)r.insertBefore(u,e[k]),t=!0;else if(f(b)<=a||E&&(!N(a)||0<=a))r.insertBefore(u,e[k+1]||null),t=!0}t||(r.insertBefore(u,e[h?3:0]||null),t=!0)}return t};return u}();q.prototype["stroke-widthSetter"]=q.prototype.strokeSetter;q.prototype.yGetter=q.prototype.xGetter;q.prototype.matrixSetter=q.prototype.rotationOriginXSetter=
q.prototype.rotationOriginYSetter=q.prototype.rotationSetter=q.prototype.scaleXSetter=q.prototype.scaleYSetter=q.prototype.translateXSetter=q.prototype.translateYSetter=q.prototype.verticalAlignSetter=function(a,f){this[f]=a;this.doTransform=!0};"";return q});P(c,"Core/Renderer/RendererRegistry.js",[c["Core/Globals.js"]],function(c){var q;(function(q){var v;q.rendererTypes={};q.getRendererType=function(c){void 0===c&&(c=v);return q.rendererTypes[c]||q.rendererTypes[v]};q.registerRendererType=function(z,
D,A){q.rendererTypes[z]=D;if(!v||A)v=z,c.Renderer=D}})(q||(q={}));return q});P(c,"Core/Renderer/SVG/SVGLabel.js",[c["Core/Renderer/SVG/SVGElement.js"],c["Core/Utilities.js"]],function(q,c){var v=this&&this.__extends||function(){var d=function(m,b){d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var g in d)d.hasOwnProperty(g)&&(b[g]=d[g])};return d(m,b)};return function(m,b){function g(){this.constructor=m}d(m,b);m.prototype=null===b?Object.create(b):
(g.prototype=b.prototype,new g)}}(),C=c.defined,z=c.extend,D=c.isNumber,H=c.merge,K=c.pick,p=c.removeEvent;return function(d){function m(b,g,p,x,n,B,k,M,N,J){var w=d.call(this)||this;w.paddingLeftSetter=w.paddingSetter;w.paddingRightSetter=w.paddingSetter;w.init(b,"g");w.textStr=g;w.x=p;w.y=x;w.anchorX=B;w.anchorY=k;w.baseline=N;w.className=J;w.addClass("button"===J?"highcharts-no-tooltip":"highcharts-label");J&&w.addClass("highcharts-"+J);w.text=b.text("",0,0,M).attr({zIndex:1});var e;"string"===
typeof n&&((e=/^url\((.*?)\)$/.test(n))||w.renderer.symbols[n])&&(w.symbolKey=n);w.bBox=m.emptyBBox;w.padding=3;w.baselineOffset=0;w.needsBox=b.styledMode||e;w.deferredAttr={};w.alignFactor=0;return w}v(m,d);m.prototype.alignSetter=function(b){b={left:0,center:.5,right:1}[b];b!==this.alignFactor&&(this.alignFactor=b,this.bBox&&D(this.xSetting)&&this.attr({x:this.xSetting}))};m.prototype.anchorXSetter=function(b,g){this.anchorX=b;this.boxAttr(g,Math.round(b)-this.getCrispAdjust()-this.xSetting)};m.prototype.anchorYSetter=
function(b,g){this.anchorY=b;this.boxAttr(g,b-this.ySetting)};m.prototype.boxAttr=function(b,g){this.box?this.box.attr(b,g):this.deferredAttr[b]=g};m.prototype.css=function(b){if(b){var g={};b=H(b);m.textProps.forEach(function(d){"undefined"!==typeof b[d]&&(g[d]=b[d],delete b[d])});this.text.css(g);var d="width"in g;"fontSize"in g||"fontWeight"in g?this.updateTextPadding():d&&this.updateBoxSize()}return q.prototype.css.call(this,b)};m.prototype.destroy=function(){p(this.element,"mouseenter");p(this.element,
"mouseleave");this.text&&this.text.destroy();this.box&&(this.box=this.box.destroy());q.prototype.destroy.call(this)};m.prototype.fillSetter=function(b,d){b&&(this.needsBox=!0);this.fill=b;this.boxAttr(d,b)};m.prototype.getBBox=function(){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();var b=this.padding,d=K(this.paddingLeft,b);return{width:this.width,height:this.height,x:this.bBox.x-d,y:this.bBox.y-b}};m.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};m.prototype.heightSetter=function(b){this.heightSetting=b};m.prototype.on=function(b,d){var g=this,m=g.text,n=m&&"SPAN"===m.element.tagName?m:void 0;if(n){var B=function(k){("mouseenter"===b||"mouseleave"===b)&&k.relatedTarget instanceof Element&&(g.element.compareDocumentPosition(k.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY||n.element.compareDocumentPosition(k.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY)||
d.call(g.element,k)};n.on(b,B)}q.prototype.on.call(g,b,B||d);return g};m.prototype.onAdd=function(){var b=this.textStr;this.text.add(this);this.attr({text:C(b)?b:"",x:this.x,y:this.y});this.box&&C(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})};m.prototype.paddingSetter=function(b,d){D(b)?b!==this[d]&&(this[d]=b,this.updateTextPadding()):this[d]=void 0};m.prototype.rSetter=function(b,d){this.boxAttr(d,b)};m.prototype.shadow=function(b){b&&!this.renderer.styledMode&&(this.updateBoxSize(),
this.box&&this.box.shadow(b));return this};m.prototype.strokeSetter=function(b,d){this.stroke=b;this.boxAttr(d,b)};m.prototype["stroke-widthSetter"]=function(b,d){b&&(this.needsBox=!0);this["stroke-width"]=b;this.boxAttr(d,b)};m.prototype["text-alignSetter"]=function(b){this.textAlign=b};m.prototype.textSetter=function(b){"undefined"!==typeof b&&this.text.attr({text:b});this.updateTextPadding()};m.prototype.updateBoxSize=function(){var b=this.text.element.style,d={},p=this.padding,x=this.bBox=D(this.widthSetting)&&
D(this.heightSetting)&&!this.textAlign||!C(this.text.textStr)?m.emptyBBox:this.text.getBBox();this.width=this.getPaddedWidth();this.height=(this.heightSetting||x.height||0)+2*p;b=this.renderer.fontMetrics(b&&b.fontSize,this.text);this.baselineOffset=p+Math.min((this.text.firstLineMetrics||b).b,x.height||Infinity);this.heightSetting&&(this.baselineOffset+=(this.heightSetting-b.h)/2);this.needsBox&&(this.box||(p=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect(),p.addClass(("button"===
this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),p.add(this)),p=this.getCrispAdjust(),d.x=p,d.y=(this.baseline?-this.baselineOffset:0)+p,d.width=Math.round(this.width),d.height=Math.round(this.height),this.box.attr(z(d,this.deferredAttr)),this.deferredAttr={})};m.prototype.updateTextPadding=function(){var b=this.text;this.updateBoxSize();var d=this.baseline?0:this.baselineOffset,m=K(this.paddingLeft,this.padding);C(this.widthSetting)&&this.bBox&&
("center"===this.textAlign||"right"===this.textAlign)&&(m+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width));if(m!==b.x||d!==b.y)b.attr("x",m),b.hasBoxWidthChanged&&(this.bBox=b.getBBox(!0)),"undefined"!==typeof d&&b.attr("y",d);b.x=m;b.y=d};m.prototype.widthSetter=function(b){this.widthSetting=D(b)?b:void 0};m.prototype.getPaddedWidth=function(){var b=this.padding,d=K(this.paddingLeft,b);b=K(this.paddingRight,b);return(this.widthSetting||this.bBox.width||0)+d+b};m.prototype.xSetter=
function(b){this.x=b;this.alignFactor&&(b-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0);this.xSetting=Math.round(b);this.attr("translateX",this.xSetting)};m.prototype.ySetter=function(b){this.ySetting=this.y=Math.round(b);this.attr("translateY",this.ySetting)};m.emptyBBox={width:0,height:0,x:0,y:0};m.textProps="color direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" ");return m}(q)});P(c,"Core/Renderer/SVG/Symbols.js",
[c["Core/Utilities.js"]],function(c){function q(c,p,d,m,b){var g=[];if(b){var q=b.start||0,x=H(b.r,d);d=H(b.r,m||d);var n=(b.end||0)-.001;m=b.innerR;var B=H(b.open,.001>Math.abs((b.end||0)-q-2*Math.PI)),k=Math.cos(q),M=Math.sin(q),N=Math.cos(n),J=Math.sin(n);q=H(b.longArc,.001>n-q-Math.PI?0:1);g.push(["M",c+x*k,p+d*M],["A",x,d,0,q,H(b.clockwise,1),c+x*N,p+d*J]);z(m)&&g.push(B?["M",c+m*N,p+m*J]:["L",c+m*N,p+m*J],["A",m,m,0,q,z(b.clockwise)?1-b.clockwise:0,c+m*k,p+m*M]);B||g.push(["Z"])}return g}function A(c,
p,d,m,b){return b&&b.r?C(c,p,d,m,b):[["M",c,p],["L",c+d,p],["L",c+d,p+m],["L",c,p+m],["Z"]]}function C(c,p,d,m,b){b=b&&b.r||0;return[["M",c+b,p],["L",c+d-b,p],["C",c+d,p,c+d,p,c+d,p+b],["L",c+d,p+m-b],["C",c+d,p+m,c+d,p+m,c+d-b,p+m],["L",c+b,p+m],["C",c,p+m,c,p+m,c,p+m-b],["L",c,p+b],["C",c,p,c,p,c+b,p]]}var z=c.defined,D=c.isNumber,H=c.pick;return{arc:q,callout:function(c,p,d,m,b){var g=Math.min(b&&b.r||0,d,m),q=g+6,x=b&&b.anchorX;b=b&&b.anchorY||0;var n=C(c,p,d,m,{r:g});if(!D(x))return n;c+x>=d?
b>p+q&&b<p+m-q?n.splice(3,1,["L",c+d,b-6],["L",c+d+6,b],["L",c+d,b+6],["L",c+d,p+m-g]):n.splice(3,1,["L",c+d,m/2],["L",x,b],["L",c+d,m/2],["L",c+d,p+m-g]):0>=c+x?b>p+q&&b<p+m-q?n.splice(7,1,["L",c,b+6],["L",c-6,b],["L",c,b-6],["L",c,p+g]):n.splice(7,1,["L",c,m/2],["L",x,b],["L",c,m/2],["L",c,p+g]):b&&b>m&&x>c+q&&x<c+d-q?n.splice(5,1,["L",x+6,p+m],["L",x,p+m+6],["L",x-6,p+m],["L",c+g,p+m]):b&&0>b&&x>c+q&&x<c+d-q&&n.splice(1,1,["L",x-6,p],["L",x,p-6],["L",x+6,p],["L",d-g,p]);return n},circle:function(c,
p,d,m){return q(c+d/2,p+m/2,d/2,m/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(c,p,d,m){return[["M",c+d/2,p],["L",c+d,p+m/2],["L",c+d/2,p+m],["L",c,p+m/2],["Z"]]},rect:A,roundedRect:C,square:A,triangle:function(c,p,d,m){return[["M",c+d/2,p],["L",c+d,p+m],["L",c,p+m],["Z"]]},"triangle-down":function(c,p,d,m){return[["M",c,p],["L",c+d,p],["L",c+d/2,p+m],["Z"]]}}});P(c,"Core/Renderer/SVG/TextBuilder.js",[c["Core/Renderer/HTML/AST.js"],c["Core/Globals.js"],c["Core/Utilities.js"]],function(c,
v,A){var q=v.doc,z=v.SVG_NS,D=A.attr,H=A.isString,K=A.objectEach,p=A.pick;return function(){function d(d){var b=d.styles;this.renderer=d.renderer;this.svgElement=d;this.width=d.textWidth;this.textLineHeight=b&&b.lineHeight;this.textOutline=b&&b.textOutline;this.ellipsis=!(!b||"ellipsis"!==b.textOverflow);this.noWrap=!(!b||"nowrap"!==b.whiteSpace);this.fontSize=b&&b.fontSize}d.prototype.buildSVG=function(){var d=this.svgElement,b=d.element,g=d.renderer,L=p(d.textStr,"").toString(),x=-1!==L.indexOf("<"),
n=b.childNodes,B=n.length;g=this.width&&!d.added&&g.box;var k=/<br.*?>/g;var M=[L,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,this.fontSize,this.width].join();if(M!==d.textCache){d.textCache=M;for(delete d.actualWidth;B--;)b.removeChild(n[B]);x||this.ellipsis||this.width||-1!==L.indexOf(" ")&&(!this.noWrap||k.test(L))?""!==L&&(g&&g.appendChild(b),L=new c(L),this.modifyTree(L.nodes),L.addToDOM(d.element),this.modifyDOM(),this.ellipsis&&-1!==(b.textContent||"").indexOf("\u2026")&&
d.attr("title",this.unescapeEntities(d.textStr||"",["&lt;","&gt;"])),g&&g.removeChild(b)):b.appendChild(q.createTextNode(this.unescapeEntities(L)));H(this.textOutline)&&d.applyTextOutline&&d.applyTextOutline(this.textOutline)}};d.prototype.modifyDOM=function(){var d=this,b=this.svgElement,g=D(b.element,"x");b.firstLineMetrics=void 0;[].forEach.call(b.element.querySelectorAll("tspan.highcharts-br"),function(n,k){n.nextSibling&&n.previousSibling&&(0===k&&1===n.previousSibling.nodeType&&(b.firstLineMetrics=
b.renderer.fontMetrics(void 0,n.previousSibling)),D(n,{dy:d.getLineHeight(n.nextSibling),x:g}))});var c=this.width||0;if(c){var p=function(n,k){var B=n.textContent||"",m=B.replace(/([^\^])-/g,"$1- ").split(" "),p=!d.noWrap&&(1<m.length||1<b.element.childNodes.length),w=d.getLineHeight(k),e=0,t=b.actualWidth;if(d.ellipsis)B&&d.truncate(n,B,void 0,0,Math.max(0,c-parseInt(d.fontSize||12,10)),function(a,e){return a.substring(0,e)+"\u2026"});else if(p){B=[];for(p=[];k.firstChild&&k.firstChild!==n;)p.push(k.firstChild),
k.removeChild(k.firstChild);for(;m.length;)m.length&&!d.noWrap&&0<e&&(B.push(n.textContent||""),n.textContent=m.join(" ").replace(/- /g,"-")),d.truncate(n,void 0,m,0===e?t||0:0,c,function(a,e){return m.slice(0,e).join(" ").replace(/- /g,"-")}),t=b.actualWidth,e++;p.forEach(function(a){k.insertBefore(a,n)});B.forEach(function(a){k.insertBefore(q.createTextNode(a),n);a=q.createElementNS(z,"tspan");a.textContent="\u200b";D(a,{dy:w,x:g});k.insertBefore(a,n)})}},n=function(d){[].slice.call(d.childNodes).forEach(function(k){k.nodeType===
Node.TEXT_NODE?p(k,d):(-1!==k.className.baseVal.indexOf("highcharts-br")&&(b.actualWidth=0),n(k))})};n(b.element)}};d.prototype.getLineHeight=function(d){var b;d=d.nodeType===Node.TEXT_NODE?d.parentElement:d;this.renderer.styledMode||(b=d&&/(px|em)$/.test(d.style.fontSize)?d.style.fontSize:this.fontSize||this.renderer.style.fontSize||12);return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(b,d||this.svgElement.element).h};d.prototype.modifyTree=function(d){var b=
this,g=function(c,m){var n=c.tagName,B=b.renderer.styledMode,k=c.attributes||{};if("b"===n||"strong"===n)B?k["class"]="highcharts-strong":k.style="font-weight:bold;"+(k.style||"");else if("i"===n||"em"===n)B?k["class"]="highcharts-emphasized":k.style="font-style:italic;"+(k.style||"");H(k.style)&&(k.style=k.style.replace(/(;| |^)color([ :])/,"$1fill$2"));"br"===n&&(k["class"]="highcharts-br",c.textContent="\u200b",(m=d[m+1])&&m.textContent&&(m.textContent=m.textContent.replace(/^ +/gm,"")));"#text"!==
n&&"a"!==n&&(c.tagName="tspan");c.attributes=k;c.children&&c.children.filter(function(b){return"#text"!==b.tagName}).forEach(g)};for(d.forEach(g);d[0]&&"tspan"===d[0].tagName&&!d[0].children;)d.splice(0,1)};d.prototype.truncate=function(d,b,g,c,p,n){var B=this.svgElement,k=B.renderer,m=B.rotation,N=[],x=g?1:0,w=(b||g||"").length,e=w,t,a=function(a,e){e=e||a;var r=d.parentNode;if(r&&"undefined"===typeof N[e])if(r.getSubStringLength)try{N[e]=c+r.getSubStringLength(0,g?e+1:e)}catch(l){""}else k.getSpanWidth&&
(d.textContent=n(b||g,a),N[e]=c+k.getSpanWidth(B,d));return N[e]};B.rotation=0;var r=a(d.textContent.length);if(c+r>p){for(;x<=w;)e=Math.ceil((x+w)/2),g&&(t=n(g,e)),r=a(e,t&&t.length-1),x===w?x=w+1:r>p?w=e-1:x=e;0===w?d.textContent="":b&&w===b.length-1||(d.textContent=t||n(b||g,e))}g&&g.splice(0,e);B.actualWidth=r;B.rotation=m};d.prototype.unescapeEntities=function(d,b){K(this.renderer.escapes,function(g,c){b&&-1!==b.indexOf(g)||(d=d.toString().replace(new RegExp(g,"g"),c))});return d};return d}()});
P(c,"Core/Renderer/SVG/SVGRenderer.js",[c["Core/Renderer/HTML/AST.js"],c["Core/Color/Color.js"],c["Core/Globals.js"],c["Core/Color/Palette.js"],c["Core/Renderer/RendererRegistry.js"],c["Core/Renderer/SVG/SVGElement.js"],c["Core/Renderer/SVG/SVGLabel.js"],c["Core/Renderer/SVG/Symbols.js"],c["Core/Renderer/SVG/TextBuilder.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H,K,p,d){var m=A.charts,b=A.deg2rad,g=A.doc,q=A.isFirefox,x=A.isMS,n=A.isWebKit,B=A.noop,k=A.SVG_NS,M=A.symbolSizes,N=A.win,J=d.addEvent,
w=d.attr,e=d.createElement,t=d.css,a=d.defined,r=d.destroyObjectProperties,E=d.extend,F=d.isArray,G=d.isNumber,l=d.isObject,f=d.isString,I=d.merge,h=d.pick,u=d.pInt,O=d.uniqueKey,X;A=function(){function y(a,f,e,h,l,r,y){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(a,f,e,h,l,r,y)}y.prototype.init=function(a,f,e,h,l,r,y){var Q=this.createElement("svg").attr({version:"1.1",
"class":"highcharts-root"}),u=Q.element;y||Q.css(this.getStyle(h));a.appendChild(u);w(a,"dir","ltr");-1===a.innerHTML.indexOf("xmlns")&&w(u,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=u;this.boxWrapper=Q;this.alignedObjects=[];this.url=this.getReferenceURL();this.createElement("desc").add().element.appendChild(g.createTextNode("Created with Highcharts 9.1.1"));this.defs=this.createElement("defs").add();this.allowHTML=r;this.forExport=l;this.styledMode=y;this.gradients={};this.cache={};this.cacheKeys=
[];this.imgCount=0;this.setSize(f,e,!1);var b;q&&a.getBoundingClientRect&&(f=function(){t(a,{left:0,top:0});b=a.getBoundingClientRect();t(a,{left:Math.ceil(b.left)-b.left+"px",top:Math.ceil(b.top)-b.top+"px"})},f(),this.unSubPixelFix=J(N,"resize",f))};y.prototype.definition=function(a){return(new c([a])).addToDOM(this.defs.element)};y.prototype.getReferenceURL=function(){if((q||n)&&g.getElementsByTagName("base").length){if(!a(X)){var f=O();f=(new c([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",
children:[{tagName:"clipPath",attributes:{id:f},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":"url(#"+f+")",fill:"rgba(0,0,0,0.001)"}}]}])).addToDOM(g.body);t(f,{position:"fixed",top:0,left:0,zIndex:9E5});var e=g.elementFromPoint(6,6);X="hitme"===(e&&e.id);g.body.removeChild(f)}if(X)return N.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20")}return""};y.prototype.getStyle=
function(a){return this.style=E({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},a)};y.prototype.setStyle=function(a){this.boxWrapper.css(this.getStyle(a))};y.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width};y.prototype.destroy=function(){var a=this.defs;this.box=null;this.boxWrapper=this.boxWrapper.destroy();r(this.gradients||{});this.gradients=null;a&&(this.defs=a.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=
null};y.prototype.createElement=function(a){var f=new this.Element;f.init(this,a);return f};y.prototype.getRadialAttr=function(a,f){return{cx:a[0]-a[2]/2+(f.cx||0)*a[2],cy:a[1]-a[2]/2+(f.cy||0)*a[2],r:(f.r||0)*a[2]}};y.prototype.buildText=function(a){(new p(a)).buildSVG()};y.prototype.getContrast=function(a){a=v.parse(a).rgba;a[0]*=1;a[1]*=1.2;a[2]*=.5;return 459<a[0]+a[1]+a[2]?"#000000":"#FFFFFF"};y.prototype.button=function(a,f,e,h,l,r,y,u,t,b){var Q=this.label(a,f,e,t,void 0,void 0,b,void 0,"button"),
k=this.styledMode,d=0,n=l?I(l):{};a=n&&n.style||{};n=c.filterUserAttributes(n);Q.attr(I({padding:8,r:2},n));if(!k){n=I({fill:C.neutralColor3,stroke:C.neutralColor20,"stroke-width":1,style:{color:C.neutralColor80,cursor:"pointer",fontWeight:"normal"}},{style:a},n);var R=n.style;delete n.style;r=I(n,{fill:C.neutralColor10},c.filterUserAttributes(r||{}));var F=r.style;delete r.style;y=I(n,{fill:C.highlightColor10,style:{color:C.neutralColor100,fontWeight:"bold"}},c.filterUserAttributes(y||{}));var G=
y.style;delete y.style;u=I(n,{style:{color:C.neutralColor20}},c.filterUserAttributes(u||{}));var g=u.style;delete u.style}J(Q.element,x?"mouseover":"mouseenter",function(){3!==d&&Q.setState(1)});J(Q.element,x?"mouseout":"mouseleave",function(){3!==d&&Q.setState(d)});Q.setState=function(a){1!==a&&(Q.state=d=a);Q.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][a||0]);k||Q.attr([n,r,y,u][a||0]).css([R,F,G,g][a||0])};
k||Q.attr(n).css(E({cursor:"default"},R));return Q.on("touchstart",function(a){return a.stopPropagation()}).on("click",function(a){3!==d&&h.call(Q,a)})};y.prototype.crispLine=function(f,e,h){void 0===h&&(h="round");var l=f[0],r=f[1];a(l[1])&&l[1]===r[1]&&(l[1]=r[1]=Math[h](l[1])-e%2/2);a(l[2])&&l[2]===r[2]&&(l[2]=r[2]=Math[h](l[2])+e%2/2);return f};y.prototype.path=function(a){var f=this.styledMode?{}:{fill:"none"};F(a)?f.d=a:l(a)&&E(f,a);return this.createElement("path").attr(f)};y.prototype.circle=
function(a,f,e){a=l(a)?a:"undefined"===typeof a?{}:{x:a,y:f,r:e};f=this.createElement("circle");f.xSetter=f.ySetter=function(a,f,e){e.setAttribute("c"+f,a)};return f.attr(a)};y.prototype.arc=function(a,f,e,h,r,y){l(a)?(h=a,f=h.y,e=h.r,a=h.x):h={innerR:h,start:r,end:y};a=this.symbol("arc",a,f,e,e,h);a.r=e;return a};y.prototype.rect=function(a,f,e,h,r,y){r=l(a)?a.r:r;var u=this.createElement("rect");a=l(a)?a:"undefined"===typeof a?{}:{x:a,y:f,width:Math.max(e,0),height:Math.max(h,0)};this.styledMode||
("undefined"!==typeof y&&(a["stroke-width"]=y,a=u.crisp(a)),a.fill="none");r&&(a.r=r);u.rSetter=function(a,f,e){u.r=a;w(e,{rx:a,ry:a})};u.rGetter=function(){return u.r||0};return u.attr(a)};y.prototype.setSize=function(a,f,e){this.width=a;this.height=f;this.boxWrapper.animate({width:a,height:f},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:h(e,!0)?void 0:0});this.alignElements()};y.prototype.g=function(a){var f=this.createElement("g");return a?f.attr({"class":"highcharts-"+
a}):f};y.prototype.image=function(a,f,e,h,l,r){var y={preserveAspectRatio:"none"},u=function(a,f){a.setAttributeNS?a.setAttributeNS("http://www.w3.org/1999/xlink","href",f):a.setAttribute("hc-svg-href",f)};1<arguments.length&&E(y,{x:f,y:e,width:h,height:l});var t=this.createElement("image").attr(y);y=function(f){u(t.element,a);r.call(t,f)};if(r){u(t.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==");var b=new N.Image;J(b,"load",y);b.src=a;b.complete&&y({})}else u(t.element,
a);return t};y.prototype.symbol=function(f,l,r,y,u,b){var k=this,Q=/^url\((.*?)\)$/,d=Q.test(f),n=!d&&(this.symbols[f]?f:"circle"),F=n&&this.symbols[n],R;if(F){"number"===typeof l&&(R=F.call(this.symbols,Math.round(l||0),Math.round(r||0),y||0,u||0,b));var G=this.path(R);k.styledMode||G.attr("fill","none");E(G,{symbolName:n||void 0,x:l,y:r,width:y,height:u});b&&E(G,b)}else if(d){var I=f.match(Q)[1];var w=G=this.image(I);w.imgwidth=h(M[I]&&M[I].width,b&&b.width);w.imgheight=h(M[I]&&M[I].height,b&&b.height);
var c=function(a){return a.attr({width:a.width,height:a.height})};["width","height"].forEach(function(f){w[f+"Setter"]=function(f,e){var h=this["img"+e];this[e]=f;a(h)&&(b&&"within"===b.backgroundSize&&this.width&&this.height&&(h=Math.round(h*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(e,h),this.alignByTranslate||(f=((this[e]||0)-h)/2,this.attr("width"===e?{translateX:f}:{translateY:f})))}});a(l)&&w.attr({x:l,y:r});w.isImg=!0;a(w.imgwidth)&&
a(w.imgheight)?c(w):(w.attr({width:0,height:0}),e("img",{onload:function(){var a=m[k.chartIndex];0===this.width&&(t(this,{position:"absolute",top:"-999em"}),g.body.appendChild(this));M[I]={width:this.width,height:this.height};w.imgwidth=this.width;w.imgheight=this.height;w.element&&c(w);this.parentNode&&this.parentNode.removeChild(this);k.imgCount--;if(!k.imgCount&&a&&!a.hasLoaded)a.onload()},src:I}),this.imgCount++)}return G};y.prototype.clipRect=function(a,f,e,h){var l=O()+"-",r=this.createElement("clipPath").attr({id:l}).add(this.defs);
a=this.rect(a,f,e,h,0).add(r);a.id=l;a.clipPath=r;a.count=0;return a};y.prototype.text=function(f,e,h,l){var r={};if(l&&(this.allowHTML||!this.forExport))return this.html(f,e,h);r.x=Math.round(e||0);h&&(r.y=Math.round(h));a(f)&&(r.text=f);f=this.createElement("text").attr(r);l||(f.xSetter=function(a,f,e){for(var h=e.getElementsByTagName("tspan"),l=e.getAttribute(f),r=0,y;r<h.length;r++)y=h[r],y.getAttribute(f)===l&&y.setAttribute(f,a);e.setAttribute(f,a)});return f};y.prototype.fontMetrics=function(a,
f){a=!this.styledMode&&/px/.test(a)||!N.getComputedStyle?a||f&&f.style&&f.style.fontSize||this.style&&this.style.fontSize:f&&D.prototype.getStyle.call(f,"font-size");a=/px/.test(a)?u(a):12;f=24>a?a+3:Math.round(1.2*a);return{h:f,b:Math.round(.8*f),f:a}};y.prototype.rotCorr=function(a,f,e){var h=a;f&&e&&(h=Math.max(h*Math.cos(f*b),4));return{x:-a/3*Math.sin(f*b),y:h}};y.prototype.pathToSegments=function(a){for(var e=[],h=[],l={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},r=0;r<a.length;r++)f(h[0])&&G(a[r])&&
h.length===l[h[0].toUpperCase()]&&a.splice(r,0,h[0].replace("M","L").replace("m","l")),"string"===typeof a[r]&&(h.length&&e.push(h.slice(0)),h.length=0),h.push(a[r]);e.push(h.slice(0));return e};y.prototype.label=function(a,f,e,h,l,r,y,u,t){return new H(this,a,f,e,h,l,r,y,u,t)};y.prototype.alignElements=function(){this.alignedObjects.forEach(function(a){return a.align()})};return y}();E(A.prototype,{Element:D,SVG_NS:k,escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},symbols:K,
draw:B});z.registerRendererType("svg",A,!0);"";return A});P(c,"Core/Renderer/HTML/HTMLElement.js",[c["Core/Globals.js"],c["Core/Renderer/SVG/SVGElement.js"],c["Core/Utilities.js"]],function(c,v,A){var q=this&&this.__extends||function(){var b=function(d,n){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,k){b.__proto__=k}||function(b,k){for(var d in k)k.hasOwnProperty(d)&&(b[d]=k[d])};return b(d,n)};return function(d,n){function g(){this.constructor=d}b(d,n);d.prototype=null===n?
Object.create(n):(g.prototype=n.prototype,new g)}}(),z=c.isFirefox,D=c.isMS,H=c.isWebKit,K=c.win,p=A.css,d=A.defined,m=A.extend,b=A.pick,g=A.pInt;return function(c){function x(){return null!==c&&c.apply(this,arguments)||this}q(x,c);x.compose=function(b){b=b.prototype;var d=x.prototype;b.getSpanCorrection=d.getSpanCorrection;b.htmlCss=d.htmlCss;b.htmlGetBBox=d.htmlGetBBox;b.htmlUpdateTransform=d.htmlUpdateTransform;b.setSpanRotation=d.setSpanRotation};x.prototype.getSpanCorrection=function(b,d,k){this.xCorr=
-b*k;this.yCorr=-d};x.prototype.htmlCss=function(d){var n="SPAN"===this.element.tagName&&d&&"width"in d,k=b(n&&d.width,void 0);if(n){delete d.width;this.textWidth=k;var g=!0}d&&"ellipsis"===d.textOverflow&&(d.whiteSpace="nowrap",d.overflow="hidden");this.styles=m(this.styles,d);p(this.element,d);g&&this.htmlUpdateTransform();return this};x.prototype.htmlGetBBox=function(){var b=this.element;return{x:b.offsetLeft,y:b.offsetTop,width:b.offsetWidth,height:b.offsetHeight}};x.prototype.htmlUpdateTransform=
function(){if(this.added){var b=this.renderer,c=this.element,k=this.translateX||0,m=this.translateY||0,N=this.x||0,x=this.y||0,w=this.textAlign||"left",e={left:0,center:.5,right:1}[w],t=this.styles;t=t&&t.whiteSpace;p(c,{marginLeft:k,marginTop:m});!b.styledMode&&this.shadows&&this.shadows.forEach(function(a){p(a,{marginLeft:k+1,marginTop:m+1})});this.inverted&&[].forEach.call(c.childNodes,function(a){b.invertChild(a,c)});if("SPAN"===c.tagName){var a=this.rotation,r=this.textWidth&&g(this.textWidth),
E=[a,w,c.innerHTML,this.textWidth,this.textAlign].join(),F=void 0;(F=r!==this.oldTextWidth)&&!(F=r>this.oldTextWidth)&&((F=this.textPxLength)||(p(c,{width:"",whiteSpace:t||"nowrap"}),F=c.offsetWidth),F=F>r);F&&(/[ \-]/.test(c.textContent||c.innerText)||"ellipsis"===c.style.textOverflow)?(p(c,{width:r+"px",display:"block",whiteSpace:t||"normal"}),this.oldTextWidth=r,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1;E!==this.cTT&&(F=b.fontMetrics(c.style.fontSize,c).b,!d(a)||a===(this.oldRotation||
0)&&w===this.oldAlign||this.setSpanRotation(a,e,F),this.getSpanCorrection(!d(a)&&this.textPxLength||c.offsetWidth,F,e,a,w));p(c,{left:N+(this.xCorr||0)+"px",top:x+(this.yCorr||0)+"px"});this.cTT=E;this.oldRotation=a;this.oldAlign=w}}else this.alignOnAdd=!0};x.prototype.setSpanRotation=function(b,d,k){var n={},g=D&&!/Edge/.test(K.navigator.userAgent)?"-ms-transform":H?"-webkit-transform":z?"MozTransform":K.opera?"-o-transform":void 0;g&&(n[g]=n.transform="rotate("+b+"deg)",n[g+(z?"Origin":"-origin")]=
n.transformOrigin=100*d+"% "+k+"px",p(this.element,n))};return x}(v)});P(c,"Core/Renderer/HTML/HTMLRenderer.js",[c["Core/Renderer/HTML/AST.js"],c["Core/Renderer/SVG/SVGElement.js"],c["Core/Renderer/SVG/SVGRenderer.js"],c["Core/Utilities.js"]],function(c,v,A,C){var q=this&&this.__extends||function(){var d=function(c,b){d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var g in d)d.hasOwnProperty(g)&&(b[g]=d[g])};return d(c,b)};return function(c,
b){function g(){this.constructor=c}d(c,b);c.prototype=null===b?Object.create(b):(g.prototype=b.prototype,new g)}}(),D=C.attr,H=C.createElement,K=C.extend,p=C.pick;return function(d){function m(){return null!==d&&d.apply(this,arguments)||this}q(m,d);m.compose=function(b){b.prototype.html=m.prototype.html};m.prototype.html=function(b,d,m){var g=this.createElement("span"),n=g.element,B=g.renderer,k=B.isSVG,q=function(b,d){["opacity","visibility"].forEach(function(k){b[k+"Setter"]=function(e,t,a){var r=
b.div?b.div.style:d;v.prototype[k+"Setter"].call(this,e,t,a);r&&(r[t]=e)}});b.addedSetters=!0};g.textSetter=function(b){b!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,c.setElementHTML(this.element,p(b,"")),this.textStr=b,g.doTransform=!0)};k&&q(g,g.element.style);g.xSetter=g.ySetter=g.alignSetter=g.rotationSetter=function(b,d){"align"===d?g.alignValue=g.textAlign=b:g[d]=b;g.doTransform=!0};g.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)};
g.attr({text:b,x:Math.round(d),y:Math.round(m)}).css({position:"absolute"});B.styledMode||g.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize});n.style.whiteSpace="nowrap";g.css=g.htmlCss;k&&(g.add=function(b){var d=B.box.parentNode,k=[];if(this.parentGroup=b){var e=b.div;if(!e){for(;b;)k.push(b),b=b.parentGroup;k.reverse().forEach(function(b){function a(a,e){b[e]=a;"translateX"===e?n.left=a+"px":n.top=a+"px";b.doTransform=!0}var r=D(b.element,"class"),t=b.styles||{};e=b.div=b.div||
H("div",r?{className:r}:void 0,{position:"absolute",left:(b.translateX||0)+"px",top:(b.translateY||0)+"px",display:b.display,opacity:b.opacity,cursor:t.cursor,pointerEvents:t.pointerEvents},e||d);var n=e.style;K(b,{classSetter:function(a){return function(e){this.element.setAttribute("class",e);a.className=e}}(e),on:function(){k[0].div&&g.on.apply({element:k[0].div,onEvents:g.onEvents},arguments);return b},translateXSetter:a,translateYSetter:a});b.addedSetters||q(b)})}}else e=d;e.appendChild(n);g.added=
!0;g.alignOnAdd&&g.htmlUpdateTransform();return g});return g};return m}(A)});P(c,"Core/Axis/AxisDefaults.js",[c["Core/Color/Palette.js"]],function(c){var q;(function(q){q.defaultXAxisOptions={alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e. %b"},week:{main:"%e. %b"},month:{main:"%b '%y"},year:{main:"%Y"}},
endOnTick:!1,gridLineDashStyle:"Solid",gridZIndex:1,labels:{autoRotation:void 0,autoRotationLimit:80,distance:void 0,enabled:!0,indentation:10,overflow:"justify",padding:5,reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,x:0,zIndex:7,style:{color:c.neutralColor60,cursor:"default",fontSize:"11px"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minPadding:.01,offset:void 0,opposite:!1,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,
showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",rotation:0,useHTML:!1,x:0,y:0,style:{color:c.neutralColor60}},type:"linear",uniqueNames:!0,visible:!0,minorGridLineColor:c.neutralColor5,minorGridLineWidth:1,minorTickColor:c.neutralColor40,lineColor:c.highlightColor20,lineWidth:1,gridLineColor:c.neutralColor10,gridLineWidth:void 0,tickColor:c.highlightColor20};q.defaultYAxisOptions={reversedStacks:!0,
endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){var c=this.axis.chart.numberFormatter;return c(this.total,-1)},style:{color:c.neutralColor100,fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0};q.defaultLeftAxisOptions={labels:{x:-15},title:{rotation:270}};q.defaultRightAxisOptions=
{labels:{x:15},title:{rotation:90}};q.defaultBottomAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}};q.defaultTopAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}}})(q||(q={}));return q});P(c,"Core/Foundation.js",[c["Core/Utilities.js"]],function(c){var q=c.addEvent,A=c.isFunction,C=c.objectEach,z=c.removeEvent;return{registerEventOptions:function(c,v){c.eventOptions=c.eventOptions||{};C(v.events,function(v,p){A(v)&&c.eventOptions[p]!==v&&(A(c.eventOptions[p])&&
z(c,p,c.eventOptions[p]),c.eventOptions[p]=v,q(c,p,v))})}}});P(c,"Core/Axis/Tick.js",[c["Core/FormatUtilities.js"],c["Core/Globals.js"],c["Core/Utilities.js"]],function(c,v,A){var q=v.deg2rad,z=A.clamp,D=A.correctFloat,H=A.defined,K=A.destroyObjectProperties,p=A.extend,d=A.fireEvent,m=A.isNumber,b=A.merge,g=A.objectEach,L=A.pick;v=function(){function x(b,g,k,c,m){this.isNewLabel=this.isNew=!0;this.axis=b;this.pos=g;this.type=k||"";this.parameters=m||{};this.tickmarkOffset=this.parameters.tickmarkOffset;
this.options=this.parameters.options;d(this,"init");k||c||this.addLabel()}x.prototype.addLabel=function(){var b=this,g=b.axis,k=g.options,q=g.chart,N=g.categories,J=g.logarithmic,w=g.names,e=b.pos,t=L(b.options&&b.options.labels,k.labels),a=g.tickPositions,r=e===a[0],E=e===a[a.length-1],F=(!t.step||1===t.step)&&1===g.tickInterval;a=a.info;var G=b.label,l;N=this.parameters.category||(N?L(N[e],w[e],e):e);J&&m(N)&&(N=D(J.lin2log(N)));if(g.dateTime&&a){var f=q.time.resolveDTLFormat(k.dateTimeLabelFormats[!k.grid&&
a.higherRanks[e]||a.unitName]);var I=f.main}b.isFirst=r;b.isLast=E;var h={axis:g,chart:q,dateTimeLabelFormat:I,isFirst:r,isLast:E,pos:e,tick:b,tickPositionInfo:a,value:N};d(this,"labelFormat",h);var u=function(a){return t.formatter?t.formatter.call(a,a):t.format?(a.text=g.defaultLabelFormatter.call(a),c.format(t.format,a,q)):g.defaultLabelFormatter.call(a,a)};k=u.call(h,h);var O=f&&f.list;b.shortenLabel=O?function(){for(l=0;l<O.length;l++)if(p(h,{dateTimeLabelFormat:O[l]}),G.attr({text:u.call(h,h)}),
G.getBBox().width<g.getSlotWidth(b)-2*t.padding)return;G.attr({text:""})}:void 0;F&&g._addedPlotLB&&b.moveLabel(k,t);H(G)||b.movedLabel?G&&G.textStr!==k&&!F&&(!G.textWidth||t.style.width||G.styles.width||G.css({width:null}),G.attr({text:k}),G.textPxLength=G.getBBox().width):(b.label=G=b.createLabel({x:0,y:0},k,t),b.rotation=0)};x.prototype.createLabel=function(d,g,k){var n=this.axis,c=n.chart;if(d=H(g)&&k.enabled?c.renderer.text(g,d.x,d.y,k.useHTML).add(n.labelGroup):null)c.styledMode||d.css(b(k.style)),
d.textPxLength=d.getBBox().width;return d};x.prototype.destroy=function(){K(this,this.axis)};x.prototype.getPosition=function(b,g,k,c){var n=this.axis,m=n.chart,w=c&&m.oldChartHeight||m.chartHeight;b={x:b?D(n.translate(g+k,null,null,c)+n.transB):n.left+n.offset+(n.opposite?(c&&m.oldChartWidth||m.chartWidth)-n.right-n.left:0),y:b?w-n.bottom+n.offset-(n.opposite?n.height:0):D(w-n.translate(g+k,null,null,c)-n.transB)};b.y=z(b.y,-1E5,1E5);d(this,"afterGetPosition",{pos:b});return b};x.prototype.getLabelPosition=
function(b,g,k,c,m,p,w,e){var t=this.axis,a=t.transA,r=t.isLinked&&t.linkedParent?t.linkedParent.reversed:t.reversed,E=t.staggerLines,F=t.tickRotCorr||{x:0,y:0},n=c||t.reserveSpaceDefault?0:-t.labelOffset*("center"===t.labelAlign?.5:1),l={},f=m.y;H(f)||(f=0===t.side?k.rotation?-8:-k.getBBox().height:2===t.side?F.y+8:Math.cos(k.rotation*q)*(F.y-k.getBBox(!1,0).height/2));b=b+m.x+n+F.x-(p&&c?p*a*(r?-1:1):0);g=g+f-(p&&!c?p*a*(r?1:-1):0);E&&(k=w/(e||1)%E,t.opposite&&(k=E-k-1),g+=t.labelOffset/E*k);l.x=
b;l.y=Math.round(g);d(this,"afterGetLabelPosition",{pos:l,tickmarkOffset:p,index:w});return l};x.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0};x.prototype.getMarkPath=function(b,d,k,g,c,m){return m.crispLine([["M",b,d],["L",b+(c?0:-k),d+(c?k:0)]],g)};x.prototype.handleOverflow=function(b){var d=this.axis,k=d.options.labels,g=b.x,c=d.chart.chartWidth,n=d.chart.spacing,w=L(d.labelLeft,Math.min(d.pos,n[3]));n=L(d.labelRight,Math.max(d.isRadial?
0:d.pos+d.len,c-n[1]));var e=this.label,t=this.rotation,a={left:0,center:.5,right:1}[d.labelAlign||e.attr("align")],r=e.getBBox().width,E=d.getSlotWidth(this),F={},G=E,l=1,f;if(t||"justify"!==k.overflow)0>t&&g-a*r<w?f=Math.round(g/Math.cos(t*q)-w):0<t&&g+a*r>n&&(f=Math.round((c-g)/Math.cos(t*q)));else if(c=g+(1-a)*r,g-a*r<w?G=b.x+G*(1-a)-w:c>n&&(G=n-b.x+G*a,l=-1),G=Math.min(E,G),G<E&&"center"===d.labelAlign&&(b.x+=l*(E-G-a*(E-Math.min(r,G)))),r>G||d.autoRotation&&(e.styles||{}).width)f=G;f&&(this.shortenLabel?
this.shortenLabel():(F.width=Math.floor(f)+"px",(k.style||{}).textOverflow||(F.textOverflow="ellipsis"),e.css(F)))};x.prototype.moveLabel=function(b,d){var k=this,c=k.label,n=k.axis,m=n.reversed,w=!1;c&&c.textStr===b?(k.movedLabel=c,w=!0,delete k.label):g(n.ticks,function(e){w||e.isNew||e===k||!e.label||e.label.textStr!==b||(k.movedLabel=e.label,w=!0,e.labelPos=k.movedLabel.xy,delete e.label)});if(!w&&(k.labelPos||c)){var e=k.labelPos||c.xy;c=n.horiz?m?0:n.width+n.left:e.x;n=n.horiz?e.y:m?n.width+
n.left:0;k.movedLabel=k.createLabel({x:c,y:n},b,d);k.movedLabel&&k.movedLabel.attr({opacity:0})}};x.prototype.render=function(b,g,k){var c=this.axis,n=c.horiz,m=this.pos,w=L(this.tickmarkOffset,c.tickmarkOffset);m=this.getPosition(n,m,w,g);w=m.x;var e=m.y;c=n&&w===c.pos+c.len||!n&&e===c.pos?-1:1;n=L(k,this.label&&this.label.newOpacity,1);k=L(k,1);this.isActive=!0;this.renderGridLine(g,k,c);this.renderMark(m,k,c);this.renderLabel(m,g,n,b);this.isNew=!1;d(this,"afterRender")};x.prototype.renderGridLine=
function(b,d,k){var g=this.axis,c=g.options,n={},w=this.pos,e=this.type,t=L(this.tickmarkOffset,g.tickmarkOffset),a=g.chart.renderer,r=this.gridLine,E=c.gridLineWidth,F=c.gridLineColor,G=c.gridLineDashStyle;"minor"===this.type&&(E=c.minorGridLineWidth,F=c.minorGridLineColor,G=c.minorGridLineDashStyle);r||(g.chart.styledMode||(n.stroke=F,n["stroke-width"]=E||0,n.dashstyle=G),e||(n.zIndex=1),b&&(d=0),this.gridLine=r=a.path().attr(n).addClass("highcharts-"+(e?e+"-":"")+"grid-line").add(g.gridGroup));
if(r&&(k=g.getPlotLinePath({value:w+t,lineWidth:r.strokeWidth()*k,force:"pass",old:b})))r[b||this.isNew?"attr":"animate"]({d:k,opacity:d})};x.prototype.renderMark=function(b,d,k){var g=this.axis,c=g.options,n=g.chart.renderer,w=this.type,e=g.tickSize(w?w+"Tick":"tick"),t=b.x;b=b.y;var a=L(c["minor"!==w?"tickWidth":"minorTickWidth"],!w&&g.isXAxis?1:0);c=c["minor"!==w?"tickColor":"minorTickColor"];var r=this.mark,E=!r;e&&(g.opposite&&(e[0]=-e[0]),r||(this.mark=r=n.path().addClass("highcharts-"+(w?w+
"-":"")+"tick").add(g.axisGroup),g.chart.styledMode||r.attr({stroke:c,"stroke-width":a})),r[E?"attr":"animate"]({d:this.getMarkPath(t,b,e[0],r.strokeWidth()*k,g.horiz,n),opacity:d}))};x.prototype.renderLabel=function(b,d,k,g){var c=this.axis,n=c.horiz,w=c.options,e=this.label,t=w.labels,a=t.step;c=L(this.tickmarkOffset,c.tickmarkOffset);var r=b.x;b=b.y;var E=!0;e&&m(r)&&(e.xy=b=this.getLabelPosition(r,b,e,n,t,c,g,a),this.isFirst&&!this.isLast&&!w.showFirstLabel||this.isLast&&!this.isFirst&&!w.showLastLabel?
E=!1:!n||t.step||t.rotation||d||0===k||this.handleOverflow(b),a&&g%a&&(E=!1),E&&m(b.y)?(b.opacity=k,e[this.isNewLabel?"attr":"animate"](b),this.isNewLabel=!1):(e.attr("y",-9999),this.isNewLabel=!0))};x.prototype.replaceMovedLabel=function(){var b=this.label,d=this.axis,k=d.reversed;if(b&&!this.isNew){var g=d.horiz?k?d.left:d.width+d.left:b.xy.x;k=d.horiz?b.xy.y:k?d.width+d.top:d.top;b.animate({x:g,y:k,opacity:0},void 0,b.destroy);delete this.label}d.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel};
return x}();"";return v});P(c,"Core/Axis/Axis.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Axis/AxisDefaults.js"],c["Core/Color/Color.js"],c["Core/Foundation.js"],c["Core/Globals.js"],c["Core/Color/Palette.js"],c["Core/DefaultOptions.js"],c["Core/Axis/Tick.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H,K,p){var d=c.animObject,m=C.registerEventOptions,b=z.deg2rad,g=H.defaultOptions,q=p.arrayMax,x=p.arrayMin,n=p.clamp,B=p.correctFloat,k=p.defined,M=p.destroyObjectProperties,N=p.erase,
J=p.error,w=p.extend,e=p.fireEvent,t=p.getMagnitude,a=p.isArray,r=p.isNumber,E=p.isString,F=p.merge,G=p.normalizeTickInterval,l=p.objectEach,f=p.pick,I=p.relativeLength,h=p.removeEvent,u=p.splat,O=p.syncTimeout;c=function(){function c(a,f){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.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.eventOptions=this.coll=this.closestPointRange=this.chart=this.categories=this.bottom=this.alternateBands=void 0;this.init(a,
f)}c.prototype.init=function(a,h){var b=h.isX;this.chart=a;this.horiz=a.inverted&&!this.isZAxis?!b:b;this.isXAxis=b;this.coll=this.coll||(b?"xAxis":"yAxis");e(this,"init",{userOptions:h});this.opposite=f(h.opposite,this.opposite);this.side=f(h.side,this.side,this.horiz?this.opposite?0:2:this.opposite?1:3);this.setOptions(h);var l=this.options,y=l.labels,d=l.type;this.userOptions=h;this.minPixelPadding=0;this.reversed=f(l.reversed,this.reversed);this.visible=l.visible;this.zoomEnabled=l.zoomEnabled;
this.hasNames="category"===d||!0===l.categories;this.categories=l.categories||this.hasNames;this.names||(this.names=[],this.names.keys={});this.plotLinesAndBandsGroups={};this.positiveValuesOnly=!!this.logarithmic;this.isLinked=k(l.linkedTo);this.ticks={};this.labelEdge=[];this.minorTicks={};this.plotLinesAndBands=[];this.alternateBands={};this.len=0;this.minRange=this.userMinRange=l.minRange||l.maxZoom;this.range=l.range;this.offset=l.offset||0;this.min=this.max=null;h=f(l.crosshair,u(a.options.tooltip.crosshairs)[b?
0:1]);this.crosshair=!0===h?{}:h;-1===a.axes.indexOf(this)&&(b?a.axes.splice(a.xAxis.length,0,this):a.axes.push(this),a[this.coll].push(this));this.series=this.series||[];a.inverted&&!this.isZAxis&&b&&"undefined"===typeof this.reversed&&(this.reversed=!0);this.labelRotation=r(y.rotation)?y.rotation:void 0;m(this,l);e(this,"afterInit")};c.prototype.setOptions=function(a){this.options=F(v.defaultXAxisOptions,"yAxis"===this.coll&&v.defaultYAxisOptions,[v.defaultTopAxisOptions,v.defaultRightAxisOptions,
v.defaultBottomAxisOptions,v.defaultLeftAxisOptions][this.side],F(g[this.coll],a));e(this,"afterSetOptions",{userOptions:a})};c.prototype.defaultLabelFormatter=function(a){var f=this.axis;a=this.chart.numberFormatter;var e=r(this.value)?this.value:NaN,h=f.chart.time,l=this.dateTimeLabelFormat,b=g.lang,y=b.numericSymbols;b=b.numericSymbolMagnitude||1E3;var d=f.logarithmic?Math.abs(e):f.tickInterval,u=y&&y.length;if(f.categories)var t=""+this.value;else if(l)t=h.dateFormat(l,e);else if(u&&1E3<=d)for(;u--&&
"undefined"===typeof t;)f=Math.pow(b,u+1),d>=f&&0===10*e%f&&null!==y[u]&&0!==e&&(t=a(e/f,-1)+y[u]);"undefined"===typeof t&&(t=1E4<=Math.abs(e)?a(e,-1):a(e,-1,void 0,""));return t};c.prototype.getSeriesExtremes=function(){var a=this,h=a.chart,l;e(this,"getSeriesExtremes",null,function(){a.hasVisibleSeries=!1;a.dataMin=a.dataMax=a.threshold=null;a.softThreshold=!a.isXAxis;a.stacking&&a.stacking.buildStacks();a.series.forEach(function(e){if(e.visible||!h.options.chart.ignoreHiddenSeries){var b=e.options,
y=b.threshold;a.hasVisibleSeries=!0;a.positiveValuesOnly&&0>=y&&(y=null);if(a.isXAxis){if(b=e.xData,b.length){b=a.logarithmic?b.filter(a.validatePositiveValue):b;l=e.getXExtremes(b);var d=l.min;var u=l.max;r(d)||d instanceof Date||(b=b.filter(r),l=e.getXExtremes(b),d=l.min,u=l.max);b.length&&(a.dataMin=Math.min(f(a.dataMin,d),d),a.dataMax=Math.max(f(a.dataMax,u),u))}}else if(e=e.applyExtremes(),r(e.dataMin)&&(d=e.dataMin,a.dataMin=Math.min(f(a.dataMin,d),d)),r(e.dataMax)&&(u=e.dataMax,a.dataMax=Math.max(f(a.dataMax,
u),u)),k(y)&&(a.threshold=y),!b.softThreshold||a.positiveValuesOnly)a.softThreshold=!1}})});e(this,"afterGetSeriesExtremes")};c.prototype.translate=function(a,f,e,h,b,l){var y=this.linkedParent||this,d=h&&y.old?y.old.min:y.min,u=y.minPixelPadding;b=(y.isOrdinal||y.brokenAxis&&y.brokenAxis.hasBreaks||y.logarithmic&&b)&&y.lin2val;var t=1,k=0;h=h&&y.old?y.old.transA:y.transA;h||(h=y.transA);e&&(t*=-1,k=y.len);y.reversed&&(t*=-1,k-=t*(y.sector||y.len));f?(a=(a*t+k-u)/h+d,b&&(a=y.lin2val(a))):(b&&(a=y.val2lin(a)),
a=r(d)?t*(a-d)*h+k+t*u+(r(l)?h*l:0):void 0);return a};c.prototype.toPixels=function(a,f){return this.translate(a,!1,!this.horiz,null,!0)+(f?0:this.pos)};c.prototype.toValue=function(a,f){return this.translate(a-(f?0:this.pos),!0,!this.horiz,null,!0)};c.prototype.getPlotLinePath=function(a){function h(a,f,e){if("pass"!==G&&a<f||a>e)G?a=n(a,f,e):p=!0;return a}var b=this,l=b.chart,y=b.left,d=b.top,u=a.old,t=a.value,k=a.lineWidth,c=u&&l.oldChartHeight||l.chartHeight,g=u&&l.oldChartWidth||l.chartWidth,
E=b.transB,F=a.translatedValue,G=a.force,I,w,m,O,p;a={value:t,lineWidth:k,old:u,force:G,acrossPanes:a.acrossPanes,translatedValue:F};e(this,"getPlotLinePath",a,function(a){F=f(F,b.translate(t,null,null,u));F=n(F,-1E5,1E5);I=m=Math.round(F+E);w=O=Math.round(c-F-E);r(F)?b.horiz?(w=d,O=c-b.bottom,I=m=h(I,y,y+b.width)):(I=y,m=g-b.right,w=O=h(w,d,d+b.height)):(p=!0,G=!1);a.path=p&&!G?null:l.renderer.crispLine([["M",I,w],["L",m,O]],k||1)});return a.path};c.prototype.getLinearTickPositions=function(a,f,
e){var h=B(Math.floor(f/a)*a);e=B(Math.ceil(e/a)*a);var b=[],l;B(h+a)===h&&(l=20);if(this.single)return[f];for(f=h;f<=e;){b.push(f);f=B(f+a,l);if(f===r)break;var r=f}return b};c.prototype.getMinorTickInterval=function(){var a=this.options;return!0===a.minorTicks?f(a.minorTickInterval,"auto"):!1===a.minorTicks?null:a.minorTickInterval};c.prototype.getMinorTickPositions=function(){var a=this.options,f=this.tickPositions,e=this.minorTickInterval,h=this.pointRangePadding||0,b=this.min-h;h=this.max+h;
var l=h-b,r=[];if(l&&l/e<this.len/3){var d=this.logarithmic;if(d)this.paddedTicks.forEach(function(a,f,h){f&&r.push.apply(r,d.getLogTickPositions(e,h[f-1],h[f],!0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())r=r.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(e),b,h,a.startOfWeek));else for(a=b+(f[0]-b)%e;a<=h&&a!==r[0];a+=e)r.push(a)}0!==r.length&&this.trimTicks(r);return r};c.prototype.adjustForMinRange=function(){var a=this.options,e=this.logarithmic,h=this.min,
b=this.max,l=0,r,d,u,t;this.isXAxis&&"undefined"===typeof this.minRange&&!e&&(k(a.min)||k(a.max)?this.minRange=null:(this.series.forEach(function(a){u=a.xData;t=a.xIncrement?1:u.length-1;if(1<u.length)for(r=t;0<r;r--)if(d=u[r]-u[r-1],!l||d<l)l=d}),this.minRange=Math.min(5*l,this.dataMax-this.dataMin)));if(b-h<this.minRange){var c=this.dataMax-this.dataMin>=this.minRange;var g=this.minRange;var E=(g-b+h)/2;E=[h-E,f(a.min,h-E)];c&&(E[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin);
h=q(E);b=[h+g,f(a.max,h+g)];c&&(b[2]=e?e.log2lin(this.dataMax):this.dataMax);b=x(b);b-h<g&&(E[0]=b-g,E[1]=f(a.min,b-g),h=q(E))}this.min=h;this.max=b};c.prototype.getClosest=function(){var a;this.categories?a=1:this.series.forEach(function(f){var e=f.closestPointRange,h=f.visible||!f.chart.options.chart.ignoreHiddenSeries;!f.noSharedTooltip&&k(e)&&h&&(a=k(a)?Math.min(a,e):e)});return a};c.prototype.nameToX=function(e){var h=a(this.categories),b=h?this.categories:this.names,l=e.options.x;e.series.requireSorting=
!1;k(l)||(l=this.options.uniqueNames?h?b.indexOf(e.name):f(b.keys[e.name],-1):e.series.autoIncrement());if(-1===l){if(!h)var r=b.length}else r=l;"undefined"!==typeof r&&(this.names[r]=e.name,this.names.keys[e.name]=r);return r};c.prototype.updateNames=function(){var a=this,f=this.names;0<f.length&&(Object.keys(f.keys).forEach(function(a){delete f.keys[a]}),f.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(f){f.xIncrement=null;if(!f.points||f.isDirtyData)a.max=Math.max(a.max,
f.xData.length-1),f.processData(),f.generatePoints();f.data.forEach(function(e,h){if(e&&e.options&&"undefined"!==typeof e.name){var b=a.nameToX(e);"undefined"!==typeof b&&b!==e.x&&(e.x=b,f.xData[h]=b)}})}))};c.prototype.setAxisTranslation=function(){var a=this,h=a.max-a.min,b=a.linkedParent,l=!!a.categories,r=a.isXAxis,d=a.axisPointRange||0,u=0,t=0,k=a.transA;if(r||l||d){var c=a.getClosest();b?(u=b.minPointOffset,t=b.pointRangePadding):a.series.forEach(function(e){var h=l?1:r?f(e.options.pointRange,
c,0):a.axisPointRange||0,b=e.options.pointPlacement;d=Math.max(d,h);if(!a.single||l)e=e.is("xrange")?!r:r,u=Math.max(u,e&&E(b)?0:h/2),t=Math.max(t,e&&"on"===b?0:h)});b=a.ordinal&&a.ordinal.slope&&c?a.ordinal.slope/c:1;a.minPointOffset=u*=b;a.pointRangePadding=t*=b;a.pointRange=Math.min(d,a.single&&l?1:h);r&&(a.closestPointRange=c)}a.translationSlope=a.transA=k=a.staticScale||a.len/(h+t||1);a.transB=a.horiz?a.left:a.bottom;a.minPixelPadding=k*u;e(this,"afterSetAxisTranslation")};c.prototype.minFromRange=
function(){return this.max-this.range};c.prototype.setTickInterval=function(a){var h=this,b=h.chart,l=h.logarithmic,d=h.options,u=h.isXAxis,y=h.isLinked,c=d.tickPixelInterval,g=h.categories,E=h.softThreshold,F=d.maxPadding,n=d.minPadding,I=d.tickInterval,w=r(h.threshold)?h.threshold:null;h.dateTime||g||y||this.getTickAmount();var m=f(h.userMin,d.min);var O=f(h.userMax,d.max);if(y){h.linkedParent=b[h.coll][d.linkedTo];var p=h.linkedParent.getExtremes();h.min=f(p.min,p.dataMin);h.max=f(p.max,p.dataMax);
d.type!==h.linkedParent.options.type&&J(11,1,b)}else{if(E&&k(w))if(h.dataMin>=w)p=w,n=0;else if(h.dataMax<=w){var q=w;F=0}h.min=f(m,p,h.dataMin);h.max=f(O,q,h.dataMax)}l&&(h.positiveValuesOnly&&!a&&0>=Math.min(h.min,f(h.dataMin,h.min))&&J(10,1,b),h.min=B(l.log2lin(h.min),16),h.max=B(l.log2lin(h.max),16));h.range&&k(h.max)&&(h.userMin=h.min=m=Math.max(h.dataMin,h.minFromRange()),h.userMax=O=h.max,h.range=null);e(h,"foundExtremes");h.beforePadding&&h.beforePadding();h.adjustForMinRange();!(g||h.axisPointRange||
h.stacking&&h.stacking.usePercentage||y)&&k(h.min)&&k(h.max)&&(b=h.max-h.min)&&(!k(m)&&n&&(h.min-=b*n),!k(O)&&F&&(h.max+=b*F));r(h.userMin)||(r(d.softMin)&&d.softMin<h.min&&(h.min=m=d.softMin),r(d.floor)&&(h.min=Math.max(h.min,d.floor)));r(h.userMax)||(r(d.softMax)&&d.softMax>h.max&&(h.max=O=d.softMax),r(d.ceiling)&&(h.max=Math.min(h.max,d.ceiling)));E&&k(h.dataMin)&&(w=w||0,!k(m)&&h.min<w&&h.dataMin>=w?h.min=h.options.minRange?Math.min(w,h.max-h.minRange):w:!k(O)&&h.max>w&&h.dataMax<=w&&(h.max=h.options.minRange?
Math.max(w,h.min+h.minRange):w));r(h.min)&&r(h.max)&&!this.chart.polar&&h.min>h.max&&(k(h.options.min)?h.max=h.min:k(h.options.max)&&(h.min=h.max));h.tickInterval=h.min===h.max||"undefined"===typeof h.min||"undefined"===typeof h.max?1:y&&h.linkedParent&&!I&&c===h.linkedParent.options.tickPixelInterval?I=h.linkedParent.tickInterval:f(I,this.tickAmount?(h.max-h.min)/Math.max(this.tickAmount-1,1):void 0,g?1:(h.max-h.min)*c/Math.max(h.len,c));u&&!a&&h.series.forEach(function(a){a.processData(h.min!==
(h.old&&h.old.min)||h.max!==(h.old&&h.old.max))});h.setAxisTranslation();e(this,"initialAxisTranslation");h.pointRange&&!I&&(h.tickInterval=Math.max(h.pointRange,h.tickInterval));a=f(d.minTickInterval,h.dateTime&&!h.series.some(function(a){return a.noSharedTooltip})?h.closestPointRange:0);!I&&h.tickInterval<a&&(h.tickInterval=a);h.dateTime||h.logarithmic||I||(h.tickInterval=G(h.tickInterval,void 0,t(h.tickInterval),f(d.allowDecimals,.5>h.tickInterval||void 0!==this.tickAmount),!!this.tickAmount));
this.tickAmount||(h.tickInterval=h.unsquish());this.setTickPositions()};c.prototype.setTickPositions=function(){var a=this.options,f=a.tickPositions,h=this.getMinorTickInterval(),b=this.hasVerticalPanning(),l="colorAxis"===this.coll,r=(l||!b)&&a.startOnTick;b=(l||!b)&&a.endOnTick;l=a.tickPositioner;this.tickmarkOffset=this.categories&&"between"===a.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval="auto"===h&&this.tickInterval?this.tickInterval/5:h;this.single=this.min===this.max&&
k(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==a.allowDecimals);this.tickPositions=h=f&&f.slice();!h&&(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))?h=this.dateTime?this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,a.units),this.min,this.max,a.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):(h=[this.min,this.max],J(19,!1,this.chart)),h.length>this.len&&(h=[h[0],h.pop()],h[0]===h[1]&&(h.length=1)),this.tickPositions=h,l&&(l=l.apply(this,[this.min,this.max])))&&(this.tickPositions=h=l);this.paddedTicks=h.slice(0);this.trimTicks(h,r,b);this.isLinked||(this.single&&2>h.length&&!this.categories&&!this.series.some(function(a){return a.is("heatmap")&&"between"===a.options.pointPlacement})&&(this.min-=.5,this.max+=.5),
f||l||this.adjustTickAmount());e(this,"afterSetTickPositions")};c.prototype.trimTicks=function(a,f,h){var b=a[0],l=a[a.length-1],r=!this.isOrdinal&&this.minPointOffset||0;e(this,"trimTicks");if(!this.isLinked){if(f&&-Infinity!==b)this.min=b;else for(;this.min-r>a[0];)a.shift();if(h)this.max=l;else for(;this.max+r<a[a.length-1];)a.pop();0===a.length&&k(b)&&!this.options.tickPositions&&a.push((l+b)/2)}};c.prototype.alignToOthers=function(){var a={},f=this.options,h;!1!==this.chart.options.chart.alignTicks&&
f.alignTicks&&!1!==f.startOnTick&&!1!==f.endOnTick&&!this.logarithmic&&this.chart[this.coll].forEach(function(f){var e=f.options;e=[f.horiz?e.left:e.top,e.width,e.height,e.pane].join();f.series.length&&(a[e]?h=!0:a[e]=1)});return h};c.prototype.getTickAmount=function(){var a=this.options,f=a.tickPixelInterval,h=a.tickAmount;!k(a.tickInterval)&&!h&&this.len<f&&!this.isRadial&&!this.logarithmic&&a.startOnTick&&a.endOnTick&&(h=2);!h&&this.alignToOthers()&&(h=Math.ceil(this.len/f)+1);4>h&&(this.finalTickAmt=
h,h=5);this.tickAmount=h};c.prototype.adjustTickAmount=function(){var a=this.options,h=this.tickInterval,e=this.tickPositions,b=this.tickAmount,l=this.finalTickAmt,d=e&&e.length,u=f(this.threshold,this.softThreshold?0:null);if(this.hasData()&&r(this.min)&&r(this.max)){if(d<b){for(;e.length<b;)e.length%2||this.min===u?e.push(B(e[e.length-1]+h)):e.unshift(B(e[0]-h));this.transA*=(d-1)/(b-1);this.min=a.startOnTick?e[0]:Math.min(this.min,e[0]);this.max=a.endOnTick?e[e.length-1]:Math.max(this.max,e[e.length-
1])}else d>b&&(this.tickInterval*=2,this.setTickPositions());if(k(l)){for(h=a=e.length;h--;)(3===l&&1===h%2||2>=l&&0<h&&h<a-1)&&e.splice(h,1);this.finalTickAmt=void 0}}};c.prototype.setScale=function(){var a=!1,f=!1;this.series.forEach(function(h){a=a||h.isDirtyData||h.isDirty;f=f||h.xAxis&&h.xAxis.isDirty||!1});this.setAxisSize();var h=this.len!==(this.old&&this.old.len);h||a||f||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||
this.alignToOthers()?(this.stacking&&this.stacking.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.isDirty||(this.isDirty=h||this.min!==(this.old&&this.old.min)||this.max!==(this.old&&this.old.max))):this.stacking&&this.stacking.cleanStacks();a&&this.panningState&&(this.panningState.isDirty=!0);e(this,"afterSetScale")};c.prototype.setExtremes=function(a,h,b,l,r){var d=this,u=d.chart;b=f(b,!0);d.series.forEach(function(a){delete a.kdTree});r=w(r,{min:a,max:h});
e(d,"setExtremes",r,function(){d.userMin=a;d.userMax=h;d.eventArgs=r;b&&u.redraw(l)})};c.prototype.zoom=function(a,h){var b=this,l=this.dataMin,r=this.dataMax,d=this.options,u=Math.min(l,f(d.min,l)),t=Math.max(r,f(d.max,r));a={newMin:a,newMax:h};e(this,"zoom",a,function(a){var h=a.newMin,f=a.newMax;if(h!==b.min||f!==b.max)b.allowZoomOutside||(k(l)&&(h<u&&(h=u),h>t&&(h=t)),k(r)&&(f<u&&(f=u),f>t&&(f=t))),b.displayBtn="undefined"!==typeof h||"undefined"!==typeof f,b.setExtremes(h,f,!1,void 0,{trigger:"zoom"});
a.zoomed=!0});return a.zoomed};c.prototype.setAxisSize=function(){var a=this.chart,h=this.options,e=h.offsets||[0,0,0,0],b=this.horiz,l=this.width=Math.round(I(f(h.width,a.plotWidth-e[3]+e[1]),a.plotWidth)),r=this.height=Math.round(I(f(h.height,a.plotHeight-e[0]+e[2]),a.plotHeight)),d=this.top=Math.round(I(f(h.top,a.plotTop+e[0]),a.plotHeight,a.plotTop));h=this.left=Math.round(I(f(h.left,a.plotLeft+e[3]),a.plotWidth,a.plotLeft));this.bottom=a.chartHeight-r-d;this.right=a.chartWidth-l-h;this.len=Math.max(b?
l:r,0);this.pos=b?h:d};c.prototype.getExtremes=function(){var a=this.logarithmic;return{min:a?B(a.lin2log(this.min)):this.min,max:a?B(a.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}};c.prototype.getThreshold=function(a){var h=this.logarithmic,f=h?h.lin2log(this.min):this.min;h=h?h.lin2log(this.max):this.max;null===a||-Infinity===a?a=f:Infinity===a?a=h:f>a?a=f:h<a&&(a=h);return this.translate(a,0,1,0,1)};c.prototype.autoLabelAlign=
function(a){var h=(f(a,0)-90*this.side+720)%360;a={align:"center"};e(this,"autoLabelAlign",a,function(a){15<h&&165>h?a.align="right":195<h&&345>h&&(a.align="left")});return a.align};c.prototype.tickSize=function(a){var h=this.options,b=f(h["tick"===a?"tickWidth":"minorTickWidth"],"tick"===a&&this.isXAxis&&!this.categories?1:0),l=h["tick"===a?"tickLength":"minorTickLength"];if(b&&l){"inside"===h[a+"Position"]&&(l=-l);var r=[l,b]}a={tickSize:r};e(this,"afterTickSize",a);return a.tickSize};c.prototype.labelMetrics=
function(){var a=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style.fontSize,this.ticks[a]&&this.ticks[a].label)};c.prototype.unsquish=function(){var a=this.options.labels,h=this.horiz,e=this.tickInterval,l=this.len/(((this.categories?1:0)+this.max-this.min)/e),d=a.rotation,u=this.labelMetrics(),t=Math.max(this.max-this.min,0),k=function(a){var h=a/(l||1);h=1<h?Math.ceil(h):1;h*e>t&&Infinity!==a&&Infinity!==l&&t&&(h=Math.ceil(t/e));return B(h*
e)},c=e,g,E,F=Number.MAX_VALUE;if(h){if(!a.staggerLines&&!a.step)if(r(d))var n=[d];else l<a.autoRotationLimit&&(n=a.autoRotation);n&&n.forEach(function(a){if(a===d||a&&-90<=a&&90>=a){E=k(Math.abs(u.h/Math.sin(b*a)));var h=E+Math.abs(a/360);h<F&&(F=h,g=a,c=E)}})}else a.step||(c=k(u.h));this.autoRotation=n;this.labelRotation=f(g,r(d)?d:0);return c};c.prototype.getSlotWidth=function(a){var h=this.chart,f=this.horiz,e=this.options.labels,b=Math.max(this.tickPositions.length-(this.categories?0:1),1),l=
h.margin[3];if(a&&r(a.slotWidth))return a.slotWidth;if(f&&2>e.step)return e.rotation?0:(this.staggerLines||1)*this.len/b;if(!f){a=e.style.width;if(void 0!==a)return parseInt(String(a),10);if(l)return l-h.spacing[3]}return.33*h.chartWidth};c.prototype.renderUnsquish=function(){var a=this.chart,h=a.renderer,f=this.tickPositions,e=this.ticks,b=this.options.labels,l=b.style,r=this.horiz,d=this.getSlotWidth(),u=Math.max(1,Math.round(d-2*b.padding)),t={},k=this.labelMetrics(),c=l.textOverflow,g=0;E(b.rotation)||
(t.rotation=b.rotation||0);f.forEach(function(a){a=e[a];a.movedLabel&&a.replaceMovedLabel();a&&a.label&&a.label.textPxLength>g&&(g=a.label.textPxLength)});this.maxLabelLength=g;if(this.autoRotation)g>u&&g>k.h?t.rotation=this.labelRotation:this.labelRotation=0;else if(d){var F=u;if(!c){var n="clip";for(u=f.length;!r&&u--;){var I=f[u];if(I=e[I].label)I.styles&&"ellipsis"===I.styles.textOverflow?I.css({textOverflow:"clip"}):I.textPxLength>d&&I.css({width:d+"px"}),I.getBBox().height>this.len/f.length-
(k.h-k.f)&&(I.specificTextOverflow="ellipsis")}}}t.rotation&&(F=g>.5*a.chartHeight?.33*a.chartHeight:g,c||(n="ellipsis"));if(this.labelAlign=b.align||this.autoLabelAlign(this.labelRotation))t.align=this.labelAlign;f.forEach(function(a){var h=(a=e[a])&&a.label,f=l.width,b={};h&&(h.attr(t),a.shortenLabel?a.shortenLabel():F&&!f&&"nowrap"!==l.whiteSpace&&(F<h.textPxLength||"SPAN"===h.element.tagName)?(b.width=F+"px",c||(b.textOverflow=h.specificTextOverflow||n),h.css(b)):h.styles&&h.styles.width&&!b.width&&
!f&&h.css({width:null}),delete h.specificTextOverflow,a.rotation=t.rotation)},this);this.tickRotCorr=h.rotCorr(k.b,this.labelRotation||0,0!==this.side)};c.prototype.hasData=function(){return this.series.some(function(a){return a.hasData()})||this.options.showEmpty&&k(this.min)&&k(this.max)};c.prototype.addTitle=function(a){var h=this.chart.renderer,f=this.horiz,e=this.opposite,b=this.options.title,l=this.chart.styledMode,r;this.axisTitle||((r=b.textAlign)||(r=(f?{low:"left",middle:"center",high:"right"}:
{low:e?"right":"left",middle:"center",high:e?"left":"right"})[b.align]),this.axisTitle=h.text(b.text||"",0,0,b.useHTML).attr({zIndex:7,rotation:b.rotation,align:r}).addClass("highcharts-axis-title"),l||this.axisTitle.css(F(b.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0);l||b.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"});this.axisTitle[a?"show":"hide"](a)};c.prototype.generateTick=function(a){var h=this.ticks;h[a]?h[a].addLabel():h[a]=new K(this,a)};c.prototype.getOffset=
function(){var a=this,h=this,b=h.chart,r=b.renderer,d=h.options,u=h.tickPositions,t=h.ticks,c=h.horiz,g=h.side,E=b.inverted&&!h.isZAxis?[1,0,3,2][g]:g,F=h.hasData(),n=d.title,I=d.labels,G=b.axisOffset;b=b.clipOffset;var w=[-1,1,1,-1][g],m=d.className,O=h.axisParent,p,q=0,B=0,x=0;h.showAxis=p=F||d.showEmpty;h.staggerLines=h.horiz&&I.staggerLines||void 0;if(!h.axisGroup){var J=function(h,f,e){return r.g(h).attr({zIndex:e}).addClass("highcharts-"+a.coll.toLowerCase()+f+" "+(a.isRadial?"highcharts-radial-axis"+
f+" ":"")+(m||"")).add(O)};h.gridGroup=J("grid","-grid",d.gridZIndex);h.axisGroup=J("axis","",d.zIndex);h.labelGroup=J("axis-labels","-labels",I.zIndex)}F||h.isLinked?(u.forEach(function(a){h.generateTick(a)}),h.renderUnsquish(),h.reserveSpaceDefault=0===g||2===g||{1:"left",3:"right"}[g]===h.labelAlign,f(I.reserveSpace,"center"===h.labelAlign?!0:null,h.reserveSpaceDefault)&&u.forEach(function(a){x=Math.max(t[a].getLabelSize(),x)}),h.staggerLines&&(x*=h.staggerLines),h.labelOffset=x*(h.opposite?-1:
1)):l(t,function(a,h){a.destroy();delete t[h]});if(n&&n.text&&!1!==n.enabled&&(h.addTitle(p),p&&!1!==n.reserveSpace)){h.titleOffset=q=h.axisTitle.getBBox()[c?"height":"width"];var N=n.offset;B=k(N)?0:f(n.margin,c?5:10)}h.renderLine();h.offset=w*f(d.offset,G[g]?G[g]+(d.margin||0):0);h.tickRotCorr=h.tickRotCorr||{x:0,y:0};n=0===g?-h.labelMetrics().h:2===g?h.tickRotCorr.y:0;F=Math.abs(x)+B;x&&(F=F-n+w*(c?f(I.y,h.tickRotCorr.y+8*w):I.x));h.axisTitleMargin=f(N,F);h.getMaxLabelDimensions&&(h.maxLabelDimensions=
h.getMaxLabelDimensions(t,u));c=this.tickSize("tick");G[g]=Math.max(G[g],(h.axisTitleMargin||0)+q+w*h.offset,F,u&&u.length&&c?c[0]+w*h.offset:0);d=d.offset?0:2*Math.floor(h.axisLine.strokeWidth()/2);b[E]=Math.max(b[E],d);e(this,"afterGetOffset")};c.prototype.getLinePath=function(a){var h=this.chart,f=this.opposite,e=this.offset,b=this.horiz,l=this.left+(f?this.width:0)+e;e=h.chartHeight-this.bottom-(f?this.height:0)+e;f&&(a*=-1);return h.renderer.crispLine([["M",b?this.left:l,b?e:this.top],["L",b?
h.chartWidth-this.right:l,b?e:h.chartHeight-this.bottom]],a)};c.prototype.renderLine=function(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))};c.prototype.getTitlePosition=function(){var a=this.horiz,h=this.left,f=this.top,b=this.len,l=this.options.title,r=a?h:f,d=this.opposite,u=this.offset,t=l.x,c=l.y,k=this.axisTitle,
g=this.chart.renderer.fontMetrics(l.style.fontSize,k);k=Math.max(k.getBBox(null,0).height-g.h-1,0);b={low:r+(a?0:b),middle:r+b/2,high:r+(a?b:0)}[l.align];h=(a?f+this.height:h)+(a?1:-1)*(d?-1:1)*this.axisTitleMargin+[-k,k,g.f,-k][this.side];a={x:a?b+t:h+(d?this.width:0)+u+t,y:a?h+c-(d?this.height:0)+u:b+c};e(this,"afterGetTitlePosition",{titlePosition:a});return a};c.prototype.renderMinorTick=function(a){var h=this.chart.hasRendered&&this.old,f=this.minorTicks;f[a]||(f[a]=new K(this,a,"minor"));h&&
f[a].isNew&&f[a].render(null,!0);f[a].render(null,!1,1)};c.prototype.renderTick=function(a,h){var f=this.ticks,e=this.chart.hasRendered&&this.old;if(!this.isLinked||a>=this.min&&a<=this.max||this.grid&&this.grid.isColumn)f[a]||(f[a]=new K(this,a)),e&&f[a].isNew&&f[a].render(h,!0,-1),f[a].render(h)};c.prototype.render=function(){var a=this,h=a.chart,f=a.logarithmic,b=a.options,u=a.isLinked,t=a.tickPositions,k=a.axisTitle,c=a.ticks,g=a.minorTicks,E=a.alternateBands,F=b.stackLabels,n=b.alternateGridColor,
I=a.tickmarkOffset,G=a.axisLine,w=a.showAxis,m=d(h.renderer.globalAnimation),p,q;a.labelEdge.length=0;a.overlap=!1;[c,g,E].forEach(function(a){l(a,function(a){a.isActive=!1})});if(a.hasData()||u)a.minorTickInterval&&!a.categories&&a.getMinorTickPositions().forEach(function(h){a.renderMinorTick(h)}),t.length&&(t.forEach(function(h,f){a.renderTick(h,f)}),I&&(0===a.min||a.single)&&(c[-1]||(c[-1]=new K(a,-1,null,!0)),c[-1].render(-1))),n&&t.forEach(function(e,b){q="undefined"!==typeof t[b+1]?t[b+1]+I:
a.max-I;0===b%2&&e<a.max&&q<=a.max+(h.polar?-I:I)&&(E[e]||(E[e]=new z.PlotLineOrBand(a)),p=e+I,E[e].options={from:f?f.lin2log(p):p,to:f?f.lin2log(q):q,color:n,className:"highcharts-alternate-grid"},E[e].render(),E[e].isActive=!0)}),a._addedPlotLB||(a._addedPlotLB=!0,(b.plotLines||[]).concat(b.plotBands||[]).forEach(function(h){a.addPlotBandOrLine(h)}));[c,g,E].forEach(function(a){var f=[],e=m.duration;l(a,function(a,h){a.isActive||(a.render(h,!1,0),a.isActive=!1,f.push(h))});O(function(){for(var h=
f.length;h--;)a[f[h]]&&!a[f[h]].isActive&&(a[f[h]].destroy(),delete a[f[h]])},a!==E&&h.hasRendered&&e?e:0)});G&&(G[G.isPlaced?"animate":"attr"]({d:this.getLinePath(G.strokeWidth())}),G.isPlaced=!0,G[w?"show":"hide"](w));k&&w&&(b=a.getTitlePosition(),r(b.y)?(k[k.isNew?"attr":"animate"](b),k.isNew=!1):(k.attr("y",-9999),k.isNew=!0));F&&F.enabled&&a.stacking&&a.stacking.renderStackTotals();a.old={len:a.len,max:a.max,min:a.min,transA:a.transA,userMax:a.userMax,userMin:a.userMin};a.isDirty=!1;e(this,"afterRender")};
c.prototype.redraw=function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(a){a.render()}));this.series.forEach(function(a){a.isDirty=!0})};c.prototype.getKeepProps=function(){return this.keepProps||c.keepProps};c.prototype.destroy=function(a){var f=this,b=f.plotLinesAndBands,r=this.eventOptions;e(this,"destroy",{keepEvents:a});a||h(f);[f.ticks,f.minorTicks,f.alternateBands].forEach(function(a){M(a)});if(b)for(a=b.length;a--;)b[a].destroy();"axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(a){f[a]&&
(f[a]=f[a].destroy())});for(var d in f.plotLinesAndBandsGroups)f.plotLinesAndBandsGroups[d]=f.plotLinesAndBandsGroups[d].destroy();l(f,function(a,h){-1===f.getKeepProps().indexOf(h)&&delete f[h]});this.eventOptions=r};c.prototype.drawCrosshair=function(a,h){var b=this.crosshair,l=f(b&&b.snap,!0),r=this.chart,d,u=this.cross;e(this,"drawCrosshair",{e:a,point:h});a||(a=this.cross&&this.cross.e);if(b&&!1!==(k(h)||!l)){l?k(h)&&(d=f("colorAxis"!==this.coll?h.crosshairPos:null,this.isXAxis?h.plotX:this.len-
h.plotY)):d=a&&(this.horiz?a.chartX-this.pos:this.len-a.chartY+this.pos);if(k(d)){var t={value:h&&(this.isXAxis?h.x:f(h.stackY,h.y)),translatedValue:d};r.polar&&w(t,{isCrosshair:!0,chartX:a&&a.chartX,chartY:a&&a.chartY,point:h});t=this.getPlotLinePath(t)||null}if(!k(t)){this.hideCrosshair();return}l=this.categories&&!this.isRadial;u||(this.cross=u=r.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(l?"category ":"thin ")+(b.className||"")).attr({zIndex:f(b.zIndex,2)}).add(),r.styledMode||
(u.attr({stroke:b.color||(l?A.parse(D.highlightColor20).setOpacity(.25).get():D.neutralColor20),"stroke-width":f(b.width,1)}).css({"pointer-events":"none"}),b.dashStyle&&u.attr({dashstyle:b.dashStyle})));u.show().attr({d:t});l&&!b.width&&u.attr({"stroke-width":this.transA});this.cross.e=a}else this.hideCrosshair();e(this,"afterDrawCrosshair",{e:a,point:h})};c.prototype.hideCrosshair=function(){this.cross&&this.cross.hide();e(this,"afterHideCrosshair")};c.prototype.hasVerticalPanning=function(){var a=
this.chart.options.chart.panning;return!!(a&&a.enabled&&/y/.test(a.type))};c.prototype.validatePositiveValue=function(a){return r(a)&&0<a};c.prototype.update=function(a,h){var e=this.chart;a=F(this.userOptions,a);this.destroy(!0);this.init(e,a);e.isDirtyBox=!0;f(h,!0)&&e.redraw()};c.prototype.remove=function(a){for(var h=this.chart,e=this.coll,b=this.series,l=b.length;l--;)b[l]&&b[l].remove(!1);N(h.axes,this);N(h[e],this);h[e].forEach(function(a,h){a.options.index=a.userOptions.index=h});this.destroy();
h.isDirtyBox=!0;f(a,!0)&&h.redraw()};c.prototype.setTitle=function(a,h){this.update({title:a},h)};c.prototype.setCategories=function(a,h){this.update({categories:a},h)};c.defaultOptions=v.defaultXAxisOptions;c.keepProps="extKey hcEvents names series userMax userMin".split(" ");return c}();"";return c});P(c,"Core/Axis/DateTimeAxis.js",[c["Core/Axis/Axis.js"],c["Core/Utilities.js"]],function(c,v){var q=v.addEvent,C=v.getMagnitude,z=v.normalizeTickInterval,D=v.timeUnits,H=function(){function c(c){this.axis=
c}c.prototype.normalizeTimeTickInterval=function(c,d){var m=d||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]];d=m[m.length-1];var b=D[d[0]],g=d[1],p;for(p=0;p<m.length&&!(d=m[p],b=D[d[0]],g=d[1],m[p+1]&&c<=(b*g[g.length-1]+D[m[p+1][0]])/2);p++);b===D.year&&c<5*b&&(g=[1,2,5]);c=z(c/b,g,"year"===d[0]?Math.max(C(c/b),1):1);return{unitRange:b,count:c,unitName:d[0]}};
return c}();v=function(){function c(){}c.compose=function(c){c.keepProps.push("dateTime");c.prototype.getTimeTicks=function(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)};q(c,"init",function(d){"datetime"!==d.userOptions.type?this.dateTime=void 0:this.dateTime||(this.dateTime=new H(this))})};c.AdditionsClass=H;return c}();v.compose(c);return v});P(c,"Core/Axis/LogarithmicAxis.js",[c["Core/Axis/Axis.js"],c["Core/Utilities.js"]],function(c,v){var q=v.addEvent,C=v.getMagnitude,
z=v.normalizeTickInterval,D=v.pick,H=function(){function c(c){this.axis=c}c.prototype.getLogTickPositions=function(c,d,m,b){var g=this.axis,p=g.len,q=g.options,n=[];b||(this.minorAutoInterval=void 0);if(.5<=c)c=Math.round(c),n=g.getLinearTickPositions(c,d,m);else if(.08<=c){var B=Math.floor(d),k,M=q=void 0;for(p=.3<c?[1,2,4]:.15<c?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];B<m+1&&!M;B++){var N=p.length;for(k=0;k<N&&!M;k++){var J=this.log2lin(this.lin2log(B)*p[k]);J>d&&(!b||q<=m)&&"undefined"!==typeof q&&n.push(q);
q>m&&(M=!0);q=J}}}else d=this.lin2log(d),m=this.lin2log(m),c=b?g.getMinorTickInterval():q.tickInterval,c=D("auto"===c?null:c,this.minorAutoInterval,q.tickPixelInterval/(b?5:1)*(m-d)/((b?p/g.tickPositions.length:p)||1)),c=z(c,void 0,C(c)),n=g.getLinearTickPositions(c,d,m).map(this.log2lin),b||(this.minorAutoInterval=c/5);b||(g.tickInterval=c);return n};c.prototype.lin2log=function(c){return Math.pow(10,c)};c.prototype.log2lin=function(c){return Math.log(c)/Math.LN10};return c}();v=function(){function c(){}
c.compose=function(c){c.keepProps.push("logarithmic");q(c,"init",function(d){var c=this.logarithmic;"logarithmic"!==d.userOptions.type?this.logarithmic=void 0:c||(this.logarithmic=new H(this))});q(c,"afterInit",function(){var d=this.logarithmic;d&&(this.lin2val=function(c){return d.lin2log(c)},this.val2lin=function(c){return d.log2lin(c)})})};return c}();v.compose(c);return v});P(c,"Core/Axis/PlotLineOrBand.js",[c["Core/Axis/Axis.js"],c["Core/Color/Palette.js"],c["Core/Utilities.js"]],function(c,
v,A){var q=A.arrayMax,z=A.arrayMin,D=A.defined,H=A.destroyObjectProperties,K=A.erase,p=A.extend,d=A.fireEvent,m=A.isNumber,b=A.merge,g=A.objectEach,L=A.pick,x=function(){function c(b,d){this.axis=b;d&&(this.options=d,this.id=d.id)}c.prototype.render=function(){d(this,"render");var c=this,k=c.axis,n=k.horiz,m=k.logarithmic,p=c.options,w=p.label,e=c.label,t=p.to,a=p.from,r=p.value,E=D(a)&&D(t),F=D(r),G=c.svgElem,l=!G,f=[],I=p.color,h=L(p.zIndex,0),u=p.events;f={"class":"highcharts-plot-"+(E?"band ":
"line ")+(p.className||"")};var O={},q=k.chart.renderer,y=E?"bands":"lines";m&&(a=m.log2lin(a),t=m.log2lin(t),r=m.log2lin(r));k.chart.styledMode||(F?(f.stroke=I||v.neutralColor40,f["stroke-width"]=L(p.width,1),p.dashStyle&&(f.dashstyle=p.dashStyle)):E&&(f.fill=I||v.highlightColor10,p.borderWidth&&(f.stroke=p.borderColor,f["stroke-width"]=p.borderWidth)));O.zIndex=h;y+="-"+h;(m=k.plotLinesAndBandsGroups[y])||(k.plotLinesAndBandsGroups[y]=m=q.g("plot-"+y).attr(O).add());l&&(c.svgElem=G=q.path().attr(f).add(m));
if(F)f=k.getPlotLinePath({value:r,lineWidth:G.strokeWidth(),acrossPanes:p.acrossPanes});else if(E)f=k.getPlotBandPath(a,t,p);else return;!c.eventsAdded&&u&&(g(u,function(a,h){G.on(h,function(a){u[h].apply(c,[a])})}),c.eventsAdded=!0);(l||!G.d)&&f&&f.length?G.attr({d:f}):G&&(f?(G.show(!0),G.animate({d:f})):G.d&&(G.hide(),e&&(c.label=e=e.destroy())));w&&(D(w.text)||D(w.formatter))&&f&&f.length&&0<k.width&&0<k.height&&!f.isFlat?(w=b({align:n&&E&&"center",x:n?!E&&4:10,verticalAlign:!n&&E&&"middle",y:n?
E?16:10:E?6:-4,rotation:n&&!E&&90},w),this.renderLabel(w,f,E,h)):e&&e.hide();return c};c.prototype.renderLabel=function(b,d,c,g){var k=this.label,n=this.axis.chart.renderer;k||(k={align:b.textAlign||b.align,rotation:b.rotation,"class":"highcharts-plot-"+(c?"band":"line")+"-label "+(b.className||"")},k.zIndex=g,g=this.getLabelText(b),this.label=k=n.text(g,0,0,b.useHTML).attr(k).add(),this.axis.chart.styledMode||k.css(b.style));n=d.xBounds||[d[0][1],d[1][1],c?d[2][1]:d[0][1]];d=d.yBounds||[d[0][2],
d[1][2],c?d[2][2]:d[0][2]];c=z(n);g=z(d);k.align(b,!1,{x:c,y:g,width:q(n)-c,height:q(d)-g});k.show(!0)};c.prototype.getLabelText=function(b){return D(b.formatter)?b.formatter.call(this):b.text};c.prototype.destroy=function(){K(this.axis.plotLinesAndBands,this);delete this.axis;H(this)};return c}();p(c.prototype,{getPlotBandPath:function(b,d,c){void 0===c&&(c=this.options);var k=this.getPlotLinePath({value:d,force:!0,acrossPanes:c.acrossPanes});c=this.getPlotLinePath({value:b,force:!0,acrossPanes:c.acrossPanes});
var g=[],n=this.horiz,w=1;b=!m(this.min)||!m(this.max)||b<this.min&&d<this.min||b>this.max&&d>this.max;if(c&&k){if(b){var e=c.toString()===k.toString();w=0}for(b=0;b<c.length;b+=2){d=c[b];var t=c[b+1],a=k[b],r=k[b+1];"M"!==d[0]&&"L"!==d[0]||"M"!==t[0]&&"L"!==t[0]||"M"!==a[0]&&"L"!==a[0]||"M"!==r[0]&&"L"!==r[0]||(n&&a[1]===d[1]?(a[1]+=w,r[1]+=w):n||a[2]!==d[2]||(a[2]+=w,r[2]+=w),g.push(["M",d[1],d[2]],["L",t[1],t[2]],["L",r[1],r[2]],["L",a[1],a[2]],["Z"]));g.isFlat=e}}return g},addPlotBand:function(b){return this.addPlotBandOrLine(b,
"plotBands")},addPlotLine:function(b){return this.addPlotBandOrLine(b,"plotLines")},addPlotBandOrLine:function(b,d){var c=this,g=new x(this,b),n=this.userOptions;this.visible&&(g=g.render());if(g){this._addedPlotLB||(this._addedPlotLB=!0,(n.plotLines||[]).concat(n.plotBands||[]).forEach(function(b){c.addPlotBandOrLine(b)}));if(d){var m=n[d]||[];m.push(b);n[d]=m}this.plotLinesAndBands.push(g)}return g},removePlotBandOrLine:function(b){var d=this.plotLinesAndBands,c=this.options,g=this.userOptions;
if(d){for(var n=d.length;n--;)d[n].id===b&&d[n].destroy();[c.plotLines||[],g.plotLines||[],c.plotBands||[],g.plotBands||[]].forEach(function(d){for(n=d.length;n--;)(d[n]||{}).id===b&&K(d,d[n])})}},removePlotBand:function(b){this.removePlotBandOrLine(b)},removePlotLine:function(b){this.removePlotBandOrLine(b)}});return x});P(c,"Core/Tooltip.js",[c["Core/FormatUtilities.js"],c["Core/Globals.js"],c["Core/Color/Palette.js"],c["Core/Renderer/RendererRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,
C,z){var q=c.format,H=v.doc,K=z.clamp,p=z.css,d=z.defined,m=z.discardElement,b=z.extend,g=z.fireEvent,L=z.isArray,x=z.isNumber,n=z.isString,B=z.merge,k=z.pick,M=z.splat,N=z.syncTimeout,J=z.timeUnits;"";c=function(){function c(e,b){this.container=void 0;this.crosshairs=[];this.distance=0;this.isHidden=!0;this.isSticky=!1;this.now={};this.options={};this.outside=!1;this.chart=e;this.init(e,b)}c.prototype.applyFilter=function(){var e=this.chart;e.renderer.definition({tagName:"filter",attributes:{id:"drop-shadow-"+
e.index,opacity:.5},children:[{tagName:"feGaussianBlur",attributes:{"in":"SourceAlpha",stdDeviation:1}},{tagName:"feOffset",attributes:{dx:1,dy:1}},{tagName:"feComponentTransfer",children:[{tagName:"feFuncA",attributes:{type:"linear",slope:.3}}]},{tagName:"feMerge",children:[{tagName:"feMergeNode"},{tagName:"feMergeNode",attributes:{"in":"SourceGraphic"}}]}]});e.renderer.definition({tagName:"style",textContent:".highcharts-tooltip-"+e.index+"{filter:url(#drop-shadow-"+e.index+")}"})};c.prototype.bodyFormatter=
function(e){return e.map(function(e){var a=e.series.tooltipOptions;return(a[(e.point.formatPrefix||"point")+"Formatter"]||e.point.tooltipFormatter).call(e.point,a[(e.point.formatPrefix||"point")+"Format"]||"")})};c.prototype.cleanSplit=function(e){this.chart.series.forEach(function(b){var a=b&&b.tt;a&&(!a.isActive||e?b.tt=a.destroy():a.isActive=!1)})};c.prototype.defaultFormatter=function(e){var b=this.points||M(this);var a=[e.tooltipFooterHeaderFormatter(b[0])];a=a.concat(e.bodyFormatter(b));a.push(e.tooltipFooterHeaderFormatter(b[0],
!0));return a};c.prototype.destroy=function(){this.label&&(this.label=this.label.destroy());this.split&&this.tt&&(this.cleanSplit(this.chart,!0),this.tt=this.tt.destroy());this.renderer&&(this.renderer=this.renderer.destroy(),m(this.container));z.clearTimeout(this.hideTimer);z.clearTimeout(this.tooltipTimeout)};c.prototype.getAnchor=function(e,b){var a=this.chart;var r=a.pointer;var d=a.inverted,c=a.plotTop,t=a.plotLeft,l=0,f=0,k,h;e=M(e);this.followPointer&&b?("undefined"===typeof b.chartX&&(b=r.normalize(b)),
r=[b.chartX-t,b.chartY-c]):e[0].tooltipPos?r=e[0].tooltipPos:(e.forEach(function(e){k=e.series.yAxis;h=e.series.xAxis;l+=e.plotX||0;f+=e.plotLow?(e.plotLow+(e.plotHigh||0))/2:e.plotY||0;h&&k&&(d?(l+=c+a.plotHeight-h.len-h.pos,f+=t+a.plotWidth-k.len-k.pos):(l+=h.pos-t,f+=k.pos-c))}),l/=e.length,f/=e.length,r=[d?a.plotWidth-f:l,d?a.plotHeight-l:f],this.shared&&1<e.length&&b&&(d?r[0]=b.chartX-t:r[1]=b.chartY-c));return r.map(Math.round)};c.prototype.getDateFormat=function(e,b,a,r){var d=this.chart.time,
c=d.dateFormat("%m-%d %H:%M:%S.%L",b),t={millisecond:15,second:12,minute:9,hour:6,day:3},l="millisecond";for(f in J){if(e===J.week&&+d.dateFormat("%w",b)===a&&"00:00:00.000"===c.substr(6)){var f="week";break}if(J[f]>e){f=l;break}if(t[f]&&c.substr(t[f])!=="01-01 00:00:00.000".substr(t[f]))break;"week"!==f&&(l=f)}if(f)var k=d.resolveDTLFormat(r[f]).main;return k};c.prototype.getLabel=function(){var e=this,b=this.chart.renderer,a=this.chart.styledMode,r=this.options,c="tooltip"+(d(r.className)?" "+r.className:
""),k=r.style&&r.style.pointerEvents||(!this.followPointer&&r.stickOnContact?"auto":"none"),g,l=function(){e.inContact=!0},f=function(){var a=e.chart.hoverSeries;e.inContact=!1;if(a&&a.onMouseOut)a.onMouseOut()};if(!this.label){if(this.outside){var n=this.chart.options.chart.style,h=C.getRendererType();this.container=g=v.doc.createElement("div");g.className="highcharts-tooltip-container";p(g,{position:"absolute",top:"1px",pointerEvents:k,zIndex:Math.max(this.options.style&&this.options.style.zIndex||
0,(n&&n.zIndex||0)+3)});v.doc.body.appendChild(g);this.renderer=b=new h(g,0,0,n,void 0,void 0,b.styledMode)}this.split?this.label=b.g(c):(this.label=b.label("",0,0,r.shape||"callout",null,null,r.useHTML,null,c).attr({padding:r.padding,r:r.borderRadius}),a||this.label.attr({fill:r.backgroundColor,"stroke-width":r.borderWidth}).css(r.style).css({pointerEvents:k}).shadow(r.shadow));a&&(this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index));if(e.outside&&!e.split){var u=this.label,
w=u.xSetter,m=u.ySetter;u.xSetter=function(a){w.call(u,e.distance);g.style.left=a+"px"};u.ySetter=function(a){m.call(u,e.distance);g.style.top=a+"px"}}this.label.on("mouseenter",l).on("mouseleave",f).attr({zIndex:8}).add()}return this.label};c.prototype.getPosition=function(e,b,a){var d=this.chart,c=this.distance,t={},g=d.inverted&&a.h||0,l,f=this.outside,n=f?H.documentElement.clientWidth-2*c:d.chartWidth,h=f?Math.max(H.body.scrollHeight,H.documentElement.scrollHeight,H.body.offsetHeight,H.documentElement.offsetHeight,
H.documentElement.clientHeight):d.chartHeight,u=d.pointer.getChartPosition(),w=function(l){var r="x"===l;return[l,r?n:h,r?e:b].concat(f?[r?e*u.scaleX:b*u.scaleY,r?u.left-c+(a.plotX+d.plotLeft)*u.scaleX:u.top-c+(a.plotY+d.plotTop)*u.scaleY,0,r?n:h]:[r?e:b,r?a.plotX+d.plotLeft:a.plotY+d.plotTop,r?d.plotLeft:d.plotTop,r?d.plotLeft+d.plotWidth:d.plotTop+d.plotHeight])},m=w("y"),p=w("x"),q=!this.followPointer&&k(a.ttBelow,!d.inverted===!!a.negative),x=function(a,h,e,b,l,d,r){var k=f?"y"===a?c*u.scaleY:
c*u.scaleX:c,E=(e-b)/2,n=b<l-c,F=l+c+b<h,I=l-k-e+E;l=l+k-E;if(q&&F)t[a]=l;else if(!q&&n)t[a]=I;else if(n)t[a]=Math.min(r-b,0>I-g?I:I-g);else if(F)t[a]=Math.max(d,l+g+e>h?l:l+g);else return!1},B=function(a,h,f,e,b){var l;b<c||b>h-c?l=!1:t[a]=b<f/2?1:b>h-e/2?h-e-2:b-f/2;return l},J=function(a){var h=m;m=p;p=h;l=a},R=function(){!1!==x.apply(0,m)?!1!==B.apply(0,p)||l||(J(!0),R()):l?t.x=t.y=0:(J(!0),R())};(d.inverted||1<this.len)&&J();R();return t};c.prototype.getXDateFormat=function(e,b,a){b=b.dateTimeLabelFormats;
var d=a&&a.closestPointRange;return(d?this.getDateFormat(d,e.x,a.options.startOfWeek,b):b.day)||b.year};c.prototype.hide=function(e){var b=this;z.clearTimeout(this.hideTimer);e=k(e,this.options.hideDelay,500);this.isHidden||(this.hideTimer=N(function(){b.getLabel().fadeOut(e?void 0:e);b.isHidden=!0},e))};c.prototype.init=function(e,b){this.chart=e;this.options=b;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.split=b.split&&!e.inverted&&!e.polar;this.shared=b.shared||this.split;this.outside=
k(b.outside,!(!e.scrollablePixelsX&&!e.scrollablePixelsY))};c.prototype.isStickyOnContact=function(){return!(this.followPointer||!this.options.stickOnContact||!this.inContact)};c.prototype.move=function(e,d,a,r){var c=this,t=c.now,k=!1!==c.options.animation&&!c.isHidden&&(1<Math.abs(e-t.x)||1<Math.abs(d-t.y)),l=c.followPointer||1<c.len;b(t,{x:k?(2*t.x+e)/3:e,y:k?(t.y+d)/2:d,anchorX:l?void 0:k?(2*t.anchorX+a)/3:a,anchorY:l?void 0:k?(t.anchorY+r)/2:r});c.getLabel().attr(t);c.drawTracker();k&&(z.clearTimeout(this.tooltipTimeout),
this.tooltipTimeout=setTimeout(function(){c&&c.move(e,d,a,r)},32))};c.prototype.refresh=function(e,b){var a=this.chart,d=this.options,c=M(e),t=c[0],n={},l=[],f=d.formatter||this.defaultFormatter;n=this.shared;var I=a.styledMode;if(d.enabled){z.clearTimeout(this.hideTimer);this.followPointer=!this.split&&t.series.tooltipOptions.followPointer;var h=this.getAnchor(e,b);var u=h[0];var w=h[1];!n||!L(e)&&e.series&&e.series.noSharedTooltip?n=t.getLabelConfig():(a.pointer.applyInactiveState(c),c.forEach(function(a){a.setState("hover");
l.push(a.getLabelConfig())}),n={x:t.category,y:t.y},n.points=l);this.len=l.length;e=f.call(n,this);f=t.series;this.distance=k(f.tooltipOptions.distance,16);if(!1===e)this.hide();else{if(this.split)this.renderSplit(e,c);else if(c=u,n=w,b&&a.pointer.isDirectTouch&&(c=b.chartX-a.plotLeft,n=b.chartY-a.plotTop),a.polar||!1===f.options.clip||f.shouldShowTooltip(c,n))b=this.getLabel(),d.style.width&&!I||b.css({width:this.chart.spacingBox.width+"px"}),b.attr({text:e&&e.join?e.join(""):e}),b.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+
k(t.colorIndex,f.colorIndex)),I||b.attr({stroke:d.borderColor||t.color||f.color||A.neutralColor60}),this.updatePosition({plotX:u,plotY:w,negative:t.negative,ttBelow:t.ttBelow,h:h[2]||0});else{this.hide();return}this.isHidden&&this.label&&this.label.attr({opacity:1}).show();this.isHidden=!1}g(this,"refresh")}};c.prototype.renderSplit=function(e,d){function a(a,h,f,e,b){void 0===b&&(b=!0);f?(h=M?0:ba,a=K(a-e/2,L.left,L.right-e-(c.outside?z:0))):(h-=D,a=b?a-e-B:a+B,a=K(a,b?a:L.left,L.right));return{x:a,
y:h}}var c=this,t=c.chart,g=c.chart,w=g.chartWidth,l=g.chartHeight,f=g.plotHeight,I=g.plotLeft,h=g.plotTop,u=g.pointer,m=g.scrollablePixelsY;m=void 0===m?0:m;var p=g.scrollablePixelsX,y=g.scrollingContainer;y=void 0===y?{scrollLeft:0,scrollTop:0}:y;var q=y.scrollLeft;y=y.scrollTop;var x=g.styledMode,B=c.distance,J=c.options,R=c.options.positioner,L=c.outside&&"number"!==typeof p?H.documentElement.getBoundingClientRect():{left:q,right:q+w,top:y,bottom:y+l},aa=c.getLabel(),N=this.renderer||t.renderer,
M=!(!t.xAxis[0]||!t.xAxis[0].opposite);t=u.getChartPosition();var z=t.left;t=t.top;var D=h+y,C=0,ba=f-m;n(e)&&(e=[!1,e]);e=e.slice(0,d.length+1).reduce(function(e,b,l){if(!1!==b&&""!==b){l=d[l-1]||{isHeader:!0,plotX:d[0].plotX,plotY:f,series:{}};var r=l.isHeader,u=r?c:l.series;b=b.toString();var t=u.tt,g=l.isHeader;var n=l.series;var E="highcharts-color-"+k(l.colorIndex,n.colorIndex,"none");t||(t={padding:J.padding,r:J.borderRadius},x||(t.fill=J.backgroundColor,t["stroke-width"]=J.borderWidth),t=
N.label("",0,0,J[g?"headerShape":"shape"]||"callout",void 0,void 0,J.useHTML).addClass((g?"highcharts-tooltip-header ":"")+"highcharts-tooltip-box "+E).attr(t).add(aa));t.isActive=!0;t.attr({text:b});x||t.css(J.style).shadow(J.shadow).attr({stroke:J.borderColor||l.color||n.color||A.neutralColor80});u=u.tt=t;g=u.getBBox();b=g.width+u.strokeWidth();r&&(C=g.height,ba+=C,M&&(D-=C));n=l.plotX;n=void 0===n?0:n;E=l.plotY;E=void 0===E?0:E;t=l.series;if(l.isHeader){n=I+n;var F=h+f/2}else{var w=t.xAxis,G=t.yAxis;
n=w.pos+K(n,-B,w.len+B);t.shouldShowTooltip(0,G.pos-h+E,{ignoreX:!0})&&(F=G.pos+E)}n=K(n,L.left-B,L.right+B);"number"===typeof F?(g=g.height+1,E=R?R.call(c,b,g,l):a(n,F,r,b),e.push({align:R?0:void 0,anchorX:n,anchorY:F,boxWidth:b,point:l,rank:k(E.rank,r?1:0),size:g,target:E.y,tt:u,x:E.x})):u.isActive=!1}return e},[]);!R&&e.some(function(a){var h=(c.outside?z:0)+a.anchorX;return h<L.left&&h+a.boxWidth<L.right?!0:h<z-L.left+a.boxWidth&&L.right-h>h})&&(e=e.map(function(h){var f=a(h.anchorX,h.anchorY,
h.point.isHeader,h.boxWidth,!1);return b(h,{target:f.y,x:f.x})}));c.cleanSplit();v.distribute(e,ba);var W=z,ca=z;e.forEach(function(a){var h=a.x,f=a.boxWidth;a=a.isHeader;a||(c.outside&&z+h<W&&(W=z+h),!a&&c.outside&&W+f>ca&&(ca=z+h))});e.forEach(function(a){var h=a.x,f=a.anchorX,b=a.pos,e=a.point.isHeader;b={visibility:"undefined"===typeof b?"hidden":"inherit",x:h,y:b+D,anchorX:f,anchorY:a.anchorY};if(c.outside&&h<f){var l=z-W;0<l&&(e||(b.x=h+l,b.anchorX=f+l),e&&(b.x=(ca-W)/2,b.anchorX=f+l))}a.tt.attr(b)});
e=c.container;m=c.renderer;c.outside&&e&&m&&(g=aa.getBBox(),m.setSize(g.width+g.x,g.height+g.y,!1),e.style.left=W+"px",e.style.top=t+"px")};c.prototype.drawTracker=function(){if(this.followPointer||!this.options.stickOnContact)this.tracker&&this.tracker.destroy();else{var b=this.chart,d=this.label,a=b.hoverPoint;if(d&&a){var c={x:0,y:0,width:0,height:0};a=this.getAnchor(a);var g=d.getBBox();a[0]+=b.plotLeft-d.translateX;a[1]+=b.plotTop-d.translateY;c.x=Math.min(0,a[0]);c.y=Math.min(0,a[1]);c.width=
0>a[0]?Math.max(Math.abs(a[0]),g.width-a[0]):Math.max(Math.abs(a[0]),g.width);c.height=0>a[1]?Math.max(Math.abs(a[1]),g.height-Math.abs(a[1])):Math.max(Math.abs(a[1]),g.height);this.tracker?this.tracker.attr(c):(this.tracker=d.renderer.rect(c).addClass("highcharts-tracker").add(d),b.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}}};c.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}"')};c.prototype.tooltipFooterHeaderFormatter=function(b,d){var a=d?"footer":"header",e=b.series,c=e.tooltipOptions,t=c.xDateFormat,k=e.xAxis,l=k&&"datetime"===k.options.type&&x(b.key),f=c[a+"Format"];d={isFooter:d,labelConfig:b};g(this,"headerFormatter",d,function(a){l&&!t&&(t=this.getXDateFormat(b,c,k));l&&t&&(b.point&&b.point.tooltipDateKeys||["key"]).forEach(function(a){f=f.replace("{point."+a+"}","{point."+a+":"+t+"}")});e.chart.styledMode&&(f=this.styledModeFormat(f));
a.text=q(f,{point:b,series:e},this.chart)});return d.text};c.prototype.update=function(b){this.destroy();B(!0,this.chart.options.tooltip.userOptions,b);this.init(this.chart,B(!0,this.options,b))};c.prototype.updatePosition=function(b){var e=this.chart,a=e.pointer,d=this.getLabel(),c=b.plotX+e.plotLeft;e=b.plotY+e.plotTop;a=a.getChartPosition();b=(this.options.positioner||this.getPosition).call(this,d.width,d.height,b);if(this.outside){var g=(this.options.borderWidth||0)+2*this.distance;this.renderer.setSize(d.width+
g,d.height+g,!1);if(1!==a.scaleX||1!==a.scaleY)p(this.container,{transform:"scale("+a.scaleX+", "+a.scaleY+")"}),c*=a.scaleX,e*=a.scaleY;c+=a.left-b.x;e+=a.top-b.y}this.move(Math.round(b.x),Math.round(b.y||0),c,e)};return c}();v.Tooltip=c;return v.Tooltip});P(c,"Core/Pointer.js",[c["Core/Color/Color.js"],c["Core/Globals.js"],c["Core/Color/Palette.js"],c["Core/Tooltip.js"],c["Core/Utilities.js"]],function(c,v,A,C,z){var q=c.parse,H=v.charts,K=v.noop,p=z.addEvent,d=z.attr,m=z.css,b=z.defined,g=z.extend,
L=z.find,x=z.fireEvent,n=z.isNumber,B=z.isObject,k=z.objectEach,M=z.offset,N=z.pick,J=z.splat;c=function(){function c(b,c){this.lastValidTouch={};this.pinchDown=[];this.runChartClick=!1;this.eventsToUnbind=[];this.chart=b;this.hasDragged=!1;this.options=c;this.init(b,c)}c.prototype.applyInactiveState=function(b){var e=[],a;(b||[]).forEach(function(b){a=b.series;e.push(a);a.linkedParent&&e.push(a.linkedParent);a.linkedSeries&&(e=e.concat(a.linkedSeries));a.navigatorSeries&&e.push(a.navigatorSeries)});
this.chart.series.forEach(function(a){-1===e.indexOf(a)?a.setState("inactive",!0):a.options.inactiveOtherPoints&&a.setAllPointsToState("inactive")})};c.prototype.destroy=function(){var b=this;this.eventsToUnbind.forEach(function(b){return b()});this.eventsToUnbind=[];v.chartCount||(c.unbindDocumentMouseUp&&(c.unbindDocumentMouseUp=c.unbindDocumentMouseUp()),c.unbindDocumentTouchEnd&&(c.unbindDocumentTouchEnd=c.unbindDocumentTouchEnd()));clearInterval(b.tooltipTimeout);k(b,function(e,a){b[a]=void 0})};
c.prototype.drag=function(b){var e=this.chart,a=e.options.chart,c=this.zoomHor,d=this.zoomVert,g=e.plotLeft,k=e.plotTop,l=e.plotWidth,f=e.plotHeight,n=this.mouseDownX||0,h=this.mouseDownY||0,u=B(a.panning)?a.panning&&a.panning.enabled:a.panning,m=a.panKey&&b[a.panKey+"Key"],w=b.chartX,p=b.chartY,x=this.selectionMarker;if(!x||!x.touch)if(w<g?w=g:w>g+l&&(w=g+l),p<k?p=k:p>k+f&&(p=k+f),this.hasDragged=Math.sqrt(Math.pow(n-w,2)+Math.pow(h-p,2)),10<this.hasDragged){var J=e.isInsidePlot(n-g,h-k,{visiblePlotOnly:!0});
e.hasCartesianSeries&&(this.zoomX||this.zoomY)&&J&&!m&&!x&&(this.selectionMarker=x=e.renderer.rect(g,k,c?1:l,d?1:f,0).attr({"class":"highcharts-selection-marker",zIndex:7}).add(),e.styledMode||x.attr({fill:a.selectionMarkerFill||q(A.highlightColor80).setOpacity(.25).get()}));x&&c&&(c=w-n,x.attr({width:Math.abs(c),x:(0<c?0:c)+n}));x&&d&&(c=p-h,x.attr({height:Math.abs(c),y:(0<c?0:c)+h}));J&&!x&&u&&e.pan(b,a.panning)}};c.prototype.dragStart=function(b){var e=this.chart;e.mouseIsDown=b.type;e.cancelClick=
!1;e.mouseDownX=this.mouseDownX=b.chartX;e.mouseDownY=this.mouseDownY=b.chartY};c.prototype.drop=function(e){var c=this,a=this.chart,d=this.hasPinched;if(this.selectionMarker){var k={originalEvent:e,xAxis:[],yAxis:[]},F=this.selectionMarker,G=F.attr?F.attr("x"):F.x,l=F.attr?F.attr("y"):F.y,f=F.attr?F.attr("width"):F.width,I=F.attr?F.attr("height"):F.height,h;if(this.hasDragged||d)a.axes.forEach(function(a){if(a.zoomEnabled&&b(a.min)&&(d||c[{xAxis:"zoomX",yAxis:"zoomY"}[a.coll]])&&n(G)&&n(l)){var r=
a.horiz,u="touchend"===e.type?a.minPixelPadding:0,g=a.toValue((r?G:l)+u);r=a.toValue((r?G+f:l+I)-u);k[a.coll].push({axis:a,min:Math.min(g,r),max:Math.max(g,r)});h=!0}}),h&&x(a,"selection",k,function(h){a.zoom(g(h,d?{animation:!1}:null))});n(a.index)&&(this.selectionMarker=this.selectionMarker.destroy());d&&this.scaleGroups()}a&&n(a.index)&&(m(a.container,{cursor:a._cursor}),a.cancelClick=10<this.hasDragged,a.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])};c.prototype.findNearestKDPoint=
function(b,c,a){var e=this.chart,d=e.hoverPoint;e=e.tooltip;if(d&&e&&e.isStickyOnContact())return d;var g;b.forEach(function(b){var e=!(b.noSharedTooltip&&c)&&0>b.options.findNearestPointBy.indexOf("y");b=b.searchPoint(a,e);if((e=B(b,!0)&&b.series)&&!(e=!B(g,!0))){e=g.distX-b.distX;var f=g.dist-b.dist,d=(b.series.group&&b.series.group.zIndex)-(g.series.group&&g.series.group.zIndex);e=0<(0!==e&&c?e:0!==f?f:0!==d?d:g.series.index>b.series.index?-1:1)}e&&(g=b)});return g};c.prototype.getChartCoordinatesFromPoint=
function(b,c){var a=b.series,e=a.xAxis;a=a.yAxis;var d=b.shapeArgs;if(e&&a){var g=N(b.clientX,b.plotX),k=b.plotY||0;b.isNode&&d&&n(d.x)&&n(d.y)&&(g=d.x,k=d.y);return c?{chartX:a.len+a.pos-k,chartY:e.len+e.pos-g}:{chartX:g+e.pos,chartY:k+a.pos}}if(d&&d.x&&d.y)return{chartX:d.x,chartY:d.y}};c.prototype.getChartPosition=function(){if(this.chartPosition)return this.chartPosition;var b=this.chart.container,c=M(b);this.chartPosition={left:c.left,top:c.top,scaleX:1,scaleY:1};var a=b.offsetWidth;b=b.offsetHeight;
2<a&&2<b&&(this.chartPosition.scaleX=c.width/a,this.chartPosition.scaleY=c.height/b);return this.chartPosition};c.prototype.getCoordinates=function(b){var e={xAxis:[],yAxis:[]};this.chart.axes.forEach(function(a){e[a.isXAxis?"xAxis":"yAxis"].push({axis:a,value:a.toValue(b[a.horiz?"chartX":"chartY"])})});return e};c.prototype.getHoverData=function(b,c,a,d,g,k){var e=[];d=!(!d||!b);var l={chartX:k?k.chartX:void 0,chartY:k?k.chartY:void 0,shared:g};x(this,"beforeGetHoverData",l);var f=c&&!c.stickyTracking?
[c]:a.filter(function(a){return l.filter?l.filter(a):a.visible&&!(!g&&a.directTouch)&&N(a.options.enableMouseTracking,!0)&&a.stickyTracking});var r=d||!k?b:this.findNearestKDPoint(f,g,k);c=r&&r.series;r&&(g&&!c.noSharedTooltip?(f=a.filter(function(a){return l.filter?l.filter(a):a.visible&&!(!g&&a.directTouch)&&N(a.options.enableMouseTracking,!0)&&!a.noSharedTooltip}),f.forEach(function(a){var h=L(a.points,function(a){return a.x===r.x&&!a.isNull});B(h)&&(a.chart.isBoosting&&(h=a.getPoint(h)),e.push(h))})):
e.push(r));l={hoverPoint:r};x(this,"afterGetHoverData",l);return{hoverPoint:l.hoverPoint,hoverSeries:c,hoverPoints:e}};c.prototype.getPointFromEvent=function(b){b=b.target;for(var e;b&&!e;)e=b.point,b=b.parentNode;return e};c.prototype.onTrackerMouseOut=function(b){b=b.relatedTarget||b.toElement;var e=this.chart.hoverSeries;this.isDirectTouch=!1;if(!(!e||!b||e.stickyTracking||this.inClass(b,"highcharts-tooltip")||this.inClass(b,"highcharts-series-"+e.index)&&this.inClass(b,"highcharts-tracker")))e.onMouseOut()};
c.prototype.inClass=function(b,c){for(var a;b;){if(a=d(b,"class")){if(-1!==a.indexOf(c))return!0;if(-1!==a.indexOf("highcharts-container"))return!1}b=b.parentNode}};c.prototype.init=function(b,c){this.options=c;this.chart=b;this.runChartClick=!(!c.chart.events||!c.chart.events.click);this.pinchDown=[];this.lastValidTouch={};C&&(b.tooltip=new C(b,c.tooltip),this.followTouchMove=N(c.tooltip.followTouchMove,!0));this.setDOMEvents()};c.prototype.normalize=function(b,c){var a=b.touches,e=a?a.length?a.item(0):
N(a.changedTouches,b.changedTouches)[0]:b;c||(c=this.getChartPosition());a=e.pageX-c.left;e=e.pageY-c.top;a/=c.scaleX;e/=c.scaleY;return g(b,{chartX:Math.round(a),chartY:Math.round(e)})};c.prototype.onContainerClick=function(b){var e=this.chart,a=e.hoverPoint;b=this.normalize(b);var c=e.plotLeft,d=e.plotTop;e.cancelClick||(a&&this.inClass(b.target,"highcharts-tracker")?(x(a.series,"click",g(b,{point:a})),e.hoverPoint&&a.firePointEvent("click",b)):(g(b,this.getCoordinates(b)),e.isInsidePlot(b.chartX-
c,b.chartY-d,{visiblePlotOnly:!0})&&x(e,"click",b)))};c.prototype.onContainerMouseDown=function(b){var e=1===((b.buttons||b.button)&1);b=this.normalize(b);if(v.isFirefox&&0!==b.button)this.onContainerMouseMove(b);if("undefined"===typeof b.button||e)this.zoomOption(b),e&&b.preventDefault&&b.preventDefault(),this.dragStart(b)};c.prototype.onContainerMouseLeave=function(b){var e=H[N(c.hoverChartIndex,-1)],a=this.chart.tooltip;b=this.normalize(b);e&&(b.relatedTarget||b.toElement)&&(e.pointer.reset(),
e.pointer.chartPosition=void 0);a&&!a.isHidden&&this.reset()};c.prototype.onContainerMouseEnter=function(b){delete this.chartPosition};c.prototype.onContainerMouseMove=function(b){var e=this.chart;b=this.normalize(b);this.setHoverChartIndex();b.preventDefault||(b.returnValue=!1);("mousedown"===e.mouseIsDown||this.touchSelect(b))&&this.drag(b);e.openMenu||!this.inClass(b.target,"highcharts-tracker")&&!e.isInsidePlot(b.chartX-e.plotLeft,b.chartY-e.plotTop,{visiblePlotOnly:!0})||(this.inClass(b.target,
"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(b))};c.prototype.onDocumentTouchEnd=function(b){var e=H[N(c.hoverChartIndex,-1)];e&&e.pointer.drop(b)};c.prototype.onContainerTouchMove=function(b){if(this.touchSelect(b))this.onContainerMouseMove(b);else this.touch(b)};c.prototype.onContainerTouchStart=function(b){if(this.touchSelect(b))this.onContainerMouseDown(b);else this.zoomOption(b),this.touch(b,!0)};c.prototype.onDocumentMouseMove=function(b){var e=this.chart,a=this.chartPosition;
b=this.normalize(b,a);var c=e.tooltip;!a||c&&c.isStickyOnContact()||e.isInsidePlot(b.chartX-e.plotLeft,b.chartY-e.plotTop,{visiblePlotOnly:!0})||this.inClass(b.target,"highcharts-tracker")||this.reset()};c.prototype.onDocumentMouseUp=function(b){var e=H[N(c.hoverChartIndex,-1)];e&&e.pointer.drop(b)};c.prototype.pinch=function(b){var e=this,a=e.chart,c=e.pinchDown,d=b.touches||[],k=d.length,n=e.lastValidTouch,l=e.hasZoom,f={},I=1===k&&(e.inClass(b.target,"highcharts-tracker")&&a.runTrackerClick||e.runChartClick),
h={},u=e.selectionMarker;1<k&&(e.initiated=!0);l&&e.initiated&&!I&&!1!==b.cancelable&&b.preventDefault();[].map.call(d,function(a){return e.normalize(a)});"touchstart"===b.type?([].forEach.call(d,function(a,b){c[b]={chartX:a.chartX,chartY:a.chartY}}),n.x=[c[0].chartX,c[1]&&c[1].chartX],n.y=[c[0].chartY,c[1]&&c[1].chartY],a.axes.forEach(function(b){if(b.zoomEnabled){var h=a.bounds[b.horiz?"h":"v"],f=b.minPixelPadding,e=b.toPixels(Math.min(N(b.options.min,b.dataMin),b.dataMin)),c=b.toPixels(Math.max(N(b.options.max,
b.dataMax),b.dataMax)),d=Math.max(e,c);h.min=Math.min(b.pos,Math.min(e,c)-f);h.max=Math.max(b.pos+b.len,d+f)}}),e.res=!0):e.followTouchMove&&1===k?this.runPointActions(e.normalize(b)):c.length&&(u||(e.selectionMarker=u=g({destroy:K,touch:!0},a.plotBox)),e.pinchTranslate(c,d,f,u,h,n),e.hasPinched=l,e.scaleGroups(f,h),e.res&&(e.res=!1,this.reset(!1,0)))};c.prototype.pinchTranslate=function(b,c,a,d,g,k){this.zoomHor&&this.pinchTranslateDirection(!0,b,c,a,d,g,k);this.zoomVert&&this.pinchTranslateDirection(!1,
b,c,a,d,g,k)};c.prototype.pinchTranslateDirection=function(b,c,a,d,g,k,n,l){var f=this.chart,e=b?"x":"y",h=b?"X":"Y",r="chart"+h,t=b?"width":"height",E=f["plot"+(b?"Left":"Top")],F=f.inverted,m=f.bounds[b?"h":"v"],G=1===c.length,w=c[0][r],p=!G&&c[1][r];c=function(){"number"===typeof J&&20<Math.abs(w-p)&&(x=l||Math.abs(B-J)/Math.abs(w-p));q=(E-B)/x+w;R=f["plot"+(b?"Width":"Height")]/x};var R,q,x=l||1,B=a[0][r],J=!G&&a[1][r];c();a=q;if(a<m.min){a=m.min;var L=!0}else a+R>m.max&&(a=m.max-R,L=!0);L?(B-=
.8*(B-n[e][0]),"number"===typeof J&&(J-=.8*(J-n[e][1])),c()):n[e]=[B,J];F||(k[e]=q-E,k[t]=R);k=F?1/x:x;g[t]=R;g[e]=a;d[F?b?"scaleY":"scaleX":"scale"+h]=x;d["translate"+h]=k*E+(B-k*w)};c.prototype.reset=function(b,c){var a=this.chart,e=a.hoverSeries,d=a.hoverPoint,g=a.hoverPoints,k=a.tooltip,l=k&&k.shared?g:d;b&&l&&J(l).forEach(function(a){a.series.isCartesian&&"undefined"===typeof a.plotX&&(b=!1)});if(b)k&&l&&J(l).length&&(k.refresh(l),k.shared&&g?g.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))}):d&&(d.setState(d.state,!0),a.axes.forEach(function(a){a.crosshair&&d.series[a.coll]===a&&a.drawCrosshair(null,d)})));else{if(d)d.onMouseOut();g&&g.forEach(function(a){a.setState()});if(e)e.onMouseOut();k&&k.hide(c);this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove());a.axes.forEach(function(a){a.hideCrosshair()});this.hoverX=a.hoverPoints=a.hoverPoint=null}};
c.prototype.runPointActions=function(b,d){var a=this.chart,e=a.tooltip&&a.tooltip.options.enabled?a.tooltip:void 0,g=e?e.shared:!1,k=d||a.hoverPoint,n=k&&k.series||a.hoverSeries;d=this.getHoverData(k,n,a.series,(!b||"touchmove"!==b.type)&&(!!d||n&&n.directTouch&&this.isDirectTouch),g,b);k=d.hoverPoint;n=d.hoverSeries;var l=d.hoverPoints;d=n&&n.tooltipOptions.followPointer&&!n.tooltipOptions.split;g=g&&n&&!n.noSharedTooltip;if(k&&(k!==a.hoverPoint||e&&e.isHidden)){(a.hoverPoints||[]).forEach(function(a){-1===
l.indexOf(a)&&a.setState()});if(a.hoverSeries!==n)n.onMouseOver();this.applyInactiveState(l);(l||[]).forEach(function(a){a.setState("hover")});a.hoverPoint&&a.hoverPoint.firePointEvent("mouseOut");if(!k.series)return;a.hoverPoints=l;a.hoverPoint=k;k.firePointEvent("mouseOver");e&&e.refresh(g?l:k,b)}else d&&e&&!e.isHidden&&(k=e.getAnchor([{}],b),a.isInsidePlot(k[0],k[1],{visiblePlotOnly:!0})&&e.updatePosition({plotX:k[0],plotY:k[1]}));this.unDocMouseMove||(this.unDocMouseMove=p(a.container.ownerDocument,
"mousemove",function(a){var b=H[c.hoverChartIndex];if(b)b.pointer.onDocumentMouseMove(a)}),this.eventsToUnbind.push(this.unDocMouseMove));a.axes.forEach(function(f){var e=N((f.crosshair||{}).snap,!0),h;e&&((h=a.hoverPoint)&&h.series[f.coll]===f||(h=L(l,function(a){return a.series[f.coll]===f})));h||!e?f.drawCrosshair(b,h):f.hideCrosshair()})};c.prototype.scaleGroups=function(b,c){var a=this.chart;a.series.forEach(function(e){var d=b||e.getPlotBox();e.xAxis&&e.xAxis.zoomEnabled&&e.group&&(e.group.attr(d),
e.markerGroup&&(e.markerGroup.attr(d),e.markerGroup.clip(c?a.clipRect:null)),e.dataLabelsGroup&&e.dataLabelsGroup.attr(d))});a.clipRect.attr(c||a.clipBox)};c.prototype.setDOMEvents=function(){var b=this,d=this.chart.container,a=d.ownerDocument;d.onmousedown=this.onContainerMouseDown.bind(this);d.onmousemove=this.onContainerMouseMove.bind(this);d.onclick=this.onContainerClick.bind(this);this.eventsToUnbind.push(p(d,"mouseenter",this.onContainerMouseEnter.bind(this)));this.eventsToUnbind.push(p(d,"mouseleave",
this.onContainerMouseLeave.bind(this)));c.unbindDocumentMouseUp||(c.unbindDocumentMouseUp=p(a,"mouseup",this.onDocumentMouseUp.bind(this)));for(var r=this.chart.renderTo.parentElement;r&&"BODY"!==r.tagName;)this.eventsToUnbind.push(p(r,"scroll",function(){delete b.chartPosition})),r=r.parentElement;v.hasTouch&&(this.eventsToUnbind.push(p(d,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1})),this.eventsToUnbind.push(p(d,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),
c.unbindDocumentTouchEnd||(c.unbindDocumentTouchEnd=p(a,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})))};c.prototype.setHoverChartIndex=function(){var b=this.chart,d=v.charts[N(c.hoverChartIndex,-1)];if(d&&d!==b)d.pointer.onContainerMouseLeave({relatedTarget:!0});d&&d.mouseIsDown||(c.hoverChartIndex=b.index)};c.prototype.touch=function(b,c){var a=this.chart,e;this.setHoverChartIndex();if(1===b.touches.length)if(b=this.normalize(b),(e=a.isInsidePlot(b.chartX-a.plotLeft,b.chartY-a.plotTop,
{visiblePlotOnly:!0}))&&!a.openMenu){c&&this.runPointActions(b);if("touchmove"===b.type){c=this.pinchDown;var d=c[0]?4<=Math.sqrt(Math.pow(c[0].chartX-b.chartX,2)+Math.pow(c[0].chartY-b.chartY,2)):!1}N(d,!0)&&this.pinch(b)}else c&&this.reset();else 2===b.touches.length&&this.pinch(b)};c.prototype.touchSelect=function(b){return!(!this.chart.options.chart.zoomBySingleTouch||!b.touches||1!==b.touches.length)};c.prototype.zoomOption=function(b){var e=this.chart,a=e.options.chart;e=e.inverted;var c=a.zoomType||
"";/touch/.test(b.type)&&(c=N(a.pinchType,c));this.zoomX=b=/x/.test(c);this.zoomY=a=/y/.test(c);this.zoomHor=b&&!e||a&&e;this.zoomVert=a&&!e||b&&e;this.hasZoom=b||a};return c}();"";return c});P(c,"Core/MSPointer.js",[c["Core/Globals.js"],c["Core/Pointer.js"],c["Core/Utilities.js"]],function(c,v,A){function q(){var b=[];b.item=function(b){return this[b]};g(x,function(c){b.push({pageX:c.pageX,pageY:c.pageY,target:c.target})});return b}function z(b,c,d,g){var k=H[v.hoverChartIndex||NaN];"touch"!==b.pointerType&&
b.pointerType!==b.MSPOINTER_TYPE_TOUCH||!k||(k=k.pointer,g(b),k[c]({type:d,target:b.currentTarget,preventDefault:p,touches:q()}))}var D=this&&this.__extends||function(){var b=function(c,d){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var d in c)c.hasOwnProperty(d)&&(b[d]=c[d])};return b(c,d)};return function(c,d){function g(){this.constructor=c}b(c,d);c.prototype=null===d?Object.create(d):(g.prototype=d.prototype,new g)}}(),H=c.charts,K=
c.doc,p=c.noop,d=c.win,m=A.addEvent,b=A.css,g=A.objectEach,L=A.removeEvent,x={},n=!!d.PointerEvent;return function(g){function k(){return null!==g&&g.apply(this,arguments)||this}D(k,g);k.isRequired=function(){return!(c.hasTouch||!d.PointerEvent&&!d.MSPointerEvent)};k.prototype.batchMSEvents=function(b){b(this.chart.container,n?"pointerdown":"MSPointerDown",this.onContainerPointerDown);b(this.chart.container,n?"pointermove":"MSPointerMove",this.onContainerPointerMove);b(K,n?"pointerup":"MSPointerUp",
this.onDocumentPointerUp)};k.prototype.destroy=function(){this.batchMSEvents(L);g.prototype.destroy.call(this)};k.prototype.init=function(c,d){g.prototype.init.call(this,c,d);this.hasZoom&&b(c.container,{"-ms-touch-action":"none","touch-action":"none"})};k.prototype.onContainerPointerDown=function(b){z(b,"onContainerTouchStart","touchstart",function(b){x[b.pointerId]={pageX:b.pageX,pageY:b.pageY,target:b.currentTarget}})};k.prototype.onContainerPointerMove=function(b){z(b,"onContainerTouchMove","touchmove",
function(b){x[b.pointerId]={pageX:b.pageX,pageY:b.pageY};x[b.pointerId].target||(x[b.pointerId].target=b.currentTarget)})};k.prototype.onDocumentPointerUp=function(b){z(b,"onDocumentTouchEnd","touchend",function(b){delete x[b.pointerId]})};k.prototype.setDOMEvents=function(){g.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(m)};return k}(v)});P(c,"Core/Series/Point.js",[c["Core/Renderer/HTML/AST.js"],c["Core/Animation/AnimationUtilities.js"],c["Core/FormatUtilities.js"],
c["Core/Globals.js"],c["Core/DefaultOptions.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D){var q=v.animObject,K=A.format,p=z.defaultOptions,d=D.addEvent,m=D.defined,b=D.erase,g=D.extend,L=D.fireEvent,x=D.getNestedProperty,n=D.isArray,B=D.isFunction,k=D.isNumber,M=D.isObject,N=D.merge,J=D.objectEach,w=D.pick,e=D.syncTimeout,t=D.removeEvent,a=D.uniqueKey;"";v=function(){function r(){this.colorIndex=this.category=void 0;this.formatPrefix="point";this.id=void 0;this.isNull=!1;this.percentage=this.options=
this.name=void 0;this.selected=!1;this.total=this.series=void 0;this.visible=!0;this.x=void 0}r.prototype.animateBeforeDestroy=function(){var a=this,b={x:a.startXPos,opacity:0},e,c=a.getGraphicalProps();c.singular.forEach(function(f){e="dataLabel"===f;a[f]=a[f].animate(e?{x:a[f].startXPos,y:a[f].startYPos,opacity:0}:b)});c.plural.forEach(function(b){a[b].forEach(function(b){b.element&&b.animate(g({x:a.startXPos},b.startYPos?{x:b.startXPos,y:b.startYPos}:{}))})})};r.prototype.applyOptions=function(a,
b){var e=this.series,c=e.options.pointValKey||e.pointValKey;a=r.prototype.optionsToObject.call(this,a);g(this,a);this.options=this.options?g(this.options,a):a;a.group&&delete this.group;a.dataLabels&&delete this.dataLabels;c&&(this.y=r.prototype.getNestedProperty.call(this,c));this.formatPrefix=(this.isNull=w(this.isValid&&!this.isValid(),null===this.x||!k(this.y)))?"null":"point";this.selected&&(this.state="select");"name"in this&&"undefined"===typeof b&&e.xAxis&&e.xAxis.hasNames&&(this.x=e.xAxis.nameToX(this));
"undefined"===typeof this.x&&e&&(this.x="undefined"===typeof b?e.autoIncrement(this):b);return this};r.prototype.destroy=function(){function a(){if(c.graphic||c.dataLabel||c.dataLabels)t(c),c.destroyElements();for(h in c)c[h]=null}var c=this,d=c.series,l=d.chart;d=d.options.dataSorting;var f=l.hoverPoints,g=q(c.series.chart.renderer.globalAnimation),h;c.legendItem&&l.legend.destroyItem(c);f&&(c.setState(),b(f,c),f.length||(l.hoverPoints=null));if(c===l.hoverPoint)c.onMouseOut();d&&d.enabled?(this.animateBeforeDestroy(),
e(a,g.duration)):a();l.pointCount--};r.prototype.destroyElements=function(a){var b=this;a=b.getGraphicalProps(a);a.singular.forEach(function(a){b[a]=b[a].destroy()});a.plural.forEach(function(a){b[a].forEach(function(a){a.element&&a.destroy()});delete b[a]})};r.prototype.firePointEvent=function(a,b,e){var c=this,f=this.series.options;(f.point.events[a]||c.options&&c.options.events&&c.options.events[a])&&c.importEvents();"click"===a&&f.allowPointSelect&&(e=function(a){c.select&&c.select(null,a.ctrlKey||
a.metaKey||a.shiftKey)});L(c,a,b,e)};r.prototype.getClassName=function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+("undefined"!==typeof this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")};r.prototype.getGraphicalProps=function(a){var b=
this,e=[],c,f={singular:[],plural:[]};a=a||{graphic:1,dataLabel:1};a.graphic&&e.push("graphic","upperGraphic","shadowGroup");a.dataLabel&&e.push("dataLabel","dataLabelUpper","connector");for(c=e.length;c--;){var d=e[c];b[d]&&f.singular.push(d)}["dataLabel","connector"].forEach(function(h){var e=h+"s";a[h]&&b[e]&&f.plural.push(e)});return f};r.prototype.getLabelConfig=function(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,
point:this,percentage:this.percentage,total:this.total||this.stackTotal}};r.prototype.getNestedProperty=function(a){if(a)return 0===a.indexOf("custom.")?x(a,this.options):this[a]};r.prototype.getZone=function(){var a=this.series,b=a.zones;a=a.zoneAxis||"y";var e=0,c;for(c=b[e];this[a]>=c.value;)c=b[++e];this.nonZonedColor||(this.nonZonedColor=this.color);this.color=c&&c.color&&!this.options.color?c.color:this.nonZonedColor;return c};r.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||
this.graphic.element.nodeName))!==this.shapeType};r.prototype.init=function(b,e,c){this.series=b;this.applyOptions(e,c);this.id=m(this.id)?this.id:a();this.resolveColor();b.chart.pointCount++;L(this,"afterInit");return this};r.prototype.optionsToObject=function(a){var b={},e=this.series,c=e.options.keys,f=c||e.pointArrayMap||["y"],d=f.length,h=0,g=0;if(k(a)||null===a)b[f[0]]=a;else if(n(a))for(!c&&a.length>d&&(e=typeof a[0],"string"===e?b.name=a[0]:"number"===e&&(b.x=a[0]),h++);g<d;)c&&"undefined"===
typeof a[h]||(0<f[g].indexOf(".")?r.prototype.setNestedProperty(b,a[h],f[g]):b[f[g]]=a[h]),h++,g++;else"object"===typeof a&&(b=a,a.dataLabels&&(e._hasPointLabels=!0),a.marker&&(e._hasPointMarkers=!0));return b};r.prototype.resolveColor=function(){var a=this.series;var b=a.chart.options.chart.colorCount;var e=a.chart.styledMode;delete this.nonZonedColor;if(a.options.colorByPoint){if(!e){b=a.options.colors||a.chart.options.colors;var c=b[a.colorCounter];b=b.length}e=a.colorCounter;a.colorCounter++;
a.colorCounter===b&&(a.colorCounter=0)}else e||(c=a.color),e=a.colorIndex;this.colorIndex=w(this.options.colorIndex,e);this.color=w(this.options.color,c)};r.prototype.setNestedProperty=function(a,b,e){e.split(".").reduce(function(a,f,e,h){a[f]=h.length-1===e?b:M(a[f],!0)?a[f]:{};return a[f]},a);return a};r.prototype.tooltipFormatter=function(a){var b=this.series,e=b.tooltipOptions,c=w(e.valueDecimals,""),f=e.valuePrefix||"",d=e.valueSuffix||"";b.chart.styledMode&&(a=b.chart.tooltip.styledModeFormat(a));
(b.pointArrayMap||["y"]).forEach(function(b){b="{point."+b;if(f||d)a=a.replace(RegExp(b+"}","g"),f+b+"}"+d);a=a.replace(RegExp(b+"}","g"),b+":,."+c+"f}")});return K(a,{point:this,series:this.series},b.chart)};r.prototype.update=function(a,b,e,c){function f(){d.applyOptions(a);var f=l&&d.hasDummyGraphic;f=null===d.y?!f:f;l&&f&&(d.graphic=l.destroy(),delete d.hasDummyGraphic);M(a,!0)&&(l&&l.element&&a&&a.marker&&"undefined"!==typeof a.marker.symbol&&(d.graphic=l.destroy()),a&&a.dataLabels&&d.dataLabel&&
(d.dataLabel=d.dataLabel.destroy()),d.connector&&(d.connector=d.connector.destroy()));g=d.index;h.updateParallelArrays(d,g);k.data[g]=M(k.data[g],!0)||M(a,!0)?d.options:w(a,k.data[g]);h.isDirty=h.isDirtyData=!0;!h.fixedBox&&h.hasCartesianSeries&&(r.isDirtyBox=!0);"point"===k.legendType&&(r.isDirtyLegend=!0);b&&r.redraw(e)}var d=this,h=d.series,l=d.graphic,g,r=h.chart,k=h.options;b=w(b,!0);!1===c?f():d.firePointEvent("update",{options:a},f)};r.prototype.remove=function(a,b){this.series.removePoint(this.series.data.indexOf(this),
a,b)};r.prototype.select=function(a,b){var e=this,c=e.series,f=c.chart;this.selectedStaging=a=w(a,!e.selected);e.firePointEvent(a?"select":"unselect",{accumulate:b},function(){e.selected=e.options.selected=a;c.options.data[c.data.indexOf(e)]=e.options;e.setState(a&&"select");b||f.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(f.hoverPoints&&b.options.inactiveOtherPoints?"inactive":""),
a.firePointEvent("unselect"))})});delete this.selectedStaging};r.prototype.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)};r.prototype.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};r.prototype.importEvents=function(){if(!this.hasImportedEvents){var a=
this,b=N(a.series.options.point,a.options).events;a.events=b;J(b,function(b,e){B(b)&&d(a,e,b)});this.hasImportedEvents=!0}};r.prototype.setState=function(a,b){var e=this.series,d=this.state,f=e.options.states[a||"normal"]||{},r=p.plotOptions[e.type].marker&&e.options.marker,h=r&&!1===r.enabled,u=r&&r.states&&r.states[a||"normal"]||{},n=!1===u.enabled,t=e.stateMarkerGraphic,m=this.marker||{},q=e.chart,F=e.halo,x,E=r&&e.markerAttribs;a=a||"";if(!(a===this.state&&!b||this.selected&&"select"!==a||!1===
f.enabled||a&&(n||h&&!1===u.enabled)||a&&m.states&&m.states[a]&&!1===m.states[a].enabled)){this.state=a;E&&(x=e.markerAttribs(this,a));if(this.graphic&&!this.hasDummyGraphic){d&&this.graphic.removeClass("highcharts-point-"+d);a&&this.graphic.addClass("highcharts-point-"+a);if(!q.styledMode){var R=e.pointAttribs(this,a);var B=w(q.options.chart.animation,f.animation);e.options.inactiveOtherPoints&&k(R.opacity)&&((this.dataLabels||[]).forEach(function(a){a&&a.animate({opacity:R.opacity},B)}),this.connector&&
this.connector.animate({opacity:R.opacity},B));this.graphic.animate(R,B)}x&&this.graphic.animate(x,w(q.options.chart.animation,u.animation,r.animation));t&&t.hide()}else{if(a&&u){d=m.symbol||e.symbol;t&&t.currentSymbol!==d&&(t=t.destroy());if(x)if(t)t[b?"animate":"attr"]({x:x.x,y:x.y});else d&&(e.stateMarkerGraphic=t=q.renderer.symbol(d,x.x,x.y,x.width,x.height).add(e.markerGroup),t.currentSymbol=d);!q.styledMode&&t&&t.attr(e.pointAttribs(this,a))}t&&(t[a&&this.isInside?"show":"hide"](),t.element.point=
this)}f=f.halo;x=(t=this.graphic||t)&&t.visibility||"inherit";f&&f.size&&t&&"hidden"!==x&&!this.isCluster?(F||(e.halo=F=q.renderer.path().add(t.parentGroup)),F.show()[b?"animate":"attr"]({d:this.haloPath(f.size)}),F.attr({"class":"highcharts-halo highcharts-color-"+w(this.colorIndex,e.colorIndex)+(this.className?" "+this.className:""),visibility:x,zIndex:-1}),F.point=this,q.styledMode||F.attr(g({fill:this.color||e.color,"fill-opacity":f.opacity},c.filterUserAttributes(f.attributes||{})))):F&&F.point&&
F.point.haloPath&&F.animate({d:F.point.haloPath(0)},null,F.hide);L(this,"afterSetState",{state:a})}};r.prototype.haloPath=function(a){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-a,this.plotY-a,2*a,2*a)};return r}();return C.Point=v});P(c,"Core/Legend.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/FormatUtilities.js"],c["Core/Globals.js"],c["Core/Series/Point.js"],c["Core/Utilities.js"]],function(c,v,A,C,z){var q=c.animObject,H=c.setAnimation,K=v.format;c=A.isFirefox;
var p=A.marginNames;v=A.win;var d=z.addEvent,m=z.createElement,b=z.css,g=z.defined,L=z.discardElement,x=z.find,n=z.fireEvent,B=z.isNumber,k=z.merge,M=z.pick,N=z.relativeLength,J=z.stableSort,w=z.syncTimeout;z=z.wrap;var e=function(){function e(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)}e.prototype.init=function(a,b){this.chart=a;this.setOptions(b);b.enabled&&(this.render(),d(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=d(this.chart,"render",function(){this.legend.proximatePositions();
this.legend.positionItems()}):this.unchartrender&&this.unchartrender())};e.prototype.setOptions=function(a){var b=M(a.padding,8);this.options=a;this.chart.styledMode||(this.itemStyle=a.itemStyle,this.itemHiddenStyle=k(this.itemStyle,a.itemHiddenStyle));this.itemMarginTop=a.itemMarginTop||0;this.itemMarginBottom=a.itemMarginBottom||0;this.padding=b;this.initialItemY=b-5;this.symbolWidth=M(a.symbolWidth,16);this.pages=[];this.proximate="proximate"===a.layout&&!this.chart.inverted;this.baseline=void 0};
e.prototype.update=function(a,b){var e=this.chart;this.setOptions(k(!0,this.options,a));this.destroy();e.isDirtyLegend=e.isDirtyBox=!0;M(b,!0)&&e.redraw();n(this,"afterUpdate")};e.prototype.colorizeItem=function(a,b){a.legendGroup[b?"removeClass":"addClass"]("highcharts-legend-item-hidden");if(!this.chart.styledMode){var e=this.options,c=a.legendItem,d=a.legendLine,l=a.legendSymbol,f=this.itemHiddenStyle.color;e=b?e.itemStyle.color:f;var g=b?a.color||f:f,h=a.options&&a.options.marker,k={fill:g};c&&
c.css({fill:e,color:e});d&&d.attr({stroke:g});l&&(h&&l.isMarker&&(k=a.pointAttribs(),b||(k.stroke=k.fill=f)),l.attr(k))}n(this,"afterColorizeItem",{item:a,visible:b})};e.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()};e.prototype.positionItem=function(a){var b=this,e=this.options,c=e.symbolPadding,d=!e.rtl,l=a._legendItemPos;e=l[0];l=l[1];var f=a.checkbox,k=a.legendGroup;k&&k.element&&(c={translateX:d?e:this.legendWidth-
e-2*c-4,translateY:l},d=function(){n(b,"afterPositionItem",{item:a})},g(k.translateY)?k.animate(c,void 0,d):(k.attr(c),d()));f&&(f.x=e,f.y=l)};e.prototype.destroyItem=function(a){var b=a.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(b){a[b]&&(a[b]=a[b].destroy())});b&&L(a.checkbox)};e.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};e.prototype.positionCheckboxes=function(){var a=this.group&&this.group.alignAttr,e=this.clipHeight||this.legendHeight,c=this.titleHeight;if(a){var d=a.translateY;this.allItems.forEach(function(g){var l=g.checkbox;if(l){var f=d+c+l.y+(this.scrollOffset||0)+3;b(l,{left:a.translateX+g.checkboxOffset+l.x-20+"px",top:f+"px",display:this.proximate||f>d-6&&f<d+e-6?"":"none"})}},this)}};e.prototype.renderTitle=function(){var a=this.options,b=this.padding,e=a.title,c=0;e.text&&(this.title||
(this.title=this.chart.renderer.label(e.text,b-3,b-4,null,null,null,a.useHTML,null,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(e.style),this.title.add(this.group)),e.width||this.title.css({width:this.maxLegendWidth+"px"}),a=this.title.getBBox(),c=a.height,this.offsetWidth=a.width,this.contentGroup.attr({translateY:c}));this.titleHeight=c};e.prototype.setText=function(a){var b=this.options;a.legendItem.attr({text:b.labelFormat?K(b.labelFormat,a,this.chart):b.labelFormatter.call(a)})};
e.prototype.renderItem=function(a){var b=this.chart,e=b.renderer,c=this.options,d=this.symbolWidth,l=c.symbolPadding||0,f=this.itemStyle,g=this.itemHiddenStyle,h="horizontal"===c.layout?M(c.itemDistance,20):0,u=!c.rtl,n=a.legendItem,t=!a.series,m=!t&&a.series.drawLegendSymbol?a.series:a,w=m.options,p=this.createCheckboxForItem&&w&&w.showCheckbox;w=d+l+h+(p?20:0);var q=c.useHTML,x=a.options.className;n||(a.legendGroup=e.g("legend-item").addClass("highcharts-"+m.type+"-series highcharts-color-"+a.colorIndex+
(x?" "+x:"")+(t?" highcharts-series-"+a.index:"")).attr({zIndex:1}).add(this.scrollGroup),a.legendItem=n=e.text("",u?d+l:-l,this.baseline||0,q),b.styledMode||n.css(k(a.visible?f:g)),n.attr({align:u?"left":"right",zIndex:2}).add(a.legendGroup),this.baseline||(this.fontMetrics=e.fontMetrics(b.styledMode?12:f.fontSize,n),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,n.attr("y",this.baseline),this.symbolHeight=c.symbolHeight||this.fontMetrics.f,c.squareSymbol&&(this.symbolWidth=M(c.symbolWidth,
Math.max(this.symbolHeight,16)),w=this.symbolWidth+l+h+(p?20:0),u&&n.attr("x",this.symbolWidth+l))),m.drawLegendSymbol(this,a),this.setItemEvents&&this.setItemEvents(a,n,q));p&&!a.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(a);this.colorizeItem(a,a.visible);!b.styledMode&&f.width||n.css({width:(c.itemWidth||this.widthOption||b.spacingBox.width)-w+"px"});this.setText(a);b=n.getBBox();a.itemWidth=a.checkboxOffset=c.itemWidth||a.legendItemWidth||b.width+w;this.maxItemWidth=Math.max(this.maxItemWidth,
a.itemWidth);this.totalItemWidth+=a.itemWidth;this.itemHeight=a.itemHeight=Math.round(a.legendItemHeight||b.height||this.symbolHeight)};e.prototype.layoutItem=function(a){var b=this.options,e=this.padding,c="horizontal"===b.layout,d=a.itemHeight,l=this.itemMarginBottom,f=this.itemMarginTop,g=c?M(b.itemDistance,20):0,h=this.maxLegendWidth;b=b.alignColumns&&this.totalItemWidth>h?this.maxItemWidth:a.itemWidth;c&&this.itemX-e+b>h&&(this.itemX=e,this.lastLineHeight&&(this.itemY+=f+this.lastLineHeight+
l),this.lastLineHeight=0);this.lastItemY=f+this.itemY+l;this.lastLineHeight=Math.max(d,this.lastLineHeight);a._legendItemPos=[this.itemX,this.itemY];c?this.itemX+=b:(this.itemY+=f+d+l,this.lastLineHeight=d);this.offsetWidth=this.widthOption||Math.max((c?this.itemX-e-(a.checkbox?0:g):b)+e,this.offsetWidth)};e.prototype.getAllItems=function(){var a=[];this.chart.series.forEach(function(b){var e=b&&b.options;b&&M(e.showInLegend,g(e.linkedTo)?!1:void 0,!0)&&(a=a.concat(b.legendItems||("point"===e.legendType?
b.data:b)))});n(this,"afterGetAllItems",{allItems:a});return a};e.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)};e.prototype.adjustMargins=function(a,b){var e=this.chart,c=this.options,d=this.getAlignment();d&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(l,f){l.test(d)&&!g(a[f])&&(e[p[f]]=Math.max(e[p[f]],e.legend[(f+1)%2?"legendHeight":
"legendWidth"]+[1,-1,-1,1][f]*c[f%2?"x":"y"]+M(c.margin,12)+b[f]+(e.titleOffset[f]||0)))})};e.prototype.proximatePositions=function(){var a=this.chart,b=[],e="left"===this.options.align;this.allItems.forEach(function(c){var d;var l=e;if(c.yAxis){c.xAxis.options.reversed&&(l=!l);c.points&&(d=x(l?c.points:c.points.slice(0).reverse(),function(a){return B(a.plotY)}));l=this.itemMarginTop+c.legendItem.getBBox().height+this.itemMarginBottom;var f=c.yAxis.top-a.plotTop;c.visible?(d=d?d.plotY:c.yAxis.height,
d+=f-.3*l):d=f+c.yAxis.height;b.push({target:d,size:l,item:c})}},this);A.distribute(b,a.plotHeight);b.forEach(function(b){b.item._legendItemPos[1]=a.plotTop-a.spacing[0]+b.pos})};e.prototype.render=function(){var a=this.chart,b=a.renderer,e=this.group,c=this.box,d=this.options,l=this.padding;this.itemX=l;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=N(d.width,a.spacingBox.width-l);var f=a.spacingBox.width-2*l-d.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,
2))&&(f/=2);this.maxLegendWidth=this.widthOption||f;e||(this.group=e=b.g("legend").addClass(d.className||"").attr({zIndex:7}).add(),this.contentGroup=b.g().attr({zIndex:1}).add(e),this.scrollGroup=b.g().add(this.contentGroup));this.renderTitle();var g=this.getAllItems();J(g,function(a,b){return(a.options&&a.options.legendIndex||0)-(b.options&&b.options.legendIndex||0)});d.reversed&&g.reverse();this.allItems=g;this.display=f=!!g.length;this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=
0;g.forEach(this.renderItem,this);g.forEach(this.layoutItem,this);g=(this.widthOption||this.offsetWidth)+l;var h=this.lastItemY+this.lastLineHeight+this.titleHeight;h=this.handleOverflow(h);h+=l;c||(this.box=c=b.rect().addClass("highcharts-legend-box").attr({r:d.borderRadius}).add(e),c.isNew=!0);a.styledMode||c.attr({stroke:d.borderColor,"stroke-width":d.borderWidth||0,fill:d.backgroundColor||"none"}).shadow(d.shadow);0<g&&0<h&&(c[c.isNew?"attr":"animate"](c.crisp.call({},{x:0,y:0,width:g,height:h},
c.strokeWidth())),c.isNew=!1);c[f?"show":"hide"]();a.styledMode&&"none"===e.getStyle("display")&&(g=h=0);this.legendWidth=g;this.legendHeight=h;f&&this.align();this.proximate||this.positionItems();n(this,"afterRender")};e.prototype.align=function(a){void 0===a&&(a=this.chart.spacingBox);var b=this.chart,e=this.options,c=a.y;/(lth|ct|rth)/.test(this.getAlignment())&&0<b.titleOffset[0]?c+=b.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<b.titleOffset[2]&&(c-=b.titleOffset[2]);c!==a.y&&(a=
k(a,{y:c}));this.group.align(k(e,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":e.verticalAlign}),!0,a)};e.prototype.handleOverflow=function(a){var b=this,e=this.chart,c=e.renderer,d=this.options,l=d.y,f=this.padding;l=e.spacingBox.height+("top"===d.verticalAlign?-l:l)-f;var g=d.maxHeight,h,k=this.clipRect,n=d.navigation,t=M(n.animation,!0),m=n.arrowSize||12,w=this.nav,p=this.pages,q,x=this.allItems,R=function(a){"number"===typeof a?k.attr({height:a}):k&&(b.clipRect=
k.destroy(),b.contentGroup.clip());b.contentGroup.div&&(b.contentGroup.div.style.clip=a?"rect("+f+"px,9999px,"+(f+a)+"px,0)":"auto")},B=function(a){b[a]=c.circle(0,0,1.3*m).translate(m/2,m/2).add(w);e.styledMode||b[a].attr("fill","rgba(0,0,0,0.0001)");return b[a]};"horizontal"!==d.layout||"middle"===d.verticalAlign||d.floating||(l/=2);g&&(l=Math.min(l,g));p.length=0;a&&0<l&&a>l&&!1!==n.enabled?(this.clipHeight=h=Math.max(l-20-this.titleHeight-f,0),this.currentPage=M(this.currentPage,1),this.fullHeight=
a,x.forEach(function(a,b){var e=a._legendItemPos[1],c=Math.round(a.legendItem.getBBox().height),f=p.length;if(!f||e-p[f-1]>h&&(q||e)!==p[f-1])p.push(q||e),f++;a.pageIx=f-1;q&&(x[b-1].pageIx=f-1);b===x.length-1&&e+c-p[f-1]>h&&e!==q&&(p.push(e),a.pageIx=f);e!==q&&(q=e)}),k||(k=b.clipRect=c.clipRect(0,f,9999,0),b.contentGroup.clip(k)),R(h),w||(this.nav=w=c.g().attr({zIndex:1}).add(this.group),this.up=c.symbol("triangle",0,0,m,m).add(w),B("upTracker").on("click",function(){b.scroll(-1,t)}),this.pager=
c.text("",15,10).addClass("highcharts-legend-navigation"),e.styledMode||this.pager.css(n.style),this.pager.add(w),this.down=c.symbol("triangle-down",0,0,m,m).add(w),B("downTracker").on("click",function(){b.scroll(1,t)})),b.scroll(0),a=l):w&&(R(),this.nav=w.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0);return a};e.prototype.scroll=function(a,b){var e=this,c=this.chart,d=this.pages,l=d.length,f=this.currentPage+a;a=this.clipHeight;var g=this.options.navigation,h=this.pager,k=this.padding;
f>l&&(f=l);0<f&&("undefined"!==typeof b&&H(b,c),this.nav.attr({translateX:k,translateY:a+this.padding+7+this.titleHeight,visibility:"visible"}),[this.up,this.upTracker].forEach(function(a){a.attr({"class":1===f?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),h.attr({text:f+"/"+l}),[this.down,this.downTracker].forEach(function(a){a.attr({x:18+this.pager.getBBox().width,"class":f===l?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),c.styledMode||(this.up.attr({fill:1===
f?g.inactiveColor:g.activeColor}),this.upTracker.css({cursor:1===f?"default":"pointer"}),this.down.attr({fill:f===l?g.inactiveColor:g.activeColor}),this.downTracker.css({cursor:f===l?"default":"pointer"})),this.scrollOffset=-d[f-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=f,this.positionCheckboxes(),b=q(M(b,c.renderer.globalAnimation,!0)),w(function(){n(e,"afterScroll",{currentPage:f})},b.duration))};e.prototype.setItemEvents=function(a,b,e){var c=
this,d=c.chart.renderer.boxWrapper,l=a instanceof C,f="highcharts-legend-"+(l?"point":"series")+"-active",g=c.chart.styledMode;(e?[b,a.legendSymbol]:[a.legendGroup]).forEach(function(h){if(h)h.on("mouseover",function(){a.visible&&c.allItems.forEach(function(b){a!==b&&b.setState("inactive",!l)});a.setState("hover");a.visible&&d.addClass(f);g||b.css(c.options.itemHoverStyle)}).on("mouseout",function(){c.chart.styledMode||b.css(k(a.visible?c.itemStyle:c.itemHiddenStyle));c.allItems.forEach(function(b){a!==
b&&b.setState("",!l)});d.removeClass(f);a.setState()}).on("click",function(b){var h=function(){a.setVisible&&a.setVisible();c.allItems.forEach(function(b){a!==b&&b.setState(a.visible?"inactive":"",!l)})};d.removeClass(f);b={browserEvent:b};a.firePointEvent?a.firePointEvent("legendItemClick",b,h):n(a,"legendItemClick",b,h)})})};e.prototype.createCheckboxForItem=function(a){a.checkbox=m("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:a.selected,defaultChecked:a.selected},this.options.itemCheckboxStyle,
this.chart.container);d(a.checkbox,"click",function(b){n(a.series||a,"checkboxClick",{checked:b.target.checked,item:a},function(){a.select()})})};return e}();(/Trident\/7\.0/.test(v.navigator&&v.navigator.userAgent)||c)&&z(e.prototype,"positionItem",function(b,a){var e=this,c=function(){a._legendItemPos&&b.call(e,a)};c();e.bubbleLegend||setTimeout(c)});A.Legend=e;return A.Legend});P(c,"Core/Series/SeriesRegistry.js",[c["Core/Globals.js"],c["Core/DefaultOptions.js"],c["Core/Series/Point.js"],c["Core/Utilities.js"]],
function(c,v,A,C){var q=v.defaultOptions,D=C.error,H=C.extendClass,K=C.merge,p;(function(d){function m(b,c){var g=q.plotOptions||{},m=c.defaultOptions;c.prototype.pointClass||(c.prototype.pointClass=A);c.prototype.type=b;m&&(g[b]=m);d.seriesTypes[b]=c}d.seriesTypes=c.seriesTypes;d.getSeries=function(b,c){void 0===c&&(c={});var g=b.options.chart;g=c.type||g.type||g.defaultSeriesType||"";var m=d.seriesTypes[g];d||D(17,!0,b,{missingModuleFor:g});g=new m;"function"===typeof g.init&&g.init(b,c);return g};
d.registerSeriesType=m;d.seriesType=function(b,c,p,x,n){var g=q.plotOptions||{};c=c||"";g[b]=K(g[c],p);m(b,H(d.seriesTypes[c]||function(){},x));d.seriesTypes[b].prototype.type=b;n&&(d.seriesTypes[b].prototype.pointClass=H(A,n));return d.seriesTypes[b]}})(p||(p={}));c.seriesType=p.seriesType;return p});P(c,"Core/Chart/Chart.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Axis/Axis.js"],c["Core/FormatUtilities.js"],c["Core/Foundation.js"],c["Core/Globals.js"],c["Core/Legend.js"],c["Core/MSPointer.js"],
c["Core/DefaultOptions.js"],c["Core/Color/Palette.js"],c["Core/Pointer.js"],c["Core/Renderer/RendererRegistry.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Time.js"],c["Core/Utilities.js"],c["Core/Renderer/HTML/AST.js"]],function(c,v,A,C,z,D,H,K,p,d,m,b,g,L,x){var n=c.animate,q=c.animObject,k=c.setAnimation,M=A.numberFormat,N=C.registerEventOptions,J=z.charts,w=z.doc,e=z.marginNames,t=z.win,a=K.defaultOptions,r=K.defaultTime,E=b.seriesTypes,F=L.addEvent,G=L.attr,l=L.cleanRecursively,f=L.createElement,
I=L.css,h=L.defined,u=L.discardElement,O=L.erase,X=L.error,y=L.extend,Q=L.find,S=L.fireEvent,Z=L.getStyle,ha=L.isArray,R=L.isNumber,ea=L.isObject,aa=L.isString,Y=L.merge,da=L.objectEach,T=L.pick,U=L.pInt,fa=L.relativeLength,ba=L.removeEvent,W=L.splat,ca=L.syncTimeout,P=L.uniqueKey;c=function(){function b(a,b,h){this.series=this.renderTo=this.renderer=this.pointer=this.pointCount=this.plotWidth=this.plotTop=this.plotLeft=this.plotHeight=this.plotBox=this.options=this.numberFormatter=this.margin=this.legend=
this.labelCollectors=this.isResizing=this.index=this.eventOptions=this.container=this.colorCounter=this.clipBox=this.chartWidth=this.chartHeight=this.bounds=this.axisOffset=this.axes=void 0;this.sharedClips={};this.yAxis=this.xAxis=this.userOptions=this.titleOffset=this.time=this.symbolCounter=this.spacingBox=this.spacing=void 0;this.getArgs(a,b,h)}b.chart=function(a,h,e){return new b(a,h,e)};b.prototype.getArgs=function(a,b,h){aa(a)||a.nodeName?(this.renderTo=a,this.init(b,h)):this.init(a,b)};b.prototype.init=
function(b,h){var e=b.plotOptions||{};S(this,"init",{args:arguments},function(){var c=Y(a,b),f=c.chart;da(c.plotOptions,function(a,b){ea(a)&&(a.tooltip=e[b]&&Y(e[b].tooltip)||void 0)});c.tooltip.userOptions=b.chart&&b.chart.forExport&&b.tooltip.userOptions||b.tooltip;this.userOptions=b;this.margin=[];this.spacing=[];this.bounds={h:{},v:{}};this.labelCollectors=[];this.callback=h;this.isResizing=0;this.options=c;this.axes=[];this.series=[];this.time=b.time&&Object.keys(b.time).length?new g(b.time):
z.time;this.numberFormatter=f.numberFormatter||M;this.styledMode=f.styledMode;this.hasCartesianSeries=f.showAxes;this.index=J.length;J.push(this);z.chartCount++;N(this,f);this.xAxis=[];this.yAxis=[];this.pointCount=this.colorCounter=this.symbolCounter=0;S(this,"afterInit");this.firstRender()})};b.prototype.initSeries=function(a){var b=this.options.chart;b=a.type||b.type||b.defaultSeriesType;var h=E[b];h||X(17,!0,this,{missingModuleFor:b});b=new h;"function"===typeof b.init&&b.init(this,a);return b};
b.prototype.setSeriesData=function(){this.getSeriesOrderByLinks().forEach(function(a){a.points||a.data||!a.enabledDataSorting||a.setData(a.options.data,!1)})};b.prototype.getSeriesOrderByLinks=function(){return this.series.concat().sort(function(a,b){return a.linkedSeries.length||b.linkedSeries.length?b.linkedSeries.length-a.linkedSeries.length:0})};b.prototype.orderSeries=function(a){var b=this.series;a=a||0;for(var h=b.length;a<h;++a)b[a]&&(b[a].index=a,b[a].name=b[a].getName())};b.prototype.isInsidePlot=
function(a,b,h){void 0===h&&(h={});var e=this.inverted,c=this.plotBox,f=this.plotLeft,d=this.plotTop,l=this.scrollablePlotBox,g=0;var k=0;h.visiblePlotOnly&&this.scrollingContainer&&(k=this.scrollingContainer,g=k.scrollLeft,k=k.scrollTop);var u=h.series;c=h.visiblePlotOnly&&l||c;l=h.inverted?b:a;b=h.inverted?a:b;a={x:l,y:b,isInsidePlot:!0};if(!h.ignoreX){var r=u&&(e?u.yAxis:u.xAxis)||{pos:f,len:Infinity};l=h.paneCoordinates?r.pos+l:f+l;l>=Math.max(g+f,r.pos)&&l<=Math.min(g+f+c.width,r.pos+r.len)||
(a.isInsidePlot=!1)}!h.ignoreY&&a.isInsidePlot&&(e=u&&(e?u.xAxis:u.yAxis)||{pos:d,len:Infinity},h=h.paneCoordinates?e.pos+b:d+b,h>=Math.max(k+d,e.pos)&&h<=Math.min(k+d+c.height,e.pos+e.len)||(a.isInsidePlot=!1));S(this,"afterIsInsidePlot",a);return a.isInsidePlot};b.prototype.redraw=function(a){S(this,"beforeRedraw");var b=this.hasCartesianSeries?this.axes:this.colorAxis||[],h=this.series,e=this.pointer,c=this.legend,f=this.userOptions.legend,d=this.renderer,l=d.isHidden(),g=[],u=this.isDirtyBox,
r=this.isDirtyLegend;this.setResponsive&&this.setResponsive(!1);k(this.hasRendered?a:!1,this);l&&this.temporaryDisplay();this.layOutTitles();for(a=h.length;a--;){var n=h[a];if(n.options.stacking||n.options.centerInCategory){var t=!0;if(n.isDirty){var m=!0;break}}}if(m)for(a=h.length;a--;)n=h[a],n.options.stacking&&(n.isDirty=!0);h.forEach(function(a){a.isDirty&&("point"===a.options.legendType?("function"===typeof a.updateTotals&&a.updateTotals(),r=!0):f&&(f.labelFormatter||f.labelFormat)&&(r=!0));
a.isDirtyData&&S(a,"updatedData")});r&&c&&c.options.enabled&&(c.render(),this.isDirtyLegend=!1);t&&this.getStacks();b.forEach(function(a){a.updateNames();a.setScale()});this.getMargins();b.forEach(function(a){a.isDirty&&(u=!0)});b.forEach(function(a){var b=a.min+","+a.max;a.extKey!==b&&(a.extKey=b,g.push(function(){S(a,"afterSetExtremes",y(a.eventArgs,a.getExtremes()));delete a.eventArgs}));(u||t)&&a.redraw()});u&&this.drawChartBox();S(this,"predraw");h.forEach(function(a){(u||a.isDirty)&&a.visible&&
a.redraw();a.isDirtyData=!1});e&&e.reset(!0);d.draw();S(this,"redraw");S(this,"render");l&&this.temporaryDisplay(!0);g.forEach(function(a){a.call()})};b.prototype.get=function(a){function b(b){return b.id===a||b.options&&b.options.id===a}for(var h=this.series,e=Q(this.axes,b)||Q(this.series,b),c=0;!e&&c<h.length;c++)e=Q(h[c].points||[],b);return e};b.prototype.getAxes=function(){var a=this,b=this.options,h=b.xAxis=W(b.xAxis||{});b=b.yAxis=W(b.yAxis||{});S(this,"getAxes");h.forEach(function(a,b){a.index=
b;a.isX=!0});b.forEach(function(a,b){a.index=b});h.concat(b).forEach(function(b){new v(a,b)});S(this,"afterGetAxes")};b.prototype.getSelectedPoints=function(){var a=[];this.series.forEach(function(b){a=a.concat(b.getPointsCollection().filter(function(a){return T(a.selectedStaging,a.selected)}))});return a};b.prototype.getSelectedSeries=function(){return this.series.filter(function(a){return a.selected})};b.prototype.setTitle=function(a,b,h){this.applyDescription("title",a);this.applyDescription("subtitle",
b);this.applyDescription("caption",void 0);this.layOutTitles(h)};b.prototype.applyDescription=function(a,b){var h=this,e="title"===a?{color:p.neutralColor80,fontSize:this.options.isStock?"16px":"18px"}:{color:p.neutralColor60};e=this.options[a]=Y(!this.styledMode&&{style:e},this.options[a],b);var c=this[a];c&&b&&(this[a]=c=c.destroy());e&&!c&&(c=this.renderer.text(e.text,0,0,e.useHTML).attr({align:e.align,"class":"highcharts-"+a,zIndex:e.zIndex||4}).add(),c.update=function(b){h[{title:"setTitle",
subtitle:"setSubtitle",caption:"setCaption"}[a]](b)},this.styledMode||c.css(e.style),this[a]=c)};b.prototype.layOutTitles=function(a){var b=[0,0,0],h=this.renderer,e=this.spacingBox;["title","subtitle","caption"].forEach(function(a){var c=this[a],f=this.options[a],d=f.verticalAlign||"top";a="title"===a?"top"===d?-3:0:"top"===d?b[0]+2:0;var l;if(c){this.styledMode||(l=f.style&&f.style.fontSize);l=h.fontMetrics(l,c).b;c.css({width:(f.width||e.width+(f.widthAdjust||0))+"px"});var g=Math.round(c.getBBox(f.useHTML).height);
c.align(y({y:"bottom"===d?l:a+l,height:g},f),!1,"spacingBox");f.floating||("top"===d?b[0]=Math.ceil(b[0]+g):"bottom"===d&&(b[2]=Math.ceil(b[2]+g)))}},this);b[0]&&"top"===(this.options.title.verticalAlign||"top")&&(b[0]+=this.options.title.margin);b[2]&&"bottom"===this.options.caption.verticalAlign&&(b[2]+=this.options.caption.margin);var c=!this.titleOffset||this.titleOffset.join(",")!==b.join(",");this.titleOffset=b;S(this,"afterLayOutTitles");!this.isDirtyBox&&c&&(this.isDirtyBox=this.isDirtyLegend=
c,this.hasRendered&&T(a,!0)&&this.isDirtyBox&&this.redraw())};b.prototype.getChartSize=function(){var a=this.options.chart,b=a.width;a=a.height;var e=this.renderTo;h(b)||(this.containerWidth=Z(e,"width"));h(a)||(this.containerHeight=Z(e,"height"));this.chartWidth=Math.max(0,b||this.containerWidth||600);this.chartHeight=Math.max(0,fa(a,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))};b.prototype.temporaryDisplay=function(a){var b=this.renderTo;if(a)for(;b&&b.style;)b.hcOrigStyle&&
(I(b,b.hcOrigStyle),delete b.hcOrigStyle),b.hcOrigDetached&&(w.body.removeChild(b),b.hcOrigDetached=!1),b=b.parentNode;else for(;b&&b.style;){w.body.contains(b)||b.parentNode||(b.hcOrigDetached=!0,w.body.appendChild(b));if("none"===Z(b,"display",!1)||b.hcOricDetached)b.hcOrigStyle={display:b.style.display,height:b.style.height,overflow:b.style.overflow},a={display:"block",overflow:"hidden"},b!==this.renderTo&&(a.height=0),I(b,a),b.offsetWidth||b.style.setProperty("display","block","important");b=
b.parentNode;if(b===w.body)break}};b.prototype.setClassName=function(a){this.container.className="highcharts-container "+(a||"")};b.prototype.getContainer=function(){var a=this.options,b=a.chart,h=P(),e,c=this.renderTo;c||(this.renderTo=c=b.renderTo);aa(c)&&(this.renderTo=c=w.getElementById(c));c||X(13,!0,this);var d=U(G(c,"data-highcharts-chart"));R(d)&&J[d]&&J[d].hasRendered&&J[d].destroy();G(c,"data-highcharts-chart",this.index);c.innerHTML="";b.skipClone||c.offsetWidth||this.temporaryDisplay();
this.getChartSize();d=this.chartWidth;var l=this.chartHeight;I(c,{overflow:"hidden"});this.styledMode||(e=y({position:"relative",overflow:"hidden",width:d+"px",height:l+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none"},b.style||{}));this.container=h=f("div",{id:h},e,c);this._cursor=h.style.cursor;this.renderer=new (m.getRendererType(b.renderer))(h,d,l,void 0,b.forExport,a.exporting&&a.exporting.allowHTML,
this.styledMode);k(void 0,this);this.setClassName(b.className);if(this.styledMode)for(var g in a.defs)this.renderer.definition(a.defs[g]);else this.renderer.setStyle(b.style);this.renderer.chartIndex=this.index;S(this,"afterGetContainer")};b.prototype.getMargins=function(a){var b=this.spacing,e=this.margin,c=this.titleOffset;this.resetMargins();c[0]&&!h(e[0])&&(this.plotTop=Math.max(this.plotTop,c[0]+b[0]));c[2]&&!h(e[2])&&(this.marginBottom=Math.max(this.marginBottom,c[2]+b[2]));this.legend&&this.legend.display&&
this.legend.adjustMargins(e,b);S(this,"getMargins");a||this.getAxisMargins()};b.prototype.getAxisMargins=function(){var a=this,b=a.axisOffset=[0,0,0,0],c=a.colorAxis,f=a.margin,d=function(a){a.forEach(function(a){a.visible&&a.getOffset()})};a.hasCartesianSeries?d(a.axes):c&&c.length&&d(c);e.forEach(function(e,c){h(f[c])||(a[e]+=b[c])});a.setChartSize()};b.prototype.reflow=function(a){var b=this,e=b.options.chart,c=b.renderTo,f=h(e.width)&&h(e.height),d=e.width||Z(c,"width");e=e.height||Z(c,"height");
c=a?a.target:t;delete b.pointer.chartPosition;if(!f&&!b.isPrinting&&d&&e&&(c===t||c===w)){if(d!==b.containerWidth||e!==b.containerHeight)L.clearTimeout(b.reflowTimeout),b.reflowTimeout=ca(function(){b.container&&b.setSize(void 0,void 0,!1)},a?100:0);b.containerWidth=d;b.containerHeight=e}};b.prototype.setReflow=function(a){var b=this;!1===a||this.unbindReflow?!1===a&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=F(t,"resize",function(a){b.options&&b.reflow(a)}),F(this,
"destroy",this.unbindReflow))};b.prototype.setSize=function(a,b,h){var e=this,c=e.renderer;e.isResizing+=1;k(h,e);h=c.globalAnimation;e.oldChartHeight=e.chartHeight;e.oldChartWidth=e.chartWidth;"undefined"!==typeof a&&(e.options.chart.width=a);"undefined"!==typeof b&&(e.options.chart.height=b);e.getChartSize();e.styledMode||(h?n:I)(e.container,{width:e.chartWidth+"px",height:e.chartHeight+"px"},h);e.setChartSize(!0);c.setSize(e.chartWidth,e.chartHeight,h);e.axes.forEach(function(a){a.isDirty=!0;a.setScale()});
e.isDirtyLegend=!0;e.isDirtyBox=!0;e.layOutTitles();e.getMargins();e.redraw(h);e.oldChartHeight=null;S(e,"resize");ca(function(){e&&S(e,"endResize",null,function(){--e.isResizing})},q(h).duration)};b.prototype.setChartSize=function(a){var b=this.inverted,h=this.renderer,e=this.chartWidth,c=this.chartHeight,f=this.options.chart,d=this.spacing,l=this.clipOffset,g,k,u,r;this.plotLeft=g=Math.round(this.plotLeft);this.plotTop=k=Math.round(this.plotTop);this.plotWidth=u=Math.max(0,Math.round(e-g-this.marginRight));
this.plotHeight=r=Math.max(0,Math.round(c-k-this.marginBottom));this.plotSizeX=b?r:u;this.plotSizeY=b?u:r;this.plotBorderWidth=f.plotBorderWidth||0;this.spacingBox=h.spacingBox={x:d[3],y:d[0],width:e-d[3]-d[1],height:c-d[0]-d[2]};this.plotBox=h.plotBox={x:g,y:k,width:u,height:r};b=2*Math.floor(this.plotBorderWidth/2);e=Math.ceil(Math.max(b,l[3])/2);c=Math.ceil(Math.max(b,l[0])/2);this.clipBox={x:e,y:c,width:Math.floor(this.plotSizeX-Math.max(b,l[1])/2-e),height:Math.max(0,Math.floor(this.plotSizeY-
Math.max(b,l[2])/2-c))};a||(this.axes.forEach(function(a){a.setAxisSize();a.setAxisTranslation()}),h.alignElements());S(this,"afterSetChartSize",{skipAxes:a})};b.prototype.resetMargins=function(){S(this,"resetMargins");var a=this,b=a.options.chart;["margin","spacing"].forEach(function(h){var e=b[h],c=ea(e)?e:[e,e,e,e];["Top","Right","Bottom","Left"].forEach(function(e,f){a[h][f]=T(b[h+e],c[f])})});e.forEach(function(b,h){a[b]=T(a.margin[h],a.spacing[h])});a.axisOffset=[0,0,0,0];a.clipOffset=[0,0,
0,0]};b.prototype.drawChartBox=function(){var a=this.options.chart,b=this.renderer,h=this.chartWidth,e=this.chartHeight,c=this.styledMode,f=this.plotBGImage,d=a.backgroundColor,l=a.plotBackgroundColor,g=a.plotBackgroundImage,k=this.plotLeft,u=this.plotTop,r=this.plotWidth,n=this.plotHeight,t=this.plotBox,m=this.clipRect,w=this.clipBox,p=this.chartBackground,R=this.plotBackground,I=this.plotBorder,q,y="animate";p||(this.chartBackground=p=b.rect().addClass("highcharts-background").add(),y="attr");if(c)var x=
q=p.strokeWidth();else{x=a.borderWidth||0;q=x+(a.shadow?8:0);d={fill:d||"none"};if(x||p["stroke-width"])d.stroke=a.borderColor,d["stroke-width"]=x;p.attr(d).shadow(a.shadow)}p[y]({x:q/2,y:q/2,width:h-q-x%2,height:e-q-x%2,r:a.borderRadius});y="animate";R||(y="attr",this.plotBackground=R=b.rect().addClass("highcharts-plot-background").add());R[y](t);c||(R.attr({fill:l||"none"}).shadow(a.plotShadow),g&&(f?(g!==f.attr("href")&&f.attr("href",g),f.animate(t)):this.plotBGImage=b.image(g,k,u,r,n).add()));
m?m.animate({width:w.width,height:w.height}):this.clipRect=b.clipRect(w);y="animate";I||(y="attr",this.plotBorder=I=b.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add());c||I.attr({stroke:a.plotBorderColor,"stroke-width":a.plotBorderWidth||0,fill:"none"});I[y](I.crisp({x:k,y:u,width:r,height:n},-I.strokeWidth()));this.isDirtyBox=!1;S(this,"afterDrawChartBox")};b.prototype.propFromSeries=function(){var a=this,b=a.options.chart,h=a.options.series,e,c,f;["inverted","angular","polar"].forEach(function(d){c=
E[b.type||b.defaultSeriesType];f=b[d]||c&&c.prototype[d];for(e=h&&h.length;!f&&e--;)(c=E[h[e].type])&&c.prototype[d]&&(f=!0);a[d]=f})};b.prototype.linkSeries=function(){var a=this,b=a.series;b.forEach(function(a){a.linkedSeries.length=0});b.forEach(function(b){var h=b.options.linkedTo;aa(h)&&(h=":previous"===h?a.series[b.index-1]:a.get(h))&&h.linkedParent!==b&&(h.linkedSeries.push(b),b.linkedParent=h,h.enabledDataSorting&&b.setDataSortingOptions(),b.visible=T(b.options.visible,h.options.visible,b.visible))});
S(this,"afterLinkSeries")};b.prototype.renderSeries=function(){this.series.forEach(function(a){a.translate();a.render()})};b.prototype.renderLabels=function(){var a=this,b=a.options.labels;b.items&&b.items.forEach(function(h){var e=y(b.style,h.style),c=U(e.left)+a.plotLeft,f=U(e.top)+a.plotTop+12;delete e.left;delete e.top;a.renderer.text(h.html,c,f).attr({zIndex:2}).css(e).add()})};b.prototype.render=function(){var a=this.axes,b=this.colorAxis,h=this.renderer,e=this.options,c=function(a){a.forEach(function(a){a.visible&&
a.render()})},f=0;this.setTitle();this.legend=new D(this,e.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();e=this.plotWidth;a.some(function(a){if(a.horiz&&a.visible&&a.options.labels.enabled&&a.series.length)return f=21,!0});var d=this.plotHeight=Math.max(this.plotHeight-f,0);a.forEach(function(a){a.setScale()});this.getAxisMargins();var l=1.1<e/this.plotWidth,g=1.05<d/this.plotHeight;if(l||g)a.forEach(function(a){(a.horiz&&l||!a.horiz&&g)&&a.setTickInterval(!0)}),
this.getMargins();this.drawChartBox();this.hasCartesianSeries?c(a):b&&b.length&&c(b);this.seriesGroup||(this.seriesGroup=h.g("series-group").attr({zIndex:3}).add());this.renderSeries();this.renderLabels();this.addCredits();this.setResponsive&&this.setResponsive();this.hasRendered=!0};b.prototype.addCredits=function(a){var b=this,h=Y(!0,this.options.credits,a);h.enabled&&!this.credits&&(this.credits=this.renderer.text(h.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){h.href&&
(t.location.href=h.href)}).attr({align:h.position.align,zIndex:8}),b.styledMode||this.credits.css(h.style),this.credits.add().align(h.position),this.credits.update=function(a){b.credits=b.credits.destroy();b.addCredits(a)})};b.prototype.destroy=function(){var a=this,b=a.axes,h=a.series,e=a.container,c=e&&e.parentNode,f;S(a,"destroy");a.renderer.forExport?O(J,a):J[a.index]=void 0;z.chartCount--;a.renderTo.removeAttribute("data-highcharts-chart");ba(a);for(f=b.length;f--;)b[f]=b[f].destroy();this.scroller&&
this.scroller.destroy&&this.scroller.destroy();for(f=h.length;f--;)h[f]=h[f].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(b){var h=a[b];h&&h.destroy&&(a[b]=h.destroy())});e&&(e.innerHTML="",ba(e),c&&u(e));da(a,function(b,h){delete a[h]})};b.prototype.firstRender=function(){var a=this,b=a.options;if(!a.isReadyToRender||a.isReadyToRender()){a.getContainer();
a.resetMargins();a.setChartSize();a.propFromSeries();a.getAxes();(ha(b.series)?b.series:[]).forEach(function(b){a.initSeries(b)});a.linkSeries();a.setSeriesData();S(a,"beforeRender");d&&(H.isRequired()?a.pointer=new H(a,b):a.pointer=new d(a,b));a.render();a.pointer.getChartPosition();if(!a.renderer.imgCount&&!a.hasLoaded)a.onload();a.temporaryDisplay(!0)}};b.prototype.onload=function(){this.callbacks.concat([this.callback]).forEach(function(a){a&&"undefined"!==typeof this.index&&a.apply(this,[this])},
this);S(this,"load");S(this,"render");h(this.index)&&this.setReflow(this.options.chart.reflow);this.hasLoaded=!0};b.prototype.addSeries=function(a,b,h){var e=this,c;a&&(b=T(b,!0),S(e,"addSeries",{options:a},function(){c=e.initSeries(a);e.isDirtyLegend=!0;e.linkSeries();c.enabledDataSorting&&c.setData(a.data,!1);S(e,"afterAddSeries",{series:c});b&&e.redraw(h)}));return c};b.prototype.addAxis=function(a,b,h,e){return this.createAxis(b?"xAxis":"yAxis",{axis:a,redraw:h,animation:e})};b.prototype.addColorAxis=
function(a,b,h){return this.createAxis("colorAxis",{axis:a,redraw:b,animation:h})};b.prototype.createAxis=function(a,b){var h="colorAxis"===a,e=b.redraw,c=b.animation;a=Y(b.axis,{index:this[a].length,isX:"xAxis"===a});a=h?new z.ColorAxis(this,a):new v(this,a);h&&(this.isDirtyLegend=!0,this.axes.forEach(function(a){a.series=[]}),this.series.forEach(function(a){a.bindAxes();a.isDirtyData=!0}));T(e,!0)&&this.redraw(c);return a};b.prototype.showLoading=function(a){var b=this,h=b.options,e=h.loading,c=
function(){d&&I(d,{left:b.plotLeft+"px",top:b.plotTop+"px",width:b.plotWidth+"px",height:b.plotHeight+"px"})},d=b.loadingDiv,l=b.loadingSpan;d||(b.loadingDiv=d=f("div",{className:"highcharts-loading highcharts-loading-hidden"},null,b.container));l||(b.loadingSpan=l=f("span",{className:"highcharts-loading-inner"},null,d),F(b,"redraw",c));d.className="highcharts-loading";x.setElementHTML(l,T(a,h.lang.loading,""));b.styledMode||(I(d,y(e.style,{zIndex:10})),I(l,e.labelStyle),b.loadingShown||(I(d,{opacity:0,
display:""}),n(d,{opacity:e.style.opacity||.5},{duration:e.showDuration||0})));b.loadingShown=!0;c()};b.prototype.hideLoading=function(){var a=this.options,b=this.loadingDiv;b&&(b.className="highcharts-loading highcharts-loading-hidden",this.styledMode||n(b,{opacity:0},{duration:a.loading.hideDuration||100,complete:function(){I(b,{display:"none"})}}));this.loadingShown=!1};b.prototype.update=function(a,b,e,c){var f=this,d={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},
k=a.isResponsiveOptions,u=[],n,t;S(f,"update",{options:a});k||f.setResponsive(!1,!0);a=l(a,f.options);f.userOptions=Y(f.userOptions,a);var m=a.chart;if(m){Y(!0,f.options.chart,m);"className"in m&&f.setClassName(m.className);"reflow"in m&&f.setReflow(m.reflow);if("inverted"in m||"polar"in m||"type"in m){f.propFromSeries();var w=!0}"alignTicks"in m&&(w=!0);"events"in m&&N(this,m);da(m,function(a,b){-1!==f.propsRequireUpdateSeries.indexOf("chart."+b)&&(n=!0);-1!==f.propsRequireDirtyBox.indexOf(b)&&(f.isDirtyBox=
!0);-1!==f.propsRequireReflow.indexOf(b)&&(k?f.isDirtyBox=!0:t=!0)});!f.styledMode&&"style"in m&&f.renderer.setStyle(m.style)}!f.styledMode&&a.colors&&(this.options.colors=a.colors);a.time&&(this.time===r&&(this.time=new g(a.time)),Y(!0,f.options.time,a.time));da(a,function(b,h){if(f[h]&&"function"===typeof f[h].update)f[h].update(b,!1);else if("function"===typeof f[d[h]])f[d[h]](b);else"colors"!==h&&-1===f.collectionsWithUpdate.indexOf(h)&&Y(!0,f.options[h],a[h]);"chart"!==h&&-1!==f.propsRequireUpdateSeries.indexOf(h)&&
(n=!0)});this.collectionsWithUpdate.forEach(function(b){if(a[b]){var c=[];f[b].forEach(function(a,b){a.options.isInternal||c.push(T(a.options.index,b))});W(a[b]).forEach(function(a,d){var l=h(a.id),g;l&&(g=f.get(a.id));!g&&f[b]&&(g=f[b][c?c[d]:d])&&l&&h(g.options.id)&&(g=void 0);g&&g.coll===b&&(g.update(a,!1),e&&(g.touched=!0));!g&&e&&f.collectionsWithInit[b]&&(f.collectionsWithInit[b][0].apply(f,[a].concat(f.collectionsWithInit[b][1]||[]).concat([!1])).touched=!0)});e&&f[b].forEach(function(a){a.touched||
a.options.isInternal?delete a.touched:u.push(a)})}});u.forEach(function(a){a.chart&&a.remove(!1)});w&&f.axes.forEach(function(a){a.update({},!1)});n&&f.getSeriesOrderByLinks().forEach(function(a){a.chart&&a.update({},!1)},this);w=m&&m.width;m=m&&(aa(m.height)?fa(m.height,w||f.chartWidth):m.height);t||R(w)&&w!==f.chartWidth||R(m)&&m!==f.chartHeight?f.setSize(w,m,c):T(b,!0)&&f.redraw(c);S(f,"afterUpdate",{options:a,redraw:b,animation:c})};b.prototype.setSubtitle=function(a,b){this.applyDescription("subtitle",
a);this.layOutTitles(b)};b.prototype.setCaption=function(a,b){this.applyDescription("caption",a);this.layOutTitles(b)};b.prototype.showResetZoom=function(){function b(){h.zoomOut()}var h=this,e=a.lang,c=h.options.chart.resetZoomButton,f=c.theme,d=f.states,l="chart"===c.relativeTo||"spacingBox"===c.relativeTo?null:"scrollablePlotBox";S(this,"beforeShowResetZoom",null,function(){h.resetZoomButton=h.renderer.button(e.resetZoom,null,null,b,f,d&&d.hover).attr({align:c.position.align,title:e.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(c.position,
!1,l)});S(this,"afterShowResetZoom")};b.prototype.zoomOut=function(){S(this,"selection",{resetSelection:!0},this.zoom)};b.prototype.zoom=function(a){var b=this,e=b.pointer,c=b.inverted?e.mouseDownX:e.mouseDownY,f=!1,d;!a||a.resetSelection?(b.axes.forEach(function(a){d=a.zoom()}),e.initiated=!1):a.xAxis.concat(a.yAxis).forEach(function(a){var l=a.axis,g=b.inverted?l.left:l.top,k=b.inverted?g+l.width:g+l.height,u=l.isXAxis,r=!1;if(!u&&c>=g&&c<=k||u||!h(c))r=!0;e[u?"zoomX":"zoomY"]&&r&&(d=l.zoom(a.min,
a.max),l.displayBtn&&(f=!0))});var l=b.resetZoomButton;f&&!l?b.showResetZoom():!f&&ea(l)&&(b.resetZoomButton=l.destroy());d&&b.redraw(T(b.options.chart.animation,a&&a.animation,100>b.pointCount))};b.prototype.pan=function(a,b){var h=this,e=h.hoverPoints;b="object"===typeof b?b:{enabled:b,type:"x"};var c=h.options.chart,f=h.options.mapNavigation&&h.options.mapNavigation.enabled;c&&c.panning&&(c.panning=b);var d=b.type,l;S(this,"pan",{originalEvent:a},function(){e&&e.forEach(function(a){a.setState()});
var b=h.xAxis;"xy"===d?b=b.concat(h.yAxis):"y"===d&&(b=h.yAxis);var c={};b.forEach(function(b){if(b.options.panningEnabled&&!b.options.isInternal){var e=b.horiz,g=a[e?"chartX":"chartY"];e=e?"mouseDownX":"mouseDownY";var k=h[e],u=b.minPointOffset||0,r=b.reversed&&!h.inverted||!b.reversed&&h.inverted?-1:1,n=b.getExtremes(),m=b.toValue(k-g,!0)+u*r,t=b.toValue(k+b.len-g,!0)-(u*r||b.isXAxis&&b.pointRangePadding||0),w=t<m;r=b.hasVerticalPanning();k=w?t:m;m=w?m:t;var p=b.panningState;!r||b.isXAxis||p&&!p.isDirty||
b.series.forEach(function(a){var b=a.getProcessedData(!0);b=a.getExtremes(b.yData,!0);p||(p={startMin:Number.MAX_VALUE,startMax:-Number.MAX_VALUE});R(b.dataMin)&&R(b.dataMax)&&(p.startMin=Math.min(T(a.options.threshold,Infinity),b.dataMin,p.startMin),p.startMax=Math.max(T(a.options.threshold,-Infinity),b.dataMax,p.startMax))});r=Math.min(T(p&&p.startMin,n.dataMin),u?n.min:b.toValue(b.toPixels(n.min)-b.minPixelPadding));t=Math.max(T(p&&p.startMax,n.dataMax),u?n.max:b.toValue(b.toPixels(n.max)+b.minPixelPadding));
b.panningState=p;b.isOrdinal||(u=r-k,0<u&&(m+=u,k=r),u=m-t,0<u&&(m=t,k-=u),b.series.length&&k!==n.min&&m!==n.max&&k>=r&&m<=t&&(b.setExtremes(k,m,!1,!1,{trigger:"pan"}),h.resetZoomButton||f||k===r||m===t||!d.match("y")||(h.showResetZoom(),b.displayBtn=!1),l=!0),c[e]=g)}});da(c,function(a,b){h[b]=a});l&&h.redraw(!1);I(h.container,{cursor:"move"})})};return b}();y(c.prototype,{callbacks:[],collectionsWithInit:{xAxis:[c.prototype.addAxis,[!0]],yAxis:[c.prototype.addAxis,[!1]],series:[c.prototype.addSeries]},
collectionsWithUpdate:["xAxis","yAxis","zAxis","series"],propsRequireDirtyBox:"backgroundColor borderColor borderWidth borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow".split(" "),propsRequireReflow:"margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft".split(" "),propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip".split(" ")});
"";return c});P(c,"Mixins/LegendSymbol.js",[c["Core/Globals.js"],c["Core/Utilities.js"]],function(c,v){var q=v.merge,C=v.pick;return c.LegendSymbolMixin={drawRectangle:function(c,q){var v=c.symbolHeight,z=c.options.squareSymbol;q.legendSymbol=this.chart.renderer.rect(z?(c.symbolWidth-v)/2:0,c.baseline-v+1,z?v:c.symbolWidth,v,C(c.options.symbolRadius,v/2)).addClass("highcharts-point").attr({zIndex:3}).add(q.legendGroup)},drawLineMarker:function(c){var v=this.options,z=v.marker,K=c.symbolWidth,p=c.symbolHeight,
d=p/2,m=this.chart.renderer,b=this.legendGroup;c=c.baseline-Math.round(.3*c.fontMetrics.b);var g={};this.chart.styledMode||(g={"stroke-width":v.lineWidth||0},v.dashStyle&&(g.dashstyle=v.dashStyle));this.legendLine=m.path([["M",0,c],["L",K,c]]).addClass("highcharts-graph").attr(g).add(b);z&&!1!==z.enabled&&K&&(v=Math.min(C(z.radius,d),d),0===this.symbol.indexOf("url")&&(z=q(z,{width:p,height:p}),v=0),this.legendSymbol=z=m.symbol(this.symbol,K/2-v,c-v,2*v,2*v,z).addClass("highcharts-point").add(b),
z.isMarker=!0)}}});P(c,"Core/Series/Series.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Foundation.js"],c["Core/Globals.js"],c["Mixins/LegendSymbol.js"],c["Core/DefaultOptions.js"],c["Core/Color/Palette.js"],c["Core/Series/Point.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Renderer/SVG/SVGElement.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H,K,p,d){var m=c.animObject,b=c.setAnimation,g=v.registerEventOptions,q=A.hasTouch,x=A.svg,n=A.win,B=z.defaultOptions,k=K.seriesTypes,M=d.addEvent,
N=d.arrayMax,J=d.arrayMin,w=d.clamp,e=d.cleanRecursively,t=d.correctFloat,a=d.defined,r=d.erase,E=d.error,F=d.extend,G=d.find,l=d.fireEvent,f=d.getNestedProperty,I=d.isArray,h=d.isNumber,u=d.isString,O=d.merge,X=d.objectEach,y=d.pick,Q=d.removeEvent,S=d.splat,Z=d.syncTimeout;c=function(){function c(){this.zones=this.yAxis=this.xAxis=this.userOptions=this.tooltipOptions=this.processedYData=this.processedXData=this.points=this.options=this.linkedSeries=this.index=this.eventsToUnbind=this.eventOptions=
this.data=this.chart=this._i=void 0}c.prototype.init=function(a,b){l(this,"init",{options:b});var c=this,h=a.series;this.eventsToUnbind=[];c.chart=a;c.options=c.setOptions(b);b=c.options;c.linkedSeries=[];c.bindAxes();F(c,{name:b.name,state:"",visible:!1!==b.visible,selected:!0===b.selected});g(this,b);var e=b.events;if(e&&e.click||b.point&&b.point.events&&b.point.events.click||b.allowPointSelect)a.runTrackerClick=!0;c.getColor();c.getSymbol();c.parallelArrays.forEach(function(a){c[a+"Data"]||(c[a+
"Data"]=[])});c.isCartesian&&(a.hasCartesianSeries=!0);var f;h.length&&(f=h[h.length-1]);c._i=y(f&&f._i,-1)+1;c.opacity=c.options.opacity;a.orderSeries(this.insert(h));b.dataSorting&&b.dataSorting.enabled?c.setDataSortingOptions():c.points||c.data||c.setData(b.data,!1);l(this,"afterInit")};c.prototype.is=function(a){return k[a]&&this instanceof k[a]};c.prototype.insert=function(a){var b=this.options.index,c;if(h(b)){for(c=a.length;c--;)if(b>=y(a[c].options.index,a[c]._i)){a.splice(c+1,0,this);break}-1===
c&&a.unshift(this);c+=1}else a.push(this);return y(c,a.length-1)};c.prototype.bindAxes=function(){var a=this,b=a.options,c=a.chart,h;l(this,"bindAxes",null,function(){(a.axisTypes||[]).forEach(function(e){var f=0;c[e].forEach(function(c){h=c.options;if(b[e]===f&&!h.isInternal||"undefined"!==typeof b[e]&&b[e]===h.id||"undefined"===typeof b[e]&&0===h.index)a.insert(c.series),a[e]=c,c.isDirty=!0;h.isInternal||f++});a[e]||a.optionalAxis===e||E(18,!0,c)})});l(this,"afterBindAxes")};c.prototype.updateParallelArrays=
function(a,b){var c=a.series,e=arguments,f=h(b)?function(h){var e="y"===h&&c.toYData?c.toYData(a):a[h];c[h+"Data"][b]=e}:function(a){Array.prototype[b].apply(c[a+"Data"],Array.prototype.slice.call(e,2))};c.parallelArrays.forEach(f)};c.prototype.hasData=function(){return this.visible&&"undefined"!==typeof this.dataMax&&"undefined"!==typeof this.dataMin||this.visible&&this.yData&&0<this.yData.length};c.prototype.autoIncrement=function(){var a=this.options,b=this.xIncrement,c,h=a.pointIntervalUnit,e=
this.chart.time;b=y(b,a.pointStart,0);this.pointInterval=c=y(this.pointInterval,a.pointInterval,1);h&&(a=new e.Date(b),"day"===h?e.set("Date",a,e.get("Date",a)+c):"month"===h?e.set("Month",a,e.get("Month",a)+c):"year"===h&&e.set("FullYear",a,e.get("FullYear",a)+c),c=a.getTime()-b);this.xIncrement=b+c;return b};c.prototype.setDataSortingOptions=function(){var b=this.options;F(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1});a(b.pointRange)||(b.pointRange=1)};c.prototype.setOptions=
function(b){var c=this.chart,h=c.options,e=h.plotOptions,f=c.userOptions||{};b=O(b);c=c.styledMode;var d={plotOptions:e,userOptions:b};l(this,"setOptions",d);var g=d.plotOptions[this.type],k=f.plotOptions||{};this.userOptions=d.userOptions;f=O(g,e.series,f.plotOptions&&f.plotOptions[this.type],b);this.tooltipOptions=O(B.tooltip,B.plotOptions.series&&B.plotOptions.series.tooltip,B.plotOptions[this.type].tooltip,h.tooltip.userOptions,e.series&&e.series.tooltip,e[this.type].tooltip,b.tooltip);this.stickyTracking=
y(b.stickyTracking,k[this.type]&&k[this.type].stickyTracking,k.series&&k.series.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:f.stickyTracking);null===g.marker&&delete f.marker;this.zoneAxis=f.zoneAxis;h=this.zones=(f.zones||[]).slice();!f.negativeColor&&!f.negativeFillColor||f.zones||(e={value:f[this.zoneAxis+"Threshold"]||f.threshold||0,className:"highcharts-negative"},c||(e.color=f.negativeColor,e.fillColor=f.negativeFillColor),h.push(e));h.length&&a(h[h.length-1].value)&&
h.push(c?{}:{color:this.color,fillColor:this.fillColor});l(this,"afterSetOptions",{options:f});return f};c.prototype.getName=function(){return y(this.options.name,"Series "+(this.index+1))};c.prototype.getCyclic=function(b,c,h){var e=this.chart,f=this.userOptions,d=b+"Index",l=b+"Counter",g=h?h.length:y(e.options.chart[b+"Count"],e[b+"Count"]);if(!c){var k=y(f[d],f["_"+d]);a(k)||(e.series.length||(e[l]=0),f["_"+d]=k=e[l]%g,e[l]+=1);h&&(c=h[k])}"undefined"!==typeof k&&(this[d]=k);this[b]=c};c.prototype.getColor=
function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color=D.neutralColor20:this.getCyclic("color",this.options.color||B.plotOptions[this.type].color,this.chart.options.colors)};c.prototype.getPointsCollection=function(){return(this.hasGroupedData?this.points:this.data)||[]};c.prototype.getSymbol=function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)};c.prototype.findPointIndex=function(a,b){var c=a.id,e=a.x,f=this.points,d,l=this.options.dataSorting;
if(c)var g=this.chart.get(c);else if(this.linkedParent||this.enabledDataSorting){var k=l&&l.matchByName?"name":"index";g=G(f,function(b){return!b.touched&&b[k]===a[k]});if(!g)return}if(g){var u=g&&g.index;"undefined"!==typeof u&&(d=!0)}"undefined"===typeof u&&h(e)&&(u=this.xData.indexOf(e,b));-1!==u&&"undefined"!==typeof u&&this.cropped&&(u=u>=this.cropStart?u-this.cropStart:u);!d&&f[u]&&f[u].touched&&(u=void 0);return u};c.prototype.updateData=function(b,c){var e=this.options,f=e.dataSorting,d=this.points,
l=[],g,k,u,r=this.requireSorting,n=b.length===d.length,m=!0;this.xIncrement=null;b.forEach(function(b,c){var k=a(b)&&this.pointClass.prototype.optionsToObject.call({series:this},b)||{};var m=k.x;if(k.id||h(m)){if(m=this.findPointIndex(k,u),-1===m||"undefined"===typeof m?l.push(b):d[m]&&b!==e.data[m]?(d[m].update(b,!1,null,!1),d[m].touched=!0,r&&(u=m+1)):d[m]&&(d[m].touched=!0),!n||c!==m||f&&f.enabled||this.hasDerivedData)g=!0}else l.push(b)},this);if(g)for(b=d.length;b--;)(k=d[b])&&!k.touched&&k.remove&&
k.remove(!1,c);else!n||f&&f.enabled?m=!1:(b.forEach(function(a,b){a!==d[b].y&&d[b].update&&d[b].update(a,!1,null,!1)}),l.length=0);d.forEach(function(a){a&&(a.touched=!1)});if(!m)return!1;l.forEach(function(a){this.addPoint(a,!1,null,null,!1)},this);null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=N(this.xData),this.autoIncrement());return!0};c.prototype.setData=function(a,b,c,e){var f=this,d=f.points,l=d&&d.length||0,g,k=f.options,r=f.chart,n=k.dataSorting,m=null,t=f.xAxis;
m=k.turboThreshold;var w=this.xData,p=this.yData,q=(g=f.pointArrayMap)&&g.length,x=k.keys,O=0,R=1,F;a=a||[];g=a.length;b=y(b,!0);n&&n.enabled&&(a=this.sortData(a));!1!==e&&g&&l&&!f.cropped&&!f.hasGroupedData&&f.visible&&!f.isSeriesBoosting&&(F=this.updateData(a,c));if(!F){f.xIncrement=null;f.colorCounter=0;this.parallelArrays.forEach(function(a){f[a+"Data"].length=0});if(m&&g>m)if(m=f.getFirstValidPoint(a),h(m))for(c=0;c<g;c++)w[c]=this.autoIncrement(),p[c]=a[c];else if(I(m))if(q)for(c=0;c<g;c++)e=
a[c],w[c]=e[0],p[c]=e.slice(1,q+1);else for(x&&(O=x.indexOf("x"),R=x.indexOf("y"),O=0<=O?O:0,R=0<=R?R:1),c=0;c<g;c++)e=a[c],w[c]=e[O],p[c]=e[R];else E(12,!1,r);else for(c=0;c<g;c++)"undefined"!==typeof a[c]&&(e={series:f},f.pointClass.prototype.applyOptions.apply(e,[a[c]]),f.updateParallelArrays(e,c));p&&u(p[0])&&E(14,!0,r);f.data=[];f.options.data=f.userOptions.data=a;for(c=l;c--;)d[c]&&d[c].destroy&&d[c].destroy();t&&(t.minRange=t.userMinRange);f.isDirty=r.isDirtyBox=!0;f.isDirtyData=!!d;c=!1}"point"===
k.legendType&&(this.processData(),this.generatePoints());b&&r.redraw(c)};c.prototype.sortData=function(b){var c=this,h=c.options.dataSorting.sortKey||"y",e=function(b,c){return a(c)&&b.pointClass.prototype.optionsToObject.call({series:b},c)||{}};b.forEach(function(a,h){b[h]=e(c,a);b[h].index=h},this);b.concat().sort(function(a,b){a=f(h,a);b=f(h,b);return b<a?-1:b>a?1:0}).forEach(function(a,b){a.x=b},this);c.linkedSeries&&c.linkedSeries.forEach(function(a){var c=a.options,h=c.data;c.dataSorting&&c.dataSorting.enabled||
!h||(h.forEach(function(c,f){h[f]=e(a,c);b[f]&&(h[f].x=b[f].x,h[f].index=f)}),a.setData(h,!1))});return b};c.prototype.getProcessedData=function(a){var b=this.xData,c=this.yData,h=b.length;var e=0;var f=this.xAxis,d=this.options;var l=d.cropThreshold;var g=a||this.getExtremesFromAll||d.getExtremesFromAll,k=this.isCartesian;a=f&&f.val2lin;d=!(!f||!f.logarithmic);var u=this.requireSorting;if(f){f=f.getExtremes();var r=f.min;var n=f.max}if(k&&this.sorted&&!g&&(!l||h>l||this.forceCrop))if(b[h-1]<r||b[0]>
n)b=[],c=[];else if(this.yData&&(b[0]<r||b[h-1]>n)){e=this.cropData(this.xData,this.yData,r,n);b=e.xData;c=e.yData;e=e.start;var m=!0}for(l=b.length||1;--l;)if(h=d?a(b[l])-a(b[l-1]):b[l]-b[l-1],0<h&&("undefined"===typeof t||h<t))var t=h;else 0>h&&u&&(E(15,!1,this.chart),u=!1);return{xData:b,yData:c,cropped:m,cropStart:e,closestPointRange:t}};c.prototype.processData=function(a){var b=this.xAxis;if(this.isCartesian&&!this.isDirty&&!b.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};c.prototype.cropData=function(a,b,c,h,e){var f=a.length,d=0,l=f,g;e=y(e,this.cropShoulder);for(g=0;g<f;g++)if(a[g]>=c){d=Math.max(0,g-e);break}for(c=g;c<f;c++)if(a[c]>h){l=c+e;break}return{xData:a.slice(d,l),yData:b.slice(d,l),start:d,end:l}};c.prototype.generatePoints=function(){var a=this.options,b=a.data,c=this.data,h,e=this.processedXData,
f=this.processedYData,d=this.pointClass,g=e.length,k=this.cropStart||0,u=this.hasGroupedData,r=a.keys,n=[],m;a=a.dataGrouping&&a.dataGrouping.groupAll?k:0;c||u||(c=[],c.length=b.length,c=this.data=c);r&&u&&(this.options.keys=!1);for(m=0;m<g;m++){var t=k+m;if(u){var p=(new d).init(this,[e[m]].concat(S(f[m])));p.dataGroup=this.groupMap[a+m];p.dataGroup.options&&(p.options=p.dataGroup.options,F(p,p.dataGroup.options),delete p.dataLabels)}else(p=c[t])||"undefined"===typeof b[t]||(c[t]=p=(new d).init(this,
b[t],e[m]));p&&(p.index=u?a+m:t,n[m]=p)}this.options.keys=r;if(c&&(g!==(h=c.length)||u))for(m=0;m<h;m++)m!==k||u||(m+=g),c[m]&&(c[m].destroyElements(),c[m].plotX=void 0);this.data=c;this.points=n;l(this,"afterGeneratePoints")};c.prototype.getXExtremes=function(a){return{min:J(a),max:N(a)}};c.prototype.getExtremes=function(a,b){var c=this.xAxis,e=this.yAxis,f=this.processedXData||this.xData,d=[],g=0,k=0;var u=0;var r=this.requireSorting?this.cropShoulder:0,n=e?e.positiveValuesOnly:!1,m;a=a||this.stackedYData||
this.processedYData||[];e=a.length;c&&(u=c.getExtremes(),k=u.min,u=u.max);for(m=0;m<e;m++){var t=f[m];var p=a[m];var w=(h(p)||I(p))&&(p.length||0<p||!n);t=b||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!c||(f[m+r]||t)>=k&&(f[m-r]||t)<=u;if(w&&t)if(w=p.length)for(;w--;)h(p[w])&&(d[g++]=p[w]);else d[g++]=p}a={dataMin:J(d),dataMax:N(d)};l(this,"afterGetExtremes",{dataExtremes:a});return a};c.prototype.applyExtremes=function(){var a=this.getExtremes();this.dataMin=a.dataMin;
this.dataMax=a.dataMax;return a};c.prototype.getFirstValidPoint=function(a){for(var b=null,c=a.length,h=0;null===b&&h<c;)b=a[h],h++;return b};c.prototype.translate=function(){this.processedXData||this.processData();this.generatePoints();var b=this.options,c=b.stacking,e=this.xAxis,f=e.categories,d=this.enabledDataSorting,g=this.yAxis,k=this.points,u=k.length,r=!!this.modifyValue,n,m=this.pointPlacementToXValue(),p=!!m,q=b.threshold,x=b.startFromThreshold?q:0,O,F=this.zoneAxis||"y",B=Number.MAX_VALUE;
for(n=0;n<u;n++){var G=k[n],E=G.x,J=G.y,L=G.low,M=c&&g.stacking&&g.stacking.stacks[(this.negStacks&&J<(x?0:q)?"-":"")+this.stackKey],N=void 0,v=void 0;if(g.positiveValuesOnly&&!g.validatePositiveValue(J)||e.positiveValuesOnly&&!e.validatePositiveValue(E))G.isNull=!0;G.plotX=O=t(w(e.translate(E,0,0,0,1,m,"flags"===this.type),-1E5,1E5));if(c&&this.visible&&M&&M[E]){var Q=this.getStackIndicator(Q,E,this.index);G.isNull||(N=M[E],v=N.points[Q.key])}I(v)&&(L=v[0],J=v[1],L===x&&Q.key===M[E].base&&(L=y(h(q)&&
q,g.min)),g.positiveValuesOnly&&0>=L&&(L=null),G.total=G.stackTotal=N.total,G.percentage=N.total&&G.y/N.total*100,G.stackY=J,this.irregularWidths||N.setOffset(this.pointXOffset||0,this.barW||0));G.yBottom=a(L)?w(g.translate(L,0,1,0,1),-1E5,1E5):null;r&&(J=this.modifyValue(J,G));G.plotY=void 0;h(J)&&(J=g.translate(J,!1,!0,!1,!0),"undefined"!==typeof J&&(G.plotY=w(J,-1E5,1E5)));G.isInside=this.isPointInside(G);G.clientX=p?t(e.translate(E,0,0,0,1,m)):O;G.negative=G[F]<(b[F+"Threshold"]||q||0);G.category=
f&&"undefined"!==typeof f[G.x]?f[G.x]:G.x;if(!G.isNull&&!1!==G.visible){"undefined"!==typeof z&&(B=Math.min(B,Math.abs(O-z)));var z=O}G.zone=this.zones.length&&G.getZone();!G.graphic&&this.group&&d&&(G.isNew=!0)}this.closestPointRangePx=B;l(this,"afterTranslate")};c.prototype.getValidPoints=function(a,b,c){var h=this.chart;return(a||this.points||[]).filter(function(a){return b&&!h.isInsidePlot(a.plotX,a.plotY,{inverted:h.inverted})?!1:!1!==a.visible&&(c||!a.isNull)})};c.prototype.getClipBox=function(a,
b){var c=this.options,h=this.chart,e=h.inverted,f=this.xAxis,d=f&&this.yAxis,l=h.options.chart.scrollablePlotArea||{};a&&!1===c.clip&&d?a=e?{y:-h.chartWidth+d.len+d.pos,height:h.chartWidth,width:h.chartHeight,x:-h.chartHeight+f.len+f.pos}:{y:-d.pos,height:h.chartHeight,width:h.chartWidth,x:-f.pos}:(a=this.clipBox||h.clipBox,b&&(a.width=h.plotSizeX,a.x=(h.scrollablePixelsX||0)*(l.scrollPositionX||0)));return b?{width:a.width,x:a.x}:a};c.prototype.getSharedClipKey=function(a){if(this.sharedClipKey)return this.sharedClipKey;
var b=[a&&a.duration,a&&a.easing,a&&a.defer,this.getClipBox(a).height,this.options.xAxis,this.options.yAxis].join();if(!1!==this.options.clip||a)this.sharedClipKey=b;return b};c.prototype.setClip=function(a){var b=this.chart,c=this.options,h=b.renderer,e=b.inverted,f=this.clipBox,d=this.getClipBox(a),l=this.getSharedClipKey(a),g=b.sharedClips[l],k=b.sharedClips[l+"m"];a&&(d.width=0,e&&(d.x=b.plotHeight+(!1!==c.clip?0:b.plotTop)));g?b.hasLoaded||g.attr(d):(a&&(b.sharedClips[l+"m"]=k=h.clipRect(e?(b.plotSizeX||
0)+99:-99,e?-b.plotLeft:-b.plotTop,99,e?b.chartWidth:b.chartHeight)),b.sharedClips[l]=g=h.clipRect(d),g.count={length:0});a&&!g.count[this.index]&&(g.count[this.index]=!0,g.count.length+=1);if(!1!==c.clip||a)this.group.clip(a||f?g:b.clipRect),this.markerGroup.clip(k);a||(g.count[this.index]&&(delete g.count[this.index],--g.count.length),0===g.count.length&&(f||(b.sharedClips[l]=g.destroy()),k&&(b.sharedClips[l+"m"]=k.destroy())))};c.prototype.animate=function(a){var b=this.chart,c=m(this.options.animation),
h=this.sharedClipKey;if(a)this.setClip(c);else if(h){a=b.sharedClips[h];h=b.sharedClips[h+"m"];var e=this.getClipBox(c,!0);a&&a.animate(e,c);h&&h.animate({width:e.width+99,x:e.x-(b.inverted?0:99)},c)}};c.prototype.afterAnimate=function(){this.setClip();l(this,"afterAnimate");this.finishedAnimating=!0};c.prototype.drawPoints=function(){var a=this.points,b=this.chart,c,h,e=this.options.marker,f=this[this.specialGroup]||this.markerGroup,d=this.xAxis,l=y(e.enabled,!d||d.isRadial?!0:null,this.closestPointRangePx>=
e.enabledThreshold*e.radius);if(!1!==e.enabled||this._hasPointMarkers)for(c=0;c<a.length;c++){var g=a[c];var k=(h=g.graphic)?"animate":"attr";var u=g.marker||{};var r=!!g.marker;if((l&&"undefined"===typeof u.enabled||u.enabled)&&!g.isNull&&!1!==g.visible){var n=y(u.symbol,this.symbol,"rect");var m=this.markerAttribs(g,g.selected&&"select");this.enabledDataSorting&&(g.startXPos=d.reversed?-(m.width||0):d.width);var t=!1!==g.isInside;h?h[t?"show":"hide"](t).animate(m):t&&(0<(m.width||0)||g.hasImage)&&
(g.graphic=h=b.renderer.symbol(n,m.x,m.y,m.width,m.height,r?u:e).add(f),this.enabledDataSorting&&b.hasRendered&&(h.attr({x:g.startXPos}),k="animate"));h&&"animate"===k&&h[t?"show":"hide"](t).animate(m);if(h&&!b.styledMode)h[k](this.pointAttribs(g,g.selected&&"select"));h&&h.addClass(g.getClassName(),!0)}else h&&(g.graphic=h.destroy())}};c.prototype.markerAttribs=function(a,b){var c=this.options,h=c.marker,e=a.marker||{},f=e.symbol||h.symbol,d=y(e.radius,h.radius);b&&(h=h.states[b],b=e.states&&e.states[b],
d=y(b&&b.radius,h&&h.radius,d+(h&&h.radiusPlus||0)));a.hasImage=f&&0===f.indexOf("url");a.hasImage&&(d=0);a={x:c.crisp?Math.floor(a.plotX-d):a.plotX-d,y:a.plotY-d};d&&(a.width=a.height=2*d);return a};c.prototype.pointAttribs=function(a,b){var c=this.options.marker,h=a&&a.options,e=h&&h.marker||{},f=this.color,d=h&&h.color,l=a&&a.color;h=y(e.lineWidth,c.lineWidth);var g=a&&a.zone&&a.zone.color;a=1;f=d||g||l||f;d=e.fillColor||c.fillColor||f;f=e.lineColor||c.lineColor||f;b=b||"normal";c=c.states[b];
b=e.states&&e.states[b]||{};h=y(b.lineWidth,c.lineWidth,h+y(b.lineWidthPlus,c.lineWidthPlus,0));d=b.fillColor||c.fillColor||d;f=b.lineColor||c.lineColor||f;a=y(b.opacity,c.opacity,a);return{stroke:f,"stroke-width":h,fill:d,opacity:a}};c.prototype.destroy=function(a){var b=this,c=b.chart,h=/AppleWebKit\/533/.test(n.navigator.userAgent),e,f,g=b.data||[],k,u;l(b,"destroy");this.removeEvents(a);(b.axisTypes||[]).forEach(function(a){(u=b[a])&&u.series&&(r(u.series,b),u.isDirty=u.forceRedraw=!0)});b.legendItem&&
b.chart.legend.destroyItem(b);for(f=g.length;f--;)(k=g[f])&&k.destroy&&k.destroy();b.clips&&b.clips.forEach(function(a){return a.destroy()});d.clearTimeout(b.animationTimeout);X(b,function(a,b){a instanceof p&&!a.survive&&(e=h&&"group"===b?"hide":"destroy",a[e]())});c.hoverSeries===b&&(c.hoverSeries=void 0);r(c.series,b);c.orderSeries();X(b,function(c,h){a&&"hcEvents"===h||delete b[h]})};c.prototype.applyZones=function(){var a=this,b=this.chart,c=b.renderer,h=this.zones,e,f,d=this.clips||[],l,g=this.graph,
k=this.area,u=Math.max(b.chartWidth,b.chartHeight),r=this[(this.zoneAxis||"y")+"Axis"],n=b.inverted,m,t,p,I=!1,q,x;if(h.length&&(g||k)&&r&&"undefined"!==typeof r.min){var O=r.reversed;var G=r.horiz;g&&!this.showLine&&g.hide();k&&k.hide();var F=r.getExtremes();h.forEach(function(h,J){e=O?G?b.plotWidth:0:G?0:r.toPixels(F.min)||0;e=w(y(f,e),0,u);f=w(Math.round(r.toPixels(y(h.value,F.max),!0)||0),0,u);I&&(e=f=r.toPixels(F.max));m=Math.abs(e-f);t=Math.min(e,f);p=Math.max(e,f);r.isXAxis?(l={x:n?p:t,y:0,
width:m,height:u},G||(l.x=b.plotHeight-l.x)):(l={x:0,y:n?p:t,width:u,height:m},G&&(l.y=b.plotWidth-l.y));n&&c.isVML&&(l=r.isXAxis?{x:0,y:O?t:p,height:l.width,width:b.chartWidth}:{x:l.y-b.plotLeft-b.spacingBox.x,y:0,width:l.height,height:b.chartHeight});d[J]?d[J].animate(l):d[J]=c.clipRect(l);q=a["zone-area-"+J];x=a["zone-graph-"+J];g&&x&&x.clip(d[J]);k&&q&&q.clip(d[J]);I=h.value>F.max;a.resetZones&&0===f&&(f=void 0)});this.clips=d}else a.visible&&(g&&g.show(!0),k&&k.show(!0))};c.prototype.invertGroups=
function(a){function b(){["group","markerGroup"].forEach(function(b){c[b]&&(h.renderer.isVML&&c[b].attr({width:c.yAxis.len,height:c.xAxis.len}),c[b].width=c.yAxis.len,c[b].height=c.xAxis.len,c[b].invert(c.isRadialSeries?!1:a))})}var c=this,h=c.chart;c.xAxis&&(c.eventsToUnbind.push(M(h,"resize",b)),b(),c.invertGroups=b)};c.prototype.plotGroup=function(b,c,h,e,f){var d=this[b],l=!d;h={visibility:h,zIndex:e||.1};"undefined"===typeof this.opacity||this.chart.styledMode||"inactive"===this.state||(h.opacity=
this.opacity);l&&(this[b]=d=this.chart.renderer.g().add(f));d.addClass("highcharts-"+c+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(a(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(d.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0);d.attr(h)[l?"attr":"animate"](this.getPlotBox());return d};c.prototype.getPlotBox=function(){var a=this.chart,b=this.xAxis,c=this.yAxis;a.inverted&&(b=c,c=this.xAxis);return{translateX:b?b.left:
a.plotLeft,translateY:c?c.top:a.plotTop,scaleX:1,scaleY:1}};c.prototype.removeEvents=function(a){a||Q(this);this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind.length=0)};c.prototype.render=function(){var a=this,b=a.chart,c=a.options,h=m(c.animation),e=!a.finishedAnimating&&b.renderer.isSVG&&h.duration,f=a.visible?"inherit":"hidden",d=c.zIndex,g=a.hasRendered,k=b.seriesGroup,u=b.inverted;l(this,"render");var r=a.plotGroup("group","series",f,d,k);a.markerGroup=
a.plotGroup("markerGroup","markers",f,d,k);e&&a.animate&&a.animate(!0);r.inverted=y(a.invertible,a.isCartesian)?u:!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(u);!1===c.clip||a.sharedClipKey||g||r.clip(b.clipRect);e&&a.animate&&a.animate();g||(e&&h.defer&&(e+=h.defer),a.animationTimeout=Z(function(){a.afterAnimate()},e||
0));a.isDirty=!1;a.hasRendered=!0;l(a,"afterRender")};c.prototype.redraw=function(){var a=this.chart,b=this.isDirty||this.isDirtyData,c=this.group,h=this.xAxis,e=this.yAxis;c&&(a.inverted&&c.attr({width:a.plotWidth,height:a.plotHeight}),c.animate({translateX:y(h&&h.left,a.plotLeft),translateY:y(e&&e.top,a.plotTop)}));this.translate();this.render();b&&delete this.kdTree};c.prototype.searchPoint=function(a,b){var c=this.xAxis,h=this.yAxis,e=this.chart.inverted;return this.searchKDTree({clientX:e?c.len-
a.chartY+c.pos:a.chartX-c.pos,plotY:e?h.len-a.chartX+h.pos:a.chartY-h.pos},b,a)};c.prototype.buildKDTree=function(a){function b(a,h,e){var f;if(f=a&&a.length){var d=c.kdAxisArray[h%e];a.sort(function(a,b){return a[d]-b[d]});f=Math.floor(f/2);return{point:a[f],left:b(a.slice(0,f),h+1,e),right:b(a.slice(f+1),h+1,e)}}}this.buildingKdTree=!0;var c=this,h=-1<c.options.findNearestPointBy.indexOf("y")?2:1;delete c.kdTree;Z(function(){c.kdTree=b(c.getValidPoints(null,!c.directTouch),h,h);c.buildingKdTree=
!1},c.options.kdNow||a&&"touchstart"===a.type?0:1)};c.prototype.searchKDTree=function(b,c,h){function e(b,c,h,k){var u=c.point,r=f.kdAxisArray[h%k],n=u;var m=a(b[d])&&a(u[d])?Math.pow(b[d]-u[d],2):null;var t=a(b[l])&&a(u[l])?Math.pow(b[l]-u[l],2):null;t=(m||0)+(t||0);u.dist=a(t)?Math.sqrt(t):Number.MAX_VALUE;u.distX=a(m)?Math.sqrt(m):Number.MAX_VALUE;r=b[r]-u[r];t=0>r?"left":"right";m=0>r?"right":"left";c[t]&&(t=e(b,c[t],h+1,k),n=t[g]<n[g]?t:u);c[m]&&Math.sqrt(r*r)<n[g]&&(b=e(b,c[m],h+1,k),n=b[g]<
n[g]?b:n);return n}var f=this,d=this.kdAxisArray[0],l=this.kdAxisArray[1],g=c?"distX":"dist";c=-1<f.options.findNearestPointBy.indexOf("y")?2:1;this.kdTree||this.buildingKdTree||this.buildKDTree(h);if(this.kdTree)return e(b,this.kdTree,c,c)};c.prototype.pointPlacementToXValue=function(){var a=this.options,b=a.pointRange,c=this.xAxis;a=a.pointPlacement;"between"===a&&(a=c.reversed?-.5:.5);return h(a)?a*(b||c.pointRange):0};c.prototype.isPointInside=function(a){return"undefined"!==typeof a.plotY&&"undefined"!==
typeof a.plotX&&0<=a.plotY&&a.plotY<=this.yAxis.len&&0<=a.plotX&&a.plotX<=this.xAxis.len};c.prototype.drawTracker=function(){var a=this,b=a.options,c=b.trackByArea,h=[].concat(c?a.areaPath:a.graphPath),e=a.chart,f=e.pointer,d=e.renderer,g=e.options.tooltip.snap,k=a.tracker,u=function(b){if(e.hoverSeries!==a)a.onMouseOver()},r="rgba(192,192,192,"+(x?.0001:.002)+")";k?k.attr({d:h}):a.graph&&(a.tracker=d.path(h).attr({visibility:a.visible?"visible":"hidden",zIndex:2}).addClass(c?"highcharts-tracker-area":
"highcharts-tracker-line").add(a.group),e.styledMode||a.tracker.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:r,fill:c?r:"none","stroke-width":a.graph.strokeWidth()+(c?0:2*g)}),[a.tracker,a.markerGroup,a.dataLabelsGroup].forEach(function(a){if(a&&(a.addClass("highcharts-tracker").on("mouseover",u).on("mouseout",function(a){f.onTrackerMouseOut(a)}),b.cursor&&!e.styledMode&&a.css({cursor:b.cursor}),q))a.on("touchstart",u)}));l(this,"afterDrawTracker")};c.prototype.addPoint=function(a,
b,c,h,e){var f=this.options,d=this.data,g=this.chart,k=this.xAxis;k=k&&k.hasNames&&k.names;var u=f.data,r=this.xData,n;b=y(b,!0);var m={series:this};this.pointClass.prototype.applyOptions.apply(m,[a]);var t=m.x;var p=r.length;if(this.requireSorting&&t<r[p-1])for(n=!0;p&&r[p-1]>t;)p--;this.updateParallelArrays(m,"splice",p,0,0);this.updateParallelArrays(m,p);k&&m.name&&(k[t]=m.name);u.splice(p,0,a);n&&(this.data.splice(p,0,null),this.processData());"point"===f.legendType&&this.generatePoints();c&&
(d[0]&&d[0].remove?d[0].remove(!1):(d.shift(),this.updateParallelArrays(m,"shift"),u.shift()));!1!==e&&l(this,"addPoint",{point:m});this.isDirtyData=this.isDirty=!0;b&&g.redraw(h)};c.prototype.removePoint=function(a,c,h){var e=this,f=e.data,d=f[a],l=e.points,g=e.chart,k=function(){l&&l.length===f.length&&l.splice(a,1);f.splice(a,1);e.options.data.splice(a,1);e.updateParallelArrays(d||{series:e},"splice",a,1);d&&d.destroy();e.isDirty=!0;e.isDirtyData=!0;c&&g.redraw()};b(h,g);c=y(c,!0);d?d.firePointEvent("remove",
null,k):k()};c.prototype.remove=function(a,b,c,h){function e(){f.destroy(h);d.isDirtyLegend=d.isDirtyBox=!0;d.linkSeries();y(a,!0)&&d.redraw(b)}var f=this,d=f.chart;!1!==c?l(f,"remove",null,e):e()};c.prototype.update=function(a,b){a=e(a,this.userOptions);l(this,"update",{options:a});var c=this,h=c.chart,f=c.userOptions,d=c.initialType||c.type,g=h.options.plotOptions,u=a.type||f.type||h.options.chart.type,r=!(this.hasDerivedData||u&&u!==this.type||"undefined"!==typeof a.pointStart||"undefined"!==typeof a.pointInterval||
c.hasOptionChanged("dataGrouping")||c.hasOptionChanged("pointStart")||c.hasOptionChanged("pointInterval")||c.hasOptionChanged("pointIntervalUnit")||c.hasOptionChanged("keys")),n=k[d].prototype,m,t=["eventOptions","navigatorSeries","baseSeries"],p=c.finishedAnimating&&{animation:!1},w={};u=u||d;r&&(t.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","_hasPointLabels","clips","nodes","layout","mapMap","mapData","minY","maxY","minX","maxX"),
!1!==a.visible&&t.push("area","graph"),c.parallelArrays.forEach(function(a){t.push(a+"Data")}),a.data&&(a.dataSorting&&F(c.options.dataSorting,a.dataSorting),this.setData(a.data,!1)));a=O(f,p,{index:"undefined"===typeof f.index?c.index:f.index,pointStart:y(g&&g.series&&g.series.pointStart,f.pointStart,c.xData[0])},!r&&{data:c.options.data},a);r&&a.data&&(a.data=c.options.data);t=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(t);t.forEach(function(a){t[a]=c[a];delete c[a]});f=!1;
if(k[u]){if(f=u!==c.type,c.remove(!1,!1,!1,!0),f)if(Object.setPrototypeOf)Object.setPrototypeOf(c,k[u].prototype);else{g=Object.hasOwnProperty.call(c,"hcEvents")&&c.hcEvents;for(m in n)c[m]=void 0;F(c,k[u].prototype);g?c.hcEvents=g:delete c.hcEvents}}else E(17,!0,h,{missingModuleFor:u});t.forEach(function(a){c[a]=t[a]});c.init(h,a);if(r&&this.points){var I=c.options;!1===I.visible?(w.graphic=1,w.dataLabel=1):c._hasPointLabels||(a=I.marker,u=I.dataLabels,a&&(!1===a.enabled||"symbol"in a)&&(w.graphic=
1),u&&!1===u.enabled&&(w.dataLabel=1));this.points.forEach(function(a){a&&a.series&&(a.resolveColor(),Object.keys(w).length&&a.destroyElements(w),!1===I.showInLegend&&a.legendItem&&h.legend.destroyItem(a))},this)}c.initialType=d;h.linkSeries();f&&c.linkedSeries.length&&(c.isDirtyData=!0);l(this,"afterUpdate");y(b,!0)&&h.redraw(r?void 0:!1)};c.prototype.setName=function(a){this.name=this.options.name=this.userOptions.name=a;this.chart.isDirtyLegend=!0};c.prototype.hasOptionChanged=function(a){var b=
this.options[a],c=this.chart.options.plotOptions,h=this.userOptions[a];return h?b!==h:b!==y(c&&c[this.type]&&c[this.type][a],c&&c.series&&c.series[a],b)};c.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};c.prototype.onMouseOut=function(){var a=this.options,b=this.chart,c=b.tooltip,h=b.hoverPoint;b.hoverSeries=null;if(h)h.onMouseOut();
this&&a.events.mouseOut&&l(this,"mouseOut");!c||this.stickyTracking||c.shared&&!this.noSharedTooltip||c.hide();b.series.forEach(function(a){a.setState("",!0)})};c.prototype.setState=function(a,b){var c=this,h=c.options,e=c.graph,f=h.inactiveOtherPoints,d=h.states,l=h.lineWidth,g=h.opacity,k=y(d[a||"normal"]&&d[a||"normal"].animation,c.chart.options.chart.animation);h=0;a=a||"";if(c.state!==a&&([c.group,c.markerGroup,c.dataLabelsGroup].forEach(function(b){b&&(c.state&&b.removeClass("highcharts-series-"+
c.state),a&&b.addClass("highcharts-series-"+a))}),c.state=a,!c.chart.styledMode)){if(d[a]&&!1===d[a].enabled)return;a&&(l=d[a].lineWidth||l+(d[a].lineWidthPlus||0),g=y(d[a].opacity,g));if(e&&!e.dashstyle)for(d={"stroke-width":l},e.animate(d,k);c["zone-graph-"+h];)c["zone-graph-"+h].animate(d,k),h+=1;f||[c.group,c.markerGroup,c.dataLabelsGroup,c.labelBySeries].forEach(function(a){a&&a.animate({opacity:g},k)})}b&&f&&c.points&&c.setAllPointsToState(a||void 0)};c.prototype.setAllPointsToState=function(a){this.points.forEach(function(b){b.setState&&
b.setState(a)})};c.prototype.setVisible=function(a,b){var c=this,h=c.chart,e=c.legendItem,f=h.options.chart.ignoreHiddenSeries,d=c.visible;var g=(c.visible=a=c.options.visible=c.userOptions.visible="undefined"===typeof a?!d:a)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(a){if(c[a])c[a][g]()});if(h.hoverSeries===c||(h.hoverPoint&&h.hoverPoint.series)===c)c.onMouseOut();e&&h.legend.colorizeItem(c,a);c.isDirty=!0;c.options.stacking&&h.series.forEach(function(a){a.options.stacking&&
a.visible&&(a.isDirty=!0)});c.linkedSeries.forEach(function(b){b.setVisible(a,!1)});f&&(h.isDirtyBox=!0);l(c,g);!1!==b&&h.redraw()};c.prototype.show=function(){this.setVisible(!0)};c.prototype.hide=function(){this.setVisible(!1)};c.prototype.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")};c.prototype.shouldShowTooltip=function(a,b,c){void 0===c&&(c={});c.series=this;c.visiblePlotOnly=
!0;return this.chart.isInsidePlot(a,b,c)};c.defaultOptions={lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1E3},events:{},marker:{enabledThreshold:2,lineColor:D.backgroundColor,lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:D.neutralColor20,lineColor:D.neutralColor100,lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",defer:!0,formatter:function(){var a=
this.series.chart.numberFormatter;return"number"!==typeof this.y?"":a(this.y,-1)},padding:5,style:{fontSize:"11px",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:50},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1E3,findNearestPointBy:"x"};
return c}();F(c.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,drawLegendSymbol:C.drawLineMarker,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:H,requireSorting:!0,sorted:!0});K.series=c;"";"";return c});P(c,"Extensions/ScrollablePlotArea.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Axis/Axis.js"],c["Core/Chart/Chart.js"],c["Core/Series/Series.js"],c["Core/Renderer/RendererRegistry.js"],c["Core/Utilities.js"]],
function(c,v,A,C,z,D){var q=c.stop,K=D.addEvent,p=D.createElement,d=D.merge,m=D.pick;K(A,"afterSetChartSize",function(b){var c=this.options.chart.scrollablePlotArea,m=c&&c.minWidth;c=c&&c.minHeight;if(!this.renderer.forExport){if(m){if(this.scrollablePixelsX=m=Math.max(0,m-this.chartWidth)){this.scrollablePlotBox=this.renderer.scrollablePlotBox=d(this.plotBox);this.plotBox.width=this.plotWidth+=m;this.inverted?this.clipBox.height+=m:this.clipBox.width+=m;var p={1:{name:"right",value:m}}}}else c&&
(this.scrollablePixelsY=m=Math.max(0,c-this.chartHeight))&&(this.scrollablePlotBox=this.renderer.scrollablePlotBox=d(this.plotBox),this.plotBox.height=this.plotHeight+=m,this.inverted?this.clipBox.width+=m:this.clipBox.height+=m,p={2:{name:"bottom",value:m}});p&&!b.skipAxes&&this.axes.forEach(function(b){p[b.side]?b.getPlotLinePath=function(){var c=p[b.side].name,d=this[c];this[c]=d-p[b.side].value;var g=v.prototype.getPlotLinePath.apply(this,arguments);this[c]=d;return g}:(b.setAxisSize(),b.setAxisTranslation())})}});
K(A,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()});A.prototype.setUpScrolling=function(){var b=this,c={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(c.overflowX="auto");this.scrollablePixelsY&&(c.overflowY="auto");this.scrollingParent=p("div",{className:"highcharts-scrolling-parent"},{position:"relative"},this.renderTo);this.scrollingContainer=
p("div",{className:"highcharts-scrolling"},c,this.scrollingParent);K(this.scrollingContainer,"scroll",function(){b.pointer&&delete b.pointer.chartPosition});this.innerContainer=p("div",{className:"highcharts-inner-container"},null,this.scrollingContainer);this.innerContainer.appendChild(this.container);this.setUpScrolling=null};A.prototype.moveFixedElements=function(){var b=this.container,c=this.fixedRenderer,d=".highcharts-contextbutton .highcharts-credits .highcharts-legend .highcharts-legend-checkbox .highcharts-navigator-series .highcharts-navigator-xaxis .highcharts-navigator-yaxis .highcharts-navigator .highcharts-reset-zoom .highcharts-drillup-button .highcharts-scrollbar .highcharts-subtitle .highcharts-title".split(" "),
m;this.scrollablePixelsX&&!this.inverted?m=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?m=".highcharts-xaxis":this.scrollablePixelsY&&!this.inverted?m=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(m=".highcharts-yaxis");m&&d.push(m+":not(.highcharts-radial-axis)",m+"-labels:not(.highcharts-radial-axis-labels)");d.forEach(function(d){[].forEach.call(b.querySelectorAll(d),function(b){(b.namespaceURI===c.SVG_NS?c.box:c.box.parentNode).appendChild(b);b.style.pointerEvents="auto"})})};
A.prototype.applyFixed=function(){var b=!this.fixedDiv,c=this.options.chart,d=c.scrollablePlotArea,x=z.getRendererType();b?(this.fixedDiv=p("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(c.style&&c.style.zIndex||0)+2,top:0},null,!0),this.scrollingContainer&&this.scrollingContainer.parentNode.insertBefore(this.fixedDiv,this.scrollingContainer),this.renderTo.style.overflow="visible",this.fixedRenderer=c=new x(this.fixedDiv,this.chartWidth,this.chartHeight,
this.options.chart.style),this.scrollableMask=c.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":m(d.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),K(this,"afterShowResetZoom",this.moveFixedElements),K(this,"afterDrilldown",this.moveFixedElements),K(this,"afterLayOutTitles",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight);if(this.scrollableDirty||b)this.scrollableDirty=!1,this.moveFixedElements();c=this.chartWidth+
(this.scrollablePixelsX||0);x=this.chartHeight+(this.scrollablePixelsY||0);q(this.container);this.container.style.width=c+"px";this.container.style.height=x+"px";this.renderer.boxWrapper.attr({width:c,height:x,viewBox:[0,0,c,x].join(" ")});this.chartBackground.attr({width:c,height:x});this.scrollingContainer.style.height=this.chartHeight+"px";b&&(d.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*d.scrollPositionX),d.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*
d.scrollPositionY));x=this.axisOffset;b=this.plotTop-x[0]-1;d=this.plotLeft-x[3]-1;c=this.plotTop+this.plotHeight+x[2]+1;x=this.plotLeft+this.plotWidth+x[1]+1;var n=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),B=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);b=this.scrollablePixelsX?[["M",0,b],["L",this.plotLeft-1,b],["L",this.plotLeft-1,c],["L",0,c],["Z"],["M",n,b],["L",this.chartWidth,b],["L",this.chartWidth,c],["L",n,c],["Z"]]:this.scrollablePixelsY?[["M",d,0],["L",d,this.plotTop-
1],["L",x,this.plotTop-1],["L",x,0],["Z"],["M",d,B],["L",d,this.chartHeight],["L",x,this.chartHeight],["L",x,B],["Z"]]:[["M",0,0]];"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:b})};K(v,"afterInit",function(){this.chart.scrollableDirty=!0});K(C,"show",function(){this.chart.scrollableDirty=!0});""});P(c,"Core/Axis/StackingAxis.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Utilities.js"]],function(c,v){var q=c.getDeferredAnimation,C=v.addEvent,z=v.destroyObjectProperties,
D=v.fireEvent,H=v.isNumber,K=v.objectEach,p=function(){function c(c){this.oldStacks={};this.stacks={};this.stacksTouched=0;this.axis=c}c.prototype.buildStacks=function(){var c=this.axis,b=c.series,d=c.options.reversedStacks,p=b.length,q;if(!c.isXAxis){this.usePercentage=!1;for(q=p;q--;){var n=b[d?q:p-q-1];n.setStackedPoints();n.setGroupedPoints()}for(q=0;q<p;q++)b[q].modifyStacks();D(c,"afterBuildStacks")}};c.prototype.cleanStacks=function(){if(!this.axis.isXAxis){if(this.oldStacks)var c=this.stacks=
this.oldStacks;K(c,function(b){K(b,function(b){b.cumulative=b.total})})}};c.prototype.resetStacks=function(){var c=this,b=this.stacks;this.axis.isXAxis||K(b,function(b){K(b,function(d,g){H(d.touched)&&d.touched<c.stacksTouched?(d.destroy(),delete b[g]):(d.total=null,d.cumulative=null)})})};c.prototype.renderStackTotals=function(){var c=this.axis,b=c.chart,d=b.renderer,p=this.stacks;c=q(b,c.options.stackLabels&&c.options.stackLabels.animation||!1);var x=this.stackTotalGroup=this.stackTotalGroup||d.g("stack-labels").attr({visibility:"visible",
zIndex:6,opacity:0}).add();x.translate(b.plotLeft,b.plotTop);K(p,function(b){K(b,function(b){b.render(x)})});x.animate({opacity:1},c)};return c}();return function(){function c(){}c.compose=function(d){C(d,"init",c.onInit);C(d,"destroy",c.onDestroy)};c.onDestroy=function(){var c=this.stacking;if(c){var b=c.stacks;K(b,function(c,d){z(c);b[d]=null});c&&c.stackTotalGroup&&c.stackTotalGroup.destroy()}};c.onInit=function(){this.stacking||(this.stacking=new p(this))};return c}()});P(c,"Extensions/Stacking.js",
[c["Core/Axis/Axis.js"],c["Core/Chart/Chart.js"],c["Core/FormatUtilities.js"],c["Core/Globals.js"],c["Core/Series/Series.js"],c["Core/Axis/StackingAxis.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H){var q=A.format,p=H.correctFloat,d=H.defined,m=H.destroyObjectProperties,b=H.isArray,g=H.isNumber,L=H.objectEach,x=H.pick,n=function(){function b(b,c,d,g,n){var e=b.chart.inverted;this.axis=b;this.isNegative=d;this.options=c=c||{};this.x=g;this.total=null;this.points={};this.hasValidPoints=!1;this.stack=
n;this.rightCliff=this.leftCliff=0;this.alignOptions={align:c.align||(e?d?"left":"right":"center"),verticalAlign:c.verticalAlign||(e?"middle":d?"bottom":"top"),y:c.y,x:c.x};this.textAlign=c.textAlign||(e?d?"right":"left":"center")}b.prototype.destroy=function(){m(this,this.axis)};b.prototype.render=function(b){var c=this.axis.chart,d=this.options,g=d.format;g=g?q(g,this,c):d.formatter.call(this);this.label?this.label.attr({text:g,visibility:"hidden"}):(this.label=c.renderer.label(g,null,null,d.shape,
null,null,d.useHTML,!1,"stack-labels"),g={r:d.borderRadius||0,text:g,rotation:d.rotation,padding:x(d.padding,5),visibility:"hidden"},c.styledMode||(g.fill=d.backgroundColor,g.stroke=d.borderColor,g["stroke-width"]=d.borderWidth,this.label.css(d.style)),this.label.attr(g),this.label.added||this.label.add(b));this.label.labelrank=c.plotSizeY};b.prototype.setOffset=function(b,c,n,m,p){var e=this.axis,k=e.chart;m=e.translate(e.stacking.usePercentage?100:m?m:this.total,0,0,0,1);n=e.translate(n?n:0);n=
d(m)&&Math.abs(m-n);b=x(p,k.xAxis[0].translate(this.x))+b;e=d(m)&&this.getStackBox(k,this,b,m,c,n,e);c=this.label;n=this.isNegative;b="justify"===x(this.options.overflow,"justify");var a=this.textAlign;c&&e&&(p=c.getBBox(),m=c.padding,a="left"===a?k.inverted?-m:m:"right"===a?p.width:k.inverted&&"center"===a?p.width/2:k.inverted?n?p.width+m:-m:p.width/2,n=k.inverted?p.height/2:n?-m:p.height,this.alignOptions.x=x(this.options.x,0),this.alignOptions.y=x(this.options.y,0),e.x-=a,e.y-=n,c.align(this.alignOptions,
null,e),k.isInsidePlot(c.alignAttr.x+a-this.alignOptions.x,c.alignAttr.y+n-this.alignOptions.y)?c.show():(c.alignAttr.y=-9999,b=!1),b&&z.prototype.justifyDataLabel.call(this.axis,c,this.alignOptions,c.alignAttr,p,e),c.attr({x:c.alignAttr.x,y:c.alignAttr.y}),x(!b&&this.options.crop,!0)&&((k=g(c.x)&&g(c.y)&&k.isInsidePlot(c.x-m+c.width,c.y)&&k.isInsidePlot(c.x+m,c.y))||c.hide()))};b.prototype.getStackBox=function(b,c,d,g,n,e,m){var a=c.axis.reversed,k=b.inverted,t=m.height+m.pos-(k?b.plotLeft:b.plotTop);
c=c.isNegative&&!a||!c.isNegative&&a;return{x:k?c?g-m.right:g-e+m.pos-b.plotLeft:d+b.xAxis[0].transB-b.plotLeft,y:k?m.height-d-n:c?t-g-e:t-g,width:k?e:n,height:k?n:e}};return b}();v.prototype.getStacks=function(){var b=this,c=b.inverted;b.yAxis.forEach(function(b){b.stacking&&b.stacking.stacks&&b.hasVisibleSeries&&(b.stacking.oldStacks=b.stacking.stacks)});b.series.forEach(function(d){var g=d.xAxis&&d.xAxis.options||{};!d.options.stacking||!0!==d.visible&&!1!==b.options.chart.ignoreHiddenSeries||
(d.stackKey=[d.type,x(d.options.stack,""),c?g.top:g.left,c?g.height:g.width].join())})};D.compose(c);z.prototype.setGroupedPoints=function(){var b=this.yAxis.stacking;this.options.centerInCategory&&(this.is("column")||this.is("columnrange"))&&!this.options.stacking&&1<this.chart.series.length?z.prototype.setStackedPoints.call(this,"group"):b&&L(b.stacks,function(c,d){"group"===d.slice(-5)&&(L(c,function(b){return b.destroy()}),delete b.stacks[d])})};z.prototype.setStackedPoints=function(c){var g=
c||this.options.stacking;if(g&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var m=this.processedXData,q=this.processedYData,J=[],w=q.length,e=this.options,t=e.threshold,a=x(e.startFromThreshold&&t,0);e=e.stack;c=c?this.type+","+g:this.stackKey;var r="-"+c,E=this.negStacks,F=this.yAxis,G=F.stacking.stacks,l=F.stacking.oldStacks,f,I;F.stacking.stacksTouched+=1;for(I=0;I<w;I++){var h=m[I];var u=q[I];var O=this.getStackIndicator(O,h,this.index);var B=O.key;var y=(f=E&&u<(a?0:
t))?r:c;G[y]||(G[y]={});G[y][h]||(l[y]&&l[y][h]?(G[y][h]=l[y][h],G[y][h].total=null):G[y][h]=new n(F,F.options.stackLabels,f,h,e));y=G[y][h];null!==u?(y.points[B]=y.points[this.index]=[x(y.cumulative,a)],d(y.cumulative)||(y.base=B),y.touched=F.stacking.stacksTouched,0<O.index&&!1===this.singleStacks&&(y.points[B][0]=y.points[this.index+","+h+",0"][0])):y.points[B]=y.points[this.index]=null;"percent"===g?(f=f?c:r,E&&G[f]&&G[f][h]?(f=G[f][h],y.total=f.total=Math.max(f.total,y.total)+Math.abs(u)||0):
y.total=p(y.total+(Math.abs(u)||0))):"group"===g?(b(u)&&(u=u[0]),null!==u&&(y.total=(y.total||0)+1)):y.total=p(y.total+(u||0));y.cumulative="group"===g?(y.total||1)-1:x(y.cumulative,a)+(u||0);null!==u&&(y.points[B].push(y.cumulative),J[I]=y.cumulative,y.hasValidPoints=!0)}"percent"===g&&(F.stacking.usePercentage=!0);"group"!==g&&(this.stackedYData=J);F.stacking.oldStacks={}}};z.prototype.modifyStacks=function(){var b=this,c=b.stackKey,d=b.yAxis.stacking.stacks,g=b.processedXData,n,m=b.options.stacking;
b[m+"Stacker"]&&[c,"-"+c].forEach(function(c){for(var e=g.length,a,k;e--;)if(a=g[e],n=b.getStackIndicator(n,a,b.index,c),k=(a=d[c]&&d[c][a])&&a.points[n.key])b[m+"Stacker"](k,a,e)})};z.prototype.percentStacker=function(b,c,d){c=c.total?100/c.total:0;b[0]=p(b[0]*c);b[1]=p(b[1]*c);this.stackedYData[d]=b[1]};z.prototype.getStackIndicator=function(b,c,g,n){!d(b)||b.x!==c||n&&b.key!==n?b={x:c,index:0,key:n}:b.index++;b.key=[g,c,b.index].join();return b};C.StackItem=n;"";return C.StackItem});P(c,"Series/Line/LineSeries.js",
[c["Core/Color/Palette.js"],c["Core/Series/Series.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C){var q=this&&this.__extends||function(){var c=function(p,d){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,b){c.__proto__=b}||function(c,b){for(var d in b)b.hasOwnProperty(d)&&(c[d]=b[d])};return c(p,d)};return function(p,d){function m(){this.constructor=p}c(p,d);p.prototype=null===d?Object.create(d):(m.prototype=d.prototype,new m)}}(),D=C.defined,
H=C.merge;C=function(z){function p(){var c=null!==z&&z.apply(this,arguments)||this;c.data=void 0;c.options=void 0;c.points=void 0;return c}q(p,z);p.prototype.drawGraph=function(){var d=this,m=this.options,b=(this.gappedPath||this.getGraphPath).call(this),g=this.chart.styledMode,p=[["graph","highcharts-graph"]];g||p[0].push(m.lineColor||this.color||c.neutralColor20,m.dashStyle);p=d.getZonesGraphs(p);p.forEach(function(c,n){var p=c[0],k=d[p],q=k?"animate":"attr";k?(k.endX=d.preventGraphAnimation?null:
b.xMap,k.animate({d:b})):b.length&&(d[p]=k=d.chart.renderer.path(b).addClass(c[1]).attr({zIndex:1}).add(d.group));k&&!g&&(p={stroke:c[2],"stroke-width":m.lineWidth,fill:d.fillGraph&&d.color||"none"},c[3]?p.dashstyle=c[3]:"square"!==m.linecap&&(p["stroke-linecap"]=p["stroke-linejoin"]="round"),k[q](p).shadow(2>n&&m.shadow));k&&(k.startX=b.xMap,k.isArea=b.isArea)})};p.prototype.getGraphPath=function(c,m,b){var d=this,p=d.options,q=p.step,n,B=[],k=[],v;c=c||d.points;(n=c.reversed)&&c.reverse();(q={right:1,
center:2}[q]||q&&3)&&n&&(q=4-q);c=this.getValidPoints(c,!1,!(p.connectNulls&&!m&&!b));c.forEach(function(g,n){var w=g.plotX,e=g.plotY,t=c[n-1];(g.leftCliff||t&&t.rightCliff)&&!b&&(v=!0);g.isNull&&!D(m)&&0<n?v=!p.connectNulls:g.isNull&&!m?v=!0:(0===n||v?n=[["M",g.plotX,g.plotY]]:d.getPointSpline?n=[d.getPointSpline(c,g,n)]:q?(n=1===q?[["L",t.plotX,e]]:2===q?[["L",(t.plotX+w)/2,t.plotY],["L",(t.plotX+w)/2,e]]:[["L",w,t.plotY]],n.push(["L",w,e])):n=[["L",w,e]],k.push(g.x),q&&(k.push(g.x),2===q&&k.push(g.x)),
B.push.apply(B,n),v=!1)});B.xMap=k;return d.graphPath=B};p.prototype.getZonesGraphs=function(c){this.zones.forEach(function(d,b){b=["zone-graph-"+b,"highcharts-graph highcharts-zone-graph-"+b+" "+(d.className||"")];this.chart.styledMode||b.push(d.color||this.color,d.dashStyle||this.options.dashStyle);c.push(b)},this);return c};p.defaultOptions=H(v.defaultOptions,{});return p}(v);A.registerSeriesType("line",C);"";return C});P(c,"Series/Area/AreaSeries.js",[c["Core/Color/Color.js"],c["Mixins/LegendSymbol.js"],
c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C){var q=this&&this.__extends||function(){var c=function(b,d){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var d in c)c.hasOwnProperty(d)&&(b[d]=c[d])};return c(b,d)};return function(b,d){function g(){this.constructor=b}c(b,d);b.prototype=null===d?Object.create(d):(g.prototype=d.prototype,new g)}}(),D=c.parse,H=A.seriesTypes.line;c=C.extend;var K=C.merge,p=C.objectEach,
d=C.pick;C=function(c){function b(){var b=null!==c&&c.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}q(b,c);b.prototype.drawGraph=function(){this.areaPath=[];c.prototype.drawGraph.apply(this);var b=this,m=this.areaPath,p=this.options,n=[["area","highcharts-area",this.color,p.fillColor]];this.zones.forEach(function(c,d){n.push(["zone-area-"+d,"highcharts-area highcharts-zone-area-"+d+" "+c.className,c.color||b.color,c.fillColor||p.fillColor])});n.forEach(function(c){var g=
c[0],n=b[g],q=n?"animate":"attr",x={};n?(n.endX=b.preventGraphAnimation?null:m.xMap,n.animate({d:m})):(x.zIndex=0,n=b[g]=b.chart.renderer.path(m).addClass(c[1]).add(b.group),n.isArea=!0);b.chart.styledMode||(x.fill=d(c[3],D(c[2]).setOpacity(d(p.fillOpacity,.75)).get()));n[q](x);n.startX=m.xMap;n.shiftUnit=p.step?2:1})};b.prototype.getGraphPath=function(b){var c=H.prototype.getGraphPath,g=this.options,n=g.stacking,m=this.yAxis,k,p=[],q=[],J=this.index,w=m.stacking.stacks[this.stackKey],e=g.threshold,
t=Math.round(m.getThreshold(g.threshold));g=d(g.connectNulls,"percent"===n);var a=function(a,c,f){var d=b[a];a=n&&w[d.x].points[J];var h=d[f+"Null"]||0;f=d[f+"Cliff"]||0;d=!0;if(f||h){var l=(h?a[0]:a[1])+f;var g=a[0]+f;d=!!h}else!n&&b[c]&&b[c].isNull&&(l=g=e);"undefined"!==typeof l&&(q.push({plotX:E,plotY:null===l?t:m.getThreshold(l),isNull:d,isCliff:!0}),p.push({plotX:E,plotY:null===g?t:m.getThreshold(g),doCurve:!1}))};b=b||this.points;n&&(b=this.getStackPoints(b));for(k=0;k<b.length;k++){n||(b[k].leftCliff=
b[k].rightCliff=b[k].leftNull=b[k].rightNull=void 0);var r=b[k].isNull;var E=d(b[k].rectPlotX,b[k].plotX);var F=n?d(b[k].yBottom,t):t;if(!r||g)g||a(k,k-1,"left"),r&&!n&&g||(q.push(b[k]),p.push({x:k,plotX:E,plotY:F})),g||a(k,k+1,"right")}k=c.call(this,q,!0,!0);p.reversed=!0;r=c.call(this,p,!0,!0);(F=r[0])&&"M"===F[0]&&(r[0]=["L",F[1],F[2]]);r=k.concat(r);r.length&&r.push(["Z"]);c=c.call(this,q,!1,g);r.xMap=k.xMap;this.areaPath=r;return c};b.prototype.getStackPoints=function(b){var c=this,g=[],n=[],
m=this.xAxis,k=this.yAxis,q=k.stacking.stacks[this.stackKey],v={},J=k.series,w=J.length,e=k.options.reversedStacks?1:-1,t=J.indexOf(c);b=b||this.points;if(this.options.stacking){for(var a=0;a<b.length;a++)b[a].leftNull=b[a].rightNull=void 0,v[b[a].x]=b[a];p(q,function(a,b){null!==a.total&&n.push(b)});n.sort(function(a,b){return a-b});var r=J.map(function(a){return a.visible});n.forEach(function(a,b){var p=0,l,f;if(v[a]&&!v[a].isNull)g.push(v[a]),[-1,1].forEach(function(h){var d=1===h?"rightNull":
"leftNull",g=0,k=q[n[b+h]];if(k)for(var m=t;0<=m&&m<w;){var p=J[m].index;l=k.points[p];l||(p===c.index?v[a][d]=!0:r[m]&&(f=q[a].points[p])&&(g-=f[1]-f[0]));m+=e}v[a][1===h?"rightCliff":"leftCliff"]=g});else{for(var I=t;0<=I&&I<w;){if(l=q[a].points[J[I].index]){p=l[1];break}I+=e}p=d(p,0);p=k.translate(p,0,1,0,1);g.push({isNull:!0,plotX:m.translate(a,0,0,0,1),x:a,plotY:p,yBottom:p})}})}return g};b.defaultOptions=K(H.defaultOptions,{threshold:0});return b}(H);c(C.prototype,{singleStacks:!1,drawLegendSymbol:v.drawRectangle});
A.registerSeriesType("area",C);"";return C});P(c,"Series/Spline/SplineSeries.js",[c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v){var q=this&&this.__extends||function(){var c=function(q,p){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,m){c.__proto__=m}||function(c,m){for(var b in m)m.hasOwnProperty(b)&&(c[b]=m[b])};return c(q,p)};return function(q,p){function d(){this.constructor=q}c(q,p);q.prototype=null===p?Object.create(p):(d.prototype=p.prototype,
new d)}}(),C=c.seriesTypes.line,z=v.merge,D=v.pick;v=function(c){function v(){var p=null!==c&&c.apply(this,arguments)||this;p.data=void 0;p.options=void 0;p.points=void 0;return p}q(v,c);v.prototype.getPointSpline=function(c,d,m){var b=d.plotX||0,g=d.plotY||0,p=c[m-1];m=c[m+1];if(p&&!p.isNull&&!1!==p.doCurve&&!d.isCliff&&m&&!m.isNull&&!1!==m.doCurve&&!d.isCliff){c=p.plotY||0;var q=m.plotX||0;m=m.plotY||0;var n=0;var B=(1.5*b+(p.plotX||0))/2.5;var k=(1.5*g+c)/2.5;q=(1.5*b+q)/2.5;var v=(1.5*g+m)/2.5;
q!==B&&(n=(v-k)*(q-b)/(q-B)+g-v);k+=n;v+=n;k>c&&k>g?(k=Math.max(c,g),v=2*g-k):k<c&&k<g&&(k=Math.min(c,g),v=2*g-k);v>m&&v>g?(v=Math.max(m,g),k=2*g-v):v<m&&v<g&&(v=Math.min(m,g),k=2*g-v);d.rightContX=q;d.rightContY=v}d=["C",D(p.rightContX,p.plotX,0),D(p.rightContY,p.plotY,0),D(B,b,0),D(k,g,0),b,g];p.rightContX=p.rightContY=void 0;return d};v.defaultOptions=z(C.defaultOptions);return v}(C);c.registerSeriesType("spline",v);"";return v});P(c,"Series/AreaSpline/AreaSplineSeries.js",[c["Series/Area/AreaSeries.js"],
c["Series/Spline/SplineSeries.js"],c["Mixins/LegendSymbol.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C,z){var q=this&&this.__extends||function(){var c=function(d,b){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var d in c)c.hasOwnProperty(d)&&(b[d]=c[d])};return c(d,b)};return function(d,b){function g(){this.constructor=d}c(d,b);d.prototype=null===b?Object.create(b):(g.prototype=b.prototype,new g)}}(),H=
c.prototype,K=z.extend,p=z.merge;z=function(d){function m(){var b=null!==d&&d.apply(this,arguments)||this;b.data=void 0;b.points=void 0;b.options=void 0;return b}q(m,d);m.defaultOptions=p(v.defaultOptions,c.defaultOptions);return m}(v);K(z.prototype,{getGraphPath:H.getGraphPath,getStackPoints:H.getStackPoints,drawGraph:H.drawGraph,drawLegendSymbol:A.drawRectangle});C.registerSeriesType("areaspline",z);"";return z});P(c,"Series/Column/ColumnSeries.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Color/Color.js"],
c["Core/Globals.js"],c["Mixins/LegendSymbol.js"],c["Core/Color/Palette.js"],c["Core/Series/Series.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H,K){var p=this&&this.__extends||function(){var b=function(c,a){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c])};return b(c,a)};return function(c,a){function e(){this.constructor=c}b(c,a);c.prototype=null===a?Object.create(a):
(e.prototype=a.prototype,new e)}}(),d=c.animObject,m=v.parse,b=A.hasTouch;c=A.noop;var g=K.clamp,q=K.css,x=K.defined,n=K.extend,B=K.fireEvent,k=K.isArray,M=K.isNumber,N=K.merge,J=K.pick,w=K.objectEach;K=function(c){function e(){var a=null!==c&&c.apply(this,arguments)||this;a.borderWidth=void 0;a.data=void 0;a.group=void 0;a.options=void 0;a.points=void 0;return a}p(e,c);e.prototype.animate=function(a){var b=this,c=this.yAxis,e=b.options,k=this.chart.inverted,l={},f=k?"translateX":"translateY";if(a)l.scaleY=
.001,a=g(c.toPixels(e.threshold),c.pos,c.pos+c.len),k?l.translateX=a-c.len:l.translateY=a,b.clipBox&&b.setClip(),b.group.attr(l);else{var m=Number(b.group.attr(f));b.group.animate({scaleY:1},n(d(b.options.animation),{step:function(a,e){b.group&&(l[f]=m+e.pos*(c.pos-m),b.group.attr(l))}}))}};e.prototype.init=function(a,b){c.prototype.init.apply(this,arguments);var e=this;a=e.chart;a.hasRendered&&a.series.forEach(function(a){a.type===e.type&&(a.isDirty=!0)})};e.prototype.getColumnMetrics=function(){var a=
this,b=a.options,c=a.xAxis,e=a.yAxis,d=c.options.reversedStacks;d=c.reversed&&!d||!c.reversed&&d;var l,f={},g=0;!1===b.grouping?g=1:a.chart.series.forEach(function(b){var c=b.yAxis,h=b.options;if(b.type===a.type&&(b.visible||!a.chart.options.chart.ignoreHiddenSeries)&&e.len===c.len&&e.pos===c.pos){if(h.stacking&&"group"!==h.stacking){l=b.stackKey;"undefined"===typeof f[l]&&(f[l]=g++);var d=f[l]}else!1!==h.grouping&&(d=g++);b.columnIndex=d}});var h=Math.min(Math.abs(c.transA)*(c.ordinal&&c.ordinal.slope||
b.pointRange||c.closestPointRange||c.tickInterval||1),c.len),k=h*b.groupPadding,n=(h-2*k)/(g||1);b=Math.min(b.maxPointWidth||c.len,J(b.pointWidth,n*(1-2*b.pointPadding)));a.columnMetrics={width:b,offset:(n-b)/2+(k+((a.columnIndex||0)+(d?1:0))*n-h/2)*(d?-1:1),paddedWidth:n,columnCount:g};return a.columnMetrics};e.prototype.crispCol=function(a,b,c,e){var d=this.chart,l=this.borderWidth,f=-(l%2?.5:0);l=l%2?.5:1;d.inverted&&d.renderer.isVML&&(l+=1);this.options.crisp&&(c=Math.round(a+c)+f,a=Math.round(a)+
f,c-=a);e=Math.round(b+e)+l;f=.5>=Math.abs(b)&&.5<e;b=Math.round(b)+l;e-=b;f&&e&&(--b,e+=1);return{x:a,y:b,width:c,height:e}};e.prototype.adjustForMissingColumns=function(a,b,c,e){var d=this,l=this.options.stacking;if(!c.isNull&&1<e.columnCount){var f=0,g=0;w(this.yAxis.stacking&&this.yAxis.stacking.stacks,function(a){if("number"===typeof c.x&&(a=a[c.x.toString()])){var b=a.points[d.index],h=a.total;l?(b&&(f=g),a.hasValidPoints&&g++):k(b)&&(f=b[1],g=h||0)}});a=(c.plotX||0)+((g-1)*e.paddedWidth+b)/
2-b-f*e.paddedWidth}return a};e.prototype.translate=function(){var a=this,b=a.chart,c=a.options,e=a.dense=2>a.closestPointRange*a.xAxis.transA;e=a.borderWidth=J(c.borderWidth,e?0:1);var d=a.xAxis,l=a.yAxis,f=c.threshold,k=a.translatedThreshold=l.getThreshold(f),h=J(c.minPointLength,5),u=a.getColumnMetrics(),n=u.width,m=a.barW=Math.max(n,1+2*e),p=a.pointXOffset=u.offset,t=a.dataMin,w=a.dataMax;b.inverted&&(k-=.5);c.pointPadding&&(m=Math.ceil(m));D.prototype.translate.apply(a);a.points.forEach(function(e){var r=
J(e.yBottom,k),q=999+Math.abs(r),I=n,y=e.plotX||0;q=g(e.plotY,-q,l.len+q);y+=p;var O=m,G=Math.min(q,r),F=Math.max(q,r)-G;if(h&&Math.abs(F)<h){F=h;var E=!l.reversed&&!e.negative||l.reversed&&e.negative;M(f)&&M(w)&&e.y===f&&w<=f&&(l.min||0)<f&&(t!==w||(l.max||0)<=f)&&(E=!E);G=Math.abs(G-k)>h?r-h:k-(E?h:0)}x(e.options.pointWidth)&&(I=O=Math.ceil(e.options.pointWidth),y-=Math.round((I-n)/2));c.centerInCategory&&(y=a.adjustForMissingColumns(y,I,e,u));e.barX=y;e.pointWidth=I;e.tooltipPos=b.inverted?[g(l.len+
l.pos-b.plotLeft-q,l.pos-b.plotLeft,l.len+l.pos-b.plotLeft),d.len+d.pos-b.plotTop-y-O/2,F]:[d.left-b.plotLeft+y+O/2,g(q+l.pos-b.plotTop,l.pos-b.plotTop,l.len+l.pos-b.plotTop),F];e.shapeType=a.pointClass.prototype.shapeType||"rect";e.shapeArgs=a.crispCol.apply(a,e.isNull?[y,k,O,0]:[y,G,O,F])})};e.prototype.drawGraph=function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")};e.prototype.pointAttribs=function(a,b){var c=this.options,e=this.pointAttrToOptions||{};var d=e.stroke||
"borderColor";var l=e["stroke-width"]||"borderWidth",f=a&&a.color||this.color,g=a&&a[d]||c[d]||f,h=a&&a[l]||c[l]||this[l]||0;e=a&&a.options.dashStyle||c.dashStyle;var k=J(a&&a.opacity,c.opacity,1);if(a&&this.zones.length){var n=a.getZone();f=a.options.color||n&&(n.color||a.nonZonedColor)||this.color;n&&(g=n.borderColor||g,e=n.dashStyle||e,h=n.borderWidth||h)}b&&a&&(a=N(c.states[b],a.options.states&&a.options.states[b]||{}),b=a.brightness,f=a.color||"undefined"!==typeof b&&m(f).brighten(a.brightness).get()||
f,g=a[d]||g,h=a[l]||h,e=a.dashStyle||e,k=J(a.opacity,k));d={fill:f,stroke:g,"stroke-width":h,opacity:k};e&&(d.dashstyle=e);return d};e.prototype.drawPoints=function(){var a=this,b=this.chart,c=a.options,e=b.renderer,d=c.animationLimit||250,l;a.points.forEach(function(f){var g=f.graphic,h=!!g,k=g&&b.pointCount<d?"animate":"attr";if(M(f.plotY)&&null!==f.y){l=f.shapeArgs;g&&f.hasNewShapeType()&&(g=g.destroy());a.enabledDataSorting&&(f.startXPos=a.xAxis.reversed?-(l?l.width||0:0):a.xAxis.width);g||(f.graphic=
g=e[f.shapeType](l).add(f.group||a.group))&&a.enabledDataSorting&&b.hasRendered&&b.pointCount<d&&(g.attr({x:f.startXPos}),h=!0,k="animate");if(g&&h)g[k](N(l));if(c.borderRadius)g[k]({r:c.borderRadius});b.styledMode||g[k](a.pointAttribs(f,f.selected&&"select")).shadow(!1!==f.allowShadow&&c.shadow,null,c.stacking&&!c.borderRadius);g&&(g.addClass(f.getClassName(),!0),g.attr({visibility:f.visible?"inherit":"hidden"}))}else g&&(f.graphic=g.destroy())})};e.prototype.drawTracker=function(){var a=this,c=
a.chart,e=c.pointer,d=function(a){var b=e.getPointFromEvent(a);"undefined"!==typeof b&&(e.isDirectTouch=!0,b.onMouseOver(a))},g;a.points.forEach(function(a){g=k(a.dataLabels)?a.dataLabels:a.dataLabel?[a.dataLabel]:[];a.graphic&&(a.graphic.element.point=a);g.forEach(function(b){b.div?b.div.point=a:b.element.point=a})});a._hasTracking||(a.trackerGroups.forEach(function(l){if(a[l]){a[l].addClass("highcharts-tracker").on("mouseover",d).on("mouseout",function(a){e.onTrackerMouseOut(a)});if(b)a[l].on("touchstart",
d);!c.styledMode&&a.options.cursor&&a[l].css(q).css({cursor:a.options.cursor})}}),a._hasTracking=!0);B(this,"afterDrawTracker")};e.prototype.remove=function(){var a=this,b=a.chart;b.hasRendered&&b.series.forEach(function(b){b.type===a.type&&(b.isDirty=!0)});D.prototype.remove.apply(a,arguments)};e.defaultOptions=N(D.defaultOptions,{borderRadius:0,centerInCategory:!1,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},
select:{color:z.neutralColor20,borderColor:z.neutralColor100}},dataLabels:{align:void 0,verticalAlign:void 0,y:void 0},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:z.backgroundColor});return e}(D);n(K.prototype,{cropShoulder:0,directTouch:!0,drawLegendSymbol:C.drawRectangle,getSymbol:c,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]});H.registerSeriesType("column",K);"";"";return K});P(c,"Series/Bar/BarSeries.js",[c["Series/Column/ColumnSeries.js"],c["Core/Series/SeriesRegistry.js"],
c["Core/Utilities.js"]],function(c,v,A){var q=this&&this.__extends||function(){var c=function(q,p){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,m){c.__proto__=m}||function(c,m){for(var b in m)m.hasOwnProperty(b)&&(c[b]=m[b])};return c(q,p)};return function(q,p){function d(){this.constructor=q}c(q,p);q.prototype=null===p?Object.create(p):(d.prototype=p.prototype,new d)}}(),z=A.extend,D=A.merge;A=function(v){function z(){var c=null!==v&&v.apply(this,arguments)||this;c.data=void 0;
c.options=void 0;c.points=void 0;return c}q(z,v);z.defaultOptions=D(c.defaultOptions,{});return z}(c);z(A.prototype,{inverted:!0});v.registerSeriesType("bar",A);"";return A});P(c,"Series/Scatter/ScatterSeries.js",[c["Series/Column/ColumnSeries.js"],c["Series/Line/LineSeries.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C){var q=this&&this.__extends||function(){var c=function(d,m){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||
function(b,c){for(var d in c)c.hasOwnProperty(d)&&(b[d]=c[d])};return c(d,m)};return function(d,m){function b(){this.constructor=d}c(d,m);d.prototype=null===m?Object.create(m):(b.prototype=m.prototype,new b)}}(),D=C.addEvent,H=C.extend,K=C.merge;C=function(c){function d(){var d=null!==c&&c.apply(this,arguments)||this;d.data=void 0;d.options=void 0;d.points=void 0;return d}q(d,c);d.prototype.applyJitter=function(){var c=this,b=this.options.jitter,d=this.points.length;b&&this.points.forEach(function(g,
m){["x","y"].forEach(function(n,p){var k="plot"+n.toUpperCase();if(b[n]&&!g.isNull){var q=c[n+"Axis"];var x=b[n]*q.transA;if(q&&!q.isLog){var J=Math.max(0,g[k]-x);q=Math.min(q.len,g[k]+x);p=1E4*Math.sin(m+p*d);g[k]=J+(q-J)*(p-Math.floor(p));"x"===n&&(g.clientX=g.plotX)}}})})};d.prototype.drawGraph=function(){this.options.lineWidth?c.prototype.drawGraph.call(this):this.graph&&(this.graph=this.graph.destroy())};d.defaultOptions=K(v.defaultOptions,{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},
marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">\u25cf</span> <span style="font-size: 10px"> {series.name}</span><br/>',pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}});return d}(v);H(C.prototype,{drawTracker:c.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1});D(C,"afterTranslate",function(){this.applyJitter()});A.registerSeriesType("scatter",C);"";return C});
P(c,"Mixins/CenteredSeries.js",[c["Core/Globals.js"],c["Core/Series/Series.js"],c["Core/Utilities.js"]],function(c,v,A){var q=A.isNumber,z=A.pick,D=A.relativeLength,H=c.deg2rad;return c.CenteredSeriesMixin={getCenter:function(){var c=this.options,p=this.chart,d=2*(c.slicedOffset||0),m=p.plotWidth-2*d,b=p.plotHeight-2*d,g=c.center,q=Math.min(m,b),x=c.size,n=c.innerSize||0;"string"===typeof x&&(x=parseFloat(x));"string"===typeof n&&(n=parseFloat(n));c=[z(g[0],"50%"),z(g[1],"50%"),z(x&&0>x?void 0:c.size,
"100%"),z(n&&0>n?void 0:c.innerSize||0,"0%")];!p.angular||this instanceof v||(c[3]=0);for(g=0;4>g;++g)x=c[g],p=2>g||2===g&&/%$/.test(x),c[g]=D(x,[m,b,q,c[2]][g])+(p?d:0);c[3]>c[2]&&(c[3]=c[2]);return c},getStartAndEndRadians:function(c,p){c=q(c)?c:0;p=q(p)&&p>c&&360>p-c?p:c+360;return{start:H*(c+-90),end:H*(p+-90)}}}});P(c,"Series/Pie/PiePoint.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Series/Point.js"],c["Core/Utilities.js"]],function(c,v,A){var q=this&&this.__extends||function(){var c=
function(b,d){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var d in c)c.hasOwnProperty(d)&&(b[d]=c[d])};return c(b,d)};return function(b,d){function g(){this.constructor=b}c(b,d);b.prototype=null===d?Object.create(d):(g.prototype=d.prototype,new g)}}(),z=c.setAnimation,D=A.addEvent,H=A.defined;c=A.extend;var K=A.isNumber,p=A.pick,d=A.relativeLength;A=function(c){function b(){var b=null!==c&&c.apply(this,arguments)||this;b.labelDistance=void 0;
b.options=void 0;b.series=void 0;return b}q(b,c);b.prototype.getConnectorPath=function(){var b=this.labelPosition,c=this.series.options.dataLabels,d=c.connectorShape,n=this.connectorShapes;n[d]&&(d=n[d]);return d.call(this,{x:b.final.x,y:b.final.y,alignment:b.alignment},b.connectorPosition,c)};b.prototype.getTranslate=function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}};b.prototype.haloPath=function(b){var c=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(c.x,
c.y,c.r+b,c.r+b,{innerR:c.r-1,start:c.start,end:c.end})};b.prototype.init=function(){v.prototype.init.apply(this,arguments);var b=this;b.name=p(b.name,"Slice");var c=function(c){b.slice("select"===c.type)};D(b,"select",c);D(b,"unselect",c);return b};b.prototype.isValid=function(){return K(this.y)&&0<=this.y};b.prototype.setVisible=function(b,c){var d=this,g=d.series,m=g.chart,k=g.options.ignoreHiddenPoint;c=p(c,k);b!==d.visible&&(d.visible=d.options.visible=b="undefined"===typeof b?!d.visible:b,g.options.data[g.data.indexOf(d)]=
d.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(c){if(d[c])d[c][b?"show":"hide"](b)}),d.legendItem&&m.legend.colorizeItem(d,b),b||"hover"!==d.state||d.setState(""),k&&(g.isDirty=!0),c&&m.redraw())};b.prototype.slice=function(b,c,d){var g=this.series;z(d,g.chart);p(c,!0);this.sliced=this.options.sliced=H(b)?b:!this.sliced;g.options.data[g.data.indexOf(this)]=this.options;this.graphic&&this.graphic.animate(this.getTranslate());this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())};
return b}(v);c(A.prototype,{connectorShapes:{fixedOffset:function(c,b,d){var g=b.breakAt;b=b.touchingSliceAt;return[["M",c.x,c.y],d.softConnector?["C",c.x+("left"===c.alignment?-5:5),c.y,2*g.x-b.x,2*g.y-b.y,g.x,g.y]:["L",g.x,g.y],["L",b.x,b.y]]},straight:function(c,b){b=b.touchingSliceAt;return[["M",c.x,c.y],["L",b.x,b.y]]},crookedLine:function(c,b,g){b=b.touchingSliceAt;var m=this.series,p=m.center[0],n=m.chart.plotWidth,q=m.chart.plotLeft;m=c.alignment;var k=this.shapeArgs.r;g=d(g.crookDistance,
1);n="left"===m?p+k+(n+q-p-k)*(1-g):q+(p-k)*g;g=["L",n,c.y];p=!0;if("left"===m?n>c.x||n<b.x:n<c.x||n>b.x)p=!1;c=[["M",c.x,c.y]];p&&c.push(g);c.push(["L",b.x,b.y]);return c}}});return A});P(c,"Series/Pie/PieSeries.js",[c["Mixins/CenteredSeries.js"],c["Series/Column/ColumnSeries.js"],c["Core/Globals.js"],c["Mixins/LegendSymbol.js"],c["Core/Color/Palette.js"],c["Series/Pie/PiePoint.js"],c["Core/Series/Series.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Renderer/SVG/Symbols.js"],c["Core/Utilities.js"]],
function(c,v,A,C,z,D,H,K,p,d){var m=this&&this.__extends||function(){var b=function(c,d){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var e in c)c.hasOwnProperty(e)&&(b[e]=c[e])};return b(c,d)};return function(c,d){function g(){this.constructor=c}b(c,d);c.prototype=null===d?Object.create(d):(g.prototype=d.prototype,new g)}}(),b=c.getStartAndEndRadians;A=A.noop;var g=d.clamp,q=d.extend,x=d.fireEvent,n=d.merge,B=d.pick,k=d.relativeLength;d=
function(c){function d(){var b=null!==c&&c.apply(this,arguments)||this;b.center=void 0;b.data=void 0;b.maxLabelDistance=void 0;b.options=void 0;b.points=void 0;return b}m(d,c);d.prototype.animate=function(b){var c=this,e=c.points,d=c.startAngleRad;b||e.forEach(function(a){var b=a.graphic,e=a.shapeArgs;b&&e&&(b.attr({r:B(a.startR,c.center&&c.center[3]/2),start:d,end:d}),b.animate({r:e.r,start:e.start,end:e.end},c.options.animation))})};d.prototype.drawEmpty=function(){var b=this.startAngleRad,c=this.endAngleRad,
e=this.options;if(0===this.total&&this.center){var d=this.center[0];var a=this.center[1];this.graph||(this.graph=this.chart.renderer.arc(d,a,this.center[1]/2,0,b,c).addClass("highcharts-empty-series").add(this.group));this.graph.attr({d:p.arc(d,a,this.center[2]/2,0,{start:b,end:c,innerR:this.center[3]/2})});this.chart.styledMode||this.graph.attr({"stroke-width":e.borderWidth,fill:e.fillColor||"none",stroke:e.color||z.neutralColor20})}else this.graph&&(this.graph=this.graph.destroy())};d.prototype.drawPoints=
function(){var b=this.chart.renderer;this.points.forEach(function(c){c.graphic&&c.hasNewShapeType()&&(c.graphic=c.graphic.destroy());c.graphic||(c.graphic=b[c.shapeType](c.shapeArgs).add(c.series.group),c.delayedRendering=!0)})};d.prototype.generatePoints=function(){c.prototype.generatePoints.call(this);this.updateTotals()};d.prototype.getX=function(b,c,e){var d=this.center,a=this.radii?this.radii[e.index]||0:d[2]/2;b=Math.asin(g((b-d[1])/(a+e.labelDistance),-1,1));return d[0]+(c?-1:1)*Math.cos(b)*
(a+e.labelDistance)+(0<e.labelDistance?(c?-1:1)*this.options.dataLabels.padding:0)};d.prototype.hasData=function(){return!!this.processedXData.length};d.prototype.redrawPoints=function(){var b=this,c=b.chart,e=c.renderer,d,a,g,k,m=b.options.shadow;this.drawEmpty();!m||b.shadowGroup||c.styledMode||(b.shadowGroup=e.g("shadow").attr({zIndex:-1}).add(b.group));b.points.forEach(function(r){var l={};a=r.graphic;if(!r.isNull&&a){var f=void 0;k=r.shapeArgs;d=r.getTranslate();c.styledMode||(f=r.shadowGroup,
m&&!f&&(f=r.shadowGroup=e.g("shadow").add(b.shadowGroup)),f&&f.attr(d),g=b.pointAttribs(r,r.selected&&"select"));r.delayedRendering?(a.setRadialReference(b.center).attr(k).attr(d),c.styledMode||a.attr(g).attr({"stroke-linejoin":"round"}).shadow(m,f),r.delayedRendering=!1):(a.setRadialReference(b.center),c.styledMode||n(!0,l,g),n(!0,l,k,d),a.animate(l));a.attr({visibility:r.visible?"inherit":"hidden"});a.addClass(r.getClassName(),!0)}else a&&(r.graphic=a.destroy())})};d.prototype.sortByAngle=function(b,
c){b.sort(function(b,d){return"undefined"!==typeof b.angle&&(d.angle-b.angle)*c})};d.prototype.translate=function(c){this.generatePoints();var d=0,e=this.options,g=e.slicedOffset,a=g+(e.borderWidth||0),n=b(e.startAngle,e.endAngle),m=this.startAngleRad=n.start;n=(this.endAngleRad=n.end)-m;var p=this.points,q=e.dataLabels.distance;e=e.ignoreHiddenPoint;var l,f=p.length;c||(this.center=c=this.getCenter());for(l=0;l<f;l++){var I=p[l];var h=m+d*n;!I.isValid()||e&&!I.visible||(d+=I.percentage/100);var u=
m+d*n;var O={x:c[0],y:c[1],r:c[2]/2,innerR:c[3]/2,start:Math.round(1E3*h)/1E3,end:Math.round(1E3*u)/1E3};I.shapeType="arc";I.shapeArgs=O;I.labelDistance=B(I.options.dataLabels&&I.options.dataLabels.distance,q);I.labelDistance=k(I.labelDistance,O.r);this.maxLabelDistance=Math.max(this.maxLabelDistance||0,I.labelDistance);u=(u+h)/2;u>1.5*Math.PI?u-=2*Math.PI:u<-Math.PI/2&&(u+=2*Math.PI);I.slicedTranslation={translateX:Math.round(Math.cos(u)*g),translateY:Math.round(Math.sin(u)*g)};O=Math.cos(u)*c[2]/
2;var v=Math.sin(u)*c[2]/2;I.tooltipPos=[c[0]+.7*O,c[1]+.7*v];I.half=u<-Math.PI/2||u>Math.PI/2?1:0;I.angle=u;h=Math.min(a,I.labelDistance/5);I.labelPosition={natural:{x:c[0]+O+Math.cos(u)*I.labelDistance,y:c[1]+v+Math.sin(u)*I.labelDistance},"final":{},alignment:0>I.labelDistance?"center":I.half?"right":"left",connectorPosition:{breakAt:{x:c[0]+O+Math.cos(u)*h,y:c[1]+v+Math.sin(u)*h},touchingSliceAt:{x:c[0]+O,y:c[1]+v}}}}x(this,"afterTranslate")};d.prototype.updateTotals=function(){var b,c=0,e=this.points,
d=e.length,a=this.options.ignoreHiddenPoint;for(b=0;b<d;b++){var g=e[b];!g.isValid()||a&&!g.visible||(c+=g.y)}this.total=c;for(b=0;b<d;b++)g=e[b],g.percentage=0<c&&(g.visible||!a)?g.y/c*100:0,g.total=c};d.defaultOptions=n(H.defaultOptions,{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:z.backgroundColor,borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}});return d}(H);q(d.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawLegendSymbol:C.drawRectangle,drawTracker:v.prototype.drawTracker,getCenter:c.getCenter,getSymbol:A,isCartesian:!1,noSharedTooltip:!0,pointAttribs:v.prototype.pointAttribs,
pointClass:D,requireSorting:!1,searchPoint:A,trackerGroups:["group","dataLabelsGroup"]});K.registerSeriesType("pie",d);"";return d});P(c,"Core/Series/DataLabels.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/FormatUtilities.js"],c["Core/Globals.js"],c["Core/Color/Palette.js"],c["Core/Series/Series.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H){var q=c.getDeferredAnimation,p=v.format;c=A.noop;D=D.seriesTypes;var d=H.arrayMax,m=H.clamp,b=H.defined,g=
H.extend,L=H.fireEvent,x=H.isArray,n=H.merge,B=H.objectEach,k=H.pick,M=H.relativeLength,N=H.splat,J=H.stableSort;"";A.distribute=function(b,c,d){function a(a,b){return a.target-b.target}var e,g=!0,n=b,p=[];var l=0;var f=n.reducedLen||c;for(e=b.length;e--;)l+=b[e].size;if(l>f){J(b,function(a,b){return(b.rank||0)-(a.rank||0)});for(l=e=0;l<=f;)l+=b[e].size,e++;p=b.splice(e-1,b.length)}J(b,a);for(b=b.map(function(a){return{size:a.size,targets:[a.target],align:k(a.align,.5)}});g;){for(e=b.length;e--;)g=
b[e],l=(Math.min.apply(0,g.targets)+Math.max.apply(0,g.targets))/2,g.pos=m(l-g.size*g.align,0,c-g.size);e=b.length;for(g=!1;e--;)0<e&&b[e-1].pos+b[e-1].size>b[e].pos&&(b[e-1].size+=b[e].size,b[e-1].targets=b[e-1].targets.concat(b[e].targets),b[e-1].align=.5,b[e-1].pos+b[e-1].size>c&&(b[e-1].pos=c-b[e-1].size),b.splice(e,1),g=!0)}n.push.apply(n,p);e=0;b.some(function(a){var b=0;if(a.targets.some(function(){n[e].pos=a.pos+b;if("undefined"!==typeof d&&Math.abs(n[e].pos-n[e].target)>d)return n.slice(0,
e+1).forEach(function(a){delete a.pos}),n.reducedLen=(n.reducedLen||c)-.1*c,n.reducedLen>.1*c&&A.distribute(n,c,d),!0;b+=n[e].size;e++}))return!0});J(n,a)};z.prototype.drawDataLabels=function(){function c(a,b){var c=b.filter;return c?(b=c.operator,a=a[c.property],c=c.value,">"===b&&a>c||"<"===b&&a<c||">="===b&&a>=c||"<="===b&&a<=c||"=="===b&&a==c||"==="===b&&a===c?!0:!1):!0}function e(a,b){var c=[],e;if(x(a)&&!x(b))c=a.map(function(a){return n(a,b)});else if(x(b)&&!x(a))c=b.map(function(b){return n(a,
b)});else if(x(a)||x(b))for(e=Math.max(a.length,b.length);e--;)c[e]=n(a[e],b[e]);else c=n(a,b);return c}var d=this,a=d.chart,g=d.options,m=g.dataLabels,F=d.points,G,l=d.hasRendered||0,f=m.animation;f=m.defer?q(a,f,d):{defer:0,duration:0};var I=a.renderer;m=e(e(a.options.plotOptions&&a.options.plotOptions.series&&a.options.plotOptions.series.dataLabels,a.options.plotOptions&&a.options.plotOptions[d.type]&&a.options.plotOptions[d.type].dataLabels),m);L(this,"drawDataLabels");if(x(m)||m.enabled||d._hasPointLabels){var h=
d.plotGroup("dataLabelsGroup","data-labels",l?"inherit":"hidden",m.zIndex||6);h.attr({opacity:+l});!l&&(l=d.dataLabelsGroup)&&(d.visible&&h.show(!0),l[g.animation?"animate":"attr"]({opacity:1},f));F.forEach(function(f){G=N(e(m,f.dlOptions||f.options&&f.options.dataLabels));G.forEach(function(e,l){var n=e.enabled&&(!f.isNull||f.dataLabelOnNull)&&c(f,e),u=f.dataLabels?f.dataLabels[l]:f.dataLabel,m=f.connectors?f.connectors[l]:f.connector,r=k(e.distance,f.labelDistance),t=!u;if(n){var q=f.getLabelConfig();
var w=k(e[f.formatPrefix+"Format"],e.format);q=b(w)?p(w,q,a):(e[f.formatPrefix+"Formatter"]||e.formatter).call(q,e);w=e.style;var O=e.rotation;a.styledMode||(w.color=k(e.color,w.color,d.color,C.neutralColor100),"contrast"===w.color?(f.contrastColor=I.getContrast(f.color||d.color),w.color=!b(r)&&e.inside||0>r||g.stacking?f.contrastColor:C.neutralColor100):delete f.contrastColor,g.cursor&&(w.cursor=g.cursor));var x={r:e.borderRadius||0,rotation:O,padding:e.padding,zIndex:1};a.styledMode||(x.fill=e.backgroundColor,
x.stroke=e.borderColor,x["stroke-width"]=e.borderWidth);B(x,function(a,b){"undefined"===typeof a&&delete x[b]})}!u||n&&b(q)?n&&b(q)&&(u?x.text=q:(f.dataLabels=f.dataLabels||[],u=f.dataLabels[l]=O?I.text(q,0,-9999,e.useHTML).addClass("highcharts-data-label"):I.label(q,0,-9999,e.shape,null,null,e.useHTML,null,"data-label"),l||(f.dataLabel=u),u.addClass(" highcharts-data-label-color-"+f.colorIndex+" "+(e.className||"")+(e.useHTML?" highcharts-tracker":""))),u.options=e,u.attr(x),a.styledMode||u.css(w).shadow(e.shadow),
u.added||u.add(h),e.textPath&&!e.useHTML&&(u.setTextPath(f.getDataLabelPath&&f.getDataLabelPath(u)||f.graphic,e.textPath),f.dataLabelPath&&!e.textPath.enabled&&(f.dataLabelPath=f.dataLabelPath.destroy())),d.alignDataLabel(f,u,e,null,t)):(f.dataLabel=f.dataLabel&&f.dataLabel.destroy(),f.dataLabels&&(1===f.dataLabels.length?delete f.dataLabels:delete f.dataLabels[l]),l||delete f.dataLabel,m&&(f.connector=f.connector.destroy(),f.connectors&&(1===f.connectors.length?delete f.connectors:delete f.connectors[l])))})})}L(this,
"afterDrawDataLabels")};z.prototype.alignDataLabel=function(b,c,d,a,n){var e=this,m=this.chart,r=this.isCartesian&&m.inverted,l=this.enabledDataSorting,f=k(b.dlBox&&b.dlBox.centerX,b.plotX,-9999),p=k(b.plotY,-9999),h=c.getBBox(),u=d.rotation,q=d.align,t=m.isInsidePlot(f,Math.round(p),{inverted:r,paneCoordinates:!0,series:e}),w="justify"===k(d.overflow,l?"none":"justify"),x=this.visible&&!1!==b.visible&&(b.series.forceDL||l&&!w||t||k(d.inside,!!this.options.stacking)&&a&&m.isInsidePlot(f,r?a.x+1:a.y+
a.height-1,{inverted:r,paneCoordinates:!0,series:e}));var v=function(a){l&&e.xAxis&&!w&&e.setDataLabelStartPos(b,c,n,t,a)};if(x){var B=m.renderer.fontMetrics(m.styledMode?void 0:d.style.fontSize,c).b;a=g({x:r?this.yAxis.len-p:f,y:Math.round(r?this.xAxis.len-f:p),width:0,height:0},a);g(d,{width:h.width,height:h.height});u?(w=!1,f=m.renderer.rotCorr(B,u),f={x:a.x+(d.x||0)+a.width/2+f.x,y:a.y+(d.y||0)+{top:0,middle:.5,bottom:1}[d.verticalAlign]*a.height},v(f),c[n?"attr":"animate"](f).attr({align:q}),
v=(u+720)%360,v=180<v&&360>v,"left"===q?f.y-=v?h.height:0:"center"===q?(f.x-=h.width/2,f.y-=h.height/2):"right"===q&&(f.x-=h.width,f.y-=v?0:h.height),c.placed=!0,c.alignAttr=f):(v(a),c.align(d,void 0,a),f=c.alignAttr);w&&0<=a.height?this.justifyDataLabel(c,d,f,h,a,n):k(d.crop,!0)&&(x=m.isInsidePlot(f.x,f.y,{paneCoordinates:!0,series:e})&&m.isInsidePlot(f.x+h.width,f.y+h.height,{paneCoordinates:!0,series:e}));if(d.shape&&!u)c[n?"attr":"animate"]({anchorX:r?m.plotWidth-b.plotY:b.plotX,anchorY:r?m.plotHeight-
b.plotX:b.plotY})}n&&l&&(c.placed=!1);x||l&&!w||(c.hide(!0),c.placed=!1)};z.prototype.setDataLabelStartPos=function(b,c,d,a,g){var e=this.chart,k=e.inverted,n=this.xAxis,l=n.reversed,f=k?c.height/2:c.width/2;b=(b=b.pointWidth)?b/2:0;n=k?g.x:l?-f-b:n.width-f+b;g=k?l?this.yAxis.height-f+b:-f-b:g.y;c.startXPos=n;c.startYPos=g;a?"hidden"===c.visibility&&(c.show(),c.attr({opacity:0}).animate({opacity:1})):c.attr({opacity:1}).animate({opacity:0},void 0,c.hide);e.hasRendered&&(d&&c.attr({x:c.startXPos,y:c.startYPos}),
c.placed=!0)};z.prototype.justifyDataLabel=function(b,c,d,a,g,k){var e=this.chart,n=c.align,l=c.verticalAlign,f=b.box?0:b.padding||0,m=c.x;m=void 0===m?0:m;var h=c.y;var u=void 0===h?0:h;h=(d.x||0)+f;if(0>h){"right"===n&&0<=m?(c.align="left",c.inside=!0):m-=h;var r=!0}h=(d.x||0)+a.width-f;h>e.plotWidth&&("left"===n&&0>=m?(c.align="right",c.inside=!0):m+=e.plotWidth-h,r=!0);h=d.y+f;0>h&&("bottom"===l&&0<=u?(c.verticalAlign="top",c.inside=!0):u-=h,r=!0);h=(d.y||0)+a.height-f;h>e.plotHeight&&("top"===
l&&0>=u?(c.verticalAlign="bottom",c.inside=!0):u+=e.plotHeight-h,r=!0);r&&(c.x=m,c.y=u,b.placed=!k,b.align(c,void 0,g));return r};D.pie&&(D.pie.prototype.dataLabelPositioners={radialDistributionY:function(b){return b.top+b.distributeBox.pos},radialDistributionX:function(b,c,d,a){return b.getX(d<c.top+2||d>c.bottom-2?a:d,c.half,c)},justify:function(b,c,d){return d[0]+(b.half?-1:1)*(c+b.labelDistance)},alignToPlotEdges:function(b,c,d,a){b=b.getBBox().width;return c?b+a:d-b-a},alignToConnectors:function(b,
c,d,a){var e=0,g;b.forEach(function(a){g=a.dataLabel.getBBox().width;g>e&&(e=g)});return c?e+a:d-e-a}},D.pie.prototype.drawDataLabels=function(){var c=this,e=c.data,g,a=c.chart,m=c.options.dataLabels||{},p=m.connectorPadding,q,x=a.plotWidth,l=a.plotHeight,f=a.plotLeft,I=Math.round(a.chartWidth/3),h,u=c.center,O=u[2]/2,v=u[1],y,B,J,N,L=[[],[]],M,D,K,H,P=[0,0,0,0],T=c.dataLabelPositioners,U;c.visible&&(m.enabled||c._hasPointLabels)&&(e.forEach(function(a){a.dataLabel&&a.visible&&a.dataLabel.shortened&&
(a.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),a.dataLabel.shortened=!1)}),z.prototype.drawDataLabels.apply(c),e.forEach(function(a){a.dataLabel&&(a.visible?(L[a.half].push(a),a.dataLabel._pos=null,!b(m.style.width)&&!b(a.options.dataLabels&&a.options.dataLabels.style&&a.options.dataLabels.style.width)&&a.dataLabel.getBBox().width>I&&(a.dataLabel.css({width:Math.round(.7*I)+"px"}),a.dataLabel.shortened=!0)):(a.dataLabel=a.dataLabel.destroy(),a.dataLabels&&1===a.dataLabels.length&&
delete a.dataLabels))}),L.forEach(function(e,h){var d=e.length,n=[],r;if(d){c.sortByAngle(e,h-.5);if(0<c.maxLabelDistance){var q=Math.max(0,v-O-c.maxLabelDistance);var t=Math.min(v+O+c.maxLabelDistance,a.plotHeight);e.forEach(function(b){0<b.labelDistance&&b.dataLabel&&(b.top=Math.max(0,v-O-b.labelDistance),b.bottom=Math.min(v+O+b.labelDistance,a.plotHeight),r=b.dataLabel.getBBox().height||21,b.distributeBox={target:b.labelPosition.natural.y-b.top+r/2,size:r,rank:b.y},n.push(b.distributeBox))});q=
t+r-q;A.distribute(n,q,q/5)}for(H=0;H<d;H++){g=e[H];J=g.labelPosition;y=g.dataLabel;K=!1===g.visible?"hidden":"inherit";D=q=J.natural.y;n&&b(g.distributeBox)&&("undefined"===typeof g.distributeBox.pos?K="hidden":(N=g.distributeBox.size,D=T.radialDistributionY(g)));delete g.positionIndex;if(m.justify)M=T.justify(g,O,u);else switch(m.alignTo){case "connectors":M=T.alignToConnectors(e,h,x,f);break;case "plotEdges":M=T.alignToPlotEdges(y,h,x,f);break;default:M=T.radialDistributionX(c,g,D,q)}y._attr={visibility:K,
align:J.alignment};U=g.options.dataLabels||{};y._pos={x:M+k(U.x,m.x)+({left:p,right:-p}[J.alignment]||0),y:D+k(U.y,m.y)-10};J.final.x=M;J.final.y=D;k(m.crop,!0)&&(B=y.getBBox().width,q=null,M-B<p&&1===h?(q=Math.round(B-M+p),P[3]=Math.max(q,P[3])):M+B>x-p&&0===h&&(q=Math.round(M+B-x+p),P[1]=Math.max(q,P[1])),0>D-N/2?P[0]=Math.max(Math.round(-D+N/2),P[0]):D+N/2>l&&(P[2]=Math.max(Math.round(D+N/2-l),P[2])),y.sideOverflow=q)}}}),0===d(P)||this.verifyDataLabelOverflow(P))&&(this.placeDataLabels(),this.points.forEach(function(b){U=
n(m,b.options.dataLabels);if(q=k(U.connectorWidth,1)){var e;h=b.connector;if((y=b.dataLabel)&&y._pos&&b.visible&&0<b.labelDistance){K=y._attr.visibility;if(e=!h)b.connector=h=a.renderer.path().addClass("highcharts-data-label-connector  highcharts-color-"+b.colorIndex+(b.className?" "+b.className:"")).add(c.dataLabelsGroup),a.styledMode||h.attr({"stroke-width":q,stroke:U.connectorColor||b.color||C.neutralColor60});h[e?"attr":"animate"]({d:b.getConnectorPath()});h.attr("visibility",K)}else h&&(b.connector=
h.destroy())}}))},D.pie.prototype.placeDataLabels=function(){this.points.forEach(function(b){var c=b.dataLabel,d;c&&b.visible&&((d=c._pos)?(c.sideOverflow&&(c._attr.width=Math.max(c.getBBox().width-c.sideOverflow,0),c.css({width:c._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),c.shortened=!0),c.attr(c._attr),c[c.moved?"animate":"attr"](d),c.moved=!0):c&&c.attr({y:-9999}));delete b.distributeBox},this)},D.pie.prototype.alignDataLabel=c,D.pie.prototype.verifyDataLabelOverflow=
function(b){var c=this.center,d=this.options,a=d.center,g=d.minSize||80,k=null!==d.size;if(!k){if(null!==a[0])var n=Math.max(c[2]-Math.max(b[1],b[3]),g);else n=Math.max(c[2]-b[1]-b[3],g),c[0]+=(b[3]-b[1])/2;null!==a[1]?n=m(n,g,c[2]-Math.max(b[0],b[2])):(n=m(n,g,c[2]-b[0]-b[2]),c[1]+=(b[0]-b[2])/2);n<c[2]?(c[2]=n,c[3]=Math.min(M(d.innerSize||0,n),n),this.translate(c),this.drawDataLabels&&this.drawDataLabels()):k=!0}return k});D.column&&(D.column.prototype.alignDataLabel=function(b,c,d,a,g){var e=this.chart.inverted,
m=b.series,p=b.dlBox||b.shapeArgs,l=k(b.below,b.plotY>k(this.translatedThreshold,m.yAxis.len)),f=k(d.inside,!!this.options.stacking);p&&(a=n(p),0>a.y&&(a.height+=a.y,a.y=0),p=a.y+a.height-m.yAxis.len,0<p&&p<a.height&&(a.height-=p),e&&(a={x:m.yAxis.len-a.y-a.height,y:m.xAxis.len-a.x-a.width,width:a.height,height:a.width}),f||(e?(a.x+=l?0:a.width,a.width=0):(a.y+=l?a.height:0,a.height=0)));d.align=k(d.align,!e||f?"center":l?"right":"left");d.verticalAlign=k(d.verticalAlign,e||f?"middle":l?"top":"bottom");
z.prototype.alignDataLabel.call(this,b,c,d,a,g);d.inside&&b.contrastColor&&c.css({color:b.contrastColor})})});P(c,"Extensions/OverlappingDataLabels.js",[c["Core/Chart/Chart.js"],c["Core/Utilities.js"]],function(c,v){function q(c,m){var b=!1;if(c){var d=c.newOpacity;c.oldOpacity!==d&&(c.alignAttr&&c.placed?(c[d?"removeClass":"addClass"]("highcharts-data-label-hidden"),b=!0,c.alignAttr.opacity=d,c[c.isOld?"animate":"attr"](c.alignAttr,null,function(){m.styledMode||c.css({pointerEvents:d?"auto":"none"})}),
z(m,"afterHideOverlappingLabel")):c.attr({opacity:d}));c.isOld=!0}return b}var C=v.addEvent,z=v.fireEvent,D=v.isArray,H=v.isNumber,K=v.objectEach,p=v.pick;C(c,"render",function(){var c=this,m=[];(this.labelCollectors||[]).forEach(function(b){m=m.concat(b())});(this.yAxis||[]).forEach(function(b){b.stacking&&b.options.stackLabels&&!b.options.stackLabels.allowOverlap&&K(b.stacking.stacks,function(b){K(b,function(b){b.label&&"hidden"!==b.label.visibility&&m.push(b.label)})})});(this.series||[]).forEach(function(b){var d=
b.options.dataLabels;b.visible&&(!1!==d.enabled||b._hasPointLabels)&&(d=function(b){return b.forEach(function(b){b.visible&&(D(b.dataLabels)?b.dataLabels:b.dataLabel?[b.dataLabel]:[]).forEach(function(d){var g=d.options;d.labelrank=p(g.labelrank,b.labelrank,b.shapeArgs&&b.shapeArgs.height);g.allowOverlap?(d.oldOpacity=d.opacity,d.newOpacity=1,q(d,c)):m.push(d)})})},d(b.nodes||[]),d(b.points))});this.hideOverlappingLabels(m)});c.prototype.hideOverlappingLabels=function(c){var d=this,b=c.length,g=d.renderer,
p,x,n,v=!1;var k=function(b){var c,e=b.box?0:b.padding||0,d=c=0,a;if(b&&(!b.alignAttr||b.placed)){var k=b.alignAttr||{x:b.attr("x"),y:b.attr("y")};var n=b.parentGroup;b.width||(c=b.getBBox(),b.width=c.width,b.height=c.height,c=g.fontMetrics(null,b.element).h);var m=b.width-2*e;(a={left:"0",center:"0.5",right:"1"}[b.alignValue])?d=+a*m:H(b.x)&&Math.round(b.x)!==b.translateX&&(d=b.x-b.translateX);return{x:k.x+(n.translateX||0)+e-(d||0),y:k.y+(n.translateY||0)+e-c,width:b.width-2*e,height:b.height-2*
e}}};for(x=0;x<b;x++)if(p=c[x])p.oldOpacity=p.opacity,p.newOpacity=1,p.absoluteBox=k(p);c.sort(function(b,c){return(c.labelrank||0)-(b.labelrank||0)});for(x=0;x<b;x++){var M=(k=c[x])&&k.absoluteBox;for(p=x+1;p<b;++p){var N=(n=c[p])&&n.absoluteBox;!M||!N||k===n||0===k.newOpacity||0===n.newOpacity||N.x>=M.x+M.width||N.x+N.width<=M.x||N.y>=M.y+M.height||N.y+N.height<=M.y||((k.labelrank<n.labelrank?k:n).newOpacity=0)}}c.forEach(function(b){q(b,d)&&(v=!0)});v&&z(d,"afterHideAllOverlappingLabels")}});P(c,
"Core/Responsive.js",[c["Core/Utilities.js"]],function(c){var q=c.extend,A=c.find,C=c.isArray,z=c.isObject,D=c.merge,H=c.objectEach,K=c.pick,p=c.splat,d=c.uniqueKey,m=function(){function b(){}b.prototype.currentOptions=function(b){function c(b,g,n,m){var k;H(b,function(b,e){if(!m&&-1<d.collectionsWithUpdate.indexOf(e)&&g[e])for(b=p(b),n[e]=[],k=0;k<Math.max(b.length,g[e].length);k++)g[e][k]&&(void 0===b[k]?n[e][k]=g[e][k]:(n[e][k]={},c(b[k],g[e][k],n[e][k],m+1)));else z(b)?(n[e]=C(b)?[]:{},c(b,g[e]||
{},n[e],m+1)):n[e]="undefined"===typeof g[e]?null:g[e]})}var d=this,g={};c(b,this.options,g,0);return g};b.prototype.matchResponsiveRule=function(b,c){var d=b.condition;(d.callback||function(){return this.chartWidth<=K(d.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=K(d.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=K(d.minWidth,0)&&this.chartHeight>=K(d.minHeight,0)}).call(this)&&c.push(b._id)};b.prototype.setResponsive=function(b,c){var g=this.options.responsive,n=this.currentResponsive,m=[];!c&&
g&&g.rules&&g.rules.forEach(function(b){"undefined"===typeof b._id&&(b._id=d());this.matchResponsiveRule(b,m)},this);c=D.apply(void 0,m.map(function(b){return A((g||{}).rules||[],function(c){return c._id===b})}).map(function(b){return b&&b.chartOptions}));c.isResponsiveOptions=!0;m=m.toString()||void 0;m!==(n&&n.ruleIds)&&(n&&this.update(n.undoOptions,b,!0),m?(n=this.currentOptions(c),n.isResponsiveOptions=!0,this.currentResponsive={ruleIds:m,mergedOptions:c,undoOptions:n},this.update(c,b,!0)):this.currentResponsive=
void 0)};return b}();c=function(){function b(){}b.compose=function(b){q(b.prototype,m.prototype);return b};return b}();"";"";return c});P(c,"masters/highcharts.src.js",[c["Core/Globals.js"],c["Core/Utilities.js"],c["Core/DefaultOptions.js"],c["Core/Animation/Fx.js"],c["Core/Animation/AnimationUtilities.js"],c["Core/Renderer/HTML/AST.js"],c["Core/FormatUtilities.js"],c["Core/Renderer/SVG/SVGElement.js"],c["Core/Renderer/SVG/SVGRenderer.js"],c["Core/Renderer/HTML/HTMLElement.js"],c["Core/Renderer/HTML/HTMLRenderer.js"],
c["Core/Axis/Axis.js"],c["Core/Axis/PlotLineOrBand.js"],c["Core/Axis/Tick.js"],c["Core/Pointer.js"],c["Core/MSPointer.js"],c["Core/Chart/Chart.js"],c["Core/Series/Series.js"],c["Core/Responsive.js"],c["Core/Color/Color.js"],c["Core/Time.js"]],function(c,v,A,C,z,D,H,K,p,d,m,b,g,L,x,n,B,k,M,N,J){c.animate=z.animate;c.animObject=z.animObject;c.getDeferredAnimation=z.getDeferredAnimation;c.setAnimation=z.setAnimation;c.stop=z.stop;c.timers=C.timers;c.AST=D;c.Axis=b;c.Chart=B;c.chart=B.chart;c.Fx=C;c.PlotLineOrBand=
g;c.Pointer=n.isRequired()?n:x;c.Series=k;c.SVGElement=K;c.SVGRenderer=p;c.Tick=L;c.Time=J;c.Color=N;c.color=N.parse;m.compose(p);d.compose(K);c.defaultOptions=A.defaultOptions;c.getOptions=A.getOptions;c.time=A.defaultTime;c.setOptions=A.setOptions;c.dateFormat=H.dateFormat;c.format=H.format;c.numberFormat=H.numberFormat;c.addEvent=v.addEvent;c.arrayMax=v.arrayMax;c.arrayMin=v.arrayMin;c.attr=v.attr;c.clearTimeout=v.clearTimeout;c.correctFloat=v.correctFloat;c.createElement=v.createElement;c.css=
v.css;c.defined=v.defined;c.destroyObjectProperties=v.destroyObjectProperties;c.discardElement=v.discardElement;c.erase=v.erase;c.error=v.error;c.extend=v.extend;c.extendClass=v.extendClass;c.find=v.find;c.fireEvent=v.fireEvent;c.getMagnitude=v.getMagnitude;c.getStyle=v.getStyle;c.inArray=v.inArray;c.isArray=v.isArray;c.isClass=v.isClass;c.isDOMElement=v.isDOMElement;c.isFunction=v.isFunction;c.isNumber=v.isNumber;c.isObject=v.isObject;c.isString=v.isString;c.keys=v.keys;c.merge=v.merge;c.normalizeTickInterval=
v.normalizeTickInterval;c.objectEach=v.objectEach;c.offset=v.offset;c.pad=v.pad;c.pick=v.pick;c.pInt=v.pInt;c.relativeLength=v.relativeLength;c.removeEvent=v.removeEvent;c.splat=v.splat;c.stableSort=v.stableSort;c.syncTimeout=v.syncTimeout;c.timeUnits=v.timeUnits;c.uniqueKey=v.uniqueKey;c.useSerialIds=v.useSerialIds;c.wrap=v.wrap;M.compose(B);return c});P(c,"Core/Axis/NavigatorAxis.js",[c["Core/Globals.js"],c["Core/Utilities.js"]],function(c,v){var q=c.isTouchDevice,C=v.addEvent,z=v.correctFloat,
D=v.defined,H=v.isNumber,K=v.pick,p=function(){function c(c){this.axis=c}c.prototype.destroy=function(){this.axis=void 0};c.prototype.toFixedRange=function(c,b,d,p){var g=this.axis,n=g.chart;n=n&&n.fixedRange;var m=(g.pointRange||0)/2;c=K(d,g.translate(c,!0,!g.horiz));b=K(p,g.translate(b,!0,!g.horiz));g=n&&(b-c)/n;D(d)||(c=z(c+m));D(p)||(b=z(b-m));.7<g&&1.3>g&&(p?c=b-n:b=c+n);H(c)&&H(b)||(c=b=void 0);return{min:c,max:b}};return c}();return function(){function c(){}c.compose=function(c){c.keepProps.push("navigatorAxis");
C(c,"init",function(){this.navigatorAxis||(this.navigatorAxis=new p(this))});C(c,"zoom",function(b){var c=this.chart.options,d=c.navigator,m=this.navigatorAxis,n=c.chart.pinchType,p=c.rangeSelector;c=c.chart.zoomType;this.isXAxis&&(d&&d.enabled||p&&p.enabled)&&("y"===c?b.zoomed=!1:(!q&&"xy"===c||q&&"xy"===n)&&this.options.range&&(d=m.previousZoom,D(b.newMin)?m.previousZoom=[this.min,this.max]:d&&(b.newMin=d[0],b.newMax=d[1],m.previousZoom=void 0)));"undefined"!==typeof b.zoomed&&b.preventDefault()})};
c.AdditionsClass=p;return c}()});P(c,"Core/Axis/ScrollbarAxis.js",[c["Core/Utilities.js"]],function(c){var q=c.addEvent,A=c.defined,C=c.pick;return function(){function c(){}c.compose=function(c,v){var z=function(c){var d=C(c.options&&c.options.min,c.min),m=C(c.options&&c.options.max,c.max);return{axisMin:d,axisMax:m,scrollMin:A(c.dataMin)?Math.min(d,c.min,c.dataMin,C(c.threshold,Infinity)):d,scrollMax:A(c.dataMax)?Math.max(m,c.max,c.dataMax,C(c.threshold,-Infinity)):m}};q(c,"afterInit",function(){var c=
this;c.options&&c.options.scrollbar&&c.options.scrollbar.enabled&&(c.options.scrollbar.vertical=!c.horiz,c.options.startOnTick=c.options.endOnTick=!1,c.scrollbar=new v(c.chart.renderer,c.options.scrollbar,c.chart),q(c.scrollbar,"changed",function(d){var m=z(c),b=m.axisMax,g=m.scrollMin,p=m.scrollMax-g;A(m.axisMin)&&A(b)&&(c.horiz&&!c.reversed||!c.horiz&&c.reversed?(m=g+p*this.to,g+=p*this.from):(m=g+p*(1-this.from),g+=p*(1-this.to)),this.shouldUpdateExtremes(d.DOMType)?c.setExtremes(g,m,!0,"mousemove"!==
d.DOMType&&"touchmove"!==d.DOMType,d):this.setRange(this.from,this.to))}))});q(c,"afterRender",function(){var c=z(this),d=c.scrollMin,m=c.scrollMax;c=this.scrollbar;var b=this.axisTitleMargin+(this.titleOffset||0),g=this.chart.scrollbarsOffsets,q=this.options.margin||0;c&&(this.horiz?(this.opposite||(g[1]+=b),c.position(this.left,this.top+this.height+2+g[1]-(this.opposite?q:0),this.width,this.height),this.opposite||(g[1]+=q),b=1):(this.opposite&&(g[0]+=b),c.position(this.left+this.width+2+g[0]-(this.opposite?
0:q),this.top,this.width,this.height),this.opposite&&(g[0]+=q),b=0),g[b]+=c.size+c.options.margin,isNaN(d)||isNaN(m)||!A(this.min)||!A(this.max)||this.min===this.max?c.setRange(0,1):(g=(this.min-d)/(m-d),d=(this.max-d)/(m-d),this.horiz&&!this.reversed||!this.horiz&&this.reversed?c.setRange(g,d):c.setRange(1-d,1-g)))});q(c,"afterGetOffset",function(){var c=this.horiz?2:1,d=this.scrollbar;d&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[c]+=d.size+d.options.margin)});return c};return c}()});
P(c,"Core/ScrollbarDefaults.js",[c["Core/Globals.js"],c["Core/Color/Palette.js"]],function(c,v){return{height:c.isTouchDevice?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,margin:10,minWidth:6,step:.2,zIndex:3,barBackgroundColor:v.neutralColor20,barBorderWidth:1,barBorderColor:v.neutralColor20,buttonArrowColor:v.neutralColor80,buttonBackgroundColor:v.neutralColor10,buttonBorderColor:v.neutralColor20,buttonBorderWidth:1,rifleColor:v.neutralColor80,trackBackgroundColor:v.neutralColor5,
trackBorderColor:v.neutralColor5,trackBorderWidth:1}});P(c,"Core/Scrollbar.js",[c["Core/DefaultOptions.js"],c["Core/Globals.js"],c["Core/Axis/ScrollbarAxis.js"],c["Core/ScrollbarDefaults.js"],c["Core/Utilities.js"]],function(c,v,A,C,z){var q=c.defaultOptions,H=z.addEvent,K=z.correctFloat,p=z.defined,d=z.destroyObjectProperties,m=z.fireEvent,b=z.merge,g=z.pick,L=z.removeEvent;c=function(){function c(b,c,d){this._events=[];this.chart=void 0;this.from=this.chartY=this.chartX=0;this.scrollbar=this.renderer=
this.options=this.group=void 0;this.scrollbarButtons=[];this.scrollbarGroup=void 0;this.scrollbarLeft=0;this.scrollbarRifles=void 0;this.scrollbarStrokeWidth=1;this.to=this.size=this.scrollbarTop=0;this.track=void 0;this.trackBorderWidth=1;this.userOptions=void 0;this.y=this.x=0;this.init(b,c,d)}c.compose=function(b){A.compose(b,c)};c.swapXY=function(b,c){c&&b.forEach(function(b){for(var c=b.length,d,g=0;g<c;g+=2)d=b[g+1],"number"===typeof d&&(b[g+1]=b[g+2],b[g+2]=d)});return b};c.prototype.addEvents=
function(){var b=this.options.inverted?[1,0]:[0,1],c=this.scrollbarButtons,d=this.scrollbarGroup.element,g=this.track.element,m=this.mouseDownHandler.bind(this),p=this.mouseMoveHandler.bind(this),q=this.mouseUpHandler.bind(this);b=[[c[b[0]].element,"click",this.buttonToMinClick.bind(this)],[c[b[1]].element,"click",this.buttonToMaxClick.bind(this)],[g,"click",this.trackClick.bind(this)],[d,"mousedown",m],[d.ownerDocument,"mousemove",p],[d.ownerDocument,"mouseup",q]];v.hasTouch&&b.push([d,"touchstart",
m],[d.ownerDocument,"touchmove",p],[d.ownerDocument,"touchend",q]);b.forEach(function(b){H.apply(null,b)});this._events=b};c.prototype.buttonToMaxClick=function(b){var c=(this.to-this.from)*g(this.options.step,.2);this.updatePosition(this.from+c,this.to+c);m(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:b})};c.prototype.buttonToMinClick=function(b){var c=K(this.to-this.from)*g(this.options.step,.2);this.updatePosition(K(this.from-c),K(this.to-c));m(this,"changed",{from:this.from,
to:this.to,trigger:"scrollbar",DOMEvent:b})};c.prototype.cursorToScrollbarPosition=function(b){var c=this.options;c=c.minWidth>this.calculatedWidth?c.minWidth:0;return{chartX:(b.chartX-this.x-this.xOffset)/(this.barWidth-c),chartY:(b.chartY-this.y-this.yOffset)/(this.barWidth-c)}};c.prototype.destroy=function(){var b=this,c=b.chart.scroller;b.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(c){b[c]&&b[c].destroy&&(b[c]=b[c].destroy())});c&&b===c.scrollbar&&
(c.scrollbar=null,d(c.scrollbarButtons))};c.prototype.drawScrollbarButton=function(b){var d=this.renderer,g=this.scrollbarButtons,n=this.options,m=this.size,p=d.g().add(this.group);g.push(p);p=d.rect().addClass("highcharts-scrollbar-button").add(p);this.chart.styledMode||p.attr({stroke:n.buttonBorderColor,"stroke-width":n.buttonBorderWidth,fill:n.buttonBackgroundColor});p.attr(p.crisp({x:-.5,y:-.5,width:m+1,height:m+1,r:n.buttonBorderRadius},p.strokeWidth()));p=d.path(c.swapXY([["M",m/2+(b?-1:1),
m/2-3],["L",m/2+(b?-1:1),m/2+3],["L",m/2+(b?2:-2),m/2]],n.vertical)).addClass("highcharts-scrollbar-arrow").add(g[b]);this.chart.styledMode||p.attr({fill:n.buttonArrowColor})};c.prototype.init=function(c,d,k){this.scrollbarButtons=[];this.renderer=c;this.userOptions=d;this.options=b(C,q.scrollbar,d);this.chart=k;this.size=g(this.options.size,this.options.height);d.enabled&&(this.render(),this.addEvents())};c.prototype.mouseDownHandler=function(b){b=this.chart.pointer.normalize(b);b=this.cursorToScrollbarPosition(b);
this.chartX=b.chartX;this.chartY=b.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=!0};c.prototype.mouseMoveHandler=function(b){var c=this.chart.pointer.normalize(b),d=this.options.vertical?"chartY":"chartX",g=this.initPositions||[];!this.grabbedCenter||b.touches&&0===b.touches[0][d]||(c=this.cursorToScrollbarPosition(c)[d],d=this[d],d=c-d,this.hasDragged=!0,this.updatePosition(g[0]+d,g[1]+d),this.hasDragged&&m(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:b.type,
DOMEvent:b}))};c.prototype.mouseUpHandler=function(b){this.hasDragged&&m(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:b.type,DOMEvent:b});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};c.prototype.position=function(b,c,d,g){var k=this.options.vertical,n=this.rendered?"animate":"attr",m=0;this.x=b;this.y=c+this.trackBorderWidth;this.width=d;this.xOffset=this.height=g;this.yOffset=m;k?(this.width=this.yOffset=d=m=this.size,this.xOffset=c=0,this.barWidth=g-
2*d,this.x=b+=this.options.margin):(this.height=this.xOffset=g=c=this.size,this.barWidth=d-2*g,this.y+=this.options.margin);this.group[n]({translateX:b,translateY:this.y});this.track[n]({width:d,height:g});this.scrollbarButtons[1][n]({translateX:k?0:d-c,translateY:k?g-m:0})};c.prototype.removeEvents=function(){this._events.forEach(function(b){L.apply(null,b)});this._events.length=0};c.prototype.render=function(){var b=this.renderer,d=this.options,g=this.size,m=this.chart.styledMode,p=b.g("scrollbar").attr({zIndex:d.zIndex,
translateY:-99999}).add();this.group=p;this.track=b.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:d.trackBorderRadius||0,height:g,width:g}).add(p);m||this.track.attr({fill:d.trackBackgroundColor,stroke:d.trackBorderColor,"stroke-width":d.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%2/2});this.scrollbarGroup=b.g().add(p);this.scrollbar=b.rect().addClass("highcharts-scrollbar-thumb").attr({height:g,width:g,r:d.barBorderRadius||
0}).add(this.scrollbarGroup);this.scrollbarRifles=b.path(c.swapXY([["M",-3,g/4],["L",-3,2*g/3],["M",0,g/4],["L",0,2*g/3],["M",3,g/4],["L",3,2*g/3]],d.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);m||(this.scrollbar.attr({fill:d.barBackgroundColor,stroke:d.barBorderColor,"stroke-width":d.barBorderWidth}),this.scrollbarRifles.attr({stroke:d.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)};c.prototype.setRange=function(b,c){var d=this.options,g=d.vertical,n=d.minWidth,m=this.barWidth,q=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(p(m)){var e=m*Math.min(c,1);b=Math.max(b,0);var t=Math.ceil(m*b);this.calculatedWidth=e=K(e-t);e<n&&(t=(m-n+e)*b,e=n);n=Math.floor(t+this.xOffset+this.yOffset);m=e/2-.5;this.from=b;this.to=c;g?(this.scrollbarGroup[q]({translateY:n}),
this.scrollbar[q]({height:e}),this.scrollbarRifles[q]({translateY:m}),this.scrollbarTop=n,this.scrollbarLeft=0):(this.scrollbarGroup[q]({translateX:n}),this.scrollbar[q]({width:e}),this.scrollbarRifles[q]({translateX:m}),this.scrollbarLeft=n,this.scrollbarTop=0);12>=e?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===d.showFull&&(0>=b&&1<=c?this.group.hide():this.group.show());this.rendered=!0}};c.prototype.shouldUpdateExtremes=function(b){return g(this.options.liveRedraw,v.svg&&!v.isTouchDevice&&
!this.chart.isBoosting)||"mouseup"===b||"touchend"===b||!p(b)};c.prototype.trackClick=function(b){var c=this.chart.pointer.normalize(b),d=this.to-this.from,g=this.y+this.scrollbarTop,n=this.x+this.scrollbarLeft;this.options.vertical&&c.chartY>g||!this.options.vertical&&c.chartX>n?this.updatePosition(this.from+d,this.to+d):this.updatePosition(this.from-d,this.to-d);m(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:b})};c.prototype.update=function(c){this.destroy();this.init(this.chart.renderer,
b(!0,this.options,c),this.chart)};c.prototype.updatePosition=function(b,c){1<c&&(b=K(1-K(c-b)),c=1);0>b&&(c=K(c-b),b=0);this.from=b;this.to=c};c.defaultOptions=C;return c}();q.scrollbar=b(!0,c.defaultOptions,q.scrollbar);return c});P(c,"Core/Navigator.js",[c["Core/Axis/Axis.js"],c["Core/Chart/Chart.js"],c["Core/Color/Color.js"],c["Core/Globals.js"],c["Core/Axis/NavigatorAxis.js"],c["Core/DefaultOptions.js"],c["Core/Color/Palette.js"],c["Core/Renderer/RendererRegistry.js"],c["Core/Scrollbar.js"],c["Core/Series/Series.js"],
c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H,K,p,d,m,b){A=A.parse;var g=C.hasTouch,q=C.isTouchDevice,x=D.defaultOptions,n=b.addEvent,B=b.clamp,k=b.correctFloat,M=b.defined,N=b.destroyObjectProperties,J=b.erase,w=b.extend,e=b.find,t=b.isArray,a=b.isNumber,r=b.merge,E=b.pick,F=b.removeEvent,G=b.splat,l=function(b){for(var c=[],e=1;e<arguments.length;e++)c[e-1]=arguments[e];c=[].filter.call(c,a);if(c.length)return Math[b].apply(0,c)};D="undefined"===typeof m.seriesTypes.areaspline?
"line":"areaspline";w(x,{navigator:{height:40,margin:25,maskInside:!0,handles:{width:7,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:H.neutralColor5,borderColor:H.neutralColor40},maskFill:A(H.highlightColor60).setOpacity(.3).get(),outlineColor:H.neutralColor20,outlineWidth:1,series:{type:D,fillOpacity:.05,lineWidth:1,compare:null,dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",
units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{overscroll:0,className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:H.neutralColor10,gridLineWidth:1,tickPixelInterval:200,
labels:{align:"left",style:{color:H.neutralColor40},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},tickLength:0,tickWidth:0}}});K.getRendererType().prototype.symbols["navigator-handle"]=function(a,b,c,e,d){a=(d&&d.width||0)/2;b=Math.round(a/3)+.5;d=d&&d.height||0;return[["M",-a-1,.5],["L",a,.5],["L",a,d+.5],["L",-a-1,d+.5],["L",-a-1,.5],["M",-b,4],["L",
-b,d-3],["M",b-1,4],["L",b-1,d-3]]};var f=function(){function b(a){this.zoomedMin=this.zoomedMax=this.yAxis=this.xAxis=this.top=this.size=this.shades=this.rendered=this.range=this.outlineHeight=this.outline=this.opposite=this.navigatorSize=this.navigatorSeries=this.navigatorOptions=this.navigatorGroup=this.navigatorEnabled=this.left=this.height=this.handles=this.chart=this.baseSeries=void 0;this.init(a)}b.prototype.drawHandle=function(a,b,c,e){var d=this.navigatorOptions.handles.height;this.handles[b][e](c?
{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(a,10)+.5-d)}:{translateX:Math.round(this.left+parseInt(a,10)),translateY:Math.round(this.top+this.height/2-d/2-1)})};b.prototype.drawOutline=function(a,b,c,e){var d=this.navigatorOptions.maskInside,h=this.outline.strokeWidth(),f=h/2,g=h%2/2;h=this.outlineHeight;var l=this.scrollbarHeight||0,k=this.size,u=this.left-l,m=this.top;c?(u-=f,c=m+b+g,b=m+a+g,g=[["M",u+h,m-l-g],["L",u+h,c],["L",u,c],["L",u,b],["L",u+h,
b],["L",u+h,m+k+l]],d&&g.push(["M",u+h,c-f],["L",u+h,b+f])):(a+=u+l-g,b+=u+l-g,m+=f,g=[["M",u,m],["L",a,m],["L",a,m+h],["L",b,m+h],["L",b,m],["L",u+k+2*l,m]],d&&g.push(["M",a-f,m],["L",b+f,m]));this.outline[e]({d:g})};b.prototype.drawMasks=function(a,b,c,e){var d=this.left,h=this.top,f=this.height;if(c){var g=[d,d,d];var l=[h,h+a,h+b];var k=[f,f,f];var u=[a,b-a,this.size-b]}else g=[d,d+a,d+b],l=[h,h,h],k=[a,b-a,this.size-b],u=[f,f,f];this.shades.forEach(function(a,b){a[e]({x:g[b],y:l[b],width:k[b],
height:u[b]})})};b.prototype.renderElements=function(){var a=this,b=a.navigatorOptions,c=b.maskInside,d=a.chart,e=d.renderer,f,g={cursor:d.inverted?"ns-resize":"ew-resize"};a.navigatorGroup=f=e.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();[!c,c,!c].forEach(function(c,h){a.shades[h]=e.rect().addClass("highcharts-navigator-mask"+(1===h?"-inside":"-outside")).add(f);d.styledMode||a.shades[h].attr({fill:c?b.maskFill:"rgba(0,0,0,0)"}).css(1===h&&g)});a.outline=e.path().addClass("highcharts-navigator-outline").add(f);
d.styledMode||a.outline.attr({"stroke-width":b.outlineWidth,stroke:b.outlineColor});b.handles.enabled&&[0,1].forEach(function(c){b.handles.inverted=d.inverted;a.handles[c]=e.symbol(b.handles.symbols[c],-b.handles.width/2-1,0,b.handles.width,b.handles.height,b.handles);a.handles[c].attr({zIndex:7-c}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][c]).add(f);if(!d.styledMode){var h=b.handles;a.handles[c].attr({fill:h.backgroundColor,stroke:h.borderColor,"stroke-width":h.lineWidth}).css(g)}})};
b.prototype.update=function(a){(this.series||[]).forEach(function(a){a.baseSeries&&delete a.baseSeries.navigatorSeries});this.destroy();r(!0,this.chart.options.navigator,this.options,a);this.init(this.chart)};b.prototype.render=function(b,c,d,e){var h=this.chart,f=this.scrollbarHeight,g,l=this.xAxis,m=l.pointRange||0;var u=l.navigatorAxis.fake?h.xAxis[0]:l;var n=this.navigatorEnabled,p,r=this.rendered;var t=h.inverted;var q=h.xAxis[0].minRange,I=h.xAxis[0].options.maxRange;if(!this.hasDragged||M(d)){b=
k(b-m/2);c=k(c+m/2);if(!a(b)||!a(c))if(r)d=0,e=E(l.width,u.width);else return;this.left=E(l.left,h.plotLeft+f+(t?h.plotWidth:0));this.size=p=g=E(l.len,(t?h.plotHeight:h.plotWidth)-2*f);h=t?f:g+2*f;d=E(d,l.toPixels(b,!0));e=E(e,l.toPixels(c,!0));a(d)&&Infinity!==Math.abs(d)||(d=0,e=h);b=l.toValue(d,!0);c=l.toValue(e,!0);var w=Math.abs(k(c-b));w<q?this.grabbedLeft?d=l.toPixels(c-q-m,!0):this.grabbedRight&&(e=l.toPixels(b+q+m,!0)):M(I)&&k(w-m)>I&&(this.grabbedLeft?d=l.toPixels(c-I-m,!0):this.grabbedRight&&
(e=l.toPixels(b+I+m,!0)));this.zoomedMax=B(Math.max(d,e),0,p);this.zoomedMin=B(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(d,e),0,p);this.range=this.zoomedMax-this.zoomedMin;p=Math.round(this.zoomedMax);d=Math.round(this.zoomedMin);n&&(this.navigatorGroup.attr({visibility:"visible"}),r=r&&!this.hasDragged?"animate":"attr",this.drawMasks(d,p,t,r),this.drawOutline(d,p,t,r),this.navigatorOptions.handles.enabled&&(this.drawHandle(d,0,t,r),this.drawHandle(p,1,t,r)));this.scrollbar&&(t?(t=this.top-
f,u=this.left-f+(n||!u.opposite?0:(u.titleOffset||0)+u.axisTitleMargin),f=g+2*f):(t=this.top+(n?this.height:-f),u=this.left-f),this.scrollbar.position(u,t,h,f),this.scrollbar.setRange(this.zoomedMin/(g||1),this.zoomedMax/(g||1)));this.rendered=!0}};b.prototype.addMouseEvents=function(){var a=this,b=a.chart,c=b.container,d=[],e,f;a.mouseMoveHandler=e=function(b){a.onMouseMove(b)};a.mouseUpHandler=f=function(b){a.onMouseUp(b)};d=a.getPartsEvents("mousedown");d.push(n(b.renderTo,"mousemove",e),n(c.ownerDocument,
"mouseup",f));g&&(d.push(n(b.renderTo,"touchmove",e),n(c.ownerDocument,"touchend",f)),d.concat(a.getPartsEvents("touchstart")));a.eventsToUnbind=d;a.series&&a.series[0]&&d.push(n(a.series[0].xAxis,"foundExtremes",function(){b.navigator.modifyNavigatorAxisExtremes()}))};b.prototype.getPartsEvents=function(a){var b=this,c=[];["shades","handles"].forEach(function(d){b[d].forEach(function(e,h){c.push(n(e.element,a,function(a){b[d+"Mousedown"](a,h)}))})});return c};b.prototype.shadesMousedown=function(a,
b){a=this.chart.pointer.normalize(a);var c=this.chart,d=this.xAxis,e=this.zoomedMin,h=this.left,f=this.size,g=this.range,l=a.chartX;c.inverted&&(l=a.chartY,h=this.top);if(1===b)this.grabbedCenter=l,this.fixedWidth=g,this.dragOffset=l-e;else{a=l-h-g/2;if(0===b)a=Math.max(0,a);else if(2===b&&a+g>=f)if(a=f-g,this.reversedExtremes){a-=g;var k=this.getUnionExtremes().dataMin}else var m=this.getUnionExtremes().dataMax;a!==e&&(this.fixedWidth=g,b=d.navigatorAxis.toFixedRange(a,a+g,k,m),M(b.min)&&c.xAxis[0].setExtremes(Math.min(b.min,
b.max),Math.max(b.min,b.max),!0,null,{trigger:"navigator"}))}};b.prototype.handlesMousedown=function(a,b){this.chart.pointer.normalize(a);a=this.chart;var c=a.xAxis[0],d=this.reversedExtremes;0===b?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=d?c.min:c.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=d?c.max:c.min);a.fixedRange=null};b.prototype.onMouseMove=function(a){var b=this,c=b.chart,d=b.left,e=b.navigatorSize,h=b.range,f=b.dragOffset,
g=c.inverted;a.touches&&0===a.touches[0].pageX||(a=c.pointer.normalize(a),c=a.chartX,g&&(d=b.top,c=a.chartY),b.grabbedLeft?(b.hasDragged=!0,b.render(0,0,c-d,b.otherHandlePos)):b.grabbedRight?(b.hasDragged=!0,b.render(0,0,b.otherHandlePos,c-d)):b.grabbedCenter&&(b.hasDragged=!0,c<f?c=f:c>e+f-h&&(c=e+f-h),b.render(0,0,c-f,c-f+h)),b.hasDragged&&b.scrollbar&&E(b.scrollbar.options.liveRedraw,C.svg&&!q&&!this.chart.isBoosting)&&(a.DOMType=a.type,setTimeout(function(){b.onMouseUp(a)},0)))};b.prototype.onMouseUp=
function(b){var c=this.chart,d=this.xAxis,e=this.scrollbar,h=b.DOMEvent||b,f=c.inverted,g=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!e||!e.hasDragged)||"scrollbar"===b.trigger){e=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var l=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var k=this.fixedExtreme;this.zoomedMax===this.size&&(k=this.reversedExtremes?e.dataMin:e.dataMax);0===this.zoomedMin&&(l=this.reversedExtremes?e.dataMax:e.dataMin);
d=d.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,l,k);M(d.min)&&c.xAxis[0].setExtremes(Math.min(d.min,d.max),Math.max(d.min,d.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:h})}"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)&&(c=Math.round(this.zoomedMin),
b=Math.round(this.zoomedMax),this.shades&&this.drawMasks(c,b,f,g),this.outline&&this.drawOutline(c,b,f,g),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(c,0,f,g),this.drawHandle(b,1,f,g)))};b.prototype.removeEvents=function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};b.prototype.removeBaseSeriesEvents=function(){var a=this.baseSeries||[];this.navigatorEnabled&&
a[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&a.forEach(function(a){F(a,"updatedData",this.updatedDataHandler)},this),a[0].xAxis&&F(a[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};b.prototype.init=function(a){var b=a.options,d=b.navigator,e=d.enabled,h=b.scrollbar,f=h.enabled;b=e?d.height:0;var g=f?h.height:0;this.handles=[];this.shades=[];this.chart=a;this.setBaseSeries();this.height=b;this.scrollbarHeight=g;this.scrollbarEnabled=f;this.navigatorEnabled=e;this.navigatorOptions=
d;this.scrollbarOptions=h;this.outlineHeight=b+g;this.opposite=E(d.opposite,!(e||!a.inverted));var k=this;e=k.baseSeries;h=a.xAxis.length;f=a.yAxis.length;var m=e&&e[0]&&e[0].xAxis||a.xAxis[0]||{options:{}};a.isDirtyBox=!0;k.navigatorEnabled?(k.xAxis=new c(a,r({breaks:m.options.breaks,ordinal:m.options.ordinal},d.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:h,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},
a.inverted?{offsets:[g,0,-g,0],width:b}:{offsets:[0,-g,0,g],height:b})),k.yAxis=new c(a,r(d.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:f,isInternal:!0,reversed:E(d.yAxis&&d.yAxis.reversed,a.yAxis[0]&&a.yAxis[0].reversed,!1),zoomEnabled:!1},a.inverted?{width:b}:{height:b})),e||d.series.data?k.updateNavigatorSeries(!1):0===a.series.length&&(k.unbindRedraw=n(a,"beforeRedraw",function(){0<a.series.length&&!k.series&&(k.setBaseSeries(),k.unbindRedraw())})),k.reversedExtremes=a.inverted&&
!k.xAxis.reversed||!a.inverted&&k.xAxis.reversed,k.renderElements(),k.addMouseEvents()):(k.xAxis={chart:a,navigatorAxis:{fake:!0},translate:function(b,c){var d=a.xAxis[0],e=d.getExtremes(),h=d.len-2*g,f=l("min",d.options.min,e.dataMin);d=l("max",d.options.max,e.dataMax)-f;return c?b*d/h+f:h*(b-f)/d},toPixels:function(a){return this.translate(a)},toValue:function(a){return this.translate(a,!0)}},k.xAxis.navigatorAxis.axis=k.xAxis,k.xAxis.navigatorAxis.toFixedRange=z.AdditionsClass.prototype.toFixedRange.bind(k.xAxis.navigatorAxis));
a.options.scrollbar.enabled&&(a.scrollbar=k.scrollbar=new p(a.renderer,r(a.options.scrollbar,{margin:k.navigatorEnabled?0:10,vertical:a.inverted}),a),n(k.scrollbar,"changed",function(a){var b=k.size,c=b*this.to;b*=this.from;k.hasDragged=k.scrollbar.hasDragged;k.render(0,0,b,c);this.shouldUpdateExtremes(a.DOMType)&&setTimeout(function(){k.onMouseUp(a)})}));k.addBaseSeriesEvents();k.addChartEvents()};b.prototype.getUnionExtremes=function(a){var b=this.chart.xAxis[0],c=this.xAxis,d=c.options,e=b.options,
h;a&&null===b.dataMin||(h={dataMin:E(d&&d.min,l("min",e.min,b.dataMin,c.dataMin,c.min)),dataMax:E(d&&d.max,l("max",e.max,b.dataMax,c.dataMax,c.max))});return h};b.prototype.setBaseSeries=function(a,b){var c=this.chart,d=this.baseSeries=[];a=a||c.options&&c.options.navigator.baseSeries||(c.series.length?e(c.series,function(a){return!a.options.isInternal}).index:0);(c.series||[]).forEach(function(b,c){b.options.isInternal||!b.options.showInNavigator&&(c!==a&&b.options.id!==a||!1===b.options.showInNavigator)||
d.push(b)});this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,b)};b.prototype.updateNavigatorSeries=function(a,b){var c=this,d=c.chart,e=c.baseSeries,h,f,g=c.navigatorOptions.series,l,k={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:"navigator-x-axis",yAxis:"navigator-y-axis",showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},m=c.series=(c.series||[]).filter(function(a){var b=a.baseSeries;return 0>e.indexOf(b)?(b&&(F(b,
"updatedData",c.updatedDataHandler),delete b.navigatorSeries),a.chart&&a.destroy(),!1):!0});e&&e.length&&e.forEach(function(a){var n=a.navigatorSeries,u=w({color:a.color,visible:a.visible},t(g)?x.navigator.series:g);n&&!1===c.navigatorOptions.adaptToUpdatedData||(k.name="Navigator "+e.length,h=a.options||{},l=h.navigatorOptions||{},u.dataLabels=G(u.dataLabels),f=r(h,k,u,l),f.pointRange=E(u.pointRange,l.pointRange,x.plotOptions[f.type||"line"].pointRange),u=l.data||u.data,c.hasNavigatorData=c.hasNavigatorData||
!!u,f.data=u||h.data&&h.data.slice(0),n&&n.options?n.update(f,b):(a.navigatorSeries=d.initSeries(f),a.navigatorSeries.baseSeries=a,m.push(a.navigatorSeries)))});if(g.data&&(!e||!e.length)||t(g))c.hasNavigatorData=!1,g=G(g),g.forEach(function(a,b){k.name="Navigator "+(m.length+1);f=r(x.navigator.series,{color:d.series[b]&&!d.series[b].options.isInternal&&d.series[b].color||d.options.colors[b]||d.options.colors[0]},k,a);f.data=a.data;f.data&&(c.hasNavigatorData=!0,m.push(d.initSeries(f)))});a&&this.addBaseSeriesEvents()};
b.prototype.addBaseSeriesEvents=function(){var a=this,b=a.baseSeries||[];b[0]&&b[0].xAxis&&b[0].eventsToUnbind.push(n(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes));b.forEach(function(b){b.eventsToUnbind.push(n(b,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)}));b.eventsToUnbind.push(n(b,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)}));!1!==this.navigatorOptions.adaptToUpdatedData&&b.xAxis&&b.eventsToUnbind.push(n(b,"updatedData",
this.updatedDataHandler));b.eventsToUnbind.push(n(b,"remove",function(){this.navigatorSeries&&(J(a.series,this.navigatorSeries),M(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))},this)};b.prototype.getBaseSeriesMin=function(a){return this.baseSeries.reduce(function(a,b){return Math.min(a,b.xData?b.xData[0]:a)},a)};b.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))};b.prototype.modifyBaseAxisExtremes=function(){var b=this.chart.navigator,c=this.getExtremes(),d=c.dataMin,e=c.dataMax;c=c.max-c.min;var f=b.stickToMin,g=b.stickToMax,l=E(this.options.overscroll,0),k=b.series&&b.series[0],m=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(f){var n=d;var p=n+c}g&&(p=e+l,f||(n=Math.max(d,p-c,b.getBaseSeriesMin(k&&k.xData?k.xData[0]:-Number.MAX_VALUE))));
m&&(f||g)&&a(n)&&(this.min=this.userMin=n,this.max=this.userMax=p)}b.stickToMin=b.stickToMax=null};b.prototype.updatedDataHandler=function(){var a=this.chart.navigator,b=this.navigatorSeries;a.stickToMax=a.reversedExtremes?0===Math.round(a.zoomedMin):Math.round(a.zoomedMax)>=Math.round(a.size);a.stickToMin=a.shouldStickToMin(this,a);b&&!a.hasNavigatorData&&(b.options.pointStart=this.xData[0],b.setData(this.options.data,!1,null,!1))};b.prototype.shouldStickToMin=function(b,c){c=c.getBaseSeriesMin(b.xData[0]);
var d=b.xAxis;b=d.max;var e=d.min;d=d.options.range;var f=!0;a(b)&&a(e)&&(f=d&&0<b-c?b-c<d&&!this.chart.fixedRange:e<=c);return f};b.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(n(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)}),n(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}))};b.prototype.destroy=function(){this.removeEvents();this.xAxis&&(J(this.chart.xAxis,this.xAxis),J(this.chart.axes,this.xAxis));this.yAxis&&(J(this.chart.yAxis,this.yAxis),J(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){N(a)},this)};return b}();C.Navigator||(C.Navigator=f,z.compose(c),n(v,"beforeShowResetZoom",function(){var a=this.options,b=a.navigator,c=a.rangeSelector;if((b&&b.enabled||c&&c.enabled)&&(!q&&"x"===a.chart.zoomType||q&&"x"===a.chart.pinchType))return!1}),n(v,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new f(this)}),n(v,"afterSetChartSize",
function(){var a=this.legend,b=this.navigator;if(b){var c=a&&a.options;var d=b.xAxis;var e=b.yAxis;var f=b.scrollbarHeight;this.inverted?(b.left=b.opposite?this.chartWidth-f-b.height:this.spacing[3]+f,b.top=this.plotTop+f):(b.left=E(d.left,this.plotLeft+f),b.top=b.navigatorOptions.top||this.chartHeight-b.height-f-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(c&&"bottom"===c.verticalAlign&&"proximate"!==c.layout&&c.enabled&&!c.floating?a.legendHeight+
E(c.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0));d&&e&&(this.inverted?d.options.left=e.options.left=b.left:d.options.top=e.options.top=b.top,d.setAxisSize(),e.setAxisSize())}}),n(v,"update",function(a){var b=a.options.navigator||{},c=a.options.scrollbar||{};this.navigator||this.scroller||!b.enabled&&!c.enabled||(r(!0,this.options.navigator,b),r(!0,this.options.scrollbar,c),delete a.options.navigator,delete a.options.scrollbar)}),n(v,"afterUpdate",function(a){this.navigator||this.scroller||
!this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new f(this),E(a.redraw,!0)&&this.redraw(a.animation))}),n(v,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),n(d,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),v.prototype.callbacks.push(function(a){var b=a.navigator;b&&a.xAxis[0]&&(a=a.xAxis[0].getExtremes(),b.render(a.min,a.max))}));C.Navigator=
f;return C.Navigator});P(c,"Core/Axis/OrdinalAxis.js",[c["Core/Axis/Axis.js"],c["Core/Chart/Chart.js"],c["Core/Globals.js"],c["Core/Series/Series.js"],c["Core/Utilities.js"]],function(c,v,A,C,z){var q=z.addEvent,H=z.css,K=z.defined,p=z.error,d=z.pick,m=z.timeUnits,b;(function(b){var c=function(){function b(b){this.index={};this.axis=b}b.prototype.beforeSetTickPositions=function(){var b=this.axis,c=b.ordinal,g=[],m,p=!1,q=b.getExtremes(),w=q.min,e=q.max,t,a=b.isXAxis&&!!b.options.breaks;q=b.options.ordinal;
var r=Number.MAX_VALUE,v=b.chart.options.chart.ignoreHiddenSeries,x;if(q||a){b.series.forEach(function(b,c){m=[];if(!(v&&!1===b.visible||!1===b.takeOrdinalPosition&&!a)&&(g=g.concat(b.processedXData),G=g.length,g.sort(function(a,b){return a-b}),r=Math.min(r,d(b.closestPointRange,r)),G)){for(c=0;c<G-1;)g[c]!==g[c+1]&&m.push(g[c+1]),c++;m[0]!==g[0]&&m.unshift(g[0]);g=m}b.isSeriesBoosting&&(x=!0)});x&&(g.length=0);var G=g.length;if(2<G){var l=g[1]-g[0];for(t=G-1;t--&&!p;)g[t+1]-g[t]!==l&&(p=!0);!b.options.keepOrdinalPadding&&
(g[0]-w>l||e-g[g.length-1]>l)&&(p=!0)}else b.options.overscroll&&(2===G?r=g[1]-g[0]:1===G?(r=b.options.overscroll,g=[g[0],g[0]+r]):r=c.overscrollPointsRange);p||b.forceOrdinal?(b.options.overscroll&&(c.overscrollPointsRange=r,g=g.concat(c.getOverscrollPositions())),c.positions=g,l=b.ordinal2lin(Math.max(w,g[0]),!0),t=Math.max(b.ordinal2lin(Math.min(e,g[g.length-1]),!0),1),c.slope=e=(e-w)/(t-l),c.offset=w-l*e):(c.overscrollPointsRange=d(b.closestPointRange,c.overscrollPointsRange),c.positions=b.ordinal.slope=
c.offset=void 0)}b.isOrdinal=q&&p;c.groupIntervalFactor=null};b.prototype.getExtendedPositions=function(){var b=this,c=b.axis,d=c.constructor.prototype,g=c.chart,m=c.series[0].currentDataGrouping,p=b.index,q=m?m.count+m.unitName:"raw",e=c.options.overscroll,t=c.getExtremes(),a;p||(p=b.index={});if(!p[q]){var r={series:[],chart:g,forceOrdinal:!1,getExtremes:function(){return{min:t.dataMin,max:t.dataMax+e}},getGroupPixelWidth:d.getGroupPixelWidth,getTimeTicks:d.getTimeTicks,options:{ordinal:!0},ordinal:{getGroupIntervalFactor:this.getGroupIntervalFactor},
ordinal2lin:d.ordinal2lin,val2lin:d.val2lin};r.ordinal.axis=r;c.series.forEach(function(c){a={xAxis:r,xData:c.xData.slice(),chart:g,destroyGroupedData:A.noop,getProcessedData:C.prototype.getProcessedData};a.xData=a.xData.concat(b.getOverscrollPositions());a.options={dataGrouping:m?{enabled:!0,forced:!0,approximation:"open",units:[[m.unitName,[m.count]]]}:{enabled:!1}};r.series.push(a);c.processData.apply(a);a.closestPointRange!==a.basePointRange&&a.currentDataGrouping&&(r.forceOrdinal=!0)});c.ordinal.beforeSetTickPositions.apply({axis:r});
p[q]=r.ordinal.positions}return p[q]};b.prototype.getGroupIntervalFactor=function(b,c,d){d=d.processedXData;var g=d.length,k=[];var m=this.groupIntervalFactor;if(!m){for(m=0;m<g-1;m++)k[m]=d[m+1]-d[m];k.sort(function(b,c){return b-c});k=k[Math.floor(g/2)];b=Math.max(b,d[0]);c=Math.min(c,d[g-1]);this.groupIntervalFactor=m=g*k/(c-b)}return m};b.prototype.getOverscrollPositions=function(){var b=this.axis,c=b.options.overscroll,d=this.overscrollPointsRange,g=[],m=b.dataMax;if(K(d))for(g.push(m);m<=b.dataMax+
c;)m+=d,g.push(m);return g};b.prototype.postProcessTickInterval=function(b){var c=this.axis,d=this.slope;return d?c.options.breaks?c.closestPointRange||b:b/(d/c.closestPointRange):b};return b}();b.Composition=c;b.compose=function(c,d,g){c.keepProps.push("ordinal");var k=c.prototype;c.prototype.getTimeTicks=function(b,c,d,g,e,k,a){void 0===e&&(e=[]);void 0===k&&(k=0);var n=0,q,t,w={},l=[],f=-Number.MAX_VALUE,I=this.options.tickPixelInterval,h=this.chart.time,u=[];if(!this.options.ordinal&&!this.options.breaks||
!e||3>e.length||"undefined"===typeof c)return h.getTimeTicks.apply(h,arguments);var v=e.length;for(q=0;q<v;q++){var x=q&&e[q-1]>d;e[q]<c&&(n=q);if(q===v-1||e[q+1]-e[q]>5*k||x){if(e[q]>f){for(t=h.getTimeTicks(b,e[n],e[q],g);t.length&&t[0]<=f;)t.shift();t.length&&(f=t[t.length-1]);u.push(l.length);l=l.concat(t)}n=q+1}if(x)break}if(t){t=t.info;if(a&&t.unitRange<=m.hour){q=l.length-1;for(n=1;n<q;n++)if(h.dateFormat("%d",l[n])!==h.dateFormat("%d",l[n-1])){w[l[n]]="day";var y=!0}y&&(w[l[0]]="day");t.higherRanks=
w}t.segmentStarts=u;l.info=t}else p(12,!1,this.chart);if(a&&K(I)){n=t=l.length;y=[];h=void 0;for(u=[];n--;)q=this.translate(l[n]),h&&(u[n]=h-q),y[n]=h=q;u.sort();u=u[Math.floor(u.length/2)];u<.6*I&&(u=null);n=l[t-1]>d?t-1:t;for(h=void 0;n--;)q=y[n],t=Math.abs(h-q),h&&t<.8*I&&(null===u||t<.8*u)?(w[l[n]]&&!w[l[n+1]]?(t=n+1,h=q):t=n,l.splice(t,1)):h=q}return l};k.lin2val=function(b,c){var d=this.ordinal,g=d.positions;if(g){var e=d.slope,k=d.offset;d=g.length-1;var a=void 0;if(c)0>b?b=g[0]:b>d?b=g[d]:
(d=Math.floor(b),a=b-d);else for(;d--;)if(c=e*d+k,b>=c){e=e*(d+1)+k;a=(b-c)/(e-c);break}return"undefined"!==typeof a&&"undefined"!==typeof g[d]?g[d]+(a?a*(g[d+1]-g[d]):0):b}return b};k.val2lin=function(b,c){var d=this.ordinal,g=d.positions;if(g){var e=g.length,k,a=void 0;for(k=e;k--;)if(g[k]===b){a=k;break}for(k=e-1;k--;)if(b>g[k]||0===k){b=(b-g[k])/(g[k+1]-g[k]);a=k+b;break}c=c?a:d.slope*(a||0)+d.offset}else c=b;return c};k.ordinal2lin=k.val2lin;q(c,"afterInit",function(){this.ordinal||(this.ordinal=
new b.Composition(this))});q(c,"foundExtremes",function(){this.isXAxis&&K(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&&K(this.userMin)&&(this.min+=this.options.overscroll))});q(c,"afterSetScale",function(){this.horiz&&!this.isDirty&&(this.isDirty=this.isOrdinal&&this.chart.navigator&&!this.chart.navigator.adaptToUpdatedData)});
q(c,"initialAxisTranslation",function(){this.ordinal&&(this.ordinal.beforeSetTickPositions(),this.tickInterval=this.ordinal.postProcessTickInterval(this.tickInterval))});q(d,"pan",function(b){var c=this.xAxis[0],d=c.options.overscroll,g=b.originalEvent.chartX,e=this.options.chart.panning,k=!1;if(e&&"y"!==e.type&&c.options.ordinal&&c.series.length){var a=this.mouseDownX,m=c.getExtremes(),n=m.dataMax,p=m.min,q=m.max,l=void 0;l=this.hoverPoints;var f=c.closestPointRange||c.ordinal&&c.ordinal.overscrollPointsRange;
a=(a-g)/(c.translationSlope*(c.ordinal.slope||f));f={ordinal:{positions:c.ordinal.getExtendedPositions()}};var I=void 0,h=void 0,u=c.lin2val,v=c.val2lin,x=void 0;f.ordinal.positions?1<Math.abs(a)&&(l&&l.forEach(function(a){a.setState()}),0>a?(h=f,x=c.ordinal.positions?c:f):(h=c.ordinal.positions?c:f,x=f),I=x.ordinal.positions,n>I[I.length-1]&&I.push(n),this.fixedRange=q-p,l=c.navigatorAxis.toFixedRange(null,null,u.apply(h,[v.apply(h,[p,!0])+a,!0]),u.apply(x,[v.apply(x,[q,!0])+a,!0])),l.min>=Math.min(m.dataMin,
p)&&l.max<=Math.max(n,q)+d&&c.setExtremes(l.min,l.max,!0,!1,{trigger:"pan"}),this.mouseDownX=g,H(this.container,{cursor:"move"})):k=!0}else k=!0;k||e&&/y/.test(e.type)?d&&(c.max=c.dataMax+d):b.preventDefault()});q(g,"updatedData",function(){var b=this.xAxis;b&&b.options.ordinal&&delete b.ordinal.index})}})(b||(b={}));b.compose(c,v,C);return b});P(c,"Core/Axis/BrokenAxis.js",[c["Core/Axis/Axis.js"],c["Core/Series/Series.js"],c["Extensions/Stacking.js"],c["Core/Utilities.js"]],function(c,v,A,C){var q=
C.addEvent,D=C.find,H=C.fireEvent,K=C.isArray,p=C.isNumber,d=C.pick,m;(function(b){function g(){"undefined"!==typeof this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)}function m(){this.brokenAxis&&this.brokenAxis.hasBreaks&&(this.options.ordinal=!1)}function x(){var b=this.brokenAxis;if(b&&b.hasBreaks){for(var c=this.tickPositions,d=this.tickPositions.info,a=[],g=0;g<c.length;g++)b.isInAnyBreak(c[g])||a.push(c[g]);this.tickPositions=a;this.tickPositions.info=d}}function n(){this.brokenAxis||
(this.brokenAxis=new J(this))}function z(){var b=this.options.connectNulls,c=this.points,d=this.xAxis,a=this.yAxis;if(this.isDirty)for(var g=c.length;g--;){var k=c[g],m=!(null===k.y&&!1===b)&&(d&&d.brokenAxis&&d.brokenAxis.isInAnyBreak(k.x,!0)||a&&a.brokenAxis&&a.brokenAxis.isInAnyBreak(k.y,!0));k.visible=m?!1:!1!==k.options.visible}}function k(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,d(this.pointArrayMap,["y"]))}function C(b,c){var e=this,a=e.points,g,k,m,n;if(b&&b.brokenAxis&&
b.brokenAxis.hasBreaks){var l=b.brokenAxis;c.forEach(function(c){g=l&&l.breakArray||[];k=b.isXAxis?b.min:d(e.options.threshold,b.min);a.forEach(function(a){n=d(a["stack"+c.toUpperCase()],a[c]);g.forEach(function(c){if(p(k)&&p(n)){m=!1;if(k<c.from&&n>c.to||k>c.from&&n<c.from)m="pointBreak";else if(k<c.from&&n>c.from&&n<c.to||k>c.from&&n>c.to&&n<c.from)m="pointInBreak";m&&H(b,m,{point:a,brk:c})}})})})}}function N(){var b=this.currentDataGrouping,c=b&&b.gapSize;b=this.points.slice();var d=this.yAxis,
a=this.options.gapSize,g=b.length-1,k;if(a&&0<g)for("value"!==this.options.gapUnit&&(a*=this.basePointRange),c&&c>a&&c>=this.basePointRange&&(a=c),k=void 0;g--;)k&&!1!==k.visible||(k=b[g+1]),c=b[g],!1!==k.visible&&!1!==c.visible&&(k.x-c.x>a&&(k=(c.x+k.x)/2,b.splice(g+1,0,{isNull:!0,x:k}),d.stacking&&this.options.stacking&&(k=d.stacking.stacks[this.stackKey][k]=new A(d,d.options.stackLabels,!1,k,this.stack),k.total=0)),k=c);return this.getGraphPath(b)}b.compose=function(b,c){if(-1===b.keepProps.indexOf("brokenAxis")){b.keepProps.push("brokenAxis");
var d=v.prototype;d.drawBreaks=C;d.gappedPath=N;q(b,"init",n);q(b,"afterInit",g);q(b,"afterSetTickPositions",x);q(b,"afterSetOptions",m);q(c,"afterGeneratePoints",z);q(c,"afterRender",k)}return b};var J=function(){function b(b){this.hasBreaks=!1;this.axis=b}b.isInBreak=function(b,c){var a=b.repeat||Infinity,d=b.from,e=b.to-b.from;c=c>=d?(c-d)%a:a-(d-c)%a;return b.inclusive?c<=e:c<e&&0!==c};b.lin2Val=function(c){var d=this.brokenAxis;d=d&&d.breakArray;if(!d||!p(c))return c;var a;for(a=0;a<d.length;a++){var e=
d[a];if(e.from>=c)break;else e.to<c?c+=e.len:b.isInBreak(e,c)&&(c+=e.len)}return c};b.val2Lin=function(c){var d=this.brokenAxis;d=d&&d.breakArray;if(!d||!p(c))return c;var a=c,e;for(e=0;e<d.length;e++){var g=d[e];if(g.to<=c)a-=g.len;else if(g.from>=c)break;else if(b.isInBreak(g,c)){a-=c-g.from;break}}return a};b.prototype.findBreakAt=function(b,c){return D(c,function(a){return a.from<b&&b<a.to})};b.prototype.isInAnyBreak=function(c,g){var a=this.axis,e=a.options.breaks||[],k=e.length,m;if(k&&p(c)){for(;k--;)if(b.isInBreak(e[k],
c)){var n=!0;m||(m=d(e[k].showPoints,!a.isXAxis))}var l=n&&g?n&&!m:n}return l};b.prototype.setBreaks=function(e,g){var a=this,k=a.axis,m=K(e)&&!!e.length;k.isDirty=a.hasBreaks!==m;a.hasBreaks=m;k.options.breaks=k.userOptions.breaks=e;k.forceRedraw=!0;k.series.forEach(function(a){a.isDirty=!0});m||k.val2lin!==b.val2Lin||(delete k.val2lin,delete k.lin2val);m&&(k.userOptions.ordinal=!1,k.lin2val=b.lin2Val,k.val2lin=b.val2Lin,k.setExtremes=function(b,d,e,f,g){if(a.hasBreaks){for(var h=this.options.breaks||
[],l;l=a.findBreakAt(b,h);)b=l.to;for(;l=a.findBreakAt(d,h);)d=l.from;d<b&&(d=b)}c.prototype.setExtremes.call(this,b,d,e,f,g)},k.setAxisTranslation=function(){c.prototype.setAxisTranslation.call(this);a.unitLength=void 0;if(a.hasBreaks){var e=k.options.breaks||[],g=[],l=[],f=d(k.pointRangePadding,0),m=0,h,n=k.userMin||k.min,r=k.userMax||k.max,q;e.forEach(function(a){h=a.repeat||Infinity;p(n)&&p(r)&&(b.isInBreak(a,n)&&(n+=a.to%h-n%h),b.isInBreak(a,r)&&(r-=r%h-a.from%h))});e.forEach(function(a){v=a.from;
h=a.repeat||Infinity;if(p(n)&&p(r)){for(;v-h>n;)v-=h;for(;v<n;)v+=h;for(q=v;q<r;q+=h)g.push({value:q,move:"in"}),g.push({value:q+a.to-a.from,move:"out",size:a.breakSize})}});g.sort(function(a,b){return a.value===b.value?("in"===a.move?0:1)-("in"===b.move?0:1):a.value-b.value});var t=0;var v=n;g.forEach(function(a){t+="in"===a.move?1:-1;1===t&&"in"===a.move&&(v=a.value);0===t&&p(v)&&(l.push({from:v,to:a.value,len:a.value-v-(a.size||0)}),m+=a.value-v-(a.size||0))});a.breakArray=l;p(n)&&p(r)&&p(k.min)&&
(a.unitLength=r-n-m+f,H(k,"afterBreaks"),k.staticScale?k.transA=k.staticScale:a.unitLength&&(k.transA*=(r-k.min+f)/a.unitLength),f&&(k.minPixelPadding=k.transA*(k.minPointOffset||0)),k.min=n,k.max=r)}});d(g,!0)&&k.chart.redraw()};return b}();b.Additions=J})(m||(m={}));return m});P(c,"masters/modules/broken-axis.src.js",[c["Core/Globals.js"],c["Core/Axis/BrokenAxis.js"]],function(c,v){v.compose(c.Axis,c.Series)});P(c,"Extensions/DataGrouping.js",[c["Core/Axis/Axis.js"],c["Core/Axis/DateTimeAxis.js"],
c["Core/FormatUtilities.js"],c["Core/Globals.js"],c["Core/Series/Point.js"],c["Core/Series/Series.js"],c["Core/Tooltip.js"],c["Core/DefaultOptions.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H,K,p){var d=A.format,m=D.prototype;A=p.addEvent;var b=p.arrayMax,g=p.arrayMin,q=p.correctFloat,x=p.defined,n=p.error,B=p.extend,k=p.isNumber,M=p.merge,N=p.pick;"";var J=C.approximations={sum:function(a){var b=a.length;if(!b&&a.hasNulls)var c=null;else if(b)for(c=0;b--;)c+=a[b];return c},average:function(a){var b=
a.length;a=J.sum(a);k(a)&&b&&(a=q(a/b));return a},averages:function(){var a=[];[].forEach.call(arguments,function(b){a.push(J.average(b))});return"undefined"===typeof a[0]?void 0:a},open:function(a){return a.length?a[0]:a.hasNulls?null:void 0},high:function(a){return a.length?b(a):a.hasNulls?null:void 0},low:function(a){return a.length?g(a):a.hasNulls?null:void 0},close:function(a){return a.length?a[a.length-1]:a.hasNulls?null:void 0},ohlc:function(a,b,c,d){a=J.open(a);b=J.high(b);c=J.low(c);d=J.close(d);
if(k(a)||k(b)||k(c)||k(d))return[a,b,c,d]},range:function(a,b){a=J.low(a);b=J.high(b);if(k(a)||k(b))return[a,b];if(null===a&&null===b)return null}};p=function(a,b,c,d){var e=this,f=e.data,g=e.options&&e.options.data,l=[],m=[],n=[],p=a.length,r=!!b,q=[],t=e.pointArrayMap,v=t&&t.length,w=["x"].concat(t||["y"]),G=this.options.dataGrouping&&this.options.dataGrouping.groupAll,z=0,F=0,B;d="function"===typeof d?d:J[d]?J[d]:J[e.getDGApproximation&&e.getDGApproximation()||"average"];v?t.forEach(function(){q.push([])}):
q.push([]);var D=v||1;for(B=0;B<=p&&!(a[B]>=c[0]);B++);for(B;B<=p;B++){for(;"undefined"!==typeof c[z+1]&&a[B]>=c[z+1]||B===p;){var A=c[z];e.dataGroupInfo={start:G?F:e.cropStart+F,length:q[0].length};var C=d.apply(e,q);e.pointClass&&!x(e.dataGroupInfo.options)&&(e.dataGroupInfo.options=M(e.pointClass.prototype.optionsToObject.call({series:e},e.options.data[e.cropStart+F])),w.forEach(function(a){delete e.dataGroupInfo.options[a]}));"undefined"!==typeof C&&(l.push(A),m.push(C),n.push(e.dataGroupInfo));
F=B;for(A=0;A<D;A++)q[A].length=0,q[A].hasNulls=!1;z+=1;if(B===p)break}if(B===p)break;if(t){A=e.options.dataGrouping&&e.options.dataGrouping.groupAll?B:e.cropStart+B;C=f&&f[A]||e.pointClass.prototype.applyOptions.apply({series:e},[g[A]]);var K=void 0;for(A=0;A<v;A++)K=C[t[A]],k(K)?q[A].push(K):null===K&&(q[A].hasNulls=!0)}else A=r?b[B]:null,k(A)?q[0].push(A):null===A&&(q[0].hasNulls=!0)}return{groupedXData:l,groupedYData:m,groupMap:n}};var w={approximations:J,groupData:p},e=m.processData,t=m.generatePoints,
a={groupPixelWidth:2,dateTimeLabelFormats:{millisecond:["%A, %b %e, %H:%M:%S.%L","%A, %b %e, %H:%M:%S.%L","-%H:%M:%S.%L"],second:["%A, %b %e, %H:%M:%S","%A, %b %e, %H:%M:%S","-%H:%M:%S"],minute:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],hour:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],day:["%A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],week:["Week from %A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],month:["%B %Y","%B","-%B %Y"],year:["%Y","%Y","-%Y"]}},r={line:{},spline:{},area:{},areaspline:{},
arearange:{},column:{groupPixelWidth:10},columnrange:{groupPixelWidth:10},candlestick:{groupPixelWidth:10},ohlc:{groupPixelWidth:5}},E=C.defaultDataGroupingUnits=[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1]],["week",[1]],["month",[1,3,6]],["year",null]];m.getDGApproximation=function(){return this.is("arearange")?"range":this.is("ohlc")?"ohlc":this.is("column")?"sum":"average"};m.groupData=p;m.processData=
function(){var a=this.chart,b=this.options.dataGrouping,c=!1!==this.allowDG&&b&&N(b.enabled,a.options.isStock),d=this.visible||!a.options.chart.ignoreHiddenSeries,g,h=this.currentDataGrouping,p=!1;this.forceCrop=c;this.groupPixelWidth=null;this.hasProcessed=!0;c&&!this.requireSorting&&(this.requireSorting=p=!0);c=!1===e.apply(this,arguments)||!c;p&&(this.requireSorting=!1);if(!c){this.destroyGroupedData();var r=b.groupAll?this.xData:this.processedXData,q=b.groupAll?this.yData:this.processedYData;
c=a.plotSizeX;p=this.xAxis;var t=p.options.ordinal,w=this.groupPixelWidth=p.getGroupPixelWidth&&p.getGroupPixelWidth();if(w&&r&&r.length){this.isDirty=g=!0;this.points=null;var z=p.getExtremes();var B=z.min;z=z.max;t=t&&p.ordinal&&p.ordinal.getGroupIntervalFactor(B,z,this)||1;c=p.getTimeTicks(v.AdditionsClass.prototype.normalizeTimeTickInterval(w*(z-B)/c*t,b.units||E),Math.min(B,r[0]),Math.max(z,r[r.length-1]),p.options.startOfWeek,r,this.closestPointRange);w=m.groupData.apply(this,[r,q,c,b.approximation]);
r=w.groupedXData;q=w.groupedYData;t=0;b&&b.smoothed&&r.length&&(b.firstAnchor="firstPoint",b.anchor="middle",b.lastAnchor="lastPoint",n(32,!1,a,{"dataGrouping.smoothed":"use dataGrouping.anchor"}));a=r;var A=this.options.dataGrouping;B=this.currentDataGrouping&&this.currentDataGrouping.gapSize;if(A&&this.xData&&B&&this.groupMap){var D=a.length-1;var C=A.anchor;var K=N(A.firstAnchor,C);A=N(A.lastAnchor,C);if(C&&"start"!==C){var J=B*{middle:.5,end:1}[C];for(C=a.length-1;C--&&0<C;)a[C]+=J}if(K&&"start"!==
K&&this.xData[0]>=a[0]){C=this.groupMap[0].start;J=this.groupMap[0].length;var H=void 0;k(C)&&k(J)&&(H=C+(J-1));a[0]={middle:a[0]+.5*B,end:a[0]+B,firstPoint:this.xData[0],lastPoint:H&&this.xData[H]}[K]}A&&"start"!==A&&B&&a[D]>=z-B&&(z=this.groupMap[this.groupMap.length-1].start,a[D]={middle:a[D]+.5*B,end:a[D]+B,firstPoint:z&&this.xData[z],lastPoint:this.xData[this.xData.length-1]}[A])}for(z=1;z<c.length;z++)c.info.segmentStarts&&-1!==c.info.segmentStarts.indexOf(z)||(t=Math.max(c[z]-c[z-1],t));z=
c.info;z.gapSize=t;this.closestPointRange=c.info.totalRange;this.groupMap=w.groupMap;if(d){d=r;if(x(d[0])&&k(p.min)&&k(p.dataMin)&&d[0]<p.min){if(!x(p.options.min)&&p.min<=p.dataMin||p.min===p.dataMin)p.min=Math.min(d[0],p.min);p.dataMin=Math.min(d[0],p.dataMin)}if(x(d[d.length-1])&&k(p.max)&&k(p.dataMax)&&d[d.length-1]>p.max){if(!x(p.options.max)&&k(p.dataMax)&&p.max>=p.dataMax||p.max===p.dataMax)p.max=Math.max(d[d.length-1],p.max);p.dataMax=Math.max(d[d.length-1],p.dataMax)}}b.groupAll&&(b=this.cropData(r,
q,p.min,p.max,1),r=b.xData,q=b.yData,this.cropStart=b.start);this.processedXData=r;this.processedYData=q}else this.groupMap=null;this.hasGroupedData=g;this.currentDataGrouping=z;this.preventGraphAnimation=(h&&h.totalRange)!==(z&&z.totalRange)}};m.destroyGroupedData=function(){this.groupedData&&(this.groupedData.forEach(function(a,b){a&&(this.groupedData[b]=a.destroy?a.destroy():null)},this),this.groupedData.length=0)};m.generatePoints=function(){t.apply(this);this.destroyGroupedData();this.groupedData=
this.hasGroupedData?this.points:null};A(z,"update",function(){if(this.dataGroup)return n(24,!1,this.series.chart),!1});A(H,"headerFormatter",function(b){var c=this.chart,e=c.time,f=b.labelConfig,g=f.series,h=g.tooltipOptions,m=g.options.dataGrouping,n=h.xDateFormat,p=g.xAxis,r=h[(b.isFooter?"footer":"header")+"Format"];if(p&&"datetime"===p.options.type&&m&&k(f.key)){var q=g.currentDataGrouping;m=m.dateTimeLabelFormats||a.dateTimeLabelFormats;if(q)if(h=m[q.unitName],1===q.count)n=h[0];else{n=h[1];
var t=h[2]}else!n&&m&&(n=this.getXDateFormat(f,h,p));n=e.dateFormat(n,f.key);t&&(n+=e.dateFormat(t,f.key+q.totalRange-1));g.chart.styledMode&&(r=this.styledModeFormat(r));b.text=d(r,{point:B(f.point,{key:n}),series:g},c);b.preventDefault()}});A(D,"destroy",m.destroyGroupedData);A(D,"afterSetOptions",function(b){b=b.options;var c=this.type,d=this.chart.options.plotOptions,e=K.defaultOptions.plotOptions[c].dataGrouping,g=this.useCommonDataGrouping&&a;if(r[c]||g){e||(e=M(a,r[c]));var h=this.chart.rangeSelector;
b.dataGrouping=M(g,e,d.series&&d.series.dataGrouping,d[c].dataGrouping,this.userOptions.dataGrouping,!b.isInternal&&h&&k(h.selected)&&h.buttonOptions[h.selected].dataGrouping)}});A(c,"afterSetScale",function(){this.series.forEach(function(a){a.hasProcessed=!1})});c.prototype.getGroupPixelWidth=function(){var b=this.series,c=b.length,d,e=0,g=!1,h;for(d=c;d--;)(h=b[d].options.dataGrouping)&&(e=Math.max(e,N(h.groupPixelWidth,a.groupPixelWidth)));for(d=c;d--;)(h=b[d].options.dataGrouping)&&b[d].hasProcessed&&
(c=(b[d].processedXData||b[d].data).length,b[d].groupPixelWidth||c>this.chart.plotSizeX/e||c&&h.forced)&&(g=!0);return g?e:0};c.prototype.setDataGrouping=function(a,b){var d;b=N(b,!0);a||(a={forced:!1,units:null});if(this instanceof c)for(d=this.series.length;d--;)this.series[d].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()};C.dataGrouping=w;"";return w});P(c,"Series/OHLC/OHLCPoint.js",
[c["Core/Series/SeriesRegistry.js"]],function(c){var q=this&&this.__extends||function(){var c=function(q,v){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,q){c.__proto__=q}||function(c,q){for(var v in q)q.hasOwnProperty(v)&&(c[v]=q[v])};return c(q,v)};return function(q,v){function z(){this.constructor=q}c(q,v);q.prototype=null===v?Object.create(v):(z.prototype=v.prototype,new z)}}();return function(c){function v(){var q=null!==c&&c.apply(this,arguments)||this;q.close=void 0;q.high=
void 0;q.low=void 0;q.open=void 0;q.options=void 0;q.plotClose=void 0;q.plotOpen=void 0;q.series=void 0;return q}q(v,c);v.prototype.getClassName=function(){return c.prototype.getClassName.call(this)+(this.open<this.close?" highcharts-point-up":" highcharts-point-down")};v.prototype.resolveUpColor=function(){this.open<this.close&&!this.options.color&&this.series.options.upColor&&(this.color=this.series.options.upColor)};v.prototype.resolveColor=function(){c.prototype.resolveColor.call(this);this.resolveUpColor()};
v.prototype.getZone=function(){var q=c.prototype.getZone.call(this);this.resolveUpColor();return q};return v}(c.seriesTypes.column.prototype.pointClass)});P(c,"Series/OHLC/OHLCSeries.js",[c["Series/OHLC/OHLCPoint.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A){var q=this&&this.__extends||function(){var c=function(p,d){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,b){c.__proto__=b}||function(c,b){for(var d in b)b.hasOwnProperty(d)&&(c[d]=b[d])};
return c(p,d)};return function(p,d){function m(){this.constructor=p}c(p,d);p.prototype=null===d?Object.create(d):(m.prototype=d.prototype,new m)}}(),z=v.seriesTypes.column,D=A.extend,H=A.merge;A=function(c){function p(){var d=null!==c&&c.apply(this,arguments)||this;d.data=void 0;d.options=void 0;d.points=void 0;d.yData=void 0;return d}q(p,c);p.prototype.drawPoints=function(){var c=this,m=c.chart,b=function(b,c,d){var g=b[0];b=b[1];"number"===typeof g[2]&&(g[2]=Math.max(d+c,g[2]));"number"===typeof b[2]&&
(b[2]=Math.min(d-c,b[2]))};c.points.forEach(function(d){var g=d.graphic,p=!g;if("undefined"!==typeof d.plotY){g||(d.graphic=g=m.renderer.path().add(c.group));m.styledMode||g.attr(c.pointAttribs(d,d.selected&&"select"));var n=g.strokeWidth();var q=n%2/2;var k=Math.round(d.plotX)-q;var v=Math.round(d.shapeArgs.width/2);var z=[["M",k,Math.round(d.yBottom)],["L",k,Math.round(d.plotHigh)]];if(null!==d.open){var A=Math.round(d.plotOpen)+q;z.push(["M",k,A],["L",k-v,A]);b(z,n/2,A)}null!==d.close&&(A=Math.round(d.plotClose)+
q,z.push(["M",k,A],["L",k+v,A]),b(z,n/2,A));g[p?"attr":"animate"]({d:z}).addClass(d.getClassName(),!0)}})};p.prototype.init=function(){c.prototype.init.apply(this,arguments);this.options.stacking=void 0};p.prototype.pointAttribs=function(d,m){m=c.prototype.pointAttribs.call(this,d,m);var b=this.options;delete m.fill;!d.options.color&&b.upColor&&d.open<d.close&&(m.stroke=b.upColor);return m};p.prototype.toYData=function(c){return[c.open,c.high,c.low,c.close]};p.prototype.translate=function(){var d=
this,m=d.yAxis,b=!!d.modifyValue,g=["plotOpen","plotHigh","plotLow","plotClose","yBottom"];c.prototype.translate.apply(d);d.points.forEach(function(c){[c.open,c.high,c.low,c.close,c.low].forEach(function(p,n){null!==p&&(b&&(p=d.modifyValue(p)),c[g[n]]=m.toPixels(p,!0))});c.tooltipPos[1]=c.plotHigh+m.pos-d.chart.plotTop})};p.defaultOptions=H(z.defaultOptions,{lineWidth:1,tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> <b> {series.name}</b><br/>Open: {point.open}<br/>High: {point.high}<br/>Low: {point.low}<br/>Close: {point.close}<br/>'},
threshold:null,states:{hover:{lineWidth:3}},stickyTracking:!0});return p}(z);D(A.prototype,{animate:null,directTouch:!1,pointArrayMap:["open","high","low","close"],pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},pointValKey:"close"});A.prototype.pointClass=c;v.registerSeriesType("ohlc",A);"";return A});P(c,"Series/Candlestick/CandlestickSeries.js",[c["Core/DefaultOptions.js"],c["Core/Color/Palette.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v,A,C){var q=
this&&this.__extends||function(){var c=function(d,b){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var d in c)c.hasOwnProperty(d)&&(b[d]=c[d])};return c(d,b)};return function(d,b){function g(){this.constructor=d}c(d,b);d.prototype=null===b?Object.create(b):(g.prototype=b.prototype,new g)}}(),D=c.defaultOptions;c=A.seriesTypes;var H=c.column,K=c.ohlc,p=C.merge;C=function(c){function d(){var b=null!==c&&c.apply(this,arguments)||this;b.data=
void 0;b.options=void 0;b.points=void 0;return b}q(d,c);d.prototype.pointAttribs=function(b,c){var d=H.prototype.pointAttribs.call(this,b,c),g=this.options,m=b.open<b.close,p=g.lineColor||this.color,k=b.color||this.color;d["stroke-width"]=g.lineWidth;d.fill=b.options.color||(m?g.upColor||k:k);d.stroke=b.options.lineColor||(m?g.upLineColor||p:p);c&&(b=g.states[c],d.fill=b.color||d.fill,d.stroke=b.lineColor||d.stroke,d["stroke-width"]=b.lineWidth||d["stroke-width"]);return d};d.prototype.drawPoints=
function(){var b=this,c=b.chart,d=b.yAxis.reversed;b.points.forEach(function(g){var m=g.graphic,p=!m;if("undefined"!==typeof g.plotY){m||(g.graphic=m=c.renderer.path().add(b.group));b.chart.styledMode||m.attr(b.pointAttribs(g,g.selected&&"select")).shadow(b.options.shadow);var k=m.strokeWidth()%2/2;var q=Math.round(g.plotX)-k;var v=g.plotOpen;var x=g.plotClose;var w=Math.min(v,x);v=Math.max(v,x);var e=Math.round(g.shapeArgs.width/2);x=d?v!==g.yBottom:Math.round(w)!==Math.round(g.plotHigh);var t=d?
Math.round(w)!==Math.round(g.plotHigh):v!==g.yBottom;w=Math.round(w)+k;v=Math.round(v)+k;k=[];k.push(["M",q-e,v],["L",q-e,w],["L",q+e,w],["L",q+e,v],["Z"],["M",q,w],["L",q,x?Math.round(d?g.yBottom:g.plotHigh):w],["M",q,v],["L",q,t?Math.round(d?g.plotHigh:g.yBottom):v]);m[p?"attr":"animate"]({d:k}).addClass(g.getClassName(),!0)}})};d.defaultOptions=p(K.defaultOptions,D.plotOptions,{states:{hover:{lineWidth:2}},tooltip:D.plotOptions.ohlc.tooltip,threshold:null,lineColor:v.neutralColor100,lineWidth:1,
upColor:v.backgroundColor,stickyTracking:!0});return d}(K);A.registerSeriesType("candlestick",C);"";return C});P(c,"Series/Flags/FlagsPoint.js",[c["Core/Series/SeriesRegistry.js"],c["Core/Utilities.js"]],function(c,v){var q=this&&this.__extends||function(){var c=function(q,v){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,p){c.__proto__=p}||function(c,p){for(var d in p)p.hasOwnProperty(d)&&(c[d]=p[d])};return c(q,v)};return function(q,v){function z(){this.constructor=q}c(q,v);
q.prototype=null===v?Object.create(v):(z.prototype=v.prototype,new z)}}(),C=v.isNumber;return function(c){function v(){var q=null!==c&&c.apply(this,arguments)||this;q.options=void 0;q.series=void 0;return q}q(v,c);v.prototype.isValid=function(){return C(this.y)||"undefined"===typeof this.y};v.prototype.hasNewShapeType=function(){var c=this.options.shape||this.series.options.shape;return this.graphic&&c&&c!==this.graphic.symbolKey};return v}(c.seriesTypes.column.prototype.pointClass)});P(c,"Mixins/OnSeries.js",
[c["Series/Column/ColumnSeries.js"],c["Core/Series/Series.js"],c["Core/Utilities.js"]],function(c,v,A){var q=c.prototype,z=v.prototype,D=A.defined,H=A.stableSort;return{getPlotBox:function(){return z.getPlotBox.call(this.options.onSeries&&this.chart.get(this.options.onSeries)||this)},translate:function(){q.translate.apply(this);var c=this,p=c.options,d=c.chart,m=c.points,b=m.length-1,g,v=p.onSeries;v=v&&d.get(v);p=p.onKey||"y";var x=v&&v.options.step,n=v&&v.points,z=n&&n.length,k=d.inverted,A=c.xAxis,
C=c.yAxis,J=0,w;if(v&&v.visible&&z){J=(v.pointXOffset||0)+(v.barW||0)/2;d=v.currentDataGrouping;var e=n[z-1].x+(d?d.totalRange:0);H(m,function(a,b){return a.x-b.x});for(p="plot"+p[0].toUpperCase()+p.substr(1);z--&&m[b];){var t=n[z];d=m[b];d.y=t.y;if(t.x<=d.x&&"undefined"!==typeof t[p]){if(d.x<=e&&(d.plotY=t[p],t.x<d.x&&!x&&(w=n[z+1])&&"undefined"!==typeof w[p])){var a=(d.x-t.x)/(w.x-t.x);d.plotY+=a*(w[p]-t[p]);d.y+=a*(w.y-t.y)}b--;z++;if(0>b)break}}}m.forEach(function(a,b){a.plotX+=J;if("undefined"===
typeof a.plotY||k)0<=a.plotX&&a.plotX<=A.len?k?(a.plotY=A.translate(a.x,0,1,0,1),a.plotX=D(a.y)?C.translate(a.y,0,0,0,1):0):a.plotY=(A.opposite?0:c.yAxis.len)+A.offset:a.shapeArgs={};if((g=m[b-1])&&g.plotX===a.plotX){"undefined"===typeof g.stackIndex&&(g.stackIndex=0);var d=g.stackIndex+1}a.stackIndex=d});this.onSeries=v}}});P(c,"Series/Flags/FlagsSymbols.js",[c["Core/Renderer/RendererRegistry.js"],c["Core/Renderer/SVG/SVGRenderer.js"]],function(c,v){function q(c){C[c+"pin"]=function(q,v,z,p,d){var m=
d&&d.anchorX;d=d&&d.anchorY;"circle"===c&&p>z&&(q-=Math.round((p-z)/2),z=p);var b=C[c](q,v,z,p);if(m&&d){var g=m;"circle"===c?g=q+z/2:(q=b[0],z=b[1],"M"===q[0]&&"L"===z[0]&&(g=(q[1]+z[1])/2));b.push(["M",g,v>d?v:v+p],["L",m,d]);b=b.concat(C.circle(m-1,d-1,2,2))}return b}}var C=v.prototype.symbols;C.flag=function(c,q,v,A,p){var d=p&&p.anchorX||c;p=p&&p.anchorY||q;var m=C.circle(d-1,p-1,2,2);m.push(["M",d,p],["L",c,q+A],["L",c,q],["L",c+v,q],["L",c+v,q+A],["L",c,q+A],["Z"]);return m};q("circle");q("square");
c=c.getRendererType();c!==v&&(c.prototype.symbols.circlepin=C.circlepin,c.prototype.symbols.flag=C.flag,c.prototype.symbols.squarepin=C.squarepin);return C});P(c,"Series/Flags/FlagsSeries.js",[c["Series/Flags/FlagsPoint.js"],c["Core/Globals.js"],c["Mixins/OnSeries.js"],c["Core/Color/Palette.js"],c["Core/Series/SeriesRegistry.js"],c["Core/Renderer/SVG/SVGElement.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H){var q=this&&this.__extends||function(){var b=function(c,d){b=Object.setPrototypeOf||
{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var d in c)c.hasOwnProperty(d)&&(b[d]=c[d])};return b(c,d)};return function(c,d){function g(){this.constructor=c}b(c,d);c.prototype=null===d?Object.create(d):(g.prototype=d.prototype,new g)}}(),p=v.noop,d=z.series,m=z.seriesTypes.column,b=H.addEvent,g=H.defined,L=H.extend,x=H.merge,n=H.objectEach,B=H.wrap;H=function(c){function k(){var b=null!==c&&c.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;
return b}q(k,c);k.prototype.animate=function(b){b&&this.setClip()};k.prototype.drawPoints=function(){var b=this.points,c=this.chart,d=c.renderer,e=c.inverted,k=this.options,a=k.y,m,p=this.yAxis,q={},z=[];for(m=b.length;m--;){var l=b[m];var f=(e?l.plotY:l.plotX)>this.xAxis.len;var I=l.plotX;var h=l.stackIndex;var u=l.options.shape||k.shape;var O=l.plotY;"undefined"!==typeof O&&(O=l.plotY+a-("undefined"!==typeof h&&h*k.stackDistance));l.anchorX=h?void 0:l.plotX;var A=h?void 0:l.plotY;var y="flag"!==
u;h=l.graphic;"undefined"!==typeof O&&0<=I&&!f?(h&&l.hasNewShapeType()&&(h=h.destroy()),h||(h=l.graphic=d.label("",null,null,u,null,null,k.useHTML).addClass("highcharts-point").add(this.markerGroup),l.graphic.div&&(l.graphic.div.point=l),h.isNew=!0),h.attr({align:y?"center":"left",width:k.width,height:k.height,"text-align":k.textAlign}),c.styledMode||h.attr(this.pointAttribs(l)).css(x(k.style,l.style)).shadow(k.shadow),0<I&&(I-=h.strokeWidth()%2),u={y:O,anchorY:A},k.allowOverlapX&&(u.x=I,u.anchorX=
l.anchorX),h.attr({text:l.options.title||k.title||"A"})[h.isNew?"attr":"animate"](u),k.allowOverlapX||(q[l.plotX]?q[l.plotX].size=Math.max(q[l.plotX].size,h.width):q[l.plotX]={align:y?.5:0,size:h.width,target:I,anchorX:I}),l.tooltipPos=[I,O+p.pos-c.plotTop]):h&&(l.graphic=h.destroy())}k.allowOverlapX||(n(q,function(a){a.plotX=a.anchorX;z.push(a)}),v.distribute(z,e?p.len:this.xAxis.len,100),b.forEach(function(a){var b=a.graphic&&q[a.plotX];b&&(a.graphic[a.graphic.isNew?"attr":"animate"]({x:b.pos+b.align*
b.size,anchorX:a.anchorX}),g(b.pos)?a.graphic.isNew=!1:(a.graphic.attr({x:-9999,anchorX:-9999}),a.graphic.isNew=!0))}));k.useHTML&&B(this.markerGroup,"on",function(a){return D.prototype.on.apply(a.apply(this,[].slice.call(arguments,1)),[].slice.call(arguments,1))})};k.prototype.drawTracker=function(){var d=this.points;c.prototype.drawTracker.call(this);d.forEach(function(c){var g=c.graphic;g&&(c.unbindMouseOver&&c.unbindMouseOver(),c.unbindMouseOver=b(g.element,"mouseover",function(){0<c.stackIndex&&
!c.raised&&(c._y=g.y,g.attr({y:c._y-8}),c.raised=!0);d.forEach(function(b){b!==c&&b.raised&&b.graphic&&(b.graphic.attr({y:b._y}),b.raised=!1)})}))})};k.prototype.pointAttribs=function(b,c){var d=this.options,e=b&&b.color||this.color,g=d.lineColor,a=b&&b.lineWidth;b=b&&b.fillColor||d.fillColor;c&&(b=d.states[c].fillColor,g=d.states[c].lineColor,a=d.states[c].lineWidth);return{fill:b||e,stroke:g||e,"stroke-width":a||d.lineWidth||0}};k.prototype.setClip=function(){d.prototype.setClip.apply(this,arguments);
!1!==this.options.clip&&this.sharedClipKey&&this.markerGroup&&this.markerGroup.clip(this.chart.sharedClips[this.sharedClipKey])};k.defaultOptions=x(m.defaultOptions,{pointRange:0,allowOverlapX:!1,shape:"flag",stackDistance:12,textAlign:"center",tooltip:{pointFormat:"{point.text}"},threshold:null,y:-30,fillColor:C.backgroundColor,lineWidth:1,states:{hover:{lineColor:C.neutralColor100,fillColor:C.highlightColor20}},style:{fontSize:"11px",fontWeight:"bold"}});return k}(m);L(H.prototype,{allowDG:!1,buildKDTree:p,
forceCrop:!0,getPlotBox:A.getPlotBox,init:d.prototype.init,invertGroups:p,invertible:!1,noSharedTooltip:!0,pointClass:c,sorted:!1,takeOrdinalPosition:!1,trackerGroups:["markerGroup"],translate:A.translate});z.registerSeriesType("flags",H);"";"";return H});P(c,"Extensions/RangeSelector.js",[c["Core/Axis/Axis.js"],c["Core/Chart/Chart.js"],c["Core/Globals.js"],c["Core/DefaultOptions.js"],c["Core/Color/Palette.js"],c["Core/Renderer/SVG/SVGElement.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H){function q(a){if(-1!==
a.indexOf("%L"))return"text";var b="aAdewbBmoyY".split("").some(function(b){return-1!==a.indexOf("%"+b)}),c="HkIlMS".split("").some(function(b){return-1!==a.indexOf("%"+b)});return b&&c?"datetime-local":b?"date":c?"time":"text"}var p=C.defaultOptions,d=H.addEvent,m=H.createElement,b=H.css,g=H.defined,L=H.destroyObjectProperties,x=H.discardElement,n=H.extend,B=H.find,k=H.fireEvent,M=H.isNumber,N=H.merge,J=H.objectEach,w=H.pad,e=H.pick,t=H.pInt,a=H.splat;n(p,{rangeSelector:{allButtonsEnabled:!1,buttons:void 0,
buttonSpacing:5,dropdown:"responsive",enabled:void 0,verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputBoxBorderColor:"none",inputBoxHeight:17,inputBoxWidth:void 0,inputDateFormat:"%b %e, %Y",inputDateParser:void 0,inputEditDateFormat:"%Y-%m-%d",inputEnabled:!0,inputPosition:{align:"right",x:0,y:0},inputSpacing:5,selected:void 0,buttonPosition:{align:"left",x:0,y:0},inputStyle:{color:z.highlightColor80,cursor:"pointer"},labelStyle:{color:z.neutralColor60}}});
n(p.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"\u2192"});var r=function(){function r(a){this.buttons=void 0;this.buttonOptions=r.prototype.defaultButtons;this.initialButtonGroupWidth=0;this.options=void 0;this.chart=a;this.init(a)}r.prototype.clickButton=function(b,f){var l=this.chart,h=this.buttonOptions[b],m=l.xAxis[0],n=l.scroller&&l.scroller.getUnionExtremes()||m||{},p=n.dataMin,q=n.dataMax,r=m&&Math.round(Math.min(m.max,e(q,m.max))),t=h.type;n=h._range;var v,w=h.dataGrouping;
if(null!==p&&null!==q){l.fixedRange=n;this.setSelected(b);w&&(this.forcedDataGrouping=!0,c.prototype.setDataGrouping.call(m||{chart:this.chart},w,!1),this.frozenStates=h.preserveDataGrouping);if("month"===t||"year"===t)if(m){t={range:h,max:r,chart:l,dataMin:p,dataMax:q};var x=m.minFromRange.call(t);M(t.newMax)&&(r=t.newMax)}else n=h;else if(n)x=Math.max(r-n,p),r=Math.min(x+n,q);else if("ytd"===t)if(m)"undefined"===typeof q&&(p=Number.MAX_VALUE,q=Number.MIN_VALUE,l.series.forEach(function(a){a=a.xData;
p=Math.min(a[0],p);q=Math.max(a[a.length-1],q)}),f=!1),r=this.getYTDExtremes(q,p,l.time.useUTC),x=v=r.min,r=r.max;else{this.deferredYTDClick=b;return}else"all"===t&&m&&(l.navigator&&l.navigator.baseSeries[0]&&(l.navigator.baseSeries[0].xAxis.options.range=void 0),x=p,r=q);g(x)&&(x+=h._offsetMin);g(r)&&(r+=h._offsetMax);this.dropdown&&(this.dropdown.selectedIndex=b+1);if(m)m.setExtremes(x,r,e(f,!0),void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:h});else{var z=a(l.options.xAxis)[0];var A=
z.range;z.range=n;var B=z.min;z.min=v;d(l,"load",function(){z.range=A;z.min=B})}k(this,"afterBtnClick")}};r.prototype.setSelected=function(a){this.selected=this.options.selected=a};r.prototype.init=function(a){var b=this,c=a.options.rangeSelector,e=c.buttons||b.defaultButtons.slice(),g=c.selected,l=function(){var a=b.minInput,c=b.maxInput;a&&a.blur&&k(a,"blur");c&&c.blur&&k(c,"blur")};b.chart=a;b.options=c;b.buttons=[];b.buttonOptions=e;this.eventsToUnbind=[];this.eventsToUnbind.push(d(a.container,
"mousedown",l));this.eventsToUnbind.push(d(a,"resize",l));e.forEach(b.computeButtonRange);"undefined"!==typeof g&&e[g]&&this.clickButton(g,!1);this.eventsToUnbind.push(d(a,"load",function(){a.xAxis&&a.xAxis[0]&&d(a.xAxis[0],"setExtremes",function(c){this.max-this.min!==a.fixedRange&&"rangeSelectorButton"!==c.trigger&&"updatedData"!==c.trigger&&b.forcedDataGrouping&&!b.frozenStates&&this.setDataGrouping(!1,!1)})}))};r.prototype.updateButtonStates=function(){var a=this,b=this.chart,c=this.dropdown,
d=b.xAxis[0],e=Math.round(d.max-d.min),g=!d.hasVisibleSeries,k=b.scroller&&b.scroller.getUnionExtremes()||d,m=k.dataMin,n=k.dataMax;b=a.getYTDExtremes(n,m,b.time.useUTC);var p=b.min,q=b.max,r=a.selected,t=M(r),v=a.options.allButtonsEnabled,w=a.buttons;a.buttonOptions.forEach(function(b,f){var h=b._range,l=b.type,k=b.count||1,u=w[f],y=0,I=b._offsetMax-b._offsetMin;b=f===r;var x=h>n-m,z=h<d.minRange,A=!1,O=!1;h=h===e;("month"===l||"year"===l)&&e+36E5>=864E5*{month:28,year:365}[l]*k-I&&e-36E5<=864E5*
{month:31,year:366}[l]*k+I?h=!0:"ytd"===l?(h=q-p+I===e,A=!b):"all"===l&&(h=d.max-d.min>=n-m,O=!b&&t&&h);l=!v&&(x||z||O||g);k=b&&h||h&&!t&&!A||b&&a.frozenStates;l?y=3:k&&(t=!0,y=2);u.state!==y&&(u.setState(y),c&&(c.options[f+1].disabled=l,2===y&&(c.selectedIndex=f+1)),0===y&&r===f&&a.setSelected())})};r.prototype.computeButtonRange=function(a){var b=a.type,c=a.count||1,d={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5};if(d[b])a._range=d[b]*c;else if("month"===b||"year"===b)a._range=
864E5*{month:30,year:365}[b]*c;a._offsetMin=e(a.offsetMin,0);a._offsetMax=e(a.offsetMax,0);a._range+=a._offsetMax-a._offsetMin};r.prototype.getInputValue=function(a){a="min"===a?this.minInput:this.maxInput;var b=this.chart.options.rangeSelector,c=this.chart.time;return a?("text"===a.type&&b.inputDateParser||this.defaultInputDateParser)(a.value,c.useUTC,c):0};r.prototype.setInputValue=function(a,b){var c=this.options,d=this.chart.time,e="min"===a?this.minInput:this.maxInput;a="min"===a?this.minDateBox:
this.maxDateBox;if(e){var f=e.getAttribute("data-hc-time");f=g(f)?Number(f):void 0;g(b)&&(g(f)&&e.setAttribute("data-hc-time-previous",f),e.setAttribute("data-hc-time",b),f=b);e.value=d.dateFormat(this.inputTypeFormats[e.type]||c.inputEditDateFormat,f);a&&a.attr({text:d.dateFormat(c.inputDateFormat,f)})}};r.prototype.setInputExtremes=function(a,b,c){if(a="min"===a?this.minInput:this.maxInput){var d=this.inputTypeFormats[a.type],e=this.chart.time;d&&(b=e.dateFormat(d,b),a.min!==b&&(a.min=b),c=e.dateFormat(d,
c),a.max!==c&&(a.max=c))}};r.prototype.showInput=function(a){var c="min"===a?this.minDateBox:this.maxDateBox;if((a="min"===a?this.minInput:this.maxInput)&&c&&this.inputGroup){var d="text"===a.type,e=this.inputGroup,g=e.translateX;e=e.translateY;var l=this.options.inputBoxWidth;b(a,{width:d?c.width+(l?-2:20)+"px":"auto",height:d?c.height-2+"px":"auto",border:"2px solid silver"});d&&l?b(a,{left:g+c.x+"px",top:e+"px"}):b(a,{left:Math.min(Math.round(c.x+g-(a.offsetWidth-c.width)/2),this.chart.chartWidth-
a.offsetWidth)+"px",top:e-(a.offsetHeight-c.height)/2+"px"})}};r.prototype.hideInput=function(a){(a="min"===a?this.minInput:this.maxInput)&&b(a,{top:"-9999em",border:0,width:"1px",height:"1px"})};r.prototype.defaultInputDateParser=function(a,b,c){var d=a.split("/").join("-").split(" ").join("T");-1===d.indexOf("T")&&(d+="T00:00");if(b)d+="Z";else{var e;if(e=A.isSafari)e=d,e=!(6<e.length&&(e.lastIndexOf("-")===e.length-6||e.lastIndexOf("+")===e.length-6));e&&(e=(new Date(d)).getTimezoneOffset()/60,
d+=0>=e?"+"+w(-e)+":00":"-"+w(e)+":00")}d=Date.parse(d);M(d)||(a=a.split("-"),d=Date.UTC(t(a[0]),t(a[1])-1,t(a[2])));c&&b&&M(d)&&(d+=c.getTimezoneOffset(d));return d};r.prototype.drawInput=function(a){function c(){var b=l.getInputValue(a),c=d.xAxis[0],e=d.scroller&&d.scroller.xAxis?d.scroller.xAxis:c,f=e.dataMin;e=e.dataMax;var h=l.maxInput,g=l.minInput;b!==Number(x.getAttribute("data-hc-time-previous"))&&M(b)&&(x.setAttribute("data-hc-time-previous",b),v&&h&&M(f)?b>Number(h.getAttribute("data-hc-time"))?
b=void 0:b<f&&(b=f):g&&M(e)&&(b<Number(g.getAttribute("data-hc-time"))?b=void 0:b>e&&(b=e)),"undefined"!==typeof b&&c.setExtremes(v?b:c.min,v?c.max:b,void 0,void 0,{trigger:"rangeSelectorInput"}))}var d=this.chart,e=this.div,g=this.inputGroup,l=this,k=d.renderer.style||{},r=d.renderer,t=d.options.rangeSelector,v="min"===a,w=p.lang[v?"rangeSelectorFrom":"rangeSelectorTo"];w=r.label(w,0).addClass("highcharts-range-label").attr({padding:w?2:0,height:w?t.inputBoxHeight:0}).add(g);r=r.label("",0).addClass("highcharts-range-input").attr({padding:2,
width:t.inputBoxWidth,height:t.inputBoxHeight,"text-align":"center"}).on("click",function(){l.showInput(a);l[a+"Input"].focus()});d.styledMode||r.attr({stroke:t.inputBoxBorderColor,"stroke-width":1});r.add(g);var x=m("input",{name:a,className:"highcharts-range-selector"},void 0,e);x.setAttribute("type",q(t.inputDateFormat||"%b %e, %Y"));d.styledMode||(w.css(N(k,t.labelStyle)),r.css(N({color:z.neutralColor80},k,t.inputStyle)),b(x,n({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",
width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:k.fontSize,fontFamily:k.fontFamily,top:"-9999em"},t.inputStyle)));x.onfocus=function(){l.showInput(a)};x.onblur=function(){x===A.doc.activeElement&&c();l.hideInput(a);l.setInputValue(a);x.blur()};var B=!1;x.onchange=function(){B||(c(),l.hideInput(a),x.blur())};x.onkeypress=function(a){13===a.keyCode&&c()};x.onkeydown=function(a){B=!0;38!==a.keyCode&&40!==a.keyCode||c()};x.onkeyup=function(){B=!1};return{dateBox:r,input:x,label:w}};r.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}};r.prototype.getYTDExtremes=function(a,b,c){var d=this.chart.time,e=new d.Date(a),f=d.get("FullYear",e);c=c?d.Date.UTC(f,0,1):+new d.Date(f,0,1);b=Math.max(b,c);e=e.getTime();return{max:Math.min(a||e,e),min:b}};r.prototype.render=function(a,b){var c=this.chart,d=c.renderer,f=c.container,k=c.options,l=k.rangeSelector,n=e(k.chart.style&&
k.chart.style.zIndex,0)+1;k=l.inputEnabled;if(!1!==l.enabled){this.rendered||(this.group=d.g("range-selector-group").attr({zIndex:7}).add(),this.div=m("div",void 0,{position:"relative",height:0,zIndex:n}),this.buttonOptions.length&&this.renderButtons(),f.parentNode&&f.parentNode.insertBefore(this.div,f),k&&(this.inputGroup=d.g("input-group").add(this.group),d=this.drawInput("min"),this.minDateBox=d.dateBox,this.minLabel=d.label,this.minInput=d.input,d=this.drawInput("max"),this.maxDateBox=d.dateBox,
this.maxLabel=d.label,this.maxInput=d.input));if(k&&(this.setInputValue("min",a),this.setInputValue("max",b),a=c.scroller&&c.scroller.getUnionExtremes()||c.xAxis[0]||{},g(a.dataMin)&&g(a.dataMax)&&(c=c.xAxis[0].minRange||0,this.setInputExtremes("min",a.dataMin,Math.min(a.dataMax,this.getInputValue("max"))-c),this.setInputExtremes("max",Math.max(a.dataMin,this.getInputValue("min"))+c,a.dataMax)),this.inputGroup)){var p=0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(function(a){if(a){var b=
a.getBBox().width;b&&(a.attr({x:p}),p+=b+l.inputSpacing)}})}this.alignElements();this.rendered=!0}};r.prototype.renderButtons=function(){var a=this,b=this.buttons,c=this.options,h=p.lang,g=this.chart.renderer,n=N(c.buttonTheme),q=n&&n.states,r=n.width||28;delete n.width;delete n.states;this.buttonGroup=g.g("range-selector-buttons").add(this.group);var t=this.dropdown=m("select",void 0,{position:"absolute",width:"1px",height:"1px",padding:0,border:0,top:"-9999em",cursor:"pointer",opacity:.0001},this.div);
d(t,"touchstart",function(){t.style.fontSize="16px"});[[A.isMS?"mouseover":"mouseenter"],[A.isMS?"mouseout":"mouseleave"],["change","click"]].forEach(function(c){var e=c[0],f=c[1];d(t,e,function(){var c=b[a.currentButtonIndex()];c&&k(c.element,f||e)})});this.zoomText=g.label(h&&h.rangeSelectorZoom||"",0).attr({padding:c.buttonTheme.padding,height:c.buttonTheme.height,paddingLeft:0,paddingRight:0}).add(this.buttonGroup);this.chart.styledMode||(this.zoomText.css(c.labelStyle),n["stroke-width"]=e(n["stroke-width"],
0));m("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,t);this.buttonOptions.forEach(function(c,d){m("option",{textContent:c.title||c.text},void 0,t);b[d]=g.button(c.text,0,0,function(b){var e=c.events&&c.events.click,f;e&&(f=e.call(c,b));!1!==f&&a.clickButton(d);a.isActive=!0},n,q&&q.hover,q&&q.select,q&&q.disabled).attr({"text-align":"center",width:r}).add(a.buttonGroup);c.title&&b[d].attr("title",c.title)})};r.prototype.alignElements=function(){var a=this,b=this.buttonGroup,c=this.buttons,
d=this.chart,g=this.group,k=this.inputGroup,m=this.options,n=this.zoomText,p=d.options,q=p.exporting&&!1!==p.exporting.enabled&&p.navigation&&p.navigation.buttonOptions;p=m.buttonPosition;var r=m.inputPosition,t=m.verticalAlign,v=function(b,c){return q&&a.titleCollision(d)&&"top"===t&&"right"===c.align&&c.y-b.getBBox().height-12<(q.y||0)+(q.height||0)+d.spacing[0]?-40:0},w=d.plotLeft;if(g&&p&&r){var x=p.x-d.spacing[3];if(b){this.positionButtons();if(!this.initialButtonGroupWidth){var z=0;n&&(z+=n.getBBox().width+
5);c.forEach(function(a,b){z+=a.width;b!==c.length-1&&(z+=m.buttonSpacing)});this.initialButtonGroupWidth=z}w-=d.spacing[3];this.updateButtonStates();n=v(b,p);this.alignButtonGroup(n);g.placed=b.placed=d.hasLoaded}b=0;k&&(b=v(k,r),"left"===r.align?x=w:"right"===r.align&&(x=-Math.max(d.axisOffset[1],-b)),k.align({y:r.y,width:k.getBBox().width,align:r.align,x:r.x+x-2},!0,d.spacingBox),k.placed=d.hasLoaded);this.handleCollision(b);g.align({verticalAlign:t},!0,d.spacingBox);k=g.alignAttr.translateY;b=
g.getBBox().height+20;v=0;"bottom"===t&&(v=(v=d.legend&&d.legend.options)&&"bottom"===v.verticalAlign&&v.enabled&&!v.floating?d.legend.legendHeight+e(v.margin,10):0,b=b+v-20,v=k-b-(m.floating?0:m.y)-(d.titleOffset?d.titleOffset[2]:0)-10);if("top"===t)m.floating&&(v=0),d.titleOffset&&d.titleOffset[0]&&(v=d.titleOffset[0]),v+=d.margin[0]-d.spacing[0]||0;else if("middle"===t)if(r.y===p.y)v=k;else if(r.y||p.y)v=0>r.y||0>p.y?v-Math.min(r.y,p.y):k-b;g.translate(m.x,m.y+Math.floor(v));p=this.minInput;r=
this.maxInput;k=this.dropdown;m.inputEnabled&&p&&r&&(p.style.marginTop=g.translateY+"px",r.style.marginTop=g.translateY+"px");k&&(k.style.marginTop=g.translateY+"px")}};r.prototype.alignButtonGroup=function(a,b){var c=this.chart,d=this.buttonGroup,f=this.options.buttonPosition,g=c.plotLeft-c.spacing[3],k=f.x-c.spacing[3];"right"===f.align?k+=a-g:"center"===f.align&&(k-=g/2);d&&d.align({y:f.y,width:e(b,this.initialButtonGroupWidth),align:f.align,x:k},!0,c.spacingBox)};r.prototype.positionButtons=function(){var a=
this.buttons,b=this.chart,c=this.options,d=this.zoomText,g=b.hasLoaded?"animate":"attr",k=c.buttonPosition,m=b.plotLeft,n=m;d&&"hidden"!==d.visibility&&(d[g]({x:e(m+k.x,m)}),n+=k.x+d.getBBox().width+5);this.buttonOptions.forEach(function(b,d){if("hidden"!==a[d].visibility)a[d][g]({x:n}),n+=a[d].width+c.buttonSpacing;else a[d][g]({x:m})})};r.prototype.handleCollision=function(a){var b=this,c=this.chart,d=this.buttonGroup,e=this.inputGroup,g=this.options,k=g.buttonPosition,l=g.dropdown,m=g.inputPosition;
g=function(){var a=0;b.buttons.forEach(function(b){b=b.getBBox();b.width>a&&(a=b.width)});return a};var n=function(b){if(e&&d){var c=e.alignAttr.translateX+e.alignOptions.x-a+e.getBBox().x+2,f=e.alignOptions.width,h=d.alignAttr.translateX+d.getBBox().x;return h+b>c&&c+f>h&&k.y<m.y+e.getBBox().height}return!1},p=function(){e&&d&&e.attr({translateX:e.alignAttr.translateX+(c.axisOffset[1]>=-a?0:-a),translateY:e.alignAttr.translateY+d.getBBox().height+10})};if(d){if("always"===l){this.collapseButtons(a);
n(g())&&p();return}"never"===l&&this.expandButtons()}e&&d?m.align===k.align||n(this.initialButtonGroupWidth+20)?"responsive"===l?(this.collapseButtons(a),n(g())&&p()):p():"responsive"===l&&this.expandButtons():d&&"responsive"===l&&(this.initialButtonGroupWidth>c.plotWidth?this.collapseButtons(a):this.expandButtons())};r.prototype.collapseButtons=function(a){var b=this.buttons,c=this.buttonOptions,d=this.chart,g=this.dropdown,k=this.options,l=this.zoomText,m=d.userOptions.rangeSelector&&d.userOptions.rangeSelector.buttonTheme||
{},n=function(a){return{text:a?a+" \u25be":"\u25be",width:"auto",paddingLeft:e(k.buttonTheme.paddingLeft,m.padding,8),paddingRight:e(k.buttonTheme.paddingRight,m.padding,8)}};l&&l.hide();var p=!1;c.forEach(function(a,c){c=b[c];2!==c.state?c.hide():(c.show(),c.attr(n(a.text)),p=!0)});p||(g&&(g.selectedIndex=0),b[0].show(),b[0].attr(n(this.zoomText&&this.zoomText.textStr)));c=k.buttonPosition.align;this.positionButtons();"right"!==c&&"center"!==c||this.alignButtonGroup(a,b[this.currentButtonIndex()].getBBox().width);
this.showDropdown()};r.prototype.expandButtons=function(){var a=this.buttons,b=this.buttonOptions,c=this.options,d=this.zoomText;this.hideDropdown();d&&d.show();b.forEach(function(b,d){d=a[d];d.show();d.attr({text:b.text,width:c.buttonTheme.width||28,paddingLeft:e(c.buttonTheme.paddingLeft,"unset"),paddingRight:e(c.buttonTheme.paddingRight,"unset")});2>d.state&&d.setState(0)});this.positionButtons()};r.prototype.currentButtonIndex=function(){var a=this.dropdown;return a&&0<a.selectedIndex?a.selectedIndex-
1:0};r.prototype.showDropdown=function(){var a=this.buttonGroup,c=this.buttons,d=this.chart,e=this.dropdown;if(a&&e){var g=a.translateX;a=a.translateY;c=c[this.currentButtonIndex()].getBBox();b(e,{left:d.plotLeft+g+"px",top:a+.5+"px",width:c.width+"px",height:c.height+"px"});this.hasVisibleDropdown=!0}};r.prototype.hideDropdown=function(){var a=this.dropdown;a&&(b(a,{top:"-9999em",width:"1px",height:"1px"}),this.hasVisibleDropdown=!1)};r.prototype.getHeight=function(){var a=this.options,b=this.group,
c=a.y,d=a.buttonPosition.y,e=a.inputPosition.y;if(a.height)return a.height;this.alignElements();a=b?b.getBBox(!0).height+13+c:0;b=Math.min(e,d);if(0>e&&0>d||0<e&&0<d)a+=Math.abs(b);return a};r.prototype.titleCollision=function(a){return!(a.options.title.text||a.options.subtitle.text)};r.prototype.update=function(a){var b=this.chart;N(!0,b.options.rangeSelector,a);this.destroy();this.init(b);this.render()};r.prototype.destroy=function(){var a=this,b=a.minInput,c=a.maxInput;a.eventsToUnbind&&(a.eventsToUnbind.forEach(function(a){return a()}),
a.eventsToUnbind=void 0);L(a.buttons);b&&(b.onfocus=b.onblur=b.onchange=null);c&&(c.onfocus=c.onblur=c.onchange=null);J(a,function(b,c){b&&"chart"!==c&&(b instanceof D?b.destroy():b instanceof window.HTMLElement&&x(b));b!==r.prototype[c]&&(a[c]=null)},this)};return r}();r.prototype.defaultButtons=[{type:"month",count:1,text:"1m",title:"View 1 month"},{type:"month",count:3,text:"3m",title:"View 3 months"},{type:"month",count:6,text:"6m",title:"View 6 months"},{type:"ytd",text:"YTD",title:"View year to date"},
{type:"year",count:1,text:"1y",title:"View 1 year"},{type:"all",text:"All",title:"View all"}];r.prototype.inputTypeFormats={"datetime-local":"%Y-%m-%dT%H:%M:%S",date:"%Y-%m-%d",time:"%H:%M:%S"};c.prototype.minFromRange=function(){var a=this.range,b=a.type,c=this.max,d=this.chart.time,h=function(a,c){var e="year"===b?"FullYear":"Month",f=new d.Date(a),h=d.get(e,f);d.set(e,f,h+c);h===d.get(e,f)&&d.set("Date",f,0);return f.getTime()-a};if(M(a)){var g=c-a;var k=a}else g=c+h(c,-a.count),this.chart&&(this.chart.fixedRange=
c-g);var m=e(this.dataMin,Number.MIN_VALUE);M(g)||(g=m);g<=m&&(g=m,"undefined"===typeof k&&(k=h(g,a.count)),this.newMax=Math.min(g+k,this.dataMax));M(c)||(g=void 0);return g};if(!A.RangeSelector){var E=[],F=function(a){function b(){e&&(c=a.xAxis[0].getExtremes(),h=a.legend,k=e&&e.options.verticalAlign,M(c.min)&&e.render(c.min,c.max),h.display&&"top"===k&&k===h.options.verticalAlign&&(g=N(a.spacingBox),g.y="vertical"===h.options.layout?a.plotTop:g.y+e.getHeight(),h.group.placed=!1,h.align(g)))}var c,
e=a.rangeSelector,h,g,k;e&&(B(E,function(b){return b[0]===a})||E.push([a,[d(a.xAxis[0],"afterSetExtremes",function(a){e&&e.render(a.min,a.max)}),d(a,"redraw",b)]]),b())};d(v,"afterGetContainer",function(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new r(this))});d(v,"beforeRender",function(){var a=this.axes,b=this.rangeSelector;b&&(M(b.deferredYTDClick)&&(b.clickButton(b.deferredYTDClick),delete b.deferredYTDClick),a.forEach(function(a){a.updateNames();a.setScale()}),
this.getAxisMargins(),b.render(),a=b.options.verticalAlign,b.options.floating||("bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=!0)))});d(v,"update",function(a){var b=a.options.rangeSelector;a=this.rangeSelector;var c=this.extraBottomMargin,d=this.extraTopMargin;b&&b.enabled&&!g(a)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=a=new r(this));this.extraTopMargin=this.extraBottomMargin=!1;a&&(F(this),b=b&&b.verticalAlign||a.options&&
a.options.verticalAlign,a.options.floating||("bottom"===b?this.extraBottomMargin=!0:"middle"!==b&&(this.extraTopMargin=!0)),this.extraBottomMargin!==c||this.extraTopMargin!==d)&&(this.isDirtyBox=!0)});d(v,"render",function(){var a=this.rangeSelector;a&&!a.options.floating&&(a.render(),a=a.options.verticalAlign,"bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=!0))});d(v,"getMargins",function(){var a=this.rangeSelector;a&&(a=a.getHeight(),this.extraTopMargin&&(this.plotTop+=
a),this.extraBottomMargin&&(this.marginBottom+=a))});v.prototype.callbacks.push(F);d(v,"destroy",function(){for(var a=0;a<E.length;a++){var b=E[a];if(b[0]===this){b[1].forEach(function(a){return a()});E.splice(a,1);break}}});A.RangeSelector=r}return r});P(c,"Core/Chart/StockChart.js",[c["Core/Animation/AnimationUtilities.js"],c["Core/Axis/Axis.js"],c["Core/Chart/Chart.js"],c["Core/FormatUtilities.js"],c["Core/DefaultOptions.js"],c["Core/Color/Palette.js"],c["Core/Series/Point.js"],c["Core/Series/Series.js"],
c["Core/Renderer/SVG/SVGRenderer.js"],c["Core/Utilities.js"]],function(c,v,A,C,z,D,H,K,p,d){function m(a,b){return"xAxis"===a?{minPadding:0,maxPadding:0,overscroll:0,ordinal:!0,title:{text:null},labels:{overflow:"justify"},showLastLabel:!0}:"yAxis"===a?{labels:{y:-2},opposite:G(b.opposite,!0),showLastLabel:!(!b.categories&&"category"!==b.type),title:{text:null}}:{}}function b(a,b){if("xAxis"===a){a=n();var c={type:"datetime",categories:void 0};G(b.navigator&&b.navigator.enabled,a.navigator.enabled,
!0)&&(c.startOnTick=!1,c.endOnTick=!1);return c}return{}}var g=this&&this.__extends||function(){var a=function(b,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c])};return a(b,c)};return function(b,c){function d(){this.constructor=b}a(b,c);b.prototype=null===c?Object.create(c):(d.prototype=c.prototype,new d)}}(),q=c.animObject,x=C.format,n=z.getOptions,B=H.prototype.tooltipFormatter;c=K.prototype;
var k=c.init,M=c.processData;c=d.addEvent;var N=d.arrayMax,J=d.arrayMin,w=d.clamp,e=d.defined,t=d.extend,a=d.find,r=d.isNumber,E=d.isString,F=d.merge,G=d.pick,l=d.splat;d=function(a){function c(){return null!==a&&a.apply(this,arguments)||this}g(c,a);c.prototype.init=function(c,d){var e=n(),f=c.xAxis,h=c.yAxis,g=G(c.navigator&&c.navigator.enabled,e.navigator.enabled,!0);c.xAxis=c.yAxis=void 0;g=F({chart:{panning:{enabled:!0,type:"x"},pinchType:"x"},navigator:{enabled:g},scrollbar:{enabled:G(e.scrollbar&&
e.scrollbar.enabled,!0)},rangeSelector:{enabled:G(e.rangeSelector.enabled,!0)},title:{text:null},tooltip:{split:G(e.tooltip.split,!0),crosshairs:!0},legend:{enabled:!1}},c,{isStock:!0});c.xAxis=f;c.yAxis=h;g.xAxis=l(c.xAxis||{}).map(function(a,d){return F(m("xAxis",a),e.xAxis,e.xAxis&&e.xAxis[d],a,b("xAxis",c))});g.yAxis=l(c.yAxis||{}).map(function(a,b){return F(m("yAxis",a),e.yAxis,e.yAxis&&e.yAxis[b],a)});a.prototype.init.call(this,g,d)};c.prototype.createAxis=function(c,d){d.axis=F(m(c,d.axis),
d.axis,b(c,this.userOptions));return a.prototype.createAxis.call(this,c,d)};return c}(A);(function(a){a.stockChart=function(b,c,d){return new a(b,c,d)}})(d||(d={}));c(K,"setOptions",function(a){var b;this.chart.options.isStock&&(this.is("column")||this.is("columnrange")?b={borderWidth:0,shadow:!1}:this.is("scatter")||this.is("sma")||(b={marker:{enabled:!1,radius:2}}),b&&(a.plotOptions[this.type]=F(a.plotOptions[this.type],b)))});c(v,"autoLabelAlign",function(a){var b=this.chart,c=this.options;b=b._labelPanes=
b._labelPanes||{};var d=this.options.labels;this.chart.options.isStock&&"yAxis"===this.coll&&(c=c.top+","+c.height,!b[c]&&d.enabled&&(15===d.x&&(d.x=0),"undefined"===typeof d.align&&(d.align="right"),b[c]=this,a.align="right",a.preventDefault()))});c(v,"destroy",function(){var a=this.chart,b=this.options&&this.options.top+","+this.options.height;b&&a._labelPanes&&a._labelPanes[b]===this&&delete a._labelPanes[b]});c(v,"getPlotLinePath",function(b){function c(a){var b="xAxis"===a?"yAxis":"xAxis";a=
d.options[b];return r(a)?[g[b][a]]:E(a)?[g.get(a)]:f.map(function(a){return a[b]})}var d=this,f=this.isLinked&&!this.series?this.linkedParent.series:this.series,g=d.chart,k=g.renderer,l=d.left,m=d.top,n,p,q,t,v=[],x=[],z=b.translatedValue,A=b.value,B=b.force;if(g.options.isStock&&!1!==b.acrossPanes&&"xAxis"===d.coll||"yAxis"===d.coll){b.preventDefault();x=c(d.coll);var C=d.isXAxis?g.yAxis:g.xAxis;C.forEach(function(a){if(e(a.options.id)?-1===a.options.id.indexOf("navigator"):1){var b=a.isXAxis?"yAxis":
"xAxis";b=e(a.options[b])?g[b][a.options[b]]:g[b][0];d===b&&x.push(a)}});var D=x.length?[]:[d.isXAxis?g.yAxis[0]:g.xAxis[0]];x.forEach(function(b){-1!==D.indexOf(b)||a(D,function(a){return a.pos===b.pos&&a.len===b.len})||D.push(b)});var F=G(z,d.translate(A,null,null,b.old));r(F)&&(d.horiz?D.forEach(function(a){var b;p=a.pos;t=p+a.len;n=q=Math.round(F+d.transB);"pass"!==B&&(n<l||n>l+d.width)&&(B?n=q=w(n,l,l+d.width):b=!0);b||v.push(["M",n,p],["L",q,t])}):D.forEach(function(a){var b;n=a.pos;q=n+a.len;
p=t=Math.round(m+d.height-F);"pass"!==B&&(p<m||p>m+d.height)&&(B?p=t=w(p,m,m+d.height):b=!0);b||v.push(["M",n,p],["L",q,t])}));b.path=0<v.length?k.crispPolyLine(v,b.lineWidth||1):null}});p.prototype.crispPolyLine=function(a,b){for(var c=0;c<a.length;c+=2){var d=a[c],e=a[c+1];d[1]===e[1]&&(d[1]=e[1]=Math.round(d[1])-b%2/2);d[2]===e[2]&&(d[2]=e[2]=Math.round(d[2])+b%2/2)}return a};c(v,"afterHideCrosshair",function(){this.crossLabel&&(this.crossLabel=this.crossLabel.hide())});c(v,"afterDrawCrosshair",
function(a){var b,c;if(this.crosshair&&this.crosshair.label&&this.crosshair.label.enabled&&this.cross&&r(this.min)&&r(this.max)){var d=this.chart,e=this.logarithmic,f=this.crosshair.label,g=this.horiz,k=this.opposite,l=this.left,m=this.top,n=this.crossLabel,p=f.format,q="",v="inside"===this.options.tickPosition,w=!1!==this.crosshair.snap,z=0,A=a.e||this.cross&&this.cross.e;a=a.point;var B=this.min,C=this.max;e&&(B=e.lin2log(B),C=e.lin2log(C));e=g?"center":k?"right"===this.labelAlign?"right":"left":
"left"===this.labelAlign?"left":"center";n||(n=this.crossLabel=d.renderer.label("",0,void 0,f.shape||"callout").addClass("highcharts-crosshair-label highcharts-color-"+(a?a.series.colorIndex:this.series[0]&&this.series[0].colorIndex)).attr({align:f.align||e,padding:G(f.padding,8),r:G(f.borderRadius,3),zIndex:2}).add(this.labelGroup),d.styledMode||n.attr({fill:f.backgroundColor||a&&a.series&&a.series.color||D.neutralColor60,stroke:f.borderColor||"","stroke-width":f.borderWidth||0}).css(t({color:D.backgroundColor,
fontWeight:"normal",fontSize:"11px",textAlign:"center"},f.style||{})));g?(e=w?(a.plotX||0)+l:A.chartX,m+=k?0:this.height):(e=k?this.width+l:0,m=w?(a.plotY||0)+m:A.chartY);p||f.formatter||(this.dateTime&&(q="%b %d, %Y"),p="{value"+(q?":"+q:"")+"}");q=w?this.isXAxis?a.x:a.y:this.toValue(g?A.chartX:A.chartY);w=a?a.series.isPointInside(a):r(q)&&q>B&&q<C;A="";p?A=x(p,{value:q},d):f.formatter&&r(q)&&(A=f.formatter.call(this,q));n.attr({text:A,x:e,y:m,visibility:w?"visible":"hidden"});f=n.getBBox();if(r(n.y))if(g){if(v&&
!k||!v&&k)m=n.y-f.height}else m=n.y-f.height/2;g?(b=l-f.x,c=l+this.width-f.x):(b="left"===this.labelAlign?l:0,c="right"===this.labelAlign?l+this.width:d.chartWidth);n.translateX<b&&(z=b-n.translateX);n.translateX+f.width>=c&&(z=-(n.translateX+f.width-c));n.attr({x:e+z,y:m,anchorX:g?e:this.opposite?0:d.chartWidth,anchorY:g?this.opposite?d.chartHeight:0:m+f.height/2})}});K.prototype.init=function(){k.apply(this,arguments);this.initCompare(this.options.compare)};K.prototype.setCompare=function(a){this.initCompare(a);
this.userOptions.compare=a};K.prototype.initCompare=function(a){this.modifyValue="value"===a||"percent"===a?function(b,c){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),c&&(c.change=b),b):0}:null;this.chart.hasRendered&&(this.isDirty=!0)};K.prototype.processData=function(a){var b,c=-1,d=!0===this.options.compareStart?0:1;M.apply(this,arguments);if(this.xAxis&&this.processedYData){var e=this.processedXData;
var f=this.processedYData;var g=f.length;this.pointArrayMap&&(c=this.pointArrayMap.indexOf(this.options.pointValKey||this.pointValKey||"y"));for(b=0;b<g-d;b++){var k=f[b]&&-1<c?f[b][c]:f[b];if(r(k)&&e[b+d]>=this.xAxis.min&&0!==k){this.compareValue=k;break}}}};c(K,"afterGetExtremes",function(a){a=a.dataExtremes;if(this.modifyValue&&a){var b=[this.modifyValue(a.dataMin),this.modifyValue(a.dataMax)];a.dataMin=J(b);a.dataMax=N(b)}});v.prototype.setCompare=function(a,b){this.isXAxis||(this.series.forEach(function(b){b.setCompare(a)}),
G(b,!0)&&this.chart.redraw())};H.prototype.tooltipFormatter=function(a){var b=this.series.chart.numberFormatter;a=a.replace("{point.change}",(0<this.change?"+":"")+b(this.change,G(this.series.tooltipOptions.changeDecimals,2)));return B.apply(this,[a])};c(K,"render",function(){var a=this.chart;if(!(a.is3d&&a.is3d()||a.polar)&&this.xAxis&&!this.xAxis.isRadial&&!1!==this.options.clip){var b=this.yAxis.len;if(this.xAxis.axisLine){var c=a.plotTop+a.plotHeight-this.yAxis.pos-this.yAxis.len,d=Math.floor(this.xAxis.axisLine.strokeWidth()/
2);0<=c&&(b-=Math.max(d-c,0))}if(!a.hasLoaded||!this.clipBox&&this.isDirty&&!this.isDirtyData)this.clipBox=this.clipBox||F(a.clipBox),this.clipBox.width=this.xAxis.len,this.clipBox.height=b;a.hasRendered&&(c=q(this.options.animation),c=this.getSharedClipKey(c),d=a.sharedClips[c])&&(d.animate({width:this.xAxis.len,height:b}),(a=a.sharedClips[c+"m"])&&a.animate({width:this.xAxis.len}))}});c(A,"update",function(a){a=a.options;"scrollbar"in a&&this.navigator&&(F(!0,this.options.scrollbar,a.scrollbar),
this.navigator.update({},!1),delete a.scrollbar)});"";return d});P(c,"masters/modules/stock.src.js",[c["Core/Globals.js"],c["Core/Scrollbar.js"],c["Core/Chart/StockChart.js"]],function(c,v,A){c.Scrollbar=v;c.StockChart=c.stockChart=A.stockChart;v.compose(c.Axis)});P(c,"masters/highstock.src.js",[c["masters/highcharts.src.js"]],function(c){c.product="Highstock";return c});c["masters/highstock.src.js"]._modules=c;return c["masters/highstock.src.js"]});
//# sourceMappingURL=highstock.js.map