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

 (c) 2017-2021 Lars Cabrera, Torstein Honsi, Jon Arild Nygard & Oystein Moseng

 License: www.highcharts.com/license
*/
'use strict';(function(X,P){"object"===typeof module&&module.exports?(P["default"]=P,module.exports=X.document?P(X):P):"function"===typeof define&&define.amd?define("highcharts/highcharts-gantt",function(){return P(X)}):(X.Highcharts&&X.Highcharts.error(16,!0),X.Highcharts=P(X))})("undefined"!==typeof window?window:this,function(X){function P(e,v,E,C){e.hasOwnProperty(v)||(e[v]=C.apply(null,E))}var e={};P(e,"Core/Globals.js",[],function(){var e="undefined"!==typeof X?X:"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=e;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 e=!1;if(!q.isMS){var v=Object.defineProperty({},"passive",{get:function(){e=!0}});q.win.addEventListener&&q.win.removeEventListener&&(q.win.addEventListener("testPassive",
q.noop,v),q.win.removeEventListener("testPassive",q.noop,v))}return e}();q.charts=[];q.dateFormats={};q.seriesTypes={};q.symbolSizes={}})(v||(v={}));return v});P(e,"Core/Utilities.js",[e["Core/Globals.js"]],function(q){function e(a,c,G,f){var r=c?"Highcharts error":"Highcharts warning";32===a&&(a=r+": Deprecated member");var K=k(a),M=K?r+" #"+a+": www.highcharts.com/errors/"+a+"/":a.toString();if("undefined"!==typeof f){var y="";K&&(M+="?");J(f,function(p,N){y+="\n - "+N+": "+p;K&&(M+=encodeURI(N)+
"="+encodeURI(p))});M+=y}z(q,"displayError",{chart:G,code:a,message:M,params:f},function(){if(c)throw Error(M);h.console&&-1===e.messages.indexOf(M)&&console.warn(M)});e.messages.push(M)}function E(a,c){var r={};J(a,function(K,w){if(F(a[w],!0)&&!a.nodeType&&c[w])K=E(a[w],c[w]),Object.keys(K).length&&(r[w]=K);else if(F(a[w])||a[w]!==c[w])r[w]=a[w]});return r}function C(a,c){return parseInt(a,c||10)}function D(a){return"string"===typeof a}function A(a){a=Object.prototype.toString.call(a);return"[object Array]"===
a||"[object Array Iterator]"===a}function F(a,c){return!!a&&"object"===typeof a&&(!c||!A(a))}function B(a){return F(a)&&"number"===typeof a.nodeType}function l(a){var c=a&&a.constructor;return!(!F(a,!0)||B(a)||!c||!c.name||"Object"===c.name)}function k(a){return"number"===typeof a&&!isNaN(a)&&Infinity>a&&-Infinity<a}function d(a){return"undefined"!==typeof a&&null!==a}function b(a,c,G){var r;D(c)?d(G)?a.setAttribute(c,G):a&&a.getAttribute&&((r=a.getAttribute(c))||"class"!==c||(r=a.getAttribute(c+
"Name"))):J(c,function(c,r){a.setAttribute(r,c)});return r}function t(a,c){var r;a||(a={});for(r in c)a[r]=c[r];return a}function I(){for(var a=arguments,c=a.length,f=0;f<c;f++){var h=a[f];if("undefined"!==typeof h&&null!==h)return h}}function x(a,c){q.isMS&&!q.svg&&c&&"undefined"!==typeof c.opacity&&(c.filter="alpha(opacity="+100*c.opacity+")");t(a.style,c)}function m(a,r,f,h,w){a=c.createElement(a);r&&t(a,r);w&&x(a,{padding:"0",border:"none",margin:"0"});f&&x(a,f);h&&h.appendChild(a);return a}function g(a,
c){return parseFloat(a.toPrecision(c||14))}function n(a,c,f){var r=q.getStyle||n;if("width"===c)return c=Math.min(a.offsetWidth,a.scrollWidth),f=a.getBoundingClientRect&&a.getBoundingClientRect().width,f<c&&f>=c-1&&(c=Math.floor(f)),Math.max(0,c-(r(a,"padding-left",!0)||0)-(r(a,"padding-right",!0)||0));if("height"===c)return Math.max(0,Math.min(a.offsetHeight,a.scrollHeight)-(r(a,"padding-top",!0)||0)-(r(a,"padding-bottom",!0)||0));h.getComputedStyle||e(27,!0);if(a=h.getComputedStyle(a,void 0)){var w=
a.getPropertyValue(c);I(f,"opacity"!==c)&&(w=C(w))}return w}function J(a,c,f){for(var r in a)Object.hasOwnProperty.call(a,r)&&c.call(f||a[r],a[r],r,a)}function O(a,c,f){function r(c,p){var N=a.removeEventListener||q.removeEventListenerPolyfill;N&&N.call(a,c,p,!1)}function w(f){var p;if(a.nodeName){if(c){var N={};N[c]=!0}else N=f;J(N,function(a,N){if(f[N])for(p=f[N].length;p--;)r(N,f[N][p].fn)})}}var h="function"===typeof a&&a.prototype||a;if(Object.hasOwnProperty.call(h,"hcEvents")){var M=h.hcEvents;
c?(h=M[c]||[],f?(M[c]=h.filter(function(a){return f!==a.fn}),r(c,f)):(w(M),M[c]=[])):(w(M),delete h.hcEvents)}}function z(a,r,f,h){f=f||{};if(c.createEvent&&(a.dispatchEvent||a.fireEvent&&a!==q)){var w=c.createEvent("Events");w.initEvent(r,!0,!0);f=t(w,f);a.dispatchEvent?a.dispatchEvent(f):a.fireEvent(r,f)}else if(a.hcEvents){f.target||t(f,{preventDefault:function(){f.defaultPrevented=!0},target:a,type:r});w=[];for(var y=a,M=!1;y.hcEvents;)Object.hasOwnProperty.call(y,"hcEvents")&&y.hcEvents[r]&&
(w.length&&(M=!0),w.unshift.apply(w,y.hcEvents[r])),y=Object.getPrototypeOf(y);M&&w.sort(function(a,p){return a.order-p.order});w.forEach(function(c){!1===c.fn.call(a,f)&&f.preventDefault()})}h&&!f.defaultPrevented&&h.call(a,f)}var u=q.charts,c=q.doc,h=q.win;"";(e||(e={})).messages=[];var a;Math.easeInOutSine=function(a){return-.5*(Math.cos(Math.PI*a)-1)};var f=Array.prototype.find?function(a,c){return a.find(c)}:function(a,c){var r,f=a.length;for(r=0;r<f;r++)if(c(a[r],r))return a[r]};J({map:"map",
each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(a,c){q[c]=function(r){var f;e(32,!1,void 0,(f={},f["Highcharts."+c]="use Array."+a,f));return Array.prototype[a].apply(r,[].slice.call(arguments,1))}});var y,L=function(){var a=Math.random().toString(36).substring(2,9)+"-",c=0;return function(){return"highcharts-"+(y?"":a)+c++}}();h.jQuery&&(h.jQuery.fn.highcharts=function(){var a=[].slice.call(arguments);if(this[0])return a[0]?(new (q[D(a[0])?a.shift():"Chart"])(this[0],a[0],a[1]),
this):u[b(this[0],"data-highcharts-chart")]});return{addEvent:function(a,c,f,h){void 0===h&&(h={});var r="function"===typeof a&&a.prototype||a;Object.hasOwnProperty.call(r,"hcEvents")||(r.hcEvents={});r=r.hcEvents;q.Point&&a instanceof q.Point&&a.series&&a.series.chart&&(a.series.chart.runTrackerClick=!0);var y=a.addEventListener||q.addEventListenerPolyfill;y&&y.call(a,c,f,q.supportsPassiveEvents?{passive:void 0===h.passive?-1!==c.indexOf("touch"):h.passive,capture:!1}:!1);r[c]||(r[c]=[]);r[c].push({fn:f,
order:"number"===typeof h.order?h.order:Infinity});r[c].sort(function(a,c){return a.order-c.order});return function(){O(a,c,f)}},arrayMax:function(a){for(var c=a.length,f=a[0];c--;)a[c]>f&&(f=a[c]);return f},arrayMin:function(a){for(var c=a.length,f=a[0];c--;)a[c]<f&&(f=a[c]);return f},attr:b,clamp:function(a,c,f){return a>c?a<f?a:f:c},cleanRecursively:E,clearTimeout:function(a){d(a)&&clearTimeout(a)},correctFloat:g,createElement:m,css:x,defined:d,destroyObjectProperties:function(a,c){J(a,function(f,
r){f&&f!==c&&f.destroy&&f.destroy();delete a[r]})},discardElement:function(c){a||(a=m("div"));c&&a.appendChild(c);a.innerHTML=""},erase:function(a,c){for(var f=a.length;f--;)if(a[f]===c){a.splice(f,1);break}},error:e,extend:t,extendClass:function(a,c){var f=function(){};f.prototype=new a;t(f.prototype,c);return f},find:f,fireEvent:z,getMagnitude:function(a){return Math.pow(10,Math.floor(Math.log(a)/Math.LN10))},getNestedProperty:function(a,c){for(a=a.split(".");a.length&&d(c);){var f=a.shift();if("undefined"===
typeof f||"__proto__"===f)return;c=c[f];if(!d(c)||"function"===typeof c||"number"===typeof c.nodeType||c===h)return}return c},getStyle:n,inArray:function(a,c,f){e(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"});return c.indexOf(a,f)},isArray:A,isClass:l,isDOMElement:B,isFunction:function(a){return"function"===typeof a},isNumber:k,isObject:F,isString:D,keys:function(a){e(32,!1,void 0,{"Highcharts.keys":"use Object.keys"});return Object.keys(a)},merge:function(){var a,c=arguments,f={},h=function(a,
c){"object"!==typeof a&&(a={});J(c,function(f,p){"__proto__"!==p&&"constructor"!==p&&(!F(f,!0)||l(f)||B(f)?a[p]=c[p]:a[p]=h(a[p]||{},f))});return a};!0===c[0]&&(f=c[1],c=Array.prototype.slice.call(c,2));var w=c.length;for(a=0;a<w;a++)f=h(f,c[a]);return f},normalizeTickInterval:function(a,c,f,h,w){var r=a;f=I(f,1);var M=a/f;c||(c=w?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===h&&(1===f?c=c.filter(function(a){return 0===a%1}):.1>=f&&(c=[1/f])));for(h=0;h<c.length&&!(r=c[h],w&&r*f>=a||!w&&M<=(c[h]+
(c[h+1]||c[h]))/2);h++);return r=g(r*f,-Math.round(Math.log(.001)/Math.LN10))},objectEach:J,offset:function(a){var f=c.documentElement;a=a.parentElement||a.parentNode?a.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:a.top+(h.pageYOffset||f.scrollTop)-(f.clientTop||0),left:a.left+(h.pageXOffset||f.scrollLeft)-(f.clientLeft||0),width:a.width,height:a.height}},pad:function(a,c,f){return Array((c||2)+1-String(a).replace("-","").length).join(f||"0")+a},pick:I,pInt:C,relativeLength:function(a,
c,f){return/%$/.test(a)?c*parseFloat(a)/100+(f||0):parseFloat(a)},removeEvent:O,splat:function(a){return A(a)?a:[a]},stableSort:function(a,c){var f=a.length,h,r;for(r=0;r<f;r++)a[r].safeI=r;a.sort(function(a,f){h=c(a,f);return 0===h?a.safeI-f.safeI:h});for(r=0;r<f;r++)delete a[r].safeI},syncTimeout:function(a,c,f){if(0<c)return setTimeout(a,c,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:L,useSerialIds:function(a){return y=
I(a,y)},wrap:function(a,c,f){var h=a[c];a[c]=function(){var a=Array.prototype.slice.call(arguments),c=arguments,r=this;r.proceed=function(){h.apply(r,arguments.length?arguments:c)};a.unshift(h);a=f.apply(this,a);r.proceed=null;return a}}}});P(e,"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(e,"Core/Chart/ChartDefaults.js",[e["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(e,"Core/Color/Color.js",[e["Core/Globals.js"],e["Core/Utilities.js"]],function(q,e){var v=e.isNumber,C=e.merge,D=e.pInt;e=function(){function e(F){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(l){return[D(l[1]),
D(l[2]),D(l[3]),parseFloat(l[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(l){return[D(l[1]),D(l[2]),D(l[3]),1]}}];this.rgba=[];var B=q.Color;if(B&&B!==e)return new B(F);if(!(this instanceof e))return new e(F);this.init(F)}e.parse=function(q){return new e(q)};e.prototype.init=function(q){var B,l;if((this.input=q=e.names[q&&q.toLowerCase?q.toLowerCase():""]||q)&&q.stops)this.stops=q.stops.map(function(b){return new e(b[1])});else{if(q&&q.charAt&&
"#"===q.charAt()){var k=q.length;q=parseInt(q.substr(1),16);7===k?B=[(q&16711680)>>16,(q&65280)>>8,q&255,1]:4===k&&(B=[(q&3840)>>4|(q&3840)>>8,(q&240)>>4|q&240,(q&15)<<4|q&15,1])}if(!B)for(l=this.parsers.length;l--&&!B;){var d=this.parsers[l];(k=d.regex.exec(q))&&(B=d.parse(k))}}this.rgba=B||[]};e.prototype.get=function(q){var B=this.input,l=this.rgba;if("undefined"!==typeof this.stops){var k=C(B);k.stops=[].concat(k.stops);this.stops.forEach(function(d,b){k.stops[b]=[k.stops[b][0],d.get(q)]})}else k=
l&&v(l[0])?"rgb"===q||!q&&1===l[3]?"rgb("+l[0]+","+l[1]+","+l[2]+")":"a"===q?l[3]:"rgba("+l.join(",")+")":B;return k};e.prototype.brighten=function(q){var B,l=this.rgba;if(this.stops)this.stops.forEach(function(k){k.brighten(q)});else if(v(q)&&0!==q)for(B=0;3>B;B++)l[B]+=D(255*q),0>l[B]&&(l[B]=0),255<l[B]&&(l[B]=255);return this};e.prototype.setOpacity=function(q){this.rgba[3]=q;return this};e.prototype.tweenTo=function(q,B){var l=this.rgba,k=q.rgba;k.length&&l&&l.length?(q=1!==k[3]||1!==l[3],B=(q?
"rgba(":"rgb(")+Math.round(k[0]+(l[0]-k[0])*(1-B))+","+Math.round(k[1]+(l[1]-k[1])*(1-B))+","+Math.round(k[2]+(l[2]-k[2])*(1-B))+(q?","+(k[3]+(l[3]-k[3])*(1-B)):"")+")"):B=q.input||"none";return B};e.names={white:"#ffffff",black:"#000000"};return e}();"";return e});P(e,"Core/Time.js",[e["Core/Globals.js"],e["Core/Utilities.js"]],function(q,e){var v=q.win,C=e.defined,D=e.error,A=e.extend,F=e.isObject,B=e.merge,l=e.objectEach,k=e.pad,d=e.pick,b=e.splat,t=e.timeUnits,I=q.isSafari&&Intl.DateTimeFormat.prototype.formatRange,
x=q.isSafari&&!Intl.DateTimeFormat.prototype.formatRange;e=function(){function m(g){this.options={};this.variableTimezone=this.useUTC=!1;this.Date=v.Date;this.getTimezoneOffset=this.timezoneOffsetFunction();this.update(g)}m.prototype.get=function(g,n){if(this.variableTimezone||this.timezoneOffset){var m=n.getTime(),b=m-this.getTimezoneOffset(n);n.setTime(b);g=n["getUTC"+g]();n.setTime(m);return g}return this.useUTC?n["getUTC"+g]():n["get"+g]()};m.prototype.set=function(g,n,m){if(this.variableTimezone||
this.timezoneOffset){if("Milliseconds"===g||"Seconds"===g||"Minutes"===g&&0===this.getTimezoneOffset(n)%36E5)return n["setUTC"+g](m);var b=this.getTimezoneOffset(n);b=n.getTime()-b;n.setTime(b);n["setUTC"+g](m);g=this.getTimezoneOffset(n);b=n.getTime()+g;return n.setTime(b)}return this.useUTC||I&&"FullYear"===g?n["setUTC"+g](m):n["set"+g](m)};m.prototype.update=function(g){var n=d(g&&g.useUTC,!0);this.options=g=B(!0,this.options||{},g);this.Date=g.Date||v.Date||Date;this.timezoneOffset=(this.useUTC=
n)&&g.timezoneOffset;this.getTimezoneOffset=this.timezoneOffsetFunction();this.variableTimezone=n&&!(!g.getTimezoneOffset&&!g.timezone)};m.prototype.makeTime=function(g,n,m,b,z,u){if(this.useUTC){var c=this.Date.UTC.apply(0,arguments);var h=this.getTimezoneOffset(c);c+=h;var a=this.getTimezoneOffset(c);h!==a?c+=a-h:h-36E5!==this.getTimezoneOffset(c-36E5)||x||(c-=36E5)}else c=(new this.Date(g,n,d(m,1),d(b,0),d(z,0),d(u,0))).getTime();return c};m.prototype.timezoneOffsetFunction=function(){var g=this,
n=this.options,m=n.moment||v.moment;if(!this.useUTC)return function(g){return 6E4*(new Date(g.toString())).getTimezoneOffset()};if(n.timezone){if(m)return function(g){return 6E4*-m.tz(g,n.timezone).utcOffset()};D(25)}return this.useUTC&&n.getTimezoneOffset?function(g){return 6E4*n.getTimezoneOffset(g.valueOf())}:function(){return 6E4*(g.timezoneOffset||0)}};m.prototype.dateFormat=function(g,n,m){if(!C(n)||isNaN(n))return q.defaultOptions.lang&&q.defaultOptions.lang.invalidDate||"";g=d(g,"%Y-%m-%d %H:%M:%S");
var b=this,z=new this.Date(n),u=this.get("Hours",z),c=this.get("Day",z),h=this.get("Date",z),a=this.get("Month",z),f=this.get("FullYear",z),y=q.defaultOptions.lang,L=y&&y.weekdays,t=y&&y.shortWeekdays;z=A({a:t?t[c]:L[c].substr(0,3),A:L[c],d:k(h),e:k(h,2," "),w:c,b:y.shortMonths[a],B:y.months[a],m:k(a+1),o:a+1,y:f.toString().substr(2,2),Y:f,H:k(u),k:u,I:k(u%12||12),l:u%12||12,M:k(this.get("Minutes",z)),p:12>u?"AM":"PM",P:12>u?"am":"pm",S:k(z.getSeconds()),L:k(Math.floor(n%1E3),3)},q.dateFormats);l(z,
function(a,c){for(;-1!==g.indexOf("%"+c);)g=g.replace("%"+c,"function"===typeof a?a.call(b,n):a)});return m?g.substr(0,1).toUpperCase()+g.substr(1):g};m.prototype.resolveDTLFormat=function(g){return F(g,!0)?g:(g=b(g),{main:g[0],from:g[1],to:g[2]})};m.prototype.getTimeTicks=function(g,n,m,b){var z=this,u=[],c={},h=new z.Date(n),a=g.unitRange,f=g.count||1,y;b=d(b,1);if(C(n)){z.set("Milliseconds",h,a>=t.second?0:f*Math.floor(z.get("Milliseconds",h)/f));a>=t.second&&z.set("Seconds",h,a>=t.minute?0:f*
Math.floor(z.get("Seconds",h)/f));a>=t.minute&&z.set("Minutes",h,a>=t.hour?0:f*Math.floor(z.get("Minutes",h)/f));a>=t.hour&&z.set("Hours",h,a>=t.day?0:f*Math.floor(z.get("Hours",h)/f));a>=t.day&&z.set("Date",h,a>=t.month?1:Math.max(1,f*Math.floor(z.get("Date",h)/f)));if(a>=t.month){z.set("Month",h,a>=t.year?0:f*Math.floor(z.get("Month",h)/f));var L=z.get("FullYear",h)}a>=t.year&&z.set("FullYear",h,L-L%f);a===t.week&&(L=z.get("Day",h),z.set("Date",h,z.get("Date",h)-L+b+(L<b?-7:0)));L=z.get("FullYear",
h);b=z.get("Month",h);var K=z.get("Date",h),r=z.get("Hours",h);n=h.getTime();!z.variableTimezone&&z.useUTC||!C(m)||(y=m-n>4*t.month||z.getTimezoneOffset(n)!==z.getTimezoneOffset(m));n=h.getTime();for(h=1;n<m;)u.push(n),n=a===t.year?z.makeTime(L+h*f,0):a===t.month?z.makeTime(L,b+h*f):!y||a!==t.day&&a!==t.week?y&&a===t.hour&&1<f?z.makeTime(L,b,K,r+h*f):n+a*f:z.makeTime(L,b,K+h*f*(a===t.day?1:7)),h++;u.push(n);a<=t.hour&&1E4>u.length&&u.forEach(function(a){0===a%18E5&&"000000000"===z.dateFormat("%H%M%S%L",
a)&&(c[a]="day")})}u.info=A(g,{higherRanks:c,totalRange:a*f});return u};return m}();"";return e});P(e,"Core/DefaultOptions.js",[e["Core/Globals.js"],e["Core/Chart/ChartDefaults.js"],e["Core/Color/Color.js"],e["Core/Color/Palette.js"],e["Core/Time.js"],e["Core/Utilities.js"]],function(q,e,E,C,D,A){var v=q.isTouchDevice,B=q.svg;E=E.parse;var l=A.merge;"";var k={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:e,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:B,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:E(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"}};k.chart.styledMode=!1;"";var d=new D(l(k.global,k.time));return{defaultOptions:k,defaultTime:d,getOptions:function(){return k},setOptions:function(b){l(!0,k,b);if(b.time||b.global)q.time?q.time.update(l(k.global,k.time,b.global,b.time)):q.time=d;return k}}});P(e,"Core/Animation/Fx.js",
[e["Core/Color/Color.js"],e["Core/Globals.js"],e["Core/Utilities.js"]],function(q,e,E){var v=q.parse,D=e.win,A=E.isNumber,F=E.objectEach;return function(){function q(l,k,d){this.pos=NaN;this.options=k;this.elem=l;this.prop=d}q.prototype.dSetter=function(){var l=this.paths,k=l&&l[0];l=l&&l[1];var d=this.now||0,b=[];if(1!==d&&k&&l)if(k.length===l.length&&1>d)for(var t=0;t<l.length;t++){for(var I=k[t],x=l[t],m=[],g=0;g<x.length;g++){var n=I[g],J=x[g];A(n)&&A(J)&&("A"!==x[0]||4!==g&&5!==g)?m[g]=n+d*(J-
n):m[g]=J}b.push(m)}else b=l;else b=this.toD||[];this.elem.attr("d",b,void 0,!0)};q.prototype.update=function(){var l=this.elem,k=this.prop,d=this.now,b=this.options.step;if(this[k+"Setter"])this[k+"Setter"]();else l.attr?l.element&&l.attr(k,d,null,!0):l.style[k]=d+this.unit;b&&b.call(l,d,this)};q.prototype.run=function(l,k,d){var b=this,t=b.options,I=function(g){return I.stopped?!1:b.step(g)},x=D.requestAnimationFrame||function(g){setTimeout(g,13)},m=function(){for(var g=0;g<q.timers.length;g++)q.timers[g]()||
q.timers.splice(g--,1);q.timers.length&&x(m)};l!==k||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=l,this.end=k,this.unit=d,this.now=this.start,this.pos=0,I.elem=this.elem,I.prop=this.prop,I()&&1===q.timers.push(I)&&x(m)):(delete t.curAnim[this.prop],t.complete&&0===Object.keys(t.curAnim).length&&t.complete.call(this.elem))};q.prototype.step=function(l){var k=+new Date,d=this.options,b=this.elem,t=d.complete,I=d.duration,x=d.curAnim;if(b.attr&&!b.element)l=!1;else if(l||
k>=I+this.startTime){this.now=this.end;this.pos=1;this.update();var m=x[this.prop]=!0;F(x,function(g){!0!==g&&(m=!1)});m&&t&&t.call(b);l=!1}else this.pos=d.easing((k-this.startTime)/I),this.now=this.start+(this.end-this.start)*this.pos,this.update(),l=!0;return l};q.prototype.initPath=function(l,k,d){function b(g,n){for(;g.length<O;){var c=g[0],h=n[O-g.length];h&&"M"===c[0]&&(g[0]="C"===h[0]?["C",c[1],c[2],c[1],c[2],c[1],c[2]]:["L",c[1],c[2]]);g.unshift(c);m&&(c=g.pop(),g.push(g[g.length-1],c))}}
function t(n,b){for(;n.length<O;)if(b=n[Math.floor(n.length/g)-1].slice(),"C"===b[0]&&(b[1]=b[5],b[2]=b[6]),m){var c=n[Math.floor(n.length/g)].slice();n.splice(n.length/2,0,b,c)}else n.push(b)}var I=l.startX,x=l.endX;d=d.slice();var m=l.isArea,g=m?2:1;k=k&&k.slice();if(!k)return[d,d];if(I&&x&&x.length){for(l=0;l<I.length;l++)if(I[l]===x[0]){var n=l;break}else if(I[0]===x[x.length-I.length+l]){n=l;var J=!0;break}else if(I[I.length-1]===x[x.length-I.length+l]){n=I.length-l;break}"undefined"===typeof n&&
(k=[])}if(k.length&&A(n)){var O=d.length+n*g;J?(b(k,d),t(d,k)):(b(d,k),t(k,d))}return[k,d]};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(e,"Core/Animation/AnimationUtilities.js",[e["Core/Animation/Fx.js"],e["Core/Utilities.js"]],function(q,e){function v(b){return l(b)?k({duration:500,defer:0},b):{duration:b?500:0,defer:0}}
function C(b,d){for(var t=q.timers.length;t--;)q.timers[t].elem!==b||d&&d!==q.timers[t].prop||(q.timers[t].stopped=!0)}var D=e.defined,A=e.getStyle,F=e.isArray,B=e.isNumber,l=e.isObject,k=e.merge,d=e.objectEach,b=e.pick;return{animate:function(b,I,x){var m,g="",n,t;if(!l(x)){var O=arguments;x={duration:O[2],easing:O[3],complete:O[4]}}B(x.duration)||(x.duration=400);x.easing="function"===typeof x.easing?x.easing:Math[x.easing]||Math.easeInOutSine;x.curAnim=k(I);d(I,function(z,u){C(b,u);t=new q(b,x,
u);n=void 0;"d"===u&&F(I.d)?(t.paths=t.initPath(b,b.pathArray,I.d),t.toD=I.d,m=0,n=1):b.attr?m=b.attr(u):(m=parseFloat(A(b,u))||0,"opacity"!==u&&(g="px"));n||(n=z);"string"===typeof n&&n.match("px")&&(n=n.replace(/px/g,""));t.run(m,n,g)})},animObject:v,getDeferredAnimation:function(b,d,k){var m=v(d),g=0,n=0;(k?[k]:b.series).forEach(function(b){b=v(b.options.animation);g=d&&D(d.defer)?m.defer:Math.max(g,b.duration+b.defer);n=Math.min(m.duration,b.duration)});b.renderer.forExport&&(g=0);return{defer:Math.max(0,
g-n),duration:Math.min(g,n)}},setAnimation:function(t,d){d.renderer.globalAnimation=b(t,d.options.chart.animation,!0)},stop:C}});P(e,"Core/Renderer/HTML/AST.js",[e["Core/Globals.js"],e["Core/Utilities.js"]],function(q,e){var v=q.SVG_NS,C=e.attr,D=e.createElement,A=e.discardElement,F=e.error,B=e.isString,l=e.objectEach,k=e.splat;try{var d=!!(new DOMParser).parseFromString("","text/html")}catch(b){d=!1}e=function(){function b(b){this.nodes="string"===typeof b?this.parseMarkup(b):b}b.filterUserAttributes=
function(d){l(d,function(t,k){var m=!0;-1===b.allowedAttributes.indexOf(k)&&(m=!1);-1!==["background","dynsrc","href","lowsrc","src"].indexOf(k)&&(m=B(t)&&b.allowedReferences.some(function(g){return 0===t.indexOf(g)}));m||(F("Highcharts warning: Invalid attribute '"+k+"' in config"),delete d[k])});return d};b.setElementHTML=function(d,k){d.innerHTML="";k&&(new b(k)).addToDOM(d)};b.prototype.addToDOM=function(d){function t(d,m){var g;k(d).forEach(function(n){var d=n.tagName,k=n.textContent?q.doc.createTextNode(n.textContent):
void 0;if(d)if("#text"===d)var z=k;else if(-1!==b.allowedTags.indexOf(d)){d=q.doc.createElementNS("svg"===d?v:m.namespaceURI||v,d);var u=n.attributes||{};l(n,function(c,h){"tagName"!==h&&"attributes"!==h&&"children"!==h&&"textContent"!==h&&(u[h]=c)});C(d,b.filterUserAttributes(u));k&&d.appendChild(k);t(n.children||[],d);z=d}else F("Highcharts warning: Invalid tagName '"+d+"' in config");z&&m.appendChild(z);g=z});return g}return t(this.nodes,d)};b.prototype.parseMarkup=function(b){var t=[];if(d)b=
(new DOMParser).parseFromString(b,"text/html");else{var k=D("div");k.innerHTML=b;b={body:k}}var m=function(g,b){var n=g.nodeName.toLowerCase(),d={tagName:n};if("#text"===n){n=g.textContent||"";if(/^[\s]*$/.test(n))return;d.textContent=n}if(n=g.attributes){var z={};[].forEach.call(n,function(c){z[c.name]=c.value});d.attributes=z}if(g.childNodes.length){var u=[];[].forEach.call(g.childNodes,function(c){m(c,u)});u.length&&(d.children=u)}b.push(d)};[].forEach.call(b.body.childNodes,function(g){return m(g,
t)});k&&A(k);return t};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 e});P(e,"Core/FormatUtilities.js",[e["Core/DefaultOptions.js"],e["Core/Utilities.js"]],function(q,e){function v(k,d,b,t){k=+k||0;d=+d;var I=C.lang,x=(k.toString().split(".")[1]||"").split("e")[0].length,m=k.toString().split("e"),g=d;if(-1===d)d=Math.min(x,20);else if(!F(d))d=2;else if(d&&m[1]&&0>m[1]){var n=d+ +m[1];0<=n?(m[0]=(+m[0]).toExponential(n).split("e")[0],d=n):(m[0]=m[0].split(".")[0]||0,k=20>d?(m[0]*
Math.pow(10,m[1])).toFixed(d):0,m[1]=0)}n=(Math.abs(m[1]?m[0]:k)+Math.pow(10,-Math.max(d,x)-1)).toFixed(d);x=String(l(n));var J=3<x.length?x.length%3:0;b=B(b,I.decimalPoint);t=B(t,I.thousandsSep);k=(0>k?"-":"")+(J?x.substr(0,J)+t:"");k=0>+m[1]&&!g?"0":k+x.substr(J).replace(/(\d{3})(?=\d)/g,"$1"+t);d&&(k+=b+n.slice(-d));m[1]&&0!==+k&&(k+="e"+m[1]);return k}var C=q.defaultOptions,D=q.defaultTime,A=e.getNestedProperty,F=e.isNumber,B=e.pick,l=e.pInt;return{dateFormat:function(k,d,b){return D.dateFormat(k,
d,b)},format:function(k,d,b){var t="{",l=!1,x=/f$/,m=/\.([0-9])/,g=C.lang,n=b&&b.time||D;b=b&&b.numberFormatter||v;for(var J=[];k;){var O=k.indexOf(t);if(-1===O)break;var z=k.slice(0,O);if(l){z=z.split(":");t=A(z.shift()||"",d);if(z.length&&"number"===typeof t)if(z=z.join(":"),x.test(z)){var u=parseInt((z.match(m)||["","-1"])[1],10);null!==t&&(t=b(t,u,g.decimalPoint,-1<z.indexOf(",")?g.thousandsSep:""))}else t=n.dateFormat(z,t);J.push(t)}else J.push(z);k=k.slice(O+1);t=(l=!l)?"}":"{"}J.push(k);return J.join("")},
numberFormat:v}});P(e,"Core/Renderer/SVG/SVGElement.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Renderer/HTML/AST.js"],e["Core/Color/Color.js"],e["Core/Globals.js"],e["Core/Color/Palette.js"],e["Core/Utilities.js"]],function(q,e,E,C,D,A){var v=q.animate,B=q.animObject,l=q.stop,k=C.deg2rad,d=C.doc,b=C.noop,t=C.svg,I=C.SVG_NS,x=C.win,m=A.addEvent,g=A.attr,n=A.createElement,J=A.css,O=A.defined,z=A.erase,u=A.extend,c=A.fireEvent,h=A.isArray,a=A.isFunction,f=A.isNumber,y=A.isString,L=A.merge,
K=A.objectEach,r=A.pick,G=A.pInt,Q=A.syncTimeout,w=A.uniqueKey;q=function(){function H(){this.element=void 0;this.onEvents={};this.opacity=1;this.renderer=void 0;this.SVG_NS=I;this.symbolCustomAttribs="x y width height r start end innerR anchorX anchorY rounded".split(" ")}H.prototype._defaultGetter=function(a){a=r(this[a+"Value"],this[a],this.element?this.element.getAttribute(a):null,0);/^[\-0-9\.]+$/.test(a)&&(a=parseFloat(a));return a};H.prototype._defaultSetter=function(a,c,p){p.setAttribute(c,
a)};H.prototype.add=function(a){var c=this.renderer,p=this.element;a&&(this.parentGroup=a);this.parentInverted=a&&a.inverted;"undefined"!==typeof this.textStr&&"text"===this.element.nodeName&&c.buildText(this);this.added=!0;if(!a||a.handleZ||this.zIndex)var N=this.zIndexSetter();N||(a?a.element:c.box).appendChild(p);if(this.onAdd)this.onAdd();return this};H.prototype.addClass=function(a,c){var p=c?"":this.attr("class")||"";a=(a||"").split(/ /g).reduce(function(a,c){-1===p.indexOf(c)&&a.push(c);return a},
p?[p]:[]).join(" ");a!==p&&this.attr("class",a);return this};H.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)};H.prototype.align=function(a,c,p){var N={},f=this.renderer,h=f.alignedObjects,w,g,M;if(a){if(this.alignOptions=a,this.alignByTranslate=c,!p||y(p))this.alignTo=w=p||"renderer",z(h,this),h.push(this),p=void 0}else a=this.alignOptions,c=this.alignByTranslate,w=this.alignTo;p=r(p,f[w],"scrollablePlotBox"===w?f.plotBox:void 0,f);w=a.align;var n=
a.verticalAlign;f=(p.x||0)+(a.x||0);h=(p.y||0)+(a.y||0);"right"===w?g=1:"center"===w&&(g=2);g&&(f+=(p.width-(a.width||0))/g);N[c?"translateX":"x"]=Math.round(f);"bottom"===n?M=1:"middle"===n&&(M=2);M&&(h+=(p.height-(a.height||0))/M);N[c?"translateY":"y"]=Math.round(h);this[this.placed?"animate":"attr"](N);this.placed=!0;this.alignAttr=N;return this};H.prototype.alignSetter=function(a){var c={left:"start",center:"middle",right:"end"};c[a]&&(this.alignValue=a,this.element.setAttribute("text-anchor",
c[a]))};H.prototype.animate=function(a,c,p){var N=this,f=B(r(c,this.renderer.globalAnimation,!0));c=f.defer;r(d.hidden,d.msHidden,d.webkitHidden,!1)&&(f.duration=0);0!==f.duration?(p&&(f.complete=p),Q(function(){N.element&&v(N,a,f)},c)):(this.attr(a,void 0,p),K(a,function(a,c){f.step&&f.step.call(this,a,{prop:c,pos:1,elem:this})},this));return this};H.prototype.applyTextOutline=function(a){var c=this.element;-1!==a.indexOf("contrast")&&(a=a.replace(/contrast/g,this.renderer.getContrast(c.style.fill)));
var p=a.split(" ");a=p[p.length-1];if((p=p[0])&&"none"!==p&&C.svg){this.fakeTS=!0;this.ySetter=this.xSetter;p=p.replace(/(^[\d\.]+)(.*?)$/g,function(a,c,p){return 2*Number(c)+p});this.removeTextOutline();var N=d.createElementNS(I,"tspan");g(N,{"class":"highcharts-text-outline",fill:a,stroke:a,"stroke-width":p,"stroke-linejoin":"round"});[].forEach.call(c.childNodes,function(a){var c=a.cloneNode(!0);c.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(function(a){return c.removeAttribute(a)});
N.appendChild(c)});var f=d.createElementNS(I,"tspan");f.textContent="\u200b";["x","y"].forEach(function(a){var p=c.getAttribute(a);p&&f.setAttribute(a,p)});N.appendChild(f);c.insertBefore(N,c.firstChild)}};H.prototype.attr=function(a,c,p,N){var f=this.element,h=this.symbolCustomAttribs,r,w=this,g,y;if("string"===typeof a&&"undefined"!==typeof c){var n=a;a={};a[n]=c}"string"===typeof a?w=(this[a+"Getter"]||this._defaultGetter).call(this,a,f):(K(a,function(c,p){g=!1;N||l(this,p);this.symbolName&&-1!==
h.indexOf(p)&&(r||(this.symbolAttr(a),r=!0),g=!0);!this.rotation||"x"!==p&&"y"!==p||(this.doTransform=!0);g||(y=this[p+"Setter"]||this._defaultSetter,y.call(this,c,p,f),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(p)&&this.updateShadows(p,c,y))},this),this.afterSetters());p&&p.call(this);return w};H.prototype.clip=function(a){return this.attr("clip-path",a?"url("+this.renderer.url+"#"+a.id+")":"none")};H.prototype.crisp=function(a,c){c=c||a.strokeWidth||
0;var p=Math.round(c)%2/2;a.x=Math.floor(a.x||this.x||0)+p;a.y=Math.floor(a.y||this.y||0)+p;a.width=Math.floor((a.width||this.width||0)-2*p);a.height=Math.floor((a.height||this.height||0)-2*p);O(a.strokeWidth)&&(a.strokeWidth=c);return a};H.prototype.complexColor=function(a,f,p){var N=this.renderer,r,g,y,n,b,m,M,G,u,H,d=[],z;c(this.renderer,"complexColor",{args:arguments},function(){a.radialGradient?g="radialGradient":a.linearGradient&&(g="linearGradient");if(g){y=a[g];b=N.gradients;m=a.stops;u=p.radialReference;
h(y)&&(a[g]=y={x1:y[0],y1:y[1],x2:y[2],y2:y[3],gradientUnits:"userSpaceOnUse"});"radialGradient"===g&&u&&!O(y.gradientUnits)&&(n=y,y=L(y,N.getRadialAttr(u,n),{gradientUnits:"userSpaceOnUse"}));K(y,function(a,c){"id"!==c&&d.push(c,a)});K(m,function(a){d.push(a)});d=d.join(",");if(b[d])H=b[d].attr("id");else{y.id=H=w();var c=b[d]=N.createElement(g).attr(y).add(N.defs);c.radAttr=n;c.stops=[];m.forEach(function(a){0===a[1].indexOf("rgba")?(r=E.parse(a[1]),M=r.get("rgb"),G=r.get("a")):(M=a[1],G=1);a=N.createElement("stop").attr({offset:a[0],
"stop-color":M,"stop-opacity":G}).add(c);c.stops.push(a)})}z="url("+N.url+"#"+H+")";p.setAttribute(f,z);p.gradient=d;a.toString=function(){return z}}})};H.prototype.css=function(a){var c=this.styles,p={},f=this.element,h=["textOutline","textOverflow","width"],r="",y=!c;a&&a.color&&(a.fill=a.color);c&&K(a,function(a,f){c&&c[f]!==a&&(p[f]=a,y=!0)});if(y){c&&(a=u(c,p));if(a)if(null===a.width||"auto"===a.width)delete this.textWidth;else if("text"===f.nodeName.toLowerCase()&&a.width)var w=this.textWidth=
G(a.width);this.styles=a;w&&!t&&this.renderer.forExport&&delete a.width;if(f.namespaceURI===this.SVG_NS){var n=function(a,c){return"-"+c.toLowerCase()};K(a,function(a,c){-1===h.indexOf(c)&&(r+=c.replace(/([A-Z])/g,n)+":"+a+";")});r&&g(f,"style",r)}else J(f,a);this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),a&&a.textOutline&&this.applyTextOutline(a.textOutline))}return this};H.prototype.dashstyleSetter=function(a){var c=this["stroke-width"];"inherit"===c&&(c=1);if(a=a&&a.toLowerCase()){var p=
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=p.length;a--;)p[a]=""+G(p[a])*r(c,NaN);a=p.join(",").replace(/NaN/g,"none");this.element.setAttribute("stroke-dasharray",a)}};H.prototype.destroy=function(){var a=this,c=a.element||{},p=a.renderer,f=c.ownerSVGElement,h=p.isSVG&&"SPAN"===c.nodeName&&a.parentGroup||
void 0;c.onclick=c.onmouseout=c.onmouseover=c.onmousemove=c.point=null;l(a);if(a.clipPath&&f){var r=a.clipPath;[].forEach.call(f.querySelectorAll("[clip-path],[CLIP-PATH]"),function(a){-1<a.getAttribute("clip-path").indexOf(r.element.id)&&a.removeAttribute("clip-path")});a.clipPath=r.destroy()}if(a.stops){for(f=0;f<a.stops.length;f++)a.stops[f].destroy();a.stops.length=0;a.stops=void 0}a.safeRemoveChild(c);for(p.styledMode||a.destroyShadows();h&&h.div&&0===h.div.childNodes.length;)c=h.parentGroup,
a.safeRemoveChild(h.div),delete h.div,h=c;a.alignTo&&z(p.alignedObjects,a);K(a,function(c,p){a[p]&&a[p].parentGroup===a&&a[p].destroy&&a[p].destroy();delete a[p]})};H.prototype.destroyShadows=function(){(this.shadows||[]).forEach(function(a){this.safeRemoveChild(a)},this);this.shadows=void 0};H.prototype.destroyTextPath=function(a,c){var p=a.getElementsByTagName("text")[0];if(p){if(p.removeAttribute("dx"),p.removeAttribute("dy"),c.element.setAttribute("id",""),this.textPathWrapper&&p.getElementsByTagName("textPath").length){for(a=
this.textPathWrapper.element.childNodes;a.length;)p.appendChild(a[0]);p.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())};H.prototype.dSetter=function(a,c,p){h(a)&&("string"===typeof a[0]&&(a=this.renderer.pathToSegments(a)),this.pathArray=a,a=a.reduce(function(a,c,p){return c&&c.join?(p?a+" ":"")+c.join(" "):(c||"").toString()},""));
/(NaN| {2}|^$)/.test(a)&&(a="M 0 0");this[c]!==a&&(p.setAttribute(c,a),this[c]=a)};H.prototype.fadeOut=function(a){var c=this;c.animate({opacity:0},{duration:r(a,150),complete:function(){c.attr({y:-9999}).hide()}})};H.prototype.fillSetter=function(a,c,p){"string"===typeof a?p.setAttribute(c,a):a&&this.complexColor(a,c,p)};H.prototype.getBBox=function(c,f){var p=this.renderer,N=this.element,h=this.styles,y=this.textStr,g=p.cache,w=p.cacheKeys,n=N.namespaceURI===this.SVG_NS;f=r(f,this.rotation,0);var b=
p.styledMode?N&&H.prototype.getStyle.call(N,"font-size"):h&&h.fontSize,m;if(O(y)){var G=y.toString();-1===G.indexOf("<")&&(G=G.replace(/[0-9]/g,"0"));G+=["",f,b,this.textWidth,h&&h.textOverflow,h&&h.fontWeight].join()}G&&!c&&(m=g[G]);if(!m){if(n||p.forExport){try{var d=this.fakeTS&&function(a){var c=N.querySelector(".highcharts-text-outline");c&&J(c,{display:a})};a(d)&&d("none");m=N.getBBox?u({},N.getBBox()):{width:N.offsetWidth,height:N.offsetHeight};a(d)&&d("")}catch(W){""}if(!m||0>m.width)m={width:0,
height:0}}else m=this.htmlGetBBox();p.isSVG&&(c=m.width,p=m.height,n&&(m.height=p={"11px,17":14,"13px,20":16}[h&&h.fontSize+","+Math.round(p)]||p),f&&(h=f*k,m.width=Math.abs(p*Math.sin(h))+Math.abs(c*Math.cos(h)),m.height=Math.abs(p*Math.cos(h))+Math.abs(c*Math.sin(h))));if(G&&0<m.height){for(;250<w.length;)delete g[w.shift()];g[G]||w.push(G);g[G]=m}}return m};H.prototype.getStyle=function(a){return x.getComputedStyle(this.element||this,"").getPropertyValue(a)};H.prototype.hasClass=function(a){return-1!==
(""+this.attr("class")).split(" ").indexOf(a)};H.prototype.hide=function(a){a?this.attr({y:-9999}):this.attr({visibility:"hidden"});return this};H.prototype.htmlGetBBox=function(){return{height:0,width:0,x:0,y:0}};H.prototype.init=function(a,f){this.element="span"===f?n(f):d.createElementNS(this.SVG_NS,f);this.renderer=a;c(this,"afterInit")};H.prototype.invert=function(a){this.inverted=a;this.updateTransform();return this};H.prototype.on=function(a,c){var p=this.onEvents;if(p[a])p[a]();p[a]=m(this.element,
a,c);return this};H.prototype.opacitySetter=function(a,c,p){this.opacity=a=Number(Number(a).toFixed(3));p.setAttribute(c,a)};H.prototype.removeClass=function(a){return this.attr("class",(""+this.attr("class")).replace(y(a)?new RegExp("(^| )"+a+"( |$)"):a," ").replace(/ +/g," ").trim())};H.prototype.removeTextOutline=function(){var a=this.element.querySelector("tspan.highcharts-text-outline");a&&this.safeRemoveChild(a)};H.prototype.safeRemoveChild=function(a){var c=a.parentNode;c&&c.removeChild(a)};
H.prototype.setRadialReference=function(a){var c=this.element.gradient&&this.renderer.gradients[this.element.gradient];this.element.radialReference=a;c&&c.radAttr&&c.animate(this.renderer.getRadialAttr(a,c.radAttr));return this};H.prototype.setTextPath=function(a,c){var p=this.element,N=this.text?this.text.element:p,h={textAnchor:"text-anchor"},r=!1,y=this.textPathWrapper,g=!y;c=L(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},c);var n=e.filterUserAttributes(c.attributes);
if(a&&c&&c.enabled){y&&null===y.element.parentNode?(g=!0,y=y.destroy()):y&&this.removeTextOutline.call(y.parentGroup);this.options&&this.options.padding&&(n.dx=-this.options.padding);y||(this.textPathWrapper=y=this.renderer.createElement("textPath"),r=!0);var m=y.element;(c=a.element.getAttribute("id"))||a.element.setAttribute("id",c=w());if(g)for(N.setAttribute("y",0),f(n.dx)&&N.setAttribute("x",-n.dx),a=[].slice.call(N.childNodes),g=0;g<a.length;g++){var G=a[g];G.nodeType!==Node.TEXT_NODE&&"tspan"!==
G.nodeName||m.appendChild(G)}r&&y&&y.add({element:N});m.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+c);O(n.dy)&&(m.parentNode.setAttribute("dy",n.dy),delete n.dy);O(n.dx)&&(m.parentNode.setAttribute("dx",n.dx),delete n.dx);K(n,function(a,c){m.setAttribute(h[c]||c,a)});p.removeAttribute("transform");this.removeTextOutline.call(y);this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0});this.applyTextOutline=this.updateTransform=b}else y&&(delete this.updateTransform,
delete this.applyTextOutline,this.destroyTextPath(p,a),this.updateTransform(),this.options&&this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this};H.prototype.shadow=function(a,c,p){var f=[],h=this.element,r=this.oldShadowOptions,y={color:D.neutralColor100,offsetX:this.parentInverted?-1:1,offsetY:this.parentInverted?-1:1,opacity:.15,width:3},w=!1,n;!0===a?n=y:"object"===typeof a&&(n=u(y,a));n&&(n&&r&&K(n,function(a,c){a!==r[c]&&(w=!0)}),w&&this.destroyShadows(),
this.oldShadowOptions=n);if(!n)this.destroyShadows();else if(!this.shadows){var b=n.opacity/n.width;var m=this.parentInverted?"translate("+n.offsetY+", "+n.offsetX+")":"translate("+n.offsetX+", "+n.offsetY+")";for(y=1;y<=n.width;y++){var G=h.cloneNode(!1);var d=2*n.width+1-2*y;g(G,{stroke:a.color||D.neutralColor100,"stroke-opacity":b*y,"stroke-width":d,transform:m,fill:"none"});G.setAttribute("class",(G.getAttribute("class")||"")+" highcharts-shadow");p&&(g(G,"height",Math.max(g(G,"height")-d,0)),
G.cutHeight=d);c?c.element.appendChild(G):h.parentNode&&h.parentNode.insertBefore(G,h);f.push(G)}this.shadows=f}return this};H.prototype.show=function(a){return this.attr({visibility:a?"inherit":"visible"})};H.prototype.strokeSetter=function(a,c,p){this[c]=a;this.stroke&&this["stroke-width"]?(H.prototype.fillSetter.call(this,this.stroke,"stroke",p),p.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===c&&0===a&&this.hasStroke?(p.removeAttribute("stroke"),this.hasStroke=
!1):this.renderer.styledMode&&this["stroke-width"]&&(p.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)};H.prototype.strokeWidth=function(){if(!this.renderer.styledMode)return this["stroke-width"]||0;var a=this.getStyle("stroke-width"),c=0;if(a.indexOf("px")===a.length-2)c=G(a);else if(""!==a){var p=d.createElementNS(I,"rect");g(p,{width:a,"stroke-width":0});this.element.parentNode.appendChild(p);c=p.getBBox().width;p.parentNode.removeChild(p)}return c};H.prototype.symbolAttr=
function(a){var c=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(p){c[p]=r(a[p],c[p])});c.attr({d:c.renderer.symbols[c.symbolName](c.x,c.y,c.width,c.height,c)})};H.prototype.textSetter=function(a){a!==this.textStr&&(delete this.textPxLength,this.textStr=a,this.added&&this.renderer.buildText(this))};H.prototype.titleSetter=function(a){var c=this.element,p=c.getElementsByTagName("title")[0]||d.createElementNS(this.SVG_NS,"title");c.insertBefore?c.insertBefore(p,
c.firstChild):c.appendChild(p);p.textContent=String(r(a,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")};H.prototype.toFront=function(){var a=this.element;a.parentNode.appendChild(a);return this};H.prototype.translate=function(a,c){return this.attr({translateX:a,translateY:c})};H.prototype.updateShadows=function(a,c,p){var f=this.shadows;if(f)for(var h=f.length;h--;)p.call(f[h],"height"===a?Math.max(c-(f[h].cutHeight||0),0):"d"===a?this.d:c,a,f[h])};H.prototype.updateTransform=
function(){var a=this.scaleX,c=this.scaleY,p=this.inverted,f=this.rotation,h=this.matrix,y=this.element,g=this.translateX||0,w=this.translateY||0;p&&(g+=this.width,w+=this.height);g=["translate("+g+","+w+")"];O(h)&&g.push("matrix("+h.join(",")+")");p?g.push("rotate(90) scale(-1,1)"):f&&g.push("rotate("+f+" "+r(this.rotationOriginX,y.getAttribute("x"),0)+" "+r(this.rotationOriginY,y.getAttribute("y")||0)+")");(O(a)||O(c))&&g.push("scale("+r(a,1)+" "+r(c,1)+")");g.length&&y.setAttribute("transform",
g.join(" "))};H.prototype.visibilitySetter=function(a,c,p){"inherit"===a?p.removeAttribute(c):this[c]!==a&&p.setAttribute(c,a);this[c]=a};H.prototype.xGetter=function(a){"circle"===this.element.nodeName&&("x"===a?a="cx":"y"===a&&(a="cy"));return this._defaultGetter(a)};H.prototype.zIndexSetter=function(a,c){var p=this.renderer,f=this.parentGroup,h=(f||p).element||p.box,y=this.element;p=h===p.box;var r=!1;var g=this.added;var w;O(a)?(y.setAttribute("data-z-index",a),a=+a,this[c]===a&&(g=!1)):O(this[c])&&
y.removeAttribute("data-z-index");this[c]=a;if(g){(a=this.zIndex)&&f&&(f.handleZ=!0);c=h.childNodes;for(w=c.length-1;0<=w&&!r;w--){f=c[w];g=f.getAttribute("data-z-index");var n=!O(g);if(f!==y)if(0>a&&n&&!p&&!w)h.insertBefore(y,c[w]),r=!0;else if(G(g)<=a||n&&(!O(a)||0<=a))h.insertBefore(y,c[w+1]||null),r=!0}r||(h.insertBefore(y,c[p?3:0]||null),r=!0)}return r};return H}();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,c){this[c]=a;this.doTransform=!0};"";return q});P(e,"Core/Renderer/RendererRegistry.js",[e["Core/Globals.js"]],function(q){var e;(function(e){var v;e.rendererTypes={};e.getRendererType=function(q){void 0===q&&(q=v);return e.rendererTypes[q]||e.rendererTypes[v]};e.registerRendererType=function(D,
A,F){e.rendererTypes[D]=A;if(!v||F)v=D,q.Renderer=A}})(e||(e={}));return e});P(e,"Core/Renderer/SVG/SVGLabel.js",[e["Core/Renderer/SVG/SVGElement.js"],e["Core/Utilities.js"]],function(q,e){var v=this&&this.__extends||function(){var k=function(d,b){k=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var t in d)d.hasOwnProperty(t)&&(b[t]=d[t])};return k(d,b)};return function(d,b){function t(){this.constructor=d}k(d,b);d.prototype=null===b?Object.create(b):
(t.prototype=b.prototype,new t)}}(),C=e.defined,D=e.extend,A=e.isNumber,F=e.merge,B=e.pick,l=e.removeEvent;return function(k){function d(b,t,l,x,m,g,n,J,O,z){var u=k.call(this)||this;u.paddingLeftSetter=u.paddingSetter;u.paddingRightSetter=u.paddingSetter;u.init(b,"g");u.textStr=t;u.x=l;u.y=x;u.anchorX=g;u.anchorY=n;u.baseline=O;u.className=z;u.addClass("button"===z?"highcharts-no-tooltip":"highcharts-label");z&&u.addClass("highcharts-"+z);u.text=b.text("",0,0,J).attr({zIndex:1});var c;"string"===
typeof m&&((c=/^url\((.*?)\)$/.test(m))||u.renderer.symbols[m])&&(u.symbolKey=m);u.bBox=d.emptyBBox;u.padding=3;u.baselineOffset=0;u.needsBox=b.styledMode||c;u.deferredAttr={};u.alignFactor=0;return u}v(d,k);d.prototype.alignSetter=function(b){b={left:0,center:.5,right:1}[b];b!==this.alignFactor&&(this.alignFactor=b,this.bBox&&A(this.xSetting)&&this.attr({x:this.xSetting}))};d.prototype.anchorXSetter=function(b,d){this.anchorX=b;this.boxAttr(d,Math.round(b)-this.getCrispAdjust()-this.xSetting)};d.prototype.anchorYSetter=
function(b,d){this.anchorY=b;this.boxAttr(d,b-this.ySetting)};d.prototype.boxAttr=function(b,d){this.box?this.box.attr(b,d):this.deferredAttr[b]=d};d.prototype.css=function(b){if(b){var t={};b=F(b);d.textProps.forEach(function(d){"undefined"!==typeof b[d]&&(t[d]=b[d],delete b[d])});this.text.css(t);var k="width"in t;"fontSize"in t||"fontWeight"in t?this.updateTextPadding():k&&this.updateBoxSize()}return q.prototype.css.call(this,b)};d.prototype.destroy=function(){l(this.element,"mouseenter");l(this.element,
"mouseleave");this.text&&this.text.destroy();this.box&&(this.box=this.box.destroy());q.prototype.destroy.call(this)};d.prototype.fillSetter=function(b,d){b&&(this.needsBox=!0);this.fill=b;this.boxAttr(d,b)};d.prototype.getBBox=function(){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();var b=this.padding,d=B(this.paddingLeft,b);return{width:this.width,height:this.height,x:this.bBox.x-d,y:this.bBox.y-b}};d.prototype.getCrispAdjust=function(){return this.renderer.styledMode&&
this.box?this.box.strokeWidth()%2/2:(this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2};d.prototype.heightSetter=function(b){this.heightSetting=b};d.prototype.on=function(b,d){var t=this,k=t.text,m=k&&"SPAN"===k.element.tagName?k:void 0;if(m){var g=function(g){("mouseenter"===b||"mouseleave"===b)&&g.relatedTarget instanceof Element&&(t.element.compareDocumentPosition(g.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY||m.element.compareDocumentPosition(g.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY)||
d.call(t.element,g)};m.on(b,g)}q.prototype.on.call(t,b,g||d);return t};d.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})};d.prototype.paddingSetter=function(b,d){A(b)?b!==this[d]&&(this[d]=b,this.updateTextPadding()):this[d]=void 0};d.prototype.rSetter=function(b,d){this.boxAttr(d,b)};d.prototype.shadow=function(b){b&&!this.renderer.styledMode&&(this.updateBoxSize(),
this.box&&this.box.shadow(b));return this};d.prototype.strokeSetter=function(b,d){this.stroke=b;this.boxAttr(d,b)};d.prototype["stroke-widthSetter"]=function(b,d){b&&(this.needsBox=!0);this["stroke-width"]=b;this.boxAttr(d,b)};d.prototype["text-alignSetter"]=function(b){this.textAlign=b};d.prototype.textSetter=function(b){"undefined"!==typeof b&&this.text.attr({text:b});this.updateTextPadding()};d.prototype.updateBoxSize=function(){var b=this.text.element.style,k={},l=this.padding,x=this.bBox=A(this.widthSetting)&&
A(this.heightSetting)&&!this.textAlign||!C(this.text.textStr)?d.emptyBBox:this.text.getBBox();this.width=this.getPaddedWidth();this.height=(this.heightSetting||x.height||0)+2*l;b=this.renderer.fontMetrics(b&&b.fontSize,this.text);this.baselineOffset=l+Math.min((this.text.firstLineMetrics||b).b,x.height||Infinity);this.heightSetting&&(this.baselineOffset+=(this.heightSetting-b.h)/2);this.needsBox&&(this.box||(l=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect(),l.addClass(("button"===
this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),l.add(this)),l=this.getCrispAdjust(),k.x=l,k.y=(this.baseline?-this.baselineOffset:0)+l,k.width=Math.round(this.width),k.height=Math.round(this.height),this.box.attr(D(k,this.deferredAttr)),this.deferredAttr={})};d.prototype.updateTextPadding=function(){var b=this.text;this.updateBoxSize();var d=this.baseline?0:this.baselineOffset,k=B(this.paddingLeft,this.padding);C(this.widthSetting)&&this.bBox&&
("center"===this.textAlign||"right"===this.textAlign)&&(k+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width));if(k!==b.x||d!==b.y)b.attr("x",k),b.hasBoxWidthChanged&&(this.bBox=b.getBBox(!0)),"undefined"!==typeof d&&b.attr("y",d);b.x=k;b.y=d};d.prototype.widthSetter=function(b){this.widthSetting=A(b)?b:void 0};d.prototype.getPaddedWidth=function(){var b=this.padding,d=B(this.paddingLeft,b);b=B(this.paddingRight,b);return(this.widthSetting||this.bBox.width||0)+d+b};d.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)};d.prototype.ySetter=function(b){this.ySetting=this.y=Math.round(b);this.attr("translateY",this.ySetting)};d.emptyBBox={width:0,height:0,x:0,y:0};d.textProps="color direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" ");return d}(q)});P(e,"Core/Renderer/SVG/Symbols.js",
[e["Core/Utilities.js"]],function(q){function e(e,l,k,d,b){var t=[];if(b){var I=b.start||0,x=F(b.r,k);k=F(b.r,d||k);var m=(b.end||0)-.001;d=b.innerR;var g=F(b.open,.001>Math.abs((b.end||0)-I-2*Math.PI)),n=Math.cos(I),J=Math.sin(I),O=Math.cos(m),z=Math.sin(m);I=F(b.longArc,.001>m-I-Math.PI?0:1);t.push(["M",e+x*n,l+k*J],["A",x,k,0,I,F(b.clockwise,1),e+x*O,l+k*z]);D(d)&&t.push(g?["M",e+d*O,l+d*z]:["L",e+d*O,l+d*z],["A",d,d,0,I,D(b.clockwise)?1-b.clockwise:0,e+d*n,l+d*J]);g||t.push(["Z"])}return t}function E(e,
l,k,d,b){return b&&b.r?C(e,l,k,d,b):[["M",e,l],["L",e+k,l],["L",e+k,l+d],["L",e,l+d],["Z"]]}function C(e,l,k,d,b){b=b&&b.r||0;return[["M",e+b,l],["L",e+k-b,l],["C",e+k,l,e+k,l,e+k,l+b],["L",e+k,l+d-b],["C",e+k,l+d,e+k,l+d,e+k-b,l+d],["L",e+b,l+d],["C",e,l+d,e,l+d,e,l+d-b],["L",e,l+b],["C",e,l,e,l,e+b,l]]}var D=q.defined,A=q.isNumber,F=q.pick;return{arc:e,callout:function(e,l,k,d,b){var t=Math.min(b&&b.r||0,k,d),I=t+6,x=b&&b.anchorX;b=b&&b.anchorY||0;var m=C(e,l,k,d,{r:t});if(!A(x))return m;e+x>=k?
b>l+I&&b<l+d-I?m.splice(3,1,["L",e+k,b-6],["L",e+k+6,b],["L",e+k,b+6],["L",e+k,l+d-t]):m.splice(3,1,["L",e+k,d/2],["L",x,b],["L",e+k,d/2],["L",e+k,l+d-t]):0>=e+x?b>l+I&&b<l+d-I?m.splice(7,1,["L",e,b+6],["L",e-6,b],["L",e,b-6],["L",e,l+t]):m.splice(7,1,["L",e,d/2],["L",x,b],["L",e,d/2],["L",e,l+t]):b&&b>d&&x>e+I&&x<e+k-I?m.splice(5,1,["L",x+6,l+d],["L",x,l+d+6],["L",x-6,l+d],["L",e+t,l+d]):b&&0>b&&x>e+I&&x<e+k-I&&m.splice(1,1,["L",x-6,l],["L",x,l-6],["L",x+6,l],["L",k-t,l]);return m},circle:function(q,
l,k,d){return e(q+k/2,l+d/2,k/2,d/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(e,l,k,d){return[["M",e+k/2,l],["L",e+k,l+d/2],["L",e+k/2,l+d],["L",e,l+d/2],["Z"]]},rect:E,roundedRect:C,square:E,triangle:function(e,l,k,d){return[["M",e+k/2,l],["L",e+k,l+d],["L",e,l+d],["Z"]]},"triangle-down":function(e,l,k,d){return[["M",e,l],["L",e+k,l],["L",e+k/2,l+d],["Z"]]}}});P(e,"Core/Renderer/SVG/TextBuilder.js",[e["Core/Renderer/HTML/AST.js"],e["Core/Globals.js"],e["Core/Utilities.js"]],function(e,
v,E){var q=v.doc,D=v.SVG_NS,A=E.attr,F=E.isString,B=E.objectEach,l=E.pick;return function(){function k(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}k.prototype.buildSVG=function(){var d=this.svgElement,b=d.element,k=d.renderer,I=l(d.textStr,"").toString(),x=-1!==I.indexOf("<"),
m=b.childNodes,g=m.length;k=this.width&&!d.added&&k.box;var n=/<br.*?>/g;var J=[I,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,this.fontSize,this.width].join();if(J!==d.textCache){d.textCache=J;for(delete d.actualWidth;g--;)b.removeChild(m[g]);x||this.ellipsis||this.width||-1!==I.indexOf(" ")&&(!this.noWrap||n.test(I))?""!==I&&(k&&k.appendChild(b),I=new e(I),this.modifyTree(I.nodes),I.addToDOM(d.element),this.modifyDOM(),this.ellipsis&&-1!==(b.textContent||"").indexOf("\u2026")&&
d.attr("title",this.unescapeEntities(d.textStr||"",["&lt;","&gt;"])),k&&k.removeChild(b)):b.appendChild(q.createTextNode(this.unescapeEntities(I)));F(this.textOutline)&&d.applyTextOutline&&d.applyTextOutline(this.textOutline)}};k.prototype.modifyDOM=function(){var d=this,b=this.svgElement,k=A(b.element,"x");b.firstLineMetrics=void 0;[].forEach.call(b.element.querySelectorAll("tspan.highcharts-br"),function(g,n){g.nextSibling&&g.previousSibling&&(0===n&&1===g.previousSibling.nodeType&&(b.firstLineMetrics=
b.renderer.fontMetrics(void 0,g.previousSibling)),A(g,{dy:d.getLineHeight(g.nextSibling),x:k}))});var l=this.width||0;if(l){var x=function(g,n){var m=g.textContent||"",t=m.replace(/([^\^])-/g,"$1- ").split(" "),z=!d.noWrap&&(1<t.length||1<b.element.childNodes.length),u=d.getLineHeight(n),c=0,h=b.actualWidth;if(d.ellipsis)m&&d.truncate(g,m,void 0,0,Math.max(0,l-parseInt(d.fontSize||12,10)),function(a,c){return a.substring(0,c)+"\u2026"});else if(z){m=[];for(z=[];n.firstChild&&n.firstChild!==g;)z.push(n.firstChild),
n.removeChild(n.firstChild);for(;t.length;)t.length&&!d.noWrap&&0<c&&(m.push(g.textContent||""),g.textContent=t.join(" ").replace(/- /g,"-")),d.truncate(g,void 0,t,0===c?h||0:0,l,function(a,c){return t.slice(0,c).join(" ").replace(/- /g,"-")}),h=b.actualWidth,c++;z.forEach(function(a){n.insertBefore(a,g)});m.forEach(function(a){n.insertBefore(q.createTextNode(a),g);a=q.createElementNS(D,"tspan");a.textContent="\u200b";A(a,{dy:u,x:k});n.insertBefore(a,g)})}},m=function(g){[].slice.call(g.childNodes).forEach(function(n){n.nodeType===
Node.TEXT_NODE?x(n,g):(-1!==n.className.baseVal.indexOf("highcharts-br")&&(b.actualWidth=0),m(n))})};m(b.element)}};k.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};k.prototype.modifyTree=function(d){var b=
this,k=function(t,l){var m=t.tagName,g=b.renderer.styledMode,n=t.attributes||{};if("b"===m||"strong"===m)g?n["class"]="highcharts-strong":n.style="font-weight:bold;"+(n.style||"");else if("i"===m||"em"===m)g?n["class"]="highcharts-emphasized":n.style="font-style:italic;"+(n.style||"");F(n.style)&&(n.style=n.style.replace(/(;| |^)color([ :])/,"$1fill$2"));"br"===m&&(n["class"]="highcharts-br",t.textContent="\u200b",(l=d[l+1])&&l.textContent&&(l.textContent=l.textContent.replace(/^ +/gm,"")));"#text"!==
m&&"a"!==m&&(t.tagName="tspan");t.attributes=n;t.children&&t.children.filter(function(g){return"#text"!==g.tagName}).forEach(k)};for(d.forEach(k);d[0]&&"tspan"===d[0].tagName&&!d[0].children;)d.splice(0,1)};k.prototype.truncate=function(d,b,k,l,e,m){var g=this.svgElement,n=g.renderer,t=g.rotation,x=[],z=k?1:0,u=(b||k||"").length,c=u,h,a=function(a,c){c=c||a;var f=d.parentNode;if(f&&"undefined"===typeof x[c])if(f.getSubStringLength)try{x[c]=l+f.getSubStringLength(0,k?c+1:c)}catch(r){""}else n.getSpanWidth&&
(d.textContent=m(b||k,a),x[c]=l+n.getSpanWidth(g,d));return x[c]};g.rotation=0;var f=a(d.textContent.length);if(l+f>e){for(;z<=u;)c=Math.ceil((z+u)/2),k&&(h=m(k,c)),f=a(c,h&&h.length-1),z===u?z=u+1:f>e?u=c-1:z=c;0===u?d.textContent="":b&&u===b.length-1||(d.textContent=h||m(b||k,c))}k&&k.splice(0,c);g.actualWidth=f;g.rotation=t};k.prototype.unescapeEntities=function(d,b){B(this.renderer.escapes,function(k,l){b&&-1!==b.indexOf(k)||(d=d.toString().replace(new RegExp(k,"g"),l))});return d};return k}()});
P(e,"Core/Renderer/SVG/SVGRenderer.js",[e["Core/Renderer/HTML/AST.js"],e["Core/Color/Color.js"],e["Core/Globals.js"],e["Core/Color/Palette.js"],e["Core/Renderer/RendererRegistry.js"],e["Core/Renderer/SVG/SVGElement.js"],e["Core/Renderer/SVG/SVGLabel.js"],e["Core/Renderer/SVG/Symbols.js"],e["Core/Renderer/SVG/TextBuilder.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F,B,l,k){var d=E.charts,b=E.deg2rad,t=E.doc,q=E.isFirefox,x=E.isMS,m=E.isWebKit,g=E.noop,n=E.SVG_NS,J=E.symbolSizes,O=E.win,z=k.addEvent,
u=k.attr,c=k.createElement,h=k.css,a=k.defined,f=k.destroyObjectProperties,y=k.extend,L=k.isArray,K=k.isNumber,r=k.isObject,G=k.isString,Q=k.merge,w=k.pick,H=k.pInt,M=k.uniqueKey,T;E=function(){function p(a,c,p,f,h,y,r){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,c,p,f,h,y,r)}p.prototype.init=function(a,c,p,f,y,r,g){var N=this.createElement("svg").attr({version:"1.1",
"class":"highcharts-root"}),w=N.element;g||N.css(this.getStyle(f));a.appendChild(w);u(a,"dir","ltr");-1===a.innerHTML.indexOf("xmlns")&&u(w,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=w;this.boxWrapper=N;this.alignedObjects=[];this.url=this.getReferenceURL();this.createElement("desc").add().element.appendChild(t.createTextNode("Created with Highcharts 9.1.1"));this.defs=this.createElement("defs").add();this.allowHTML=r;this.forExport=y;this.styledMode=g;this.gradients={};this.cache={};this.cacheKeys=
[];this.imgCount=0;this.setSize(c,p,!1);var n;q&&a.getBoundingClientRect&&(c=function(){h(a,{left:0,top:0});n=a.getBoundingClientRect();h(a,{left:Math.ceil(n.left)-n.left+"px",top:Math.ceil(n.top)-n.top+"px"})},c(),this.unSubPixelFix=z(O,"resize",c))};p.prototype.definition=function(a){return(new e([a])).addToDOM(this.defs.element)};p.prototype.getReferenceURL=function(){if((q||m)&&t.getElementsByTagName("base").length){if(!a(T)){var c=M();c=(new e([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",
children:[{tagName:"clipPath",attributes:{id:c},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":"url(#"+c+")",fill:"rgba(0,0,0,0.001)"}}]}])).addToDOM(t.body);h(c,{position:"fixed",top:0,left:0,zIndex:9E5});var p=t.elementFromPoint(6,6);T="hitme"===(p&&p.id);t.body.removeChild(c)}if(T)return O.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20")}return""};p.prototype.getStyle=
function(a){return this.style=y({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},a)};p.prototype.setStyle=function(a){this.boxWrapper.css(this.getStyle(a))};p.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width};p.prototype.destroy=function(){var a=this.defs;this.box=null;this.boxWrapper=this.boxWrapper.destroy();f(this.gradients||{});this.gradients=null;a&&(this.defs=a.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=
null};p.prototype.createElement=function(a){var c=new this.Element;c.init(this,a);return c};p.prototype.getRadialAttr=function(a,c){return{cx:a[0]-a[2]/2+(c.cx||0)*a[2],cy:a[1]-a[2]/2+(c.cy||0)*a[2],r:(c.r||0)*a[2]}};p.prototype.buildText=function(a){(new l(a)).buildSVG()};p.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"};p.prototype.button=function(a,c,p,f,h,r,g,w,n,b){var N=this.label(a,c,p,n,void 0,void 0,b,void 0,"button"),
m=this.styledMode,d=0,G=h?Q(h):{};a=G&&G.style||{};G=e.filterUserAttributes(G);N.attr(Q({padding:8,r:2},G));if(!m){G=Q({fill:C.neutralColor3,stroke:C.neutralColor20,"stroke-width":1,style:{color:C.neutralColor80,cursor:"pointer",fontWeight:"normal"}},{style:a},G);var R=G.style;delete G.style;r=Q(G,{fill:C.neutralColor10},e.filterUserAttributes(r||{}));var u=r.style;delete r.style;g=Q(G,{fill:C.highlightColor10,style:{color:C.neutralColor100,fontWeight:"bold"}},e.filterUserAttributes(g||{}));var H=
g.style;delete g.style;w=Q(G,{style:{color:C.neutralColor20}},e.filterUserAttributes(w||{}));var k=w.style;delete w.style}z(N.element,x?"mouseover":"mouseenter",function(){3!==d&&N.setState(1)});z(N.element,x?"mouseout":"mouseleave",function(){3!==d&&N.setState(d)});N.setState=function(a){1!==a&&(N.state=d=a);N.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][a||0]);m||N.attr([G,r,g,w][a||0]).css([R,u,H,k][a||0])};
m||N.attr(G).css(y({cursor:"default"},R));return N.on("touchstart",function(a){return a.stopPropagation()}).on("click",function(a){3!==d&&f.call(N,a)})};p.prototype.crispLine=function(c,p,f){void 0===f&&(f="round");var h=c[0],N=c[1];a(h[1])&&h[1]===N[1]&&(h[1]=N[1]=Math[f](h[1])-p%2/2);a(h[2])&&h[2]===N[2]&&(h[2]=N[2]=Math[f](h[2])+p%2/2);return c};p.prototype.path=function(a){var c=this.styledMode?{}:{fill:"none"};L(a)?c.d=a:r(a)&&y(c,a);return this.createElement("path").attr(c)};p.prototype.circle=
function(a,c,p){a=r(a)?a:"undefined"===typeof a?{}:{x:a,y:c,r:p};c=this.createElement("circle");c.xSetter=c.ySetter=function(a,c,p){p.setAttribute("c"+c,a)};return c.attr(a)};p.prototype.arc=function(a,c,p,f,h,y){r(a)?(f=a,c=f.y,p=f.r,a=f.x):f={innerR:f,start:h,end:y};a=this.symbol("arc",a,c,p,p,f);a.r=p;return a};p.prototype.rect=function(a,c,p,f,h,y){h=r(a)?a.r:h;var N=this.createElement("rect");a=r(a)?a:"undefined"===typeof a?{}:{x:a,y:c,width:Math.max(p,0),height:Math.max(f,0)};this.styledMode||
("undefined"!==typeof y&&(a["stroke-width"]=y,a=N.crisp(a)),a.fill="none");h&&(a.r=h);N.rSetter=function(a,c,p){N.r=a;u(p,{rx:a,ry:a})};N.rGetter=function(){return N.r||0};return N.attr(a)};p.prototype.setSize=function(a,c,p){this.width=a;this.height=c;this.boxWrapper.animate({width:a,height:c},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:w(p,!0)?void 0:0});this.alignElements()};p.prototype.g=function(a){var c=this.createElement("g");return a?c.attr({"class":"highcharts-"+
a}):c};p.prototype.image=function(a,c,p,f,h,r){var g={preserveAspectRatio:"none"},N=function(a,c){a.setAttributeNS?a.setAttributeNS("http://www.w3.org/1999/xlink","href",c):a.setAttribute("hc-svg-href",c)};1<arguments.length&&y(g,{x:c,y:p,width:f,height:h});var w=this.createElement("image").attr(g);g=function(c){N(w.element,a);r.call(w,c)};if(r){N(w.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==");var n=new O.Image;z(n,"load",g);n.src=a;n.complete&&g({})}else N(w.element,
a);return w};p.prototype.symbol=function(p,f,r,g,n,b){var N=this,m=/^url\((.*?)\)$/,G=m.test(p),R=!G&&(this.symbols[p]?p:"circle"),u=R&&this.symbols[R],H;if(u){"number"===typeof f&&(H=u.call(this.symbols,Math.round(f||0),Math.round(r||0),g||0,n||0,b));var k=this.path(H);N.styledMode||k.attr("fill","none");y(k,{symbolName:R||void 0,x:f,y:r,width:g,height:n});b&&y(k,b)}else if(G){var z=p.match(m)[1];var L=k=this.image(z);L.imgwidth=w(J[z]&&J[z].width,b&&b.width);L.imgheight=w(J[z]&&J[z].height,b&&b.height);
var K=function(a){return a.attr({width:a.width,height:a.height})};["width","height"].forEach(function(c){L[c+"Setter"]=function(c,p){var f=this["img"+p];this[p]=c;a(f)&&(b&&"within"===b.backgroundSize&&this.width&&this.height&&(f=Math.round(f*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(p,f),this.alignByTranslate||(c=((this[p]||0)-f)/2,this.attr("width"===p?{translateX:c}:{translateY:c})))}});a(f)&&L.attr({x:f,y:r});L.isImg=!0;a(L.imgwidth)&&
a(L.imgheight)?K(L):(L.attr({width:0,height:0}),c("img",{onload:function(){var a=d[N.chartIndex];0===this.width&&(h(this,{position:"absolute",top:"-999em"}),t.body.appendChild(this));J[z]={width:this.width,height:this.height};L.imgwidth=this.width;L.imgheight=this.height;L.element&&K(L);this.parentNode&&this.parentNode.removeChild(this);N.imgCount--;if(!N.imgCount&&a&&!a.hasLoaded)a.onload()},src:z}),this.imgCount++)}return k};p.prototype.clipRect=function(a,c,p,f){var h=M()+"-",r=this.createElement("clipPath").attr({id:h}).add(this.defs);
a=this.rect(a,c,p,f,0).add(r);a.id=h;a.clipPath=r;a.count=0;return a};p.prototype.text=function(c,p,f,h){var r={};if(h&&(this.allowHTML||!this.forExport))return this.html(c,p,f);r.x=Math.round(p||0);f&&(r.y=Math.round(f));a(c)&&(r.text=c);c=this.createElement("text").attr(r);h||(c.xSetter=function(a,c,p){for(var f=p.getElementsByTagName("tspan"),h=p.getAttribute(c),r=0,g;r<f.length;r++)g=f[r],g.getAttribute(c)===h&&g.setAttribute(c,a);p.setAttribute(c,a)});return c};p.prototype.fontMetrics=function(a,
c){a=!this.styledMode&&/px/.test(a)||!O.getComputedStyle?a||c&&c.style&&c.style.fontSize||this.style&&this.style.fontSize:c&&A.prototype.getStyle.call(c,"font-size");a=/px/.test(a)?H(a):12;c=24>a?a+3:Math.round(1.2*a);return{h:c,b:Math.round(.8*c),f:a}};p.prototype.rotCorr=function(a,c,p){var f=a;c&&p&&(f=Math.max(f*Math.cos(c*b),4));return{x:-a/3*Math.sin(c*b),y:f}};p.prototype.pathToSegments=function(a){for(var c=[],p=[],f={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},h=0;h<a.length;h++)G(p[0])&&K(a[h])&&
p.length===f[p[0].toUpperCase()]&&a.splice(h,0,p[0].replace("M","L").replace("m","l")),"string"===typeof a[h]&&(p.length&&c.push(p.slice(0)),p.length=0),p.push(a[h]);c.push(p.slice(0));return c};p.prototype.label=function(a,c,p,f,h,r,g,y,w){return new F(this,a,c,p,f,h,r,g,y,w)};p.prototype.alignElements=function(){this.alignedObjects.forEach(function(a){return a.align()})};return p}();y(E.prototype,{Element:A,SVG_NS:n,escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},symbols:B,
draw:g});D.registerRendererType("svg",E,!0);"";return E});P(e,"Core/Renderer/HTML/HTMLElement.js",[e["Core/Globals.js"],e["Core/Renderer/SVG/SVGElement.js"],e["Core/Utilities.js"]],function(e,v,E){var q=this&&this.__extends||function(){var b=function(d,m){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(g,n){g.__proto__=n}||function(g,n){for(var b in n)n.hasOwnProperty(b)&&(g[b]=n[b])};return b(d,m)};return function(d,m){function g(){this.constructor=d}b(d,m);d.prototype=null===m?
Object.create(m):(g.prototype=m.prototype,new g)}}(),D=e.isFirefox,A=e.isMS,F=e.isWebKit,B=e.win,l=E.css,k=E.defined,d=E.extend,b=E.pick,t=E.pInt;return function(e){function x(){return null!==e&&e.apply(this,arguments)||this}q(x,e);x.compose=function(b){b=b.prototype;var g=x.prototype;b.getSpanCorrection=g.getSpanCorrection;b.htmlCss=g.htmlCss;b.htmlGetBBox=g.htmlGetBBox;b.htmlUpdateTransform=g.htmlUpdateTransform;b.setSpanRotation=g.setSpanRotation};x.prototype.getSpanCorrection=function(b,g,n){this.xCorr=
-b*n;this.yCorr=-g};x.prototype.htmlCss=function(m){var g="SPAN"===this.element.tagName&&m&&"width"in m,n=b(g&&m.width,void 0);if(g){delete m.width;this.textWidth=n;var k=!0}m&&"ellipsis"===m.textOverflow&&(m.whiteSpace="nowrap",m.overflow="hidden");this.styles=d(this.styles,m);l(this.element,m);k&&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,g=this.element,n=this.translateX||0,d=this.translateY||0,e=this.x||0,z=this.y||0,u=this.textAlign||"left",c={left:0,center:.5,right:1}[u],h=this.styles;h=h&&h.whiteSpace;l(g,{marginLeft:n,marginTop:d});!b.styledMode&&this.shadows&&this.shadows.forEach(function(a){l(a,{marginLeft:n+1,marginTop:d+1})});this.inverted&&[].forEach.call(g.childNodes,function(a){b.invertChild(a,g)});if("SPAN"===g.tagName){var a=this.rotation,f=this.textWidth&&t(this.textWidth),
y=[a,u,g.innerHTML,this.textWidth,this.textAlign].join(),L=void 0;(L=f!==this.oldTextWidth)&&!(L=f>this.oldTextWidth)&&((L=this.textPxLength)||(l(g,{width:"",whiteSpace:h||"nowrap"}),L=g.offsetWidth),L=L>f);L&&(/[ \-]/.test(g.textContent||g.innerText)||"ellipsis"===g.style.textOverflow)?(l(g,{width:f+"px",display:"block",whiteSpace:h||"normal"}),this.oldTextWidth=f,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1;y!==this.cTT&&(L=b.fontMetrics(g.style.fontSize,g).b,!k(a)||a===(this.oldRotation||
0)&&u===this.oldAlign||this.setSpanRotation(a,c,L),this.getSpanCorrection(!k(a)&&this.textPxLength||g.offsetWidth,L,c,a,u));l(g,{left:e+(this.xCorr||0)+"px",top:z+(this.yCorr||0)+"px"});this.cTT=y;this.oldRotation=a;this.oldAlign=u}}else this.alignOnAdd=!0};x.prototype.setSpanRotation=function(b,g,n){var d={},m=A&&!/Edge/.test(B.navigator.userAgent)?"-ms-transform":F?"-webkit-transform":D?"MozTransform":B.opera?"-o-transform":void 0;m&&(d[m]=d.transform="rotate("+b+"deg)",d[m+(D?"Origin":"-origin")]=
d.transformOrigin=100*g+"% "+n+"px",l(this.element,d))};return x}(v)});P(e,"Core/Renderer/HTML/HTMLRenderer.js",[e["Core/Renderer/HTML/AST.js"],e["Core/Renderer/SVG/SVGElement.js"],e["Core/Renderer/SVG/SVGRenderer.js"],e["Core/Utilities.js"]],function(e,v,E,C){var q=this&&this.__extends||function(){var k=function(d,b){k=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var k in d)d.hasOwnProperty(k)&&(b[k]=d[k])};return k(d,b)};return function(d,
b){function l(){this.constructor=d}k(d,b);d.prototype=null===b?Object.create(b):(l.prototype=b.prototype,new l)}}(),A=C.attr,F=C.createElement,B=C.extend,l=C.pick;return function(k){function d(){return null!==k&&k.apply(this,arguments)||this}q(d,k);d.compose=function(b){b.prototype.html=d.prototype.html};d.prototype.html=function(b,d,k){var t=this.createElement("span"),m=t.element,g=t.renderer,n=g.isSVG,J=function(g,b){["opacity","visibility"].forEach(function(n){g[n+"Setter"]=function(c,h,a){var f=
g.div?g.div.style:b;v.prototype[n+"Setter"].call(this,c,h,a);f&&(f[h]=c)}});g.addedSetters=!0};t.textSetter=function(g){g!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,e.setElementHTML(this.element,l(g,"")),this.textStr=g,t.doTransform=!0)};n&&J(t,t.element.style);t.xSetter=t.ySetter=t.alignSetter=t.rotationSetter=function(g,n){"align"===n?t.alignValue=t.textAlign=g:t[n]=g;t.doTransform=!0};t.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)};
t.attr({text:b,x:Math.round(d),y:Math.round(k)}).css({position:"absolute"});g.styledMode||t.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize});m.style.whiteSpace="nowrap";t.css=t.htmlCss;n&&(t.add=function(n){var b=g.box.parentNode,d=[];if(this.parentGroup=n){var c=n.div;if(!c){for(;n;)d.push(n),n=n.parentGroup;d.reverse().forEach(function(h){function a(a,c){h[c]=a;"translateX"===c?n.left=a+"px":n.top=a+"px";h.doTransform=!0}var f=A(h.element,"class"),g=h.styles||{};c=h.div=h.div||
F("div",f?{className:f}:void 0,{position:"absolute",left:(h.translateX||0)+"px",top:(h.translateY||0)+"px",display:h.display,opacity:h.opacity,cursor:g.cursor,pointerEvents:g.pointerEvents},c||b);var n=c.style;B(h,{classSetter:function(a){return function(c){this.element.setAttribute("class",c);a.className=c}}(c),on:function(){d[0].div&&t.on.apply({element:d[0].div,onEvents:t.onEvents},arguments);return h},translateXSetter:a,translateYSetter:a});h.addedSetters||J(h)})}}else c=b;c.appendChild(m);t.added=
!0;t.alignOnAdd&&t.htmlUpdateTransform();return t});return t};return d}(E)});P(e,"Core/Axis/AxisDefaults.js",[e["Core/Color/Palette.js"]],function(e){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:e.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:e.neutralColor60}},type:"linear",uniqueNames:!0,visible:!0,minorGridLineColor:e.neutralColor5,minorGridLineWidth:1,minorTickColor:e.neutralColor40,lineColor:e.highlightColor20,lineWidth:1,gridLineColor:e.neutralColor10,gridLineWidth:void 0,tickColor:e.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 e=this.axis.chart.numberFormatter;return e(this.total,-1)},style:{color:e.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(e,"Core/Foundation.js",[e["Core/Utilities.js"]],function(e){var q=e.addEvent,E=e.isFunction,C=e.objectEach,D=e.removeEvent;return{registerEventOptions:function(e,F){e.eventOptions=e.eventOptions||{};C(F.events,function(B,l){E(B)&&e.eventOptions[l]!==B&&(E(e.eventOptions[l])&&
D(e,l,e.eventOptions[l]),e.eventOptions[l]=B,q(e,l,B))})}}});P(e,"Core/Axis/Tick.js",[e["Core/FormatUtilities.js"],e["Core/Globals.js"],e["Core/Utilities.js"]],function(e,v,E){var q=v.deg2rad,D=E.clamp,A=E.correctFloat,F=E.defined,B=E.destroyObjectProperties,l=E.extend,k=E.fireEvent,d=E.isNumber,b=E.merge,t=E.objectEach,I=E.pick;v=function(){function x(b,g,n,d,t){this.isNewLabel=this.isNew=!0;this.axis=b;this.pos=g;this.type=n||"";this.parameters=t||{};this.tickmarkOffset=this.parameters.tickmarkOffset;
this.options=this.parameters.options;k(this,"init");n||d||this.addLabel()}x.prototype.addLabel=function(){var b=this,g=b.axis,n=g.options,t=g.chart,x=g.categories,z=g.logarithmic,u=g.names,c=b.pos,h=I(b.options&&b.options.labels,n.labels),a=g.tickPositions,f=c===a[0],y=c===a[a.length-1],L=(!h.step||1===h.step)&&1===g.tickInterval;a=a.info;var K=b.label,r;x=this.parameters.category||(x?I(x[c],u[c],c):c);z&&d(x)&&(x=A(z.lin2log(x)));if(g.dateTime&&a){var G=t.time.resolveDTLFormat(n.dateTimeLabelFormats[!n.grid&&
a.higherRanks[c]||a.unitName]);var Q=G.main}b.isFirst=f;b.isLast=y;var w={axis:g,chart:t,dateTimeLabelFormat:Q,isFirst:f,isLast:y,pos:c,tick:b,tickPositionInfo:a,value:x};k(this,"labelFormat",w);var H=function(a){return h.formatter?h.formatter.call(a,a):h.format?(a.text=g.defaultLabelFormatter.call(a),e.format(h.format,a,t)):g.defaultLabelFormatter.call(a,a)};n=H.call(w,w);var M=G&&G.list;b.shortenLabel=M?function(){for(r=0;r<M.length;r++)if(l(w,{dateTimeLabelFormat:M[r]}),K.attr({text:H.call(w,w)}),
K.getBBox().width<g.getSlotWidth(b)-2*h.padding)return;K.attr({text:""})}:void 0;L&&g._addedPlotLB&&b.moveLabel(n,h);F(K)||b.movedLabel?K&&K.textStr!==n&&!L&&(!K.textWidth||h.style.width||K.styles.width||K.css({width:null}),K.attr({text:n}),K.textPxLength=K.getBBox().width):(b.label=K=b.createLabel({x:0,y:0},n,h),b.rotation=0)};x.prototype.createLabel=function(d,g,n){var m=this.axis,k=m.chart;if(d=F(g)&&n.enabled?k.renderer.text(g,d.x,d.y,n.useHTML).add(m.labelGroup):null)k.styledMode||d.css(b(n.style)),
d.textPxLength=d.getBBox().width;return d};x.prototype.destroy=function(){B(this,this.axis)};x.prototype.getPosition=function(b,g,n,d){var m=this.axis,z=m.chart,u=d&&z.oldChartHeight||z.chartHeight;b={x:b?A(m.translate(g+n,null,null,d)+m.transB):m.left+m.offset+(m.opposite?(d&&z.oldChartWidth||z.chartWidth)-m.right-m.left:0),y:b?u-m.bottom+m.offset-(m.opposite?m.height:0):A(u-m.translate(g+n,null,null,d)-m.transB)};b.y=D(b.y,-1E5,1E5);k(this,"afterGetPosition",{pos:b});return b};x.prototype.getLabelPosition=
function(b,g,n,d,t,z,u,c){var h=this.axis,a=h.transA,f=h.isLinked&&h.linkedParent?h.linkedParent.reversed:h.reversed,y=h.staggerLines,m=h.tickRotCorr||{x:0,y:0},K=d||h.reserveSpaceDefault?0:-h.labelOffset*("center"===h.labelAlign?.5:1),r={},G=t.y;F(G)||(G=0===h.side?n.rotation?-8:-n.getBBox().height:2===h.side?m.y+8:Math.cos(n.rotation*q)*(m.y-n.getBBox(!1,0).height/2));b=b+t.x+K+m.x-(z&&d?z*a*(f?-1:1):0);g=g+G-(z&&!d?z*a*(f?1:-1):0);y&&(n=u/(c||1)%y,h.opposite&&(n=y-n-1),g+=h.labelOffset/y*n);r.x=
b;r.y=Math.round(g);k(this,"afterGetLabelPosition",{pos:r,tickmarkOffset:z,index:u});return r};x.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0};x.prototype.getMarkPath=function(b,g,n,d,k,z){return z.crispLine([["M",b,g],["L",b+(k?0:-n),g+(k?n:0)]],d)};x.prototype.handleOverflow=function(b){var g=this.axis,n=g.options.labels,d=b.x,m=g.chart.chartWidth,k=g.chart.spacing,u=I(g.labelLeft,Math.min(g.pos,k[3]));k=I(g.labelRight,Math.max(g.isRadial?
0:g.pos+g.len,m-k[1]));var c=this.label,h=this.rotation,a={left:0,center:.5,right:1}[g.labelAlign||c.attr("align")],f=c.getBBox().width,y=g.getSlotWidth(this),L={},K=y,r=1,G;if(h||"justify"!==n.overflow)0>h&&d-a*f<u?G=Math.round(d/Math.cos(h*q)-u):0<h&&d+a*f>k&&(G=Math.round((m-d)/Math.cos(h*q)));else if(m=d+(1-a)*f,d-a*f<u?K=b.x+K*(1-a)-u:m>k&&(K=k-b.x+K*a,r=-1),K=Math.min(y,K),K<y&&"center"===g.labelAlign&&(b.x+=r*(y-K-a*(y-Math.min(f,K)))),f>K||g.autoRotation&&(c.styles||{}).width)G=K;G&&(this.shortenLabel?
this.shortenLabel():(L.width=Math.floor(G)+"px",(n.style||{}).textOverflow||(L.textOverflow="ellipsis"),c.css(L)))};x.prototype.moveLabel=function(b,g){var n=this,d=n.label,m=n.axis,k=m.reversed,u=!1;d&&d.textStr===b?(n.movedLabel=d,u=!0,delete n.label):t(m.ticks,function(c){u||c.isNew||c===n||!c.label||c.label.textStr!==b||(n.movedLabel=c.label,u=!0,c.labelPos=n.movedLabel.xy,delete c.label)});if(!u&&(n.labelPos||d)){var c=n.labelPos||d.xy;d=m.horiz?k?0:m.width+m.left:c.x;m=m.horiz?c.y:k?m.width+
m.left:0;n.movedLabel=n.createLabel({x:d,y:m},b,g);n.movedLabel&&n.movedLabel.attr({opacity:0})}};x.prototype.render=function(b,g,n){var d=this.axis,m=d.horiz,z=this.pos,u=I(this.tickmarkOffset,d.tickmarkOffset);z=this.getPosition(m,z,u,g);u=z.x;var c=z.y;d=m&&u===d.pos+d.len||!m&&c===d.pos?-1:1;m=I(n,this.label&&this.label.newOpacity,1);n=I(n,1);this.isActive=!0;this.renderGridLine(g,n,d);this.renderMark(z,n,d);this.renderLabel(z,g,m,b);this.isNew=!1;k(this,"afterRender")};x.prototype.renderGridLine=
function(b,g,n){var d=this.axis,m=d.options,k={},u=this.pos,c=this.type,h=I(this.tickmarkOffset,d.tickmarkOffset),a=d.chart.renderer,f=this.gridLine,y=m.gridLineWidth,L=m.gridLineColor,K=m.gridLineDashStyle;"minor"===this.type&&(y=m.minorGridLineWidth,L=m.minorGridLineColor,K=m.minorGridLineDashStyle);f||(d.chart.styledMode||(k.stroke=L,k["stroke-width"]=y||0,k.dashstyle=K),c||(k.zIndex=1),b&&(g=0),this.gridLine=f=a.path().attr(k).addClass("highcharts-"+(c?c+"-":"")+"grid-line").add(d.gridGroup));
if(f&&(n=d.getPlotLinePath({value:u+h,lineWidth:f.strokeWidth()*n,force:"pass",old:b})))f[b||this.isNew?"attr":"animate"]({d:n,opacity:g})};x.prototype.renderMark=function(b,g,n){var d=this.axis,m=d.options,k=d.chart.renderer,u=this.type,c=d.tickSize(u?u+"Tick":"tick"),h=b.x;b=b.y;var a=I(m["minor"!==u?"tickWidth":"minorTickWidth"],!u&&d.isXAxis?1:0);m=m["minor"!==u?"tickColor":"minorTickColor"];var f=this.mark,y=!f;c&&(d.opposite&&(c[0]=-c[0]),f||(this.mark=f=k.path().addClass("highcharts-"+(u?u+
"-":"")+"tick").add(d.axisGroup),d.chart.styledMode||f.attr({stroke:m,"stroke-width":a})),f[y?"attr":"animate"]({d:this.getMarkPath(h,b,c[0],f.strokeWidth()*n,d.horiz,k),opacity:g}))};x.prototype.renderLabel=function(b,g,n,k){var m=this.axis,z=m.horiz,u=m.options,c=this.label,h=u.labels,a=h.step;m=I(this.tickmarkOffset,m.tickmarkOffset);var f=b.x;b=b.y;var y=!0;c&&d(f)&&(c.xy=b=this.getLabelPosition(f,b,c,z,h,m,k,a),this.isFirst&&!this.isLast&&!u.showFirstLabel||this.isLast&&!this.isFirst&&!u.showLastLabel?
y=!1:!z||h.step||h.rotation||g||0===n||this.handleOverflow(b),a&&k%a&&(y=!1),y&&d(b.y)?(b.opacity=n,c[this.isNewLabel?"attr":"animate"](b),this.isNewLabel=!1):(c.attr("y",-9999),this.isNewLabel=!0))};x.prototype.replaceMovedLabel=function(){var b=this.label,g=this.axis,d=g.reversed;if(b&&!this.isNew){var k=g.horiz?d?g.left:g.width+g.left:b.xy.x;d=g.horiz?b.xy.y:d?g.width+g.top:g.top;b.animate({x:k,y:d,opacity:0},void 0,b.destroy);delete this.label}g.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel};
return x}();"";return v});P(e,"Core/Axis/Axis.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Axis/AxisDefaults.js"],e["Core/Color/Color.js"],e["Core/Foundation.js"],e["Core/Globals.js"],e["Core/Color/Palette.js"],e["Core/DefaultOptions.js"],e["Core/Axis/Tick.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F,B,l){var k=e.animObject,d=C.registerEventOptions,b=D.deg2rad,t=F.defaultOptions,q=l.arrayMax,x=l.arrayMin,m=l.clamp,g=l.correctFloat,n=l.defined,J=l.destroyObjectProperties,O=l.erase,
z=l.error,u=l.extend,c=l.fireEvent,h=l.getMagnitude,a=l.isArray,f=l.isNumber,y=l.isString,L=l.merge,K=l.normalizeTickInterval,r=l.objectEach,G=l.pick,Q=l.relativeLength,w=l.removeEvent,H=l.splat,M=l.syncTimeout;e=function(){function l(a,c){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,
c)}l.prototype.init=function(a,h){var p=h.isX;this.chart=a;this.horiz=a.inverted&&!this.isZAxis?!p:p;this.isXAxis=p;this.coll=this.coll||(p?"xAxis":"yAxis");c(this,"init",{userOptions:h});this.opposite=G(h.opposite,this.opposite);this.side=G(h.side,this.side,this.horiz?this.opposite?0:2:this.opposite?1:3);this.setOptions(h);var b=this.options,g=b.labels,r=b.type;this.userOptions=h;this.minPixelPadding=0;this.reversed=G(b.reversed,this.reversed);this.visible=b.visible;this.zoomEnabled=b.zoomEnabled;
this.hasNames="category"===r||!0===b.categories;this.categories=b.categories||this.hasNames;this.names||(this.names=[],this.names.keys={});this.plotLinesAndBandsGroups={};this.positiveValuesOnly=!!this.logarithmic;this.isLinked=n(b.linkedTo);this.ticks={};this.labelEdge=[];this.minorTicks={};this.plotLinesAndBands=[];this.alternateBands={};this.len=0;this.minRange=this.userMinRange=b.minRange||b.maxZoom;this.range=b.range;this.offset=b.offset||0;this.min=this.max=null;h=G(b.crosshair,H(a.options.tooltip.crosshairs)[p?
0:1]);this.crosshair=!0===h?{}:h;-1===a.axes.indexOf(this)&&(p?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&&p&&"undefined"===typeof this.reversed&&(this.reversed=!0);this.labelRotation=f(g.rotation)?g.rotation:void 0;d(this,b);c(this,"afterInit")};l.prototype.setOptions=function(a){this.options=L(v.defaultXAxisOptions,"yAxis"===this.coll&&v.defaultYAxisOptions,[v.defaultTopAxisOptions,v.defaultRightAxisOptions,
v.defaultBottomAxisOptions,v.defaultLeftAxisOptions][this.side],L(t[this.coll],a));c(this,"afterSetOptions",{userOptions:a})};l.prototype.defaultLabelFormatter=function(a){var c=this.axis;a=this.chart.numberFormatter;var p=f(this.value)?this.value:NaN,h=c.chart.time,b=this.dateTimeLabelFormat,g=t.lang,r=g.numericSymbols;g=g.numericSymbolMagnitude||1E3;var y=c.logarithmic?Math.abs(p):c.tickInterval,d=r&&r.length;if(c.categories)var w=""+this.value;else if(b)w=h.dateFormat(b,p);else if(d&&1E3<=y)for(;d--&&
"undefined"===typeof w;)c=Math.pow(g,d+1),y>=c&&0===10*p%c&&null!==r[d]&&0!==p&&(w=a(p/c,-1)+r[d]);"undefined"===typeof w&&(w=1E4<=Math.abs(p)?a(p,-1):a(p,-1,void 0,""));return w};l.prototype.getSeriesExtremes=function(){var a=this,h=a.chart,b;c(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(c){if(c.visible||!h.options.chart.ignoreHiddenSeries){var p=c.options,
g=p.threshold;a.hasVisibleSeries=!0;a.positiveValuesOnly&&0>=g&&(g=null);if(a.isXAxis){if(p=c.xData,p.length){p=a.logarithmic?p.filter(a.validatePositiveValue):p;b=c.getXExtremes(p);var r=b.min;var y=b.max;f(r)||r instanceof Date||(p=p.filter(f),b=c.getXExtremes(p),r=b.min,y=b.max);p.length&&(a.dataMin=Math.min(G(a.dataMin,r),r),a.dataMax=Math.max(G(a.dataMax,y),y))}}else if(c=c.applyExtremes(),f(c.dataMin)&&(r=c.dataMin,a.dataMin=Math.min(G(a.dataMin,r),r)),f(c.dataMax)&&(y=c.dataMax,a.dataMax=Math.max(G(a.dataMax,
y),y)),n(g)&&(a.threshold=g),!p.softThreshold||a.positiveValuesOnly)a.softThreshold=!1}})});c(this,"afterGetSeriesExtremes")};l.prototype.translate=function(a,c,h,b,g,r){var p=this.linkedParent||this,y=b&&p.old?p.old.min:p.min,w=p.minPixelPadding;g=(p.isOrdinal||p.brokenAxis&&p.brokenAxis.hasBreaks||p.logarithmic&&g)&&p.lin2val;var d=1,n=0;b=b&&p.old?p.old.transA:p.transA;b||(b=p.transA);h&&(d*=-1,n=p.len);p.reversed&&(d*=-1,n-=d*(p.sector||p.len));c?(a=(a*d+n-w)/b+y,g&&(a=p.lin2val(a))):(g&&(a=p.val2lin(a)),
a=f(y)?d*(a-y)*b+n+d*w+(f(r)?b*r:0):void 0);return a};l.prototype.toPixels=function(a,c){return this.translate(a,!1,!this.horiz,null,!0)+(c?0:this.pos)};l.prototype.toValue=function(a,c){return this.translate(a-(c?0:this.pos),!0,!this.horiz,null,!0)};l.prototype.getPlotLinePath=function(a){function p(a,c,p){if("pass"!==l&&a<c||a>p)l?a=m(a,c,p):e=!0;return a}var h=this,b=h.chart,g=h.left,r=h.top,y=a.old,d=a.value,w=a.lineWidth,n=y&&b.oldChartHeight||b.chartHeight,k=y&&b.oldChartWidth||b.chartWidth,
H=h.transB,u=a.translatedValue,l=a.force,L,z,K,t,e;a={value:d,lineWidth:w,old:y,force:l,acrossPanes:a.acrossPanes,translatedValue:u};c(this,"getPlotLinePath",a,function(a){u=G(u,h.translate(d,null,null,y));u=m(u,-1E5,1E5);L=K=Math.round(u+H);z=t=Math.round(n-u-H);f(u)?h.horiz?(z=r,t=n-h.bottom,L=K=p(L,g,g+h.width)):(L=g,K=k-h.right,z=t=p(z,r,r+h.height)):(e=!0,l=!1);a.path=e&&!l?null:b.renderer.crispLine([["M",L,z],["L",K,t]],w||1)});return a.path};l.prototype.getLinearTickPositions=function(a,c,
f){var p=g(Math.floor(c/a)*a);f=g(Math.ceil(f/a)*a);var h=[],b;g(p+a)===p&&(b=20);if(this.single)return[c];for(c=p;c<=f;){h.push(c);c=g(c+a,b);if(c===r)break;var r=c}return h};l.prototype.getMinorTickInterval=function(){var a=this.options;return!0===a.minorTicks?G(a.minorTickInterval,"auto"):!1===a.minorTicks?null:a.minorTickInterval};l.prototype.getMinorTickPositions=function(){var a=this.options,c=this.tickPositions,f=this.minorTickInterval,h=this.pointRangePadding||0,b=this.min-h;h=this.max+h;
var g=h-b,r=[];if(g&&g/f<this.len/3){var y=this.logarithmic;if(y)this.paddedTicks.forEach(function(a,c,p){c&&r.push.apply(r,y.getLogTickPositions(f,p[c-1],p[c],!0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())r=r.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(f),b,h,a.startOfWeek));else for(a=b+(c[0]-b)%f;a<=h&&a!==r[0];a+=f)r.push(a)}0!==r.length&&this.trimTicks(r);return r};l.prototype.adjustForMinRange=function(){var a=this.options,c=this.logarithmic,f=this.min,
h=this.max,b=0,r,g,y,d;this.isXAxis&&"undefined"===typeof this.minRange&&!c&&(n(a.min)||n(a.max)?this.minRange=null:(this.series.forEach(function(a){y=a.xData;d=a.xIncrement?1:y.length-1;if(1<y.length)for(r=d;0<r;r--)if(g=y[r]-y[r-1],!b||g<b)b=g}),this.minRange=Math.min(5*b,this.dataMax-this.dataMin)));if(h-f<this.minRange){var w=this.dataMax-this.dataMin>=this.minRange;var m=this.minRange;var k=(m-h+f)/2;k=[f-k,G(a.min,f-k)];w&&(k[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin);
f=q(k);h=[f+m,G(a.max,f+m)];w&&(h[2]=c?c.log2lin(this.dataMax):this.dataMax);h=x(h);h-f<m&&(k[0]=h-m,k[1]=G(a.min,h-m),f=q(k))}this.min=f;this.max=h};l.prototype.getClosest=function(){var a;this.categories?a=1:this.series.forEach(function(c){var p=c.closestPointRange,f=c.visible||!c.chart.options.chart.ignoreHiddenSeries;!c.noSharedTooltip&&n(p)&&f&&(a=n(a)?Math.min(a,p):p)});return a};l.prototype.nameToX=function(c){var p=a(this.categories),f=p?this.categories:this.names,h=c.options.x;c.series.requireSorting=
!1;n(h)||(h=this.options.uniqueNames?p?f.indexOf(c.name):G(f.keys[c.name],-1):c.series.autoIncrement());if(-1===h){if(!p)var b=f.length}else b=h;"undefined"!==typeof b&&(this.names[b]=c.name,this.names.keys[c.name]=b);return b};l.prototype.updateNames=function(){var a=this,c=this.names;0<c.length&&(Object.keys(c.keys).forEach(function(a){delete c.keys[a]}),c.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(c){c.xIncrement=null;if(!c.points||c.isDirtyData)a.max=Math.max(a.max,
c.xData.length-1),c.processData(),c.generatePoints();c.data.forEach(function(p,f){if(p&&p.options&&"undefined"!==typeof p.name){var h=a.nameToX(p);"undefined"!==typeof h&&h!==p.x&&(p.x=h,c.xData[f]=h)}})}))};l.prototype.setAxisTranslation=function(){var a=this,f=a.max-a.min,h=a.linkedParent,b=!!a.categories,r=a.isXAxis,g=a.axisPointRange||0,d=0,w=0,n=a.transA;if(r||b||g){var m=a.getClosest();h?(d=h.minPointOffset,w=h.pointRangePadding):a.series.forEach(function(c){var f=b?1:r?G(c.options.pointRange,
m,0):a.axisPointRange||0,p=c.options.pointPlacement;g=Math.max(g,f);if(!a.single||b)c=c.is("xrange")?!r:r,d=Math.max(d,c&&y(p)?0:f/2),w=Math.max(w,c&&"on"===p?0:f)});h=a.ordinal&&a.ordinal.slope&&m?a.ordinal.slope/m:1;a.minPointOffset=d*=h;a.pointRangePadding=w*=h;a.pointRange=Math.min(g,a.single&&b?1:f);r&&(a.closestPointRange=m)}a.translationSlope=a.transA=n=a.staticScale||a.len/(f+w||1);a.transB=a.horiz?a.left:a.bottom;a.minPixelPadding=n*d;c(this,"afterSetAxisTranslation")};l.prototype.minFromRange=
function(){return this.max-this.range};l.prototype.setTickInterval=function(a){var p=this,b=p.chart,r=p.logarithmic,y=p.options,d=p.isXAxis,w=p.isLinked,m=y.tickPixelInterval,k=p.categories,u=p.softThreshold,H=y.maxPadding,l=y.minPadding,L=y.tickInterval,t=f(p.threshold)?p.threshold:null;p.dateTime||k||w||this.getTickAmount();var e=G(p.userMin,y.min);var Q=G(p.userMax,y.max);if(w){p.linkedParent=b[p.coll][y.linkedTo];var x=p.linkedParent.getExtremes();p.min=G(x.min,x.dataMin);p.max=G(x.max,x.dataMax);
y.type!==p.linkedParent.options.type&&z(11,1,b)}else{if(u&&n(t))if(p.dataMin>=t)x=t,l=0;else if(p.dataMax<=t){var M=t;H=0}p.min=G(e,x,p.dataMin);p.max=G(Q,M,p.dataMax)}r&&(p.positiveValuesOnly&&!a&&0>=Math.min(p.min,G(p.dataMin,p.min))&&z(10,1,b),p.min=g(r.log2lin(p.min),16),p.max=g(r.log2lin(p.max),16));p.range&&n(p.max)&&(p.userMin=p.min=e=Math.max(p.dataMin,p.minFromRange()),p.userMax=Q=p.max,p.range=null);c(p,"foundExtremes");p.beforePadding&&p.beforePadding();p.adjustForMinRange();!(k||p.axisPointRange||
p.stacking&&p.stacking.usePercentage||w)&&n(p.min)&&n(p.max)&&(b=p.max-p.min)&&(!n(e)&&l&&(p.min-=b*l),!n(Q)&&H&&(p.max+=b*H));f(p.userMin)||(f(y.softMin)&&y.softMin<p.min&&(p.min=e=y.softMin),f(y.floor)&&(p.min=Math.max(p.min,y.floor)));f(p.userMax)||(f(y.softMax)&&y.softMax>p.max&&(p.max=Q=y.softMax),f(y.ceiling)&&(p.max=Math.min(p.max,y.ceiling)));u&&n(p.dataMin)&&(t=t||0,!n(e)&&p.min<t&&p.dataMin>=t?p.min=p.options.minRange?Math.min(t,p.max-p.minRange):t:!n(Q)&&p.max>t&&p.dataMax<=t&&(p.max=p.options.minRange?
Math.max(t,p.min+p.minRange):t));f(p.min)&&f(p.max)&&!this.chart.polar&&p.min>p.max&&(n(p.options.min)?p.max=p.min:n(p.options.max)&&(p.min=p.max));p.tickInterval=p.min===p.max||"undefined"===typeof p.min||"undefined"===typeof p.max?1:w&&p.linkedParent&&!L&&m===p.linkedParent.options.tickPixelInterval?L=p.linkedParent.tickInterval:G(L,this.tickAmount?(p.max-p.min)/Math.max(this.tickAmount-1,1):void 0,k?1:(p.max-p.min)*m/Math.max(p.len,m));d&&!a&&p.series.forEach(function(a){a.processData(p.min!==
(p.old&&p.old.min)||p.max!==(p.old&&p.old.max))});p.setAxisTranslation();c(this,"initialAxisTranslation");p.pointRange&&!L&&(p.tickInterval=Math.max(p.pointRange,p.tickInterval));a=G(y.minTickInterval,p.dateTime&&!p.series.some(function(a){return a.noSharedTooltip})?p.closestPointRange:0);!L&&p.tickInterval<a&&(p.tickInterval=a);p.dateTime||p.logarithmic||L||(p.tickInterval=K(p.tickInterval,void 0,h(p.tickInterval),G(y.allowDecimals,.5>p.tickInterval||void 0!==this.tickAmount),!!this.tickAmount));
this.tickAmount||(p.tickInterval=p.unsquish());this.setTickPositions()};l.prototype.setTickPositions=function(){var a=this.options,f=a.tickPositions,h=this.getMinorTickInterval(),b=this.hasVerticalPanning(),r="colorAxis"===this.coll,g=(r||!b)&&a.startOnTick;b=(r||!b)&&a.endOnTick;r=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&&
n(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],z(19,!1,this.chart)),h.length>this.len&&(h=[h[0],h.pop()],h[0]===h[1]&&(h.length=1)),this.tickPositions=h,r&&(r=r.apply(this,[this.min,this.max])))&&(this.tickPositions=h=r);this.paddedTicks=h.slice(0);this.trimTicks(h,g,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||r||this.adjustTickAmount());c(this,"afterSetTickPositions")};l.prototype.trimTicks=function(a,f,h){var p=a[0],b=a[a.length-1],r=!this.isOrdinal&&this.minPointOffset||0;c(this,"trimTicks");if(!this.isLinked){if(f&&-Infinity!==p)this.min=p;else for(;this.min-r>a[0];)a.shift();if(h)this.max=b;else for(;this.max+r<a[a.length-1];)a.pop();0===a.length&&n(p)&&!this.options.tickPositions&&a.push((b+p)/2)}};l.prototype.alignToOthers=function(){var a={},c=this.options,f;!1!==this.chart.options.chart.alignTicks&&
c.alignTicks&&!1!==c.startOnTick&&!1!==c.endOnTick&&!this.logarithmic&&this.chart[this.coll].forEach(function(c){var p=c.options;p=[c.horiz?p.left:p.top,p.width,p.height,p.pane].join();c.series.length&&(a[p]?f=!0:a[p]=1)});return f};l.prototype.getTickAmount=function(){var a=this.options,c=a.tickPixelInterval,f=a.tickAmount;!n(a.tickInterval)&&!f&&this.len<c&&!this.isRadial&&!this.logarithmic&&a.startOnTick&&a.endOnTick&&(f=2);!f&&this.alignToOthers()&&(f=Math.ceil(this.len/c)+1);4>f&&(this.finalTickAmt=
f,f=5);this.tickAmount=f};l.prototype.adjustTickAmount=function(){var a=this.options,c=this.tickInterval,h=this.tickPositions,b=this.tickAmount,r=this.finalTickAmt,y=h&&h.length,d=G(this.threshold,this.softThreshold?0:null);if(this.hasData()&&f(this.min)&&f(this.max)){if(y<b){for(;h.length<b;)h.length%2||this.min===d?h.push(g(h[h.length-1]+c)):h.unshift(g(h[0]-c));this.transA*=(y-1)/(b-1);this.min=a.startOnTick?h[0]:Math.min(this.min,h[0]);this.max=a.endOnTick?h[h.length-1]:Math.max(this.max,h[h.length-
1])}else y>b&&(this.tickInterval*=2,this.setTickPositions());if(n(r)){for(c=a=h.length;c--;)(3===r&&1===c%2||2>=r&&0<c&&c<a-1)&&h.splice(c,1);this.finalTickAmt=void 0}}};l.prototype.setScale=function(){var a=!1,f=!1;this.series.forEach(function(c){a=a||c.isDirtyData||c.isDirty;f=f||c.xAxis&&c.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);c(this,"afterSetScale")};l.prototype.setExtremes=function(a,f,h,b,r){var p=this,g=p.chart;h=G(h,!0);p.series.forEach(function(a){delete a.kdTree});r=u(r,{min:a,max:f});
c(p,"setExtremes",r,function(){p.userMin=a;p.userMax=f;p.eventArgs=r;h&&g.redraw(b)})};l.prototype.zoom=function(a,f){var p=this,h=this.dataMin,b=this.dataMax,r=this.options,g=Math.min(h,G(r.min,h)),y=Math.max(b,G(r.max,b));a={newMin:a,newMax:f};c(this,"zoom",a,function(a){var c=a.newMin,f=a.newMax;if(c!==p.min||f!==p.max)p.allowZoomOutside||(n(h)&&(c<g&&(c=g),c>y&&(c=y)),n(b)&&(f<g&&(f=g),f>y&&(f=y))),p.displayBtn="undefined"!==typeof c||"undefined"!==typeof f,p.setExtremes(c,f,!1,void 0,{trigger:"zoom"});
a.zoomed=!0});return a.zoomed};l.prototype.setAxisSize=function(){var a=this.chart,c=this.options,f=c.offsets||[0,0,0,0],h=this.horiz,b=this.width=Math.round(Q(G(c.width,a.plotWidth-f[3]+f[1]),a.plotWidth)),r=this.height=Math.round(Q(G(c.height,a.plotHeight-f[0]+f[2]),a.plotHeight)),g=this.top=Math.round(Q(G(c.top,a.plotTop+f[0]),a.plotHeight,a.plotTop));c=this.left=Math.round(Q(G(c.left,a.plotLeft+f[3]),a.plotWidth,a.plotLeft));this.bottom=a.chartHeight-r-g;this.right=a.chartWidth-b-c;this.len=Math.max(h?
b:r,0);this.pos=h?c:g};l.prototype.getExtremes=function(){var a=this.logarithmic;return{min:a?g(a.lin2log(this.min)):this.min,max:a?g(a.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}};l.prototype.getThreshold=function(a){var c=this.logarithmic,p=c?c.lin2log(this.min):this.min;c=c?c.lin2log(this.max):this.max;null===a||-Infinity===a?a=p:Infinity===a?a=c:p>a?a=p:c<a&&(a=c);return this.translate(a,0,1,0,1)};l.prototype.autoLabelAlign=
function(a){var p=(G(a,0)-90*this.side+720)%360;a={align:"center"};c(this,"autoLabelAlign",a,function(a){15<p&&165>p?a.align="right":195<p&&345>p&&(a.align="left")});return a.align};l.prototype.tickSize=function(a){var p=this.options,f=G(p["tick"===a?"tickWidth":"minorTickWidth"],"tick"===a&&this.isXAxis&&!this.categories?1:0),h=p["tick"===a?"tickLength":"minorTickLength"];if(f&&h){"inside"===p[a+"Position"]&&(h=-h);var b=[h,f]}a={tickSize:b};c(this,"afterTickSize",a);return a.tickSize};l.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)};l.prototype.unsquish=function(){var a=this.options.labels,c=this.horiz,h=this.tickInterval,r=this.len/(((this.categories?1:0)+this.max-this.min)/h),y=a.rotation,d=this.labelMetrics(),w=Math.max(this.max-this.min,0),n=function(a){var c=a/(r||1);c=1<c?Math.ceil(c):1;c*h>w&&Infinity!==a&&Infinity!==r&&w&&(c=Math.ceil(w/h));return g(c*
h)},m=h,k,u,H=Number.MAX_VALUE;if(c){if(!a.staggerLines&&!a.step)if(f(y))var l=[y];else r<a.autoRotationLimit&&(l=a.autoRotation);l&&l.forEach(function(a){if(a===y||a&&-90<=a&&90>=a){u=n(Math.abs(d.h/Math.sin(b*a)));var c=u+Math.abs(a/360);c<H&&(H=c,k=a,m=u)}})}else a.step||(m=n(d.h));this.autoRotation=l;this.labelRotation=G(k,f(y)?y:0);return m};l.prototype.getSlotWidth=function(a){var c=this.chart,p=this.horiz,h=this.options.labels,b=Math.max(this.tickPositions.length-(this.categories?0:1),1),r=
c.margin[3];if(a&&f(a.slotWidth))return a.slotWidth;if(p&&2>h.step)return h.rotation?0:(this.staggerLines||1)*this.len/b;if(!p){a=h.style.width;if(void 0!==a)return parseInt(String(a),10);if(r)return r-c.spacing[3]}return.33*c.chartWidth};l.prototype.renderUnsquish=function(){var a=this.chart,c=a.renderer,f=this.tickPositions,h=this.ticks,b=this.options.labels,r=b.style,g=this.horiz,d=this.getSlotWidth(),w=Math.max(1,Math.round(d-2*b.padding)),n={},m=this.labelMetrics(),G=r.textOverflow,k=0;y(b.rotation)||
(n.rotation=b.rotation||0);f.forEach(function(a){a=h[a];a.movedLabel&&a.replaceMovedLabel();a&&a.label&&a.label.textPxLength>k&&(k=a.label.textPxLength)});this.maxLabelLength=k;if(this.autoRotation)k>w&&k>m.h?n.rotation=this.labelRotation:this.labelRotation=0;else if(d){var u=w;if(!G){var H="clip";for(w=f.length;!g&&w--;){var l=f[w];if(l=h[l].label)l.styles&&"ellipsis"===l.styles.textOverflow?l.css({textOverflow:"clip"}):l.textPxLength>d&&l.css({width:d+"px"}),l.getBBox().height>this.len/f.length-
(m.h-m.f)&&(l.specificTextOverflow="ellipsis")}}}n.rotation&&(u=k>.5*a.chartHeight?.33*a.chartHeight:k,G||(H="ellipsis"));if(this.labelAlign=b.align||this.autoLabelAlign(this.labelRotation))n.align=this.labelAlign;f.forEach(function(a){var c=(a=h[a])&&a.label,f=r.width,p={};c&&(c.attr(n),a.shortenLabel?a.shortenLabel():u&&!f&&"nowrap"!==r.whiteSpace&&(u<c.textPxLength||"SPAN"===c.element.tagName)?(p.width=u+"px",G||(p.textOverflow=c.specificTextOverflow||H),c.css(p)):c.styles&&c.styles.width&&!p.width&&
!f&&c.css({width:null}),delete c.specificTextOverflow,a.rotation=n.rotation)},this);this.tickRotCorr=c.rotCorr(m.b,this.labelRotation||0,0!==this.side)};l.prototype.hasData=function(){return this.series.some(function(a){return a.hasData()})||this.options.showEmpty&&n(this.min)&&n(this.max)};l.prototype.addTitle=function(a){var c=this.chart.renderer,f=this.horiz,p=this.opposite,h=this.options.title,b=this.chart.styledMode,r;this.axisTitle||((r=h.textAlign)||(r=(f?{low:"left",middle:"center",high:"right"}:
{low:p?"right":"left",middle:"center",high:p?"left":"right"})[h.align]),this.axisTitle=c.text(h.text||"",0,0,h.useHTML).attr({zIndex:7,rotation:h.rotation,align:r}).addClass("highcharts-axis-title"),b||this.axisTitle.css(L(h.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0);b||h.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"});this.axisTitle[a?"show":"hide"](a)};l.prototype.generateTick=function(a){var c=this.ticks;c[a]?c[a].addLabel():c[a]=new B(this,a)};l.prototype.getOffset=
function(){var a=this,f=this,h=f.chart,b=h.renderer,g=f.options,y=f.tickPositions,d=f.ticks,w=f.horiz,m=f.side,k=h.inverted&&!f.isZAxis?[1,0,3,2][m]:m,u=f.hasData(),H=g.title,l=g.labels,L=h.axisOffset;h=h.clipOffset;var z=[-1,1,1,-1][m],t=g.className,K=f.axisParent,e,Q=0,x=0,M=0;f.showAxis=e=u||g.showEmpty;f.staggerLines=f.horiz&&l.staggerLines||void 0;if(!f.axisGroup){var q=function(c,f,p){return b.g(c).attr({zIndex:p}).addClass("highcharts-"+a.coll.toLowerCase()+f+" "+(a.isRadial?"highcharts-radial-axis"+
f+" ":"")+(t||"")).add(K)};f.gridGroup=q("grid","-grid",g.gridZIndex);f.axisGroup=q("axis","",g.zIndex);f.labelGroup=q("axis-labels","-labels",l.zIndex)}u||f.isLinked?(y.forEach(function(a){f.generateTick(a)}),f.renderUnsquish(),f.reserveSpaceDefault=0===m||2===m||{1:"left",3:"right"}[m]===f.labelAlign,G(l.reserveSpace,"center"===f.labelAlign?!0:null,f.reserveSpaceDefault)&&y.forEach(function(a){M=Math.max(d[a].getLabelSize(),M)}),f.staggerLines&&(M*=f.staggerLines),f.labelOffset=M*(f.opposite?-1:
1)):r(d,function(a,c){a.destroy();delete d[c]});if(H&&H.text&&!1!==H.enabled&&(f.addTitle(e),e&&!1!==H.reserveSpace)){f.titleOffset=Q=f.axisTitle.getBBox()[w?"height":"width"];var T=H.offset;x=n(T)?0:G(H.margin,w?5:10)}f.renderLine();f.offset=z*G(g.offset,L[m]?L[m]+(g.margin||0):0);f.tickRotCorr=f.tickRotCorr||{x:0,y:0};H=0===m?-f.labelMetrics().h:2===m?f.tickRotCorr.y:0;u=Math.abs(M)+x;M&&(u=u-H+z*(w?G(l.y,f.tickRotCorr.y+8*z):l.x));f.axisTitleMargin=G(T,u);f.getMaxLabelDimensions&&(f.maxLabelDimensions=
f.getMaxLabelDimensions(d,y));w=this.tickSize("tick");L[m]=Math.max(L[m],(f.axisTitleMargin||0)+Q+z*f.offset,u,y&&y.length&&w?w[0]+z*f.offset:0);g=g.offset?0:2*Math.floor(f.axisLine.strokeWidth()/2);h[k]=Math.max(h[k],g);c(this,"afterGetOffset")};l.prototype.getLinePath=function(a){var c=this.chart,f=this.opposite,p=this.offset,h=this.horiz,b=this.left+(f?this.width:0)+p;p=c.chartHeight-this.bottom-(f?this.height:0)+p;f&&(a*=-1);return c.renderer.crispLine([["M",h?this.left:b,h?p:this.top],["L",h?
c.chartWidth-this.right:b,h?p:c.chartHeight-this.bottom]],a)};l.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}))};l.prototype.getTitlePosition=function(){var a=this.horiz,f=this.left,h=this.top,b=this.len,r=this.options.title,g=a?f:h,y=this.opposite,w=this.offset,d=r.x,n=r.y,m=this.axisTitle,
G=this.chart.renderer.fontMetrics(r.style.fontSize,m);m=Math.max(m.getBBox(null,0).height-G.h-1,0);b={low:g+(a?0:b),middle:g+b/2,high:g+(a?b:0)}[r.align];f=(a?h+this.height:f)+(a?1:-1)*(y?-1:1)*this.axisTitleMargin+[-m,m,G.f,-m][this.side];a={x:a?b+d:f+(y?this.width:0)+w+d,y:a?f+n-(y?this.height:0)+w:b+n};c(this,"afterGetTitlePosition",{titlePosition:a});return a};l.prototype.renderMinorTick=function(a){var c=this.chart.hasRendered&&this.old,f=this.minorTicks;f[a]||(f[a]=new B(this,a,"minor"));c&&
f[a].isNew&&f[a].render(null,!0);f[a].render(null,!1,1)};l.prototype.renderTick=function(a,c){var f=this.ticks,p=this.chart.hasRendered&&this.old;if(!this.isLinked||a>=this.min&&a<=this.max||this.grid&&this.grid.isColumn)f[a]||(f[a]=new B(this,a)),p&&f[a].isNew&&f[a].render(c,!0,-1),f[a].render(c)};l.prototype.render=function(){var a=this,h=a.chart,b=a.logarithmic,g=a.options,y=a.isLinked,w=a.tickPositions,d=a.axisTitle,n=a.ticks,m=a.minorTicks,G=a.alternateBands,u=g.stackLabels,H=g.alternateGridColor,
l=a.tickmarkOffset,L=a.axisLine,z=a.showAxis,t=k(h.renderer.globalAnimation),K,e;a.labelEdge.length=0;a.overlap=!1;[n,m,G].forEach(function(a){r(a,function(a){a.isActive=!1})});if(a.hasData()||y)a.minorTickInterval&&!a.categories&&a.getMinorTickPositions().forEach(function(c){a.renderMinorTick(c)}),w.length&&(w.forEach(function(c,f){a.renderTick(c,f)}),l&&(0===a.min||a.single)&&(n[-1]||(n[-1]=new B(a,-1,null,!0)),n[-1].render(-1))),H&&w.forEach(function(c,f){e="undefined"!==typeof w[f+1]?w[f+1]+l:
a.max-l;0===f%2&&c<a.max&&e<=a.max+(h.polar?-l:l)&&(G[c]||(G[c]=new D.PlotLineOrBand(a)),K=c+l,G[c].options={from:b?b.lin2log(K):K,to:b?b.lin2log(e):e,color:H,className:"highcharts-alternate-grid"},G[c].render(),G[c].isActive=!0)}),a._addedPlotLB||(a._addedPlotLB=!0,(g.plotLines||[]).concat(g.plotBands||[]).forEach(function(c){a.addPlotBandOrLine(c)}));[n,m,G].forEach(function(a){var c=[],f=t.duration;r(a,function(a,f){a.isActive||(a.render(f,!1,0),a.isActive=!1,c.push(f))});M(function(){for(var f=
c.length;f--;)a[c[f]]&&!a[c[f]].isActive&&(a[c[f]].destroy(),delete a[c[f]])},a!==G&&h.hasRendered&&f?f:0)});L&&(L[L.isPlaced?"animate":"attr"]({d:this.getLinePath(L.strokeWidth())}),L.isPlaced=!0,L[z?"show":"hide"](z));d&&z&&(g=a.getTitlePosition(),f(g.y)?(d[d.isNew?"attr":"animate"](g),d.isNew=!1):(d.attr("y",-9999),d.isNew=!0));u&&u.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;c(this,"afterRender")};
l.prototype.redraw=function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(a){a.render()}));this.series.forEach(function(a){a.isDirty=!0})};l.prototype.getKeepProps=function(){return this.keepProps||l.keepProps};l.prototype.destroy=function(a){var f=this,h=f.plotLinesAndBands,p=this.eventOptions;c(this,"destroy",{keepEvents:a});a||w(f);[f.ticks,f.minorTicks,f.alternateBands].forEach(function(a){J(a)});if(h)for(a=h.length;a--;)h[a].destroy();"axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(a){f[a]&&
(f[a]=f[a].destroy())});for(var b in f.plotLinesAndBandsGroups)f.plotLinesAndBandsGroups[b]=f.plotLinesAndBandsGroups[b].destroy();r(f,function(a,c){-1===f.getKeepProps().indexOf(c)&&delete f[c]});this.eventOptions=p};l.prototype.drawCrosshair=function(a,f){var h=this.crosshair,p=G(h&&h.snap,!0),b=this.chart,r,g=this.cross;c(this,"drawCrosshair",{e:a,point:f});a||(a=this.cross&&this.cross.e);if(h&&!1!==(n(f)||!p)){p?n(f)&&(r=G("colorAxis"!==this.coll?f.crosshairPos:null,this.isXAxis?f.plotX:this.len-
f.plotY)):r=a&&(this.horiz?a.chartX-this.pos:this.len-a.chartY+this.pos);if(n(r)){var y={value:f&&(this.isXAxis?f.x:G(f.stackY,f.y)),translatedValue:r};b.polar&&u(y,{isCrosshair:!0,chartX:a&&a.chartX,chartY:a&&a.chartY,point:f});y=this.getPlotLinePath(y)||null}if(!n(y)){this.hideCrosshair();return}p=this.categories&&!this.isRadial;g||(this.cross=g=b.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(p?"category ":"thin ")+(h.className||"")).attr({zIndex:G(h.zIndex,2)}).add(),b.styledMode||
(g.attr({stroke:h.color||(p?E.parse(A.highlightColor20).setOpacity(.25).get():A.neutralColor20),"stroke-width":G(h.width,1)}).css({"pointer-events":"none"}),h.dashStyle&&g.attr({dashstyle:h.dashStyle})));g.show().attr({d:y});p&&!h.width&&g.attr({"stroke-width":this.transA});this.cross.e=a}else this.hideCrosshair();c(this,"afterDrawCrosshair",{e:a,point:f})};l.prototype.hideCrosshair=function(){this.cross&&this.cross.hide();c(this,"afterHideCrosshair")};l.prototype.hasVerticalPanning=function(){var a=
this.chart.options.chart.panning;return!!(a&&a.enabled&&/y/.test(a.type))};l.prototype.validatePositiveValue=function(a){return f(a)&&0<a};l.prototype.update=function(a,c){var f=this.chart;a=L(this.userOptions,a);this.destroy(!0);this.init(f,a);f.isDirtyBox=!0;G(c,!0)&&f.redraw()};l.prototype.remove=function(a){for(var c=this.chart,f=this.coll,h=this.series,p=h.length;p--;)h[p]&&h[p].remove(!1);O(c.axes,this);O(c[f],this);c[f].forEach(function(a,c){a.options.index=a.userOptions.index=c});this.destroy();
c.isDirtyBox=!0;G(a,!0)&&c.redraw()};l.prototype.setTitle=function(a,c){this.update({title:a},c)};l.prototype.setCategories=function(a,c){this.update({categories:a},c)};l.defaultOptions=v.defaultXAxisOptions;l.keepProps="extKey hcEvents names series userMax userMin".split(" ");return l}();"";return e});P(e,"Core/Axis/DateTimeAxis.js",[e["Core/Axis/Axis.js"],e["Core/Utilities.js"]],function(e,v){var q=v.addEvent,C=v.getMagnitude,D=v.normalizeTickInterval,A=v.timeUnits,F=function(){function e(l){this.axis=
l}e.prototype.normalizeTimeTickInterval=function(l,k){var d=k||[["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]];k=d[d.length-1];var b=A[k[0]],t=k[1],e;for(e=0;e<d.length&&!(k=d[e],b=A[k[0]],t=k[1],d[e+1]&&l<=(b*t[t.length-1]+A[d[e+1][0]])/2);e++);b===A.year&&l<5*b&&(t=[1,2,5]);l=D(l/b,t,"year"===k[0]?Math.max(C(l/b),1):1);return{unitRange:b,count:l,unitName:k[0]}};
return e}();v=function(){function e(){}e.compose=function(l){l.keepProps.push("dateTime");l.prototype.getTimeTicks=function(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)};q(l,"init",function(k){"datetime"!==k.userOptions.type?this.dateTime=void 0:this.dateTime||(this.dateTime=new F(this))})};e.AdditionsClass=F;return e}();v.compose(e);return v});P(e,"Core/Axis/LogarithmicAxis.js",[e["Core/Axis/Axis.js"],e["Core/Utilities.js"]],function(e,v){var q=v.addEvent,C=v.getMagnitude,
D=v.normalizeTickInterval,A=v.pick,F=function(){function e(l){this.axis=l}e.prototype.getLogTickPositions=function(l,k,d,b){var t=this.axis,e=t.len,x=t.options,m=[];b||(this.minorAutoInterval=void 0);if(.5<=l)l=Math.round(l),m=t.getLinearTickPositions(l,k,d);else if(.08<=l){var g=Math.floor(k),n,q=x=void 0;for(e=.3<l?[1,2,4]:.15<l?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];g<d+1&&!q;g++){var O=e.length;for(n=0;n<O&&!q;n++){var z=this.log2lin(this.lin2log(g)*e[n]);z>k&&(!b||x<=d)&&"undefined"!==typeof x&&m.push(x);
x>d&&(q=!0);x=z}}}else k=this.lin2log(k),d=this.lin2log(d),l=b?t.getMinorTickInterval():x.tickInterval,l=A("auto"===l?null:l,this.minorAutoInterval,x.tickPixelInterval/(b?5:1)*(d-k)/((b?e/t.tickPositions.length:e)||1)),l=D(l,void 0,C(l)),m=t.getLinearTickPositions(l,k,d).map(this.log2lin),b||(this.minorAutoInterval=l/5);b||(t.tickInterval=l);return m};e.prototype.lin2log=function(l){return Math.pow(10,l)};e.prototype.log2lin=function(l){return Math.log(l)/Math.LN10};return e}();v=function(){function e(){}
e.compose=function(l){l.keepProps.push("logarithmic");q(l,"init",function(k){var d=this.logarithmic;"logarithmic"!==k.userOptions.type?this.logarithmic=void 0:d||(this.logarithmic=new F(this))});q(l,"afterInit",function(){var k=this.logarithmic;k&&(this.lin2val=function(d){return k.lin2log(d)},this.val2lin=function(d){return k.log2lin(d)})})};return e}();v.compose(e);return v});P(e,"Core/Axis/PlotLineOrBand.js",[e["Core/Axis/Axis.js"],e["Core/Color/Palette.js"],e["Core/Utilities.js"]],function(e,
v,E){var q=E.arrayMax,D=E.arrayMin,A=E.defined,F=E.destroyObjectProperties,B=E.erase,l=E.extend,k=E.fireEvent,d=E.isNumber,b=E.merge,t=E.objectEach,I=E.pick,x=function(){function d(b,d){this.axis=b;d&&(this.options=d,this.id=d.id)}d.prototype.render=function(){k(this,"render");var g=this,d=g.axis,m=d.horiz,l=d.logarithmic,e=g.options,u=e.label,c=g.label,h=e.to,a=e.from,f=e.value,y=A(a)&&A(h),L=A(f),K=g.svgElem,r=!K,G=[],Q=e.color,w=I(e.zIndex,0),H=e.events;G={"class":"highcharts-plot-"+(y?"band ":
"line ")+(e.className||"")};var x={},q=d.chart.renderer,p=y?"bands":"lines";l&&(a=l.log2lin(a),h=l.log2lin(h),f=l.log2lin(f));d.chart.styledMode||(L?(G.stroke=Q||v.neutralColor40,G["stroke-width"]=I(e.width,1),e.dashStyle&&(G.dashstyle=e.dashStyle)):y&&(G.fill=Q||v.highlightColor10,e.borderWidth&&(G.stroke=e.borderColor,G["stroke-width"]=e.borderWidth)));x.zIndex=w;p+="-"+w;(l=d.plotLinesAndBandsGroups[p])||(d.plotLinesAndBandsGroups[p]=l=q.g("plot-"+p).attr(x).add());r&&(g.svgElem=K=q.path().attr(G).add(l));
if(L)G=d.getPlotLinePath({value:f,lineWidth:K.strokeWidth(),acrossPanes:e.acrossPanes});else if(y)G=d.getPlotBandPath(a,h,e);else return;!g.eventsAdded&&H&&(t(H,function(a,c){K.on(c,function(a){H[c].apply(g,[a])})}),g.eventsAdded=!0);(r||!K.d)&&G&&G.length?K.attr({d:G}):K&&(G?(K.show(!0),K.animate({d:G})):K.d&&(K.hide(),c&&(g.label=c=c.destroy())));u&&(A(u.text)||A(u.formatter))&&G&&G.length&&0<d.width&&0<d.height&&!G.isFlat?(u=b({align:m&&y&&"center",x:m?!y&&4:10,verticalAlign:!m&&y&&"middle",y:m?
y?16:10:y?6:-4,rotation:m&&!y&&90},u),this.renderLabel(u,G,y,w)):c&&c.hide();return g};d.prototype.renderLabel=function(b,d,m,k){var g=this.label,n=this.axis.chart.renderer;g||(g={align:b.textAlign||b.align,rotation:b.rotation,"class":"highcharts-plot-"+(m?"band":"line")+"-label "+(b.className||"")},g.zIndex=k,k=this.getLabelText(b),this.label=g=n.text(k,0,0,b.useHTML).attr(g).add(),this.axis.chart.styledMode||g.css(b.style));n=d.xBounds||[d[0][1],d[1][1],m?d[2][1]:d[0][1]];d=d.yBounds||[d[0][2],
d[1][2],m?d[2][2]:d[0][2]];m=D(n);k=D(d);g.align(b,!1,{x:m,y:k,width:q(n)-m,height:q(d)-k});g.show(!0)};d.prototype.getLabelText=function(b){return A(b.formatter)?b.formatter.call(this):b.text};d.prototype.destroy=function(){B(this.axis.plotLinesAndBands,this);delete this.axis;F(this)};return d}();l(e.prototype,{getPlotBandPath:function(b,g,n){void 0===n&&(n=this.options);var m=this.getPlotLinePath({value:g,force:!0,acrossPanes:n.acrossPanes});n=this.getPlotLinePath({value:b,force:!0,acrossPanes:n.acrossPanes});
var k=[],l=this.horiz,u=1;b=!d(this.min)||!d(this.max)||b<this.min&&g<this.min||b>this.max&&g>this.max;if(n&&m){if(b){var c=n.toString()===m.toString();u=0}for(b=0;b<n.length;b+=2){g=n[b];var h=n[b+1],a=m[b],f=m[b+1];"M"!==g[0]&&"L"!==g[0]||"M"!==h[0]&&"L"!==h[0]||"M"!==a[0]&&"L"!==a[0]||"M"!==f[0]&&"L"!==f[0]||(l&&a[1]===g[1]?(a[1]+=u,f[1]+=u):l||a[2]!==g[2]||(a[2]+=u,f[2]+=u),k.push(["M",g[1],g[2]],["L",h[1],h[2]],["L",f[1],f[2]],["L",a[1],a[2]],["Z"]));k.isFlat=c}}return k},addPlotBand:function(b){return this.addPlotBandOrLine(b,
"plotBands")},addPlotLine:function(b){return this.addPlotBandOrLine(b,"plotLines")},addPlotBandOrLine:function(b,g){var d=this,m=new x(this,b),k=this.userOptions;this.visible&&(m=m.render());if(m){this._addedPlotLB||(this._addedPlotLB=!0,(k.plotLines||[]).concat(k.plotBands||[]).forEach(function(b){d.addPlotBandOrLine(b)}));if(g){var l=k[g]||[];l.push(b);k[g]=l}this.plotLinesAndBands.push(m)}return m},removePlotBandOrLine:function(b){var g=this.plotLinesAndBands,d=this.options,m=this.userOptions;
if(g){for(var k=g.length;k--;)g[k].id===b&&g[k].destroy();[d.plotLines||[],m.plotLines||[],d.plotBands||[],m.plotBands||[]].forEach(function(g){for(k=g.length;k--;)(g[k]||{}).id===b&&B(g,g[k])})}},removePlotBand:function(b){this.removePlotBandOrLine(b)},removePlotLine:function(b){this.removePlotBandOrLine(b)}});return x});P(e,"Core/Tooltip.js",[e["Core/FormatUtilities.js"],e["Core/Globals.js"],e["Core/Color/Palette.js"],e["Core/Renderer/RendererRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,
C,D){var q=e.format,F=v.doc,B=D.clamp,l=D.css,k=D.defined,d=D.discardElement,b=D.extend,t=D.fireEvent,I=D.isArray,x=D.isNumber,m=D.isString,g=D.merge,n=D.pick,J=D.splat,O=D.syncTimeout,z=D.timeUnits;"";e=function(){function u(c,h){this.container=void 0;this.crosshairs=[];this.distance=0;this.isHidden=!0;this.isSticky=!1;this.now={};this.options={};this.outside=!1;this.chart=c;this.init(c,h)}u.prototype.applyFilter=function(){var c=this.chart;c.renderer.definition({tagName:"filter",attributes:{id:"drop-shadow-"+
c.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"}}]}]});c.renderer.definition({tagName:"style",textContent:".highcharts-tooltip-"+c.index+"{filter:url(#drop-shadow-"+c.index+")}"})};u.prototype.bodyFormatter=
function(c){return c.map(function(c){var a=c.series.tooltipOptions;return(a[(c.point.formatPrefix||"point")+"Formatter"]||c.point.tooltipFormatter).call(c.point,a[(c.point.formatPrefix||"point")+"Format"]||"")})};u.prototype.cleanSplit=function(c){this.chart.series.forEach(function(h){var a=h&&h.tt;a&&(!a.isActive||c?h.tt=a.destroy():a.isActive=!1)})};u.prototype.defaultFormatter=function(c){var h=this.points||J(this);var a=[c.tooltipFooterHeaderFormatter(h[0])];a=a.concat(c.bodyFormatter(h));a.push(c.tooltipFooterHeaderFormatter(h[0],
!0));return a};u.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(),d(this.container));D.clearTimeout(this.hideTimer);D.clearTimeout(this.tooltipTimeout)};u.prototype.getAnchor=function(c,h){var a=this.chart;var f=a.pointer;var b=a.inverted,g=a.plotTop,d=a.plotLeft,r=0,n=0,m,w;c=J(c);this.followPointer&&h?("undefined"===typeof h.chartX&&(h=f.normalize(h)),
f=[h.chartX-d,h.chartY-g]):c[0].tooltipPos?f=c[0].tooltipPos:(c.forEach(function(c){m=c.series.yAxis;w=c.series.xAxis;r+=c.plotX||0;n+=c.plotLow?(c.plotLow+(c.plotHigh||0))/2:c.plotY||0;w&&m&&(b?(r+=g+a.plotHeight-w.len-w.pos,n+=d+a.plotWidth-m.len-m.pos):(r+=w.pos-d,n+=m.pos-g))}),r/=c.length,n/=c.length,f=[b?a.plotWidth-n:r,b?a.plotHeight-r:n],this.shared&&1<c.length&&h&&(b?f[0]=h.chartX-d:f[1]=h.chartY-g));return f.map(Math.round)};u.prototype.getDateFormat=function(c,h,a,f){var b=this.chart.time,
g=b.dateFormat("%m-%d %H:%M:%S.%L",h),d={millisecond:15,second:12,minute:9,hour:6,day:3},r="millisecond";for(n in z){if(c===z.week&&+b.dateFormat("%w",h)===a&&"00:00:00.000"===g.substr(6)){var n="week";break}if(z[n]>c){n=r;break}if(d[n]&&g.substr(d[n])!=="01-01 00:00:00.000".substr(d[n]))break;"week"!==n&&(r=n)}if(n)var m=b.resolveDTLFormat(f[n]).main;return m};u.prototype.getLabel=function(){var c=this,h=this.chart.renderer,a=this.chart.styledMode,f=this.options,b="tooltip"+(k(f.className)?" "+f.className:
""),g=f.style&&f.style.pointerEvents||(!this.followPointer&&f.stickOnContact?"auto":"none"),d,r=function(){c.inContact=!0},n=function(){var a=c.chart.hoverSeries;c.inContact=!1;if(a&&a.onMouseOut)a.onMouseOut()};if(!this.label){if(this.outside){var m=this.chart.options.chart.style,w=C.getRendererType();this.container=d=v.doc.createElement("div");d.className="highcharts-tooltip-container";l(d,{position:"absolute",top:"1px",pointerEvents:g,zIndex:Math.max(this.options.style&&this.options.style.zIndex||
0,(m&&m.zIndex||0)+3)});v.doc.body.appendChild(d);this.renderer=h=new w(d,0,0,m,void 0,void 0,h.styledMode)}this.split?this.label=h.g(b):(this.label=h.label("",0,0,f.shape||"callout",null,null,f.useHTML,null,b).attr({padding:f.padding,r:f.borderRadius}),a||this.label.attr({fill:f.backgroundColor,"stroke-width":f.borderWidth}).css(f.style).css({pointerEvents:g}).shadow(f.shadow));a&&(this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index));if(c.outside&&!c.split){var u=this.label,
e=u.xSetter,t=u.ySetter;u.xSetter=function(a){e.call(u,c.distance);d.style.left=a+"px"};u.ySetter=function(a){t.call(u,c.distance);d.style.top=a+"px"}}this.label.on("mouseenter",r).on("mouseleave",n).attr({zIndex:8}).add()}return this.label};u.prototype.getPosition=function(c,h,a){var f=this.chart,b=this.distance,g={},d=f.inverted&&a.h||0,r,m=this.outside,k=m?F.documentElement.clientWidth-2*b:f.chartWidth,w=m?Math.max(F.body.scrollHeight,F.documentElement.scrollHeight,F.body.offsetHeight,F.documentElement.offsetHeight,
F.documentElement.clientHeight):f.chartHeight,l=f.pointer.getChartPosition(),u=function(p){var g="x"===p;return[p,g?k:w,g?c:h].concat(m?[g?c*l.scaleX:h*l.scaleY,g?l.left-b+(a.plotX+f.plotLeft)*l.scaleX:l.top-b+(a.plotY+f.plotTop)*l.scaleY,0,g?k:w]:[g?c:h,g?a.plotX+f.plotLeft:a.plotY+f.plotTop,g?f.plotLeft:f.plotTop,g?f.plotLeft+f.plotWidth:f.plotTop+f.plotHeight])},e=u("y"),p=u("x"),t=!this.followPointer&&n(a.ttBelow,!f.inverted===!!a.negative),z=function(a,c,f,h,p,r,y){var w=m?"y"===a?b*l.scaleY:
b*l.scaleX:b,n=(f-h)/2,k=h<p-b,G=p+b+h<c,u=p-w-f+n;p=p+w-n;if(t&&G)g[a]=p;else if(!t&&k)g[a]=u;else if(k)g[a]=Math.min(y-h,0>u-d?u:u-d);else if(G)g[a]=Math.max(r,p+d+f>c?p:p+d);else return!1},x=function(a,c,f,h,p){var r;p<b||p>c-b?r=!1:g[a]=p<f/2?1:p>c-h/2?c-h-2:p-f/2;return r},q=function(a){var c=e;e=p;p=c;r=a},R=function(){!1!==z.apply(0,e)?!1!==x.apply(0,p)||r||(q(!0),R()):r?g.x=g.y=0:(q(!0),R())};(f.inverted||1<this.len)&&q();R();return g};u.prototype.getXDateFormat=function(c,h,a){h=h.dateTimeLabelFormats;
var f=a&&a.closestPointRange;return(f?this.getDateFormat(f,c.x,a.options.startOfWeek,h):h.day)||h.year};u.prototype.hide=function(c){var h=this;D.clearTimeout(this.hideTimer);c=n(c,this.options.hideDelay,500);this.isHidden||(this.hideTimer=O(function(){h.getLabel().fadeOut(c?void 0:c);h.isHidden=!0},c))};u.prototype.init=function(c,h){this.chart=c;this.options=h;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.split=h.split&&!c.inverted&&!c.polar;this.shared=h.shared||this.split;this.outside=
n(h.outside,!(!c.scrollablePixelsX&&!c.scrollablePixelsY))};u.prototype.isStickyOnContact=function(){return!(this.followPointer||!this.options.stickOnContact||!this.inContact)};u.prototype.move=function(c,h,a,f){var g=this,d=g.now,n=!1!==g.options.animation&&!g.isHidden&&(1<Math.abs(c-d.x)||1<Math.abs(h-d.y)),r=g.followPointer||1<g.len;b(d,{x:n?(2*d.x+c)/3:c,y:n?(d.y+h)/2:h,anchorX:r?void 0:n?(2*d.anchorX+a)/3:a,anchorY:r?void 0:n?(d.anchorY+f)/2:f});g.getLabel().attr(d);g.drawTracker();n&&(D.clearTimeout(this.tooltipTimeout),
this.tooltipTimeout=setTimeout(function(){g&&g.move(c,h,a,f)},32))};u.prototype.refresh=function(c,h){var a=this.chart,f=this.options,b=J(c),g=b[0],d={},r=[],m=f.formatter||this.defaultFormatter;d=this.shared;var k=a.styledMode;if(f.enabled){D.clearTimeout(this.hideTimer);this.followPointer=!this.split&&g.series.tooltipOptions.followPointer;var w=this.getAnchor(c,h);var l=w[0];var u=w[1];!d||!I(c)&&c.series&&c.series.noSharedTooltip?d=g.getLabelConfig():(a.pointer.applyInactiveState(b),b.forEach(function(a){a.setState("hover");
r.push(a.getLabelConfig())}),d={x:g.category,y:g.y},d.points=r);this.len=r.length;c=m.call(d,this);m=g.series;this.distance=n(m.tooltipOptions.distance,16);if(!1===c)this.hide();else{if(this.split)this.renderSplit(c,b);else if(b=l,d=u,h&&a.pointer.isDirectTouch&&(b=h.chartX-a.plotLeft,d=h.chartY-a.plotTop),a.polar||!1===m.options.clip||m.shouldShowTooltip(b,d))h=this.getLabel(),f.style.width&&!k||h.css({width:this.chart.spacingBox.width+"px"}),h.attr({text:c&&c.join?c.join(""):c}),h.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+
n(g.colorIndex,m.colorIndex)),k||h.attr({stroke:f.borderColor||g.color||m.color||E.neutralColor60}),this.updatePosition({plotX:l,plotY:u,negative:g.negative,ttBelow:g.ttBelow,h:w[2]||0});else{this.hide();return}this.isHidden&&this.label&&this.label.attr({opacity:1}).show();this.isHidden=!1}t(this,"refresh")}};u.prototype.renderSplit=function(c,h){function a(a,c,h,b,p){void 0===p&&(p=!0);h?(c=ba?0:da,a=B(a-b/2,V.left,V.right-b-(f.outside?A:0))):(c-=D,a=p?a-b-I:a+I,a=B(a,p?a:V.left,V.right));return{x:a,
y:c}}var f=this,g=f.chart,d=f.chart,k=d.chartWidth,r=d.chartHeight,l=d.plotHeight,u=d.plotLeft,w=d.plotTop,e=d.pointer,t=d.scrollablePixelsY;t=void 0===t?0:t;var z=d.scrollablePixelsX,p=d.scrollingContainer;p=void 0===p?{scrollLeft:0,scrollTop:0}:p;var x=p.scrollLeft;p=p.scrollTop;var q=d.styledMode,I=f.distance,J=f.options,R=f.options.positioner,V=f.outside&&"number"!==typeof z?F.documentElement.getBoundingClientRect():{left:x,right:x+k,top:p,bottom:p+r},ca=f.getLabel(),O=this.renderer||g.renderer,
ba=!(!g.xAxis[0]||!g.xAxis[0].opposite);g=e.getChartPosition();var A=g.left;g=g.top;var D=w+p,C=0,da=l-t;m(c)&&(c=[!1,c]);c=c.slice(0,h.length+1).reduce(function(c,b,p){if(!1!==b&&""!==b){p=h[p-1]||{isHeader:!0,plotX:h[0].plotX,plotY:l,series:{}};var g=p.isHeader,d=g?f:p.series;b=b.toString();var r=d.tt,y=p.isHeader;var m=p.series;var k="highcharts-color-"+n(p.colorIndex,m.colorIndex,"none");r||(r={padding:J.padding,r:J.borderRadius},q||(r.fill=J.backgroundColor,r["stroke-width"]=J.borderWidth),r=
O.label("",0,0,J[y?"headerShape":"shape"]||"callout",void 0,void 0,J.useHTML).addClass((y?"highcharts-tooltip-header ":"")+"highcharts-tooltip-box "+k).attr(r).add(ca));r.isActive=!0;r.attr({text:b});q||r.css(J.style).shadow(J.shadow).attr({stroke:J.borderColor||p.color||m.color||E.neutralColor80});d=d.tt=r;y=d.getBBox();b=y.width+d.strokeWidth();g&&(C=y.height,da+=C,ba&&(D-=C));m=p.plotX;m=void 0===m?0:m;k=p.plotY;k=void 0===k?0:k;r=p.series;if(p.isHeader){m=u+m;var G=w+l/2}else{var e=r.xAxis,H=
r.yAxis;m=e.pos+B(m,-I,e.len+I);r.shouldShowTooltip(0,H.pos-w+k,{ignoreX:!0})&&(G=H.pos+k)}m=B(m,V.left-I,V.right+I);"number"===typeof G?(y=y.height+1,k=R?R.call(f,b,y,p):a(m,G,g,b),c.push({align:R?0:void 0,anchorX:m,anchorY:G,boxWidth:b,point:p,rank:n(k.rank,g?1:0),size:y,target:k.y,tt:d,x:k.x})):d.isActive=!1}return c},[]);!R&&c.some(function(a){var c=(f.outside?A:0)+a.anchorX;return c<V.left&&c+a.boxWidth<V.right?!0:c<A-V.left+a.boxWidth&&V.right-c>c})&&(c=c.map(function(c){var f=a(c.anchorX,c.anchorY,
c.point.isHeader,c.boxWidth,!1);return b(c,{target:f.y,x:f.x})}));f.cleanSplit();v.distribute(c,da);var Y=A,P=A;c.forEach(function(a){var c=a.x,b=a.boxWidth;a=a.isHeader;a||(f.outside&&A+c<Y&&(Y=A+c),!a&&f.outside&&Y+b>P&&(P=A+c))});c.forEach(function(a){var c=a.x,b=a.anchorX,h=a.pos,p=a.point.isHeader;h={visibility:"undefined"===typeof h?"hidden":"inherit",x:c,y:h+D,anchorX:b,anchorY:a.anchorY};if(f.outside&&c<b){var g=A-Y;0<g&&(p||(h.x=c+g,h.anchorX=b+g),p&&(h.x=(P-Y)/2,h.anchorX=b+g))}a.tt.attr(h)});
c=f.container;t=f.renderer;f.outside&&c&&t&&(d=ca.getBBox(),t.setSize(d.width+d.x,d.height+d.y,!1),c.style.left=Y+"px",c.style.top=g+"px")};u.prototype.drawTracker=function(){if(this.followPointer||!this.options.stickOnContact)this.tracker&&this.tracker.destroy();else{var c=this.chart,b=this.label,a=c.hoverPoint;if(b&&a){var f={x:0,y:0,width:0,height:0};a=this.getAnchor(a);var g=b.getBBox();a[0]+=c.plotLeft-b.translateX;a[1]+=c.plotTop-b.translateY;f.x=Math.min(0,a[0]);f.y=Math.min(0,a[1]);f.width=
0>a[0]?Math.max(Math.abs(a[0]),g.width-a[0]):Math.max(Math.abs(a[0]),g.width);f.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(f):(this.tracker=b.renderer.rect(f).addClass("highcharts-tracker").add(b),c.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}}};u.prototype.styledModeFormat=function(c){return c.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,
'class="highcharts-color-{$1.colorIndex}"')};u.prototype.tooltipFooterHeaderFormatter=function(c,b){var a=b?"footer":"header",f=c.series,h=f.tooltipOptions,g=h.xDateFormat,d=f.xAxis,r=d&&"datetime"===d.options.type&&x(c.key),n=h[a+"Format"];b={isFooter:b,labelConfig:c};t(this,"headerFormatter",b,function(a){r&&!g&&(g=this.getXDateFormat(c,h,d));r&&g&&(c.point&&c.point.tooltipDateKeys||["key"]).forEach(function(a){n=n.replace("{point."+a+"}","{point."+a+":"+g+"}")});f.chart.styledMode&&(n=this.styledModeFormat(n));
a.text=q(n,{point:c,series:f},this.chart)});return b.text};u.prototype.update=function(c){this.destroy();g(!0,this.chart.options.tooltip.userOptions,c);this.init(this.chart,g(!0,this.options,c))};u.prototype.updatePosition=function(c){var b=this.chart,a=b.pointer,f=this.getLabel(),g=c.plotX+b.plotLeft;b=c.plotY+b.plotTop;a=a.getChartPosition();c=(this.options.positioner||this.getPosition).call(this,f.width,f.height,c);if(this.outside){var d=(this.options.borderWidth||0)+2*this.distance;this.renderer.setSize(f.width+
d,f.height+d,!1);if(1!==a.scaleX||1!==a.scaleY)l(this.container,{transform:"scale("+a.scaleX+", "+a.scaleY+")"}),g*=a.scaleX,b*=a.scaleY;g+=a.left-c.x;b+=a.top-c.y}this.move(Math.round(c.x),Math.round(c.y||0),g,b)};return u}();v.Tooltip=e;return v.Tooltip});P(e,"Core/Pointer.js",[e["Core/Color/Color.js"],e["Core/Globals.js"],e["Core/Color/Palette.js"],e["Core/Tooltip.js"],e["Core/Utilities.js"]],function(e,v,E,C,D){var q=e.parse,F=v.charts,B=v.noop,l=D.addEvent,k=D.attr,d=D.css,b=D.defined,t=D.extend,
I=D.find,x=D.fireEvent,m=D.isNumber,g=D.isObject,n=D.objectEach,J=D.offset,O=D.pick,z=D.splat;e=function(){function u(c,b){this.lastValidTouch={};this.pinchDown=[];this.runChartClick=!1;this.eventsToUnbind=[];this.chart=c;this.hasDragged=!1;this.options=b;this.init(c,b)}u.prototype.applyInactiveState=function(c){var b=[],a;(c||[]).forEach(function(c){a=c.series;b.push(a);a.linkedParent&&b.push(a.linkedParent);a.linkedSeries&&(b=b.concat(a.linkedSeries));a.navigatorSeries&&b.push(a.navigatorSeries)});
this.chart.series.forEach(function(a){-1===b.indexOf(a)?a.setState("inactive",!0):a.options.inactiveOtherPoints&&a.setAllPointsToState("inactive")})};u.prototype.destroy=function(){var c=this;this.eventsToUnbind.forEach(function(c){return c()});this.eventsToUnbind=[];v.chartCount||(u.unbindDocumentMouseUp&&(u.unbindDocumentMouseUp=u.unbindDocumentMouseUp()),u.unbindDocumentTouchEnd&&(u.unbindDocumentTouchEnd=u.unbindDocumentTouchEnd()));clearInterval(c.tooltipTimeout);n(c,function(b,a){c[a]=void 0})};
u.prototype.drag=function(c){var b=this.chart,a=b.options.chart,f=this.zoomHor,d=this.zoomVert,n=b.plotLeft,m=b.plotTop,r=b.plotWidth,k=b.plotHeight,l=this.mouseDownX||0,w=this.mouseDownY||0,u=g(a.panning)?a.panning&&a.panning.enabled:a.panning,e=a.panKey&&c[a.panKey+"Key"],t=c.chartX,p=c.chartY,z=this.selectionMarker;if(!z||!z.touch)if(t<n?t=n:t>n+r&&(t=n+r),p<m?p=m:p>m+k&&(p=m+k),this.hasDragged=Math.sqrt(Math.pow(l-t,2)+Math.pow(w-p,2)),10<this.hasDragged){var x=b.isInsidePlot(l-n,w-m,{visiblePlotOnly:!0});
b.hasCartesianSeries&&(this.zoomX||this.zoomY)&&x&&!e&&!z&&(this.selectionMarker=z=b.renderer.rect(n,m,f?1:r,d?1:k,0).attr({"class":"highcharts-selection-marker",zIndex:7}).add(),b.styledMode||z.attr({fill:a.selectionMarkerFill||q(E.highlightColor80).setOpacity(.25).get()}));z&&f&&(f=t-l,z.attr({width:Math.abs(f),x:(0<f?0:f)+l}));z&&d&&(f=p-w,z.attr({height:Math.abs(f),y:(0<f?0:f)+w}));x&&!z&&u&&b.pan(c,a.panning)}};u.prototype.dragStart=function(c){var b=this.chart;b.mouseIsDown=c.type;b.cancelClick=
!1;b.mouseDownX=this.mouseDownX=c.chartX;b.mouseDownY=this.mouseDownY=c.chartY};u.prototype.drop=function(c){var h=this,a=this.chart,f=this.hasPinched;if(this.selectionMarker){var g={originalEvent:c,xAxis:[],yAxis:[]},n=this.selectionMarker,k=n.attr?n.attr("x"):n.x,r=n.attr?n.attr("y"):n.y,l=n.attr?n.attr("width"):n.width,u=n.attr?n.attr("height"):n.height,w;if(this.hasDragged||f)a.axes.forEach(function(a){if(a.zoomEnabled&&b(a.min)&&(f||h[{xAxis:"zoomX",yAxis:"zoomY"}[a.coll]])&&m(k)&&m(r)){var d=
a.horiz,y="touchend"===c.type?a.minPixelPadding:0,p=a.toValue((d?k:r)+y);d=a.toValue((d?k+l:r+u)-y);g[a.coll].push({axis:a,min:Math.min(p,d),max:Math.max(p,d)});w=!0}}),w&&x(a,"selection",g,function(c){a.zoom(t(c,f?{animation:!1}:null))});m(a.index)&&(this.selectionMarker=this.selectionMarker.destroy());f&&this.scaleGroups()}a&&m(a.index)&&(d(a.container,{cursor:a._cursor}),a.cancelClick=10<this.hasDragged,a.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])};u.prototype.findNearestKDPoint=
function(c,b,a){var f=this.chart,h=f.hoverPoint;f=f.tooltip;if(h&&f&&f.isStickyOnContact())return h;var d;c.forEach(function(c){var f=!(c.noSharedTooltip&&b)&&0>c.options.findNearestPointBy.indexOf("y");c=c.searchPoint(a,f);if((f=g(c,!0)&&c.series)&&!(f=!g(d,!0))){f=d.distX-c.distX;var h=d.dist-c.dist,y=(c.series.group&&c.series.group.zIndex)-(d.series.group&&d.series.group.zIndex);f=0<(0!==f&&b?f:0!==h?h:0!==y?y:d.series.index>c.series.index?-1:1)}f&&(d=c)});return d};u.prototype.getChartCoordinatesFromPoint=
function(c,b){var a=c.series,f=a.xAxis;a=a.yAxis;var h=c.shapeArgs;if(f&&a){var g=O(c.clientX,c.plotX),d=c.plotY||0;c.isNode&&h&&m(h.x)&&m(h.y)&&(g=h.x,d=h.y);return b?{chartX:a.len+a.pos-d,chartY:f.len+f.pos-g}:{chartX:g+f.pos,chartY:d+a.pos}}if(h&&h.x&&h.y)return{chartX:h.x,chartY:h.y}};u.prototype.getChartPosition=function(){if(this.chartPosition)return this.chartPosition;var c=this.chart.container,b=J(c);this.chartPosition={left:b.left,top:b.top,scaleX:1,scaleY:1};var a=c.offsetWidth;c=c.offsetHeight;
2<a&&2<c&&(this.chartPosition.scaleX=b.width/a,this.chartPosition.scaleY=b.height/c);return this.chartPosition};u.prototype.getCoordinates=function(c){var b={xAxis:[],yAxis:[]};this.chart.axes.forEach(function(a){b[a.isXAxis?"xAxis":"yAxis"].push({axis:a,value:a.toValue(c[a.horiz?"chartX":"chartY"])})});return b};u.prototype.getHoverData=function(c,b,a,f,d,n){var h=[];f=!(!f||!c);var r={chartX:n?n.chartX:void 0,chartY:n?n.chartY:void 0,shared:d};x(this,"beforeGetHoverData",r);var y=b&&!b.stickyTracking?
[b]:a.filter(function(a){return r.filter?r.filter(a):a.visible&&!(!d&&a.directTouch)&&O(a.options.enableMouseTracking,!0)&&a.stickyTracking});var m=f||!n?c:this.findNearestKDPoint(y,d,n);b=m&&m.series;m&&(d&&!b.noSharedTooltip?(y=a.filter(function(a){return r.filter?r.filter(a):a.visible&&!(!d&&a.directTouch)&&O(a.options.enableMouseTracking,!0)&&!a.noSharedTooltip}),y.forEach(function(a){var c=I(a.points,function(a){return a.x===m.x&&!a.isNull});g(c)&&(a.chart.isBoosting&&(c=a.getPoint(c)),h.push(c))})):
h.push(m));r={hoverPoint:m};x(this,"afterGetHoverData",r);return{hoverPoint:r.hoverPoint,hoverSeries:b,hoverPoints:h}};u.prototype.getPointFromEvent=function(c){c=c.target;for(var b;c&&!b;)b=c.point,c=c.parentNode;return b};u.prototype.onTrackerMouseOut=function(c){c=c.relatedTarget||c.toElement;var b=this.chart.hoverSeries;this.isDirectTouch=!1;if(!(!b||!c||b.stickyTracking||this.inClass(c,"highcharts-tooltip")||this.inClass(c,"highcharts-series-"+b.index)&&this.inClass(c,"highcharts-tracker")))b.onMouseOut()};
u.prototype.inClass=function(c,b){for(var a;c;){if(a=k(c,"class")){if(-1!==a.indexOf(b))return!0;if(-1!==a.indexOf("highcharts-container"))return!1}c=c.parentNode}};u.prototype.init=function(c,b){this.options=b;this.chart=c;this.runChartClick=!(!b.chart.events||!b.chart.events.click);this.pinchDown=[];this.lastValidTouch={};C&&(c.tooltip=new C(c,b.tooltip),this.followTouchMove=O(b.tooltip.followTouchMove,!0));this.setDOMEvents()};u.prototype.normalize=function(c,b){var a=c.touches,f=a?a.length?a.item(0):
O(a.changedTouches,c.changedTouches)[0]:c;b||(b=this.getChartPosition());a=f.pageX-b.left;f=f.pageY-b.top;a/=b.scaleX;f/=b.scaleY;return t(c,{chartX:Math.round(a),chartY:Math.round(f)})};u.prototype.onContainerClick=function(c){var b=this.chart,a=b.hoverPoint;c=this.normalize(c);var f=b.plotLeft,g=b.plotTop;b.cancelClick||(a&&this.inClass(c.target,"highcharts-tracker")?(x(a.series,"click",t(c,{point:a})),b.hoverPoint&&a.firePointEvent("click",c)):(t(c,this.getCoordinates(c)),b.isInsidePlot(c.chartX-
f,c.chartY-g,{visiblePlotOnly:!0})&&x(b,"click",c)))};u.prototype.onContainerMouseDown=function(c){var b=1===((c.buttons||c.button)&1);c=this.normalize(c);if(v.isFirefox&&0!==c.button)this.onContainerMouseMove(c);if("undefined"===typeof c.button||b)this.zoomOption(c),b&&c.preventDefault&&c.preventDefault(),this.dragStart(c)};u.prototype.onContainerMouseLeave=function(c){var b=F[O(u.hoverChartIndex,-1)],a=this.chart.tooltip;c=this.normalize(c);b&&(c.relatedTarget||c.toElement)&&(b.pointer.reset(),
b.pointer.chartPosition=void 0);a&&!a.isHidden&&this.reset()};u.prototype.onContainerMouseEnter=function(c){delete this.chartPosition};u.prototype.onContainerMouseMove=function(c){var b=this.chart;c=this.normalize(c);this.setHoverChartIndex();c.preventDefault||(c.returnValue=!1);("mousedown"===b.mouseIsDown||this.touchSelect(c))&&this.drag(c);b.openMenu||!this.inClass(c.target,"highcharts-tracker")&&!b.isInsidePlot(c.chartX-b.plotLeft,c.chartY-b.plotTop,{visiblePlotOnly:!0})||(this.inClass(c.target,
"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(c))};u.prototype.onDocumentTouchEnd=function(c){var b=F[O(u.hoverChartIndex,-1)];b&&b.pointer.drop(c)};u.prototype.onContainerTouchMove=function(c){if(this.touchSelect(c))this.onContainerMouseMove(c);else this.touch(c)};u.prototype.onContainerTouchStart=function(c){if(this.touchSelect(c))this.onContainerMouseDown(c);else this.zoomOption(c),this.touch(c,!0)};u.prototype.onDocumentMouseMove=function(c){var b=this.chart,a=this.chartPosition;
c=this.normalize(c,a);var f=b.tooltip;!a||f&&f.isStickyOnContact()||b.isInsidePlot(c.chartX-b.plotLeft,c.chartY-b.plotTop,{visiblePlotOnly:!0})||this.inClass(c.target,"highcharts-tracker")||this.reset()};u.prototype.onDocumentMouseUp=function(c){var b=F[O(u.hoverChartIndex,-1)];b&&b.pointer.drop(c)};u.prototype.pinch=function(c){var b=this,a=b.chart,f=b.pinchDown,g=c.touches||[],d=g.length,n=b.lastValidTouch,r=b.hasZoom,m={},k=1===d&&(b.inClass(c.target,"highcharts-tracker")&&a.runTrackerClick||b.runChartClick),
w={},l=b.selectionMarker;1<d&&(b.initiated=!0);r&&b.initiated&&!k&&!1!==c.cancelable&&c.preventDefault();[].map.call(g,function(a){return b.normalize(a)});"touchstart"===c.type?([].forEach.call(g,function(a,c){f[c]={chartX:a.chartX,chartY:a.chartY}}),n.x=[f[0].chartX,f[1]&&f[1].chartX],n.y=[f[0].chartY,f[1]&&f[1].chartY],a.axes.forEach(function(c){if(c.zoomEnabled){var f=a.bounds[c.horiz?"h":"v"],b=c.minPixelPadding,g=c.toPixels(Math.min(O(c.options.min,c.dataMin),c.dataMin)),d=c.toPixels(Math.max(O(c.options.max,
c.dataMax),c.dataMax)),h=Math.max(g,d);f.min=Math.min(c.pos,Math.min(g,d)-b);f.max=Math.max(c.pos+c.len,h+b)}}),b.res=!0):b.followTouchMove&&1===d?this.runPointActions(b.normalize(c)):f.length&&(l||(b.selectionMarker=l=t({destroy:B,touch:!0},a.plotBox)),b.pinchTranslate(f,g,m,l,w,n),b.hasPinched=r,b.scaleGroups(m,w),b.res&&(b.res=!1,this.reset(!1,0)))};u.prototype.pinchTranslate=function(c,b,a,f,g,d){this.zoomHor&&this.pinchTranslateDirection(!0,c,b,a,f,g,d);this.zoomVert&&this.pinchTranslateDirection(!1,
c,b,a,f,g,d)};u.prototype.pinchTranslateDirection=function(c,b,a,f,g,d,n,r){var h=this.chart,y=c?"x":"y",w=c?"X":"Y",m="chart"+w,k=c?"width":"height",l=h["plot"+(c?"Left":"Top")],p=h.inverted,u=h.bounds[c?"h":"v"],e=1===b.length,t=b[0][m],z=!e&&b[1][m];b=function(){"number"===typeof q&&20<Math.abs(t-z)&&(K=r||Math.abs(x-q)/Math.abs(t-z));L=(l-x)/K+t;R=h["plot"+(c?"Width":"Height")]/K};var R,L,K=r||1,x=a[0][m],q=!e&&a[1][m];b();a=L;if(a<u.min){a=u.min;var I=!0}else a+R>u.max&&(a=u.max-R,I=!0);I?(x-=
.8*(x-n[y][0]),"number"===typeof q&&(q-=.8*(q-n[y][1])),b()):n[y]=[x,q];p||(d[y]=L-l,d[k]=R);d=p?1/K:K;g[k]=R;g[y]=a;f[p?c?"scaleY":"scaleX":"scale"+w]=K;f["translate"+w]=d*l+(x-d*t)};u.prototype.reset=function(c,b){var a=this.chart,f=a.hoverSeries,g=a.hoverPoint,d=a.hoverPoints,h=a.tooltip,r=h&&h.shared?d:g;c&&r&&z(r).forEach(function(a){a.series.isCartesian&&"undefined"===typeof a.plotX&&(c=!1)});if(c)h&&r&&z(r).length&&(h.refresh(r),h.shared&&d?d.forEach(function(a){a.setState(a.state,!0);a.series.isCartesian&&
(a.series.xAxis.crosshair&&a.series.xAxis.drawCrosshair(null,a),a.series.yAxis.crosshair&&a.series.yAxis.drawCrosshair(null,a))}):g&&(g.setState(g.state,!0),a.axes.forEach(function(a){a.crosshair&&g.series[a.coll]===a&&a.drawCrosshair(null,g)})));else{if(g)g.onMouseOut();d&&d.forEach(function(a){a.setState()});if(f)f.onMouseOut();h&&h.hide(b);this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove());a.axes.forEach(function(a){a.hideCrosshair()});this.hoverX=a.hoverPoints=a.hoverPoint=null}};
u.prototype.runPointActions=function(c,b){var a=this.chart,f=a.tooltip&&a.tooltip.options.enabled?a.tooltip:void 0,g=f?f.shared:!1,d=b||a.hoverPoint,h=d&&d.series||a.hoverSeries;b=this.getHoverData(d,h,a.series,(!c||"touchmove"!==c.type)&&(!!b||h&&h.directTouch&&this.isDirectTouch),g,c);d=b.hoverPoint;h=b.hoverSeries;var r=b.hoverPoints;b=h&&h.tooltipOptions.followPointer&&!h.tooltipOptions.split;g=g&&h&&!h.noSharedTooltip;if(d&&(d!==a.hoverPoint||f&&f.isHidden)){(a.hoverPoints||[]).forEach(function(a){-1===
r.indexOf(a)&&a.setState()});if(a.hoverSeries!==h)h.onMouseOver();this.applyInactiveState(r);(r||[]).forEach(function(a){a.setState("hover")});a.hoverPoint&&a.hoverPoint.firePointEvent("mouseOut");if(!d.series)return;a.hoverPoints=r;a.hoverPoint=d;d.firePointEvent("mouseOver");f&&f.refresh(g?r:d,c)}else b&&f&&!f.isHidden&&(d=f.getAnchor([{}],c),a.isInsidePlot(d[0],d[1],{visiblePlotOnly:!0})&&f.updatePosition({plotX:d[0],plotY:d[1]}));this.unDocMouseMove||(this.unDocMouseMove=l(a.container.ownerDocument,
"mousemove",function(a){var c=F[u.hoverChartIndex];if(c)c.pointer.onDocumentMouseMove(a)}),this.eventsToUnbind.push(this.unDocMouseMove));a.axes.forEach(function(b){var f=O((b.crosshair||{}).snap,!0),g;f&&((g=a.hoverPoint)&&g.series[b.coll]===b||(g=I(r,function(a){return a.series[b.coll]===b})));g||!f?b.drawCrosshair(c,g):b.hideCrosshair()})};u.prototype.scaleGroups=function(c,b){var a=this.chart;a.series.forEach(function(f){var g=c||f.getPlotBox();f.xAxis&&f.xAxis.zoomEnabled&&f.group&&(f.group.attr(g),
f.markerGroup&&(f.markerGroup.attr(g),f.markerGroup.clip(b?a.clipRect:null)),f.dataLabelsGroup&&f.dataLabelsGroup.attr(g))});a.clipRect.attr(b||a.clipBox)};u.prototype.setDOMEvents=function(){var c=this,b=this.chart.container,a=b.ownerDocument;b.onmousedown=this.onContainerMouseDown.bind(this);b.onmousemove=this.onContainerMouseMove.bind(this);b.onclick=this.onContainerClick.bind(this);this.eventsToUnbind.push(l(b,"mouseenter",this.onContainerMouseEnter.bind(this)));this.eventsToUnbind.push(l(b,"mouseleave",
this.onContainerMouseLeave.bind(this)));u.unbindDocumentMouseUp||(u.unbindDocumentMouseUp=l(a,"mouseup",this.onDocumentMouseUp.bind(this)));for(var f=this.chart.renderTo.parentElement;f&&"BODY"!==f.tagName;)this.eventsToUnbind.push(l(f,"scroll",function(){delete c.chartPosition})),f=f.parentElement;v.hasTouch&&(this.eventsToUnbind.push(l(b,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1})),this.eventsToUnbind.push(l(b,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),
u.unbindDocumentTouchEnd||(u.unbindDocumentTouchEnd=l(a,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})))};u.prototype.setHoverChartIndex=function(){var c=this.chart,b=v.charts[O(u.hoverChartIndex,-1)];if(b&&b!==c)b.pointer.onContainerMouseLeave({relatedTarget:!0});b&&b.mouseIsDown||(u.hoverChartIndex=c.index)};u.prototype.touch=function(c,b){var a=this.chart,f;this.setHoverChartIndex();if(1===c.touches.length)if(c=this.normalize(c),(f=a.isInsidePlot(c.chartX-a.plotLeft,c.chartY-a.plotTop,
{visiblePlotOnly:!0}))&&!a.openMenu){b&&this.runPointActions(c);if("touchmove"===c.type){b=this.pinchDown;var g=b[0]?4<=Math.sqrt(Math.pow(b[0].chartX-c.chartX,2)+Math.pow(b[0].chartY-c.chartY,2)):!1}O(g,!0)&&this.pinch(c)}else b&&this.reset();else 2===c.touches.length&&this.pinch(c)};u.prototype.touchSelect=function(c){return!(!this.chart.options.chart.zoomBySingleTouch||!c.touches||1!==c.touches.length)};u.prototype.zoomOption=function(c){var b=this.chart,a=b.options.chart;b=b.inverted;var f=a.zoomType||
"";/touch/.test(c.type)&&(f=O(a.pinchType,f));this.zoomX=c=/x/.test(f);this.zoomY=a=/y/.test(f);this.zoomHor=c&&!b||a&&b;this.zoomVert=a&&!b||c&&b;this.hasZoom=c||a};return u}();"";return e});P(e,"Core/MSPointer.js",[e["Core/Globals.js"],e["Core/Pointer.js"],e["Core/Utilities.js"]],function(e,v,E){function q(){var b=[];b.item=function(b){return this[b]};t(x,function(g){b.push({pageX:g.pageX,pageY:g.pageY,target:g.target})});return b}function D(b,d,m,k){var g=F[v.hoverChartIndex||NaN];"touch"!==b.pointerType&&
b.pointerType!==b.MSPOINTER_TYPE_TOUCH||!g||(g=g.pointer,k(b),g[d]({type:m,target:b.currentTarget,preventDefault:l,touches:q()}))}var A=this&&this.__extends||function(){var b=function(g,d){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,g){b.__proto__=g}||function(b,g){for(var d in g)g.hasOwnProperty(d)&&(b[d]=g[d])};return b(g,d)};return function(g,d){function n(){this.constructor=g}b(g,d);g.prototype=null===d?Object.create(d):(n.prototype=d.prototype,new n)}}(),F=e.charts,B=
e.doc,l=e.noop,k=e.win,d=E.addEvent,b=E.css,t=E.objectEach,I=E.removeEvent,x={},m=!!k.PointerEvent;return function(g){function n(){return null!==g&&g.apply(this,arguments)||this}A(n,g);n.isRequired=function(){return!(e.hasTouch||!k.PointerEvent&&!k.MSPointerEvent)};n.prototype.batchMSEvents=function(b){b(this.chart.container,m?"pointerdown":"MSPointerDown",this.onContainerPointerDown);b(this.chart.container,m?"pointermove":"MSPointerMove",this.onContainerPointerMove);b(B,m?"pointerup":"MSPointerUp",
this.onDocumentPointerUp)};n.prototype.destroy=function(){this.batchMSEvents(I);g.prototype.destroy.call(this)};n.prototype.init=function(d,n){g.prototype.init.call(this,d,n);this.hasZoom&&b(d.container,{"-ms-touch-action":"none","touch-action":"none"})};n.prototype.onContainerPointerDown=function(b){D(b,"onContainerTouchStart","touchstart",function(b){x[b.pointerId]={pageX:b.pageX,pageY:b.pageY,target:b.currentTarget}})};n.prototype.onContainerPointerMove=function(b){D(b,"onContainerTouchMove","touchmove",
function(b){x[b.pointerId]={pageX:b.pageX,pageY:b.pageY};x[b.pointerId].target||(x[b.pointerId].target=b.currentTarget)})};n.prototype.onDocumentPointerUp=function(b){D(b,"onDocumentTouchEnd","touchend",function(b){delete x[b.pointerId]})};n.prototype.setDOMEvents=function(){g.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(d)};return n}(v)});P(e,"Core/Series/Point.js",[e["Core/Renderer/HTML/AST.js"],e["Core/Animation/AnimationUtilities.js"],e["Core/FormatUtilities.js"],
e["Core/Globals.js"],e["Core/DefaultOptions.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A){var q=v.animObject,B=E.format,l=D.defaultOptions,k=A.addEvent,d=A.defined,b=A.erase,t=A.extend,I=A.fireEvent,x=A.getNestedProperty,m=A.isArray,g=A.isFunction,n=A.isNumber,J=A.isObject,O=A.merge,z=A.objectEach,u=A.pick,c=A.syncTimeout,h=A.removeEvent,a=A.uniqueKey;"";v=function(){function f(){this.colorIndex=this.category=void 0;this.formatPrefix="point";this.id=void 0;this.isNull=!1;this.percentage=this.options=
this.name=void 0;this.selected=!1;this.total=this.series=void 0;this.visible=!0;this.x=void 0}f.prototype.animateBeforeDestroy=function(){var a=this,c={x:a.startXPos,opacity:0},b,f=a.getGraphicalProps();f.singular.forEach(function(f){b="dataLabel"===f;a[f]=a[f].animate(b?{x:a[f].startXPos,y:a[f].startYPos,opacity:0}:c)});f.plural.forEach(function(c){a[c].forEach(function(c){c.element&&c.animate(t({x:a.startXPos},c.startYPos?{x:c.startXPos,y:c.startYPos}:{}))})})};f.prototype.applyOptions=function(a,
c){var b=this.series,g=b.options.pointValKey||b.pointValKey;a=f.prototype.optionsToObject.call(this,a);t(this,a);this.options=this.options?t(this.options,a):a;a.group&&delete this.group;a.dataLabels&&delete this.dataLabels;g&&(this.y=f.prototype.getNestedProperty.call(this,g));this.formatPrefix=(this.isNull=u(this.isValid&&!this.isValid(),null===this.x||!n(this.y)))?"null":"point";this.selected&&(this.state="select");"name"in this&&"undefined"===typeof c&&b.xAxis&&b.xAxis.hasNames&&(this.x=b.xAxis.nameToX(this));
"undefined"===typeof this.x&&b&&(this.x="undefined"===typeof c?b.autoIncrement(this):c);return this};f.prototype.destroy=function(){function a(){if(f.graphic||f.dataLabel||f.dataLabels)h(f),f.destroyElements();for(w in f)f[w]=null}var f=this,g=f.series,d=g.chart;g=g.options.dataSorting;var n=d.hoverPoints,m=q(f.series.chart.renderer.globalAnimation),w;f.legendItem&&d.legend.destroyItem(f);n&&(f.setState(),b(n,f),n.length||(d.hoverPoints=null));if(f===d.hoverPoint)f.onMouseOut();g&&g.enabled?(this.animateBeforeDestroy(),
c(a,m.duration)):a();d.pointCount--};f.prototype.destroyElements=function(a){var c=this;a=c.getGraphicalProps(a);a.singular.forEach(function(a){c[a]=c[a].destroy()});a.plural.forEach(function(a){c[a].forEach(function(a){a.element&&a.destroy()});delete c[a]})};f.prototype.firePointEvent=function(a,c,b){var f=this,g=this.series.options;(g.point.events[a]||f.options&&f.options.events&&f.options.events[a])&&f.importEvents();"click"===a&&g.allowPointSelect&&(b=function(a){f.select&&f.select(null,a.ctrlKey||
a.metaKey||a.shiftKey)});I(f,a,c,b)};f.prototype.getClassName=function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+("undefined"!==typeof this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")};f.prototype.getGraphicalProps=function(a){var c=
this,b=[],f,g={singular:[],plural:[]};a=a||{graphic:1,dataLabel:1};a.graphic&&b.push("graphic","upperGraphic","shadowGroup");a.dataLabel&&b.push("dataLabel","dataLabelUpper","connector");for(f=b.length;f--;){var d=b[f];c[d]&&g.singular.push(d)}["dataLabel","connector"].forEach(function(b){var f=b+"s";a[b]&&c[f]&&g.plural.push(f)});return g};f.prototype.getLabelConfig=function(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,
point:this,percentage:this.percentage,total:this.total||this.stackTotal}};f.prototype.getNestedProperty=function(a){if(a)return 0===a.indexOf("custom.")?x(a,this.options):this[a]};f.prototype.getZone=function(){var a=this.series,c=a.zones;a=a.zoneAxis||"y";var b=0,f;for(f=c[b];this[a]>=f.value;)f=c[++b];this.nonZonedColor||(this.nonZonedColor=this.color);this.color=f&&f.color&&!this.options.color?f.color:this.nonZonedColor;return f};f.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||
this.graphic.element.nodeName))!==this.shapeType};f.prototype.init=function(c,b,f){this.series=c;this.applyOptions(b,f);this.id=d(this.id)?this.id:a();this.resolveColor();c.chart.pointCount++;I(this,"afterInit");return this};f.prototype.optionsToObject=function(a){var c={},b=this.series,g=b.options.keys,d=g||b.pointArrayMap||["y"],h=d.length,w=0,k=0;if(n(a)||null===a)c[d[0]]=a;else if(m(a))for(!g&&a.length>h&&(b=typeof a[0],"string"===b?c.name=a[0]:"number"===b&&(c.x=a[0]),w++);k<h;)g&&"undefined"===
typeof a[w]||(0<d[k].indexOf(".")?f.prototype.setNestedProperty(c,a[w],d[k]):c[d[k]]=a[w]),w++,k++;else"object"===typeof a&&(c=a,a.dataLabels&&(b._hasPointLabels=!0),a.marker&&(b._hasPointMarkers=!0));return c};f.prototype.resolveColor=function(){var a=this.series;var c=a.chart.options.chart.colorCount;var b=a.chart.styledMode;delete this.nonZonedColor;if(a.options.colorByPoint){if(!b){c=a.options.colors||a.chart.options.colors;var f=c[a.colorCounter];c=c.length}b=a.colorCounter;a.colorCounter++;
a.colorCounter===c&&(a.colorCounter=0)}else b||(f=a.color),b=a.colorIndex;this.colorIndex=u(this.options.colorIndex,b);this.color=u(this.options.color,f)};f.prototype.setNestedProperty=function(a,c,b){b.split(".").reduce(function(a,b,f,g){a[b]=g.length-1===f?c:J(a[b],!0)?a[b]:{};return a[b]},a);return a};f.prototype.tooltipFormatter=function(a){var c=this.series,b=c.tooltipOptions,f=u(b.valueDecimals,""),g=b.valuePrefix||"",d=b.valueSuffix||"";c.chart.styledMode&&(a=c.chart.tooltip.styledModeFormat(a));
(c.pointArrayMap||["y"]).forEach(function(c){c="{point."+c;if(g||d)a=a.replace(RegExp(c+"}","g"),g+c+"}"+d);a=a.replace(RegExp(c+"}","g"),c+":,."+f+"f}")});return B(a,{point:this,series:this.series},c.chart)};f.prototype.update=function(a,c,b,f){function g(){d.applyOptions(a);var f=r&&d.hasDummyGraphic;f=null===d.y?!f:f;r&&f&&(d.graphic=r.destroy(),delete d.hasDummyGraphic);J(a,!0)&&(r&&r.element&&a&&a.marker&&"undefined"!==typeof a.marker.symbol&&(d.graphic=r.destroy()),a&&a.dataLabels&&d.dataLabel&&
(d.dataLabel=d.dataLabel.destroy()),d.connector&&(d.connector=d.connector.destroy()));n=d.index;h.updateParallelArrays(d,n);p.data[n]=J(p.data[n],!0)||J(a,!0)?d.options:u(a,p.data[n]);h.isDirty=h.isDirtyData=!0;!h.fixedBox&&h.hasCartesianSeries&&(m.isDirtyBox=!0);"point"===p.legendType&&(m.isDirtyLegend=!0);c&&m.redraw(b)}var d=this,h=d.series,r=d.graphic,n,m=h.chart,p=h.options;c=u(c,!0);!1===f?g():d.firePointEvent("update",{options:a},g)};f.prototype.remove=function(a,c){this.series.removePoint(this.series.data.indexOf(this),
a,c)};f.prototype.select=function(a,c){var b=this,f=b.series,d=f.chart;this.selectedStaging=a=u(a,!b.selected);b.firePointEvent(a?"select":"unselect",{accumulate:c},function(){b.selected=b.options.selected=a;f.options.data[f.data.indexOf(b)]=b.options;b.setState(a&&"select");c||d.getSelectedPoints().forEach(function(a){var c=a.series;a.selected&&a!==b&&(a.selected=a.options.selected=!1,c.options.data[c.data.indexOf(a)]=a.options,a.setState(d.hoverPoints&&c.options.inactiveOtherPoints?"inactive":""),
a.firePointEvent("unselect"))})});delete this.selectedStaging};f.prototype.onMouseOver=function(a){var c=this.series.chart,b=c.pointer;a=a?b.normalize(a):b.getChartCoordinatesFromPoint(this,c.inverted);b.runPointActions(a,this)};f.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};f.prototype.importEvents=function(){if(!this.hasImportedEvents){var a=
this,c=O(a.series.options.point,a.options).events;a.events=c;z(c,function(c,b){g(c)&&k(a,b,c)});this.hasImportedEvents=!0}};f.prototype.setState=function(a,c){var b=this.series,f=this.state,d=b.options.states[a||"normal"]||{},g=l.plotOptions[b.type].marker&&b.options.marker,h=g&&!1===g.enabled,m=g&&g.states&&g.states[a||"normal"]||{},k=!1===m.enabled,y=b.stateMarkerGraphic,p=this.marker||{},z=b.chart,x=b.halo,q,L=g&&b.markerAttribs;a=a||"";if(!(a===this.state&&!c||this.selected&&"select"!==a||!1===
d.enabled||a&&(k||h&&!1===m.enabled)||a&&p.states&&p.states[a]&&!1===p.states[a].enabled)){this.state=a;L&&(q=b.markerAttribs(this,a));if(this.graphic&&!this.hasDummyGraphic){f&&this.graphic.removeClass("highcharts-point-"+f);a&&this.graphic.addClass("highcharts-point-"+a);if(!z.styledMode){var R=b.pointAttribs(this,a);var J=u(z.options.chart.animation,d.animation);b.options.inactiveOtherPoints&&n(R.opacity)&&((this.dataLabels||[]).forEach(function(a){a&&a.animate({opacity:R.opacity},J)}),this.connector&&
this.connector.animate({opacity:R.opacity},J));this.graphic.animate(R,J)}q&&this.graphic.animate(q,u(z.options.chart.animation,m.animation,g.animation));y&&y.hide()}else{if(a&&m){f=p.symbol||b.symbol;y&&y.currentSymbol!==f&&(y=y.destroy());if(q)if(y)y[c?"animate":"attr"]({x:q.x,y:q.y});else f&&(b.stateMarkerGraphic=y=z.renderer.symbol(f,q.x,q.y,q.width,q.height).add(b.markerGroup),y.currentSymbol=f);!z.styledMode&&y&&y.attr(b.pointAttribs(this,a))}y&&(y[a&&this.isInside?"show":"hide"](),y.element.point=
this)}d=d.halo;q=(y=this.graphic||y)&&y.visibility||"inherit";d&&d.size&&y&&"hidden"!==q&&!this.isCluster?(x||(b.halo=x=z.renderer.path().add(y.parentGroup)),x.show()[c?"animate":"attr"]({d:this.haloPath(d.size)}),x.attr({"class":"highcharts-halo highcharts-color-"+u(this.colorIndex,b.colorIndex)+(this.className?" "+this.className:""),visibility:q,zIndex:-1}),x.point=this,z.styledMode||x.attr(t({fill:this.color||b.color,"fill-opacity":d.opacity},e.filterUserAttributes(d.attributes||{})))):x&&x.point&&
x.point.haloPath&&x.animate({d:x.point.haloPath(0)},null,x.hide);I(this,"afterSetState",{state:a})}};f.prototype.haloPath=function(a){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-a,this.plotY-a,2*a,2*a)};return f}();return C.Point=v});P(e,"Core/Legend.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/FormatUtilities.js"],e["Core/Globals.js"],e["Core/Series/Point.js"],e["Core/Utilities.js"]],function(e,v,E,C,D){var q=e.animObject,F=e.setAnimation,B=v.format;e=E.isFirefox;
var l=E.marginNames;v=E.win;var k=D.addEvent,d=D.createElement,b=D.css,t=D.defined,I=D.discardElement,x=D.find,m=D.fireEvent,g=D.isNumber,n=D.merge,J=D.pick,O=D.relativeLength,z=D.stableSort,u=D.syncTimeout;D=D.wrap;var c=function(){function c(a,c){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,c)}c.prototype.init=function(a,c){this.chart=a;this.setOptions(c);c.enabled&&(this.render(),k(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=k(this.chart,"render",function(){this.legend.proximatePositions();
this.legend.positionItems()}):this.unchartrender&&this.unchartrender())};c.prototype.setOptions=function(a){var c=J(a.padding,8);this.options=a;this.chart.styledMode||(this.itemStyle=a.itemStyle,this.itemHiddenStyle=n(this.itemStyle,a.itemHiddenStyle));this.itemMarginTop=a.itemMarginTop||0;this.itemMarginBottom=a.itemMarginBottom||0;this.padding=c;this.initialItemY=c-5;this.symbolWidth=J(a.symbolWidth,16);this.pages=[];this.proximate="proximate"===a.layout&&!this.chart.inverted;this.baseline=void 0};
c.prototype.update=function(a,c){var b=this.chart;this.setOptions(n(!0,this.options,a));this.destroy();b.isDirtyLegend=b.isDirtyBox=!0;J(c,!0)&&b.redraw();m(this,"afterUpdate")};c.prototype.colorizeItem=function(a,c){a.legendGroup[c?"removeClass":"addClass"]("highcharts-legend-item-hidden");if(!this.chart.styledMode){var b=this.options,f=a.legendItem,d=a.legendLine,g=a.legendSymbol,h=this.itemHiddenStyle.color;b=c?b.itemStyle.color:h;var n=c?a.color||h:h,w=a.options&&a.options.marker,k={fill:n};f&&
f.css({fill:b,color:b});d&&d.attr({stroke:n});g&&(w&&g.isMarker&&(k=a.pointAttribs(),c||(k.stroke=k.fill=h)),g.attr(k))}m(this,"afterColorizeItem",{item:a,visible:c})};c.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()};c.prototype.positionItem=function(a){var c=this,b=this.options,d=b.symbolPadding,g=!b.rtl,h=a._legendItemPos;b=h[0];h=h[1];var n=a.checkbox,k=a.legendGroup;k&&k.element&&(d={translateX:g?b:this.legendWidth-
b-2*d-4,translateY:h},g=function(){m(c,"afterPositionItem",{item:a})},t(k.translateY)?k.animate(d,void 0,g):(k.attr(d),g()));n&&(n.x=b,n.y=h)};c.prototype.destroyItem=function(a){var c=a.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(c){a[c]&&(a[c]=a[c].destroy())});c&&I(a.checkbox)};c.prototype.destroy=function(){function a(a){this[a]&&(this[a]=this[a].destroy())}this.getAllItems().forEach(function(c){["legendItem","legendGroup"].forEach(a,c)});"clipRect up down pager nav box title group".split(" ").forEach(a,
this);this.display=null};c.prototype.positionCheckboxes=function(){var a=this.group&&this.group.alignAttr,c=this.clipHeight||this.legendHeight,d=this.titleHeight;if(a){var g=a.translateY;this.allItems.forEach(function(f){var h=f.checkbox;if(h){var n=g+d+h.y+(this.scrollOffset||0)+3;b(h,{left:a.translateX+f.checkboxOffset+h.x-20+"px",top:n+"px",display:this.proximate||n>g-6&&n<g+c-6?"":"none"})}},this)}};c.prototype.renderTitle=function(){var a=this.options,c=this.padding,b=a.title,d=0;b.text&&(this.title||
(this.title=this.chart.renderer.label(b.text,c-3,c-4,null,null,null,a.useHTML,null,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(b.style),this.title.add(this.group)),b.width||this.title.css({width:this.maxLegendWidth+"px"}),a=this.title.getBBox(),d=a.height,this.offsetWidth=a.width,this.contentGroup.attr({translateY:d}));this.titleHeight=d};c.prototype.setText=function(a){var c=this.options;a.legendItem.attr({text:c.labelFormat?B(c.labelFormat,a,this.chart):c.labelFormatter.call(a)})};
c.prototype.renderItem=function(a){var c=this.chart,b=c.renderer,d=this.options,g=this.symbolWidth,h=d.symbolPadding||0,m=this.itemStyle,k=this.itemHiddenStyle,w="horizontal"===d.layout?J(d.itemDistance,20):0,l=!d.rtl,u=a.legendItem,e=!a.series,p=!e&&a.series.drawLegendSymbol?a.series:a,t=p.options,z=this.createCheckboxForItem&&t&&t.showCheckbox;t=g+h+w+(z?20:0);var x=d.useHTML,q=a.options.className;u||(a.legendGroup=b.g("legend-item").addClass("highcharts-"+p.type+"-series highcharts-color-"+a.colorIndex+
(q?" "+q:"")+(e?" highcharts-series-"+a.index:"")).attr({zIndex:1}).add(this.scrollGroup),a.legendItem=u=b.text("",l?g+h:-h,this.baseline||0,x),c.styledMode||u.css(n(a.visible?m:k)),u.attr({align:l?"left":"right",zIndex:2}).add(a.legendGroup),this.baseline||(this.fontMetrics=b.fontMetrics(c.styledMode?12:m.fontSize,u),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,u.attr("y",this.baseline),this.symbolHeight=d.symbolHeight||this.fontMetrics.f,d.squareSymbol&&(this.symbolWidth=J(d.symbolWidth,
Math.max(this.symbolHeight,16)),t=this.symbolWidth+h+w+(z?20:0),l&&u.attr("x",this.symbolWidth+h))),p.drawLegendSymbol(this,a),this.setItemEvents&&this.setItemEvents(a,u,x));z&&!a.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(a);this.colorizeItem(a,a.visible);!c.styledMode&&m.width||u.css({width:(d.itemWidth||this.widthOption||c.spacingBox.width)-t+"px"});this.setText(a);c=u.getBBox();a.itemWidth=a.checkboxOffset=d.itemWidth||a.legendItemWidth||c.width+t;this.maxItemWidth=Math.max(this.maxItemWidth,
a.itemWidth);this.totalItemWidth+=a.itemWidth;this.itemHeight=a.itemHeight=Math.round(a.legendItemHeight||c.height||this.symbolHeight)};c.prototype.layoutItem=function(a){var c=this.options,b=this.padding,d="horizontal"===c.layout,g=a.itemHeight,h=this.itemMarginBottom,n=this.itemMarginTop,m=d?J(c.itemDistance,20):0,w=this.maxLegendWidth;c=c.alignColumns&&this.totalItemWidth>w?this.maxItemWidth:a.itemWidth;d&&this.itemX-b+c>w&&(this.itemX=b,this.lastLineHeight&&(this.itemY+=n+this.lastLineHeight+
h),this.lastLineHeight=0);this.lastItemY=n+this.itemY+h;this.lastLineHeight=Math.max(g,this.lastLineHeight);a._legendItemPos=[this.itemX,this.itemY];d?this.itemX+=c:(this.itemY+=n+g+h,this.lastLineHeight=g);this.offsetWidth=this.widthOption||Math.max((d?this.itemX-b-(a.checkbox?0:m):c)+b,this.offsetWidth)};c.prototype.getAllItems=function(){var a=[];this.chart.series.forEach(function(c){var b=c&&c.options;c&&J(b.showInLegend,t(b.linkedTo)?!1:void 0,!0)&&(a=a.concat(c.legendItems||("point"===b.legendType?
c.data:c)))});m(this,"afterGetAllItems",{allItems:a});return a};c.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)};c.prototype.adjustMargins=function(a,c){var b=this.chart,f=this.options,d=this.getAlignment();d&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(g,h){g.test(d)&&!t(a[h])&&(b[l[h]]=Math.max(b[l[h]],b.legend[(h+1)%2?"legendHeight":
"legendWidth"]+[1,-1,-1,1][h]*f[h%2?"x":"y"]+J(f.margin,12)+c[h]+(b.titleOffset[h]||0)))})};c.prototype.proximatePositions=function(){var a=this.chart,c=[],b="left"===this.options.align;this.allItems.forEach(function(f){var d;var h=b;if(f.yAxis){f.xAxis.options.reversed&&(h=!h);f.points&&(d=x(h?f.points:f.points.slice(0).reverse(),function(a){return g(a.plotY)}));h=this.itemMarginTop+f.legendItem.getBBox().height+this.itemMarginBottom;var n=f.yAxis.top-a.plotTop;f.visible?(d=d?d.plotY:f.yAxis.height,
d+=n-.3*h):d=n+f.yAxis.height;c.push({target:d,size:h,item:f})}},this);E.distribute(c,a.plotHeight);c.forEach(function(c){c.item._legendItemPos[1]=a.plotTop-a.spacing[0]+c.pos})};c.prototype.render=function(){var a=this.chart,c=a.renderer,b=this.group,d=this.box,g=this.options,h=this.padding;this.itemX=h;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=O(g.width,a.spacingBox.width-h);var n=a.spacingBox.width-2*h-g.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,
2))&&(n/=2);this.maxLegendWidth=this.widthOption||n;b||(this.group=b=c.g("legend").addClass(g.className||"").attr({zIndex:7}).add(),this.contentGroup=c.g().attr({zIndex:1}).add(b),this.scrollGroup=c.g().add(this.contentGroup));this.renderTitle();var k=this.getAllItems();z(k,function(a,c){return(a.options&&a.options.legendIndex||0)-(c.options&&c.options.legendIndex||0)});g.reversed&&k.reverse();this.allItems=k;this.display=n=!!k.length;this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=
0;k.forEach(this.renderItem,this);k.forEach(this.layoutItem,this);k=(this.widthOption||this.offsetWidth)+h;var w=this.lastItemY+this.lastLineHeight+this.titleHeight;w=this.handleOverflow(w);w+=h;d||(this.box=d=c.rect().addClass("highcharts-legend-box").attr({r:g.borderRadius}).add(b),d.isNew=!0);a.styledMode||d.attr({stroke:g.borderColor,"stroke-width":g.borderWidth||0,fill:g.backgroundColor||"none"}).shadow(g.shadow);0<k&&0<w&&(d[d.isNew?"attr":"animate"](d.crisp.call({},{x:0,y:0,width:k,height:w},
d.strokeWidth())),d.isNew=!1);d[n?"show":"hide"]();a.styledMode&&"none"===b.getStyle("display")&&(k=w=0);this.legendWidth=k;this.legendHeight=w;n&&this.align();this.proximate||this.positionItems();m(this,"afterRender")};c.prototype.align=function(a){void 0===a&&(a=this.chart.spacingBox);var c=this.chart,b=this.options,d=a.y;/(lth|ct|rth)/.test(this.getAlignment())&&0<c.titleOffset[0]?d+=c.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<c.titleOffset[2]&&(d-=c.titleOffset[2]);d!==a.y&&(a=
n(a,{y:d}));this.group.align(n(b,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":b.verticalAlign}),!0,a)};c.prototype.handleOverflow=function(a){var c=this,b=this.chart,d=b.renderer,g=this.options,h=g.y,n=this.padding;h=b.spacingBox.height+("top"===g.verticalAlign?-h:h)-n;var m=g.maxHeight,w,k=this.clipRect,l=g.navigation,u=J(l.animation,!0),p=l.arrowSize||12,e=this.nav,t=this.pages,z,x=this.allItems,R=function(a){"number"===typeof a?k.attr({height:a}):k&&(c.clipRect=
k.destroy(),c.contentGroup.clip());c.contentGroup.div&&(c.contentGroup.div.style.clip=a?"rect("+n+"px,9999px,"+(n+a)+"px,0)":"auto")},q=function(a){c[a]=d.circle(0,0,1.3*p).translate(p/2,p/2).add(e);b.styledMode||c[a].attr("fill","rgba(0,0,0,0.0001)");return c[a]};"horizontal"!==g.layout||"middle"===g.verticalAlign||g.floating||(h/=2);m&&(h=Math.min(h,m));t.length=0;a&&0<h&&a>h&&!1!==l.enabled?(this.clipHeight=w=Math.max(h-20-this.titleHeight-n,0),this.currentPage=J(this.currentPage,1),this.fullHeight=
a,x.forEach(function(a,c){var b=a._legendItemPos[1],f=Math.round(a.legendItem.getBBox().height),d=t.length;if(!d||b-t[d-1]>w&&(z||b)!==t[d-1])t.push(z||b),d++;a.pageIx=d-1;z&&(x[c-1].pageIx=d-1);c===x.length-1&&b+f-t[d-1]>w&&b!==z&&(t.push(b),a.pageIx=d);b!==z&&(z=b)}),k||(k=c.clipRect=d.clipRect(0,n,9999,0),c.contentGroup.clip(k)),R(w),e||(this.nav=e=d.g().attr({zIndex:1}).add(this.group),this.up=d.symbol("triangle",0,0,p,p).add(e),q("upTracker").on("click",function(){c.scroll(-1,u)}),this.pager=
d.text("",15,10).addClass("highcharts-legend-navigation"),b.styledMode||this.pager.css(l.style),this.pager.add(e),this.down=d.symbol("triangle-down",0,0,p,p).add(e),q("downTracker").on("click",function(){c.scroll(1,u)})),c.scroll(0),a=h):e&&(R(),this.nav=e.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0);return a};c.prototype.scroll=function(a,c){var b=this,f=this.chart,d=this.pages,g=d.length,h=this.currentPage+a;a=this.clipHeight;var n=this.options.navigation,k=this.pager,l=this.padding;
h>g&&(h=g);0<h&&("undefined"!==typeof c&&F(c,f),this.nav.attr({translateX:l,translateY:a+this.padding+7+this.titleHeight,visibility:"visible"}),[this.up,this.upTracker].forEach(function(a){a.attr({"class":1===h?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),k.attr({text:h+"/"+g}),[this.down,this.downTracker].forEach(function(a){a.attr({x:18+this.pager.getBBox().width,"class":h===g?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),f.styledMode||(this.up.attr({fill:1===
h?n.inactiveColor:n.activeColor}),this.upTracker.css({cursor:1===h?"default":"pointer"}),this.down.attr({fill:h===g?n.inactiveColor:n.activeColor}),this.downTracker.css({cursor:h===g?"default":"pointer"})),this.scrollOffset=-d[h-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=h,this.positionCheckboxes(),c=q(J(c,f.renderer.globalAnimation,!0)),u(function(){m(b,"afterScroll",{currentPage:h})},c.duration))};c.prototype.setItemEvents=function(a,c,b){var f=
this,d=f.chart.renderer.boxWrapper,g=a instanceof C,h="highcharts-legend-"+(g?"point":"series")+"-active",k=f.chart.styledMode;(b?[c,a.legendSymbol]:[a.legendGroup]).forEach(function(b){if(b)b.on("mouseover",function(){a.visible&&f.allItems.forEach(function(c){a!==c&&c.setState("inactive",!g)});a.setState("hover");a.visible&&d.addClass(h);k||c.css(f.options.itemHoverStyle)}).on("mouseout",function(){f.chart.styledMode||c.css(n(a.visible?f.itemStyle:f.itemHiddenStyle));f.allItems.forEach(function(c){a!==
c&&c.setState("",!g)});d.removeClass(h);a.setState()}).on("click",function(c){var b=function(){a.setVisible&&a.setVisible();f.allItems.forEach(function(c){a!==c&&c.setState(a.visible?"inactive":"",!g)})};d.removeClass(h);c={browserEvent:c};a.firePointEvent?a.firePointEvent("legendItemClick",c,b):m(a,"legendItemClick",c,b)})})};c.prototype.createCheckboxForItem=function(a){a.checkbox=d("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:a.selected,defaultChecked:a.selected},this.options.itemCheckboxStyle,
this.chart.container);k(a.checkbox,"click",function(c){m(a.series||a,"checkboxClick",{checked:c.target.checked,item:a},function(){a.select()})})};return c}();(/Trident\/7\.0/.test(v.navigator&&v.navigator.userAgent)||e)&&D(c.prototype,"positionItem",function(c,a){var b=this,d=function(){a._legendItemPos&&c.call(b,a)};d();b.bubbleLegend||setTimeout(d)});E.Legend=c;return E.Legend});P(e,"Core/Series/SeriesRegistry.js",[e["Core/Globals.js"],e["Core/DefaultOptions.js"],e["Core/Series/Point.js"],e["Core/Utilities.js"]],
function(e,v,E,C){var q=v.defaultOptions,A=C.error,F=C.extendClass,B=C.merge,l;(function(k){function d(b,d){var l=q.plotOptions||{},e=d.defaultOptions;d.prototype.pointClass||(d.prototype.pointClass=E);d.prototype.type=b;e&&(l[b]=e);k.seriesTypes[b]=d}k.seriesTypes=e.seriesTypes;k.getSeries=function(b,d){void 0===d&&(d={});var l=b.options.chart;l=d.type||l.type||l.defaultSeriesType||"";var e=k.seriesTypes[l];k||A(17,!0,b,{missingModuleFor:l});l=new e;"function"===typeof l.init&&l.init(b,d);return l};
k.registerSeriesType=d;k.seriesType=function(b,l,e,x,m){var g=q.plotOptions||{};l=l||"";g[b]=B(g[l],e);d(b,F(k.seriesTypes[l]||function(){},x));k.seriesTypes[b].prototype.type=b;m&&(k.seriesTypes[b].prototype.pointClass=F(E,m));return k.seriesTypes[b]}})(l||(l={}));e.seriesType=l.seriesType;return l});P(e,"Core/Chart/Chart.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Axis/Axis.js"],e["Core/FormatUtilities.js"],e["Core/Foundation.js"],e["Core/Globals.js"],e["Core/Legend.js"],e["Core/MSPointer.js"],
e["Core/DefaultOptions.js"],e["Core/Color/Palette.js"],e["Core/Pointer.js"],e["Core/Renderer/RendererRegistry.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Time.js"],e["Core/Utilities.js"],e["Core/Renderer/HTML/AST.js"]],function(e,v,E,C,D,A,F,B,l,k,d,b,t,I,x){var m=e.animate,g=e.animObject,n=e.setAnimation,q=E.numberFormat,O=C.registerEventOptions,z=D.charts,u=D.doc,c=D.marginNames,h=D.win,a=B.defaultOptions,f=B.defaultTime,y=b.seriesTypes,L=I.addEvent,K=I.attr,r=I.cleanRecursively,G=I.createElement,
Q=I.css,w=I.defined,H=I.discardElement,M=I.erase,T=I.error,p=I.extend,N=I.find,S=I.fireEvent,aa=I.getStyle,fa=I.isArray,R=I.isNumber,V=I.isObject,ca=I.isString,Z=I.merge,ba=I.objectEach,U=I.pick,W=I.pInt,ea=I.relativeLength,da=I.removeEvent,Y=I.splat,P=I.syncTimeout,ha=I.uniqueKey;e=function(){function b(a,c,b){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,c,b)}b.chart=function(a,c,f){return new b(a,c,f)};b.prototype.getArgs=function(a,c,b){ca(a)||a.nodeName?(this.renderTo=a,this.init(c,b)):this.init(a,c)};b.prototype.init=
function(c,b){var f=c.plotOptions||{};S(this,"init",{args:arguments},function(){var d=Z(a,c),g=d.chart;ba(d.plotOptions,function(a,c){V(a)&&(a.tooltip=f[c]&&Z(f[c].tooltip)||void 0)});d.tooltip.userOptions=c.chart&&c.chart.forExport&&c.tooltip.userOptions||c.tooltip;this.userOptions=c;this.margin=[];this.spacing=[];this.bounds={h:{},v:{}};this.labelCollectors=[];this.callback=b;this.isResizing=0;this.options=d;this.axes=[];this.series=[];this.time=c.time&&Object.keys(c.time).length?new t(c.time):
D.time;this.numberFormatter=g.numberFormatter||q;this.styledMode=g.styledMode;this.hasCartesianSeries=g.showAxes;this.index=z.length;z.push(this);D.chartCount++;O(this,g);this.xAxis=[];this.yAxis=[];this.pointCount=this.colorCounter=this.symbolCounter=0;S(this,"afterInit");this.firstRender()})};b.prototype.initSeries=function(a){var c=this.options.chart;c=a.type||c.type||c.defaultSeriesType;var b=y[c];b||T(17,!0,this,{missingModuleFor:c});c=new b;"function"===typeof c.init&&c.init(this,a);return c};
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,c){return a.linkedSeries.length||c.linkedSeries.length?c.linkedSeries.length-a.linkedSeries.length:0})};b.prototype.orderSeries=function(a){var c=this.series;a=a||0;for(var b=c.length;a<b;++a)c[a]&&(c[a].index=a,c[a].name=c[a].getName())};b.prototype.isInsidePlot=
function(a,c,b){void 0===b&&(b={});var f=this.inverted,d=this.plotBox,g=this.plotLeft,p=this.plotTop,h=this.scrollablePlotBox,n=0;var r=0;b.visiblePlotOnly&&this.scrollingContainer&&(r=this.scrollingContainer,n=r.scrollLeft,r=r.scrollTop);var m=b.series;d=b.visiblePlotOnly&&h||d;h=b.inverted?c:a;c=b.inverted?a:c;a={x:h,y:c,isInsidePlot:!0};if(!b.ignoreX){var k=m&&(f?m.yAxis:m.xAxis)||{pos:g,len:Infinity};h=b.paneCoordinates?k.pos+h:g+h;h>=Math.max(n+g,k.pos)&&h<=Math.min(n+g+d.width,k.pos+k.len)||
(a.isInsidePlot=!1)}!b.ignoreY&&a.isInsidePlot&&(f=m&&(f?m.xAxis:m.yAxis)||{pos:p,len:Infinity},b=b.paneCoordinates?f.pos+c:p+c,b>=Math.max(r+p,f.pos)&&b<=Math.min(r+p+d.height,f.pos+f.len)||(a.isInsidePlot=!1));S(this,"afterIsInsidePlot",a);return a.isInsidePlot};b.prototype.redraw=function(a){S(this,"beforeRedraw");var c=this.hasCartesianSeries?this.axes:this.colorAxis||[],b=this.series,f=this.pointer,d=this.legend,g=this.userOptions.legend,h=this.renderer,r=h.isHidden(),m=[],k=this.isDirtyBox,
w=this.isDirtyLegend;this.setResponsive&&this.setResponsive(!1);n(this.hasRendered?a:!1,this);r&&this.temporaryDisplay();this.layOutTitles();for(a=b.length;a--;){var l=b[a];if(l.options.stacking||l.options.centerInCategory){var u=!0;if(l.isDirty){var e=!0;break}}}if(e)for(a=b.length;a--;)l=b[a],l.options.stacking&&(l.isDirty=!0);b.forEach(function(a){a.isDirty&&("point"===a.options.legendType?("function"===typeof a.updateTotals&&a.updateTotals(),w=!0):g&&(g.labelFormatter||g.labelFormat)&&(w=!0));
a.isDirtyData&&S(a,"updatedData")});w&&d&&d.options.enabled&&(d.render(),this.isDirtyLegend=!1);u&&this.getStacks();c.forEach(function(a){a.updateNames();a.setScale()});this.getMargins();c.forEach(function(a){a.isDirty&&(k=!0)});c.forEach(function(a){var c=a.min+","+a.max;a.extKey!==c&&(a.extKey=c,m.push(function(){S(a,"afterSetExtremes",p(a.eventArgs,a.getExtremes()));delete a.eventArgs}));(k||u)&&a.redraw()});k&&this.drawChartBox();S(this,"predraw");b.forEach(function(a){(k||a.isDirty)&&a.visible&&
a.redraw();a.isDirtyData=!1});f&&f.reset(!0);h.draw();S(this,"redraw");S(this,"render");r&&this.temporaryDisplay(!0);m.forEach(function(a){a.call()})};b.prototype.get=function(a){function c(c){return c.id===a||c.options&&c.options.id===a}for(var b=this.series,f=N(this.axes,c)||N(this.series,c),d=0;!f&&d<b.length;d++)f=N(b[d].points||[],c);return f};b.prototype.getAxes=function(){var a=this,c=this.options,b=c.xAxis=Y(c.xAxis||{});c=c.yAxis=Y(c.yAxis||{});S(this,"getAxes");b.forEach(function(a,c){a.index=
c;a.isX=!0});c.forEach(function(a,c){a.index=c});b.concat(c).forEach(function(c){new v(a,c)});S(this,"afterGetAxes")};b.prototype.getSelectedPoints=function(){var a=[];this.series.forEach(function(c){a=a.concat(c.getPointsCollection().filter(function(a){return U(a.selectedStaging,a.selected)}))});return a};b.prototype.getSelectedSeries=function(){return this.series.filter(function(a){return a.selected})};b.prototype.setTitle=function(a,c,b){this.applyDescription("title",a);this.applyDescription("subtitle",
c);this.applyDescription("caption",void 0);this.layOutTitles(b)};b.prototype.applyDescription=function(a,c){var b=this,f="title"===a?{color:l.neutralColor80,fontSize:this.options.isStock?"16px":"18px"}:{color:l.neutralColor60};f=this.options[a]=Z(!this.styledMode&&{style:f},this.options[a],c);var d=this[a];d&&c&&(this[a]=d=d.destroy());f&&!d&&(d=this.renderer.text(f.text,0,0,f.useHTML).attr({align:f.align,"class":"highcharts-"+a,zIndex:f.zIndex||4}).add(),d.update=function(c){b[{title:"setTitle",
subtitle:"setSubtitle",caption:"setCaption"}[a]](c)},this.styledMode||d.css(f.style),this[a]=d)};b.prototype.layOutTitles=function(a){var c=[0,0,0],b=this.renderer,f=this.spacingBox;["title","subtitle","caption"].forEach(function(a){var d=this[a],g=this.options[a],h=g.verticalAlign||"top";a="title"===a?"top"===h?-3:0:"top"===h?c[0]+2:0;var n;if(d){this.styledMode||(n=g.style&&g.style.fontSize);n=b.fontMetrics(n,d).b;d.css({width:(g.width||f.width+(g.widthAdjust||0))+"px"});var r=Math.round(d.getBBox(g.useHTML).height);
d.align(p({y:"bottom"===h?n:a+n,height:r},g),!1,"spacingBox");g.floating||("top"===h?c[0]=Math.ceil(c[0]+r):"bottom"===h&&(c[2]=Math.ceil(c[2]+r)))}},this);c[0]&&"top"===(this.options.title.verticalAlign||"top")&&(c[0]+=this.options.title.margin);c[2]&&"bottom"===this.options.caption.verticalAlign&&(c[2]+=this.options.caption.margin);var d=!this.titleOffset||this.titleOffset.join(",")!==c.join(",");this.titleOffset=c;S(this,"afterLayOutTitles");!this.isDirtyBox&&d&&(this.isDirtyBox=this.isDirtyLegend=
d,this.hasRendered&&U(a,!0)&&this.isDirtyBox&&this.redraw())};b.prototype.getChartSize=function(){var a=this.options.chart,c=a.width;a=a.height;var b=this.renderTo;w(c)||(this.containerWidth=aa(b,"width"));w(a)||(this.containerHeight=aa(b,"height"));this.chartWidth=Math.max(0,c||this.containerWidth||600);this.chartHeight=Math.max(0,ea(a,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))};b.prototype.temporaryDisplay=function(a){var c=this.renderTo;if(a)for(;c&&c.style;)c.hcOrigStyle&&
(Q(c,c.hcOrigStyle),delete c.hcOrigStyle),c.hcOrigDetached&&(u.body.removeChild(c),c.hcOrigDetached=!1),c=c.parentNode;else for(;c&&c.style;){u.body.contains(c)||c.parentNode||(c.hcOrigDetached=!0,u.body.appendChild(c));if("none"===aa(c,"display",!1)||c.hcOricDetached)c.hcOrigStyle={display:c.style.display,height:c.style.height,overflow:c.style.overflow},a={display:"block",overflow:"hidden"},c!==this.renderTo&&(a.height=0),Q(c,a),c.offsetWidth||c.style.setProperty("display","block","important");c=
c.parentNode;if(c===u.body)break}};b.prototype.setClassName=function(a){this.container.className="highcharts-container "+(a||"")};b.prototype.getContainer=function(){var a=this.options,c=a.chart,b=ha(),f,g=this.renderTo;g||(this.renderTo=g=c.renderTo);ca(g)&&(this.renderTo=g=u.getElementById(g));g||T(13,!0,this);var h=W(K(g,"data-highcharts-chart"));R(h)&&z[h]&&z[h].hasRendered&&z[h].destroy();K(g,"data-highcharts-chart",this.index);g.innerHTML="";c.skipClone||g.offsetWidth||this.temporaryDisplay();
this.getChartSize();h=this.chartWidth;var r=this.chartHeight;Q(g,{overflow:"hidden"});this.styledMode||(f=p({position:"relative",overflow:"hidden",width:h+"px",height:r+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none"},c.style||{}));this.container=b=G("div",{id:b},f,g);this._cursor=b.style.cursor;this.renderer=new (d.getRendererType(c.renderer))(b,h,r,void 0,c.forExport,a.exporting&&a.exporting.allowHTML,
this.styledMode);n(void 0,this);this.setClassName(c.className);if(this.styledMode)for(var m in a.defs)this.renderer.definition(a.defs[m]);else this.renderer.setStyle(c.style);this.renderer.chartIndex=this.index;S(this,"afterGetContainer")};b.prototype.getMargins=function(a){var c=this.spacing,b=this.margin,f=this.titleOffset;this.resetMargins();f[0]&&!w(b[0])&&(this.plotTop=Math.max(this.plotTop,f[0]+c[0]));f[2]&&!w(b[2])&&(this.marginBottom=Math.max(this.marginBottom,f[2]+c[2]));this.legend&&this.legend.display&&
this.legend.adjustMargins(b,c);S(this,"getMargins");a||this.getAxisMargins()};b.prototype.getAxisMargins=function(){var a=this,b=a.axisOffset=[0,0,0,0],f=a.colorAxis,d=a.margin,g=function(a){a.forEach(function(a){a.visible&&a.getOffset()})};a.hasCartesianSeries?g(a.axes):f&&f.length&&g(f);c.forEach(function(c,f){w(d[f])||(a[c]+=b[f])});a.setChartSize()};b.prototype.reflow=function(a){var c=this,b=c.options.chart,f=c.renderTo,d=w(b.width)&&w(b.height),g=b.width||aa(f,"width");b=b.height||aa(f,"height");
f=a?a.target:h;delete c.pointer.chartPosition;if(!d&&!c.isPrinting&&g&&b&&(f===h||f===u)){if(g!==c.containerWidth||b!==c.containerHeight)I.clearTimeout(c.reflowTimeout),c.reflowTimeout=P(function(){c.container&&c.setSize(void 0,void 0,!1)},a?100:0);c.containerWidth=g;c.containerHeight=b}};b.prototype.setReflow=function(a){var c=this;!1===a||this.unbindReflow?!1===a&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=L(h,"resize",function(a){c.options&&c.reflow(a)}),L(this,
"destroy",this.unbindReflow))};b.prototype.setSize=function(a,c,b){var f=this,d=f.renderer;f.isResizing+=1;n(b,f);b=d.globalAnimation;f.oldChartHeight=f.chartHeight;f.oldChartWidth=f.chartWidth;"undefined"!==typeof a&&(f.options.chart.width=a);"undefined"!==typeof c&&(f.options.chart.height=c);f.getChartSize();f.styledMode||(b?m:Q)(f.container,{width:f.chartWidth+"px",height:f.chartHeight+"px"},b);f.setChartSize(!0);d.setSize(f.chartWidth,f.chartHeight,b);f.axes.forEach(function(a){a.isDirty=!0;a.setScale()});
f.isDirtyLegend=!0;f.isDirtyBox=!0;f.layOutTitles();f.getMargins();f.redraw(b);f.oldChartHeight=null;S(f,"resize");P(function(){f&&S(f,"endResize",null,function(){--f.isResizing})},g(b).duration)};b.prototype.setChartSize=function(a){var c=this.inverted,b=this.renderer,f=this.chartWidth,d=this.chartHeight,g=this.options.chart,p=this.spacing,h=this.clipOffset,n,r,m,k;this.plotLeft=n=Math.round(this.plotLeft);this.plotTop=r=Math.round(this.plotTop);this.plotWidth=m=Math.max(0,Math.round(f-n-this.marginRight));
this.plotHeight=k=Math.max(0,Math.round(d-r-this.marginBottom));this.plotSizeX=c?k:m;this.plotSizeY=c?m:k;this.plotBorderWidth=g.plotBorderWidth||0;this.spacingBox=b.spacingBox={x:p[3],y:p[0],width:f-p[3]-p[1],height:d-p[0]-p[2]};this.plotBox=b.plotBox={x:n,y:r,width:m,height:k};c=2*Math.floor(this.plotBorderWidth/2);f=Math.ceil(Math.max(c,h[3])/2);d=Math.ceil(Math.max(c,h[0])/2);this.clipBox={x:f,y:d,width:Math.floor(this.plotSizeX-Math.max(c,h[1])/2-f),height:Math.max(0,Math.floor(this.plotSizeY-
Math.max(c,h[2])/2-d))};a||(this.axes.forEach(function(a){a.setAxisSize();a.setAxisTranslation()}),b.alignElements());S(this,"afterSetChartSize",{skipAxes:a})};b.prototype.resetMargins=function(){S(this,"resetMargins");var a=this,b=a.options.chart;["margin","spacing"].forEach(function(c){var f=b[c],d=V(f)?f:[f,f,f,f];["Top","Right","Bottom","Left"].forEach(function(f,g){a[c][g]=U(b[c+f],d[g])})});c.forEach(function(c,b){a[c]=U(a.margin[b],a.spacing[b])});a.axisOffset=[0,0,0,0];a.clipOffset=[0,0,0,
0]};b.prototype.drawChartBox=function(){var a=this.options.chart,c=this.renderer,b=this.chartWidth,f=this.chartHeight,d=this.styledMode,g=this.plotBGImage,p=a.backgroundColor,h=a.plotBackgroundColor,n=a.plotBackgroundImage,r=this.plotLeft,m=this.plotTop,k=this.plotWidth,w=this.plotHeight,l=this.plotBox,u=this.clipRect,e=this.clipBox,t=this.chartBackground,z=this.plotBackground,y=this.plotBorder,H,R="animate";t||(this.chartBackground=t=c.rect().addClass("highcharts-background").add(),R="attr");if(d)var x=
H=t.strokeWidth();else{x=a.borderWidth||0;H=x+(a.shadow?8:0);p={fill:p||"none"};if(x||t["stroke-width"])p.stroke=a.borderColor,p["stroke-width"]=x;t.attr(p).shadow(a.shadow)}t[R]({x:H/2,y:H/2,width:b-H-x%2,height:f-H-x%2,r:a.borderRadius});R="animate";z||(R="attr",this.plotBackground=z=c.rect().addClass("highcharts-plot-background").add());z[R](l);d||(z.attr({fill:h||"none"}).shadow(a.plotShadow),n&&(g?(n!==g.attr("href")&&g.attr("href",n),g.animate(l)):this.plotBGImage=c.image(n,r,m,k,w).add()));
u?u.animate({width:e.width,height:e.height}):this.clipRect=c.clipRect(e);R="animate";y||(R="attr",this.plotBorder=y=c.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add());d||y.attr({stroke:a.plotBorderColor,"stroke-width":a.plotBorderWidth||0,fill:"none"});y[R](y.crisp({x:r,y:m,width:k,height:w},-y.strokeWidth()));this.isDirtyBox=!1;S(this,"afterDrawChartBox")};b.prototype.propFromSeries=function(){var a=this,c=a.options.chart,b=a.options.series,f,d,g;["inverted","angular","polar"].forEach(function(p){d=
y[c.type||c.defaultSeriesType];g=c[p]||d&&d.prototype[p];for(f=b&&b.length;!g&&f--;)(d=y[b[f].type])&&d.prototype[p]&&(g=!0);a[p]=g})};b.prototype.linkSeries=function(){var a=this,c=a.series;c.forEach(function(a){a.linkedSeries.length=0});c.forEach(function(c){var b=c.options.linkedTo;ca(b)&&(b=":previous"===b?a.series[c.index-1]:a.get(b))&&b.linkedParent!==c&&(b.linkedSeries.push(c),c.linkedParent=b,b.enabledDataSorting&&c.setDataSortingOptions(),c.visible=U(c.options.visible,b.options.visible,c.visible))});
S(this,"afterLinkSeries")};b.prototype.renderSeries=function(){this.series.forEach(function(a){a.translate();a.render()})};b.prototype.renderLabels=function(){var a=this,c=a.options.labels;c.items&&c.items.forEach(function(b){var f=p(c.style,b.style),d=W(f.left)+a.plotLeft,g=W(f.top)+a.plotTop+12;delete f.left;delete f.top;a.renderer.text(b.html,d,g).attr({zIndex:2}).css(f).add()})};b.prototype.render=function(){var a=this.axes,c=this.colorAxis,b=this.renderer,f=this.options,d=function(a){a.forEach(function(a){a.visible&&
a.render()})},g=0;this.setTitle();this.legend=new A(this,f.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();f=this.plotWidth;a.some(function(a){if(a.horiz&&a.visible&&a.options.labels.enabled&&a.series.length)return g=21,!0});var p=this.plotHeight=Math.max(this.plotHeight-g,0);a.forEach(function(a){a.setScale()});this.getAxisMargins();var h=1.1<f/this.plotWidth,n=1.05<p/this.plotHeight;if(h||n)a.forEach(function(a){(a.horiz&&h||!a.horiz&&n)&&a.setTickInterval(!0)}),
this.getMargins();this.drawChartBox();this.hasCartesianSeries?d(a):c&&c.length&&d(c);this.seriesGroup||(this.seriesGroup=b.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 c=this,b=Z(!0,this.options.credits,a);b.enabled&&!this.credits&&(this.credits=this.renderer.text(b.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){b.href&&
(h.location.href=b.href)}).attr({align:b.position.align,zIndex:8}),c.styledMode||this.credits.css(b.style),this.credits.add().align(b.position),this.credits.update=function(a){c.credits=c.credits.destroy();c.addCredits(a)})};b.prototype.destroy=function(){var a=this,c=a.axes,b=a.series,f=a.container,d=f&&f.parentNode,g;S(a,"destroy");a.renderer.forExport?M(z,a):z[a.index]=void 0;D.chartCount--;a.renderTo.removeAttribute("data-highcharts-chart");da(a);for(g=c.length;g--;)c[g]=c[g].destroy();this.scroller&&
this.scroller.destroy&&this.scroller.destroy();for(g=b.length;g--;)b[g]=b[g].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(c){var b=a[c];b&&b.destroy&&(a[c]=b.destroy())});f&&(f.innerHTML="",da(f),d&&H(f));ba(a,function(c,b){delete a[b]})};b.prototype.firstRender=function(){var a=this,c=a.options;if(!a.isReadyToRender||a.isReadyToRender()){a.getContainer();
a.resetMargins();a.setChartSize();a.propFromSeries();a.getAxes();(fa(c.series)?c.series:[]).forEach(function(c){a.initSeries(c)});a.linkSeries();a.setSeriesData();S(a,"beforeRender");k&&(F.isRequired()?a.pointer=new F(a,c):a.pointer=new k(a,c));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");w(this.index)&&this.setReflow(this.options.chart.reflow);this.hasLoaded=!0};b.prototype.addSeries=function(a,c,b){var f=this,d;a&&(c=U(c,!0),S(f,"addSeries",{options:a},function(){d=f.initSeries(a);f.isDirtyLegend=!0;f.linkSeries();d.enabledDataSorting&&d.setData(a.data,!1);S(f,"afterAddSeries",{series:d});c&&f.redraw(b)}));return d};b.prototype.addAxis=function(a,c,b,f){return this.createAxis(c?"xAxis":"yAxis",{axis:a,redraw:b,animation:f})};b.prototype.addColorAxis=
function(a,c,b){return this.createAxis("colorAxis",{axis:a,redraw:c,animation:b})};b.prototype.createAxis=function(a,c){var b="colorAxis"===a,f=c.redraw,d=c.animation;a=Z(c.axis,{index:this[a].length,isX:"xAxis"===a});a=b?new D.ColorAxis(this,a):new v(this,a);b&&(this.isDirtyLegend=!0,this.axes.forEach(function(a){a.series=[]}),this.series.forEach(function(a){a.bindAxes();a.isDirtyData=!0}));U(f,!0)&&this.redraw(d);return a};b.prototype.showLoading=function(a){var c=this,b=c.options,f=b.loading,d=
function(){g&&Q(g,{left:c.plotLeft+"px",top:c.plotTop+"px",width:c.plotWidth+"px",height:c.plotHeight+"px"})},g=c.loadingDiv,h=c.loadingSpan;g||(c.loadingDiv=g=G("div",{className:"highcharts-loading highcharts-loading-hidden"},null,c.container));h||(c.loadingSpan=h=G("span",{className:"highcharts-loading-inner"},null,g),L(c,"redraw",d));g.className="highcharts-loading";x.setElementHTML(h,U(a,b.lang.loading,""));c.styledMode||(Q(g,p(f.style,{zIndex:10})),Q(h,f.labelStyle),c.loadingShown||(Q(g,{opacity:0,
display:""}),m(g,{opacity:f.style.opacity||.5},{duration:f.showDuration||0})));c.loadingShown=!0;d()};b.prototype.hideLoading=function(){var a=this.options,c=this.loadingDiv;c&&(c.className="highcharts-loading highcharts-loading-hidden",this.styledMode||m(c,{opacity:0},{duration:a.loading.hideDuration||100,complete:function(){Q(c,{display:"none"})}}));this.loadingShown=!1};b.prototype.update=function(a,c,b,d){var g=this,p={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},
h=a.isResponsiveOptions,n=[],m,k;S(g,"update",{options:a});h||g.setResponsive(!1,!0);a=r(a,g.options);g.userOptions=Z(g.userOptions,a);var l=a.chart;if(l){Z(!0,g.options.chart,l);"className"in l&&g.setClassName(l.className);"reflow"in l&&g.setReflow(l.reflow);if("inverted"in l||"polar"in l||"type"in l){g.propFromSeries();var u=!0}"alignTicks"in l&&(u=!0);"events"in l&&O(this,l);ba(l,function(a,c){-1!==g.propsRequireUpdateSeries.indexOf("chart."+c)&&(m=!0);-1!==g.propsRequireDirtyBox.indexOf(c)&&(g.isDirtyBox=
!0);-1!==g.propsRequireReflow.indexOf(c)&&(h?g.isDirtyBox=!0:k=!0)});!g.styledMode&&"style"in l&&g.renderer.setStyle(l.style)}!g.styledMode&&a.colors&&(this.options.colors=a.colors);a.time&&(this.time===f&&(this.time=new t(a.time)),Z(!0,g.options.time,a.time));ba(a,function(c,b){if(g[b]&&"function"===typeof g[b].update)g[b].update(c,!1);else if("function"===typeof g[p[b]])g[p[b]](c);else"colors"!==b&&-1===g.collectionsWithUpdate.indexOf(b)&&Z(!0,g.options[b],a[b]);"chart"!==b&&-1!==g.propsRequireUpdateSeries.indexOf(b)&&
(m=!0)});this.collectionsWithUpdate.forEach(function(c){if(a[c]){var f=[];g[c].forEach(function(a,c){a.options.isInternal||f.push(U(a.options.index,c))});Y(a[c]).forEach(function(a,d){var p=w(a.id),h;p&&(h=g.get(a.id));!h&&g[c]&&(h=g[c][f?f[d]:d])&&p&&w(h.options.id)&&(h=void 0);h&&h.coll===c&&(h.update(a,!1),b&&(h.touched=!0));!h&&b&&g.collectionsWithInit[c]&&(g.collectionsWithInit[c][0].apply(g,[a].concat(g.collectionsWithInit[c][1]||[]).concat([!1])).touched=!0)});b&&g[c].forEach(function(a){a.touched||
a.options.isInternal?delete a.touched:n.push(a)})}});n.forEach(function(a){a.chart&&a.remove(!1)});u&&g.axes.forEach(function(a){a.update({},!1)});m&&g.getSeriesOrderByLinks().forEach(function(a){a.chart&&a.update({},!1)},this);u=l&&l.width;l=l&&(ca(l.height)?ea(l.height,u||g.chartWidth):l.height);k||R(u)&&u!==g.chartWidth||R(l)&&l!==g.chartHeight?g.setSize(u,l,d):U(c,!0)&&g.redraw(d);S(g,"afterUpdate",{options:a,redraw:c,animation:d})};b.prototype.setSubtitle=function(a,c){this.applyDescription("subtitle",
a);this.layOutTitles(c)};b.prototype.setCaption=function(a,c){this.applyDescription("caption",a);this.layOutTitles(c)};b.prototype.showResetZoom=function(){function c(){b.zoomOut()}var b=this,f=a.lang,d=b.options.chart.resetZoomButton,g=d.theme,p=g.states,h="chart"===d.relativeTo||"spacingBox"===d.relativeTo?null:"scrollablePlotBox";S(this,"beforeShowResetZoom",null,function(){b.resetZoomButton=b.renderer.button(f.resetZoom,null,null,c,g,p&&p.hover).attr({align:d.position.align,title:f.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(d.position,
!1,h)});S(this,"afterShowResetZoom")};b.prototype.zoomOut=function(){S(this,"selection",{resetSelection:!0},this.zoom)};b.prototype.zoom=function(a){var c=this,b=c.pointer,f=c.inverted?b.mouseDownX:b.mouseDownY,d=!1,g;!a||a.resetSelection?(c.axes.forEach(function(a){g=a.zoom()}),b.initiated=!1):a.xAxis.concat(a.yAxis).forEach(function(a){var p=a.axis,h=c.inverted?p.left:p.top,n=c.inverted?h+p.width:h+p.height,r=p.isXAxis,m=!1;if(!r&&f>=h&&f<=n||r||!w(f))m=!0;b[r?"zoomX":"zoomY"]&&m&&(g=p.zoom(a.min,
a.max),p.displayBtn&&(d=!0))});var p=c.resetZoomButton;d&&!p?c.showResetZoom():!d&&V(p)&&(c.resetZoomButton=p.destroy());g&&c.redraw(U(c.options.chart.animation,a&&a.animation,100>c.pointCount))};b.prototype.pan=function(a,c){var b=this,f=b.hoverPoints;c="object"===typeof c?c:{enabled:c,type:"x"};var d=b.options.chart,g=b.options.mapNavigation&&b.options.mapNavigation.enabled;d&&d.panning&&(d.panning=c);var p=c.type,h;S(this,"pan",{originalEvent:a},function(){f&&f.forEach(function(a){a.setState()});
var c=b.xAxis;"xy"===p?c=c.concat(b.yAxis):"y"===p&&(c=b.yAxis);var d={};c.forEach(function(c){if(c.options.panningEnabled&&!c.options.isInternal){var f=c.horiz,n=a[f?"chartX":"chartY"];f=f?"mouseDownX":"mouseDownY";var r=b[f],m=c.minPointOffset||0,k=c.reversed&&!b.inverted||!c.reversed&&b.inverted?-1:1,w=c.getExtremes(),l=c.toValue(r-n,!0)+m*k,u=c.toValue(r+c.len-n,!0)-(m*k||c.isXAxis&&c.pointRangePadding||0),e=u<l;k=c.hasVerticalPanning();r=e?u:l;l=e?l:u;var t=c.panningState;!k||c.isXAxis||t&&!t.isDirty||
c.series.forEach(function(a){var c=a.getProcessedData(!0);c=a.getExtremes(c.yData,!0);t||(t={startMin:Number.MAX_VALUE,startMax:-Number.MAX_VALUE});R(c.dataMin)&&R(c.dataMax)&&(t.startMin=Math.min(U(a.options.threshold,Infinity),c.dataMin,t.startMin),t.startMax=Math.max(U(a.options.threshold,-Infinity),c.dataMax,t.startMax))});k=Math.min(U(t&&t.startMin,w.dataMin),m?w.min:c.toValue(c.toPixels(w.min)-c.minPixelPadding));u=Math.max(U(t&&t.startMax,w.dataMax),m?w.max:c.toValue(c.toPixels(w.max)+c.minPixelPadding));
c.panningState=t;c.isOrdinal||(m=k-r,0<m&&(l+=m,r=k),m=l-u,0<m&&(l=u,r-=m),c.series.length&&r!==w.min&&l!==w.max&&r>=k&&l<=u&&(c.setExtremes(r,l,!1,!1,{trigger:"pan"}),b.resetZoomButton||g||r===k||l===u||!p.match("y")||(b.showResetZoom(),c.displayBtn=!1),h=!0),d[f]=n)}});ba(d,function(a,c){b[c]=a});h&&b.redraw(!1);Q(b.container,{cursor:"move"})})};return b}();p(e.prototype,{callbacks:[],collectionsWithInit:{xAxis:[e.prototype.addAxis,[!0]],yAxis:[e.prototype.addAxis,[!1]],series:[e.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 e});P(e,"Mixins/LegendSymbol.js",[e["Core/Globals.js"],e["Core/Utilities.js"]],function(e,v){var q=v.merge,C=v.pick;return e.LegendSymbolMixin={drawRectangle:function(e,q){var A=e.symbolHeight,B=e.options.squareSymbol;q.legendSymbol=this.chart.renderer.rect(B?(e.symbolWidth-A)/2:0,e.baseline-A+1,B?A:e.symbolWidth,A,C(e.options.symbolRadius,A/2)).addClass("highcharts-point").attr({zIndex:3}).add(q.legendGroup)},drawLineMarker:function(e){var A=this.options,F=A.marker,B=e.symbolWidth,l=e.symbolHeight,
k=l/2,d=this.chart.renderer,b=this.legendGroup;e=e.baseline-Math.round(.3*e.fontMetrics.b);var t={};this.chart.styledMode||(t={"stroke-width":A.lineWidth||0},A.dashStyle&&(t.dashstyle=A.dashStyle));this.legendLine=d.path([["M",0,e],["L",B,e]]).addClass("highcharts-graph").attr(t).add(b);F&&!1!==F.enabled&&B&&(A=Math.min(C(F.radius,k),k),0===this.symbol.indexOf("url")&&(F=q(F,{width:l,height:l}),A=0),this.legendSymbol=F=d.symbol(this.symbol,B/2-A,e-A,2*A,2*A,F).addClass("highcharts-point").add(b),
F.isMarker=!0)}}});P(e,"Core/Series/Series.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Foundation.js"],e["Core/Globals.js"],e["Mixins/LegendSymbol.js"],e["Core/DefaultOptions.js"],e["Core/Color/Palette.js"],e["Core/Series/Point.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Renderer/SVG/SVGElement.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F,B,l,k){var d=e.animObject,b=e.setAnimation,t=v.registerEventOptions,q=E.hasTouch,x=E.svg,m=E.win,g=D.defaultOptions,n=B.seriesTypes,J=k.addEvent,
O=k.arrayMax,z=k.arrayMin,u=k.clamp,c=k.cleanRecursively,h=k.correctFloat,a=k.defined,f=k.erase,y=k.error,L=k.extend,K=k.find,r=k.fireEvent,G=k.getNestedProperty,Q=k.isArray,w=k.isNumber,H=k.isString,M=k.merge,T=k.objectEach,p=k.pick,N=k.removeEvent,S=k.splat,aa=k.syncTimeout;e=function(){function e(){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}e.prototype.init=function(a,c){r(this,"init",{options:c});var b=this,f=a.series;this.eventsToUnbind=[];b.chart=a;b.options=b.setOptions(c);c=b.options;b.linkedSeries=[];b.bindAxes();L(b,{name:c.name,state:"",visible:!1!==c.visible,selected:!0===c.selected});t(this,c);var d=c.events;if(d&&d.click||c.point&&c.point.events&&c.point.events.click||c.allowPointSelect)a.runTrackerClick=!0;b.getColor();b.getSymbol();b.parallelArrays.forEach(function(a){b[a+"Data"]||(b[a+
"Data"]=[])});b.isCartesian&&(a.hasCartesianSeries=!0);var g;f.length&&(g=f[f.length-1]);b._i=p(g&&g._i,-1)+1;b.opacity=b.options.opacity;a.orderSeries(this.insert(f));c.dataSorting&&c.dataSorting.enabled?b.setDataSortingOptions():b.points||b.data||b.setData(c.data,!1);r(this,"afterInit")};e.prototype.is=function(a){return n[a]&&this instanceof n[a]};e.prototype.insert=function(a){var c=this.options.index,b;if(w(c)){for(b=a.length;b--;)if(c>=p(a[b].options.index,a[b]._i)){a.splice(b+1,0,this);break}-1===
b&&a.unshift(this);b+=1}else a.push(this);return p(b,a.length-1)};e.prototype.bindAxes=function(){var a=this,c=a.options,b=a.chart,f;r(this,"bindAxes",null,function(){(a.axisTypes||[]).forEach(function(d){var g=0;b[d].forEach(function(b){f=b.options;if(c[d]===g&&!f.isInternal||"undefined"!==typeof c[d]&&c[d]===f.id||"undefined"===typeof c[d]&&0===f.index)a.insert(b.series),a[d]=b,b.isDirty=!0;f.isInternal||g++});a[d]||a.optionalAxis===d||y(18,!0,b)})});r(this,"afterBindAxes")};e.prototype.updateParallelArrays=
function(a,c){var b=a.series,f=arguments,d=w(c)?function(f){var d="y"===f&&b.toYData?b.toYData(a):a[f];b[f+"Data"][c]=d}:function(a){Array.prototype[c].apply(b[a+"Data"],Array.prototype.slice.call(f,2))};b.parallelArrays.forEach(d)};e.prototype.hasData=function(){return this.visible&&"undefined"!==typeof this.dataMax&&"undefined"!==typeof this.dataMin||this.visible&&this.yData&&0<this.yData.length};e.prototype.autoIncrement=function(){var a=this.options,c=this.xIncrement,b,f=a.pointIntervalUnit,d=
this.chart.time;c=p(c,a.pointStart,0);this.pointInterval=b=p(this.pointInterval,a.pointInterval,1);f&&(a=new d.Date(c),"day"===f?d.set("Date",a,d.get("Date",a)+b):"month"===f?d.set("Month",a,d.get("Month",a)+b):"year"===f&&d.set("FullYear",a,d.get("FullYear",a)+b),b=a.getTime()-c);this.xIncrement=c+b;return c};e.prototype.setDataSortingOptions=function(){var c=this.options;L(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1});a(c.pointRange)||(c.pointRange=1)};e.prototype.setOptions=
function(c){var b=this.chart,f=b.options,d=f.plotOptions,h=b.userOptions||{};c=M(c);b=b.styledMode;var n={plotOptions:d,userOptions:c};r(this,"setOptions",n);var m=n.plotOptions[this.type],k=h.plotOptions||{};this.userOptions=n.userOptions;h=M(m,d.series,h.plotOptions&&h.plotOptions[this.type],c);this.tooltipOptions=M(g.tooltip,g.plotOptions.series&&g.plotOptions.series.tooltip,g.plotOptions[this.type].tooltip,f.tooltip.userOptions,d.series&&d.series.tooltip,d[this.type].tooltip,c.tooltip);this.stickyTracking=
p(c.stickyTracking,k[this.type]&&k[this.type].stickyTracking,k.series&&k.series.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:h.stickyTracking);null===m.marker&&delete h.marker;this.zoneAxis=h.zoneAxis;f=this.zones=(h.zones||[]).slice();!h.negativeColor&&!h.negativeFillColor||h.zones||(d={value:h[this.zoneAxis+"Threshold"]||h.threshold||0,className:"highcharts-negative"},b||(d.color=h.negativeColor,d.fillColor=h.negativeFillColor),f.push(d));f.length&&a(f[f.length-1].value)&&
f.push(b?{}:{color:this.color,fillColor:this.fillColor});r(this,"afterSetOptions",{options:h});return h};e.prototype.getName=function(){return p(this.options.name,"Series "+(this.index+1))};e.prototype.getCyclic=function(c,b,f){var d=this.chart,g=this.userOptions,h=c+"Index",n=c+"Counter",r=f?f.length:p(d.options.chart[c+"Count"],d[c+"Count"]);if(!b){var m=p(g[h],g["_"+h]);a(m)||(d.series.length||(d[n]=0),g["_"+h]=m=d[n]%r,d[n]+=1);f&&(b=f[m])}"undefined"!==typeof m&&(this[h]=m);this[c]=b};e.prototype.getColor=
function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color=A.neutralColor20:this.getCyclic("color",this.options.color||g.plotOptions[this.type].color,this.chart.options.colors)};e.prototype.getPointsCollection=function(){return(this.hasGroupedData?this.points:this.data)||[]};e.prototype.getSymbol=function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)};e.prototype.findPointIndex=function(a,c){var b=a.id,f=a.x,d=this.points,g,h=this.options.dataSorting;
if(b)var p=this.chart.get(b);else if(this.linkedParent||this.enabledDataSorting){var n=h&&h.matchByName?"name":"index";p=K(d,function(c){return!c.touched&&c[n]===a[n]});if(!p)return}if(p){var r=p&&p.index;"undefined"!==typeof r&&(g=!0)}"undefined"===typeof r&&w(f)&&(r=this.xData.indexOf(f,c));-1!==r&&"undefined"!==typeof r&&this.cropped&&(r=r>=this.cropStart?r-this.cropStart:r);!g&&d[r]&&d[r].touched&&(r=void 0);return r};e.prototype.updateData=function(c,b){var f=this.options,d=f.dataSorting,g=this.points,
p=[],h,n,r,m=this.requireSorting,k=c.length===g.length,e=!0;this.xIncrement=null;c.forEach(function(c,b){var n=a(c)&&this.pointClass.prototype.optionsToObject.call({series:this},c)||{};var e=n.x;if(n.id||w(e)){if(e=this.findPointIndex(n,r),-1===e||"undefined"===typeof e?p.push(c):g[e]&&c!==f.data[e]?(g[e].update(c,!1,null,!1),g[e].touched=!0,m&&(r=e+1)):g[e]&&(g[e].touched=!0),!k||b!==e||d&&d.enabled||this.hasDerivedData)h=!0}else p.push(c)},this);if(h)for(c=g.length;c--;)(n=g[c])&&!n.touched&&n.remove&&
n.remove(!1,b);else!k||d&&d.enabled?e=!1:(c.forEach(function(a,c){a!==g[c].y&&g[c].update&&g[c].update(a,!1,null,!1)}),p.length=0);g.forEach(function(a){a&&(a.touched=!1)});if(!e)return!1;p.forEach(function(a){this.addPoint(a,!1,null,null,!1)},this);null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=O(this.xData),this.autoIncrement());return!0};e.prototype.setData=function(a,c,b,f){var d=this,g=d.points,h=g&&g.length||0,n,r=d.options,m=d.chart,k=r.dataSorting,e=null,l=d.xAxis;
e=r.turboThreshold;var u=this.xData,t=this.yData,z=(n=d.pointArrayMap)&&n.length,x=r.keys,G=0,q=1,R;a=a||[];n=a.length;c=p(c,!0);k&&k.enabled&&(a=this.sortData(a));!1!==f&&n&&h&&!d.cropped&&!d.hasGroupedData&&d.visible&&!d.isSeriesBoosting&&(R=this.updateData(a,b));if(!R){d.xIncrement=null;d.colorCounter=0;this.parallelArrays.forEach(function(a){d[a+"Data"].length=0});if(e&&n>e)if(e=d.getFirstValidPoint(a),w(e))for(b=0;b<n;b++)u[b]=this.autoIncrement(),t[b]=a[b];else if(Q(e))if(z)for(b=0;b<n;b++)f=
a[b],u[b]=f[0],t[b]=f.slice(1,z+1);else for(x&&(G=x.indexOf("x"),q=x.indexOf("y"),G=0<=G?G:0,q=0<=q?q:1),b=0;b<n;b++)f=a[b],u[b]=f[G],t[b]=f[q];else y(12,!1,m);else for(b=0;b<n;b++)"undefined"!==typeof a[b]&&(f={series:d},d.pointClass.prototype.applyOptions.apply(f,[a[b]]),d.updateParallelArrays(f,b));t&&H(t[0])&&y(14,!0,m);d.data=[];d.options.data=d.userOptions.data=a;for(b=h;b--;)g[b]&&g[b].destroy&&g[b].destroy();l&&(l.minRange=l.userMinRange);d.isDirty=m.isDirtyBox=!0;d.isDirtyData=!!g;b=!1}"point"===
r.legendType&&(this.processData(),this.generatePoints());c&&m.redraw(b)};e.prototype.sortData=function(c){var b=this,f=b.options.dataSorting.sortKey||"y",d=function(c,b){return a(b)&&c.pointClass.prototype.optionsToObject.call({series:c},b)||{}};c.forEach(function(a,f){c[f]=d(b,a);c[f].index=f},this);c.concat().sort(function(a,c){a=G(f,a);c=G(f,c);return c<a?-1:c>a?1:0}).forEach(function(a,c){a.x=c},this);b.linkedSeries&&b.linkedSeries.forEach(function(a){var b=a.options,f=b.data;b.dataSorting&&b.dataSorting.enabled||
!f||(f.forEach(function(b,g){f[g]=d(a,b);c[g]&&(f[g].x=c[g].x,f[g].index=g)}),a.setData(f,!1))});return c};e.prototype.getProcessedData=function(a){var c=this.xData,b=this.yData,f=c.length;var d=0;var g=this.xAxis,h=this.options;var p=h.cropThreshold;var n=a||this.getExtremesFromAll||h.getExtremesFromAll,r=this.isCartesian;a=g&&g.val2lin;h=!(!g||!g.logarithmic);var m=this.requireSorting;if(g){g=g.getExtremes();var k=g.min;var e=g.max}if(r&&this.sorted&&!n&&(!p||f>p||this.forceCrop))if(c[f-1]<k||c[0]>
e)c=[],b=[];else if(this.yData&&(c[0]<k||c[f-1]>e)){d=this.cropData(this.xData,this.yData,k,e);c=d.xData;b=d.yData;d=d.start;var w=!0}for(p=c.length||1;--p;)if(f=h?a(c[p])-a(c[p-1]):c[p]-c[p-1],0<f&&("undefined"===typeof l||f<l))var l=f;else 0>f&&m&&(y(15,!1,this.chart),m=!1);return{xData:c,yData:b,cropped:w,cropStart:d,closestPointRange:l}};e.prototype.processData=function(a){var c=this.xAxis;if(this.isCartesian&&!this.isDirty&&!c.isDirty&&!this.yAxis.isDirty&&!a)return!1;a=this.getProcessedData();
this.cropped=a.cropped;this.cropStart=a.cropStart;this.processedXData=a.xData;this.processedYData=a.yData;this.closestPointRange=this.basePointRange=a.closestPointRange};e.prototype.cropData=function(a,c,b,f,d){var g=a.length,h=0,n=g,r;d=p(d,this.cropShoulder);for(r=0;r<g;r++)if(a[r]>=b){h=Math.max(0,r-d);break}for(b=r;b<g;b++)if(a[b]>f){n=b+d;break}return{xData:a.slice(h,n),yData:c.slice(h,n),start:h,end:n}};e.prototype.generatePoints=function(){var a=this.options,c=a.data,b=this.data,f,d=this.processedXData,
g=this.processedYData,h=this.pointClass,p=d.length,n=this.cropStart||0,m=this.hasGroupedData,k=a.keys,e=[],w;a=a.dataGrouping&&a.dataGrouping.groupAll?n:0;b||m||(b=[],b.length=c.length,b=this.data=b);k&&m&&(this.options.keys=!1);for(w=0;w<p;w++){var l=n+w;if(m){var u=(new h).init(this,[d[w]].concat(S(g[w])));u.dataGroup=this.groupMap[a+w];u.dataGroup.options&&(u.options=u.dataGroup.options,L(u,u.dataGroup.options),delete u.dataLabels)}else(u=b[l])||"undefined"===typeof c[l]||(b[l]=u=(new h).init(this,
c[l],d[w]));u&&(u.index=m?a+w:l,e[w]=u)}this.options.keys=k;if(b&&(p!==(f=b.length)||m))for(w=0;w<f;w++)w!==n||m||(w+=p),b[w]&&(b[w].destroyElements(),b[w].plotX=void 0);this.data=b;this.points=e;r(this,"afterGeneratePoints")};e.prototype.getXExtremes=function(a){return{min:z(a),max:O(a)}};e.prototype.getExtremes=function(a,c){var b=this.xAxis,f=this.yAxis,d=this.processedXData||this.xData,g=[],h=0,p=0;var n=0;var m=this.requireSorting?this.cropShoulder:0,k=f?f.positiveValuesOnly:!1,e;a=a||this.stackedYData||
this.processedYData||[];f=a.length;b&&(n=b.getExtremes(),p=n.min,n=n.max);for(e=0;e<f;e++){var l=d[e];var u=a[e];var t=(w(u)||Q(u))&&(u.length||0<u||!k);l=c||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!b||(d[e+m]||l)>=p&&(d[e-m]||l)<=n;if(t&&l)if(t=u.length)for(;t--;)w(u[t])&&(g[h++]=u[t]);else g[h++]=u}a={dataMin:z(g),dataMax:O(g)};r(this,"afterGetExtremes",{dataExtremes:a});return a};e.prototype.applyExtremes=function(){var a=this.getExtremes();this.dataMin=a.dataMin;
this.dataMax=a.dataMax;return a};e.prototype.getFirstValidPoint=function(a){for(var c=null,b=a.length,f=0;null===c&&f<b;)c=a[f],f++;return c};e.prototype.translate=function(){this.processedXData||this.processData();this.generatePoints();var c=this.options,b=c.stacking,f=this.xAxis,d=f.categories,g=this.enabledDataSorting,n=this.yAxis,m=this.points,k=m.length,e=!!this.modifyValue,l,t=this.pointPlacementToXValue(),z=!!t,y=c.threshold,H=c.startFromThreshold?y:0,x,G=this.zoneAxis||"y",q=Number.MAX_VALUE;
for(l=0;l<k;l++){var M=m[l],I=M.x,J=M.y,K=M.low,T=b&&n.stacking&&n.stacking.stacks[(this.negStacks&&J<(H?0:y)?"-":"")+this.stackKey],N=void 0,L=void 0;if(n.positiveValuesOnly&&!n.validatePositiveValue(J)||f.positiveValuesOnly&&!f.validatePositiveValue(I))M.isNull=!0;M.plotX=x=h(u(f.translate(I,0,0,0,1,t,"flags"===this.type),-1E5,1E5));if(b&&this.visible&&T&&T[I]){var O=this.getStackIndicator(O,I,this.index);M.isNull||(N=T[I],L=N.points[O.key])}Q(L)&&(K=L[0],J=L[1],K===H&&O.key===T[I].base&&(K=p(w(y)&&
y,n.min)),n.positiveValuesOnly&&0>=K&&(K=null),M.total=M.stackTotal=N.total,M.percentage=N.total&&M.y/N.total*100,M.stackY=J,this.irregularWidths||N.setOffset(this.pointXOffset||0,this.barW||0));M.yBottom=a(K)?u(n.translate(K,0,1,0,1),-1E5,1E5):null;e&&(J=this.modifyValue(J,M));M.plotY=void 0;w(J)&&(J=n.translate(J,!1,!0,!1,!0),"undefined"!==typeof J&&(M.plotY=u(J,-1E5,1E5)));M.isInside=this.isPointInside(M);M.clientX=z?h(f.translate(I,0,0,0,1,t)):x;M.negative=M[G]<(c[G+"Threshold"]||y||0);M.category=
d&&"undefined"!==typeof d[M.x]?d[M.x]:M.x;if(!M.isNull&&!1!==M.visible){"undefined"!==typeof B&&(q=Math.min(q,Math.abs(x-B)));var B=x}M.zone=this.zones.length&&M.getZone();!M.graphic&&this.group&&g&&(M.isNew=!0)}this.closestPointRangePx=q;r(this,"afterTranslate")};e.prototype.getValidPoints=function(a,c,b){var f=this.chart;return(a||this.points||[]).filter(function(a){return c&&!f.isInsidePlot(a.plotX,a.plotY,{inverted:f.inverted})?!1:!1!==a.visible&&(b||!a.isNull)})};e.prototype.getClipBox=function(a,
c){var b=this.options,f=this.chart,d=f.inverted,g=this.xAxis,h=g&&this.yAxis,p=f.options.chart.scrollablePlotArea||{};a&&!1===b.clip&&h?a=d?{y:-f.chartWidth+h.len+h.pos,height:f.chartWidth,width:f.chartHeight,x:-f.chartHeight+g.len+g.pos}:{y:-h.pos,height:f.chartHeight,width:f.chartWidth,x:-g.pos}:(a=this.clipBox||f.clipBox,c&&(a.width=f.plotSizeX,a.x=(f.scrollablePixelsX||0)*(p.scrollPositionX||0)));return c?{width:a.width,x:a.x}:a};e.prototype.getSharedClipKey=function(a){if(this.sharedClipKey)return this.sharedClipKey;
var c=[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=c;return c};e.prototype.setClip=function(a){var c=this.chart,b=this.options,f=c.renderer,d=c.inverted,g=this.clipBox,h=this.getClipBox(a),p=this.getSharedClipKey(a),n=c.sharedClips[p],r=c.sharedClips[p+"m"];a&&(h.width=0,d&&(h.x=c.plotHeight+(!1!==b.clip?0:c.plotTop)));n?c.hasLoaded||n.attr(h):(a&&(c.sharedClips[p+"m"]=r=f.clipRect(d?(c.plotSizeX||
0)+99:-99,d?-c.plotLeft:-c.plotTop,99,d?c.chartWidth:c.chartHeight)),c.sharedClips[p]=n=f.clipRect(h),n.count={length:0});a&&!n.count[this.index]&&(n.count[this.index]=!0,n.count.length+=1);if(!1!==b.clip||a)this.group.clip(a||g?n:c.clipRect),this.markerGroup.clip(r);a||(n.count[this.index]&&(delete n.count[this.index],--n.count.length),0===n.count.length&&(g||(c.sharedClips[p]=n.destroy()),r&&(c.sharedClips[p+"m"]=r.destroy())))};e.prototype.animate=function(a){var c=this.chart,b=d(this.options.animation),
f=this.sharedClipKey;if(a)this.setClip(b);else if(f){a=c.sharedClips[f];f=c.sharedClips[f+"m"];var g=this.getClipBox(b,!0);a&&a.animate(g,b);f&&f.animate({width:g.width+99,x:g.x-(c.inverted?0:99)},b)}};e.prototype.afterAnimate=function(){this.setClip();r(this,"afterAnimate");this.finishedAnimating=!0};e.prototype.drawPoints=function(){var a=this.points,c=this.chart,b,f,d=this.options.marker,g=this[this.specialGroup]||this.markerGroup,h=this.xAxis,n=p(d.enabled,!h||h.isRadial?!0:null,this.closestPointRangePx>=
d.enabledThreshold*d.radius);if(!1!==d.enabled||this._hasPointMarkers)for(b=0;b<a.length;b++){var r=a[b];var m=(f=r.graphic)?"animate":"attr";var k=r.marker||{};var e=!!r.marker;if((n&&"undefined"===typeof k.enabled||k.enabled)&&!r.isNull&&!1!==r.visible){var w=p(k.symbol,this.symbol,"rect");var l=this.markerAttribs(r,r.selected&&"select");this.enabledDataSorting&&(r.startXPos=h.reversed?-(l.width||0):h.width);var u=!1!==r.isInside;f?f[u?"show":"hide"](u).animate(l):u&&(0<(l.width||0)||r.hasImage)&&
(r.graphic=f=c.renderer.symbol(w,l.x,l.y,l.width,l.height,e?k:d).add(g),this.enabledDataSorting&&c.hasRendered&&(f.attr({x:r.startXPos}),m="animate"));f&&"animate"===m&&f[u?"show":"hide"](u).animate(l);if(f&&!c.styledMode)f[m](this.pointAttribs(r,r.selected&&"select"));f&&f.addClass(r.getClassName(),!0)}else f&&(r.graphic=f.destroy())}};e.prototype.markerAttribs=function(a,c){var b=this.options,f=b.marker,d=a.marker||{},g=d.symbol||f.symbol,h=p(d.radius,f.radius);c&&(f=f.states[c],c=d.states&&d.states[c],
h=p(c&&c.radius,f&&f.radius,h+(f&&f.radiusPlus||0)));a.hasImage=g&&0===g.indexOf("url");a.hasImage&&(h=0);a={x:b.crisp?Math.floor(a.plotX-h):a.plotX-h,y:a.plotY-h};h&&(a.width=a.height=2*h);return a};e.prototype.pointAttribs=function(a,c){var b=this.options.marker,f=a&&a.options,d=f&&f.marker||{},g=this.color,h=f&&f.color,n=a&&a.color;f=p(d.lineWidth,b.lineWidth);var r=a&&a.zone&&a.zone.color;a=1;g=h||r||n||g;h=d.fillColor||b.fillColor||g;g=d.lineColor||b.lineColor||g;c=c||"normal";b=b.states[c];
c=d.states&&d.states[c]||{};f=p(c.lineWidth,b.lineWidth,f+p(c.lineWidthPlus,b.lineWidthPlus,0));h=c.fillColor||b.fillColor||h;g=c.lineColor||b.lineColor||g;a=p(c.opacity,b.opacity,a);return{stroke:g,"stroke-width":f,fill:h,opacity:a}};e.prototype.destroy=function(a){var c=this,b=c.chart,d=/AppleWebKit\/533/.test(m.navigator.userAgent),g,h,p=c.data||[],n,e;r(c,"destroy");this.removeEvents(a);(c.axisTypes||[]).forEach(function(a){(e=c[a])&&e.series&&(f(e.series,c),e.isDirty=e.forceRedraw=!0)});c.legendItem&&
c.chart.legend.destroyItem(c);for(h=p.length;h--;)(n=p[h])&&n.destroy&&n.destroy();c.clips&&c.clips.forEach(function(a){return a.destroy()});k.clearTimeout(c.animationTimeout);T(c,function(a,c){a instanceof l&&!a.survive&&(g=d&&"group"===c?"hide":"destroy",a[g]())});b.hoverSeries===c&&(b.hoverSeries=void 0);f(b.series,c);b.orderSeries();T(c,function(b,f){a&&"hcEvents"===f||delete c[f]})};e.prototype.applyZones=function(){var a=this,c=this.chart,b=c.renderer,f=this.zones,d,g,h=this.clips||[],n,r=this.graph,
m=this.area,k=Math.max(c.chartWidth,c.chartHeight),e=this[(this.zoneAxis||"y")+"Axis"],w=c.inverted,l,t,z,y=!1,H,x;if(f.length&&(r||m)&&e&&"undefined"!==typeof e.min){var G=e.reversed;var q=e.horiz;r&&!this.showLine&&r.hide();m&&m.hide();var M=e.getExtremes();f.forEach(function(f,Q){d=G?q?c.plotWidth:0:q?0:e.toPixels(M.min)||0;d=u(p(g,d),0,k);g=u(Math.round(e.toPixels(p(f.value,M.max),!0)||0),0,k);y&&(d=g=e.toPixels(M.max));l=Math.abs(d-g);t=Math.min(d,g);z=Math.max(d,g);e.isXAxis?(n={x:w?z:t,y:0,
width:l,height:k},q||(n.x=c.plotHeight-n.x)):(n={x:0,y:w?z:t,width:k,height:l},q&&(n.y=c.plotWidth-n.y));w&&b.isVML&&(n=e.isXAxis?{x:0,y:G?t:z,height:n.width,width:c.chartWidth}:{x:n.y-c.plotLeft-c.spacingBox.x,y:0,width:n.height,height:c.chartHeight});h[Q]?h[Q].animate(n):h[Q]=b.clipRect(n);H=a["zone-area-"+Q];x=a["zone-graph-"+Q];r&&x&&x.clip(h[Q]);m&&H&&H.clip(h[Q]);y=f.value>M.max;a.resetZones&&0===g&&(g=void 0)});this.clips=h}else a.visible&&(r&&r.show(!0),m&&m.show(!0))};e.prototype.invertGroups=
function(a){function c(){["group","markerGroup"].forEach(function(c){b[c]&&(f.renderer.isVML&&b[c].attr({width:b.yAxis.len,height:b.xAxis.len}),b[c].width=b.yAxis.len,b[c].height=b.xAxis.len,b[c].invert(b.isRadialSeries?!1:a))})}var b=this,f=b.chart;b.xAxis&&(b.eventsToUnbind.push(J(f,"resize",c)),c(),b.invertGroups=c)};e.prototype.plotGroup=function(c,b,f,d,g){var h=this[c],p=!h;f={visibility:f,zIndex:d||.1};"undefined"===typeof this.opacity||this.chart.styledMode||"inactive"===this.state||(f.opacity=
this.opacity);p&&(this[c]=h=this.chart.renderer.g().add(g));h.addClass("highcharts-"+b+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(a(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(h.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0);h.attr(f)[p?"attr":"animate"](this.getPlotBox());return h};e.prototype.getPlotBox=function(){var a=this.chart,c=this.xAxis,b=this.yAxis;a.inverted&&(c=b,b=this.xAxis);return{translateX:c?c.left:
a.plotLeft,translateY:b?b.top:a.plotTop,scaleX:1,scaleY:1}};e.prototype.removeEvents=function(a){a||N(this);this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind.length=0)};e.prototype.render=function(){var a=this,c=a.chart,b=a.options,f=d(b.animation),g=!a.finishedAnimating&&c.renderer.isSVG&&f.duration,h=a.visible?"inherit":"hidden",n=b.zIndex,m=a.hasRendered,k=c.seriesGroup,e=c.inverted;r(this,"render");var w=a.plotGroup("group","series",h,n,k);a.markerGroup=
a.plotGroup("markerGroup","markers",h,n,k);g&&a.animate&&a.animate(!0);w.inverted=p(a.invertible,a.isCartesian)?e:!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(e);!1===b.clip||a.sharedClipKey||m||w.clip(c.clipRect);g&&a.animate&&a.animate();m||(g&&f.defer&&(g+=f.defer),a.animationTimeout=aa(function(){a.afterAnimate()},g||
0));a.isDirty=!1;a.hasRendered=!0;r(a,"afterRender")};e.prototype.redraw=function(){var a=this.chart,c=this.isDirty||this.isDirtyData,b=this.group,f=this.xAxis,d=this.yAxis;b&&(a.inverted&&b.attr({width:a.plotWidth,height:a.plotHeight}),b.animate({translateX:p(f&&f.left,a.plotLeft),translateY:p(d&&d.top,a.plotTop)}));this.translate();this.render();c&&delete this.kdTree};e.prototype.searchPoint=function(a,c){var b=this.xAxis,f=this.yAxis,d=this.chart.inverted;return this.searchKDTree({clientX:d?b.len-
a.chartY+b.pos:a.chartX-b.pos,plotY:d?f.len-a.chartX+f.pos:a.chartY-f.pos},c,a)};e.prototype.buildKDTree=function(a){function c(a,f,d){var g;if(g=a&&a.length){var h=b.kdAxisArray[f%d];a.sort(function(a,c){return a[h]-c[h]});g=Math.floor(g/2);return{point:a[g],left:c(a.slice(0,g),f+1,d),right:c(a.slice(g+1),f+1,d)}}}this.buildingKdTree=!0;var b=this,f=-1<b.options.findNearestPointBy.indexOf("y")?2:1;delete b.kdTree;aa(function(){b.kdTree=c(b.getValidPoints(null,!b.directTouch),f,f);b.buildingKdTree=
!1},b.options.kdNow||a&&"touchstart"===a.type?0:1)};e.prototype.searchKDTree=function(c,b,f){function d(c,b,f,r){var m=b.point,k=g.kdAxisArray[f%r],e=m;var w=a(c[h])&&a(m[h])?Math.pow(c[h]-m[h],2):null;var l=a(c[p])&&a(m[p])?Math.pow(c[p]-m[p],2):null;l=(w||0)+(l||0);m.dist=a(l)?Math.sqrt(l):Number.MAX_VALUE;m.distX=a(w)?Math.sqrt(w):Number.MAX_VALUE;k=c[k]-m[k];l=0>k?"left":"right";w=0>k?"right":"left";b[l]&&(l=d(c,b[l],f+1,r),e=l[n]<e[n]?l:m);b[w]&&Math.sqrt(k*k)<e[n]&&(c=d(c,b[w],f+1,r),e=c[n]<
e[n]?c:e);return e}var g=this,h=this.kdAxisArray[0],p=this.kdAxisArray[1],n=b?"distX":"dist";b=-1<g.options.findNearestPointBy.indexOf("y")?2:1;this.kdTree||this.buildingKdTree||this.buildKDTree(f);if(this.kdTree)return d(c,this.kdTree,b,b)};e.prototype.pointPlacementToXValue=function(){var a=this.options,c=a.pointRange,b=this.xAxis;a=a.pointPlacement;"between"===a&&(a=b.reversed?-.5:.5);return w(a)?a*(c||b.pointRange):0};e.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};e.prototype.drawTracker=function(){var a=this,c=a.options,b=c.trackByArea,f=[].concat(b?a.areaPath:a.graphPath),d=a.chart,g=d.pointer,h=d.renderer,p=d.options.tooltip.snap,n=a.tracker,m=function(c){if(d.hoverSeries!==a)a.onMouseOver()},k="rgba(192,192,192,"+(x?.0001:.002)+")";n?n.attr({d:f}):a.graph&&(a.tracker=h.path(f).attr({visibility:a.visible?"visible":"hidden",zIndex:2}).addClass(b?"highcharts-tracker-area":
"highcharts-tracker-line").add(a.group),d.styledMode||a.tracker.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:k,fill:b?k:"none","stroke-width":a.graph.strokeWidth()+(b?0:2*p)}),[a.tracker,a.markerGroup,a.dataLabelsGroup].forEach(function(a){if(a&&(a.addClass("highcharts-tracker").on("mouseover",m).on("mouseout",function(a){g.onTrackerMouseOut(a)}),c.cursor&&!d.styledMode&&a.css({cursor:c.cursor}),q))a.on("touchstart",m)}));r(this,"afterDrawTracker")};e.prototype.addPoint=function(a,
c,b,f,d){var g=this.options,h=this.data,n=this.chart,m=this.xAxis;m=m&&m.hasNames&&m.names;var k=g.data,e=this.xData,w;c=p(c,!0);var l={series:this};this.pointClass.prototype.applyOptions.apply(l,[a]);var u=l.x;var t=e.length;if(this.requireSorting&&u<e[t-1])for(w=!0;t&&e[t-1]>u;)t--;this.updateParallelArrays(l,"splice",t,0,0);this.updateParallelArrays(l,t);m&&l.name&&(m[u]=l.name);k.splice(t,0,a);w&&(this.data.splice(t,0,null),this.processData());"point"===g.legendType&&this.generatePoints();b&&
(h[0]&&h[0].remove?h[0].remove(!1):(h.shift(),this.updateParallelArrays(l,"shift"),k.shift()));!1!==d&&r(this,"addPoint",{point:l});this.isDirtyData=this.isDirty=!0;c&&n.redraw(f)};e.prototype.removePoint=function(a,c,f){var d=this,g=d.data,h=g[a],n=d.points,r=d.chart,m=function(){n&&n.length===g.length&&n.splice(a,1);g.splice(a,1);d.options.data.splice(a,1);d.updateParallelArrays(h||{series:d},"splice",a,1);h&&h.destroy();d.isDirty=!0;d.isDirtyData=!0;c&&r.redraw()};b(f,r);c=p(c,!0);h?h.firePointEvent("remove",
null,m):m()};e.prototype.remove=function(a,c,b,f){function d(){g.destroy(f);h.isDirtyLegend=h.isDirtyBox=!0;h.linkSeries();p(a,!0)&&h.redraw(c)}var g=this,h=g.chart;!1!==b?r(g,"remove",null,d):d()};e.prototype.update=function(a,b){a=c(a,this.userOptions);r(this,"update",{options:a});var f=this,d=f.chart,g=f.userOptions,h=f.initialType||f.type,m=d.options.plotOptions,k=a.type||g.type||d.options.chart.type,e=!(this.hasDerivedData||k&&k!==this.type||"undefined"!==typeof a.pointStart||"undefined"!==typeof a.pointInterval||
f.hasOptionChanged("dataGrouping")||f.hasOptionChanged("pointStart")||f.hasOptionChanged("pointInterval")||f.hasOptionChanged("pointIntervalUnit")||f.hasOptionChanged("keys")),w=n[h].prototype,l,u=["eventOptions","navigatorSeries","baseSeries"],t=f.finishedAnimating&&{animation:!1},z={};k=k||h;e&&(u.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","_hasPointLabels","clips","nodes","layout","mapMap","mapData","minY","maxY","minX","maxX"),
!1!==a.visible&&u.push("area","graph"),f.parallelArrays.forEach(function(a){u.push(a+"Data")}),a.data&&(a.dataSorting&&L(f.options.dataSorting,a.dataSorting),this.setData(a.data,!1)));a=M(g,t,{index:"undefined"===typeof g.index?f.index:g.index,pointStart:p(m&&m.series&&m.series.pointStart,g.pointStart,f.xData[0])},!e&&{data:f.options.data},a);e&&a.data&&(a.data=f.options.data);u=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(u);u.forEach(function(a){u[a]=f[a];delete f[a]});g=!1;
if(n[k]){if(g=k!==f.type,f.remove(!1,!1,!1,!0),g)if(Object.setPrototypeOf)Object.setPrototypeOf(f,n[k].prototype);else{m=Object.hasOwnProperty.call(f,"hcEvents")&&f.hcEvents;for(l in w)f[l]=void 0;L(f,n[k].prototype);m?f.hcEvents=m:delete f.hcEvents}}else y(17,!0,d,{missingModuleFor:k});u.forEach(function(a){f[a]=u[a]});f.init(d,a);if(e&&this.points){var H=f.options;!1===H.visible?(z.graphic=1,z.dataLabel=1):f._hasPointLabels||(a=H.marker,k=H.dataLabels,a&&(!1===a.enabled||"symbol"in a)&&(z.graphic=
1),k&&!1===k.enabled&&(z.dataLabel=1));this.points.forEach(function(a){a&&a.series&&(a.resolveColor(),Object.keys(z).length&&a.destroyElements(z),!1===H.showInLegend&&a.legendItem&&d.legend.destroyItem(a))},this)}f.initialType=h;d.linkSeries();g&&f.linkedSeries.length&&(f.isDirtyData=!0);r(this,"afterUpdate");p(b,!0)&&d.redraw(e?void 0:!1)};e.prototype.setName=function(a){this.name=this.options.name=this.userOptions.name=a;this.chart.isDirtyLegend=!0};e.prototype.hasOptionChanged=function(a){var c=
this.options[a],b=this.chart.options.plotOptions,f=this.userOptions[a];return f?c!==f:c!==p(b&&b[this.type]&&b[this.type][a],b&&b.series&&b.series[a],c)};e.prototype.onMouseOver=function(){var a=this.chart,c=a.hoverSeries;a.pointer.setHoverChartIndex();if(c&&c!==this)c.onMouseOut();this.options.events.mouseOver&&r(this,"mouseOver");this.setState("hover");a.hoverSeries=this};e.prototype.onMouseOut=function(){var a=this.options,c=this.chart,b=c.tooltip,f=c.hoverPoint;c.hoverSeries=null;if(f)f.onMouseOut();
this&&a.events.mouseOut&&r(this,"mouseOut");!b||this.stickyTracking||b.shared&&!this.noSharedTooltip||b.hide();c.series.forEach(function(a){a.setState("",!0)})};e.prototype.setState=function(a,c){var b=this,f=b.options,d=b.graph,g=f.inactiveOtherPoints,h=f.states,n=f.lineWidth,r=f.opacity,m=p(h[a||"normal"]&&h[a||"normal"].animation,b.chart.options.chart.animation);f=0;a=a||"";if(b.state!==a&&([b.group,b.markerGroup,b.dataLabelsGroup].forEach(function(c){c&&(b.state&&c.removeClass("highcharts-series-"+
b.state),a&&c.addClass("highcharts-series-"+a))}),b.state=a,!b.chart.styledMode)){if(h[a]&&!1===h[a].enabled)return;a&&(n=h[a].lineWidth||n+(h[a].lineWidthPlus||0),r=p(h[a].opacity,r));if(d&&!d.dashstyle)for(h={"stroke-width":n},d.animate(h,m);b["zone-graph-"+f];)b["zone-graph-"+f].animate(h,m),f+=1;g||[b.group,b.markerGroup,b.dataLabelsGroup,b.labelBySeries].forEach(function(a){a&&a.animate({opacity:r},m)})}c&&g&&b.points&&b.setAllPointsToState(a||void 0)};e.prototype.setAllPointsToState=function(a){this.points.forEach(function(c){c.setState&&
c.setState(a)})};e.prototype.setVisible=function(a,c){var b=this,f=b.chart,d=b.legendItem,g=f.options.chart.ignoreHiddenSeries,h=b.visible;var p=(b.visible=a=b.options.visible=b.userOptions.visible="undefined"===typeof a?!h:a)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(a){if(b[a])b[a][p]()});if(f.hoverSeries===b||(f.hoverPoint&&f.hoverPoint.series)===b)b.onMouseOut();d&&f.legend.colorizeItem(b,a);b.isDirty=!0;b.options.stacking&&f.series.forEach(function(a){a.options.stacking&&
a.visible&&(a.isDirty=!0)});b.linkedSeries.forEach(function(c){c.setVisible(a,!1)});g&&(f.isDirtyBox=!0);r(b,p);!1!==c&&f.redraw()};e.prototype.show=function(){this.setVisible(!0)};e.prototype.hide=function(){this.setVisible(!1)};e.prototype.select=function(a){this.selected=a=this.options.selected="undefined"===typeof a?!this.selected:a;this.checkbox&&(this.checkbox.checked=a);r(this,a?"select":"unselect")};e.prototype.shouldShowTooltip=function(a,c,b){void 0===b&&(b={});b.series=this;b.visiblePlotOnly=
!0;return this.chart.isInsidePlot(a,c,b)};e.defaultOptions={lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1E3},events:{},marker:{enabledThreshold:2,lineColor:A.backgroundColor,lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:A.neutralColor20,lineColor:A.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 e}();L(e.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,drawLegendSymbol:C.drawLineMarker,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:F,requireSorting:!0,sorted:!0});B.series=e;"";"";return e});P(e,"Extensions/ScrollablePlotArea.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Axis/Axis.js"],e["Core/Chart/Chart.js"],e["Core/Series/Series.js"],e["Core/Renderer/RendererRegistry.js"],e["Core/Utilities.js"]],
function(e,v,E,C,D,A){var q=e.stop,B=A.addEvent,l=A.createElement,k=A.merge,d=A.pick;B(E,"afterSetChartSize",function(b){var d=this.options.chart.scrollablePlotArea,e=d&&d.minWidth;d=d&&d.minHeight;if(!this.renderer.forExport){if(e){if(this.scrollablePixelsX=e=Math.max(0,e-this.chartWidth)){this.scrollablePlotBox=this.renderer.scrollablePlotBox=k(this.plotBox);this.plotBox.width=this.plotWidth+=e;this.inverted?this.clipBox.height+=e:this.clipBox.width+=e;var l={1:{name:"right",value:e}}}}else d&&
(this.scrollablePixelsY=e=Math.max(0,d-this.chartHeight))&&(this.scrollablePlotBox=this.renderer.scrollablePlotBox=k(this.plotBox),this.plotBox.height=this.plotHeight+=e,this.inverted?this.clipBox.width+=e:this.clipBox.height+=e,l={2:{name:"bottom",value:e}});l&&!b.skipAxes&&this.axes.forEach(function(b){l[b.side]?b.getPlotLinePath=function(){var d=l[b.side].name,n=this[d];this[d]=n-l[b.side].value;var m=v.prototype.getPlotLinePath.apply(this,arguments);this[d]=n;return m}:(b.setAxisSize(),b.setAxisTranslation())})}});
B(E,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()});E.prototype.setUpScrolling=function(){var b=this,d={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(d.overflowX="auto");this.scrollablePixelsY&&(d.overflowY="auto");this.scrollingParent=l("div",{className:"highcharts-scrolling-parent"},{position:"relative"},this.renderTo);this.scrollingContainer=
l("div",{className:"highcharts-scrolling"},d,this.scrollingParent);B(this.scrollingContainer,"scroll",function(){b.pointer&&delete b.pointer.chartPosition});this.innerContainer=l("div",{className:"highcharts-inner-container"},null,this.scrollingContainer);this.innerContainer.appendChild(this.container);this.setUpScrolling=null};E.prototype.moveFixedElements=function(){var b=this.container,d=this.fixedRenderer,e=".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(" "),
k;this.scrollablePixelsX&&!this.inverted?k=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?k=".highcharts-xaxis":this.scrollablePixelsY&&!this.inverted?k=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(k=".highcharts-yaxis");k&&e.push(k+":not(.highcharts-radial-axis)",k+"-labels:not(.highcharts-radial-axis-labels)");e.forEach(function(m){[].forEach.call(b.querySelectorAll(m),function(b){(b.namespaceURI===d.SVG_NS?d.box:d.box.parentNode).appendChild(b);b.style.pointerEvents="auto"})})};
E.prototype.applyFixed=function(){var b=!this.fixedDiv,k=this.options.chart,e=k.scrollablePlotArea,x=D.getRendererType();b?(this.fixedDiv=l("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(k.style&&k.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=k=new x(this.fixedDiv,this.chartWidth,this.chartHeight,
this.options.chart.style),this.scrollableMask=k.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":d(e.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),B(this,"afterShowResetZoom",this.moveFixedElements),B(this,"afterDrilldown",this.moveFixedElements),B(this,"afterLayOutTitles",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight);if(this.scrollableDirty||b)this.scrollableDirty=!1,this.moveFixedElements();k=this.chartWidth+
(this.scrollablePixelsX||0);x=this.chartHeight+(this.scrollablePixelsY||0);q(this.container);this.container.style.width=k+"px";this.container.style.height=x+"px";this.renderer.boxWrapper.attr({width:k,height:x,viewBox:[0,0,k,x].join(" ")});this.chartBackground.attr({width:k,height:x});this.scrollingContainer.style.height=this.chartHeight+"px";b&&(e.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*e.scrollPositionX),e.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*
e.scrollPositionY));x=this.axisOffset;b=this.plotTop-x[0]-1;e=this.plotLeft-x[3]-1;k=this.plotTop+this.plotHeight+x[2]+1;x=this.plotLeft+this.plotWidth+x[1]+1;var m=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),g=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);b=this.scrollablePixelsX?[["M",0,b],["L",this.plotLeft-1,b],["L",this.plotLeft-1,k],["L",0,k],["Z"],["M",m,b],["L",this.chartWidth,b],["L",this.chartWidth,k],["L",m,k],["Z"]]:this.scrollablePixelsY?[["M",e,0],["L",e,this.plotTop-
1],["L",x,this.plotTop-1],["L",x,0],["Z"],["M",e,g],["L",e,this.chartHeight],["L",x,this.chartHeight],["L",x,g],["Z"]]:[["M",0,0]];"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:b})};B(v,"afterInit",function(){this.chart.scrollableDirty=!0});B(C,"show",function(){this.chart.scrollableDirty=!0});""});P(e,"Core/Axis/StackingAxis.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Utilities.js"]],function(e,v){var q=e.getDeferredAnimation,C=v.addEvent,D=v.destroyObjectProperties,
A=v.fireEvent,F=v.isNumber,B=v.objectEach,l=function(){function k(d){this.oldStacks={};this.stacks={};this.stacksTouched=0;this.axis=d}k.prototype.buildStacks=function(){var d=this.axis,b=d.series,k=d.options.reversedStacks,e=b.length,l;if(!d.isXAxis){this.usePercentage=!1;for(l=e;l--;){var m=b[k?l:e-l-1];m.setStackedPoints();m.setGroupedPoints()}for(l=0;l<e;l++)b[l].modifyStacks();A(d,"afterBuildStacks")}};k.prototype.cleanStacks=function(){if(!this.axis.isXAxis){if(this.oldStacks)var d=this.stacks=
this.oldStacks;B(d,function(b){B(b,function(b){b.cumulative=b.total})})}};k.prototype.resetStacks=function(){var d=this,b=this.stacks;this.axis.isXAxis||B(b,function(b){B(b,function(k,e){F(k.touched)&&k.touched<d.stacksTouched?(k.destroy(),delete b[e]):(k.total=null,k.cumulative=null)})})};k.prototype.renderStackTotals=function(){var d=this.axis,b=d.chart,k=b.renderer,e=this.stacks;d=q(b,d.options.stackLabels&&d.options.stackLabels.animation||!1);var l=this.stackTotalGroup=this.stackTotalGroup||k.g("stack-labels").attr({visibility:"visible",
zIndex:6,opacity:0}).add();l.translate(b.plotLeft,b.plotTop);B(e,function(b){B(b,function(b){b.render(l)})});l.animate({opacity:1},d)};return k}();return function(){function k(){}k.compose=function(d){C(d,"init",k.onInit);C(d,"destroy",k.onDestroy)};k.onDestroy=function(){var d=this.stacking;if(d){var b=d.stacks;B(b,function(d,k){D(d);b[k]=null});d&&d.stackTotalGroup&&d.stackTotalGroup.destroy()}};k.onInit=function(){this.stacking||(this.stacking=new l(this))};return k}()});P(e,"Extensions/Stacking.js",
[e["Core/Axis/Axis.js"],e["Core/Chart/Chart.js"],e["Core/FormatUtilities.js"],e["Core/Globals.js"],e["Core/Series/Series.js"],e["Core/Axis/StackingAxis.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F){var q=E.format,l=F.correctFloat,k=F.defined,d=F.destroyObjectProperties,b=F.isArray,t=F.isNumber,I=F.objectEach,x=F.pick,m=function(){function b(b,d,g,k,e){var c=b.chart.inverted;this.axis=b;this.isNegative=g;this.options=d=d||{};this.x=k;this.total=null;this.points={};this.hasValidPoints=!1;this.stack=
e;this.rightCliff=this.leftCliff=0;this.alignOptions={align:d.align||(c?g?"left":"right":"center"),verticalAlign:d.verticalAlign||(c?"middle":g?"bottom":"top"),y:d.y,x:d.x};this.textAlign=d.textAlign||(c?g?"right":"left":"center")}b.prototype.destroy=function(){d(this,this.axis)};b.prototype.render=function(b){var d=this.axis.chart,g=this.options,n=g.format;n=n?q(n,this,d):g.formatter.call(this);this.label?this.label.attr({text:n,visibility:"hidden"}):(this.label=d.renderer.label(n,null,null,g.shape,
null,null,g.useHTML,!1,"stack-labels"),n={r:g.borderRadius||0,text:n,rotation:g.rotation,padding:x(g.padding,5),visibility:"hidden"},d.styledMode||(n.fill=g.backgroundColor,n.stroke=g.borderColor,n["stroke-width"]=g.borderWidth,this.label.css(g.style)),this.label.attr(n),this.label.added||this.label.add(b));this.label.labelrank=d.plotSizeY};b.prototype.setOffset=function(b,d,g,e,m){var c=this.axis,h=c.chart;e=c.translate(c.stacking.usePercentage?100:e?e:this.total,0,0,0,1);g=c.translate(g?g:0);g=
k(e)&&Math.abs(e-g);b=x(m,h.xAxis[0].translate(this.x))+b;c=k(e)&&this.getStackBox(h,this,b,e,d,g,c);d=this.label;g=this.isNegative;b="justify"===x(this.options.overflow,"justify");var a=this.textAlign;d&&c&&(m=d.getBBox(),e=d.padding,a="left"===a?h.inverted?-e:e:"right"===a?m.width:h.inverted&&"center"===a?m.width/2:h.inverted?g?m.width+e:-e:m.width/2,g=h.inverted?m.height/2:g?-e:m.height,this.alignOptions.x=x(this.options.x,0),this.alignOptions.y=x(this.options.y,0),c.x-=a,c.y-=g,d.align(this.alignOptions,
null,c),h.isInsidePlot(d.alignAttr.x+a-this.alignOptions.x,d.alignAttr.y+g-this.alignOptions.y)?d.show():(d.alignAttr.y=-9999,b=!1),b&&D.prototype.justifyDataLabel.call(this.axis,d,this.alignOptions,d.alignAttr,m,c),d.attr({x:d.alignAttr.x,y:d.alignAttr.y}),x(!b&&this.options.crop,!0)&&((h=t(d.x)&&t(d.y)&&h.isInsidePlot(d.x-e+d.width,d.y)&&h.isInsidePlot(d.x+e,d.y))||d.hide()))};b.prototype.getStackBox=function(b,d,g,e,k,c,h){var a=d.axis.reversed,f=b.inverted,n=h.height+h.pos-(f?b.plotLeft:b.plotTop);
d=d.isNegative&&!a||!d.isNegative&&a;return{x:f?d?e-h.right:e-c+h.pos-b.plotLeft:g+b.xAxis[0].transB-b.plotLeft,y:f?h.height-g-k:d?n-e-c:n-e,width:f?c:k,height:f?k:c}};return b}();v.prototype.getStacks=function(){var b=this,d=b.inverted;b.yAxis.forEach(function(b){b.stacking&&b.stacking.stacks&&b.hasVisibleSeries&&(b.stacking.oldStacks=b.stacking.stacks)});b.series.forEach(function(g){var n=g.xAxis&&g.xAxis.options||{};!g.options.stacking||!0!==g.visible&&!1!==b.options.chart.ignoreHiddenSeries||
(g.stackKey=[g.type,x(g.options.stack,""),d?n.top:n.left,d?n.height:n.width].join())})};A.compose(e);D.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?D.prototype.setStackedPoints.call(this,"group"):b&&I(b.stacks,function(d,g){"group"===g.slice(-5)&&(I(d,function(b){return b.destroy()}),delete b.stacks[g])})};D.prototype.setStackedPoints=function(d){var g=
d||this.options.stacking;if(g&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var e=this.processedXData,t=this.processedYData,z=[],u=t.length,c=this.options,h=c.threshold,a=x(c.startFromThreshold&&h,0);c=c.stack;d=d?this.type+","+g:this.stackKey;var f="-"+d,y=this.negStacks,q=this.yAxis,K=q.stacking.stacks,r=q.stacking.oldStacks,G,Q;q.stacking.stacksTouched+=1;for(Q=0;Q<u;Q++){var w=e[Q];var H=t[Q];var M=this.getStackIndicator(M,w,this.index);var T=M.key;var p=(G=y&&H<(a?0:
h))?f:d;K[p]||(K[p]={});K[p][w]||(r[p]&&r[p][w]?(K[p][w]=r[p][w],K[p][w].total=null):K[p][w]=new m(q,q.options.stackLabels,G,w,c));p=K[p][w];null!==H?(p.points[T]=p.points[this.index]=[x(p.cumulative,a)],k(p.cumulative)||(p.base=T),p.touched=q.stacking.stacksTouched,0<M.index&&!1===this.singleStacks&&(p.points[T][0]=p.points[this.index+","+w+",0"][0])):p.points[T]=p.points[this.index]=null;"percent"===g?(G=G?d:f,y&&K[G]&&K[G][w]?(G=K[G][w],p.total=G.total=Math.max(G.total,p.total)+Math.abs(H)||0):
p.total=l(p.total+(Math.abs(H)||0))):"group"===g?(b(H)&&(H=H[0]),null!==H&&(p.total=(p.total||0)+1)):p.total=l(p.total+(H||0));p.cumulative="group"===g?(p.total||1)-1:x(p.cumulative,a)+(H||0);null!==H&&(p.points[T].push(p.cumulative),z[Q]=p.cumulative,p.hasValidPoints=!0)}"percent"===g&&(q.stacking.usePercentage=!0);"group"!==g&&(this.stackedYData=z);q.stacking.oldStacks={}}};D.prototype.modifyStacks=function(){var b=this,d=b.stackKey,e=b.yAxis.stacking.stacks,k=b.processedXData,m,l=b.options.stacking;
b[l+"Stacker"]&&[d,"-"+d].forEach(function(c){for(var d=k.length,a,f;d--;)if(a=k[d],m=b.getStackIndicator(m,a,b.index,c),f=(a=e[c]&&e[c][a])&&a.points[m.key])b[l+"Stacker"](f,a,d)})};D.prototype.percentStacker=function(b,d,e){d=d.total?100/d.total:0;b[0]=l(b[0]*d);b[1]=l(b[1]*d);this.stackedYData[e]=b[1]};D.prototype.getStackIndicator=function(b,d,e,m){!k(b)||b.x!==d||m&&b.key!==m?b={x:d,index:0,key:m}:b.index++;b.key=[e,d,b.index].join();return b};C.StackItem=m;"";return C.StackItem});P(e,"Series/Line/LineSeries.js",
[e["Core/Color/Palette.js"],e["Core/Series/Series.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,C){var q=this&&this.__extends||function(){var e=function(l,k){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var e in b)b.hasOwnProperty(e)&&(d[e]=b[e])};return e(l,k)};return function(l,k){function d(){this.constructor=l}e(l,k);l.prototype=null===k?Object.create(k):(d.prototype=k.prototype,new d)}}(),A=C.defined,
F=C.merge;C=function(B){function l(){var e=null!==B&&B.apply(this,arguments)||this;e.data=void 0;e.options=void 0;e.points=void 0;return e}q(l,B);l.prototype.drawGraph=function(){var k=this,d=this.options,b=(this.gappedPath||this.getGraphPath).call(this),l=this.chart.styledMode,q=[["graph","highcharts-graph"]];l||q[0].push(d.lineColor||this.color||e.neutralColor20,d.dashStyle);q=k.getZonesGraphs(q);q.forEach(function(e,m){var g=e[0],n=k[g],t=n?"animate":"attr";n?(n.endX=k.preventGraphAnimation?null:
b.xMap,n.animate({d:b})):b.length&&(k[g]=n=k.chart.renderer.path(b).addClass(e[1]).attr({zIndex:1}).add(k.group));n&&!l&&(g={stroke:e[2],"stroke-width":d.lineWidth,fill:k.fillGraph&&k.color||"none"},e[3]?g.dashstyle=e[3]:"square"!==d.linecap&&(g["stroke-linecap"]=g["stroke-linejoin"]="round"),n[t](g).shadow(2>m&&d.shadow));n&&(n.startX=b.xMap,n.isArea=b.isArea)})};l.prototype.getGraphPath=function(e,d,b){var k=this,l=k.options,x=l.step,m,g=[],n=[],q;e=e||k.points;(m=e.reversed)&&e.reverse();(x={right:1,
center:2}[x]||x&&3)&&m&&(x=4-x);e=this.getValidPoints(e,!1,!(l.connectNulls&&!d&&!b));e.forEach(function(m,t){var u=m.plotX,c=m.plotY,h=e[t-1];(m.leftCliff||h&&h.rightCliff)&&!b&&(q=!0);m.isNull&&!A(d)&&0<t?q=!l.connectNulls:m.isNull&&!d?q=!0:(0===t||q?t=[["M",m.plotX,m.plotY]]:k.getPointSpline?t=[k.getPointSpline(e,m,t)]:x?(t=1===x?[["L",h.plotX,c]]:2===x?[["L",(h.plotX+u)/2,h.plotY],["L",(h.plotX+u)/2,c]]:[["L",u,h.plotY]],t.push(["L",u,c])):t=[["L",u,c]],n.push(m.x),x&&(n.push(m.x),2===x&&n.push(m.x)),
g.push.apply(g,t),q=!1)});g.xMap=n;return k.graphPath=g};l.prototype.getZonesGraphs=function(e){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);e.push(b)},this);return e};l.defaultOptions=F(v.defaultOptions,{});return l}(v);E.registerSeriesType("line",C);"";return C});P(e,"Series/Area/AreaSeries.js",[e["Core/Color/Color.js"],e["Mixins/LegendSymbol.js"],
e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,C){var q=this&&this.__extends||function(){var d=function(b,e){d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var e in d)d.hasOwnProperty(e)&&(b[e]=d[e])};return d(b,e)};return function(b,e){function k(){this.constructor=b}d(b,e);b.prototype=null===e?Object.create(e):(k.prototype=e.prototype,new k)}}(),A=e.parse,F=E.seriesTypes.line;e=C.extend;var B=C.merge,l=C.objectEach,
k=C.pick;C=function(d){function b(){var b=null!==d&&d.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}q(b,d);b.prototype.drawGraph=function(){this.areaPath=[];d.prototype.drawGraph.apply(this);var b=this,e=this.areaPath,l=this.options,m=[["area","highcharts-area",this.color,l.fillColor]];this.zones.forEach(function(d,e){m.push(["zone-area-"+e,"highcharts-area highcharts-zone-area-"+e+" "+d.className,d.color||b.color,d.fillColor||l.fillColor])});m.forEach(function(d){var g=
d[0],m=b[g],t=m?"animate":"attr",z={};m?(m.endX=b.preventGraphAnimation?null:e.xMap,m.animate({d:e})):(z.zIndex=0,m=b[g]=b.chart.renderer.path(e).addClass(d[1]).add(b.group),m.isArea=!0);b.chart.styledMode||(z.fill=k(d[3],A(d[2]).setOpacity(k(l.fillOpacity,.75)).get()));m[t](z);m.startX=e.xMap;m.shiftUnit=l.step?2:1})};b.prototype.getGraphPath=function(b){var d=F.prototype.getGraphPath,e=this.options,m=e.stacking,g=this.yAxis,n,l=[],t=[],z=this.index,u=g.stacking.stacks[this.stackKey],c=e.threshold,
h=Math.round(g.getThreshold(e.threshold));e=k(e.connectNulls,"percent"===m);var a=function(a,f,d){var e=b[a];a=m&&u[e.x].points[z];var n=e[d+"Null"]||0;d=e[d+"Cliff"]||0;e=!0;if(d||n){var k=(n?a[0]:a[1])+d;var r=a[0]+d;e=!!n}else!m&&b[f]&&b[f].isNull&&(k=r=c);"undefined"!==typeof k&&(t.push({plotX:y,plotY:null===k?h:g.getThreshold(k),isNull:e,isCliff:!0}),l.push({plotX:y,plotY:null===r?h:g.getThreshold(r),doCurve:!1}))};b=b||this.points;m&&(b=this.getStackPoints(b));for(n=0;n<b.length;n++){m||(b[n].leftCliff=
b[n].rightCliff=b[n].leftNull=b[n].rightNull=void 0);var f=b[n].isNull;var y=k(b[n].rectPlotX,b[n].plotX);var q=m?k(b[n].yBottom,h):h;if(!f||e)e||a(n,n-1,"left"),f&&!m&&e||(t.push(b[n]),l.push({x:n,plotX:y,plotY:q})),e||a(n,n+1,"right")}n=d.call(this,t,!0,!0);l.reversed=!0;f=d.call(this,l,!0,!0);(q=f[0])&&"M"===q[0]&&(f[0]=["L",q[1],q[2]]);f=n.concat(f);f.length&&f.push(["Z"]);d=d.call(this,t,!1,e);f.xMap=n.xMap;this.areaPath=f;return d};b.prototype.getStackPoints=function(b){var d=this,e=[],m=[],
g=this.xAxis,n=this.yAxis,t=n.stacking.stacks[this.stackKey],q={},z=n.series,u=z.length,c=n.options.reversedStacks?1:-1,h=z.indexOf(d);b=b||this.points;if(this.options.stacking){for(var a=0;a<b.length;a++)b[a].leftNull=b[a].rightNull=void 0,q[b[a].x]=b[a];l(t,function(a,c){null!==a.total&&m.push(c)});m.sort(function(a,c){return a-c});var f=z.map(function(a){return a.visible});m.forEach(function(a,b){var l=0,r,y;if(q[a]&&!q[a].isNull)e.push(q[a]),[-1,1].forEach(function(g){var e=1===g?"rightNull":
"leftNull",n=0,k=t[m[b+g]];if(k)for(var p=h;0<=p&&p<u;){var l=z[p].index;r=k.points[l];r||(l===d.index?q[a][e]=!0:f[p]&&(y=t[a].points[l])&&(n-=y[1]-y[0]));p+=c}q[a][1===g?"rightCliff":"leftCliff"]=n});else{for(var x=h;0<=x&&x<u;){if(r=t[a].points[z[x].index]){l=r[1];break}x+=c}l=k(l,0);l=n.translate(l,0,1,0,1);e.push({isNull:!0,plotX:g.translate(a,0,0,0,1),x:a,plotY:l,yBottom:l})}})}return e};b.defaultOptions=B(F.defaultOptions,{threshold:0});return b}(F);e(C.prototype,{singleStacks:!1,drawLegendSymbol:v.drawRectangle});
E.registerSeriesType("area",C);"";return C});P(e,"Series/Spline/SplineSeries.js",[e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v){var q=this&&this.__extends||function(){var e=function(q,l){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,d){e.__proto__=d}||function(e,d){for(var b in d)d.hasOwnProperty(b)&&(e[b]=d[b])};return e(q,l)};return function(q,l){function k(){this.constructor=q}e(q,l);q.prototype=null===l?Object.create(l):(k.prototype=l.prototype,
new k)}}(),C=e.seriesTypes.line,D=v.merge,A=v.pick;v=function(e){function B(){var l=null!==e&&e.apply(this,arguments)||this;l.data=void 0;l.options=void 0;l.points=void 0;return l}q(B,e);B.prototype.getPointSpline=function(e,k,d){var b=k.plotX||0,l=k.plotY||0,q=e[d-1];d=e[d+1];if(q&&!q.isNull&&!1!==q.doCurve&&!k.isCliff&&d&&!d.isNull&&!1!==d.doCurve&&!k.isCliff){e=q.plotY||0;var x=d.plotX||0;d=d.plotY||0;var m=0;var g=(1.5*b+(q.plotX||0))/2.5;var n=(1.5*l+e)/2.5;x=(1.5*b+x)/2.5;var B=(1.5*l+d)/2.5;
x!==g&&(m=(B-n)*(x-b)/(x-g)+l-B);n+=m;B+=m;n>e&&n>l?(n=Math.max(e,l),B=2*l-n):n<e&&n<l&&(n=Math.min(e,l),B=2*l-n);B>d&&B>l?(B=Math.max(d,l),n=2*l-B):B<d&&B<l&&(B=Math.min(d,l),n=2*l-B);k.rightContX=x;k.rightContY=B}k=["C",A(q.rightContX,q.plotX,0),A(q.rightContY,q.plotY,0),A(g,b,0),A(n,l,0),b,l];q.rightContX=q.rightContY=void 0;return k};B.defaultOptions=D(C.defaultOptions);return B}(C);e.registerSeriesType("spline",v);"";return v});P(e,"Series/AreaSpline/AreaSplineSeries.js",[e["Series/Area/AreaSeries.js"],
e["Series/Spline/SplineSeries.js"],e["Mixins/LegendSymbol.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,C,D){var q=this&&this.__extends||function(){var e=function(d,b){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var e in d)d.hasOwnProperty(e)&&(b[e]=d[e])};return e(d,b)};return function(d,b){function k(){this.constructor=d}e(d,b);d.prototype=null===b?Object.create(b):(k.prototype=b.prototype,new k)}}(),F=
e.prototype,B=D.extend,l=D.merge;D=function(k){function d(){var b=null!==k&&k.apply(this,arguments)||this;b.data=void 0;b.points=void 0;b.options=void 0;return b}q(d,k);d.defaultOptions=l(v.defaultOptions,e.defaultOptions);return d}(v);B(D.prototype,{getGraphPath:F.getGraphPath,getStackPoints:F.getStackPoints,drawGraph:F.drawGraph,drawLegendSymbol:E.drawRectangle});C.registerSeriesType("areaspline",D);"";return D});P(e,"Series/Column/ColumnSeries.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Color/Color.js"],
e["Core/Globals.js"],e["Mixins/LegendSymbol.js"],e["Core/Color/Palette.js"],e["Core/Series/Series.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F,B){var l=this&&this.__extends||function(){var c=function(b,a){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var b in c)c.hasOwnProperty(b)&&(a[b]=c[b])};return c(b,a)};return function(b,a){function f(){this.constructor=b}c(b,a);b.prototype=null===a?Object.create(a):
(f.prototype=a.prototype,new f)}}(),k=e.animObject,d=v.parse,b=E.hasTouch;e=E.noop;var t=B.clamp,q=B.css,x=B.defined,m=B.extend,g=B.fireEvent,n=B.isArray,J=B.isNumber,O=B.merge,z=B.pick,u=B.objectEach;B=function(c){function h(){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}l(h,c);h.prototype.animate=function(a){var c=this,b=this.yAxis,d=c.options,g=this.chart.inverted,h={},e=g?"translateX":"translateY";if(a)h.scaleY=
.001,a=t(b.toPixels(d.threshold),b.pos,b.pos+b.len),g?h.translateX=a-b.len:h.translateY=a,c.clipBox&&c.setClip(),c.group.attr(h);else{var n=Number(c.group.attr(e));c.group.animate({scaleY:1},m(k(c.options.animation),{step:function(a,f){c.group&&(h[e]=n+f.pos*(b.pos-n),c.group.attr(h))}}))}};h.prototype.init=function(a,b){c.prototype.init.apply(this,arguments);var f=this;a=f.chart;a.hasRendered&&a.series.forEach(function(a){a.type===f.type&&(a.isDirty=!0)})};h.prototype.getColumnMetrics=function(){var a=
this,c=a.options,b=a.xAxis,d=a.yAxis,g=b.options.reversedStacks;g=b.reversed&&!g||!b.reversed&&g;var h,e={},n=0;!1===c.grouping?n=1:a.chart.series.forEach(function(c){var b=c.yAxis,f=c.options;if(c.type===a.type&&(c.visible||!a.chart.options.chart.ignoreHiddenSeries)&&d.len===b.len&&d.pos===b.pos){if(f.stacking&&"group"!==f.stacking){h=c.stackKey;"undefined"===typeof e[h]&&(e[h]=n++);var g=e[h]}else!1!==f.grouping&&(g=n++);c.columnIndex=g}});var m=Math.min(Math.abs(b.transA)*(b.ordinal&&b.ordinal.slope||
c.pointRange||b.closestPointRange||b.tickInterval||1),b.len),k=m*c.groupPadding,l=(m-2*k)/(n||1);c=Math.min(c.maxPointWidth||b.len,z(c.pointWidth,l*(1-2*c.pointPadding)));a.columnMetrics={width:c,offset:(l-c)/2+(k+((a.columnIndex||0)+(g?1:0))*l-m/2)*(g?-1:1),paddedWidth:l,columnCount:n};return a.columnMetrics};h.prototype.crispCol=function(a,c,b,d){var f=this.chart,g=this.borderWidth,h=-(g%2?.5:0);g=g%2?.5:1;f.inverted&&f.renderer.isVML&&(g+=1);this.options.crisp&&(b=Math.round(a+b)+h,a=Math.round(a)+
h,b-=a);d=Math.round(c+d)+g;h=.5>=Math.abs(c)&&.5<d;c=Math.round(c)+g;d-=c;h&&d&&(--c,d+=1);return{x:a,y:c,width:b,height:d}};h.prototype.adjustForMissingColumns=function(a,c,b,d){var f=this,g=this.options.stacking;if(!b.isNull&&1<d.columnCount){var h=0,e=0;u(this.yAxis.stacking&&this.yAxis.stacking.stacks,function(a){if("number"===typeof b.x&&(a=a[b.x.toString()])){var c=a.points[f.index],d=a.total;g?(c&&(h=e),a.hasValidPoints&&e++):n(c)&&(h=c[1],e=d||0)}});a=(b.plotX||0)+((e-1)*d.paddedWidth+c)/
2-c-h*d.paddedWidth}return a};h.prototype.translate=function(){var a=this,c=a.chart,b=a.options,d=a.dense=2>a.closestPointRange*a.xAxis.transA;d=a.borderWidth=z(b.borderWidth,d?0:1);var g=a.xAxis,h=a.yAxis,e=b.threshold,n=a.translatedThreshold=h.getThreshold(e),m=z(b.minPointLength,5),k=a.getColumnMetrics(),l=k.width,u=a.barW=Math.max(l,1+2*d),p=a.pointXOffset=k.offset,q=a.dataMin,B=a.dataMax;c.inverted&&(n-=.5);b.pointPadding&&(u=Math.ceil(u));A.prototype.translate.apply(a);a.points.forEach(function(f){var d=
z(f.yBottom,n),r=999+Math.abs(d),w=l,H=f.plotX||0;r=t(f.plotY,-r,h.len+r);H+=p;var y=u,G=Math.min(r,d),M=Math.max(r,d)-G;if(m&&Math.abs(M)<m){M=m;var Q=!h.reversed&&!f.negative||h.reversed&&f.negative;J(e)&&J(B)&&f.y===e&&B<=e&&(h.min||0)<e&&(q!==B||(h.max||0)<=e)&&(Q=!Q);G=Math.abs(G-n)>m?d-m:n-(Q?m:0)}x(f.options.pointWidth)&&(w=y=Math.ceil(f.options.pointWidth),H-=Math.round((w-l)/2));b.centerInCategory&&(H=a.adjustForMissingColumns(H,w,f,k));f.barX=H;f.pointWidth=w;f.tooltipPos=c.inverted?[t(h.len+
h.pos-c.plotLeft-r,h.pos-c.plotLeft,h.len+h.pos-c.plotLeft),g.len+g.pos-c.plotTop-H-y/2,M]:[g.left-c.plotLeft+H+y/2,t(r+h.pos-c.plotTop,h.pos-c.plotTop,h.len+h.pos-c.plotTop),M];f.shapeType=a.pointClass.prototype.shapeType||"rect";f.shapeArgs=a.crispCol.apply(a,f.isNull?[H,n,y,0]:[H,G,y,M])})};h.prototype.drawGraph=function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")};h.prototype.pointAttribs=function(a,c){var b=this.options,f=this.pointAttrToOptions||{};var g=f.stroke||
"borderColor";var h=f["stroke-width"]||"borderWidth",e=a&&a.color||this.color,n=a&&a[g]||b[g]||e,m=a&&a[h]||b[h]||this[h]||0;f=a&&a.options.dashStyle||b.dashStyle;var k=z(a&&a.opacity,b.opacity,1);if(a&&this.zones.length){var l=a.getZone();e=a.options.color||l&&(l.color||a.nonZonedColor)||this.color;l&&(n=l.borderColor||n,f=l.dashStyle||f,m=l.borderWidth||m)}c&&a&&(a=O(b.states[c],a.options.states&&a.options.states[c]||{}),c=a.brightness,e=a.color||"undefined"!==typeof c&&d(e).brighten(a.brightness).get()||
e,n=a[g]||n,m=a[h]||m,f=a.dashStyle||f,k=z(a.opacity,k));g={fill:e,stroke:n,"stroke-width":m,opacity:k};f&&(g.dashstyle=f);return g};h.prototype.drawPoints=function(){var a=this,c=this.chart,b=a.options,d=c.renderer,g=b.animationLimit||250,h;a.points.forEach(function(f){var e=f.graphic,n=!!e,m=e&&c.pointCount<g?"animate":"attr";if(J(f.plotY)&&null!==f.y){h=f.shapeArgs;e&&f.hasNewShapeType()&&(e=e.destroy());a.enabledDataSorting&&(f.startXPos=a.xAxis.reversed?-(h?h.width||0:0):a.xAxis.width);e||(f.graphic=
e=d[f.shapeType](h).add(f.group||a.group))&&a.enabledDataSorting&&c.hasRendered&&c.pointCount<g&&(e.attr({x:f.startXPos}),n=!0,m="animate");if(e&&n)e[m](O(h));if(b.borderRadius)e[m]({r:b.borderRadius});c.styledMode||e[m](a.pointAttribs(f,f.selected&&"select")).shadow(!1!==f.allowShadow&&b.shadow,null,b.stacking&&!b.borderRadius);e&&(e.addClass(f.getClassName(),!0),e.attr({visibility:f.visible?"inherit":"hidden"}))}else e&&(f.graphic=e.destroy())})};h.prototype.drawTracker=function(){var a=this,c=
a.chart,d=c.pointer,h=function(a){var c=d.getPointFromEvent(a);"undefined"!==typeof c&&(d.isDirectTouch=!0,c.onMouseOver(a))},e;a.points.forEach(function(a){e=n(a.dataLabels)?a.dataLabels:a.dataLabel?[a.dataLabel]:[];a.graphic&&(a.graphic.element.point=a);e.forEach(function(c){c.div?c.div.point=a:c.element.point=a})});a._hasTracking||(a.trackerGroups.forEach(function(f){if(a[f]){a[f].addClass("highcharts-tracker").on("mouseover",h).on("mouseout",function(a){d.onTrackerMouseOut(a)});if(b)a[f].on("touchstart",
h);!c.styledMode&&a.options.cursor&&a[f].css(q).css({cursor:a.options.cursor})}}),a._hasTracking=!0);g(this,"afterDrawTracker")};h.prototype.remove=function(){var a=this,c=a.chart;c.hasRendered&&c.series.forEach(function(c){c.type===a.type&&(c.isDirty=!0)});A.prototype.remove.apply(a,arguments)};h.defaultOptions=O(A.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:D.neutralColor20,borderColor:D.neutralColor100}},dataLabels:{align:void 0,verticalAlign:void 0,y:void 0},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:D.backgroundColor});return h}(A);m(B.prototype,{cropShoulder:0,directTouch:!0,drawLegendSymbol:C.drawRectangle,getSymbol:e,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]});F.registerSeriesType("column",B);"";"";return B});P(e,"Series/Bar/BarSeries.js",[e["Series/Column/ColumnSeries.js"],e["Core/Series/SeriesRegistry.js"],
e["Core/Utilities.js"]],function(e,v,E){var q=this&&this.__extends||function(){var e=function(q,l){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,d){e.__proto__=d}||function(e,d){for(var b in d)d.hasOwnProperty(b)&&(e[b]=d[b])};return e(q,l)};return function(q,l){function k(){this.constructor=q}e(q,l);q.prototype=null===l?Object.create(l):(k.prototype=l.prototype,new k)}}(),D=E.extend,A=E.merge;E=function(v){function B(){var e=null!==v&&v.apply(this,arguments)||this;e.data=void 0;
e.options=void 0;e.points=void 0;return e}q(B,v);B.defaultOptions=A(e.defaultOptions,{});return B}(e);D(E.prototype,{inverted:!0});v.registerSeriesType("bar",E);"";return E});P(e,"Series/Scatter/ScatterSeries.js",[e["Series/Column/ColumnSeries.js"],e["Series/Line/LineSeries.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,C){var q=this&&this.__extends||function(){var e=function(k,d){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||
function(b,d){for(var e in d)d.hasOwnProperty(e)&&(b[e]=d[e])};return e(k,d)};return function(k,d){function b(){this.constructor=k}e(k,d);k.prototype=null===d?Object.create(d):(b.prototype=d.prototype,new b)}}(),A=C.addEvent,F=C.extend,B=C.merge;C=function(e){function k(){var d=null!==e&&e.apply(this,arguments)||this;d.data=void 0;d.options=void 0;d.points=void 0;return d}q(k,e);k.prototype.applyJitter=function(){var d=this,b=this.options.jitter,e=this.points.length;b&&this.points.forEach(function(k,
l){["x","y"].forEach(function(m,g){var n="plot"+m.toUpperCase();if(b[m]&&!k.isNull){var t=d[m+"Axis"];var q=b[m]*t.transA;if(t&&!t.isLog){var z=Math.max(0,k[n]-q);t=Math.min(t.len,k[n]+q);g=1E4*Math.sin(l+g*e);k[n]=z+(t-z)*(g-Math.floor(g));"x"===m&&(k.clientX=k.plotX)}}})})};k.prototype.drawGraph=function(){this.options.lineWidth?e.prototype.drawGraph.call(this):this.graph&&(this.graph=this.graph.destroy())};k.defaultOptions=B(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 k}(v);F(C.prototype,{drawTracker:e.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1});A(C,"afterTranslate",function(){this.applyJitter()});E.registerSeriesType("scatter",C);"";return C});
P(e,"Mixins/CenteredSeries.js",[e["Core/Globals.js"],e["Core/Series/Series.js"],e["Core/Utilities.js"]],function(e,v,E){var q=E.isNumber,D=E.pick,A=E.relativeLength,F=e.deg2rad;return e.CenteredSeriesMixin={getCenter:function(){var e=this.options,l=this.chart,k=2*(e.slicedOffset||0),d=l.plotWidth-2*k,b=l.plotHeight-2*k,t=e.center,q=Math.min(d,b),x=e.size,m=e.innerSize||0;"string"===typeof x&&(x=parseFloat(x));"string"===typeof m&&(m=parseFloat(m));e=[D(t[0],"50%"),D(t[1],"50%"),D(x&&0>x?void 0:e.size,
"100%"),D(m&&0>m?void 0:e.innerSize||0,"0%")];!l.angular||this instanceof v||(e[3]=0);for(t=0;4>t;++t)x=e[t],l=2>t||2===t&&/%$/.test(x),e[t]=A(x,[d,b,q,e[2]][t])+(l?k:0);e[3]>e[2]&&(e[3]=e[2]);return e},getStartAndEndRadians:function(e,l){e=q(e)?e:0;l=q(l)&&l>e&&360>l-e?l:e+360;return{start:F*(e+-90),end:F*(l+-90)}}}});P(e,"Series/Pie/PiePoint.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Series/Point.js"],e["Core/Utilities.js"]],function(e,v,E){var q=this&&this.__extends||function(){var d=
function(b,e){d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var e in d)d.hasOwnProperty(e)&&(b[e]=d[e])};return d(b,e)};return function(b,e){function k(){this.constructor=b}d(b,e);b.prototype=null===e?Object.create(e):(k.prototype=e.prototype,new k)}}(),D=e.setAnimation,A=E.addEvent,F=E.defined;e=E.extend;var B=E.isNumber,l=E.pick,k=E.relativeLength;E=function(d){function b(){var b=null!==d&&d.apply(this,arguments)||this;b.labelDistance=void 0;
b.options=void 0;b.series=void 0;return b}q(b,d);b.prototype.getConnectorPath=function(){var b=this.labelPosition,d=this.series.options.dataLabels,e=d.connectorShape,m=this.connectorShapes;m[e]&&(e=m[e]);return e.call(this,{x:b.final.x,y:b.final.y,alignment:b.alignment},b.connectorPosition,d)};b.prototype.getTranslate=function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}};b.prototype.haloPath=function(b){var d=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(d.x,
d.y,d.r+b,d.r+b,{innerR:d.r-1,start:d.start,end:d.end})};b.prototype.init=function(){v.prototype.init.apply(this,arguments);var b=this;b.name=l(b.name,"Slice");var d=function(d){b.slice("select"===d.type)};A(b,"select",d);A(b,"unselect",d);return b};b.prototype.isValid=function(){return B(this.y)&&0<=this.y};b.prototype.setVisible=function(b,d){var e=this,m=e.series,g=m.chart,n=m.options.ignoreHiddenPoint;d=l(d,n);b!==e.visible&&(e.visible=e.options.visible=b="undefined"===typeof b?!e.visible:b,m.options.data[m.data.indexOf(e)]=
e.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(d){if(e[d])e[d][b?"show":"hide"](b)}),e.legendItem&&g.legend.colorizeItem(e,b),b||"hover"!==e.state||e.setState(""),n&&(m.isDirty=!0),d&&g.redraw())};b.prototype.slice=function(b,d,e){var m=this.series;D(e,m.chart);l(d,!0);this.sliced=this.options.sliced=F(b)?b:!this.sliced;m.options.data[m.data.indexOf(this)]=this.options;this.graphic&&this.graphic.animate(this.getTranslate());this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())};
return b}(v);e(E.prototype,{connectorShapes:{fixedOffset:function(d,b,e){var k=b.breakAt;b=b.touchingSliceAt;return[["M",d.x,d.y],e.softConnector?["C",d.x+("left"===d.alignment?-5:5),d.y,2*k.x-b.x,2*k.y-b.y,k.x,k.y]:["L",k.x,k.y],["L",b.x,b.y]]},straight:function(d,b){b=b.touchingSliceAt;return[["M",d.x,d.y],["L",b.x,b.y]]},crookedLine:function(d,b,e){b=b.touchingSliceAt;var l=this.series,t=l.center[0],m=l.chart.plotWidth,g=l.chart.plotLeft;l=d.alignment;var n=this.shapeArgs.r;e=k(e.crookDistance,
1);m="left"===l?t+n+(m+g-t-n)*(1-e):g+(t-n)*e;e=["L",m,d.y];t=!0;if("left"===l?m>d.x||m<b.x:m<d.x||m>b.x)t=!1;d=[["M",d.x,d.y]];t&&d.push(e);d.push(["L",b.x,b.y]);return d}}});return E});P(e,"Series/Pie/PieSeries.js",[e["Mixins/CenteredSeries.js"],e["Series/Column/ColumnSeries.js"],e["Core/Globals.js"],e["Mixins/LegendSymbol.js"],e["Core/Color/Palette.js"],e["Series/Pie/PiePoint.js"],e["Core/Series/Series.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Renderer/SVG/Symbols.js"],e["Core/Utilities.js"]],
function(e,v,E,C,D,A,F,B,l,k){var d=this&&this.__extends||function(){var b=function(d,g){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(d,g)};return function(d,g){function e(){this.constructor=d}b(d,g);d.prototype=null===g?Object.create(g):(e.prototype=g.prototype,new e)}}(),b=e.getStartAndEndRadians;E=E.noop;var t=k.clamp,q=k.extend,x=k.fireEvent,m=k.merge,g=k.pick,n=k.relativeLength;k=
function(e){function k(){var b=null!==e&&e.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}d(k,e);k.prototype.animate=function(b){var d=this,c=d.points,e=d.startAngleRad;b||c.forEach(function(a){var c=a.graphic,b=a.shapeArgs;c&&b&&(c.attr({r:g(a.startR,d.center&&d.center[3]/2),start:e,end:e}),c.animate({r:b.r,start:b.start,end:b.end},d.options.animation))})};k.prototype.drawEmpty=function(){var b=this.startAngleRad,d=this.endAngleRad,
c=this.options;if(0===this.total&&this.center){var g=this.center[0];var a=this.center[1];this.graph||(this.graph=this.chart.renderer.arc(g,a,this.center[1]/2,0,b,d).addClass("highcharts-empty-series").add(this.group));this.graph.attr({d:l.arc(g,a,this.center[2]/2,0,{start:b,end:d,innerR:this.center[3]/2})});this.chart.styledMode||this.graph.attr({"stroke-width":c.borderWidth,fill:c.fillColor||"none",stroke:c.color||D.neutralColor20})}else this.graph&&(this.graph=this.graph.destroy())};k.prototype.drawPoints=
function(){var b=this.chart.renderer;this.points.forEach(function(d){d.graphic&&d.hasNewShapeType()&&(d.graphic=d.graphic.destroy());d.graphic||(d.graphic=b[d.shapeType](d.shapeArgs).add(d.series.group),d.delayedRendering=!0)})};k.prototype.generatePoints=function(){e.prototype.generatePoints.call(this);this.updateTotals()};k.prototype.getX=function(b,d,c){var g=this.center,a=this.radii?this.radii[c.index]||0:g[2]/2;b=Math.asin(t((b-g[1])/(a+c.labelDistance),-1,1));return g[0]+(d?-1:1)*Math.cos(b)*
(a+c.labelDistance)+(0<c.labelDistance?(d?-1:1)*this.options.dataLabels.padding:0)};k.prototype.hasData=function(){return!!this.processedXData.length};k.prototype.redrawPoints=function(){var b=this,d=b.chart,c=d.renderer,g,a,f,e,n=b.options.shadow;this.drawEmpty();!n||b.shadowGroup||d.styledMode||(b.shadowGroup=c.g("shadow").attr({zIndex:-1}).add(b.group));b.points.forEach(function(h){var k={};a=h.graphic;if(!h.isNull&&a){var l=void 0;e=h.shapeArgs;g=h.getTranslate();d.styledMode||(l=h.shadowGroup,
n&&!l&&(l=h.shadowGroup=c.g("shadow").add(b.shadowGroup)),l&&l.attr(g),f=b.pointAttribs(h,h.selected&&"select"));h.delayedRendering?(a.setRadialReference(b.center).attr(e).attr(g),d.styledMode||a.attr(f).attr({"stroke-linejoin":"round"}).shadow(n,l),h.delayedRendering=!1):(a.setRadialReference(b.center),d.styledMode||m(!0,k,f),m(!0,k,e,g),a.animate(k));a.attr({visibility:h.visible?"inherit":"hidden"});a.addClass(h.getClassName(),!0)}else a&&(h.graphic=a.destroy())})};k.prototype.sortByAngle=function(b,
d){b.sort(function(c,b){return"undefined"!==typeof c.angle&&(b.angle-c.angle)*d})};k.prototype.translate=function(d){this.generatePoints();var e=0,c=this.options,h=c.slicedOffset,a=h+(c.borderWidth||0),f=b(c.startAngle,c.endAngle),k=this.startAngleRad=f.start;f=(this.endAngleRad=f.end)-k;var m=this.points,l=c.dataLabels.distance;c=c.ignoreHiddenPoint;var r,t=m.length;d||(this.center=d=this.getCenter());for(r=0;r<t;r++){var q=m[r];var w=k+e*f;!q.isValid()||c&&!q.visible||(e+=q.percentage/100);var H=
k+e*f;var z={x:d[0],y:d[1],r:d[2]/2,innerR:d[3]/2,start:Math.round(1E3*w)/1E3,end:Math.round(1E3*H)/1E3};q.shapeType="arc";q.shapeArgs=z;q.labelDistance=g(q.options.dataLabels&&q.options.dataLabels.distance,l);q.labelDistance=n(q.labelDistance,z.r);this.maxLabelDistance=Math.max(this.maxLabelDistance||0,q.labelDistance);H=(H+w)/2;H>1.5*Math.PI?H-=2*Math.PI:H<-Math.PI/2&&(H+=2*Math.PI);q.slicedTranslation={translateX:Math.round(Math.cos(H)*h),translateY:Math.round(Math.sin(H)*h)};z=Math.cos(H)*d[2]/
2;var T=Math.sin(H)*d[2]/2;q.tooltipPos=[d[0]+.7*z,d[1]+.7*T];q.half=H<-Math.PI/2||H>Math.PI/2?1:0;q.angle=H;w=Math.min(a,q.labelDistance/5);q.labelPosition={natural:{x:d[0]+z+Math.cos(H)*q.labelDistance,y:d[1]+T+Math.sin(H)*q.labelDistance},"final":{},alignment:0>q.labelDistance?"center":q.half?"right":"left",connectorPosition:{breakAt:{x:d[0]+z+Math.cos(H)*w,y:d[1]+T+Math.sin(H)*w},touchingSliceAt:{x:d[0]+z,y:d[1]+T}}}}x(this,"afterTranslate")};k.prototype.updateTotals=function(){var b,d=0,c=this.points,
g=c.length,a=this.options.ignoreHiddenPoint;for(b=0;b<g;b++){var f=c[b];!f.isValid()||a&&!f.visible||(d+=f.y)}this.total=d;for(b=0;b<g;b++)f=c[b],f.percentage=0<d&&(f.visible||!a)?f.y/d*100:0,f.total=d};k.defaultOptions=m(F.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:D.backgroundColor,borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}});return k}(F);q(k.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawLegendSymbol:C.drawRectangle,drawTracker:v.prototype.drawTracker,getCenter:e.getCenter,getSymbol:E,isCartesian:!1,noSharedTooltip:!0,pointAttribs:v.prototype.pointAttribs,
pointClass:A,requireSorting:!1,searchPoint:E,trackerGroups:["group","dataLabelsGroup"]});B.registerSeriesType("pie",k);"";return k});P(e,"Core/Series/DataLabels.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/FormatUtilities.js"],e["Core/Globals.js"],e["Core/Color/Palette.js"],e["Core/Series/Series.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F){var q=e.getDeferredAnimation,l=v.format;e=E.noop;A=A.seriesTypes;var k=F.arrayMax,d=F.clamp,b=F.defined,t=
F.extend,I=F.fireEvent,x=F.isArray,m=F.merge,g=F.objectEach,n=F.pick,J=F.relativeLength,O=F.splat,z=F.stableSort;"";E.distribute=function(b,c,g){function a(a,c){return a.target-c.target}var f,e=!0,h=b,k=[];var m=0;var l=h.reducedLen||c;for(f=b.length;f--;)m+=b[f].size;if(m>l){z(b,function(a,c){return(c.rank||0)-(a.rank||0)});for(m=f=0;m<=l;)m+=b[f].size,f++;k=b.splice(f-1,b.length)}z(b,a);for(b=b.map(function(a){return{size:a.size,targets:[a.target],align:n(a.align,.5)}});e;){for(f=b.length;f--;)e=
b[f],m=(Math.min.apply(0,e.targets)+Math.max.apply(0,e.targets))/2,e.pos=d(m-e.size*e.align,0,c-e.size);f=b.length;for(e=!1;f--;)0<f&&b[f-1].pos+b[f-1].size>b[f].pos&&(b[f-1].size+=b[f].size,b[f-1].targets=b[f-1].targets.concat(b[f].targets),b[f-1].align=.5,b[f-1].pos+b[f-1].size>c&&(b[f-1].pos=c-b[f-1].size),b.splice(f,1),e=!0)}h.push.apply(h,k);f=0;b.some(function(a){var b=0;if(a.targets.some(function(){h[f].pos=a.pos+b;if("undefined"!==typeof g&&Math.abs(h[f].pos-h[f].target)>g)return h.slice(0,
f+1).forEach(function(a){delete a.pos}),h.reducedLen=(h.reducedLen||c)-.1*c,h.reducedLen>.1*c&&E.distribute(h,c,g),!0;b+=h[f].size;f++}))return!0});z(h,a)};D.prototype.drawDataLabels=function(){function d(a,c){var b=c.filter;return b?(c=b.operator,a=a[b.property],b=b.value,">"===c&&a>b||"<"===c&&a<b||">="===c&&a>=b||"<="===c&&a<=b||"=="===c&&a==b||"==="===c&&a===b?!0:!1):!0}function c(a,c){var b=[],d;if(x(a)&&!x(c))b=a.map(function(a){return m(a,c)});else if(x(c)&&!x(a))b=c.map(function(c){return m(a,
c)});else if(x(a)||x(c))for(d=Math.max(a.length,c.length);d--;)b[d]=m(a[d],c[d]);else b=m(a,c);return b}var e=this,a=e.chart,f=e.options,k=f.dataLabels,t=e.points,z,r=e.hasRendered||0,G=k.animation;G=k.defer?q(a,G,e):{defer:0,duration:0};var Q=a.renderer;k=c(c(a.options.plotOptions&&a.options.plotOptions.series&&a.options.plotOptions.series.dataLabels,a.options.plotOptions&&a.options.plotOptions[e.type]&&a.options.plotOptions[e.type].dataLabels),k);I(this,"drawDataLabels");if(x(k)||k.enabled||e._hasPointLabels){var w=
e.plotGroup("dataLabelsGroup","data-labels",r?"inherit":"hidden",k.zIndex||6);w.attr({opacity:+r});!r&&(r=e.dataLabelsGroup)&&(e.visible&&w.show(!0),r[f.animation?"animate":"attr"]({opacity:1},G));t.forEach(function(h){z=O(c(k,h.dlOptions||h.options&&h.options.dataLabels));z.forEach(function(c,k){var p=c.enabled&&(!h.isNull||h.dataLabelOnNull)&&d(h,c),m=h.dataLabels?h.dataLabels[k]:h.dataLabel,r=h.connectors?h.connectors[k]:h.connector,u=n(c.distance,h.labelDistance),q=!m;if(p){var t=h.getLabelConfig();
var z=n(c[h.formatPrefix+"Format"],c.format);t=b(z)?l(z,t,a):(c[h.formatPrefix+"Formatter"]||c.formatter).call(t,c);z=c.style;var y=c.rotation;a.styledMode||(z.color=n(c.color,z.color,e.color,C.neutralColor100),"contrast"===z.color?(h.contrastColor=Q.getContrast(h.color||e.color),z.color=!b(u)&&c.inside||0>u||f.stacking?h.contrastColor:C.neutralColor100):delete h.contrastColor,f.cursor&&(z.cursor=f.cursor));var H={r:c.borderRadius||0,rotation:y,padding:c.padding,zIndex:1};a.styledMode||(H.fill=c.backgroundColor,
H.stroke=c.borderColor,H["stroke-width"]=c.borderWidth);g(H,function(a,c){"undefined"===typeof a&&delete H[c]})}!m||p&&b(t)?p&&b(t)&&(m?H.text=t:(h.dataLabels=h.dataLabels||[],m=h.dataLabels[k]=y?Q.text(t,0,-9999,c.useHTML).addClass("highcharts-data-label"):Q.label(t,0,-9999,c.shape,null,null,c.useHTML,null,"data-label"),k||(h.dataLabel=m),m.addClass(" highcharts-data-label-color-"+h.colorIndex+" "+(c.className||"")+(c.useHTML?" highcharts-tracker":""))),m.options=c,m.attr(H),a.styledMode||m.css(z).shadow(c.shadow),
m.added||m.add(w),c.textPath&&!c.useHTML&&(m.setTextPath(h.getDataLabelPath&&h.getDataLabelPath(m)||h.graphic,c.textPath),h.dataLabelPath&&!c.textPath.enabled&&(h.dataLabelPath=h.dataLabelPath.destroy())),e.alignDataLabel(h,m,c,null,q)):(h.dataLabel=h.dataLabel&&h.dataLabel.destroy(),h.dataLabels&&(1===h.dataLabels.length?delete h.dataLabels:delete h.dataLabels[k]),k||delete h.dataLabel,r&&(h.connector=h.connector.destroy(),h.connectors&&(1===h.connectors.length?delete h.connectors:delete h.connectors[k])))})})}I(this,
"afterDrawDataLabels")};D.prototype.alignDataLabel=function(b,c,d,a,f){var g=this,e=this.chart,h=this.isCartesian&&e.inverted,k=this.enabledDataSorting,m=n(b.dlBox&&b.dlBox.centerX,b.plotX,-9999),l=n(b.plotY,-9999),w=c.getBBox(),u=d.rotation,q=d.align,z=e.isInsidePlot(m,Math.round(l),{inverted:h,paneCoordinates:!0,series:g}),p="justify"===n(d.overflow,k?"none":"justify"),x=this.visible&&!1!==b.visible&&(b.series.forceDL||k&&!p||z||n(d.inside,!!this.options.stacking)&&a&&e.isInsidePlot(m,h?a.x+1:a.y+
a.height-1,{inverted:h,paneCoordinates:!0,series:g}));var B=function(a){k&&g.xAxis&&!p&&g.setDataLabelStartPos(b,c,f,z,a)};if(x){var A=e.renderer.fontMetrics(e.styledMode?void 0:d.style.fontSize,c).b;a=t({x:h?this.yAxis.len-l:m,y:Math.round(h?this.xAxis.len-m:l),width:0,height:0},a);t(d,{width:w.width,height:w.height});u?(p=!1,m=e.renderer.rotCorr(A,u),m={x:a.x+(d.x||0)+a.width/2+m.x,y:a.y+(d.y||0)+{top:0,middle:.5,bottom:1}[d.verticalAlign]*a.height},B(m),c[f?"attr":"animate"](m).attr({align:q}),
B=(u+720)%360,B=180<B&&360>B,"left"===q?m.y-=B?w.height:0:"center"===q?(m.x-=w.width/2,m.y-=w.height/2):"right"===q&&(m.x-=w.width,m.y-=B?0:w.height),c.placed=!0,c.alignAttr=m):(B(a),c.align(d,void 0,a),m=c.alignAttr);p&&0<=a.height?this.justifyDataLabel(c,d,m,w,a,f):n(d.crop,!0)&&(x=e.isInsidePlot(m.x,m.y,{paneCoordinates:!0,series:g})&&e.isInsidePlot(m.x+w.width,m.y+w.height,{paneCoordinates:!0,series:g}));if(d.shape&&!u)c[f?"attr":"animate"]({anchorX:h?e.plotWidth-b.plotY:b.plotX,anchorY:h?e.plotHeight-
b.plotX:b.plotY})}f&&k&&(c.placed=!1);x||k&&!p||(c.hide(!0),c.placed=!1)};D.prototype.setDataLabelStartPos=function(b,c,d,a,f){var g=this.chart,e=g.inverted,h=this.xAxis,n=h.reversed,m=e?c.height/2:c.width/2;b=(b=b.pointWidth)?b/2:0;h=e?f.x:n?-m-b:h.width-m+b;f=e?n?this.yAxis.height-m+b:-m-b:f.y;c.startXPos=h;c.startYPos=f;a?"hidden"===c.visibility&&(c.show(),c.attr({opacity:0}).animate({opacity:1})):c.attr({opacity:1}).animate({opacity:0},void 0,c.hide);g.hasRendered&&(d&&c.attr({x:c.startXPos,y:c.startYPos}),
c.placed=!0)};D.prototype.justifyDataLabel=function(b,c,d,a,f,g){var e=this.chart,h=c.align,n=c.verticalAlign,m=b.box?0:b.padding||0,k=c.x;k=void 0===k?0:k;var l=c.y;var u=void 0===l?0:l;l=(d.x||0)+m;if(0>l){"right"===h&&0<=k?(c.align="left",c.inside=!0):k-=l;var q=!0}l=(d.x||0)+a.width-m;l>e.plotWidth&&("left"===h&&0>=k?(c.align="right",c.inside=!0):k+=e.plotWidth-l,q=!0);l=d.y+m;0>l&&("bottom"===n&&0<=u?(c.verticalAlign="top",c.inside=!0):u-=l,q=!0);l=(d.y||0)+a.height-m;l>e.plotHeight&&("top"===
n&&0>=u?(c.verticalAlign="bottom",c.inside=!0):u+=e.plotHeight-l,q=!0);q&&(c.x=k,c.y=u,b.placed=!g,b.align(c,void 0,f));return q};A.pie&&(A.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 f=0,g;b.forEach(function(a){g=a.dataLabel.getBBox().width;g>f&&(f=g)});return c?f+a:d-f-a}},A.pie.prototype.drawDataLabels=function(){var d=this,c=d.data,g,a=d.chart,f=d.options.dataLabels||{},e=f.connectorPadding,l,q=a.plotWidth,r=a.plotHeight,t=a.plotLeft,z=Math.round(a.chartWidth/3),w,H=d.center,x=H[2]/2,T=H[1],p,N,B,A,v=[[],[]],I,J,F,O,P=[0,0,0,0],U=d.dataLabelPositioners,W;d.visible&&(f.enabled||d._hasPointLabels)&&(c.forEach(function(a){a.dataLabel&&a.visible&&a.dataLabel.shortened&&
(a.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),a.dataLabel.shortened=!1)}),D.prototype.drawDataLabels.apply(d),c.forEach(function(a){a.dataLabel&&(a.visible?(v[a.half].push(a),a.dataLabel._pos=null,!b(f.style.width)&&!b(a.options.dataLabels&&a.options.dataLabels.style&&a.options.dataLabels.style.width)&&a.dataLabel.getBBox().width>z&&(a.dataLabel.css({width:Math.round(.7*z)+"px"}),a.dataLabel.shortened=!0)):(a.dataLabel=a.dataLabel.destroy(),a.dataLabels&&1===a.dataLabels.length&&
delete a.dataLabels))}),v.forEach(function(c,h){var m=c.length,k=[],l;if(m){d.sortByAngle(c,h-.5);if(0<d.maxLabelDistance){var w=Math.max(0,T-x-d.maxLabelDistance);var u=Math.min(T+x+d.maxLabelDistance,a.plotHeight);c.forEach(function(c){0<c.labelDistance&&c.dataLabel&&(c.top=Math.max(0,T-x-c.labelDistance),c.bottom=Math.min(T+x+c.labelDistance,a.plotHeight),l=c.dataLabel.getBBox().height||21,c.distributeBox={target:c.labelPosition.natural.y-c.top+l/2,size:l,rank:c.y},k.push(c.distributeBox))});w=
u+l-w;E.distribute(k,w,w/5)}for(O=0;O<m;O++){g=c[O];B=g.labelPosition;p=g.dataLabel;F=!1===g.visible?"hidden":"inherit";J=w=B.natural.y;k&&b(g.distributeBox)&&("undefined"===typeof g.distributeBox.pos?F="hidden":(A=g.distributeBox.size,J=U.radialDistributionY(g)));delete g.positionIndex;if(f.justify)I=U.justify(g,x,H);else switch(f.alignTo){case "connectors":I=U.alignToConnectors(c,h,q,t);break;case "plotEdges":I=U.alignToPlotEdges(p,h,q,t);break;default:I=U.radialDistributionX(d,g,J,w)}p._attr={visibility:F,
align:B.alignment};W=g.options.dataLabels||{};p._pos={x:I+n(W.x,f.x)+({left:e,right:-e}[B.alignment]||0),y:J+n(W.y,f.y)-10};B.final.x=I;B.final.y=J;n(f.crop,!0)&&(N=p.getBBox().width,w=null,I-N<e&&1===h?(w=Math.round(N-I+e),P[3]=Math.max(w,P[3])):I+N>q-e&&0===h&&(w=Math.round(I+N-q+e),P[1]=Math.max(w,P[1])),0>J-A/2?P[0]=Math.max(Math.round(-J+A/2),P[0]):J+A/2>r&&(P[2]=Math.max(Math.round(J+A/2-r),P[2])),p.sideOverflow=w)}}}),0===k(P)||this.verifyDataLabelOverflow(P))&&(this.placeDataLabels(),this.points.forEach(function(c){W=
m(f,c.options.dataLabels);if(l=n(W.connectorWidth,1)){var b;w=c.connector;if((p=c.dataLabel)&&p._pos&&c.visible&&0<c.labelDistance){F=p._attr.visibility;if(b=!w)c.connector=w=a.renderer.path().addClass("highcharts-data-label-connector  highcharts-color-"+c.colorIndex+(c.className?" "+c.className:"")).add(d.dataLabelsGroup),a.styledMode||w.attr({"stroke-width":l,stroke:W.connectorColor||c.color||C.neutralColor60});w[b?"attr":"animate"]({d:c.getConnectorPath()});w.attr("visibility",F)}else w&&(c.connector=
w.destroy())}}))},A.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)},A.pie.prototype.alignDataLabel=e,A.pie.prototype.verifyDataLabelOverflow=
function(b){var c=this.center,g=this.options,a=g.center,f=g.minSize||80,e=null!==g.size;if(!e){if(null!==a[0])var n=Math.max(c[2]-Math.max(b[1],b[3]),f);else n=Math.max(c[2]-b[1]-b[3],f),c[0]+=(b[3]-b[1])/2;null!==a[1]?n=d(n,f,c[2]-Math.max(b[0],b[2])):(n=d(n,f,c[2]-b[0]-b[2]),c[1]+=(b[0]-b[2])/2);n<c[2]?(c[2]=n,c[3]=Math.min(J(g.innerSize||0,n),n),this.translate(c),this.drawDataLabels&&this.drawDataLabels()):e=!0}return e});A.column&&(A.column.prototype.alignDataLabel=function(b,c,d,a,f){var g=this.chart.inverted,
e=b.series,h=b.dlBox||b.shapeArgs,k=n(b.below,b.plotY>n(this.translatedThreshold,e.yAxis.len)),l=n(d.inside,!!this.options.stacking);h&&(a=m(h),0>a.y&&(a.height+=a.y,a.y=0),h=a.y+a.height-e.yAxis.len,0<h&&h<a.height&&(a.height-=h),g&&(a={x:e.yAxis.len-a.y-a.height,y:e.xAxis.len-a.x-a.width,width:a.height,height:a.width}),l||(g?(a.x+=k?0:a.width,a.width=0):(a.y+=k?a.height:0,a.height=0)));d.align=n(d.align,!g||l?"center":k?"right":"left");d.verticalAlign=n(d.verticalAlign,g||l?"middle":k?"top":"bottom");
D.prototype.alignDataLabel.call(this,b,c,d,a,f);d.inside&&b.contrastColor&&c.css({color:b.contrastColor})})});P(e,"Extensions/OverlappingDataLabels.js",[e["Core/Chart/Chart.js"],e["Core/Utilities.js"]],function(e,v){function q(e,d){var b=!1;if(e){var k=e.newOpacity;e.oldOpacity!==k&&(e.alignAttr&&e.placed?(e[k?"removeClass":"addClass"]("highcharts-data-label-hidden"),b=!0,e.alignAttr.opacity=k,e[e.isOld?"animate":"attr"](e.alignAttr,null,function(){d.styledMode||e.css({pointerEvents:k?"auto":"none"})}),
D(d,"afterHideOverlappingLabel")):e.attr({opacity:k}));e.isOld=!0}return b}var C=v.addEvent,D=v.fireEvent,A=v.isArray,F=v.isNumber,B=v.objectEach,l=v.pick;C(e,"render",function(){var e=this,d=[];(this.labelCollectors||[]).forEach(function(b){d=d.concat(b())});(this.yAxis||[]).forEach(function(b){b.stacking&&b.options.stackLabels&&!b.options.stackLabels.allowOverlap&&B(b.stacking.stacks,function(b){B(b,function(b){b.label&&"hidden"!==b.label.visibility&&d.push(b.label)})})});(this.series||[]).forEach(function(b){var k=
b.options.dataLabels;b.visible&&(!1!==k.enabled||b._hasPointLabels)&&(k=function(b){return b.forEach(function(b){b.visible&&(A(b.dataLabels)?b.dataLabels:b.dataLabel?[b.dataLabel]:[]).forEach(function(m){var g=m.options;m.labelrank=l(g.labelrank,b.labelrank,b.shapeArgs&&b.shapeArgs.height);g.allowOverlap?(m.oldOpacity=m.opacity,m.newOpacity=1,q(m,e)):d.push(m)})})},k(b.nodes||[]),k(b.points))});this.hideOverlappingLabels(d)});e.prototype.hideOverlappingLabels=function(e){var d=this,b=e.length,k=d.renderer,
l,x,m,g=!1;var n=function(b){var d,c=b.box?0:b.padding||0,g=d=0,a;if(b&&(!b.alignAttr||b.placed)){var f=b.alignAttr||{x:b.attr("x"),y:b.attr("y")};var e=b.parentGroup;b.width||(d=b.getBBox(),b.width=d.width,b.height=d.height,d=k.fontMetrics(null,b.element).h);var n=b.width-2*c;(a={left:"0",center:"0.5",right:"1"}[b.alignValue])?g=+a*n:F(b.x)&&Math.round(b.x)!==b.translateX&&(g=b.x-b.translateX);return{x:f.x+(e.translateX||0)+c-(g||0),y:f.y+(e.translateY||0)+c-d,width:b.width-2*c,height:b.height-2*
c}}};for(x=0;x<b;x++)if(l=e[x])l.oldOpacity=l.opacity,l.newOpacity=1,l.absoluteBox=n(l);e.sort(function(b,d){return(d.labelrank||0)-(b.labelrank||0)});for(x=0;x<b;x++){var B=(n=e[x])&&n.absoluteBox;for(l=x+1;l<b;++l){var A=(m=e[l])&&m.absoluteBox;!B||!A||n===m||0===n.newOpacity||0===m.newOpacity||A.x>=B.x+B.width||A.x+A.width<=B.x||A.y>=B.y+B.height||A.y+A.height<=B.y||((n.labelrank<m.labelrank?n:m).newOpacity=0)}}e.forEach(function(b){q(b,d)&&(g=!0)});g&&D(d,"afterHideAllOverlappingLabels")}});P(e,
"Core/Responsive.js",[e["Core/Utilities.js"]],function(e){var q=e.extend,E=e.find,C=e.isArray,D=e.isObject,A=e.merge,F=e.objectEach,B=e.pick,l=e.splat,k=e.uniqueKey,d=function(){function b(){}b.prototype.currentOptions=function(b){function d(b,n,m,k){var g;F(b,function(b,c){if(!k&&-1<e.collectionsWithUpdate.indexOf(c)&&n[c])for(b=l(b),m[c]=[],g=0;g<Math.max(b.length,n[c].length);g++)n[c][g]&&(void 0===b[g]?m[c][g]=n[c][g]:(m[c][g]={},d(b[g],n[c][g],m[c][g],k+1)));else D(b)?(m[c]=C(b)?[]:{},d(b,n[c]||
{},m[c],k+1)):m[c]="undefined"===typeof n[c]?null:n[c]})}var e=this,m={};d(b,this.options,m,0);return m};b.prototype.matchResponsiveRule=function(b,d){var e=b.condition;(e.callback||function(){return this.chartWidth<=B(e.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=B(e.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=B(e.minWidth,0)&&this.chartHeight>=B(e.minHeight,0)}).call(this)&&d.push(b._id)};b.prototype.setResponsive=function(b,d){var e=this.options.responsive,m=this.currentResponsive,g=[];!d&&
e&&e.rules&&e.rules.forEach(function(b){"undefined"===typeof b._id&&(b._id=k());this.matchResponsiveRule(b,g)},this);d=A.apply(void 0,g.map(function(b){return E((e||{}).rules||[],function(d){return d._id===b})}).map(function(b){return b&&b.chartOptions}));d.isResponsiveOptions=!0;g=g.toString()||void 0;g!==(m&&m.ruleIds)&&(m&&this.update(m.undoOptions,b,!0),g?(m=this.currentOptions(d),m.isResponsiveOptions=!0,this.currentResponsive={ruleIds:g,mergedOptions:d,undoOptions:m},this.update(d,b,!0)):this.currentResponsive=
void 0)};return b}();e=function(){function b(){}b.compose=function(b){q(b.prototype,d.prototype);return b};return b}();"";"";return e});P(e,"masters/highcharts.src.js",[e["Core/Globals.js"],e["Core/Utilities.js"],e["Core/DefaultOptions.js"],e["Core/Animation/Fx.js"],e["Core/Animation/AnimationUtilities.js"],e["Core/Renderer/HTML/AST.js"],e["Core/FormatUtilities.js"],e["Core/Renderer/SVG/SVGElement.js"],e["Core/Renderer/SVG/SVGRenderer.js"],e["Core/Renderer/HTML/HTMLElement.js"],e["Core/Renderer/HTML/HTMLRenderer.js"],
e["Core/Axis/Axis.js"],e["Core/Axis/PlotLineOrBand.js"],e["Core/Axis/Tick.js"],e["Core/Pointer.js"],e["Core/MSPointer.js"],e["Core/Chart/Chart.js"],e["Core/Series/Series.js"],e["Core/Responsive.js"],e["Core/Color/Color.js"],e["Core/Time.js"]],function(e,v,E,C,D,A,F,B,l,k,d,b,t,I,x,m,g,n,J,O,z){e.animate=D.animate;e.animObject=D.animObject;e.getDeferredAnimation=D.getDeferredAnimation;e.setAnimation=D.setAnimation;e.stop=D.stop;e.timers=C.timers;e.AST=A;e.Axis=b;e.Chart=g;e.chart=g.chart;e.Fx=C;e.PlotLineOrBand=
t;e.Pointer=m.isRequired()?m:x;e.Series=n;e.SVGElement=B;e.SVGRenderer=l;e.Tick=I;e.Time=z;e.Color=O;e.color=O.parse;d.compose(l);k.compose(B);e.defaultOptions=E.defaultOptions;e.getOptions=E.getOptions;e.time=E.defaultTime;e.setOptions=E.setOptions;e.dateFormat=F.dateFormat;e.format=F.format;e.numberFormat=F.numberFormat;e.addEvent=v.addEvent;e.arrayMax=v.arrayMax;e.arrayMin=v.arrayMin;e.attr=v.attr;e.clearTimeout=v.clearTimeout;e.correctFloat=v.correctFloat;e.createElement=v.createElement;e.css=
v.css;e.defined=v.defined;e.destroyObjectProperties=v.destroyObjectProperties;e.discardElement=v.discardElement;e.erase=v.erase;e.error=v.error;e.extend=v.extend;e.extendClass=v.extendClass;e.find=v.find;e.fireEvent=v.fireEvent;e.getMagnitude=v.getMagnitude;e.getStyle=v.getStyle;e.inArray=v.inArray;e.isArray=v.isArray;e.isClass=v.isClass;e.isDOMElement=v.isDOMElement;e.isFunction=v.isFunction;e.isNumber=v.isNumber;e.isObject=v.isObject;e.isString=v.isString;e.keys=v.keys;e.merge=v.merge;e.normalizeTickInterval=
v.normalizeTickInterval;e.objectEach=v.objectEach;e.offset=v.offset;e.pad=v.pad;e.pick=v.pick;e.pInt=v.pInt;e.relativeLength=v.relativeLength;e.removeEvent=v.removeEvent;e.splat=v.splat;e.stableSort=v.stableSort;e.syncTimeout=v.syncTimeout;e.timeUnits=v.timeUnits;e.uniqueKey=v.uniqueKey;e.useSerialIds=v.useSerialIds;e.wrap=v.wrap;J.compose(g);return e});P(e,"Series/XRange/XRangePoint.js",[e["Core/Series/Point.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E){var q=this&&
this.__extends||function(){var e=function(q,v){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,l){e.__proto__=l}||function(e,l){for(var k in l)l.hasOwnProperty(k)&&(e[k]=l[k])};return e(q,v)};return function(q,v){function B(){this.constructor=q}e(q,v);q.prototype=null===v?Object.create(v):(B.prototype=v.prototype,new B)}}();E=E.extend;v=function(v){function A(){var e=null!==v&&v.apply(this,arguments)||this;e.options=void 0;e.series=void 0;return e}q(A,v);A.getColorByCategory=function(e,
q){var l=e.options.colors||e.chart.options.colors;e=q.y%(l?l.length:e.chart.options.chart.colorCount);return{colorIndex:e,color:l&&l[e]}};A.prototype.resolveColor=function(){var e=this.series;if(e.options.colorByPoint&&!this.options.color){var q=A.getColorByCategory(e,this);e.chart.styledMode||(this.color=q.color);this.options.colorIndex||(this.colorIndex=q.colorIndex)}else this.color||(this.color=e.color)};A.prototype.init=function(){e.prototype.init.apply(this,arguments);this.y||(this.y=0);return this};
A.prototype.setState=function(){e.prototype.setState.apply(this,arguments);this.series.drawPoint(this,this.series.getAnimationVerb())};A.prototype.getLabelConfig=function(){var q=e.prototype.getLabelConfig.call(this),B=this.series.yAxis.categories;q.x2=this.x2;q.yCategory=this.yCategory=B&&B[this.y];return q};A.prototype.isValid=function(){return"number"===typeof this.x&&"number"===typeof this.x2};return A}(v.seriesTypes.column.prototype.pointClass);E(v.prototype,{tooltipDateKeys:["x","x2"]});return v});
P(e,"Series/XRange/XRangeComposition.js",[e["Core/Axis/Axis.js"],e["Core/Utilities.js"]],function(e,v){var q=v.addEvent,C=v.pick;q(e,"afterGetSeriesExtremes",function(){var e=this.series,q;if(this.isXAxis){var v=C(this.dataMax,-Number.MAX_VALUE);e.forEach(function(e){e.x2Data&&e.x2Data.forEach(function(e){e>v&&(v=e,q=!0)})});q&&(this.dataMax=v)}})});P(e,"Series/XRange/XRangeSeries.js",[e["Core/Globals.js"],e["Core/Color/Color.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"],e["Series/XRange/XRangePoint.js"]],
function(e,v,E,C,D){var q=this&&this.__extends||function(){var b=function(d,g){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(d,g)};return function(d,g){function e(){this.constructor=d}b(d,g);d.prototype=null===g?Object.create(g):(e.prototype=g.prototype,new e)}}(),F=v.parse,B=E.series,l=E.seriesTypes.column,k=l.prototype,d=C.clamp,b=C.correctFloat,t=C.defined;v=C.extend;var I=C.find,x=
C.isNumber,m=C.isObject,g=C.merge,n=C.pick;C=function(e){function v(){var b=null!==e&&e.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}q(v,e);v.prototype.init=function(){l.prototype.init.apply(this,arguments);this.options.stacking=void 0};v.prototype.getColumnMetrics=function(){function b(){d.series.forEach(function(c){var a=c.xAxis;c.xAxis=c.yAxis;c.yAxis=a})}var d=this.chart;b();var c=k.getColumnMetrics.call(this);b();return c};v.prototype.cropData=function(b,
d,c,g){d=B.prototype.cropData.call(this,this.x2Data,d,c,g);d.xData=b.slice(d.start,d.end);return d};v.prototype.findPointIndex=function(b){var d=this.cropped,c=this.cropStart,g=this.points,a=b.id;if(a)var f=(f=I(g,function(c){return c.id===a}))?f.index:void 0;"undefined"===typeof f&&(f=(f=I(g,function(a){return a.x===b.x&&a.x2===b.x2&&!a.touched}))?f.index:void 0);d&&x(f)&&x(c)&&f>=c&&(f-=c);return f};v.prototype.translatePoint=function(b){var e=this.xAxis,c=this.yAxis,h=this.columnMetrics,a=this.options,
f=a.minPointLength||0,k=(b.shapeArgs&&b.shapeArgs.width||0)/2,l=this.pointXOffset=h.offset,q=b.plotX,r=n(b.x2,b.x+(b.len||0)),z=e.translate(r,0,0,0,1);r=Math.abs(z-q);var Q=this.chart.inverted,w=n(a.borderWidth,1)%2/2,H=h.offset,M=Math.round(h.width);f&&(f-=r,0>f&&(f=0),q-=f/2,z+=f/2);q=Math.max(q,-10);z=d(z,-10,e.len+10);t(b.options.pointWidth)&&(H-=(Math.ceil(b.options.pointWidth)-M)/2,M=Math.ceil(b.options.pointWidth));a.pointPlacement&&x(b.plotY)&&c.categories&&(b.plotY=c.translate(b.y,0,1,0,
1,a.pointPlacement));a={x:Math.floor(Math.min(q,z))+w,y:Math.floor(b.plotY+H)+w,width:Math.round(Math.abs(z-q)),height:M,r:this.options.borderRadius};b.shapeArgs=a;Q?b.tooltipPos[1]+=l+k:b.tooltipPos[0]-=k+l-a.width/2;k=a.x;l=k+a.width;0>k||l>e.len?(k=d(k,0,e.len),l=d(l,0,e.len),f=l-k,b.dlBox=g(a,{x:k,width:l-k,centerX:f?f/2:null})):b.dlBox=null;k=b.tooltipPos;l=Q?1:0;f=Q?0:1;h=this.columnMetrics?this.columnMetrics.offset:-h.width/2;k[l]=Q?k[l]+a.width/2:k[l]+(e.reversed?-1:0)*a.width;k[f]=d(k[f]+
(Q?-1:1)*h,0,c.len-1);if(c=b.partialFill)m(c)&&(c=c.amount),x(c)||(c=0),b.partShapeArgs=g(a,{r:this.options.borderRadius}),q=Math.max(Math.round(r*c+b.plotX-q),0),b.clipRectArgs={x:e.reversed?a.x+r-q:a.x,y:a.y,width:q,height:a.height}};v.prototype.translate=function(){k.translate.apply(this,arguments);this.points.forEach(function(b){this.translatePoint(b)},this)};v.prototype.drawPoint=function(b,d){var c=this.options,e=this.chart.renderer,a=b.graphic,f=b.shapeType,k=b.shapeArgs,l=b.partShapeArgs,
u=b.clipRectArgs,r=b.partialFill,t=c.stacking&&!c.borderRadius,q=b.state,w=c.states[q||"normal"]||{},H="undefined"===typeof q?"attr":d;q=this.pointAttribs(b,q);w=n(this.chart.options.chart.animation,w.animation);if(b.isNull||!1===b.visible)a&&(b.graphic=a.destroy());else{if(a)a.rect[d](k);else b.graphic=a=e.g("point").addClass(b.getClassName()).add(b.group||this.group),a.rect=e[f](g(k)).addClass(b.getClassName()).addClass("highcharts-partfill-original").add(a);l&&(a.partRect?(a.partRect[d](g(l)),
a.partialClipRect[d](g(u))):(a.partialClipRect=e.clipRect(u.x,u.y,u.width,u.height),a.partRect=e[f](l).addClass("highcharts-partfill-overlay").add(a).clip(a.partialClipRect)));this.chart.styledMode||(a.rect[d](q,w).shadow(c.shadow,null,t),l&&(m(r)||(r={}),m(c.partialFill)&&(r=g(c.partialFill,r)),b=r.fill||F(q.fill).brighten(-.3).get()||F(b.color||this.color).brighten(-.3).get(),q.fill=b,a.partRect[H](q,w).shadow(c.shadow,null,t)))}};v.prototype.drawPoints=function(){var b=this,d=b.getAnimationVerb();
b.points.forEach(function(c){b.drawPoint(c,d)})};v.prototype.getAnimationVerb=function(){return this.chart.pointCount<(this.options.animationLimit||250)?"animate":"attr"};v.prototype.isPointInside=function(b){var d=b.shapeArgs,c=b.plotX,g=b.plotY;return d?"undefined"!==typeof c&&"undefined"!==typeof g&&0<=g&&g<=this.yAxis.len&&0<=(d.x||0)+(d.width||0)&&c<=this.xAxis.len:e.prototype.isPointInside.apply(this,arguments)};v.defaultOptions=g(l.defaultOptions,{colorByPoint:!0,dataLabels:{formatter:function(){var d=
this.point.partialFill;m(d)&&(d=d.amount);if(x(d)&&0<d)return b(100*d)+"%"},inside:!0,verticalAlign:"middle"},tooltip:{headerFormat:'<span style="font-size: 10px">{point.x} - {point.x2}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.yCategory}</b><br/>'},borderRadius:3,pointRange:0});return v}(l);v(C.prototype,{type:"xrange",parallelArrays:["x","x2","y"],requireSorting:!1,animate:B.prototype.animate,cropShoulder:1,getExtremesFromAll:!0,autoIncrement:e.noop,
buildKDTree:e.noop,pointClass:D});E.registerSeriesType("xrange",C);"";return C});P(e,"Series/Gantt/GanttPoint.js",[e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v){var q=this&&this.__extends||function(){var e=function(q,v){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,l){e.__proto__=l}||function(e,l){for(var k in l)l.hasOwnProperty(k)&&(e[k]=l[k])};return e(q,v)};return function(q,v){function B(){this.constructor=q}e(q,v);q.prototype=null===v?Object.create(v):
(B.prototype=v.prototype,new B)}}(),C=v.pick;return function(e){function v(){var q=null!==e&&e.apply(this,arguments)||this;q.options=void 0;q.series=void 0;return q}q(v,e);v.setGanttPointAliases=function(e){function q(l,k){"undefined"!==typeof k&&(e[l]=k)}q("x",C(e.start,e.x));q("x2",C(e.end,e.x2));q("partialFill",C(e.completed,e.partialFill))};v.prototype.applyOptions=function(q,B){q=e.prototype.applyOptions.call(this,q,B);v.setGanttPointAliases(q);return q};v.prototype.isValid=function(){return("number"===
typeof this.start||"number"===typeof this.x)&&("number"===typeof this.end||"number"===typeof this.x2||this.milestone)};return v}(e.seriesTypes.xrange.prototype.pointClass)});P(e,"Core/Axis/BrokenAxis.js",[e["Core/Axis/Axis.js"],e["Core/Series/Series.js"],e["Extensions/Stacking.js"],e["Core/Utilities.js"]],function(e,v,E,C){var q=C.addEvent,A=C.find,F=C.fireEvent,B=C.isArray,l=C.isNumber,k=C.pick,d;(function(b){function d(){"undefined"!==typeof this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,
!1)}function I(){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=[],f=0;f<c.length;f++)b.isInAnyBreak(c[f])||a.push(c[f]);this.tickPositions=a;this.tickPositions.info=d}}function m(){this.brokenAxis||(this.brokenAxis=new z(this))}function g(){var b=this.options.connectNulls,c=this.points,d=this.xAxis,a=this.yAxis;if(this.isDirty)for(var f=c.length;f--;){var g=c[f],e=
!(null===g.y&&!1===b)&&(d&&d.brokenAxis&&d.brokenAxis.isInAnyBreak(g.x,!0)||a&&a.brokenAxis&&a.brokenAxis.isInAnyBreak(g.y,!0));g.visible=e?!1:!1!==g.options.visible}}function n(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,k(this.pointArrayMap,["y"]))}function J(b,c){var d=this,a=d.points,f,g,e,m;if(b&&b.brokenAxis&&b.brokenAxis.hasBreaks){var n=b.brokenAxis;c.forEach(function(c){f=n&&n.breakArray||[];g=b.isXAxis?b.min:k(d.options.threshold,b.min);a.forEach(function(a){m=k(a["stack"+
c.toUpperCase()],a[c]);f.forEach(function(c){if(l(g)&&l(m)){e=!1;if(g<c.from&&m>c.to||g>c.from&&m<c.from)e="pointBreak";else if(g<c.from&&m>c.from&&m<c.to||g>c.from&&m>c.to&&m<c.from)e="pointInBreak";e&&F(b,e,{point:a,brk:c})}})})})}}function D(){var b=this.currentDataGrouping,c=b&&b.gapSize;b=this.points.slice();var d=this.yAxis,a=this.options.gapSize,f=b.length-1,g;if(a&&0<f)for("value"!==this.options.gapUnit&&(a*=this.basePointRange),c&&c>a&&c>=this.basePointRange&&(a=c),g=void 0;f--;)g&&!1!==
g.visible||(g=b[f+1]),c=b[f],!1!==g.visible&&!1!==c.visible&&(g.x-c.x>a&&(g=(c.x+g.x)/2,b.splice(f+1,0,{isNull:!0,x:g}),d.stacking&&this.options.stacking&&(g=d.stacking.stacks[this.stackKey][g]=new E(d,d.options.stackLabels,!1,g,this.stack),g.total=0)),g=c);return this.getGraphPath(b)}b.compose=function(b,c){if(-1===b.keepProps.indexOf("brokenAxis")){b.keepProps.push("brokenAxis");var e=v.prototype;e.drawBreaks=J;e.gappedPath=D;q(b,"init",m);q(b,"afterInit",d);q(b,"afterSetTickPositions",x);q(b,"afterSetOptions",
I);q(c,"afterGeneratePoints",g);q(c,"afterRender",n)}return b};var z=function(){function b(c){this.hasBreaks=!1;this.axis=c}b.isInBreak=function(c,b){var a=c.repeat||Infinity,d=c.from,g=c.to-c.from;b=b>=d?(b-d)%a:a-(d-b)%a;return c.inclusive?b<=g:b<g&&0!==b};b.lin2Val=function(c){var d=this.brokenAxis;d=d&&d.breakArray;if(!d||!l(c))return c;var a;for(a=0;a<d.length;a++){var f=d[a];if(f.from>=c)break;else f.to<c?c+=f.len:b.isInBreak(f,c)&&(c+=f.len)}return c};b.val2Lin=function(c){var d=this.brokenAxis;
d=d&&d.breakArray;if(!d||!l(c))return c;var a=c,f;for(f=0;f<d.length;f++){var g=d[f];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(c,b){return A(b,function(a){return a.from<c&&c<a.to})};b.prototype.isInAnyBreak=function(c,d){var a=this.axis,f=a.options.breaks||[],g=f.length,e;if(g&&l(c)){for(;g--;)if(b.isInBreak(f[g],c)){var h=!0;e||(e=k(f[g].showPoints,!a.isXAxis))}var m=h&&d?h&&!e:h}return m};b.prototype.setBreaks=
function(c,d){var a=this,f=a.axis,g=B(c)&&!!c.length;f.isDirty=a.hasBreaks!==g;a.hasBreaks=g;f.options.breaks=f.userOptions.breaks=c;f.forceRedraw=!0;f.series.forEach(function(a){a.isDirty=!0});g||f.val2lin!==b.val2Lin||(delete f.val2lin,delete f.lin2val);g&&(f.userOptions.ordinal=!1,f.lin2val=b.lin2Val,f.val2lin=b.val2Lin,f.setExtremes=function(c,b,d,f,g){if(a.hasBreaks){for(var h=this.options.breaks||[],m;m=a.findBreakAt(c,h);)c=m.to;for(;m=a.findBreakAt(b,h);)b=m.from;b<c&&(b=c)}e.prototype.setExtremes.call(this,
c,b,d,f,g)},f.setAxisTranslation=function(){e.prototype.setAxisTranslation.call(this);a.unitLength=void 0;if(a.hasBreaks){var c=f.options.breaks||[],d=[],g=[],h=k(f.pointRangePadding,0),m=0,n,q=f.userMin||f.min,t=f.userMax||f.max,u;c.forEach(function(a){n=a.repeat||Infinity;l(q)&&l(t)&&(b.isInBreak(a,q)&&(q+=a.to%n-q%n),b.isInBreak(a,t)&&(t-=t%n-a.from%n))});c.forEach(function(a){x=a.from;n=a.repeat||Infinity;if(l(q)&&l(t)){for(;x-n>q;)x-=n;for(;x<q;)x+=n;for(u=x;u<t;u+=n)d.push({value:u,move:"in"}),
d.push({value:u+a.to-a.from,move:"out",size:a.breakSize})}});d.sort(function(a,c){return a.value===c.value?("in"===a.move?0:1)-("in"===c.move?0:1):a.value-c.value});var p=0;var x=q;d.forEach(function(a){p+="in"===a.move?1:-1;1===p&&"in"===a.move&&(x=a.value);0===p&&l(x)&&(g.push({from:x,to:a.value,len:a.value-x-(a.size||0)}),m+=a.value-x-(a.size||0))});a.breakArray=g;l(q)&&l(t)&&l(f.min)&&(a.unitLength=t-q-m+h,F(f,"afterBreaks"),f.staticScale?f.transA=f.staticScale:a.unitLength&&(f.transA*=(t-f.min+
h)/a.unitLength),h&&(f.minPixelPadding=f.transA*(f.minPointOffset||0)),f.min=q,f.max=t)}});k(d,!0)&&f.chart.redraw()};return b}();b.Additions=z})(d||(d={}));return d});P(e,"Core/Axis/GridAxis.js",[e["Core/Axis/Axis.js"],e["Core/Axis/AxisDefaults.js"],e["Core/Globals.js"],e["Core/Utilities.js"]],function(e,v,E,C){var q=E.dateFormats,A=C.addEvent,F=C.defined,B=C.erase,l=C.find,k=C.isArray,d=C.isNumber,b=C.merge,t=C.pick,I=C.timeUnits,x=C.wrap,m;(function(g){function m(a,c){var b={width:0,height:0};
c.forEach(function(c){c=a[c];if(C.isObject(c,!0)){var f=C.isObject(c.label,!0)?c.label:{};c=f.getBBox?f.getBBox().height:0;f.textStr&&!d(f.textPxLength)&&(f.textPxLength=f.getBBox().width);var g=d(f.textPxLength)?Math.round(f.textPxLength):0;f.textStr&&(g=Math.round(f.getBBox().width));b.height=Math.max(c,b.height);b.width=Math.max(g,b.width)}});"treegrid"===this.options.type&&this.treeGrid&&this.treeGrid.mapOfPosToGridNode&&(b.width+=this.options.labels.indentation*((this.treeGrid.mapOfPosToGridNode[-1].height||
0)-1));return b}function q(){var a=this.grid;(a&&a.columns||[]).forEach(function(a){a.getOffset()})}function D(a){if(!0===(this.options.grid||{}).enabled){var c=this.axisTitle,b=this.height,d=this.horiz,f=this.left,e=this.offset,h=this.opposite,m=this.options,n=this.top,k=this.width,l=this.tickSize(),r=c&&c.getBBox().width,w=m.title.x,q=m.title.y,u=t(m.title.margin,d?5:10);c=this.chart.renderer.fontMetrics(m.title.style.fontSize,c).f;l=(d?n+b:f)+(d?1:-1)*(h?-1:1)*(l?l[0]/2:0)+(this.side===g.Side.bottom?
c:0);a.titlePosition.x=d?f-(r||0)/2-u+w:l+(h?k:0)+e+w;a.titlePosition.y=d?l-(h?b:0)+(h?c:-c)/2+e+q:n-u+q}}function z(){var a=this.chart,c=this.options.grid;c=void 0===c?{}:c;var d=this.userOptions;if(c.enabled){var f=this.options;f.labels.align=t(f.labels.align,"center");this.categories||(f.showLastLabel=!1);this.labelRotation=0;f.labels.rotation=0}if(c.columns){f=this.grid.columns=[];for(var g=this.grid.columnIndex=0;++g<c.columns.length;){var h=b(d,c.columns[c.columns.length-g-1],{linkedTo:0,type:"category",
scrollbar:{enabled:!1}});delete h.grid.columns;h=new e(this.chart,h);h.grid.isColumn=!0;h.grid.columnIndex=g;B(a.axes,h);B(a[this.coll],h);f.push(h)}}}function u(){var a=this.grid,c=this.options;if(!0===(c.grid||{}).enabled){var b=this.min||0,d=this.max||0;this.maxLabelDimensions=this.getMaxLabelDimensions(this.ticks,this.tickPositions);this.rightWall&&this.rightWall.destroy();if(this.grid&&this.grid.isOuterAxis()&&this.axisLine){var f=c.lineWidth;if(f){f=this.getLinePath(f);var e=f[0],h=f[1],m=((this.tickSize("tick")||
[1])[0]-1)*(this.side===g.Side.top||this.side===g.Side.left?-1:1);"M"===e[0]&&"L"===h[0]&&(this.horiz?(e[2]+=m,h[2]+=m):(e[1]+=m,h[1]+=m));!this.horiz&&this.chart.marginRight&&(e=[e,["L",this.left,e[2]||0]],m=["L",this.chart.chartWidth-this.chart.marginRight,this.toPixels(d+this.tickmarkOffset)],h=[["M",h[1]||0,this.toPixels(d+this.tickmarkOffset)],m],this.grid.upperBorder||0===b%1||(this.grid.upperBorder=this.grid.renderBorder(e)),this.grid.upperBorder&&(this.grid.upperBorder.attr({stroke:c.lineColor,
"stroke-width":c.lineWidth}),this.grid.upperBorder.animate({d:e})),this.grid.lowerBorder||0===d%1||(this.grid.lowerBorder=this.grid.renderBorder(h)),this.grid.lowerBorder&&(this.grid.lowerBorder.attr({stroke:c.lineColor,"stroke-width":c.lineWidth}),this.grid.lowerBorder.animate({d:h})));this.grid.axisLineExtra?(this.grid.axisLineExtra.attr({stroke:c.lineColor,"stroke-width":c.lineWidth}),this.grid.axisLineExtra.animate({d:f})):this.grid.axisLineExtra=this.grid.renderBorder(f);this.axisLine[this.showAxis?
"show":"hide"](!0)}}(a&&a.columns||[]).forEach(function(a){a.render()});!this.horiz&&this.chart.hasRendered&&(this.scrollbar||this.linkedParent&&this.linkedParent.scrollbar)&&(a=this.tickmarkOffset,c=this.tickPositions[this.tickPositions.length-1],f=this.tickPositions[0],(h=this.ticks[f].label)&&(b-f>a?h.hide():h.show()),(h=this.ticks[c].label)&&(c-d>a?h.hide():h.show()),(b=this.ticks[c].mark)&&(c-d<a&&0<c-d&&this.ticks[c].isLast?b.hide():this.ticks[c-1]&&b.show()))}}function c(){var a=this.tickPositions&&
this.tickPositions.info,c=this.options,b=this.userOptions.labels||{};(c.grid||{}).enabled&&(this.horiz?(this.series.forEach(function(a){a.options.pointRange=0}),a&&c.dateTimeLabelFormats&&c.labels&&!F(b.align)&&(!1===c.dateTimeLabelFormats[a.unitName].range||1<a.count)&&(c.labels.align="left",F(b.x)||(c.labels.x=3))):"treegrid"!==this.options.type&&this.grid&&this.grid.columns&&(this.minPointOffset=this.tickInterval))}function h(a){var c=this.options;a=a.userOptions;var f=c&&C.isObject(c.grid,!0)?
c.grid:{};if(!0===f.enabled){var g=b(!0,{className:"highcharts-grid-axis "+(a.className||""),dateTimeLabelFormats:{hour:{list:["%H:%M","%H"]},day:{list:["%A, %e. %B","%a, %e. %b","%E"]},week:{list:["Week %W","W%W"]},month:{list:["%B","%b","%o"]}},grid:{borderWidth:1},labels:{padding:2,style:{fontSize:"13px"}},margin:0,title:{text:null,reserveSpace:!1,rotation:0},units:[["millisecond",[1,10,100]],["second",[1,10]],["minute",[1,5,15]],["hour",[1,6]],["day",[1]],["week",[1]],["month",[1]],["year",null]]},
a);"xAxis"===this.coll&&(F(a.linkedTo)&&!F(a.tickPixelInterval)&&(g.tickPixelInterval=350),F(a.tickPixelInterval)||!F(a.linkedTo)||F(a.tickPositioner)||F(a.tickInterval)||(g.tickPositioner=function(a,c){var b=this.linkedParent&&this.linkedParent.tickPositions&&this.linkedParent.tickPositions.info;if(b){for(var d=g.units||[],f=void 0,e=void 0,h=void 0,m=0;m<d.length;m++)if(d[m][0]===b.unitName){f=m;break}d[f+1]?(h=d[f+1][0],e=(d[f+1][1]||[1])[0]):"year"===b.unitName&&(h="year",e=10*b.count);b=I[h];
this.tickInterval=b*e;return this.getTimeTicks({unitRange:b,count:e,unitName:h},a,c,this.options.startOfWeek)}}));b(!0,this.options,g);this.horiz&&(c.minPadding=t(a.minPadding,0),c.maxPadding=t(a.maxPadding,0));d(c.grid.borderWidth)&&(c.tickWidth=c.lineWidth=f.borderWidth)}}function a(a){a=(a=a.userOptions)&&a.grid||{};var c=a.columns;a.enabled&&c&&b(!0,this.options,c[c.length-1])}function f(){(this.grid.columns||[]).forEach(function(a){a.setScale()})}function y(a){var c=v.defaultLeftAxisOptions,
b=this.horiz,d=this.maxLabelDimensions,f=this.options.grid;f=void 0===f?{}:f;f.enabled&&d&&(c=2*Math.abs(c.labels.x),b=b?f.cellHeight||c+d.height:c+d.width,k(a.tickSize)?a.tickSize[0]=b:a.tickSize=[b,0])}function L(){this.axes.forEach(function(a){(a.grid&&a.grid.columns||[]).forEach(function(a){a.setAxisSize();a.setAxisTranslation()})})}function K(a){var c=this.grid;(c.columns||[]).forEach(function(c){c.destroy(a.keepEvents)});c.columns=void 0}function r(a){a=a.userOptions||{};var c=a.grid||{};c.enabled&&
F(c.borderColor)&&(a.tickColor=a.lineColor=c.borderColor);this.grid||(this.grid=new M(this))}function G(a){var c=this.label,b=this.axis,f=b.reversed,e=b.chart,h=b.options.grid||{},m=b.options.labels,n=m.align,k=g.Side[b.side],l=a.tickmarkOffset,r=b.tickPositions,w=this.pos-l;r=d(r[a.index+1])?r[a.index+1]-l:(b.max||0)+l;var q=b.tickSize("tick");l=q?q[0]:0;q=q?q[1]/2:0;if(!0===h.enabled){if("top"===k){h=b.top+b.offset;var t=h-l}else"bottom"===k?(t=e.chartHeight-b.bottom+b.offset,h=t+l):(h=b.top+b.len-
(b.translate(f?r:w)||0),t=b.top+b.len-(b.translate(f?w:r)||0));"right"===k?(k=e.chartWidth-b.right+b.offset,f=k+l):"left"===k?(f=b.left+b.offset,k=f-l):(k=Math.round(b.left+(b.translate(f?r:w)||0))-q,f=Math.min(Math.round(b.left+(b.translate(f?w:r)||0))-q,b.left+b.len));this.slotWidth=f-k;a.pos.x="left"===n?k:"right"===n?f:k+(f-k)/2;a.pos.y=t+(h-t)/2;e=e.renderer.fontMetrics(m.style.fontSize,c&&c.element);c=c?c.getBBox().height:0;m.useHTML?a.pos.y+=e.b+-(c/2):(c=Math.round(c/e.h),a.pos.y+=(e.b-(e.h-
e.f))/2+-((c-1)*e.h/2));a.pos.x+=b.horiz&&m.x||0}}function Q(a){var c=a.axis,d=a.value;if(c.options.grid&&c.options.grid.enabled){var f=c.tickPositions,g=(c.linkedParent||c).series[0],e=d===f[0];f=d===f[f.length-1];var h=g&&l(g.options.data,function(a){return a[c.isXAxis?"x":"y"]===d}),m=void 0;h&&g.is("gantt")&&(m=b(h),E.seriesTypes.gantt.prototype.pointClass.setGanttPointAliases(m));a.isFirst=e;a.isLast=f;a.point=m}}function w(){var a=this.options,c=this.categories,b=this.tickPositions,d=b[0],f=
b[b.length-1],g=this.linkedParent&&this.linkedParent.min||this.min,e=this.linkedParent&&this.linkedParent.max||this.max,h=this.tickInterval;!0!==(a.grid||{}).enabled||c||!this.horiz&&!this.isLinked||(d<g&&d+h>g&&!a.startOnTick&&(b[0]=g),f>e&&f-h<e&&!a.endOnTick&&(b[b.length-1]=e))}function H(a){var c=this.options.grid;return!0===(void 0===c?{}:c).enabled&&this.categories?this.tickInterval:a.apply(this,Array.prototype.slice.call(arguments,1))}(function(a){a[a.top=0]="top";a[a.right=1]="right";a[a.bottom=
2]="bottom";a[a.left=3]="left"})(g.Side||(g.Side={}));g.compose=function(b,d,g){-1===b.keepProps.indexOf("grid")&&(b.keepProps.push("grid"),b.prototype.getMaxLabelDimensions=m,x(b.prototype,"unsquish",H),A(b,"init",r),A(b,"afterGetOffset",q),A(b,"afterGetTitlePosition",D),A(b,"afterInit",z),A(b,"afterRender",u),A(b,"afterSetAxisTranslation",c),A(b,"afterSetOptions",h),A(b,"afterSetOptions",a),A(b,"afterSetScale",f),A(b,"afterTickSize",y),A(b,"trimTicks",w),A(b,"destroy",K));A(d,"afterSetChartSize",
L);A(g,"afterGetLabelPosition",G);A(g,"labelFormat",Q);return b};var M=function(){function a(a){this.axis=a}a.prototype.isOuterAxis=function(){var a=this.axis,c=a.grid.columnIndex,b=a.linkedParent&&a.linkedParent.grid.columns||a.grid.columns,f=c?a.linkedParent:a,g=-1,e=0;a.chart[a.coll].forEach(function(c,b){c.side!==a.side||c.options.isInternal||(e=b,c===f&&(g=b))});return e===g&&(d(c)?b.length===c:!0)};a.prototype.renderBorder=function(a){var c=this.axis,b=c.chart.renderer,d=c.options;a=b.path(a).addClass("highcharts-axis-line").add(c.axisBorder);
b.styledMode||a.attr({stroke:d.lineColor,"stroke-width":d.lineWidth,zIndex:7});return a};return a}();g.Additions=M})(m||(m={}));q.E=function(b){return this.dateFormat("%a",b,!0).charAt(0)};q.W=function(b){b=new this.Date(b);var d=(this.get("Day",b)+6)%7,g=new this.Date(b.valueOf());this.set("Date",g,this.get("Date",b)-d+3);d=new this.Date(this.get("FullYear",g),0,1);4!==this.get("Day",d)&&(this.set("Month",b,0),this.set("Date",b,1+(11-this.get("Day",d))%7));return(1+Math.floor((g.valueOf()-d.valueOf())/
6048E5)).toString()};"";return m});P(e,"Gantt/Tree.js",[e["Core/Utilities.js"]],function(e){var q=e.extend,E=e.isNumber,C=e.pick,D=function(e,q){var l=e.reduce(function(e,d){var b=C(d.parent,"");"undefined"===typeof e[b]&&(e[b]=[]);e[b].push(d);return e},{});Object.keys(l).forEach(function(e,d){var b=l[e];""!==e&&-1===q.indexOf(e)&&(b.forEach(function(b){d[""].push(b)}),delete d[e])});return l},A=function(e,v,l,k,d,b){var t=0,B=0,x=b&&b.after,m=b&&b.before;v={data:k,depth:l-1,id:e,level:l,parent:v};
var g,n;"function"===typeof m&&m(v,b);m=(d[e]||[]).map(function(m){var k=A(m.id,e,l+1,m,d,b),q=m.start;m=!0===m.milestone?q:m.end;g=!E(g)||q<g?q:g;n=!E(n)||m>n?m:n;t=t+1+k.descendants;B=Math.max(k.height+1,B);return k});k&&(k.start=C(k.start,g),k.end=C(k.end,n));q(v,{children:m,descendants:t,height:B});"function"===typeof x&&x(v,b);return v};return{getListOfParents:D,getNode:A,getTree:function(e,q){var l=e.map(function(e){return e.id});e=D(e,l);return A("",null,1,null,e,q)}}});P(e,"Core/Axis/TreeGridTick.js",
[e["Core/Color/Palette.js"],e["Core/Utilities.js"]],function(e,v){var q=v.addEvent,C=v.isObject,D=v.isNumber,A=v.pick,F=v.wrap,B;(function(l){function k(){this.treeGrid||(this.treeGrid=new x(this))}function d(b,d){b=b.treeGrid;var g=!b.labelIcon,m=d.renderer,k=d.xy,l=d.options,q=l.width||0,c=l.height||0,h=k.x-q/2-(l.padding||0);k=k.y-c/2;var a=d.collapsed?90:180,f=d.show&&D(k),t=b.labelIcon;t||(b.labelIcon=t=m.path(m.symbols[l.type](l.x||0,l.y||0,q,c)).addClass("highcharts-label-icon").add(d.group));
t.attr({y:f?0:-9999});m.styledMode||t.attr({cursor:"pointer",fill:A(d.color,e.neutralColor60),"stroke-width":1,stroke:l.lineColor,strokeWidth:l.lineWidth||0});t[g?"attr":"animate"]({translateX:h,translateY:k,rotation:a})}function b(b,d,e,k,l,q,t,c,h){var a=A(this.options&&this.options.labels,q);q=this.pos;var f=this.axis,g="treegrid"===f.options.type;b=b.apply(this,[d,e,k,l,a,t,c,h]);g&&(d=a&&C(a.symbol,!0)?a.symbol:{},a=a&&D(a.indentation)?a.indentation:0,q=(q=(f=f.treeGrid.mapOfPosToGridNode)&&
f[q])&&q.depth||1,b.x+=(d.width||0)+2*(d.padding||0)+(q-1)*a);return b}function t(b){var e=this,m=e.pos,k=e.axis,l=e.label,t=k.treeGrid.mapOfPosToGridNode,u=k.options,c=A(e.options&&e.options.labels,u&&u.labels),h=c&&C(c.symbol,!0)?c.symbol:{},a=(t=t&&t[m])&&t.depth;u="treegrid"===u.type;var f=-1<k.tickPositions.indexOf(m);m=k.chart.styledMode;u&&t&&l&&l.element&&l.addClass("highcharts-treegrid-node-level-"+a);b.apply(e,Array.prototype.slice.call(arguments,1));u&&l&&l.element&&t&&t.descendants&&0<
t.descendants&&(k=k.treeGrid.isCollapsed(t),d(e,{color:!m&&l.styles&&l.styles.color||"",collapsed:k,group:l.parentGroup,options:h,renderer:l.renderer,show:f,xy:l.xy}),h="highcharts-treegrid-node-"+(k?"expanded":"collapsed"),l.addClass("highcharts-treegrid-node-"+(k?"collapsed":"expanded")).removeClass(h),m||l.css({cursor:"pointer"}),[l,e.treeGrid.labelIcon].forEach(function(a){a&&!a.attachedTreeGridEvents&&(q(a.element,"mouseover",function(){l.addClass("highcharts-treegrid-node-active");l.renderer.styledMode||
l.css({textDecoration:"underline"})}),q(a.element,"mouseout",function(){var a=C(c.style)?c.style:{};l.removeClass("highcharts-treegrid-node-active");l.renderer.styledMode||l.css({textDecoration:a.textDecoration})}),q(a.element,"click",function(){e.treeGrid.toggleCollapse()}),a.attachedTreeGridEvents=!0)}))}var v=!1;l.compose=function(d){v||(q(d,"init",k),F(d.prototype,"getLabelPosition",b),F(d.prototype,"renderLabel",t),d.prototype.collapse=function(b){this.treeGrid.collapse(b)},d.prototype.expand=
function(b){this.treeGrid.expand(b)},d.prototype.toggleCollapse=function(b){this.treeGrid.toggleCollapse(b)},v=!0)};var x=function(){function b(b){this.tick=b}b.prototype.collapse=function(b){var d=this.tick,e=d.axis,g=e.brokenAxis;g&&e.treeGrid.mapOfPosToGridNode&&(d=e.treeGrid.collapse(e.treeGrid.mapOfPosToGridNode[d.pos]),g.setBreaks(d,A(b,!0)))};b.prototype.expand=function(b){var d=this.tick,e=d.axis,g=e.brokenAxis;g&&e.treeGrid.mapOfPosToGridNode&&(d=e.treeGrid.expand(e.treeGrid.mapOfPosToGridNode[d.pos]),
g.setBreaks(d,A(b,!0)))};b.prototype.toggleCollapse=function(b){var d=this.tick,e=d.axis,g=e.brokenAxis;g&&e.treeGrid.mapOfPosToGridNode&&(d=e.treeGrid.toggleCollapse(e.treeGrid.mapOfPosToGridNode[d.pos]),g.setBreaks(d,A(b,!0)))};return b}();l.Additions=x})(B||(B={}));return B});P(e,"Mixins/TreeSeries.js",[e["Core/Color/Color.js"],e["Core/Utilities.js"]],function(e,v){var q=v.extend,C=v.isArray,D=v.isNumber,A=v.isObject,F=v.merge,B=v.pick;return{getColor:function(l,k){var d=k.index,b=k.mapOptionsToLevel,
q=k.parentColor,v=k.parentColorIndex,x=k.series,m=k.colors,g=k.siblings,n=x.points,A=x.chart.options.chart,D;if(l){n=n[l.i];l=b[l.level]||{};if(b=n&&l.colorByPoint){var z=n.index%(m?m.length:A.colorCount);var u=m&&m[z]}if(!x.chart.styledMode){m=n&&n.options.color;A=l&&l.color;if(D=q)D=(D=l&&l.colorVariation)&&"brightness"===D.key?e.parse(q).brighten(d/g*D.to).get():q;D=B(m,A,u,D,x.color)}var c=B(n&&n.options.colorIndex,l&&l.colorIndex,z,v,k.colorIndex)}return{color:D,colorIndex:c}},getLevelOptions:function(e){var k=
null;if(A(e)){k={};var d=D(e.from)?e.from:1;var b=e.levels;var l={};var v=A(e.defaults)?e.defaults:{};C(b)&&(l=b.reduce(function(b,e){if(A(e)&&D(e.level)){var g=F({},e);var m="boolean"===typeof g.levelIsConstant?g.levelIsConstant:v.levelIsConstant;delete g.levelIsConstant;delete g.level;e=e.level+(m?0:d-1);A(b[e])?q(b[e],g):b[e]=g}return b},{}));b=D(e.to)?e.to:1;for(e=0;e<=b;e++)k[e]=F({},v,A(l[e])?l[e]:{})}return k},setTreeValues:function b(e,d){var k=d.before,v=d.idRoot,x=d.mapIdToNode[v],m=d.points[e.i],
g=m&&m.options||{},n=0,A=[];e.levelDynamic=e.level-(("boolean"===typeof d.levelIsConstant?d.levelIsConstant:1)?0:x.level);e.name=B(m&&m.name,"");e.visible=v===e.id||("boolean"===typeof d.visible?d.visible:!1);"function"===typeof k&&(e=k(e,d));e.children.forEach(function(g,m){var k=q({},d);q(k,{index:m,siblings:e.children.length,visible:e.visible});g=b(g,k);A.push(g);g.visible&&(n+=g.val)});e.visible=0<n||e.visible;k=B(g.value,n);e.children=A;e.childrenTotal=n;e.isLeaf=e.visible&&!n;e.val=k;return e},
updateRootId:function(e){if(A(e)){var d=A(e.options)?e.options:{};d=B(e.rootNode,d.rootId,"");A(e.userOptions)&&(e.userOptions.rootId=d);e.rootNode=d}return d}}});P(e,"Core/Axis/TreeGridAxis.js",[e["Core/Axis/BrokenAxis.js"],e["Core/Axis/GridAxis.js"],e["Gantt/Tree.js"],e["Core/Axis/TreeGridTick.js"],e["Mixins/TreeSeries.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A){var q=D.getLevelOptions,B=A.addEvent,l=A.find,k=A.fireEvent,d=A.isArray,b=A.isObject,t=A.isString,I=A.merge,x=A.pick,m=A.wrap,g;
(function(g){function n(a,c){var b=a.collapseEnd||0;a=a.collapseStart||0;b>=c&&(a-=.5);return{from:a,to:b,showPoints:!1}}function A(a,c,d){var f=[],e=[],g={},h="boolean"===typeof c?c:!1,m={},k=-1;a=E.getTree(a,{after:function(a){a=m[a.pos];var c=0,b=0;a.children.forEach(function(a){b+=(a.descendants||0)+1;c=Math.max((a.height||0)+1,c)});a.descendants=b;a.height=c;a.collapsed&&e.push(a)},before:function(a){var c=b(a.data,!0)?a.data:{},d=t(c.name)?c.name:"",e=g[a.parent];e=b(e,!0)?m[e.pos]:null;var n=
function(a){return a.name===d},r;h&&b(e,!0)&&(r=l(e.children,n))?(n=r.pos,r.nodes.push(a)):n=k++;m[n]||(m[n]=r={depth:e?e.depth+1:0,name:d,id:c.id,nodes:[a],children:[],pos:n},-1!==n&&f.push(d),b(e,!0)&&e.children.push(r));t(a.id)&&(g[a.id]=a);r&&!0===c.collapsed&&(r.collapsed=!0);a.pos=n}});m=function(a,c){var d=function(a,f,e){var g=f+(-1===f?0:c-1),h=(g-f)/2,m=f+h;a.nodes.forEach(function(a){var c=a.data;b(c,!0)&&(c.y=f+(c.seriesIndex||0),delete c.seriesIndex);a.pos=m});e[m]=a;a.pos=m;a.tickmarkOffset=
h+.5;a.collapseStart=g+.5;a.children.forEach(function(a){d(a,g+1,e);g=(a.collapseEnd||0)-.5});a.collapseEnd=g+.5;return e};return d(a["-1"],-1,{})}(m,d);return{categories:f,mapOfIdToNode:g,mapOfPosToGridNode:m,collapsedNodes:e,tree:a}}function z(a){a.target.axes.filter(function(a){return"treegrid"===a.options.type}).forEach(function(c){var f=c.options||{},e=f.labels,g=f.uniqueNames;f=f.max;var h=0;if(!c.treeGrid.mapOfPosToGridNode||c.series.some(function(a){return!a.hasRendered||a.isDirtyData||a.isDirty})){var m=
c.series.reduce(function(a,c){c.visible&&((c.options.data||[]).forEach(function(d){c.options.keys&&c.options.keys.length&&(d=c.pointClass.prototype.optionsToObject.call({series:c},d),c.pointClass.setGanttPointAliases(d));b(d,!0)&&(d.seriesIndex=h,a.push(d))}),!0===g&&h++);return a},[]);if(f&&m.length<f)for(var k=m.length;k<=f;k++)m.push({name:k+"\u200b"});f=A(m,g||!1,!0===g?h:1);c.categories=f.categories;c.treeGrid.mapOfPosToGridNode=f.mapOfPosToGridNode;c.hasNames=!0;c.treeGrid.tree=f.tree;c.series.forEach(function(a){var c=
(a.options.data||[]).map(function(c){d(c)&&a.options.keys&&a.options.keys.length&&m.forEach(function(a){0<=c.indexOf(a.x)&&0<=c.indexOf(a.x2)&&(c=a)});return b(c,!0)?I(c):c});a.visible&&a.setData(c,!1)});c.treeGrid.mapOptionsToLevel=q({defaults:e,from:1,levels:e&&e.levels,to:c.treeGrid.tree&&c.treeGrid.tree.height});"beforeRender"===a.type&&(c.treeGrid.collapsedNodes=f.collapsedNodes)}})}function u(c,b){var d=this.treeGrid.mapOptionsToLevel||{},f=this.ticks,e=f[b],g;if("treegrid"===this.options.type&&
this.treeGrid.mapOfPosToGridNode){var h=this.treeGrid.mapOfPosToGridNode[b];(d=d[h.depth])&&(g={labels:d});!e&&a?f[b]=new a(this,b,void 0,void 0,{category:h.name,tickmarkOffset:h.tickmarkOffset,options:g}):(e.parameters.category=h.name,e.options=g,e.addLabel())}else c.apply(this,Array.prototype.slice.call(arguments,1))}function c(a,c,b){var d=this,e="treegrid"===b.type;d.treeGrid||(d.treeGrid=new f(d));e&&(B(c,"beforeRender",z),B(c,"beforeRedraw",z),B(c,"addSeries",function(a){a.options.data&&(a=
A(a.options.data,b.uniqueNames||!1,1),d.treeGrid.collapsedNodes=(d.treeGrid.collapsedNodes||[]).concat(a.collapsedNodes))}),B(d,"foundExtremes",function(){d.treeGrid.collapsedNodes&&d.treeGrid.collapsedNodes.forEach(function(a){var c=d.treeGrid.collapse(a);d.brokenAxis&&(d.brokenAxis.setBreaks(c,!1),d.treeGrid.collapsedNodes&&(d.treeGrid.collapsedNodes=d.treeGrid.collapsedNodes.filter(function(c){return a.collapseStart!==c.collapseStart||a.collapseEnd!==c.collapseEnd})))})}),B(d,"afterBreaks",function(){"yAxis"===
d.coll&&!d.staticScale&&d.chart.options.chart.height&&(d.isDirty=!0)}),b=I({grid:{enabled:!0},labels:{align:"left",levels:[{level:void 0},{level:1,style:{fontWeight:"bold"}}],symbol:{type:"triangle",x:-5,y:-5,height:10,width:10,padding:5}},uniqueNames:!1},b,{reversed:!0,grid:{columns:void 0}}));a.apply(d,[c,b]);e&&(d.hasNames=!0,d.options.showLastLabel=!0)}function h(a){var c=this.options;"treegrid"===c.type?(this.min=x(this.userMin,c.min,this.dataMin),this.max=x(this.userMax,c.max,this.dataMax),
k(this,"foundExtremes"),this.setAxisTranslation(),this.tickmarkOffset=.5,this.tickInterval=1,this.tickPositions=this.treeGrid.mapOfPosToGridNode?this.treeGrid.getTickPositions():[]):a.apply(this,Array.prototype.slice.call(arguments,1))}var a;g.compose=function(b,d,f,g){-1===b.keepProps.indexOf("treeGrid")&&(b.keepProps.push("treeGrid"),a=g,m(b.prototype,"generateTick",u),m(b.prototype,"init",c),m(b.prototype,"setTickInterval",h),b.prototype.utils={getNode:E.getNode},v.compose(b,d,g),e.compose(b,f),
C.compose(g));return b};var f=function(){function a(a){this.axis=a}a.prototype.setCollapsedStatus=function(a){var c=this.axis,b=c.chart;c.series.forEach(function(c){var d=c.options.data;if(a.id&&d){var f=b.get(a.id);c=d[c.data.indexOf(f)];f&&c&&(f.collapsed=a.collapsed,c.collapsed=a.collapsed)}})};a.prototype.collapse=function(a){var c=this.axis,b=c.options.breaks||[],d=n(a,c.max);b.push(d);a.collapsed=!0;c.treeGrid.setCollapsedStatus(a);return b};a.prototype.expand=function(a){var c=this.axis,b=
c.options.breaks||[],d=n(a,c.max);a.collapsed=!1;c.treeGrid.setCollapsedStatus(a);return b.reduce(function(a,c){c.to===d.to&&c.from===d.from||a.push(c);return a},[])};a.prototype.getTickPositions=function(){var a=this.axis,c=Math.floor(a.min/a.tickInterval)*a.tickInterval,b=Math.ceil(a.max/a.tickInterval)*a.tickInterval;return Object.keys(a.treeGrid.mapOfPosToGridNode||{}).reduce(function(d,f){f=+f;!(f>=c&&f<=b)||a.brokenAxis&&a.brokenAxis.isInAnyBreak(f)||d.push(f);return d},[])};a.prototype.isCollapsed=
function(a){var c=this.axis,b=c.options.breaks||[],d=n(a,c.max);return b.some(function(a){return a.from===d.from&&a.to===d.to})};a.prototype.toggleCollapse=function(a){return this.isCollapsed(a)?this.expand(a):this.collapse(a)};return a}();g.Additions=f})(g||(g={}));return g});P(e,"Extensions/CurrentDateIndication.js",[e["Core/Axis/Axis.js"],e["Core/Color/Palette.js"],e["Core/Axis/PlotLineOrBand.js"],e["Core/Utilities.js"]],function(e,v,E,C){var q=C.addEvent,A=C.merge;C=C.wrap;var F={color:v.highlightColor20,
width:2,label:{format:"%a, %b %d %Y, %H:%M",formatter:function(e,l){return this.axis.chart.time.dateFormat(l||"",e)},rotation:0,style:{fontSize:"10px"}}};q(e,"afterSetOptions",function(){var e=this.options,l=e.currentDateIndicator;l&&(l="object"===typeof l?A(F,l):A(F),l.value=Date.now(),l.className="highcharts-current-date-indicator",e.plotLines||(e.plotLines=[]),e.plotLines.push(l))});q(E,"render",function(){this.label&&this.label.attr({text:this.getLabelText(this.options.label)})});C(E.prototype,
"getLabelText",function(e,l){var k=this.options;return k&&k.className&&-1!==k.className.indexOf("highcharts-current-date-indicator")&&k.label&&"function"===typeof k.label.formatter?(k.value=Date.now(),k.label.formatter.call(this,k.value,k.label.format)):e.call(this,l)})});P(e,"Extensions/StaticScale.js",[e["Core/Axis/Axis.js"],e["Core/Chart/Chart.js"],e["Core/Utilities.js"]],function(e,v,E){var q=E.addEvent,D=E.defined,A=E.isNumber,F=E.pick;q(e,"afterSetOptions",function(){var e=this.chart.options.chart;
!this.horiz&&A(this.options.staticScale)&&(!e.height||e.scrollablePlotArea&&e.scrollablePlotArea.minHeight)&&(this.staticScale=this.options.staticScale)});v.prototype.adjustHeight=function(){"adjustHeight"!==this.redrawTrigger&&((this.axes||[]).forEach(function(e){var l=e.chart,k=!!l.initiatedScale&&l.options.animation,d=e.options.staticScale;if(e.staticScale&&D(e.min)){var b=F(e.brokenAxis&&e.brokenAxis.unitLength,e.max+e.tickInterval-e.min)*d;b=Math.max(b,d);d=b-l.plotHeight;!l.scrollablePixelsY&&
1<=Math.abs(d)&&(l.plotHeight=b,l.redrawTrigger="adjustHeight",l.setSize(void 0,l.chartHeight+d,k));e.series.forEach(function(b){(b=b.sharedClipKey&&l.sharedClips[b.sharedClipKey])&&b.attr(l.inverted?{width:l.plotHeight}:{height:l.plotHeight})})}}),this.initiatedScale=!0);this.redrawTrigger=null};q(v,"render",v.prototype.adjustHeight)});P(e,"Extensions/ArrowSymbols.js",[e["Core/Renderer/SVG/SVGRenderer.js"]],function(e){function q(e,q,v,B){return[["M",e,q+B/2],["L",e+v,q],["L",e,q+B/2],["L",e+v,q+
B]]}function E(e,q,v,B){return[["M",e+v,q],["L",e,q+B/2],["L",e+v,q+B],["Z"]]}function C(e,q,v,B){return E(e,q,v/2,B)}e=e.prototype.symbols;e.arrow=q;e["arrow-filled"]=E;e["arrow-filled-half"]=C;e["arrow-half"]=function(e,v,C,B){return q(e,v,C/2,B)};e["triangle-left"]=E;e["triangle-left-half"]=C;return e});P(e,"Gantt/Connection.js",[e["Core/Globals.js"],e["Core/DefaultOptions.js"],e["Core/Series/Point.js"],e["Core/Utilities.js"]],function(e,v,E,C){function q(b){var d=b.shapeArgs;return d?{xMin:d.x||
0,xMax:(d.x||0)+(d.width||0),yMin:d.y||0,yMax:(d.y||0)+(d.height||0)}:(d=b.graphic&&b.graphic.getBBox())?{xMin:b.plotX-d.width/2,xMax:b.plotX+d.width/2,yMin:b.plotY-d.height/2,yMax:b.plotY+d.height/2}:null}"";var A=C.defined,F=C.error,B=C.extend,l=C.merge,k=C.objectEach,d=e.deg2rad,b=Math.max,t=Math.min;B(v.defaultOptions,{connectors:{type:"straight",lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}});
v=function(){function e(b,d,e){this.toPoint=this.pathfinder=this.graphics=this.fromPoint=this.chart=void 0;this.init(b,d,e)}e.prototype.init=function(b,d,e){this.fromPoint=b;this.toPoint=d;this.options=e;this.chart=b.series.chart;this.pathfinder=this.chart.pathfinder};e.prototype.renderPath=function(b,d,e){var g=this.chart,m=g.styledMode,k=g.pathfinder,l=!g.options.chart.forExport&&!1!==e,q=this.graphics&&this.graphics.path;k.group||(k.group=g.renderer.g().addClass("highcharts-pathfinder-group").attr({zIndex:-1}).add(g.seriesGroup));
k.group.translate(g.plotLeft,g.plotTop);q&&q.renderer||(q=g.renderer.path().add(k.group),m||q.attr({opacity:0}));q.attr(d);b={d:b};m||(b.opacity=1);q[l?"animate":"attr"](b,e);this.graphics=this.graphics||{};this.graphics.path=q};e.prototype.addMarker=function(b,e,g){var m=this.fromPoint.series.chart,k=m.pathfinder;m=m.renderer;var l="start"===b?this.fromPoint:this.toPoint,q=l.getPathfinderAnchorPoint(e);if(e.enabled&&((g="start"===b?g[1]:g[g.length-2])&&"M"===g[0]||"L"===g[0])){g={x:g[1],y:g[2]};
g=l.getRadiansToVector(g,q);q=l.getMarkerVector(g,e.radius,q);g=-g/d;if(e.width&&e.height){var t=e.width;var c=e.height}else t=c=2*e.radius;this.graphics=this.graphics||{};q={x:q.x-t/2,y:q.y-c/2,width:t,height:c,rotation:g,rotationOriginX:q.x,rotationOriginY:q.y};this.graphics[b]?this.graphics[b].animate(q):(this.graphics[b]=m.symbol(e.symbol).addClass("highcharts-point-connecting-path-"+b+"-marker").attr(q).add(k.group),m.styledMode||this.graphics[b].attr({fill:e.color||this.fromPoint.color,stroke:e.lineColor,
"stroke-width":e.lineWidth,opacity:0}).animate({opacity:1},l.series.options.animation))}};e.prototype.getPath=function(b){var d=this.pathfinder,e=this.chart,k=d.algorithms[b.type],q=d.chartObstacles;if("function"!==typeof k)return F('"'+b.type+'" is not a Pathfinder algorithm.'),{path:[],obstacles:[]};k.requiresObstacles&&!q&&(q=d.chartObstacles=d.getChartObstacles(b),e.options.connectors.algorithmMargin=b.algorithmMargin,d.chartObstacleMetrics=d.getObstacleMetrics(q));return k(this.fromPoint.getPathfinderAnchorPoint(b.startMarker),
this.toPoint.getPathfinderAnchorPoint(b.endMarker),l({chartObstacles:q,lineObstacles:d.lineObstacles||[],obstacleMetrics:d.chartObstacleMetrics,hardBounds:{xMin:0,xMax:e.plotWidth,yMin:0,yMax:e.plotHeight},obstacleOptions:{margin:b.algorithmMargin},startDirectionX:d.getAlgorithmStartDirection(b.startMarker)},b))};e.prototype.render=function(){var d=this.fromPoint,e=d.series,g=e.chart,k=g.pathfinder,q=l(g.options.connectors,e.options.connectors,d.options.connectors,this.options),v={};g.styledMode||
(v.stroke=q.lineColor||d.color,v["stroke-width"]=q.lineWidth,q.dashStyle&&(v.dashstyle=q.dashStyle));v["class"]="highcharts-point-connecting-path highcharts-color-"+d.colorIndex;q=l(v,q);A(q.marker.radius)||(q.marker.radius=t(b(Math.ceil((q.algorithmMargin||8)/2)-1,1),5));d=this.getPath(q);g=d.path;d.obstacles&&(k.lineObstacles=k.lineObstacles||[],k.lineObstacles=k.lineObstacles.concat(d.obstacles));this.renderPath(g,v,e.options.animation);this.addMarker("start",l(q.marker,q.startMarker),g);this.addMarker("end",
l(q.marker,q.endMarker),g)};e.prototype.destroy=function(){this.graphics&&(k(this.graphics,function(b){b.destroy()}),delete this.graphics)};return e}();e.Connection=v;B(E.prototype,{getPathfinderAnchorPoint:function(b){var d=q(this);switch(b.align){case "right":var e="xMax";break;case "left":e="xMin"}switch(b.verticalAlign){case "top":var g="yMin";break;case "bottom":g="yMax"}return{x:e?d[e]:(d.xMin+d.xMax)/2,y:g?d[g]:(d.yMin+d.yMax)/2}},getRadiansToVector:function(b,d){var e;A(d)||(e=q(this))&&(d=
{x:(e.xMin+e.xMax)/2,y:(e.yMin+e.yMax)/2});return Math.atan2(d.y-b.y,b.x-d.x)},getMarkerVector:function(b,d,e){var g=2*Math.PI,k=q(this),m=k.xMax-k.xMin,l=k.yMax-k.yMin,t=Math.atan2(l,m),u=!1;m/=2;var c=l/2,h=k.xMin+m;k=k.yMin+c;for(var a=h,f=k,x=1,v=1;b<-Math.PI;)b+=g;for(;b>Math.PI;)b-=g;g=Math.tan(b);b>-t&&b<=t?(v=-1,u=!0):b>t&&b<=Math.PI-t?v=-1:b>Math.PI-t||b<=-(Math.PI-t)?(x=-1,u=!0):x=-1;u?(a+=x*m,f+=v*m*g):(a+=l/(2*g)*x,f+=v*c);e.x!==h&&(a=e.x);e.y!==k&&(f=e.y);return{x:a+d*Math.cos(b),y:f-
d*Math.sin(b)}}});return v});P(e,"Gantt/PathfinderAlgorithms.js",[e["Core/Utilities.js"]],function(e){function q(d,b,e){e=e||0;var k=d.length-1;b-=1e-7;for(var l,m;e<=k;)if(l=k+e>>1,m=b-d[l].xMin,0<m)e=l+1;else if(0>m)k=l-1;else return l;return 0<e?e-1:0}function E(d,b){for(var e=q(d,b.x+1)+1;e--;){var k;if(k=d[e].xMax>=b.x)k=d[e],k=b.x<=k.xMax&&b.x>=k.xMin&&b.y<=k.yMax&&b.y>=k.yMin;if(k)return e}return-1}function C(d){var b=[];if(d.length){b.push(["M",d[0].start.x,d[0].start.y]);for(var e=0;e<d.length;++e)b.push(["L",
d[e].end.x,d[e].end.y])}return b}function D(d,b){d.yMin=B(d.yMin,b.yMin);d.yMax=F(d.yMax,b.yMax);d.xMin=B(d.xMin,b.xMin);d.xMax=F(d.xMax,b.xMax)}var A=e.pick,F=Math.min,B=Math.max,l=Math.abs;e=function(d,b,e){function k(b,c,d,a,e){b={x:b.x,y:b.y};b[c]=d[a||c]+(e||0);return b}function q(b,c,d){var a=l(c[d]-b[d+"Min"])>l(c[d]-b[d+"Max"]);return k(c,d,b,d+(a?"Max":"Min"),a?1:-1)}var m=[],g=A(e.startDirectionX,l(b.x-d.x)>l(b.y-d.y))?"x":"y",n=e.chartObstacles,t=E(n,d);e=E(n,b);if(-1<e){var v=n[e];e=q(v,
b,g);v={start:e,end:b};var z=e}else z=b;-1<t&&(n=n[t],e=q(n,d,g),m.push({start:d,end:e}),e[g]>=d[g]===e[g]>=z[g]&&(g="y"===g?"x":"y",b=d[g]<b[g],m.push({start:e,end:k(e,g,n,g+(b?"Max":"Min"),b?1:-1)}),g="y"===g?"x":"y"));d=m.length?m[m.length-1].end:d;e=k(d,g,z);m.push({start:d,end:e});g=k(e,"y"===g?"x":"y",z);m.push({start:e,end:g});m.push(v);return{path:C(m),obstacles:m}};e.requiresObstacles=!0;var k=function(d,b,e){function k(a,c,b){var d,e=a.x<c.x?1:-1;if(a.x<c.x){var f=a;var g=c}else f=c,g=a;
if(a.y<c.y){var h=a;var k=c}else h=c,k=a;for(d=0>e?F(q(y,g.x),y.length-1):0;y[d]&&(0<e&&y[d].xMin<=g.x||0>e&&y[d].xMax>=f.x);){if(y[d].xMin<=g.x&&y[d].xMax>=f.x&&y[d].yMin<=k.y&&y[d].yMax>=h.y)return b?{y:a.y,x:a.x<c.x?y[d].xMin-1:y[d].xMax+1,obstacle:y[d]}:{x:a.x,y:a.y<c.y?y[d].yMin-1:y[d].yMax+1,obstacle:y[d]};d+=e}return c}function t(a,c,b,d,e){var f=e.soft,g=e.hard,h=d?"x":"y",m={x:c.x,y:c.y},n={x:c.x,y:c.y};e=a[h+"Max"]>=f[h+"Max"];f=a[h+"Min"]<=f[h+"Min"];var r=a[h+"Max"]>=g[h+"Max"];g=a[h+
"Min"]<=g[h+"Min"];var w=l(a[h+"Min"]-c[h]),q=l(a[h+"Max"]-c[h]);b=10>l(w-q)?c[h]<b[h]:q<w;n[h]=a[h+"Min"];m[h]=a[h+"Max"];a=k(c,n,d)[h]!==n[h];c=k(c,m,d)[h]!==m[h];b=a?c?b:!0:c?!1:b;b=f?e?b:!0:e?!1:b;return g?r?b:!0:r?!1:b}function m(b,d,g){if(b.x===d.x&&b.y===d.y)return[];var l=g?"x":"y",n=e.obstacleOptions.margin;var r={soft:{xMin:c,xMax:h,yMin:a,yMax:f},hard:e.hardBounds};var q=E(y,b);if(-1<q){q=y[q];r=t(q,b,d,g,r);D(q,e.hardBounds);var p=g?{y:b.y,x:q[r?"xMax":"xMin"]+(r?1:-1)}:{x:b.x,y:q[r?"yMax":
"yMin"]+(r?1:-1)};var u=E(y,p);-1<u&&(u=y[u],D(u,e.hardBounds),p[l]=r?B(q[l+"Max"]-n+1,(u[l+"Min"]+q[l+"Max"])/2):F(q[l+"Min"]+n-1,(u[l+"Max"]+q[l+"Min"])/2),b.x===p.x&&b.y===p.y?(z&&(p[l]=r?B(q[l+"Max"],u[l+"Max"])+1:F(q[l+"Min"],u[l+"Min"])-1),z=!z):z=!1);b=[{start:b,end:p}]}else l=k(b,{x:g?d.x:b.x,y:g?b.y:d.y},g),b=[{start:b,end:{x:l.x,y:l.y}}],l[g?"x":"y"]!==d[g?"x":"y"]&&(r=t(l.obstacle,l,d,!g,r),D(l.obstacle,e.hardBounds),r={x:g?l.x:l.obstacle[r?"xMax":"xMin"]+(r?1:-1),y:g?l.obstacle[r?"yMax":
"yMin"]+(r?1:-1):l.y},g=!g,b=b.concat(m({x:l.x,y:l.y},r,g)));return b=b.concat(m(b[b.length-1].end,d,!g))}function g(a,c,b){var d=F(a.xMax-c.x,c.x-a.xMin)<F(a.yMax-c.y,c.y-a.yMin);b=t(a,c,b,d,{soft:e.hardBounds,hard:e.hardBounds});return d?{y:c.y,x:a[b?"xMax":"xMin"]+(b?1:-1)}:{x:c.x,y:a[b?"yMax":"yMin"]+(b?1:-1)}}var n=A(e.startDirectionX,l(b.x-d.x)>l(b.y-d.y)),v=n?"x":"y",O=[],z=!1,u=e.obstacleMetrics,c=F(d.x,b.x)-u.maxWidth-10,h=B(d.x,b.x)+u.maxWidth+10,a=F(d.y,b.y)-u.maxHeight-10,f=B(d.y,b.y)+
u.maxHeight+10,y=e.chartObstacles;var L=q(y,c);u=q(y,h);y=y.slice(L,u+1);if(-1<(u=E(y,b))){var K=g(y[u],b,d);O.push({end:b,start:K});b=K}for(;-1<(u=E(y,b));)L=0>b[v]-d[v],K={x:b.x,y:b.y},K[v]=y[u][L?v+"Max":v+"Min"]+(L?1:-1),O.push({end:b,start:K}),b=K;d=m(d,b,n);d=d.concat(O.reverse());return{path:C(d),obstacles:d}};k.requiresObstacles=!0;return{fastAvoid:k,straight:function(d,b){return{path:[["M",d.x,d.y],["L",b.x,b.y]],obstacles:[{start:d,end:b}]}},simpleConnect:e}});P(e,"Gantt/Pathfinder.js",
[e["Gantt/Connection.js"],e["Core/Chart/Chart.js"],e["Core/Globals.js"],e["Core/DefaultOptions.js"],e["Core/Series/Point.js"],e["Core/Utilities.js"],e["Gantt/PathfinderAlgorithms.js"]],function(e,v,E,C,D,A,F){function q(b){var d=b.shapeArgs;return d?{xMin:d.x||0,xMax:(d.x||0)+(d.width||0),yMin:d.y||0,yMax:(d.y||0)+(d.height||0)}:(d=b.graphic&&b.graphic.getBBox())?{xMin:b.plotX-d.width/2,xMax:b.plotX+d.width/2,yMin:b.plotY-d.height/2,yMax:b.plotY+d.height/2}:null}function l(b){for(var d=b.length,c=
0,e,a,f=[],g=function(a,c,b){b=m(b,10);var d=a.yMax+b>c.yMin-b&&a.yMin-b<c.yMax+b,e=a.xMax+b>c.xMin-b&&a.xMin-b<c.xMax+b,f=d?a.xMin>c.xMax?a.xMin-c.xMax:c.xMin-a.xMax:Infinity,h=e?a.yMin>c.yMax?a.yMin-c.yMax:c.yMin-a.yMax:Infinity;return e&&d?b?g(a,c,Math.floor(b/2)):Infinity:J(f,h)};c<d;++c)for(e=c+1;e<d;++e)a=g(b[c],b[e]),80>a&&f.push(a);f.push(80);return n(Math.floor(f.sort(function(a,c){return a-c})[Math.floor(f.length/10)]/2-1),1)}function k(b){if(b.options.pathfinder||b.series.reduce(function(b,
c){c.options&&x(!0,c.options.connectors=c.options.connectors||{},c.options.pathfinder);return b||c.options&&c.options.pathfinder},!1))x(!0,b.options.connectors=b.options.connectors||{},b.options.pathfinder),t('WARNING: Pathfinder options have been renamed. Use "chart.connectors" or "series.connectors" instead.')}"";var d=A.addEvent,b=A.defined,t=A.error,I=A.extend,x=A.merge,m=A.pick,g=A.splat,n=Math.max,J=Math.min;I(C.defaultOptions,{connectors:{type:"straight",lineWidth:1,marker:{enabled:!1,align:"center",
verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}});var O=function(){function k(b){this.lineObstacles=this.group=this.connections=this.chartObstacleMetrics=this.chartObstacles=this.chart=void 0;this.init(b)}k.prototype.init=function(b){this.chart=b;this.connections=[];d(b,"redraw",function(){this.pathfinder.update()})};k.prototype.update=function(b){var c=this.chart,d=this,a=d.connections;d.connections=[];c.series.forEach(function(a){a.visible&&
!a.options.isInternal&&a.points.forEach(function(a){var b=a.options;b&&b.dependency&&(b.connect=b.dependency);var f;b=a.options&&a.options.connect&&g(a.options.connect);a.visible&&!1!==a.isInside&&b&&b.forEach(function(b){f=c.get("string"===typeof b?b:b.to);f instanceof D&&f.series.visible&&f.visible&&!1!==f.isInside&&d.connections.push(new e(a,f,"string"===typeof b?{}:b))})})});for(var f=0,k=void 0,l=void 0,m=a.length,n=d.connections.length;f<m;++f){l=!1;for(k=0;k<n;++k)if(a[f].fromPoint===d.connections[k].fromPoint&&
a[f].toPoint===d.connections[k].toPoint){d.connections[k].graphics=a[f].graphics;l=!0;break}l||a[f].destroy()}delete this.chartObstacles;delete this.lineObstacles;d.renderConnections(b)};k.prototype.renderConnections=function(b){b?this.chart.series.forEach(function(b){var c=function(){var a=b.chart.pathfinder;(a&&a.connections||[]).forEach(function(a){a.fromPoint&&a.fromPoint.series===b&&a.render()});b.pathfinderRemoveRenderEvent&&(b.pathfinderRemoveRenderEvent(),delete b.pathfinderRemoveRenderEvent)};
!1===b.options.animation?c():b.pathfinderRemoveRenderEvent=d(b,"afterAnimate",c)}):this.connections.forEach(function(b){b.render()})};k.prototype.getChartObstacles=function(d){for(var c=[],e=this.chart.series,a=m(d.algorithmMargin,0),f,g=0,k=e.length;g<k;++g)if(e[g].visible&&!e[g].options.isInternal){var n=0,r=e[g].points.length,t=void 0;for(t=void 0;n<r;++n)t=e[g].points[n],t.visible&&(t=q(t))&&c.push({xMin:t.xMin-a,xMax:t.xMax+a,yMin:t.yMin-a,yMax:t.yMax+a})}c=c.sort(function(a,b){return a.xMin-
b.xMin});b(d.algorithmMargin)||(f=d.algorithmMargin=l(c),c.forEach(function(a){a.xMin-=f;a.xMax+=f;a.yMin-=f;a.yMax+=f}));return c};k.prototype.getObstacleMetrics=function(b){for(var c=0,d=0,a,e,g=b.length;g--;)a=b[g].xMax-b[g].xMin,e=b[g].yMax-b[g].yMin,c<a&&(c=a),d<e&&(d=e);return{maxHeight:d,maxWidth:c}};k.prototype.getAlgorithmStartDirection=function(b){var c="top"!==b.verticalAlign&&"bottom"!==b.verticalAlign;return"left"!==b.align&&"right"!==b.align?c?void 0:!1:c?!0:void 0};return k}();O.prototype.algorithms=
F;E.Pathfinder=O;I(D.prototype,{getPathfinderAnchorPoint:function(b){var d=q(this);switch(b.align){case "right":var c="xMax";break;case "left":c="xMin"}switch(b.verticalAlign){case "top":var e="yMin";break;case "bottom":e="yMax"}return{x:c?d[c]:(d.xMin+d.xMax)/2,y:e?d[e]:(d.yMin+d.yMax)/2}},getRadiansToVector:function(d,e){var c;b(e)||(c=q(this))&&(e={x:(c.xMin+c.xMax)/2,y:(c.yMin+c.yMax)/2});return Math.atan2(e.y-d.y,d.x-e.x)},getMarkerVector:function(b,d,c){var e=2*Math.PI,a=q(this),f=a.xMax-a.xMin,
g=a.yMax-a.yMin,k=Math.atan2(g,f),l=!1;f/=2;var m=g/2,n=a.xMin+f;a=a.yMin+m;for(var t=n,w=a,u=1,x=1;b<-Math.PI;)b+=e;for(;b>Math.PI;)b-=e;e=Math.tan(b);b>-k&&b<=k?(x=-1,l=!0):b>k&&b<=Math.PI-k?x=-1:b>Math.PI-k||b<=-(Math.PI-k)?(u=-1,l=!0):u=-1;l?(t+=u*f,w+=x*f*e):(t+=g/(2*e)*u,w+=x*m);c.x!==n&&(t=c.x);c.y!==a&&(w=c.y);return{x:t+d*Math.cos(b),y:w-d*Math.sin(b)}}});v.prototype.callbacks.push(function(b){!1!==b.options.connectors.enabled&&(k(b),this.pathfinder=new O(this),this.pathfinder.update(!0))});
return O});P(e,"Series/Gantt/GanttSeries.js",[e["Core/Axis/Axis.js"],e["Core/Chart/Chart.js"],e["Series/Gantt/GanttPoint.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Axis/Tick.js"],e["Core/Utilities.js"],e["Core/Axis/TreeGridAxis.js"]],function(e,v,E,C,D,A,F){var q=this&&this.__extends||function(){var b=function(d,e){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var e in d)d.hasOwnProperty(e)&&(b[e]=d[e])};return b(d,e)};return function(d,
e){function g(){this.constructor=d}b(d,e);d.prototype=null===e?Object.create(e):(g.prototype=e.prototype,new g)}}(),l=C.series,k=C.seriesTypes.xrange,d=A.extend,b=A.isNumber,t=A.merge,I=A.splat;F.compose(e,v,l,D);e=function(d){function e(){var b=null!==d&&d.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}q(e,d);e.prototype.drawPoint=function(d,e){var g=this.options,l=this.chart.renderer,m=d.shapeArgs,n=d.plotY,c=d.graphic,h=d.selected&&"select",a=g.stacking&&!g.borderRadius;
if(d.options.milestone)if(b(n)&&null!==d.y&&!1!==d.visible){m=l.symbols.diamond(m.x||0,m.y||0,m.width||0,m.height||0);if(c)c[e]({d:m});else d.graphic=l.path(m).addClass(d.getClassName(),!0).add(d.group||this.group);this.chart.styledMode||d.graphic.attr(this.pointAttribs(d,h)).shadow(g.shadow,null,a)}else c&&(d.graphic=c.destroy());else k.prototype.drawPoint.call(this,d,e)};e.prototype.translatePoint=function(b){k.prototype.translatePoint.call(this,b);if(b.options.milestone){var d=b.shapeArgs;var e=
d.height||0;b.shapeArgs={x:(d.x||0)-e/2,y:d.y,width:e,height:e}}};e.defaultOptions=t(k.defaultOptions,{grouping:!1,dataLabels:{enabled:!0},tooltip:{headerFormat:'<span style="font-size: 10px">{series.name}</span><br/>',pointFormat:null,pointFormatter:function(){var b=this.series,d=b.chart.tooltip,e=b.xAxis,k=b.tooltipOptions.dateTimeLabelFormats,l=e.options.startOfWeek,m=b.tooltipOptions,c=m.xDateFormat,h=this.options.milestone,a="<b>"+(this.name||this.yCategory)+"</b>";if(m.pointFormat)return this.tooltipFormatter(m.pointFormat);
c||(c=I(d.getDateFormat(e.closestPointRange,this.start,l,k))[0]);d=b.chart.time.dateFormat(c,this.start);b=b.chart.time.dateFormat(c,this.end);a+="<br/>";return h?a+(d+"<br/>"):a+("Start: "+d+"<br/>End: ")+(b+"<br/>")}},connectors:{type:"simpleConnect",animation:{reversed:!0},startMarker:{enabled:!0,symbol:"arrow-filled",radius:4,fill:"#fa0",align:"left"},endMarker:{enabled:!1,align:"right"}}});return e}(k);d(e.prototype,{keyboardMoveVertical:!1,pointArrayMap:["start","end","y"],pointClass:E,setData:l.prototype.setData});
C.registerSeriesType("gantt",e);"";return e});P(e,"Core/Chart/GanttChart.js",[e["Core/Chart/Chart.js"],e["Core/DefaultOptions.js"],e["Core/Utilities.js"]],function(e,v,E){var q=this&&this.__extends||function(){var e=function(k,d){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var e in d)d.hasOwnProperty(e)&&(b[e]=d[e])};return e(k,d)};return function(k,d){function b(){this.constructor=k}e(k,d);k.prototype=null===d?Object.create(d):(b.prototype=
d.prototype,new b)}}(),D=v.getOptions,A=E.isArray,F=E.merge,B=E.splat;e=function(e){function k(){return null!==e&&e.apply(this,arguments)||this}q(k,e);k.prototype.init=function(d,b){var k=D(),l=d.xAxis,q=d.yAxis,m;d.xAxis=d.yAxis=void 0;var g=F(!0,{chart:{type:"gantt"},title:{text:null},legend:{enabled:!1},navigator:{series:{type:"gantt"},yAxis:{type:"category"}}},d,{isGantt:!0});d.xAxis=l;d.yAxis=q;g.xAxis=(A(d.xAxis)?d.xAxis:[d.xAxis||{},{}]).map(function(b,d){1===d&&(m=0);return F(k.xAxis,{grid:{enabled:!0},
opposite:!0,linkedTo:m},b,{type:"datetime"})});g.yAxis=B(d.yAxis||{}).map(function(b){return F(k.yAxis,{grid:{enabled:!0},staticScale:50,reversed:!0,type:b.categories?b.type:"treegrid"},b)});e.prototype.init.call(this,g,b)};return k}(e);(function(e){e.ganttChart=function(k,d,b){return new e(k,d,b)}})(e||(e={}));return e});P(e,"Core/Axis/ScrollbarAxis.js",[e["Core/Utilities.js"]],function(e){var q=e.addEvent,E=e.defined,C=e.pick;return function(){function e(){}e.compose=function(e,v){var A=function(e){var k=
C(e.options&&e.options.min,e.min),d=C(e.options&&e.options.max,e.max);return{axisMin:k,axisMax:d,scrollMin:E(e.dataMin)?Math.min(k,e.min,e.dataMin,C(e.threshold,Infinity)):k,scrollMax:E(e.dataMax)?Math.max(d,e.max,e.dataMax,C(e.threshold,-Infinity)):d}};q(e,"afterInit",function(){var e=this;e.options&&e.options.scrollbar&&e.options.scrollbar.enabled&&(e.options.scrollbar.vertical=!e.horiz,e.options.startOnTick=e.options.endOnTick=!1,e.scrollbar=new v(e.chart.renderer,e.options.scrollbar,e.chart),
q(e.scrollbar,"changed",function(k){var d=A(e),b=d.axisMax,l=d.scrollMin,q=d.scrollMax-l;E(d.axisMin)&&E(b)&&(e.horiz&&!e.reversed||!e.horiz&&e.reversed?(d=l+q*this.to,l+=q*this.from):(d=l+q*(1-this.from),l+=q*(1-this.to)),this.shouldUpdateExtremes(k.DOMType)?e.setExtremes(l,d,!0,"mousemove"!==k.DOMType&&"touchmove"!==k.DOMType,k):this.setRange(this.from,this.to))}))});q(e,"afterRender",function(){var e=A(this),k=e.scrollMin,d=e.scrollMax;e=this.scrollbar;var b=this.axisTitleMargin+(this.titleOffset||
0),q=this.chart.scrollbarsOffsets,v=this.options.margin||0;e&&(this.horiz?(this.opposite||(q[1]+=b),e.position(this.left,this.top+this.height+2+q[1]-(this.opposite?v:0),this.width,this.height),this.opposite||(q[1]+=v),b=1):(this.opposite&&(q[0]+=b),e.position(this.left+this.width+2+q[0]-(this.opposite?0:v),this.top,this.width,this.height),this.opposite&&(q[0]+=v),b=0),q[b]+=e.size+e.options.margin,isNaN(k)||isNaN(d)||!E(this.min)||!E(this.max)||this.min===this.max?e.setRange(0,1):(q=(this.min-k)/
(d-k),k=(this.max-k)/(d-k),this.horiz&&!this.reversed||!this.horiz&&this.reversed?e.setRange(q,k):e.setRange(1-k,1-q)))});q(e,"afterGetOffset",function(){var e=this.horiz?2:1,k=this.scrollbar;k&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[e]+=k.size+k.options.margin)});return e};return e}()});P(e,"Core/ScrollbarDefaults.js",[e["Core/Globals.js"],e["Core/Color/Palette.js"]],function(e,v){return{height:e.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(e,"Core/Scrollbar.js",[e["Core/DefaultOptions.js"],e["Core/Globals.js"],e["Core/Axis/ScrollbarAxis.js"],e["Core/ScrollbarDefaults.js"],e["Core/Utilities.js"]],
function(e,v,E,C,D){var q=e.defaultOptions,F=D.addEvent,B=D.correctFloat,l=D.defined,k=D.destroyObjectProperties,d=D.fireEvent,b=D.merge,t=D.pick,I=D.removeEvent;e=function(){function e(b,d,e){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,d,e)}e.compose=function(b){E.compose(b,e)};e.swapXY=function(b,d){d&&b.forEach(function(b){for(var d=b.length,e,g=0;g<d;g+=2)e=b[g+1],"number"===typeof e&&(b[g+1]=b[g+2],b[g+2]=e)});return b};e.prototype.addEvents=function(){var b=this.options.inverted?[1,0]:[0,1],d=this.scrollbarButtons,e=this.scrollbarGroup.element,k=this.track.element,l=this.mouseDownHandler.bind(this),q=this.mouseMoveHandler.bind(this),t=this.mouseUpHandler.bind(this);
b=[[d[b[0]].element,"click",this.buttonToMinClick.bind(this)],[d[b[1]].element,"click",this.buttonToMaxClick.bind(this)],[k,"click",this.trackClick.bind(this)],[e,"mousedown",l],[e.ownerDocument,"mousemove",q],[e.ownerDocument,"mouseup",t]];v.hasTouch&&b.push([e,"touchstart",l],[e.ownerDocument,"touchmove",q],[e.ownerDocument,"touchend",t]);b.forEach(function(b){F.apply(null,b)});this._events=b};e.prototype.buttonToMaxClick=function(b){var e=(this.to-this.from)*t(this.options.step,.2);this.updatePosition(this.from+
e,this.to+e);d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:b})};e.prototype.buttonToMinClick=function(b){var e=B(this.to-this.from)*t(this.options.step,.2);this.updatePosition(B(this.from-e),B(this.to-e));d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:b})};e.prototype.cursorToScrollbarPosition=function(b){var d=this.options;d=d.minWidth>this.calculatedWidth?d.minWidth:0;return{chartX:(b.chartX-this.x-this.xOffset)/(this.barWidth-d),chartY:(b.chartY-
this.y-this.yOffset)/(this.barWidth-d)}};e.prototype.destroy=function(){var b=this,d=b.chart.scroller;b.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(d){b[d]&&b[d].destroy&&(b[d]=b[d].destroy())});d&&b===d.scrollbar&&(d.scrollbar=null,k(d.scrollbarButtons))};e.prototype.drawScrollbarButton=function(b){var d=this.renderer,k=this.scrollbarButtons,m=this.options,l=this.size,q=d.g().add(this.group);k.push(q);q=d.rect().addClass("highcharts-scrollbar-button").add(q);
this.chart.styledMode||q.attr({stroke:m.buttonBorderColor,"stroke-width":m.buttonBorderWidth,fill:m.buttonBackgroundColor});q.attr(q.crisp({x:-.5,y:-.5,width:l+1,height:l+1,r:m.buttonBorderRadius},q.strokeWidth()));q=d.path(e.swapXY([["M",l/2+(b?-1:1),l/2-3],["L",l/2+(b?-1:1),l/2+3],["L",l/2+(b?2:-2),l/2]],m.vertical)).addClass("highcharts-scrollbar-arrow").add(k[b]);this.chart.styledMode||q.attr({fill:m.buttonArrowColor})};e.prototype.init=function(d,e,k){this.scrollbarButtons=[];this.renderer=d;
this.userOptions=e;this.options=b(C,q.scrollbar,e);this.chart=k;this.size=t(this.options.size,this.options.height);e.enabled&&(this.render(),this.addEvents())};e.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};e.prototype.mouseMoveHandler=function(b){var e=this.chart.pointer.normalize(b),k=this.options.vertical?"chartY":"chartX",l=this.initPositions||
[];!this.grabbedCenter||b.touches&&0===b.touches[0][k]||(e=this.cursorToScrollbarPosition(e)[k],k=this[k],k=e-k,this.hasDragged=!0,this.updatePosition(l[0]+k,l[1]+k),this.hasDragged&&d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:b.type,DOMEvent:b}))};e.prototype.mouseUpHandler=function(b){this.hasDragged&&d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:b.type,DOMEvent:b});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};e.prototype.position=
function(b,d,e,k){var g=this.options.vertical,l=this.rendered?"animate":"attr",m=0;this.x=b;this.y=d+this.trackBorderWidth;this.width=e;this.xOffset=this.height=k;this.yOffset=m;g?(this.width=this.yOffset=e=m=this.size,this.xOffset=d=0,this.barWidth=k-2*e,this.x=b+=this.options.margin):(this.height=this.xOffset=k=d=this.size,this.barWidth=e-2*k,this.y+=this.options.margin);this.group[l]({translateX:b,translateY:this.y});this.track[l]({width:e,height:k});this.scrollbarButtons[1][l]({translateX:g?0:
e-d,translateY:g?k-m:0})};e.prototype.removeEvents=function(){this._events.forEach(function(b){I.apply(null,b)});this._events.length=0};e.prototype.render=function(){var b=this.renderer,d=this.options,k=this.size,l=this.chart.styledMode,q=b.g("scrollbar").attr({zIndex:d.zIndex,translateY:-99999}).add();this.group=q;this.track=b.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:d.trackBorderRadius||0,height:k,width:k}).add(q);l||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(q);this.scrollbar=b.rect().addClass("highcharts-scrollbar-thumb").attr({height:k,width:k,r:d.barBorderRadius||0}).add(this.scrollbarGroup);this.scrollbarRifles=b.path(e.swapXY([["M",-3,k/4],["L",-3,2*k/3],["M",0,k/4],["L",0,2*k/3],["M",3,k/4],["L",3,2*k/3]],d.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);l||(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)};e.prototype.setRange=function(b,d){var e=this.options,g=e.vertical,k=e.minWidth,m=this.barWidth,q=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?
"attr":"animate";if(l(m)){var c=m*Math.min(d,1);b=Math.max(b,0);var h=Math.ceil(m*b);this.calculatedWidth=c=B(c-h);c<k&&(h=(m-k+c)*b,c=k);k=Math.floor(h+this.xOffset+this.yOffset);m=c/2-.5;this.from=b;this.to=d;g?(this.scrollbarGroup[q]({translateY:k}),this.scrollbar[q]({height:c}),this.scrollbarRifles[q]({translateY:m}),this.scrollbarTop=k,this.scrollbarLeft=0):(this.scrollbarGroup[q]({translateX:k}),this.scrollbar[q]({width:c}),this.scrollbarRifles[q]({translateX:m}),this.scrollbarLeft=k,this.scrollbarTop=
0);12>=c?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===e.showFull&&(0>=b&&1<=d?this.group.hide():this.group.show());this.rendered=!0}};e.prototype.shouldUpdateExtremes=function(b){return t(this.options.liveRedraw,v.svg&&!v.isTouchDevice&&!this.chart.isBoosting)||"mouseup"===b||"touchend"===b||!l(b)};e.prototype.trackClick=function(b){var e=this.chart.pointer.normalize(b),k=this.to-this.from,l=this.y+this.scrollbarTop,m=this.x+this.scrollbarLeft;this.options.vertical&&e.chartY>l||
!this.options.vertical&&e.chartX>m?this.updatePosition(this.from+k,this.to+k):this.updatePosition(this.from-k,this.to-k);d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:b})};e.prototype.update=function(d){this.destroy();this.init(this.chart.renderer,b(!0,this.options,d),this.chart)};e.prototype.updatePosition=function(b,d){1<d&&(b=B(1-B(d-b)),d=1);0>b&&(d=B(d-b),b=0);this.from=b;this.to=d};e.defaultOptions=C;return e}();q.scrollbar=b(!0,e.defaultOptions,q.scrollbar);return e});
P(e,"Extensions/RangeSelector.js",[e["Core/Axis/Axis.js"],e["Core/Chart/Chart.js"],e["Core/Globals.js"],e["Core/DefaultOptions.js"],e["Core/Color/Palette.js"],e["Core/Renderer/SVG/SVGElement.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F){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 l=C.defaultOptions,
k=F.addEvent,d=F.createElement,b=F.css,t=F.defined,I=F.destroyObjectProperties,x=F.discardElement,m=F.extend,g=F.find,n=F.fireEvent,J=F.isNumber,O=F.merge,z=F.objectEach,u=F.pad,c=F.pick,h=F.pInt,a=F.splat;m(l,{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:D.highlightColor80,cursor:"pointer"},labelStyle:{color:D.neutralColor60}}});m(l.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"\u2192"});var f=function(){function f(a){this.buttons=void 0;this.buttonOptions=f.prototype.defaultButtons;this.initialButtonGroupWidth=0;this.options=void 0;
this.chart=a;this.init(a)}f.prototype.clickButton=function(b,d){var f=this.chart,g=this.buttonOptions[b],h=f.xAxis[0],l=f.scroller&&f.scroller.getUnionExtremes()||h||{},m=l.dataMin,p=l.dataMax,r=h&&Math.round(Math.min(h.max,c(p,h.max))),q=g.type;l=g._range;var u,v=g.dataGrouping;if(null!==m&&null!==p){f.fixedRange=l;this.setSelected(b);v&&(this.forcedDataGrouping=!0,e.prototype.setDataGrouping.call(h||{chart:this.chart},v,!1),this.frozenStates=g.preserveDataGrouping);if("month"===q||"year"===q)if(h){q=
{range:g,max:r,chart:f,dataMin:m,dataMax:p};var x=h.minFromRange.call(q);J(q.newMax)&&(r=q.newMax)}else l=g;else if(l)x=Math.max(r-l,m),r=Math.min(x+l,p);else if("ytd"===q)if(h)"undefined"===typeof p&&(m=Number.MAX_VALUE,p=Number.MIN_VALUE,f.series.forEach(function(a){a=a.xData;m=Math.min(a[0],m);p=Math.max(a[a.length-1],p)}),d=!1),r=this.getYTDExtremes(p,m,f.time.useUTC),x=u=r.min,r=r.max;else{this.deferredYTDClick=b;return}else"all"===q&&h&&(f.navigator&&f.navigator.baseSeries[0]&&(f.navigator.baseSeries[0].xAxis.options.range=
void 0),x=m,r=p);t(x)&&(x+=g._offsetMin);t(r)&&(r+=g._offsetMax);this.dropdown&&(this.dropdown.selectedIndex=b+1);if(h)h.setExtremes(x,r,c(d,!0),void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:g});else{var y=a(f.options.xAxis)[0];var G=y.range;y.range=l;var z=y.min;y.min=u;k(f,"load",function(){y.range=G;y.min=z})}n(this,"afterBtnClick")}};f.prototype.setSelected=function(a){this.selected=this.options.selected=a};f.prototype.init=function(a){var b=this,c=a.options.rangeSelector,d=c.buttons||
b.defaultButtons.slice(),e=c.selected,f=function(){var a=b.minInput,c=b.maxInput;a&&a.blur&&n(a,"blur");c&&c.blur&&n(c,"blur")};b.chart=a;b.options=c;b.buttons=[];b.buttonOptions=d;this.eventsToUnbind=[];this.eventsToUnbind.push(k(a.container,"mousedown",f));this.eventsToUnbind.push(k(a,"resize",f));d.forEach(b.computeButtonRange);"undefined"!==typeof e&&d[e]&&this.clickButton(e,!1);this.eventsToUnbind.push(k(a,"load",function(){a.xAxis&&a.xAxis[0]&&k(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)})}))};f.prototype.updateButtonStates=function(){var a=this,b=this.chart,c=this.dropdown,d=b.xAxis[0],e=Math.round(d.max-d.min),f=!d.hasVisibleSeries,g=b.scroller&&b.scroller.getUnionExtremes()||d,h=g.dataMin,k=g.dataMax;b=a.getYTDExtremes(k,h,b.time.useUTC);var l=b.min,m=b.max,n=a.selected,q=J(n),t=a.options.allButtonsEnabled,u=a.buttons;a.buttonOptions.forEach(function(b,
g){var p=b._range,r=b.type,w=b.count||1,H=u[g],v=0,x=b._offsetMax-b._offsetMin;b=g===n;var y=p>k-h,z=p<d.minRange,G=!1,M=!1;p=p===e;("month"===r||"year"===r)&&e+36E5>=864E5*{month:28,year:365}[r]*w-x&&e-36E5<=864E5*{month:31,year:366}[r]*w+x?p=!0:"ytd"===r?(p=m-l+x===e,G=!b):"all"===r&&(p=d.max-d.min>=k-h,M=!b&&q&&p);r=!t&&(y||z||M||f);w=b&&p||p&&!q&&!G||b&&a.frozenStates;r?v=3:w&&(q=!0,v=2);H.state!==v&&(H.setState(v),c&&(c.options[g+1].disabled=r,2===v&&(c.selectedIndex=g+1)),0===v&&n===g&&a.setSelected())})};
f.prototype.computeButtonRange=function(a){var b=a.type,d=a.count||1,e={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5};if(e[b])a._range=e[b]*d;else if("month"===b||"year"===b)a._range=864E5*{month:30,year:365}[b]*d;a._offsetMin=c(a.offsetMin,0);a._offsetMax=c(a.offsetMax,0);a._range+=a._offsetMax-a._offsetMin};f.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};f.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=t(f)?Number(f):void 0;t(b)&&(t(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)})}};
f.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))}};f.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,f=e.translateX;e=e.translateY;var g=this.options.inputBoxWidth;b(a,{width:d?c.width+
(g?-2:20)+"px":"auto",height:d?c.height-2+"px":"auto",border:"2px solid silver"});d&&g?b(a,{left:f+c.x+"px",top:e+"px"}):b(a,{left:Math.min(Math.round(c.x+f-(a.offsetWidth-c.width)/2),this.chart.chartWidth-a.offsetWidth)+"px",top:e-(a.offsetHeight-c.height)/2+"px"})}};f.prototype.hideInput=function(a){(a="min"===a?this.minInput:this.maxInput)&&b(a,{top:"-9999em",border:0,width:"1px",height:"1px"})};f.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=E.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?"+"+u(-e)+":00":"-"+u(e)+":00")}d=Date.parse(d);J(d)||(a=a.split("-"),d=Date.UTC(h(a[0]),h(a[1])-1,h(a[2])));c&&b&&J(d)&&(d+=c.getTimezoneOffset(d));return d};f.prototype.drawInput=function(a){function c(){var b=h.getInputValue(a),c=e.xAxis[0],d=e.scroller&&e.scroller.xAxis?e.scroller.xAxis:
c,f=d.dataMin;d=d.dataMax;var g=h.maxInput,k=h.minInput;b!==Number(u.getAttribute("data-hc-time-previous"))&&J(b)&&(u.setAttribute("data-hc-time-previous",b),r&&g&&J(f)?b>Number(g.getAttribute("data-hc-time"))?b=void 0:b<f&&(b=f):k&&J(d)&&(b<Number(k.getAttribute("data-hc-time"))?b=void 0:b>d&&(b=d)),"undefined"!==typeof b&&c.setExtremes(r?b:c.min,r?c.max:b,void 0,void 0,{trigger:"rangeSelectorInput"}))}var e=this.chart,f=this.div,g=this.inputGroup,h=this,k=e.renderer.style||{},p=e.renderer,n=e.options.rangeSelector,
r="min"===a,t=l.lang[r?"rangeSelectorFrom":"rangeSelectorTo"];t=p.label(t,0).addClass("highcharts-range-label").attr({padding:t?2:0,height:t?n.inputBoxHeight:0}).add(g);p=p.label("",0).addClass("highcharts-range-input").attr({padding:2,width:n.inputBoxWidth,height:n.inputBoxHeight,"text-align":"center"}).on("click",function(){h.showInput(a);h[a+"Input"].focus()});e.styledMode||p.attr({stroke:n.inputBoxBorderColor,"stroke-width":1});p.add(g);var u=d("input",{name:a,className:"highcharts-range-selector"},
void 0,f);u.setAttribute("type",q(n.inputDateFormat||"%b %e, %Y"));e.styledMode||(t.css(O(k,n.labelStyle)),p.css(O({color:D.neutralColor80},k,n.inputStyle)),b(u,m({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"},n.inputStyle)));u.onfocus=function(){h.showInput(a)};u.onblur=function(){u===E.doc.activeElement&&c();h.hideInput(a);h.setInputValue(a);u.blur()};var v=!1;u.onchange=
function(){v||(c(),h.hideInput(a),u.blur())};u.onkeypress=function(a){13===a.keyCode&&c()};u.onkeydown=function(a){v=!0;38!==a.keyCode&&40!==a.keyCode||c()};u.onkeyup=function(){v=!1};return{dateBox:p,input:u,label:t}};f.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}};f.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}};f.prototype.render=function(a,b){var e=this.chart,f=e.renderer,g=e.container,h=e.options,k=h.rangeSelector,l=c(h.chart.style&&h.chart.style.zIndex,0)+1;h=k.inputEnabled;if(!1!==k.enabled){this.rendered||(this.group=f.g("range-selector-group").attr({zIndex:7}).add(),this.div=d("div",void 0,{position:"relative",height:0,zIndex:l}),this.buttonOptions.length&&this.renderButtons(),
g.parentNode&&g.parentNode.insertBefore(this.div,g),h&&(this.inputGroup=f.g("input-group").add(this.group),f=this.drawInput("min"),this.minDateBox=f.dateBox,this.minLabel=f.label,this.minInput=f.input,f=this.drawInput("max"),this.maxDateBox=f.dateBox,this.maxLabel=f.label,this.maxInput=f.input));if(h&&(this.setInputValue("min",a),this.setInputValue("max",b),a=e.scroller&&e.scroller.getUnionExtremes()||e.xAxis[0]||{},t(a.dataMin)&&t(a.dataMax)&&(e=e.xAxis[0].minRange||0,this.setInputExtremes("min",
a.dataMin,Math.min(a.dataMax,this.getInputValue("max"))-e),this.setInputExtremes("max",Math.max(a.dataMin,this.getInputValue("min"))+e,a.dataMax)),this.inputGroup)){var m=0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(function(a){if(a){var b=a.getBBox().width;b&&(a.attr({x:m}),m+=b+k.inputSpacing)}})}this.alignElements();this.rendered=!0}};f.prototype.renderButtons=function(){var a=this,b=this.buttons,e=this.options,f=l.lang,g=this.chart.renderer,h=O(e.buttonTheme),m=h&&h.states,
p=h.width||28;delete h.width;delete h.states;this.buttonGroup=g.g("range-selector-buttons").add(this.group);var q=this.dropdown=d("select",void 0,{position:"absolute",width:"1px",height:"1px",padding:0,border:0,top:"-9999em",cursor:"pointer",opacity:.0001},this.div);k(q,"touchstart",function(){q.style.fontSize="16px"});[[E.isMS?"mouseover":"mouseenter"],[E.isMS?"mouseout":"mouseleave"],["change","click"]].forEach(function(c){var d=c[0],e=c[1];k(q,d,function(){var c=b[a.currentButtonIndex()];c&&n(c.element,
e||d)})});this.zoomText=g.label(f&&f.rangeSelectorZoom||"",0).attr({padding:e.buttonTheme.padding,height:e.buttonTheme.height,paddingLeft:0,paddingRight:0}).add(this.buttonGroup);this.chart.styledMode||(this.zoomText.css(e.labelStyle),h["stroke-width"]=c(h["stroke-width"],0));d("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,q);this.buttonOptions.forEach(function(c,e){d("option",{textContent:c.title||c.text},void 0,q);b[e]=g.button(c.text,0,0,function(b){var d=c.events&&c.events.click,
f;d&&(f=d.call(c,b));!1!==f&&a.clickButton(e);a.isActive=!0},h,m&&m.hover,m&&m.select,m&&m.disabled).attr({"text-align":"center",width:p}).add(a.buttonGroup);c.title&&b[e].attr("title",c.title)})};f.prototype.alignElements=function(){var a=this,b=this.buttonGroup,d=this.buttons,e=this.chart,f=this.group,g=this.inputGroup,h=this.options,k=this.zoomText,l=e.options,m=l.exporting&&!1!==l.exporting.enabled&&l.navigation&&l.navigation.buttonOptions;l=h.buttonPosition;var n=h.inputPosition,q=h.verticalAlign,
t=function(b,c){return m&&a.titleCollision(e)&&"top"===q&&"right"===c.align&&c.y-b.getBBox().height-12<(m.y||0)+(m.height||0)+e.spacing[0]?-40:0},u=e.plotLeft;if(f&&l&&n){var v=l.x-e.spacing[3];if(b){this.positionButtons();if(!this.initialButtonGroupWidth){var x=0;k&&(x+=k.getBBox().width+5);d.forEach(function(a,b){x+=a.width;b!==d.length-1&&(x+=h.buttonSpacing)});this.initialButtonGroupWidth=x}u-=e.spacing[3];this.updateButtonStates();k=t(b,l);this.alignButtonGroup(k);f.placed=b.placed=e.hasLoaded}b=
0;g&&(b=t(g,n),"left"===n.align?v=u:"right"===n.align&&(v=-Math.max(e.axisOffset[1],-b)),g.align({y:n.y,width:g.getBBox().width,align:n.align,x:n.x+v-2},!0,e.spacingBox),g.placed=e.hasLoaded);this.handleCollision(b);f.align({verticalAlign:q},!0,e.spacingBox);g=f.alignAttr.translateY;b=f.getBBox().height+20;t=0;"bottom"===q&&(t=(t=e.legend&&e.legend.options)&&"bottom"===t.verticalAlign&&t.enabled&&!t.floating?e.legend.legendHeight+c(t.margin,10):0,b=b+t-20,t=g-b-(h.floating?0:h.y)-(e.titleOffset?e.titleOffset[2]:
0)-10);if("top"===q)h.floating&&(t=0),e.titleOffset&&e.titleOffset[0]&&(t=e.titleOffset[0]),t+=e.margin[0]-e.spacing[0]||0;else if("middle"===q)if(n.y===l.y)t=g;else if(n.y||l.y)t=0>n.y||0>l.y?t-Math.min(n.y,l.y):g-b;f.translate(h.x,h.y+Math.floor(t));l=this.minInput;n=this.maxInput;g=this.dropdown;h.inputEnabled&&l&&n&&(l.style.marginTop=f.translateY+"px",n.style.marginTop=f.translateY+"px");g&&(g.style.marginTop=f.translateY+"px")}};f.prototype.alignButtonGroup=function(a,b){var d=this.chart,e=
this.buttonGroup,f=this.options.buttonPosition,g=d.plotLeft-d.spacing[3],h=f.x-d.spacing[3];"right"===f.align?h+=a-g:"center"===f.align&&(h-=g/2);e&&e.align({y:f.y,width:c(b,this.initialButtonGroupWidth),align:f.align,x:h},!0,d.spacingBox)};f.prototype.positionButtons=function(){var a=this.buttons,b=this.chart,d=this.options,e=this.zoomText,f=b.hasLoaded?"animate":"attr",g=d.buttonPosition,h=b.plotLeft,k=h;e&&"hidden"!==e.visibility&&(e[f]({x:c(h+g.x,h)}),k+=g.x+e.getBBox().width+5);this.buttonOptions.forEach(function(b,
c){if("hidden"!==a[c].visibility)a[c][f]({x:k}),k+=a[c].width+d.buttonSpacing;else a[c][f]({x:h})})};f.prototype.handleCollision=function(a){var b=this,c=this.chart,d=this.buttonGroup,e=this.inputGroup,f=this.options,g=f.buttonPosition,h=f.dropdown,k=f.inputPosition;f=function(){var a=0;b.buttons.forEach(function(b){b=b.getBBox();b.width>a&&(a=b.width)});return a};var l=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&&g.y<k.y+e.getBBox().height}return!1},m=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"===h){this.collapseButtons(a);l(f())&&m();return}"never"===h&&this.expandButtons()}e&&d?k.align===g.align||l(this.initialButtonGroupWidth+20)?"responsive"===h?(this.collapseButtons(a),l(f())&&m()):m():"responsive"===h&&this.expandButtons():d&&"responsive"===h&&(this.initialButtonGroupWidth>
c.plotWidth?this.collapseButtons(a):this.expandButtons())};f.prototype.collapseButtons=function(a){var b=this.buttons,d=this.buttonOptions,e=this.chart,f=this.dropdown,g=this.options,h=this.zoomText,k=e.userOptions.rangeSelector&&e.userOptions.rangeSelector.buttonTheme||{},l=function(a){return{text:a?a+" \u25be":"\u25be",width:"auto",paddingLeft:c(g.buttonTheme.paddingLeft,k.padding,8),paddingRight:c(g.buttonTheme.paddingRight,k.padding,8)}};h&&h.hide();var m=!1;d.forEach(function(a,c){c=b[c];2!==
c.state?c.hide():(c.show(),c.attr(l(a.text)),m=!0)});m||(f&&(f.selectedIndex=0),b[0].show(),b[0].attr(l(this.zoomText&&this.zoomText.textStr)));d=g.buttonPosition.align;this.positionButtons();"right"!==d&&"center"!==d||this.alignButtonGroup(a,b[this.currentButtonIndex()].getBBox().width);this.showDropdown()};f.prototype.expandButtons=function(){var a=this.buttons,b=this.buttonOptions,d=this.options,e=this.zoomText;this.hideDropdown();e&&e.show();b.forEach(function(b,e){e=a[e];e.show();e.attr({text:b.text,
width:d.buttonTheme.width||28,paddingLeft:c(d.buttonTheme.paddingLeft,"unset"),paddingRight:c(d.buttonTheme.paddingRight,"unset")});2>e.state&&e.setState(0)});this.positionButtons()};f.prototype.currentButtonIndex=function(){var a=this.dropdown;return a&&0<a.selectedIndex?a.selectedIndex-1:0};f.prototype.showDropdown=function(){var a=this.buttonGroup,c=this.buttons,d=this.chart,e=this.dropdown;if(a&&e){var f=a.translateX;a=a.translateY;c=c[this.currentButtonIndex()].getBBox();b(e,{left:d.plotLeft+
f+"px",top:a+.5+"px",width:c.width+"px",height:c.height+"px"});this.hasVisibleDropdown=!0}};f.prototype.hideDropdown=function(){var a=this.dropdown;a&&(b(a,{top:"-9999em",width:"1px",height:"1px"}),this.hasVisibleDropdown=!1)};f.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};f.prototype.titleCollision=
function(a){return!(a.options.title.text||a.options.subtitle.text)};f.prototype.update=function(a){var b=this.chart;O(!0,b.options.rangeSelector,a);this.destroy();this.init(b);this.render()};f.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);I(a.buttons);b&&(b.onfocus=b.onblur=b.onchange=null);c&&(c.onfocus=c.onblur=c.onchange=null);z(a,function(b,c){b&&"chart"!==c&&(b instanceof A?b.destroy():
b instanceof window.HTMLElement&&x(b));b!==f.prototype[c]&&(a[c]=null)},this)};return f}();f.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"}];f.prototype.inputTypeFormats={"datetime-local":"%Y-%m-%dT%H:%M:%S",date:"%Y-%m-%d",
time:"%H:%M:%S"};e.prototype.minFromRange=function(){var a=this.range,b=a.type,d=this.max,e=this.chart.time,f=function(a,c){var d="year"===b?"FullYear":"Month",f=new e.Date(a),g=e.get(d,f);e.set(d,f,g+c);g===e.get(d,f)&&e.set("Date",f,0);return f.getTime()-a};if(J(a)){var g=d-a;var h=a}else g=d+f(d,-a.count),this.chart&&(this.chart.fixedRange=d-g);var k=c(this.dataMin,Number.MIN_VALUE);J(g)||(g=k);g<=k&&(g=k,"undefined"===typeof h&&(h=f(g,a.count)),this.newMax=Math.min(g+h,this.dataMax));J(d)||(g=
void 0);return g};if(!E.RangeSelector){var y=[],L=function(a){function b(){d&&(c=a.xAxis[0].getExtremes(),e=a.legend,h=d&&d.options.verticalAlign,J(c.min)&&d.render(c.min,c.max),e.display&&"top"===h&&h===e.options.verticalAlign&&(f=O(a.spacingBox),f.y="vertical"===e.options.layout?a.plotTop:f.y+d.getHeight(),e.group.placed=!1,e.align(f)))}var c,d=a.rangeSelector,e,f,h;d&&(g(y,function(b){return b[0]===a})||y.push([a,[k(a.xAxis[0],"afterSetExtremes",function(a){d&&d.render(a.min,a.max)}),k(a,"redraw",
b)]]),b())};k(v,"afterGetContainer",function(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new f(this))});k(v,"beforeRender",function(){var a=this.axes,b=this.rangeSelector;b&&(J(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)))});k(v,"update",function(a){var b=a.options.rangeSelector;a=this.rangeSelector;var c=this.extraBottomMargin,d=this.extraTopMargin;b&&b.enabled&&!t(a)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=a=new f(this));this.extraTopMargin=this.extraBottomMargin=!1;a&&(L(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)});k(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))});k(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(L);k(v,"destroy",function(){for(var a=0;a<y.length;a++){var b=y[a];if(b[0]===this){b[1].forEach(function(a){return a()});
y.splice(a,1);break}}});E.RangeSelector=f}return f});P(e,"Core/Axis/NavigatorAxis.js",[e["Core/Globals.js"],e["Core/Utilities.js"]],function(e,v){var q=e.isTouchDevice,C=v.addEvent,D=v.correctFloat,A=v.defined,F=v.isNumber,B=v.pick,l=function(){function e(d){this.axis=d}e.prototype.destroy=function(){this.axis=void 0};e.prototype.toFixedRange=function(d,b,e,k){var l=this.axis,m=l.chart;m=m&&m.fixedRange;var g=(l.pointRange||0)/2;d=B(e,l.translate(d,!0,!l.horiz));b=B(k,l.translate(b,!0,!l.horiz));
l=m&&(b-d)/m;A(e)||(d=D(d+g));A(k)||(b=D(b-g));.7<l&&1.3>l&&(k?d=b-m:b=d+m);F(d)&&F(b)||(d=b=void 0);return{min:d,max:b}};return e}();return function(){function e(){}e.compose=function(d){d.keepProps.push("navigatorAxis");C(d,"init",function(){this.navigatorAxis||(this.navigatorAxis=new l(this))});C(d,"zoom",function(b){var d=this.chart.options,e=d.navigator,k=this.navigatorAxis,l=d.chart.pinchType,g=d.rangeSelector;d=d.chart.zoomType;this.isXAxis&&(e&&e.enabled||g&&g.enabled)&&("y"===d?b.zoomed=
!1:(!q&&"xy"===d||q&&"xy"===l)&&this.options.range&&(e=k.previousZoom,A(b.newMin)?k.previousZoom=[this.min,this.max]:e&&(b.newMin=e[0],b.newMax=e[1],k.previousZoom=void 0)));"undefined"!==typeof b.zoomed&&b.preventDefault()})};e.AdditionsClass=l;return e}()});P(e,"Core/Navigator.js",[e["Core/Axis/Axis.js"],e["Core/Chart/Chart.js"],e["Core/Color/Color.js"],e["Core/Globals.js"],e["Core/Axis/NavigatorAxis.js"],e["Core/DefaultOptions.js"],e["Core/Color/Palette.js"],e["Core/Renderer/RendererRegistry.js"],
e["Core/Scrollbar.js"],e["Core/Series/Series.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(e,v,E,C,D,A,F,B,l,k,d,b){E=E.parse;var q=C.hasTouch,I=C.isTouchDevice,x=A.defaultOptions,m=b.addEvent,g=b.clamp,n=b.correctFloat,J=b.defined,O=b.destroyObjectProperties,z=b.erase,u=b.extend,c=b.find,h=b.isArray,a=b.isNumber,f=b.merge,y=b.pick,L=b.removeEvent,K=b.splat,r=function(b){for(var c=[],d=1;d<arguments.length;d++)c[d-1]=arguments[d];c=[].filter.call(c,a);if(c.length)return Math[b].apply(0,
c)};A="undefined"===typeof d.seriesTypes.areaspline?"line":"areaspline";u(x,{navigator:{height:40,margin:25,maskInside:!0,handles:{width:7,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:F.neutralColor5,borderColor:F.neutralColor40},maskFill:E(F.highlightColor60).setOpacity(.3).get(),outlineColor:F.neutralColor20,outlineWidth:1,series:{type:A,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:F.neutralColor10,gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:F.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}}});B.getRendererType().prototype.symbols["navigator-handle"]=function(a,b,c,d,e){a=(e&&e.width||0)/2;b=Math.round(a/3)+.5;e=e&&e.height||0;return[["M",-a-1,.5],["L",
a,.5],["L",a,e+.5],["L",-a-1,e+.5],["L",-a-1,.5],["M",-b,4],["L",-b,e-3],["M",b-1,4],["L",b-1,e-3]]};var G=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,d){var e=this.navigatorOptions.handles.height;this.handles[b][d](c?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(a,10)+.5-e)}:{translateX:Math.round(this.left+parseInt(a,10)),translateY:Math.round(this.top+this.height/2-e/2-1)})};b.prototype.drawOutline=function(a,b,c,d){var e=this.navigatorOptions.maskInside,f=this.outline.strokeWidth(),g=f/2,h=f%2/2;f=this.outlineHeight;var k=this.scrollbarHeight||0,l=this.size,m=this.left-k,n=this.top;c?(m-=g,c=n+b+
h,b=n+a+h,h=[["M",m+f,n-k-h],["L",m+f,c],["L",m,c],["L",m,b],["L",m+f,b],["L",m+f,n+l+k]],e&&h.push(["M",m+f,c-g],["L",m+f,b+g])):(a+=m+k-h,b+=m+k-h,n+=g,h=[["M",m,n],["L",a,n],["L",a,n+f],["L",b,n+f],["L",b,n],["L",m+l+2*k,n]],e&&h.push(["M",a-g,n],["L",b+g,n]));this.outline[d]({d:h})};b.prototype.drawMasks=function(a,b,c,d){var e=this.left,f=this.top,g=this.height;if(c){var h=[e,e,e];var k=[f,f+a,f+b];var l=[g,g,g];var m=[a,b-a,this.size-b]}else h=[e,e+a,e+b],k=[f,f,f],l=[a,b-a,this.size-b],m=[g,
g,g];this.shades.forEach(function(a,b){a[d]({x:h[b],y:k[b],width:l[b],height:m[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();f(!0,this.chart.options.navigator,this.options,a);this.init(this.chart)};b.prototype.render=function(b,c,d,e){var f=this.chart,h=this.scrollbarHeight,k,l=this.xAxis,m=l.pointRange||0;var q=l.navigatorAxis.fake?f.xAxis[0]:l;var r=this.navigatorEnabled,t,w=this.rendered;
var u=f.inverted;var v=f.xAxis[0].minRange,x=f.xAxis[0].options.maxRange;if(!this.hasDragged||J(d)){b=n(b-m/2);c=n(c+m/2);if(!a(b)||!a(c))if(w)d=0,e=y(l.width,q.width);else return;this.left=y(l.left,f.plotLeft+h+(u?f.plotWidth:0));this.size=t=k=y(l.len,(u?f.plotHeight:f.plotWidth)-2*h);f=u?h:k+2*h;d=y(d,l.toPixels(b,!0));e=y(e,l.toPixels(c,!0));a(d)&&Infinity!==Math.abs(d)||(d=0,e=f);b=l.toValue(d,!0);c=l.toValue(e,!0);var z=Math.abs(n(c-b));z<v?this.grabbedLeft?d=l.toPixels(c-v-m,!0):this.grabbedRight&&
(e=l.toPixels(b+v+m,!0)):J(x)&&n(z-m)>x&&(this.grabbedLeft?d=l.toPixels(c-x-m,!0):this.grabbedRight&&(e=l.toPixels(b+x+m,!0)));this.zoomedMax=g(Math.max(d,e),0,t);this.zoomedMin=g(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(d,e),0,t);this.range=this.zoomedMax-this.zoomedMin;t=Math.round(this.zoomedMax);d=Math.round(this.zoomedMin);r&&(this.navigatorGroup.attr({visibility:"visible"}),w=w&&!this.hasDragged?"animate":"attr",this.drawMasks(d,t,u,w),this.drawOutline(d,t,u,w),this.navigatorOptions.handles.enabled&&
(this.drawHandle(d,0,u,w),this.drawHandle(t,1,u,w)));this.scrollbar&&(u?(u=this.top-h,q=this.left-h+(r||!q.opposite?0:(q.titleOffset||0)+q.axisTitleMargin),h=k+2*h):(u=this.top+(r?this.height:-h),q=this.left-h),this.scrollbar.position(q,u,f,h),this.scrollbar.setRange(this.zoomedMin/(k||1),this.zoomedMax/(k||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(m(b.renderTo,"mousemove",e),m(c.ownerDocument,"mouseup",f));q&&(d.push(m(b.renderTo,"touchmove",e),m(c.ownerDocument,"touchend",f)),d.concat(a.getPartsEvents("touchstart")));a.eventsToUnbind=d;a.series&&a.series[0]&&d.push(m(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,f){c.push(m(e.element,a,function(a){b[d+
"Mousedown"](a,f)}))})});return c};b.prototype.shadesMousedown=function(a,b){a=this.chart.pointer.normalize(a);var c=this.chart,d=this.xAxis,e=this.zoomedMin,f=this.left,g=this.size,h=this.range,k=a.chartX;c.inverted&&(k=a.chartY,f=this.top);if(1===b)this.grabbedCenter=k,this.fixedWidth=h,this.dragOffset=k-e;else{a=k-f-h/2;if(0===b)a=Math.max(0,a);else if(2===b&&a+h>=g)if(a=g-h,this.reversedExtremes){a-=h;var l=this.getUnionExtremes().dataMin}else var m=this.getUnionExtremes().dataMax;a!==e&&(this.fixedWidth=
h,b=d.navigatorAxis.toFixedRange(a,a+h,l,m),J(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,f=b.range,g=b.dragOffset,h=c.inverted;a.touches&&0===a.touches[0].pageX||(a=c.pointer.normalize(a),c=a.chartX,h&&(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<g?c=g:c>e+g-f&&(c=e+g-f),b.render(0,0,c-g,c-g+f)),b.hasDragged&&b.scrollbar&&y(b.scrollbar.options.liveRedraw,C.svg&&!I&&!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,f=b.DOMEvent||b,g=c.inverted,h=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!e||!e.hasDragged)||"scrollbar"===b.trigger){e=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var k=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var l=this.fixedExtreme;this.zoomedMax===this.size&&(l=this.reversedExtremes?
e.dataMin:e.dataMax);0===this.zoomedMin&&(k=this.reversedExtremes?e.dataMax:e.dataMin);d=d.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,k,l);J(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:f})}"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,g,h),this.outline&&this.drawOutline(c,b,g,h),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(c,0,g,h),this.drawHandle(b,1,g,h)))};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){L(a,"updatedData",this.updatedDataHandler)},this),a[0].xAxis&&L(a[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};b.prototype.init=function(a){var b=a.options,c=b.navigator,d=c.enabled,g=b.scrollbar,h=g.enabled;b=d?c.height:0;var k=h?g.height:0;this.handles=[];this.shades=[];this.chart=a;this.setBaseSeries();this.height=
b;this.scrollbarHeight=k;this.scrollbarEnabled=h;this.navigatorEnabled=d;this.navigatorOptions=c;this.scrollbarOptions=g;this.outlineHeight=b+k;this.opposite=y(c.opposite,!(d||!a.inverted));var n=this;d=n.baseSeries;g=a.xAxis.length;h=a.yAxis.length;var q=d&&d[0]&&d[0].xAxis||a.xAxis[0]||{options:{}};a.isDirtyBox=!0;n.navigatorEnabled?(n.xAxis=new e(a,f({breaks:q.options.breaks,ordinal:q.options.ordinal},c.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:g,isInternal:!0,
offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},a.inverted?{offsets:[k,0,-k,0],width:b}:{offsets:[0,-k,0,k],height:b})),n.yAxis=new e(a,f(c.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:h,isInternal:!0,reversed:y(c.yAxis&&c.yAxis.reversed,a.yAxis[0]&&a.yAxis[0].reversed,!1),zoomEnabled:!1},a.inverted?{width:b}:{height:b})),d||c.series.data?n.updateNavigatorSeries(!1):0===a.series.length&&(n.unbindRedraw=m(a,"beforeRedraw",function(){0<
a.series.length&&!n.series&&(n.setBaseSeries(),n.unbindRedraw())})),n.reversedExtremes=a.inverted&&!n.xAxis.reversed||!a.inverted&&n.xAxis.reversed,n.renderElements(),n.addMouseEvents()):(n.xAxis={chart:a,navigatorAxis:{fake:!0},translate:function(b,c){var d=a.xAxis[0],e=d.getExtremes(),f=d.len-2*k,g=r("min",d.options.min,e.dataMin);d=r("max",d.options.max,e.dataMax)-g;return c?b*d/f+g:f*(b-g)/d},toPixels:function(a){return this.translate(a)},toValue:function(a){return this.translate(a,!0)}},n.xAxis.navigatorAxis.axis=
n.xAxis,n.xAxis.navigatorAxis.toFixedRange=D.AdditionsClass.prototype.toFixedRange.bind(n.xAxis.navigatorAxis));a.options.scrollbar.enabled&&(a.scrollbar=n.scrollbar=new l(a.renderer,f(a.options.scrollbar,{margin:n.navigatorEnabled?0:10,vertical:a.inverted}),a),m(n.scrollbar,"changed",function(a){var b=n.size,c=b*this.to;b*=this.from;n.hasDragged=n.scrollbar.hasDragged;n.render(0,0,b,c);this.shouldUpdateExtremes(a.DOMType)&&setTimeout(function(){n.onMouseUp(a)})}));n.addBaseSeriesEvents();n.addChartEvents()};
b.prototype.getUnionExtremes=function(a){var b=this.chart.xAxis[0],c=this.xAxis,d=c.options,e=b.options,f;a&&null===b.dataMin||(f={dataMin:y(d&&d.min,r("min",e.min,b.dataMin,c.dataMin,c.min)),dataMax:y(d&&d.max,r("max",e.max,b.dataMax,c.dataMax,c.max))});return f};b.prototype.setBaseSeries=function(a,b){var d=this.chart,e=this.baseSeries=[];a=a||d.options&&d.options.navigator.baseSeries||(d.series.length?c(d.series,function(a){return!a.options.isInternal}).index:0);(d.series||[]).forEach(function(b,
c){b.options.isInternal||!b.options.showInNavigator&&(c!==a&&b.options.id!==a||!1===b.options.showInNavigator)||e.push(b)});this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,b)};b.prototype.updateNavigatorSeries=function(a,b){var c=this,d=c.chart,e=c.baseSeries,g,k,l=c.navigatorOptions.series,m,n={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}}},
q=c.series=(c.series||[]).filter(function(a){var b=a.baseSeries;return 0>e.indexOf(b)?(b&&(L(b,"updatedData",c.updatedDataHandler),delete b.navigatorSeries),a.chart&&a.destroy(),!1):!0});e&&e.length&&e.forEach(function(a){var p=a.navigatorSeries,r=u({color:a.color,visible:a.visible},h(l)?x.navigator.series:l);p&&!1===c.navigatorOptions.adaptToUpdatedData||(n.name="Navigator "+e.length,g=a.options||{},m=g.navigatorOptions||{},r.dataLabels=K(r.dataLabels),k=f(g,n,r,m),k.pointRange=y(r.pointRange,m.pointRange,
x.plotOptions[k.type||"line"].pointRange),r=m.data||r.data,c.hasNavigatorData=c.hasNavigatorData||!!r,k.data=r||g.data&&g.data.slice(0),p&&p.options?p.update(k,b):(a.navigatorSeries=d.initSeries(k),a.navigatorSeries.baseSeries=a,q.push(a.navigatorSeries)))});if(l.data&&(!e||!e.length)||h(l))c.hasNavigatorData=!1,l=K(l),l.forEach(function(a,b){n.name="Navigator "+(q.length+1);k=f(x.navigator.series,{color:d.series[b]&&!d.series[b].options.isInternal&&d.series[b].color||d.options.colors[b]||d.options.colors[0]},
n,a);k.data=a.data;k.data&&(c.hasNavigatorData=!0,q.push(d.initSeries(k)))});a&&this.addBaseSeriesEvents()};b.prototype.addBaseSeriesEvents=function(){var a=this,b=a.baseSeries||[];b[0]&&b[0].xAxis&&b[0].eventsToUnbind.push(m(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes));b.forEach(function(b){b.eventsToUnbind.push(m(b,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)}));b.eventsToUnbind.push(m(b,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,
!1)}));!1!==this.navigatorOptions.adaptToUpdatedData&&b.xAxis&&b.eventsToUnbind.push(m(b,"updatedData",this.updatedDataHandler));b.eventsToUnbind.push(m(b,"remove",function(){this.navigatorSeries&&(z(a.series,this.navigatorSeries),J(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,h=y(this.options.overscroll,0),k=b.series&&b.series[0],l=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(f){var m=d;var n=
m+c}g&&(n=e+h,f||(m=Math.max(d,n-c,b.getBaseSeriesMin(k&&k.xData?k.xData[0]:-Number.MAX_VALUE))));l&&(f||g)&&a(m)&&(this.min=this.userMin=m,this.max=this.userMax=n)}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(m(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)}),m(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&&(z(this.chart.xAxis,this.xAxis),z(this.chart.axes,this.xAxis));this.yAxis&&(z(this.chart.yAxis,this.yAxis),z(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){O(a)},this)};return b}();C.Navigator||(C.Navigator=G,D.compose(e),m(v,"beforeShowResetZoom",function(){var a=this.options,b=a.navigator,c=a.rangeSelector;if((b&&b.enabled||c&&c.enabled)&&(!I&&"x"===a.chart.zoomType||I&&"x"===a.chart.pinchType))return!1}),m(v,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new G(this)}),m(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=y(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+
y(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())}}),m(v,"update",function(a){var b=a.options.navigator||{},c=a.options.scrollbar||{};this.navigator||this.scroller||!b.enabled&&!c.enabled||(f(!0,this.options.navigator,b),f(!0,this.options.scrollbar,c),delete a.options.navigator,delete a.options.scrollbar)}),m(v,"afterUpdate",function(a){this.navigator||this.scroller||
!this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new G(this),y(a.redraw,!0)&&this.redraw(a.animation))}),m(v,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),m(k,"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=
G;return C.Navigator});P(e,"masters/modules/gantt.src.js",[e["Core/Globals.js"],e["Core/Chart/GanttChart.js"]],function(e,v){e.GanttChart=v;e.ganttChart=v.ganttChart});P(e,"masters/highcharts-gantt.src.js",[e["masters/highcharts.src.js"]],function(e){e.product="Highcharts Gantt";return e});e["masters/highcharts-gantt.src.js"]._modules=e;return e["masters/highcharts-gantt.src.js"]});
//# sourceMappingURL=highcharts-gantt.js.map