UNPKG

199 kBJavaScriptView Raw
1/*
2 Highmaps JS v6.0.3 (2017-11-14)
3
4 (c) 2011-2016 Torstein Honsi
5
6 License: www.highcharts.com/license
7*/
8(function(T,H){"object"===typeof module&&module.exports?module.exports=T.document?H(T):H:T.Highcharts=H(T)})("undefined"!==typeof window?window:this,function(T){var H=function(){var a="undefined"===typeof T?window:T,y=a.document,B=a.navigator&&a.navigator.userAgent||"",z=y&&y.createElementNS&&!!y.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,c=/(edge|msie|trident)/i.test(B)&&!a.opera,g=/Firefox/.test(B),p=g&&4>parseInt(B.split("Firefox/")[1],10);return a.Highcharts?a.Highcharts.error(16,
9!0):{product:"Highmaps",version:"6.0.3",deg2rad:2*Math.PI/360,doc:y,hasBidiBug:p,hasTouch:y&&void 0!==y.documentElement.ontouchstart,isMS:c,isWebKit:/AppleWebKit/.test(B),isFirefox:g,isTouchDevice:/(Mobile|Android|Windows Phone)/.test(B),SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:z,win:a,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[]}}();(function(a){a.timers=[];var y=a.charts,B=a.doc,z=a.win;a.error=function(c,g){c=
10a.isNumber(c)?"Highcharts error #"+c+": www.highcharts.com/errors/"+c:c;if(g)throw Error(c);z.console&&console.log(c)};a.Fx=function(a,g,p){this.options=g;this.elem=a;this.prop=p};a.Fx.prototype={dSetter:function(){var a=this.paths[0],g=this.paths[1],p=[],l=this.now,u=a.length,q;if(1===l)p=this.toD;else if(u===g.length&&1>l)for(;u--;)q=parseFloat(a[u]),p[u]=isNaN(q)?g[u]:l*parseFloat(g[u]-q)+q;else p=g;this.elem.attr("d",p,null,!0)},update:function(){var a=this.elem,g=this.prop,p=this.now,l=this.options.step;
11if(this[g+"Setter"])this[g+"Setter"]();else a.attr?a.element&&a.attr(g,p,null,!0):a.style[g]=p+this.unit;l&&l.call(a,p,this)},run:function(c,g,p){var l=this,u=l.options,q=function(a){return q.stopped?!1:l.step(a)},f=z.requestAnimationFrame||function(a){setTimeout(a,13)},h=function(){a.timers=a.grep(a.timers,function(a){return a()});a.timers.length&&f(h)};c===g?(delete u.curAnim[this.prop],u.complete&&0===a.keys(u.curAnim).length&&u.complete()):(this.startTime=+new Date,this.start=c,this.end=g,this.unit=
12p,this.now=this.start,this.pos=0,q.elem=this.elem,q.prop=this.prop,q()&&1===a.timers.push(q)&&f(h))},step:function(c){var g=+new Date,p,l=this.options,u=this.elem,q=l.complete,f=l.duration,h=l.curAnim;u.attr&&!u.element?c=!1:c||g>=f+this.startTime?(this.now=this.end,this.pos=1,this.update(),p=h[this.prop]=!0,a.objectEach(h,function(a){!0!==a&&(p=!1)}),p&&q&&q.call(u),c=!1):(this.pos=l.easing((g-this.startTime)/f),this.now=this.start+(this.end-this.start)*this.pos,this.update(),c=!0);return c},initPath:function(c,
13g,p){function l(a){var b,d;for(k=a.length;k--;)b="M"===a[k]||"L"===a[k],d=/[a-zA-Z]/.test(a[k+3]),b&&d&&a.splice(k+1,0,a[k+1],a[k+2],a[k+1],a[k+2])}function u(a,d){for(;a.length<b;){a[0]=d[b-a.length];var f=a.slice(0,e);[].splice.apply(a,[0,0].concat(f));m&&(f=a.slice(a.length-e),[].splice.apply(a,[a.length,0].concat(f)),k--)}a[0]="M"}function q(a,k){for(var f=(b-a.length)/e;0<f&&f--;)d=a.slice().splice(a.length/F-e,e*F),d[0]=k[b-e-f*e],v&&(d[e-6]=d[e-2],d[e-5]=d[e-1]),[].splice.apply(a,[a.length/
14F,0].concat(d)),m&&f--}g=g||"";var f,h=c.startX,n=c.endX,v=-1<g.indexOf("C"),e=v?7:3,b,d,k;g=g.split(" ");p=p.slice();var m=c.isArea,F=m?2:1,G;v&&(l(g),l(p));if(h&&n){for(k=0;k<h.length;k++)if(h[k]===n[0]){f=k;break}else if(h[0]===n[n.length-h.length+k]){f=k;G=!0;break}void 0===f&&(g=[])}g.length&&a.isNumber(f)&&(b=p.length+f*F*e,G?(u(g,p),q(p,g)):(u(p,g),q(g,p)));return[g,p]}};a.Fx.prototype.fillSetter=a.Fx.prototype.strokeSetter=function(){this.elem.attr(this.prop,a.color(this.start).tweenTo(a.color(this.end),
15this.pos),null,!0)};a.extend=function(a,g){var c;a||(a={});for(c in g)a[c]=g[c];return a};a.merge=function(){var c,g=arguments,p,l={},u=function(c,f){"object"!==typeof c&&(c={});a.objectEach(f,function(h,n){!a.isObject(h,!0)||a.isClass(h)||a.isDOMElement(h)?c[n]=f[n]:c[n]=u(c[n]||{},h)});return c};!0===g[0]&&(l=g[1],g=Array.prototype.slice.call(g,2));p=g.length;for(c=0;c<p;c++)l=u(l,g[c]);return l};a.pInt=function(a,g){return parseInt(a,g||10)};a.isString=function(a){return"string"===typeof a};a.isArray=
16function(a){a=Object.prototype.toString.call(a);return"[object Array]"===a||"[object Array Iterator]"===a};a.isObject=function(c,g){return!!c&&"object"===typeof c&&(!g||!a.isArray(c))};a.isDOMElement=function(c){return a.isObject(c)&&"number"===typeof c.nodeType};a.isClass=function(c){var g=c&&c.constructor;return!(!a.isObject(c,!0)||a.isDOMElement(c)||!g||!g.name||"Object"===g.name)};a.isNumber=function(a){return"number"===typeof a&&!isNaN(a)};a.erase=function(a,g){for(var c=a.length;c--;)if(a[c]===
17g){a.splice(c,1);break}};a.defined=function(a){return void 0!==a&&null!==a};a.attr=function(c,g,p){var l;a.isString(g)?a.defined(p)?c.setAttribute(g,p):c&&c.getAttribute&&(l=c.getAttribute(g)):a.defined(g)&&a.isObject(g)&&a.objectEach(g,function(a,l){c.setAttribute(l,a)});return l};a.splat=function(c){return a.isArray(c)?c:[c]};a.syncTimeout=function(a,g,p){if(g)return setTimeout(a,g,p);a.call(0,p)};a.pick=function(){var a=arguments,g,p,l=a.length;for(g=0;g<l;g++)if(p=a[g],void 0!==p&&null!==p)return p};
18a.css=function(c,g){a.isMS&&!a.svg&&g&&void 0!==g.opacity&&(g.filter="alpha(opacity\x3d"+100*g.opacity+")");a.extend(c.style,g)};a.createElement=function(c,g,p,l,u){c=B.createElement(c);var q=a.css;g&&a.extend(c,g);u&&q(c,{padding:0,border:"none",margin:0});p&&q(c,p);l&&l.appendChild(c);return c};a.extendClass=function(c,g){var p=function(){};p.prototype=new c;a.extend(p.prototype,g);return p};a.pad=function(a,g,p){return Array((g||2)+1-String(a).length).join(p||0)+a};a.relativeLength=function(a,
19g,p){return/%$/.test(a)?g*parseFloat(a)/100+(p||0):parseFloat(a)};a.wrap=function(a,g,p){var c=a[g];a[g]=function(){var a=Array.prototype.slice.call(arguments),g=arguments,f=this;f.proceed=function(){c.apply(f,arguments.length?arguments:g)};a.unshift(c);a=p.apply(this,a);f.proceed=null;return a}};a.getTZOffset=function(c){var g=a.Date;return 6E4*(g.hcGetTimezoneOffset&&g.hcGetTimezoneOffset(c)||g.hcTimezoneOffset||0)};a.dateFormat=function(c,g,p){if(!a.defined(g)||isNaN(g))return a.defaultOptions.lang.invalidDate||
20"";c=a.pick(c,"%Y-%m-%d %H:%M:%S");var l=a.Date,u=new l(g-a.getTZOffset(g)),q=u[l.hcGetHours](),f=u[l.hcGetDay](),h=u[l.hcGetDate](),n=u[l.hcGetMonth](),v=u[l.hcGetFullYear](),e=a.defaultOptions.lang,b=e.weekdays,d=e.shortWeekdays,k=a.pad,l=a.extend({a:d?d[f]:b[f].substr(0,3),A:b[f],d:k(h),e:k(h,2," "),w:f,b:e.shortMonths[n],B:e.months[n],m:k(n+1),y:v.toString().substr(2,2),Y:v,H:k(q),k:q,I:k(q%12||12),l:q%12||12,M:k(u[l.hcGetMinutes]()),p:12>q?"AM":"PM",P:12>q?"am":"pm",S:k(u.getSeconds()),L:k(Math.round(g%
211E3),3)},a.dateFormats);a.objectEach(l,function(a,b){for(;-1!==c.indexOf("%"+b);)c=c.replace("%"+b,"function"===typeof a?a(g):a)});return p?c.substr(0,1).toUpperCase()+c.substr(1):c};a.formatSingle=function(c,g){var p=/\.([0-9])/,l=a.defaultOptions.lang;/f$/.test(c)?(p=(p=c.match(p))?p[1]:-1,null!==g&&(g=a.numberFormat(g,p,l.decimalPoint,-1<c.indexOf(",")?l.thousandsSep:""))):g=a.dateFormat(c,g);return g};a.format=function(c,g){for(var p="{",l=!1,u,q,f,h,n=[],v;c;){p=c.indexOf(p);if(-1===p)break;
22u=c.slice(0,p);if(l){u=u.split(":");q=u.shift().split(".");h=q.length;v=g;for(f=0;f<h;f++)v&&(v=v[q[f]]);u.length&&(v=a.formatSingle(u.join(":"),v));n.push(v)}else n.push(u);c=c.slice(p+1);p=(l=!l)?"}":"{"}n.push(c);return n.join("")};a.getMagnitude=function(a){return Math.pow(10,Math.floor(Math.log(a)/Math.LN10))};a.normalizeTickInterval=function(c,g,p,l,u){var q,f=c;p=a.pick(p,1);q=c/p;g||(g=u?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===l&&(1===p?g=a.grep(g,function(a){return 0===a%1}):.1>=
23p&&(g=[1/p])));for(l=0;l<g.length&&!(f=g[l],u&&f*p>=c||!u&&q<=(g[l]+(g[l+1]||g[l]))/2);l++);return f=a.correctFloat(f*p,-Math.round(Math.log(.001)/Math.LN10))};a.stableSort=function(a,g){var c=a.length,l,u;for(u=0;u<c;u++)a[u].safeI=u;a.sort(function(a,f){l=g(a,f);return 0===l?a.safeI-f.safeI:l});for(u=0;u<c;u++)delete a[u].safeI};a.arrayMin=function(a){for(var c=a.length,p=a[0];c--;)a[c]<p&&(p=a[c]);return p};a.arrayMax=function(a){for(var c=a.length,p=a[0];c--;)a[c]>p&&(p=a[c]);return p};a.destroyObjectProperties=
24function(c,g){a.objectEach(c,function(a,l){a&&a!==g&&a.destroy&&a.destroy();delete c[l]})};a.discardElement=function(c){var g=a.garbageBin;g||(g=a.createElement("div"));c&&g.appendChild(c);g.innerHTML=""};a.correctFloat=function(a,g){return parseFloat(a.toPrecision(g||14))};a.setAnimation=function(c,g){g.renderer.globalAnimation=a.pick(c,g.options.chart.animation,!0)};a.animObject=function(c){return a.isObject(c)?a.merge(c):{duration:c?500:0}};a.timeUnits={millisecond:1,second:1E3,minute:6E4,hour:36E5,
25day:864E5,week:6048E5,month:24192E5,year:314496E5};a.numberFormat=function(c,g,p,l){c=+c||0;g=+g;var u=a.defaultOptions.lang,q=(c.toString().split(".")[1]||"").split("e")[0].length,f,h,n=c.toString().split("e");-1===g?g=Math.min(q,20):a.isNumber(g)||(g=2);h=(Math.abs(n[1]?n[0]:c)+Math.pow(10,-Math.max(g,q)-1)).toFixed(g);q=String(a.pInt(h));f=3<q.length?q.length%3:0;p=a.pick(p,u.decimalPoint);l=a.pick(l,u.thousandsSep);c=(0>c?"-":"")+(f?q.substr(0,f)+l:"");c+=q.substr(f).replace(/(\d{3})(?=\d)/g,
26"$1"+l);g&&(c+=p+h.slice(-g));n[1]&&(c+="e"+n[1]);return c};Math.easeInOutSine=function(a){return-.5*(Math.cos(Math.PI*a)-1)};a.getStyle=function(c,g,p){if("width"===g)return Math.min(c.offsetWidth,c.scrollWidth)-a.getStyle(c,"padding-left")-a.getStyle(c,"padding-right");if("height"===g)return Math.min(c.offsetHeight,c.scrollHeight)-a.getStyle(c,"padding-top")-a.getStyle(c,"padding-bottom");z.getComputedStyle||a.error(27,!0);if(c=z.getComputedStyle(c,void 0))c=c.getPropertyValue(g),a.pick(p,"opacity"!==
27g)&&(c=a.pInt(c));return c};a.inArray=function(c,g){return(a.indexOfPolyfill||Array.prototype.indexOf).call(g,c)};a.grep=function(c,g){return(a.filterPolyfill||Array.prototype.filter).call(c,g)};a.find=Array.prototype.find?function(a,g){return a.find(g)}:function(a,g){var c,l=a.length;for(c=0;c<l;c++)if(g(a[c],c))return a[c]};a.map=function(a,g){for(var c=[],l=0,u=a.length;l<u;l++)c[l]=g.call(a[l],a[l],l,a);return c};a.keys=function(c){return(a.keysPolyfill||Object.keys).call(void 0,c)};a.reduce=
28function(c,g,p){return(a.reducePolyfill||Array.prototype.reduce).call(c,g,p)};a.offset=function(a){var c=B.documentElement;a=a.parentElement?a.getBoundingClientRect():{top:0,left:0};return{top:a.top+(z.pageYOffset||c.scrollTop)-(c.clientTop||0),left:a.left+(z.pageXOffset||c.scrollLeft)-(c.clientLeft||0)}};a.stop=function(c,g){for(var p=a.timers.length;p--;)a.timers[p].elem!==c||g&&g!==a.timers[p].prop||(a.timers[p].stopped=!0)};a.each=function(c,g,p){return(a.forEachPolyfill||Array.prototype.forEach).call(c,
29g,p)};a.objectEach=function(a,g,p){for(var l in a)a.hasOwnProperty(l)&&g.call(p,a[l],l,a)};a.addEvent=function(c,g,p){var l,u,q=c.addEventListener||a.addEventListenerPolyfill;c.hcEvents&&!c.hasOwnProperty("hcEvents")&&(u={},a.objectEach(c.hcEvents,function(a,h){u[h]=a.slice(0)}),c.hcEvents=u);l=c.hcEvents=c.hcEvents||{};q&&q.call(c,g,p,!1);l[g]||(l[g]=[]);l[g].push(p);return function(){a.removeEvent(c,g,p)}};a.removeEvent=function(c,g,p){function l(f,h){var e=c.removeEventListener||a.removeEventListenerPolyfill;
30e&&e.call(c,f,h,!1)}function u(){var h,q;c.nodeName&&(g?(h={},h[g]=!0):h=f,a.objectEach(h,function(a,b){if(f[b])for(q=f[b].length;q--;)l(b,f[b][q])}))}var q,f=c.hcEvents,h;f&&(g?(q=f[g]||[],p?(h=a.inArray(p,q),-1<h&&(q.splice(h,1),f[g]=q),l(g,p)):(u(),f[g]=[])):(u(),c.hcEvents={}))};a.fireEvent=function(c,g,p,l){var u;u=c.hcEvents;var q,f;p=p||{};if(B.createEvent&&(c.dispatchEvent||c.fireEvent))u=B.createEvent("Events"),u.initEvent(g,!0,!0),a.extend(u,p),c.dispatchEvent?c.dispatchEvent(u):c.fireEvent(g,
31u);else if(u)for(u=u[g]||[],q=u.length,p.target||a.extend(p,{preventDefault:function(){p.defaultPrevented=!0},target:c,type:g}),g=0;g<q;g++)(f=u[g])&&!1===f.call(c,p)&&p.preventDefault();l&&!p.defaultPrevented&&l(p)};a.animate=function(c,g,p){var l,u="",q,f,h;a.isObject(p)||(h=arguments,p={duration:h[2],easing:h[3],complete:h[4]});a.isNumber(p.duration)||(p.duration=400);p.easing="function"===typeof p.easing?p.easing:Math[p.easing]||Math.easeInOutSine;p.curAnim=a.merge(g);a.objectEach(g,function(h,
32v){a.stop(c,v);f=new a.Fx(c,p,v);q=null;"d"===v?(f.paths=f.initPath(c,c.d,g.d),f.toD=g.d,l=0,q=1):c.attr?l=c.attr(v):(l=parseFloat(a.getStyle(c,v))||0,"opacity"!==v&&(u="px"));q||(q=h);q&&q.match&&q.match("px")&&(q=q.replace(/px/g,""));f.run(l,q,u)})};a.seriesType=function(c,g,p,l,u){var q=a.getOptions(),f=a.seriesTypes;q.plotOptions[c]=a.merge(q.plotOptions[g],p);f[c]=a.extendClass(f[g]||function(){},l);f[c].prototype.type=c;u&&(f[c].prototype.pointClass=a.extendClass(a.Point,u));return f[c]};a.uniqueKey=
33function(){var a=Math.random().toString(36).substring(2,9),g=0;return function(){return"highcharts-"+a+"-"+g++}}();z.jQuery&&(z.jQuery.fn.highcharts=function(){var c=[].slice.call(arguments);if(this[0])return c[0]?(new (a[a.isString(c[0])?c.shift():"Chart"])(this[0],c[0],c[1]),this):y[a.attr(this[0],"data-highcharts-chart")]})})(H);(function(a){var y=a.each,B=a.isNumber,z=a.map,c=a.merge,g=a.pInt;a.Color=function(c){if(!(this instanceof a.Color))return new a.Color(c);this.init(c)};a.Color.prototype=
34{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(a){return[g(a[1]),g(a[2]),g(a[3]),parseFloat(a[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(a){return[g(a[1]),g(a[2]),g(a[3]),1]}}],names:{none:"rgba(255,255,255,0)",white:"#ffffff",black:"#000000"},init:function(c){var l,g,q,f;if((this.input=c=this.names[c&&c.toLowerCase?c.toLowerCase():""]||c)&&c.stops)this.stops=z(c.stops,
35function(f){return new a.Color(f[1])});else if(c&&c.charAt&&"#"===c.charAt()&&(l=c.length,c=parseInt(c.substr(1),16),7===l?g=[(c&16711680)>>16,(c&65280)>>8,c&255,1]:4===l&&(g=[(c&3840)>>4|(c&3840)>>8,(c&240)>>4|c&240,(c&15)<<4|c&15,1])),!g)for(q=this.parsers.length;q--&&!g;)f=this.parsers[q],(l=f.regex.exec(c))&&(g=f.parse(l));this.rgba=g||[]},get:function(a){var l=this.input,g=this.rgba,q;this.stops?(q=c(l),q.stops=[].concat(q.stops),y(this.stops,function(f,h){q.stops[h]=[q.stops[h][0],f.get(a)]})):
36q=g&&B(g[0])?"rgb"===a||!a&&1===g[3]?"rgb("+g[0]+","+g[1]+","+g[2]+")":"a"===a?g[3]:"rgba("+g.join(",")+")":l;return q},brighten:function(a){var c,u=this.rgba;if(this.stops)y(this.stops,function(c){c.brighten(a)});else if(B(a)&&0!==a)for(c=0;3>c;c++)u[c]+=g(255*a),0>u[c]&&(u[c]=0),255<u[c]&&(u[c]=255);return this},setOpacity:function(a){this.rgba[3]=a;return this},tweenTo:function(a,c){var g=this.rgba,l=a.rgba;l.length&&g&&g.length?(a=1!==l[3]||1!==g[3],c=(a?"rgba(":"rgb(")+Math.round(l[0]+(g[0]-
37l[0])*(1-c))+","+Math.round(l[1]+(g[1]-l[1])*(1-c))+","+Math.round(l[2]+(g[2]-l[2])*(1-c))+(a?","+(l[3]+(g[3]-l[3])*(1-c)):"")+")"):c=a.input||"none";return c}};a.color=function(c){return new a.Color(c)}})(H);(function(a){function y(){var c=a.defaultOptions.global,g=p.moment;if(c.timezone){if(g)return function(a){return-g.tz(a,c.timezone).utcOffset()};a.error(25)}return c.useUTC&&c.getTimezoneOffset}function B(){var c=a.defaultOptions.global,u,q=c.useUTC,f=q?"getUTC":"get",h=q?"setUTC":"set",n="Minutes Hours Day Date Month FullYear".split(" "),
38v=n.concat(["Milliseconds","Seconds"]);a.Date=u=c.Date||p.Date;u.hcTimezoneOffset=q&&c.timezoneOffset;u.hcGetTimezoneOffset=y();u.hcMakeTime=function(a,b,d,f,m,h){var e;q?(e=u.UTC.apply(0,arguments),e+=z(e)):e=(new u(a,b,g(d,1),g(f,0),g(m,0),g(h,0))).getTime();return e};for(c=0;c<n.length;c++)u["hcGet"+n[c]]=f+n[c];for(c=0;c<v.length;c++)u["hcSet"+v[c]]=h+v[c]}var z=a.getTZOffset,c=a.merge,g=a.pick,p=a.win;a.defaultOptions={symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",
39months:"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:{useUTC:!0},chart:{borderRadius:0,colorCount:10,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,
4010,15,10],resetZoomButton:{theme:{zIndex:20},position:{align:"right",x:-10,y:10}},width:null,height:null},title:{text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{text:"",align:"center",widthAdjust:-44},plotOptions:{},labels:{style:{position:"absolute",color:"#333333"}},legend:{enabled:!0,align:"center",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{},itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},
41squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{}},loading:{},tooltip:{enabled:!0,animation:a.svg,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},footerFormat:"",padding:8,snap:a.isTouchDevice?25:10,headerFormat:'\x3cspan class\x3d"highcharts-header"\x3e{point.key}\x3c/span\x3e\x3cbr/\x3e',pointFormat:'\x3cspan class\x3d"highcharts-color-{point.colorIndex}"\x3e\u25cf\x3c/span\x3e {series.name}: \x3cspan class\x3d"highcharts-strong"\x3e{point.y}\x3c/span\x3e\x3cbr/\x3e'},
42credits:{enabled:!0,href:"http://www.highcharts.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},text:"Highcharts.com"}};a.setOptions=function(g){a.defaultOptions=c(!0,a.defaultOptions,g);B();return a.defaultOptions};a.getOptions=function(){return a.defaultOptions};a.defaultPlotOptions=a.defaultOptions.plotOptions;B()})(H);(function(a){var y,B,z=a.addEvent,c=a.animate,g=a.attr,p=a.charts,l=a.color,u=a.css,q=a.createElement,f=a.defined,h=a.deg2rad,n=a.destroyObjectProperties,v=a.doc,
43e=a.each,b=a.extend,d=a.erase,k=a.grep,m=a.hasTouch,F=a.inArray,G=a.isArray,E=a.isFirefox,K=a.isMS,w=a.isObject,L=a.isString,x=a.isWebKit,A=a.merge,D=a.noop,J=a.objectEach,r=a.pick,t=a.pInt,N=a.removeEvent,I=a.splat,C=a.stop,R=a.svg,P=a.SVG_NS,Q=a.symbolSizes,O=a.win;y=a.SVGElement=function(){return this};b(y.prototype,{opacity:1,SVG_NS:P,textProps:"direction fontSize fontWeight fontFamily fontStyle color lineHeight width textAlign textDecoration textOverflow textOutline".split(" "),init:function(a,
44b){this.element="span"===b?q(b):v.createElementNS(this.SVG_NS,b);this.renderer=a},animate:function(b,d,t){d=a.animObject(r(d,this.renderer.globalAnimation,!0));0!==d.duration?(t&&(d.complete=t),c(this,b,d)):(this.attr(b,null,t),d.step&&d.step.call(this));return this},colorGradient:function(b,d,r){var t=this.renderer,M,k,m,C,h,c,D,x,I,S,n=[],g;b.radialGradient?k="radialGradient":b.linearGradient&&(k="linearGradient");k&&(m=b[k],h=t.gradients,D=b.stops,S=r.radialReference,G(m)&&(b[k]=m={x1:m[0],y1:m[1],
45x2:m[2],y2:m[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===k&&S&&!f(m.gradientUnits)&&(C=m,m=A(m,t.getRadialAttr(S,C),{gradientUnits:"userSpaceOnUse"})),J(m,function(a,b){"id"!==b&&n.push(b,a)}),J(D,function(a){n.push(a)}),n=n.join(","),h[n]?S=h[n].attr("id"):(m.id=S=a.uniqueKey(),h[n]=c=t.createElement(k).attr(m).add(t.defs),c.radAttr=C,c.stops=[],e(D,function(b){0===b[1].indexOf("rgba")?(M=a.color(b[1]),x=M.get("rgb"),I=M.get("a")):(x=b[1],I=1);b=t.createElement("stop").attr({offset:b[0],
46"stop-color":x,"stop-opacity":I}).add(c);c.stops.push(b)})),g="url("+t.url+"#"+S+")",r.setAttribute(d,g),r.gradient=n,b.toString=function(){return g})},applyTextOutline:function(b){var r=this.element,t,M,m,k,f;-1!==b.indexOf("contrast")&&(b=b.replace(/contrast/g,this.renderer.getContrast(r.style.fill)));b=b.split(" ");M=b[b.length-1];if((m=b[0])&&"none"!==m&&a.svg){this.fakeTS=!0;b=[].slice.call(r.getElementsByTagName("tspan"));this.ySetter=this.xSetter;m=m.replace(/(^[\d\.]+)(.*?)$/g,function(a,
47b,d){return 2*b+d});for(f=b.length;f--;)t=b[f],"highcharts-text-outline"===t.getAttribute("class")&&d(b,r.removeChild(t));k=r.firstChild;e(b,function(a,b){0===b&&(a.setAttribute("x",r.getAttribute("x")),b=r.getAttribute("y"),a.setAttribute("y",b||0),null===b&&r.setAttribute("y",0));a=a.cloneNode(1);g(a,{"class":"highcharts-text-outline",fill:M,stroke:M,"stroke-width":m,"stroke-linejoin":"round"});r.insertBefore(a,k)})}},attr:function(a,b,d,r){var t,M=this.element,e,m=this,f,k;"string"===typeof a&&
48void 0!==b&&(t=a,a={},a[t]=b);"string"===typeof a?m=(this[a+"Getter"]||this._defaultGetter).call(this,a,M):(J(a,function(b,d){f=!1;r||C(this,d);this.symbolName&&/^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)$/.test(d)&&(e||(this.symbolAttr(a),e=!0),f=!0);!this.rotation||"x"!==d&&"y"!==d||(this.doTransform=!0);f||(k=this[d+"Setter"]||this._defaultSetter,k.call(this,b,d,M))},this),this.afterSetters());d&&d();return m},afterSetters:function(){this.doTransform&&(this.updateTransform(),this.doTransform=
49!1)},addClass:function(a,b){var d=this.attr("class")||"";-1===d.indexOf(a)&&(b||(a=(d+(d?" ":"")+a).replace(" "," ")),this.attr("class",a));return this},hasClass:function(a){return-1!==F(a,(this.attr("class")||"").split(" "))},removeClass:function(a){return this.attr("class",(this.attr("class")||"").replace(a,""))},symbolAttr:function(a){var b=this;e("x y r start end width height innerR anchorX anchorY".split(" "),function(d){b[d]=r(a[d],b[d])});b.attr({d:b.renderer.symbols[b.symbolName](b.x,b.y,
50b.width,b.height,b)})},clip:function(a){return this.attr("clip-path",a?"url("+this.renderer.url+"#"+a.id+")":"none")},crisp:function(a,b){var d=this,r={},t;b=b||a.strokeWidth||0;t=Math.round(b)%2/2;a.x=Math.floor(a.x||d.x||0)+t;a.y=Math.floor(a.y||d.y||0)+t;a.width=Math.floor((a.width||d.width||0)-2*t);a.height=Math.floor((a.height||d.height||0)-2*t);f(a.strokeWidth)&&(a.strokeWidth=b);J(a,function(a,b){d[b]!==a&&(d[b]=r[b]=a)});return r},css:function(a){var d=this.styles,r={},e=this.element,m,f=
51"",k,M=!d,C=["textOutline","textOverflow","width"];a&&a.color&&(a.fill=a.color);d&&J(a,function(a,b){a!==d[b]&&(r[b]=a,M=!0)});M&&(d&&(a=b(d,r)),m=this.textWidth=a&&a.width&&"auto"!==a.width&&"text"===e.nodeName.toLowerCase()&&t(a.width),this.styles=a,m&&!R&&this.renderer.forExport&&delete a.width,K&&!R?u(this.element,a):(k=function(a,b){return"-"+b.toLowerCase()},J(a,function(a,b){-1===F(b,C)&&(f+=b.replace(/([A-Z])/g,k)+":"+a+";")}),f&&g(e,"style",f)),this.added&&("text"===this.element.nodeName&&
52this.renderer.buildText(this),a&&a.textOutline&&this.applyTextOutline(a.textOutline)));return this},getStyle:function(a){return O.getComputedStyle(this.element||this,"").getPropertyValue(a)},strokeWidth:function(){var a=this.getStyle("stroke-width"),b;a.indexOf("px")===a.length-2?a=t(a):(b=v.createElementNS(P,"rect"),g(b,{width:a,"stroke-width":0}),this.element.parentNode.appendChild(b),a=b.getBBox().width,b.parentNode.removeChild(b));return a},on:function(a,b){var d=this,r=d.element;m&&"click"===
53a?(r.ontouchstart=function(a){d.touchEventFired=Date.now();a.preventDefault();b.call(r,a)},r.onclick=function(a){(-1===O.navigator.userAgent.indexOf("Android")||1100<Date.now()-(d.touchEventFired||0))&&b.call(r,a)}):r["on"+a]=b;return this},setRadialReference:function(a){var b=this.renderer.gradients[this.element.gradient];this.element.radialReference=a;b&&b.radAttr&&b.animate(this.renderer.getRadialAttr(a,b.radAttr));return this},translate:function(a,b){return this.attr({translateX:a,translateY:b})},
54invert:function(a){this.inverted=a;this.updateTransform();return this},updateTransform:function(){var a=this.translateX||0,b=this.translateY||0,d=this.scaleX,t=this.scaleY,e=this.inverted,m=this.rotation,k=this.matrix,C=this.element;e&&(a+=this.width,b+=this.height);a=["translate("+a+","+b+")"];f(k)&&a.push("matrix("+k.join(",")+")");e?a.push("rotate(90) scale(-1,1)"):m&&a.push("rotate("+m+" "+r(this.rotationOriginX,C.getAttribute("x"),0)+" "+r(this.rotationOriginY,C.getAttribute("y")||0)+")");(f(d)||
55f(t))&&a.push("scale("+r(d,1)+" "+r(t,1)+")");a.length&&C.setAttribute("transform",a.join(" "))},toFront:function(){var a=this.element;a.parentNode.appendChild(a);return this},align:function(a,b,t){var e,m,k,f,C={};m=this.renderer;k=m.alignedObjects;var M,h;if(a){if(this.alignOptions=a,this.alignByTranslate=b,!t||L(t))this.alignTo=e=t||"renderer",d(k,this),k.push(this),t=null}else a=this.alignOptions,b=this.alignByTranslate,e=this.alignTo;t=r(t,m[e],m);e=a.align;m=a.verticalAlign;k=(t.x||0)+(a.x||
560);f=(t.y||0)+(a.y||0);"right"===e?M=1:"center"===e&&(M=2);M&&(k+=(t.width-(a.width||0))/M);C[b?"translateX":"x"]=Math.round(k);"bottom"===m?h=1:"middle"===m&&(h=2);h&&(f+=(t.height-(a.height||0))/h);C[b?"translateY":"y"]=Math.round(f);this[this.placed?"animate":"attr"](C);this.placed=!0;this.alignAttr=C;return this},getBBox:function(a,d){var t,m=this.renderer,k,C=this.element,M=this.styles,c,D=this.textStr,x,I=m.cache,n=m.cacheKeys,g;d=r(d,this.rotation);k=d*h;c=C&&y.prototype.getStyle.call(C,"font-size");
57f(D)&&(g=D.toString(),-1===g.indexOf("\x3c")&&(g=g.replace(/[0-9]/g,"0")),g+=["",d||0,c,M&&M.width,M&&M.textOverflow].join());g&&!a&&(t=I[g]);if(!t){if(C.namespaceURI===this.SVG_NS||m.forExport){try{(x=this.fakeTS&&function(a){e(C.querySelectorAll(".highcharts-text-outline"),function(b){b.style.display=a})})&&x("none"),t=C.getBBox?b({},C.getBBox()):{width:C.offsetWidth,height:C.offsetHeight},x&&x("")}catch(V){}if(!t||0>t.width)t={width:0,height:0}}else t=this.htmlGetBBox();m.isSVG&&(a=t.width,m=t.height,
58M&&"11px"===M.fontSize&&17===Math.round(m)&&(t.height=m=14),d&&(t.width=Math.abs(m*Math.sin(k))+Math.abs(a*Math.cos(k)),t.height=Math.abs(m*Math.cos(k))+Math.abs(a*Math.sin(k))));if(g&&0<t.height){for(;250<n.length;)delete I[n.shift()];I[g]||n.push(g);I[g]=t}}return t},show:function(a){return this.attr({visibility:a?"inherit":"visible"})},hide:function(){return this.attr({visibility:"hidden"})},fadeOut:function(a){var b=this;b.animate({opacity:0},{duration:a||150,complete:function(){b.attr({y:-9999})}})},
59add:function(a){var b=this.renderer,d=this.element,r;a&&(this.parentGroup=a);this.parentInverted=a&&a.inverted;void 0!==this.textStr&&b.buildText(this);this.added=!0;if(!a||a.handleZ||this.zIndex)r=this.zIndexSetter();r||(a?a.element:b.box).appendChild(d);if(this.onAdd)this.onAdd();return this},safeRemoveChild:function(a){var b=a.parentNode;b&&b.removeChild(a)},destroy:function(){var a=this,b=a.element||{},r=a.renderer.isSVG&&"SPAN"===b.nodeName&&a.parentGroup,t=b.ownerSVGElement;b.onclick=b.onmouseout=
60b.onmouseover=b.onmousemove=b.point=null;C(a);a.clipPath&&t&&(e(t.querySelectorAll("[clip-path],[CLIP-PATH]"),function(b){b.getAttribute("clip-path").match(RegExp('[("]#'+a.clipPath.element.id+'[)"]'))&&b.removeAttribute("clip-path")}),a.clipPath=a.clipPath.destroy());if(a.stops){for(t=0;t<a.stops.length;t++)a.stops[t]=a.stops[t].destroy();a.stops=null}for(a.safeRemoveChild(b);r&&r.div&&0===r.div.childNodes.length;)b=r.parentGroup,a.safeRemoveChild(r.div),delete r.div,r=b;a.alignTo&&d(a.renderer.alignedObjects,
61a);J(a,function(b,d){delete a[d]});return null},xGetter:function(a){"circle"===this.element.nodeName&&("x"===a?a="cx":"y"===a&&(a="cy"));return this._defaultGetter(a)},_defaultGetter:function(a){a=r(this[a],this.element?this.element.getAttribute(a):null,0);/^[\-0-9\.]+$/.test(a)&&(a=parseFloat(a));return a},dSetter:function(a,b,d){a&&a.join&&(a=a.join(" "));/(NaN| {2}|^$)/.test(a)&&(a="M 0 0");this[b]!==a&&(d.setAttribute(b,a),this[b]=a)},alignSetter:function(a){this.element.setAttribute("text-anchor",
62{left:"start",center:"middle",right:"end"}[a])},opacitySetter:function(a,b,d){this[b]=a;d.setAttribute(b,a)},titleSetter:function(a){var b=this.element.getElementsByTagName("title")[0];b||(b=v.createElementNS(this.SVG_NS,"title"),this.element.appendChild(b));b.firstChild&&b.removeChild(b.firstChild);b.appendChild(v.createTextNode(String(r(a),"").replace(/<[^>]*>/g,"")))},textSetter:function(a){a!==this.textStr&&(delete this.bBox,this.textStr=a,this.added&&this.renderer.buildText(this))},fillSetter:function(a,
63b,d){"string"===typeof a?d.setAttribute(b,a):a&&this.colorGradient(a,b,d)},visibilitySetter:function(a,b,d){"inherit"===a?d.removeAttribute(b):this[b]!==a&&d.setAttribute(b,a);this[b]=a},zIndexSetter:function(a,b){var d=this.renderer,r=this.parentGroup,m=(r||d).element||d.box,e,k=this.element,C,h,d=m===d.box;e=this.added;var c;f(a)&&(k.zIndex=a,a=+a,this[b]===a&&(e=!1),this[b]=a);if(e){(a=this.zIndex)&&r&&(r.handleZ=!0);b=m.childNodes;for(c=b.length-1;0<=c&&!C;c--)if(r=b[c],e=r.zIndex,h=!f(e),r!==
64k)if(0>a&&h&&!d&&!c)m.insertBefore(k,b[c]),C=!0;else if(t(e)<=a||h&&(!f(a)||0<=a))m.insertBefore(k,b[c+1]||null),C=!0;C||(m.insertBefore(k,b[d?3:0]||null),C=!0)}return C},_defaultSetter:function(a,b,d){d.setAttribute(b,a)}});y.prototype.yGetter=y.prototype.xGetter;y.prototype.translateXSetter=y.prototype.translateYSetter=y.prototype.rotationSetter=y.prototype.verticalAlignSetter=y.prototype.rotationOriginXSetter=y.prototype.rotationOriginYSetter=y.prototype.scaleXSetter=y.prototype.scaleYSetter=y.prototype.matrixSetter=
65function(a,b){this[b]=a;this.doTransform=!0};B=a.SVGRenderer=function(){this.init.apply(this,arguments)};b(B.prototype,{Element:y,SVG_NS:P,init:function(a,b,d,r,t,m){var e;r=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"});e=r.element;a.appendChild(e);g(a,"dir","ltr");-1===a.innerHTML.indexOf("xmlns")&&g(e,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=e;this.boxWrapper=r;this.alignedObjects=[];this.url=(E||x)&&v.getElementsByTagName("base").length?O.location.href.replace(/#.*?$/,
66"").replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(v.createTextNode("Created with Highmaps 6.0.3"));this.defs=this.createElement("defs").add();this.allowHTML=m;this.forExport=t;this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount=0;this.setSize(b,d,!1);var k;E&&a.getBoundingClientRect&&(b=function(){u(a,{left:0,top:0});k=a.getBoundingClientRect();u(a,{left:Math.ceil(k.left)-k.left+"px",top:Math.ceil(k.top)-
67k.top+"px"})},b(),this.unSubPixelFix=z(O,"resize",b))},definition:function(a){function b(a,r){var t;e(I(a),function(a){var e=d.createElement(a.tagName),m={};J(a,function(a,b){"tagName"!==b&&"children"!==b&&"textContent"!==b&&(m[b]=a)});e.attr(m);e.add(r||d.defs);a.textContent&&e.element.appendChild(v.createTextNode(a.textContent));b(a.children||[],e);t=e});return t}var d=this;return b(a)},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var a=this.defs;this.box=null;
68this.boxWrapper=this.boxWrapper.destroy();n(this.gradients||{});this.gradients=null;a&&(this.defs=a.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=null},createElement:function(a){var b=new this.Element;b.init(this,a);return b},draw:D,getRadialAttr:function(a,b){return{cx:a[0]-a[2]/2+b.cx*a[2],cy:a[1]-a[2]/2+b.cy*a[2],r:b.r*a[2]}},getSpanWidth:function(a,b){var d=a.getBBox(!0).width;!R&&this.forExport&&(d=this.measureSpanWidth(b.firstChild.data,a.styles));return d},
69applyEllipsis:function(a,b,d,r){var t=a.rotation,e=d,m,k=0,f=d.length,C=function(a){b.removeChild(b.firstChild);a&&b.appendChild(v.createTextNode(a))},h;a.rotation=0;e=this.getSpanWidth(a,b);if(h=e>r){for(;k<=f;)m=Math.ceil((k+f)/2),e=d.substring(0,m)+"\u2026",C(e),e=this.getSpanWidth(a,b),k===f?k=f+1:e>r?f=m-1:k=m;0===f&&C("")}a.rotation=t;return h},escapes:{"\x26":"\x26amp;","\x3c":"\x26lt;","\x3e":"\x26gt;","'":"\x26#39;",'"':"\x26quot"},buildText:function(a){var b=a.element,d=this,m=d.forExport,
70f=r(a.textStr,"").toString(),C=-1!==f.indexOf("\x3c"),h=b.childNodes,c,D,x,I,n=g(b,"x"),A=a.styles,w=a.textWidth,N=A&&A.lineHeight,l=A&&A.textOutline,q=A&&"ellipsis"===A.textOverflow,M=A&&"nowrap"===A.whiteSpace,E,K=h.length,F=w&&!a.added&&this.box,p=function(a){return N?t(N):d.fontMetrics(void 0,a.getAttribute("style")?a:b).h},L=function(a){J(d.escapes,function(b,d){a=a.replace(new RegExp(b,"g"),d)});return a},A=[f,q,M,N,l,A&&A.fontSize,w].join();if(A!==a.textCache){for(a.textCache=A;K--;)b.removeChild(h[K]);
71C||l||q||w||-1!==f.indexOf(" ")?(c=/<.*class="([^"]+)".*>/,D=/<.*style="([^"]+)".*>/,x=/<.*href="([^"]+)".*>/,F&&F.appendChild(b),f=C?f.replace(/<(b|strong)>/g,'\x3cspan class\x3d"highcharts-strong"\x3e').replace(/<(i|em)>/g,'\x3cspan class\x3d"highcharts-emphasized"\x3e').replace(/<a/g,"\x3cspan").replace(/<\/(b|strong|i|em|a)>/g,"\x3c/span\x3e").split(/<br.*?>/g):[f],f=k(f,function(a){return""!==a}),e(f,function(r,t){var k,f=0;r=r.replace(/^\s+|\s+$/g,"").replace(/<span/g,"|||\x3cspan").replace(/<\/span>/g,
72"\x3c/span\x3e|||");k=r.split("|||");e(k,function(r){if(""!==r||1===k.length){var e={},C=v.createElementNS(d.SVG_NS,"tspan"),h,A;c.test(r)&&(h=r.match(c)[1],g(C,"class",h));D.test(r)&&(A=r.match(D)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),g(C,"style",A));x.test(r)&&!m&&(g(C,"onclick",'location.href\x3d"'+r.match(x)[1]+'"'),g(C,"class","highcharts-anchor"));r=L(r.replace(/<[a-zA-Z\/](.|\n)*?>/g,"")||" ");if(" "!==r){C.appendChild(v.createTextNode(r));f?e.dx=0:t&&null!==n&&(e.x=n);g(C,e);b.appendChild(C);
73!f&&E&&(!R&&m&&u(C,{display:"block"}),g(C,"dy",p(C)));if(w){e=r.replace(/([^\^])-/g,"$1- ").split(" ");h=1<k.length||t||1<e.length&&!M;var N=[],l,K=p(C),F=a.rotation;for(q&&(I=d.applyEllipsis(a,C,r,w));!q&&h&&(e.length||N.length);)a.rotation=0,l=d.getSpanWidth(a,C),r=l>w,void 0===I&&(I=r),r&&1!==e.length?(C.removeChild(C.firstChild),N.unshift(e.pop())):(e=N,N=[],e.length&&!M&&(C=v.createElementNS(P,"tspan"),g(C,{dy:K,x:n}),A&&g(C,"style",A),b.appendChild(C)),l>w&&(w=l)),e.length&&C.appendChild(v.createTextNode(e.join(" ").replace(/- /g,
74"-")));a.rotation=F}f++}}});E=E||b.childNodes.length}),I&&a.attr("title",a.textStr),F&&F.removeChild(b),l&&a.applyTextOutline&&a.applyTextOutline(l)):b.appendChild(v.createTextNode(L(f)))}},getContrast:function(a){a=l(a).rgba;return 510<a[0]+a[1]+a[2]?"#000000":"#FFFFFF"},button:function(a,b,d,r,t,e,m,k,f){var C=this.label(a,b,d,f,null,null,null,null,"button"),h=0;C.attr(A({padding:8,r:2},t));z(C.element,K?"mouseover":"mouseenter",function(){3!==h&&C.setState(1)});z(C.element,K?"mouseout":"mouseleave",
75function(){3!==h&&C.setState(h)});C.setState=function(a){1!==a&&(C.state=h=a);C.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][a||0])};return C.on("click",function(a){3!==h&&r.call(C,a)})},crispLine:function(a,b){a[1]===a[4]&&(a[1]=a[4]=Math.round(a[1])-b%2/2);a[2]===a[5]&&(a[2]=a[5]=Math.round(a[2])+b%2/2);return a},path:function(a){var d={};G(a)?d.d=a:w(a)&&b(d,a);return this.createElement("path").attr(d)},circle:function(a,
76b,d){a=w(a)?a:{x:a,y:b,r:d};b=this.createElement("circle");b.xSetter=b.ySetter=function(a,b,d){d.setAttribute("c"+b,a)};return b.attr(a)},arc:function(a,b,d,r,t,e){w(a)?(r=a,b=r.y,d=r.r,a=r.x):r={innerR:r,start:t,end:e};a=this.symbol("arc",a,b,d,d,r);a.r=d;return a},rect:function(a,b,d,r,t,e){t=w(a)?a.r:t;e=this.createElement("rect");a=w(a)?a:void 0===a?{}:{x:a,y:b,width:Math.max(d,0),height:Math.max(r,0)};t&&(a.r=t);e.rSetter=function(a,b,d){g(d,{rx:a,ry:a})};return e.attr(a)},setSize:function(a,
77b,d){var t=this.alignedObjects,e=t.length;this.width=a;this.height=b;for(this.boxWrapper.animate({width:a,height:b},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:r(d,!0)?void 0:0});e--;)t[e].align()},g:function(a){var b=this.createElement("g");return a?b.attr({"class":"highcharts-"+a}):b},image:function(a,d,r,t,e){var m={preserveAspectRatio:"none"};1<arguments.length&&b(m,{x:d,y:r,width:t,height:e});m=this.createElement("image").attr(m);m.element.setAttributeNS?
78m.element.setAttributeNS("http://www.w3.org/1999/xlink","href",a):m.element.setAttribute("hc-svg-href",a);return m},symbol:function(a,d,t,m,k,C){var h=this,c,D=/^url\((.*?)\)$/,x=D.test(a),I=!x&&(this.symbols[a]?a:"circle"),n=I&&this.symbols[I],g=f(d)&&n&&n.call(this.symbols,Math.round(d),Math.round(t),m,k,C),A,w;n?(c=this.path(g),b(c,{symbolName:I,x:d,y:t,width:m,height:k}),C&&b(c,C)):x&&(A=a.match(D)[1],c=this.image(A),c.imgwidth=r(Q[A]&&Q[A].width,C&&C.width),c.imgheight=r(Q[A]&&Q[A].height,C&&
79C.height),w=function(){c.attr({width:c.width,height:c.height})},e(["width","height"],function(a){c[a+"Setter"]=function(a,b){var d={},r=this["img"+b],t="width"===b?"translateX":"translateY";this[b]=a;f(r)&&(this.element&&this.element.setAttribute(b,r),this.alignByTranslate||(d[t]=((this[b]||0)-r)/2,this.attr(d)))}}),f(d)&&c.attr({x:d,y:t}),c.isImg=!0,f(c.imgwidth)&&f(c.imgheight)?w():(c.attr({width:0,height:0}),q("img",{onload:function(){var a=p[h.chartIndex];0===this.width&&(u(this,{position:"absolute",
80top:"-999em"}),v.body.appendChild(this));Q[A]={width:this.width,height:this.height};c.imgwidth=this.width;c.imgheight=this.height;c.element&&w();this.parentNode&&this.parentNode.removeChild(this);h.imgCount--;if(!h.imgCount&&a&&a.onload)a.onload()},src:A}),this.imgCount++));return c},symbols:{circle:function(a,b,d,r){return this.arc(a+d/2,b+r/2,d/2,r/2,{start:0,end:2*Math.PI,open:!1})},square:function(a,b,d,r){return["M",a,b,"L",a+d,b,a+d,b+r,a,b+r,"Z"]},triangle:function(a,b,d,r){return["M",a+d/
812,b,"L",a+d,b+r,a,b+r,"Z"]},"triangle-down":function(a,b,d,r){return["M",a,b,"L",a+d,b,a+d/2,b+r,"Z"]},diamond:function(a,b,d,r){return["M",a+d/2,b,"L",a+d,b+r/2,a+d/2,b+r,a,b+r/2,"Z"]},arc:function(a,b,d,t,e){var m=e.start,k=e.r||d,C=e.r||t||d,h=e.end-.001;d=e.innerR;t=r(e.open,.001>Math.abs(e.end-e.start-2*Math.PI));var c=Math.cos(m),D=Math.sin(m),x=Math.cos(h),h=Math.sin(h);e=.001>e.end-m-Math.PI?0:1;k=["M",a+k*c,b+C*D,"A",k,C,0,e,1,a+k*x,b+C*h];f(d)&&k.push(t?"M":"L",a+d*x,b+d*h,"A",d,d,0,e,0,
82a+d*c,b+d*D);k.push(t?"":"Z");return k},callout:function(a,b,d,r,t){var e=Math.min(t&&t.r||0,d,r),m=e+6,k=t&&t.anchorX;t=t&&t.anchorY;var C;C=["M",a+e,b,"L",a+d-e,b,"C",a+d,b,a+d,b,a+d,b+e,"L",a+d,b+r-e,"C",a+d,b+r,a+d,b+r,a+d-e,b+r,"L",a+e,b+r,"C",a,b+r,a,b+r,a,b+r-e,"L",a,b+e,"C",a,b,a,b,a+e,b];k&&k>d?t>b+m&&t<b+r-m?C.splice(13,3,"L",a+d,t-6,a+d+6,t,a+d,t+6,a+d,b+r-e):C.splice(13,3,"L",a+d,r/2,k,t,a+d,r/2,a+d,b+r-e):k&&0>k?t>b+m&&t<b+r-m?C.splice(33,3,"L",a,t+6,a-6,t,a,t-6,a,b+e):C.splice(33,3,
83"L",a,r/2,k,t,a,r/2,a,b+e):t&&t>r&&k>a+m&&k<a+d-m?C.splice(23,3,"L",k+6,b+r,k,b+r+6,k-6,b+r,a+e,b+r):t&&0>t&&k>a+m&&k<a+d-m&&C.splice(3,3,"L",k-6,b,k,b-6,k+6,b,d-e,b);return C}},clipRect:function(b,d,r,t){var e=a.uniqueKey(),m=this.createElement("clipPath").attr({id:e}).add(this.defs);b=this.rect(b,d,r,t,0).add(m);b.id=e;b.clipPath=m;b.count=0;return b},text:function(a,b,d,r){var t={};if(r&&(this.allowHTML||!this.forExport))return this.html(a,b,d);t.x=Math.round(b||0);d&&(t.y=Math.round(d));if(a||
840===a)t.text=a;a=this.createElement("text").attr(t);r||(a.xSetter=function(a,b,d){var r=d.getElementsByTagName("tspan"),t,e=d.getAttribute(b),m;for(m=0;m<r.length;m++)t=r[m],t.getAttribute(b)===e&&t.setAttribute(b,a);d.setAttribute(b,a)});return a},fontMetrics:function(a,b){a=b&&y.prototype.getStyle.call(b,"font-size");a=/px/.test(a)?t(a):/em/.test(a)?parseFloat(a)*(b?this.fontMetrics(null,b.parentNode).f:16):12;b=24>a?a+3:Math.round(1.2*a);return{h:b,b:Math.round(.8*b),f:a}},rotCorr:function(a,b,
85d){var r=a;b&&d&&(r=Math.max(r*Math.cos(b*h),4));return{x:-a/3*Math.sin(b*h),y:r}},label:function(d,r,t,m,k,C,h,c,D){var x=this,I=x.g("button"!==D&&"label"),n=I.text=x.text("",0,0,h).attr({zIndex:1}),g,w,R=0,l=3,q=0,v,E,K,F,u,p={},P,L=/^url\((.*?)\)$/.test(m),J=L,Q,G,M,O;D&&I.addClass("highcharts-"+D);J=!0;Q=function(){return g.strokeWidth()%2/2};G=function(){var a=n.element.style,d={};w=(void 0===v||void 0===E||u)&&f(n.textStr)&&n.getBBox();I.width=(v||w.width||0)+2*l+q;I.height=(E||w.height||0)+
862*l;P=l+x.fontMetrics(a&&a.fontSize,n).b;J&&(g||(I.box=g=x.symbols[m]||L?x.symbol(m):x.rect(),g.addClass(("button"===D?"":"highcharts-label-box")+(D?" highcharts-"+D+"-box":"")),g.add(I),a=Q(),d.x=a,d.y=(c?-P:0)+a),d.width=Math.round(I.width),d.height=Math.round(I.height),g.attr(b(d,p)),p={})};M=function(){var a=q+l,b;b=c?0:P;f(v)&&w&&("center"===u||"right"===u)&&(a+={center:.5,right:1}[u]*(v-w.width));if(a!==n.x||b!==n.y)n.attr("x",a),void 0!==b&&n.attr("y",b);n.x=a;n.y=b};O=function(a,b){g?g.attr(a,
87b):p[a]=b};I.onAdd=function(){n.add(I);I.attr({text:d||0===d?d:"",x:r,y:t});g&&f(k)&&I.attr({anchorX:k,anchorY:C})};I.widthSetter=function(b){v=a.isNumber(b)?b:null};I.heightSetter=function(a){E=a};I["text-alignSetter"]=function(a){u=a};I.paddingSetter=function(a){f(a)&&a!==l&&(l=I.padding=a,M())};I.paddingLeftSetter=function(a){f(a)&&a!==q&&(q=a,M())};I.alignSetter=function(a){a={left:0,center:.5,right:1}[a];a!==R&&(R=a,w&&I.attr({x:K}))};I.textSetter=function(a){void 0!==a&&n.textSetter(a);G();
88M()};I["stroke-widthSetter"]=function(a,b){a&&(J=!0);this["stroke-width"]=a;O(b,a)};I.rSetter=function(a,b){O(b,a)};I.anchorXSetter=function(a,b){k=I.anchorX=a;O(b,Math.round(a)-Q()-K)};I.anchorYSetter=function(a,b){C=I.anchorY=a;O(b,a-F)};I.xSetter=function(a){I.x=a;R&&(a-=R*((v||w.width)+2*l));K=Math.round(a);I.attr("translateX",K)};I.ySetter=function(a){F=I.y=Math.round(a);I.attr("translateY",F)};var S=I.css;return b(I,{css:function(a){if(a){var b={};a=A(a);e(I.textProps,function(d){void 0!==a[d]&&
89(b[d]=a[d],delete a[d])});n.css(b)}return S.call(I,a)},getBBox:function(){return{width:w.width+2*l,height:w.height+2*l,x:w.x-l,y:w.y-l}},destroy:function(){N(I.element,"mouseenter");N(I.element,"mouseleave");n&&(n=n.destroy());g&&(g=g.destroy());y.prototype.destroy.call(I);I=x=G=M=O=null}})}});a.Renderer=B})(H);(function(a){var y=a.attr,B=a.createElement,z=a.css,c=a.defined,g=a.each,p=a.extend,l=a.isFirefox,u=a.isMS,q=a.isWebKit,f=a.pick,h=a.pInt,n=a.SVGRenderer,v=a.win,e=a.wrap;p(a.SVGElement.prototype,
90{htmlCss:function(a){var b=this.element;if(b=a&&"SPAN"===b.tagName&&a.width)delete a.width,this.textWidth=b,this.updateTransform();a&&"ellipsis"===a.textOverflow&&(a.whiteSpace="nowrap",a.overflow="hidden");this.styles=p(this.styles,a);z(this.element,a);return this},htmlGetBBox:function(){var a=this.element;return{x:a.offsetLeft,y:a.offsetTop,width:a.offsetWidth,height:a.offsetHeight}},htmlUpdateTransform:function(){if(this.added){var a=this.renderer,d=this.element,e=this.x||0,m=this.y||0,f=this.textAlign||
91"left",n={left:0,center:.5,right:1}[f],l=this.styles;z(d,{marginLeft:this.translateX||0,marginTop:this.translateY||0});this.inverted&&g(d.childNodes,function(b){a.invertChild(b,d)});if("SPAN"===d.tagName){var v=this.rotation,w=h(this.textWidth),u=l&&l.whiteSpace,x=[v,f,d.innerHTML,this.textWidth,this.textAlign].join();x!==this.cTT&&(l=a.fontMetrics(d.style.fontSize).b,c(v)&&this.setSpanRotation(v,n,l),z(d,{width:"",whiteSpace:u||"nowrap"}),d.offsetWidth>w&&/[ \-]/.test(d.textContent||d.innerText)&&
92z(d,{width:w+"px",display:"block",whiteSpace:u||"normal"}),this.getSpanCorrection(d.offsetWidth,l,n,v,f));z(d,{left:e+(this.xCorr||0)+"px",top:m+(this.yCorr||0)+"px"});q&&(l=d.offsetHeight);this.cTT=x}}else this.alignOnAdd=!0},setSpanRotation:function(a,d,e){var b={},k=this.renderer.getTransformKey();b[k]=b.transform="rotate("+a+"deg)";b[k+(l?"Origin":"-origin")]=b.transformOrigin=100*d+"% "+e+"px";z(this.element,b)},getSpanCorrection:function(a,d,e){this.xCorr=-a*e;this.yCorr=-d}});p(n.prototype,
93{getTransformKey:function(){return u&&!/Edge/.test(v.navigator.userAgent)?"-ms-transform":q?"-webkit-transform":l?"MozTransform":v.opera?"-o-transform":""},html:function(a,d,k){var b=this.createElement("span"),h=b.element,c=b.renderer,n=c.isSVG,l=function(a,b){g(["opacity","visibility"],function(d){e(a,d+"Setter",function(a,d,e,r){a.call(this,d,e,r);b[e]=d})})};b.textSetter=function(a){a!==h.innerHTML&&delete this.bBox;this.textStr=a;h.innerHTML=f(a,"");b.htmlUpdateTransform()};n&&l(b,b.element.style);
94b.xSetter=b.ySetter=b.alignSetter=b.rotationSetter=function(a,d){"align"===d&&(d="textAlign");b[d]=a;b.htmlUpdateTransform()};b.attr({text:a,x:Math.round(d),y:Math.round(k)}).css({position:"absolute"});h.style.whiteSpace="nowrap";b.css=b.htmlCss;n&&(b.add=function(a){var d,e=c.box.parentNode,k=[];if(this.parentGroup=a){if(d=a.div,!d){for(;a;)k.push(a),a=a.parentGroup;g(k.reverse(),function(a){function m(b,d){a[d]=b;u?r[c.getTransformKey()]="translate("+(a.x||a.translateX)+"px,"+(a.y||a.translateY)+
95"px)":"translateX"===d?r.left=b+"px":r.top=b+"px";a.doTransform=!0}var r,t=y(a.element,"class");t&&(t={className:t});d=a.div=a.div||B("div",t,{position:"absolute",left:(a.translateX||0)+"px",top:(a.translateY||0)+"px",display:a.display,opacity:a.opacity,pointerEvents:a.styles&&a.styles.pointerEvents},d||e);r=d.style;p(a,{classSetter:function(a){this.element.setAttribute("class",a);d.className=a},on:function(){k[0].div&&b.on.apply({element:k[0].div},arguments);return a},translateXSetter:m,translateYSetter:m});
96l(a,r)})}}else d=e;d.appendChild(h);b.added=!0;b.alignOnAdd&&b.htmlUpdateTransform();return b});return b}})})(H);(function(a){var y=a.correctFloat,B=a.defined,z=a.destroyObjectProperties,c=a.isNumber,g=a.pick,p=a.deg2rad;a.Tick=function(a,c,g,f){this.axis=a;this.pos=c;this.type=g||"";this.isNewLabel=this.isNew=!0;g||f||this.addLabel()};a.Tick.prototype={addLabel:function(){var a=this.axis,c=a.options,q=a.chart,f=a.categories,h=a.names,n=this.pos,v=c.labels,e=a.tickPositions,b=n===e[0],d=n===e[e.length-
971],h=f?g(f[n],h[n],n):n,f=this.label,e=e.info,k;a.isDatetimeAxis&&e&&(k=c.dateTimeLabelFormats[e.higherRanks[n]||e.unitName]);this.isFirst=b;this.isLast=d;c=a.labelFormatter.call({axis:a,chart:q,isFirst:b,isLast:d,dateTimeLabelFormat:k,value:a.isLog?y(a.lin2log(h)):h,pos:n});B(f)?f&&f.attr({text:c}):(this.labelLength=(this.label=f=B(c)&&v.enabled?q.renderer.text(c,0,0,v.useHTML).add(a.labelGroup):null)&&f.getBBox().width,this.rotation=0)},getLabelSize:function(){return this.label?this.label.getBBox()[this.axis.horiz?
98"height":"width"]:0},handleOverflow:function(a){var c=this.axis,l=a.x,f=c.chart.chartWidth,h=c.chart.spacing,n=g(c.labelLeft,Math.min(c.pos,h[3])),h=g(c.labelRight,Math.max(c.pos+c.len,f-h[1])),v=this.label,e=this.rotation,b={left:0,center:.5,right:1}[c.labelAlign],d=v.getBBox().width,k=c.getSlotWidth(),m=k,F=1,G,E={};if(e)0>e&&l-b*d<n?G=Math.round(l/Math.cos(e*p)-n):0<e&&l+b*d>h&&(G=Math.round((f-l)/Math.cos(e*p)));else if(f=l+(1-b)*d,l-b*d<n?m=a.x+m*(1-b)-n:f>h&&(m=h-a.x+m*b,F=-1),m=Math.min(k,
99m),m<k&&"center"===c.labelAlign&&(a.x+=F*(k-m-b*(k-Math.min(d,m)))),d>m||c.autoRotation&&(v.styles||{}).width)G=m;G&&(E.width=G,(c.options.labels.style||{}).textOverflow||(E.textOverflow="ellipsis"),v.css(E))},getPosition:function(a,c,g,f){var h=this.axis,n=h.chart,l=f&&n.oldChartHeight||n.chartHeight;return{x:a?h.translate(c+g,null,null,f)+h.transB:h.left+h.offset+(h.opposite?(f&&n.oldChartWidth||n.chartWidth)-h.right-h.left:0),y:a?l-h.bottom+h.offset-(h.opposite?h.height:0):l-h.translate(c+g,null,
100null,f)-h.transB}},getLabelPosition:function(a,c,g,f,h,n,v,e){var b=this.axis,d=b.transA,k=b.reversed,m=b.staggerLines,l=b.tickRotCorr||{x:0,y:0},q=h.y;B(q)||(q=0===b.side?g.rotation?-8:-g.getBBox().height:2===b.side?l.y+8:Math.cos(g.rotation*p)*(l.y-g.getBBox(!1,0).height/2));a=a+h.x+l.x-(n&&f?n*d*(k?-1:1):0);c=c+q-(n&&!f?n*d*(k?1:-1):0);m&&(g=v/(e||1)%m,b.opposite&&(g=m-g-1),c+=b.labelOffset/m*g);return{x:a,y:Math.round(c)}},getMarkPath:function(a,c,g,f,h,n){return n.crispLine(["M",a,c,"L",a+(h?
1010:-g),c+(h?g:0)],f)},renderGridLine:function(a,c,g){var f=this.axis,h=this.gridLine,n={},l=this.pos,e=this.type,b=f.tickmarkOffset,d=f.chart.renderer;h||(e||(n.zIndex=1),a&&(n.opacity=0),this.gridLine=h=d.path().attr(n).addClass("highcharts-"+(e?e+"-":"")+"grid-line").add(f.gridGroup));if(!a&&h&&(a=f.getPlotLinePath(l+b,h.strokeWidth()*g,a,!0)))h[this.isNew?"attr":"animate"]({d:a,opacity:c})},renderMark:function(a,c,g){var f=this.axis,h=f.chart.renderer,n=this.type,l=f.tickSize(n?n+"Tick":"tick"),
102e=this.mark,b=!e,d=a.x;a=a.y;l&&(f.opposite&&(l[0]=-l[0]),b&&(this.mark=e=h.path().addClass("highcharts-"+(n?n+"-":"")+"tick").add(f.axisGroup)),e[b?"attr":"animate"]({d:this.getMarkPath(d,a,l[0],e.strokeWidth()*g,f.horiz,h),opacity:c}))},renderLabel:function(a,p,q,f){var h=this.axis,n=h.horiz,l=h.options,e=this.label,b=l.labels,d=b.step,k=h.tickmarkOffset,m=!0,F=a.x;a=a.y;e&&c(F)&&(e.xy=a=this.getLabelPosition(F,a,e,n,b,k,f,d),this.isFirst&&!this.isLast&&!g(l.showFirstLabel,1)||this.isLast&&!this.isFirst&&
103!g(l.showLastLabel,1)?m=!1:!n||h.isRadial||b.step||b.rotation||p||0===q||this.handleOverflow(a),d&&f%d&&(m=!1),m&&c(a.y)?(a.opacity=q,e[this.isNewLabel?"attr":"animate"](a),this.isNewLabel=!1):(e.attr("y",-9999),this.isNewLabel=!0))},render:function(a,c,q){var f=this.axis,h=f.horiz,n=this.getPosition(h,this.pos,f.tickmarkOffset,c),l=n.x,e=n.y,f=h&&l===f.pos+f.len||!h&&e===f.pos?-1:1;q=g(q,1);this.isActive=!0;this.renderGridLine(c,q,f);this.renderMark(n,q,f);this.renderLabel(n,c,q,a);this.isNew=!1},
104destroy:function(){z(this,this.axis)}}})(H);var U=function(a){var y=a.addEvent,B=a.animObject,z=a.arrayMax,c=a.arrayMin,g=a.correctFloat,p=a.defaultOptions,l=a.defined,u=a.deg2rad,q=a.destroyObjectProperties,f=a.each,h=a.extend,n=a.fireEvent,v=a.format,e=a.getMagnitude,b=a.grep,d=a.inArray,k=a.isArray,m=a.isNumber,F=a.isString,G=a.merge,E=a.normalizeTickInterval,K=a.objectEach,w=a.pick,L=a.removeEvent,x=a.splat,A=a.syncTimeout,D=a.Tick,J=function(){this.init.apply(this,arguments)};a.extend(J.prototype,
105{defaultOptions:{dateTimeLabelFormats:{millisecond:"%H:%M:%S.%L",second:"%H:%M:%S",minute:"%H:%M",hour:"%H:%M",day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%Y"},endOnTick:!1,labels:{enabled:!0,x:0},maxPadding:.01,minorTickLength:2,minorTickPosition:"outside",minPadding:.01,startOfWeek:1,startOnTick:!1,tickLength:10,tickmarkPlacement:"between",tickPixelInterval:100,tickPosition:"outside",title:{align:"middle"},type:"linear"},defaultYAxisOptions:{endOnTick:!0,tickPixelInterval:72,showLastLabel:!0,
106labels:{x:-8},maxPadding:.05,minPadding:.05,startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{allowOverlap:!1,enabled:!1,formatter:function(){return a.numberFormat(this.total,-1)}}},defaultLeftAxisOptions:{labels:{x:-15},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:15},title:{rotation:90}},defaultBottomAxisOptions:{labels:{autoRotation:[-45],x:0},title:{rotation:0}},defaultTopAxisOptions:{labels:{autoRotation:[-45],x:0},title:{rotation:0}},init:function(a,b){var r=b.isX,t=
107this;t.chart=a;t.horiz=a.inverted&&!t.isZAxis?!r:r;t.isXAxis=r;t.coll=t.coll||(r?"xAxis":"yAxis");t.opposite=b.opposite;t.side=b.side||(t.horiz?t.opposite?0:2:t.opposite?1:3);t.setOptions(b);var e=this.options,k=e.type;t.labelFormatter=e.labels.formatter||t.defaultLabelFormatter;t.userOptions=b;t.minPixelPadding=0;t.reversed=e.reversed;t.visible=!1!==e.visible;t.zoomEnabled=!1!==e.zoomEnabled;t.hasNames="category"===k||!0===e.categories;t.categories=e.categories||t.hasNames;t.names=t.names||[];t.plotLinesAndBandsGroups=
108{};t.isLog="logarithmic"===k;t.isDatetimeAxis="datetime"===k;t.positiveValuesOnly=t.isLog&&!t.allowNegativeLog;t.isLinked=l(e.linkedTo);t.ticks={};t.labelEdge=[];t.minorTicks={};t.plotLinesAndBands=[];t.alternateBands={};t.len=0;t.minRange=t.userMinRange=e.minRange||e.maxZoom;t.range=e.range;t.offset=e.offset||0;t.stacks={};t.oldStacks={};t.stacksTouched=0;t.max=null;t.min=null;t.crosshair=w(e.crosshair,x(a.options.tooltip.crosshairs)[r?0:1],!1);b=t.options.events;-1===d(t,a.axes)&&(r?a.axes.splice(a.xAxis.length,
1090,t):a.axes.push(t),a[t.coll].push(t));t.series=t.series||[];a.inverted&&!t.isZAxis&&r&&void 0===t.reversed&&(t.reversed=!0);K(b,function(a,b){y(t,b,a)});t.lin2log=e.linearToLogConverter||t.lin2log;t.isLog&&(t.val2lin=t.log2lin,t.lin2val=t.lin2log)},setOptions:function(a){this.options=G(this.defaultOptions,"yAxis"===this.coll&&this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],G(p[this.coll],a))},
110defaultLabelFormatter:function(){var b=this.axis,d=this.value,e=b.categories,k=this.dateTimeLabelFormat,m=p.lang,f=m.numericSymbols,m=m.numericSymbolMagnitude||1E3,c=f&&f.length,h,g=b.options.labels.format,b=b.isLog?Math.abs(d):b.tickInterval;if(g)h=v(g,this);else if(e)h=d;else if(k)h=a.dateFormat(k,d);else if(c&&1E3<=b)for(;c--&&void 0===h;)e=Math.pow(m,c+1),b>=e&&0===10*d%e&&null!==f[c]&&0!==d&&(h=a.numberFormat(d/e,-1)+f[c]);void 0===h&&(h=1E4<=Math.abs(d)?a.numberFormat(d,-1):a.numberFormat(d,
111-1,void 0,""));return h},getSeriesExtremes:function(){var a=this,d=a.chart;a.hasVisibleSeries=!1;a.dataMin=a.dataMax=a.threshold=null;a.softThreshold=!a.isXAxis;a.buildStacks&&a.buildStacks();f(a.series,function(t){if(t.visible||!d.options.chart.ignoreHiddenSeries){var r=t.options,e=r.threshold,k;a.hasVisibleSeries=!0;a.positiveValuesOnly&&0>=e&&(e=null);if(a.isXAxis)r=t.xData,r.length&&(t=c(r),k=z(r),m(t)||t instanceof Date||(r=b(r,m),t=c(r)),a.dataMin=Math.min(w(a.dataMin,r[0],t),t),a.dataMax=Math.max(w(a.dataMax,
112r[0],k),k));else if(t.getExtremes(),k=t.dataMax,t=t.dataMin,l(t)&&l(k)&&(a.dataMin=Math.min(w(a.dataMin,t),t),a.dataMax=Math.max(w(a.dataMax,k),k)),l(e)&&(a.threshold=e),!r.softThreshold||a.positiveValuesOnly)a.softThreshold=!1}})},translate:function(a,b,d,e,k,f){var t=this.linkedParent||this,r=1,C=0,c=e?t.oldTransA:t.transA;e=e?t.oldMin:t.min;var h=t.minPixelPadding;k=(t.isOrdinal||t.isBroken||t.isLog&&k)&&t.lin2val;c||(c=t.transA);d&&(r*=-1,C=t.len);t.reversed&&(r*=-1,C-=r*(t.sector||t.len));b?
113(a=(a*r+C-h)/c+e,k&&(a=t.lin2val(a))):(k&&(a=t.val2lin(a)),a=m(e)?r*(a-e)*c+C+r*h+(m(f)?c*f:0):void 0);return a},toPixels:function(a,b){return this.translate(a,!1,!this.horiz,null,!0)+(b?0:this.pos)},toValue:function(a,b){return this.translate(a-(b?0:this.pos),!0,!this.horiz,null,!0)},getPlotLinePath:function(a,b,d,e,k){var t=this.chart,r=this.left,f=this.top,C,c,h=d&&t.oldChartHeight||t.chartHeight,g=d&&t.oldChartWidth||t.chartWidth,x;C=this.transB;var n=function(a,b,d){if(a<b||a>d)e?a=Math.min(Math.max(b,
114a),d):x=!0;return a};k=w(k,this.translate(a,null,null,d));a=d=Math.round(k+C);C=c=Math.round(h-k-C);m(k)?this.horiz?(C=f,c=h-this.bottom,a=d=n(a,r,r+this.width)):(a=r,d=g-this.right,C=c=n(C,f,f+this.height)):(x=!0,e=!1);return x&&!e?null:t.renderer.crispLine(["M",a,C,"L",d,c],b||1)},getLinearTickPositions:function(a,b,d){var t,r=g(Math.floor(b/a)*a);d=g(Math.ceil(d/a)*a);var e=[],k;g(r+a)===r&&(k=20);if(this.single)return[b];for(b=r;b<=d;){e.push(b);b=g(b+a,k);if(b===t)break;t=b}return e},getMinorTickInterval:function(){var a=
115this.options;return!0===a.minorTicks?w(a.minorTickInterval,"auto"):!1===a.minorTicks?null:a.minorTickInterval},getMinorTickPositions:function(){var a=this,b=a.options,d=a.tickPositions,e=a.minorTickInterval,k=[],m=a.pointRangePadding||0,c=a.min-m,m=a.max+m,h=m-c;if(h&&h/e<a.len/3)if(a.isLog)f(this.paddedTicks,function(b,d,t){d&&k.push.apply(k,a.getLogTickPositions(e,t[d-1],t[d],!0))});else if(a.isDatetimeAxis&&"auto"===this.getMinorTickInterval())k=k.concat(a.getTimeTicks(a.normalizeTimeTickInterval(e),
116c,m,b.startOfWeek));else for(b=c+(d[0]-c)%e;b<=m&&b!==k[0];b+=e)k.push(b);0!==k.length&&a.trimTicks(k);return k},adjustForMinRange:function(){var a=this.options,b=this.min,d=this.max,e,k,m,h,g,x,n,D;this.isXAxis&&void 0===this.minRange&&!this.isLog&&(l(a.min)||l(a.max)?this.minRange=null:(f(this.series,function(a){x=a.xData;for(h=n=a.xIncrement?1:x.length-1;0<h;h--)if(g=x[h]-x[h-1],void 0===m||g<m)m=g}),this.minRange=Math.min(5*m,this.dataMax-this.dataMin)));d-b<this.minRange&&(k=this.dataMax-this.dataMin>=
117this.minRange,D=this.minRange,e=(D-d+b)/2,e=[b-e,w(a.min,b-e)],k&&(e[2]=this.isLog?this.log2lin(this.dataMin):this.dataMin),b=z(e),d=[b+D,w(a.max,b+D)],k&&(d[2]=this.isLog?this.log2lin(this.dataMax):this.dataMax),d=c(d),d-b<D&&(e[0]=d-D,e[1]=w(a.min,d-D),b=z(e)));this.min=b;this.max=d},getClosest:function(){var a;this.categories?a=1:f(this.series,function(b){var d=b.closestPointRange,t=b.visible||!b.chart.options.chart.ignoreHiddenSeries;!b.noSharedTooltip&&l(d)&&t&&(a=l(a)?Math.min(a,d):d)});return a},
118nameToX:function(a){var b=k(this.categories),r=b?this.categories:this.names,e=a.options.x,m;a.series.requireSorting=!1;l(e)||(e=!1===this.options.uniqueNames?a.series.autoIncrement():d(a.name,r));-1===e?b||(m=r.length):m=e;void 0!==m&&(this.names[m]=a.name);return m},updateNames:function(){var a=this;0<this.names.length&&(this.names.length=0,this.minRange=this.userMinRange,f(this.series||[],function(b){b.xIncrement=null;if(!b.points||b.isDirtyData)b.processData(),b.generatePoints();f(b.points,function(d,
119t){var r;d.options&&(r=a.nameToX(d),void 0!==r&&r!==d.x&&(d.x=r,b.xData[t]=r))})}))},setAxisTranslation:function(a){var b=this,d=b.max-b.min,r=b.axisPointRange||0,e,k=0,m=0,c=b.linkedParent,h=!!b.categories,g=b.transA,x=b.isXAxis;if(x||h||r)e=b.getClosest(),c?(k=c.minPointOffset,m=c.pointRangePadding):f(b.series,function(a){var d=h?1:x?w(a.options.pointRange,e,0):b.axisPointRange||0;a=a.options.pointPlacement;r=Math.max(r,d);b.single||(k=Math.max(k,F(a)?0:d/2),m=Math.max(m,"on"===a?0:d))}),c=b.ordinalSlope&&
120e?b.ordinalSlope/e:1,b.minPointOffset=k*=c,b.pointRangePadding=m*=c,b.pointRange=Math.min(r,d),x&&(b.closestPointRange=e);a&&(b.oldTransA=g);b.translationSlope=b.transA=g=b.options.staticScale||b.len/(d+m||1);b.transB=b.horiz?b.left:b.bottom;b.minPixelPadding=g*k},minFromRange:function(){return this.max-this.range},setTickInterval:function(b){var d=this,r=d.chart,k=d.options,c=d.isLog,h=d.log2lin,x=d.isDatetimeAxis,D=d.isXAxis,A=d.isLinked,v=k.maxPadding,q=k.minPadding,K=k.tickInterval,F=k.tickPixelInterval,
121p=d.categories,J=d.threshold,u=d.softThreshold,L,G,y,z;x||p||A||this.getTickAmount();y=w(d.userMin,k.min);z=w(d.userMax,k.max);A?(d.linkedParent=r[d.coll][k.linkedTo],r=d.linkedParent.getExtremes(),d.min=w(r.min,r.dataMin),d.max=w(r.max,r.dataMax),k.type!==d.linkedParent.options.type&&a.error(11,1)):(!u&&l(J)&&(d.dataMin>=J?(L=J,q=0):d.dataMax<=J&&(G=J,v=0)),d.min=w(y,L,d.dataMin),d.max=w(z,G,d.dataMax));c&&(d.positiveValuesOnly&&!b&&0>=Math.min(d.min,w(d.dataMin,d.min))&&a.error(10,1),d.min=g(h(d.min),
12215),d.max=g(h(d.max),15));d.range&&l(d.max)&&(d.userMin=d.min=y=Math.max(d.dataMin,d.minFromRange()),d.userMax=z=d.max,d.range=null);n(d,"foundExtremes");d.beforePadding&&d.beforePadding();d.adjustForMinRange();!(p||d.axisPointRange||d.usePercentage||A)&&l(d.min)&&l(d.max)&&(h=d.max-d.min)&&(!l(y)&&q&&(d.min-=h*q),!l(z)&&v&&(d.max+=h*v));m(k.softMin)&&(d.min=Math.min(d.min,k.softMin));m(k.softMax)&&(d.max=Math.max(d.max,k.softMax));m(k.floor)&&(d.min=Math.max(d.min,k.floor));m(k.ceiling)&&(d.max=
123Math.min(d.max,k.ceiling));u&&l(d.dataMin)&&(J=J||0,!l(y)&&d.min<J&&d.dataMin>=J?d.min=J:!l(z)&&d.max>J&&d.dataMax<=J&&(d.max=J));d.tickInterval=d.min===d.max||void 0===d.min||void 0===d.max?1:A&&!K&&F===d.linkedParent.options.tickPixelInterval?K=d.linkedParent.tickInterval:w(K,this.tickAmount?(d.max-d.min)/Math.max(this.tickAmount-1,1):void 0,p?1:(d.max-d.min)*F/Math.max(d.len,F));D&&!b&&f(d.series,function(a){a.processData(d.min!==d.oldMin||d.max!==d.oldMax)});d.setAxisTranslation(!0);d.beforeSetTickPositions&&
124d.beforeSetTickPositions();d.postProcessTickInterval&&(d.tickInterval=d.postProcessTickInterval(d.tickInterval));d.pointRange&&!K&&(d.tickInterval=Math.max(d.pointRange,d.tickInterval));b=w(k.minTickInterval,d.isDatetimeAxis&&d.closestPointRange);!K&&d.tickInterval<b&&(d.tickInterval=b);x||c||K||(d.tickInterval=E(d.tickInterval,null,e(d.tickInterval),w(k.allowDecimals,!(.5<d.tickInterval&&5>d.tickInterval&&1E3<d.max&&9999>d.max)),!!this.tickAmount));this.tickAmount||(d.tickInterval=d.unsquish());
125this.setTickPositions()},setTickPositions:function(){var a=this.options,b,d=a.tickPositions;b=this.getMinorTickInterval();var e=a.tickPositioner,k=a.startOnTick,m=a.endOnTick;this.tickmarkOffset=this.categories&&"between"===a.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval="auto"===b&&this.tickInterval?this.tickInterval/5:b;this.single=this.min===this.max&&l(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==a.allowDecimals);this.tickPositions=b=d&&d.slice();
126!b&&(b=this.isDatetimeAxis?this.getTimeTicks(this.normalizeTimeTickInterval(this.tickInterval,a.units),this.min,this.max,a.startOfWeek,this.ordinalPositions,this.closestPointRange,!0):this.isLog?this.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max),b.length>this.len&&(b=[b[0],b.pop()],b[0]===b[1]&&(b.length=1)),this.tickPositions=b,e&&(e=e.apply(this,[this.min,this.max])))&&(this.tickPositions=b=e);this.paddedTicks=b.slice(0);
127this.trimTicks(b,k,m);this.isLinked||(this.single&&2>b.length&&(this.min-=.5,this.max+=.5),d||e||this.adjustTickAmount())},trimTicks:function(a,b,d){var e=a[0],r=a[a.length-1],k=this.minPointOffset||0;if(!this.isLinked){if(b&&-Infinity!==e)this.min=e;else for(;this.min-k>a[0];)a.shift();if(d)this.max=r;else for(;this.max+k<a[a.length-1];)a.pop();0===a.length&&l(e)&&a.push((r+e)/2)}},alignToOthers:function(){var a={},b,d=this.options;!1===this.chart.options.chart.alignTicks||!1===d.alignTicks||this.isLog||
128f(this.chart[this.coll],function(d){var e=d.options,e=[d.horiz?e.left:e.top,e.width,e.height,e.pane].join();d.series.length&&(a[e]?b=!0:a[e]=1)});return b},getTickAmount:function(){var a=this.options,b=a.tickAmount,d=a.tickPixelInterval;!l(a.tickInterval)&&this.len<d&&!this.isRadial&&!this.isLog&&a.startOnTick&&a.endOnTick&&(b=2);!b&&this.alignToOthers()&&(b=Math.ceil(this.len/d)+1);4>b&&(this.finalTickAmt=b,b=5);this.tickAmount=b},adjustTickAmount:function(){var a=this.tickInterval,b=this.tickPositions,
129d=this.tickAmount,e=this.finalTickAmt,k=b&&b.length;if(k<d){for(;b.length<d;)b.push(g(b[b.length-1]+a));this.transA*=(k-1)/(d-1);this.max=b[b.length-1]}else k>d&&(this.tickInterval*=2,this.setTickPositions());if(l(e)){for(a=d=b.length;a--;)(3===e&&1===a%2||2>=e&&0<a&&a<d-1)&&b.splice(a,1);this.finalTickAmt=void 0}},setScale:function(){var a,b;this.oldMin=this.min;this.oldMax=this.max;this.oldAxisLength=this.len;this.setAxisSize();b=this.len!==this.oldAxisLength;f(this.series,function(b){if(b.isDirtyData||
130b.isDirty||b.xAxis.isDirty)a=!0});b||a||this.isLinked||this.forceRedraw||this.userMin!==this.oldUserMin||this.userMax!==this.oldUserMax||this.alignToOthers()?(this.resetStacks&&this.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.oldUserMin=this.userMin,this.oldUserMax=this.userMax,this.isDirty||(this.isDirty=b||this.min!==this.oldMin||this.max!==this.oldMax)):this.cleanStacks&&this.cleanStacks()},setExtremes:function(a,b,d,e,k){var r=this,m=r.chart;d=w(d,!0);
131f(r.series,function(a){delete a.kdTree});k=h(k,{min:a,max:b});n(r,"setExtremes",k,function(){r.userMin=a;r.userMax=b;r.eventArgs=k;d&&m.redraw(e)})},zoom:function(a,b){var d=this.dataMin,e=this.dataMax,r=this.options,k=Math.min(d,w(r.min,d)),r=Math.max(e,w(r.max,e));if(a!==this.min||b!==this.max)this.allowZoomOutside||(l(d)&&(a<k&&(a=k),a>r&&(a=r)),l(e)&&(b<k&&(b=k),b>r&&(b=r))),this.displayBtn=void 0!==a||void 0!==b,this.setExtremes(a,b,!1,void 0,{trigger:"zoom"});return!0},setAxisSize:function(){var b=
132this.chart,d=this.options,e=d.offsets||[0,0,0,0],k=this.horiz,m=this.width=Math.round(a.relativeLength(w(d.width,b.plotWidth-e[3]+e[1]),b.plotWidth)),f=this.height=Math.round(a.relativeLength(w(d.height,b.plotHeight-e[0]+e[2]),b.plotHeight)),c=this.top=Math.round(a.relativeLength(w(d.top,b.plotTop+e[0]),b.plotHeight,b.plotTop)),d=this.left=Math.round(a.relativeLength(w(d.left,b.plotLeft+e[3]),b.plotWidth,b.plotLeft));this.bottom=b.chartHeight-f-c;this.right=b.chartWidth-m-d;this.len=Math.max(k?m:
133f,0);this.pos=k?d:c},getExtremes:function(){var a=this.isLog,b=this.lin2log;return{min:a?g(b(this.min)):this.min,max:a?g(b(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(a){var b=this.isLog,d=this.lin2log,e=b?d(this.min):this.min,b=b?d(this.max):this.max;null===a?a=e:e>a?a=e:b<a&&(a=b);return this.translate(a,0,1,0,1)},autoLabelAlign:function(a){a=(w(a,0)-90*this.side+720)%360;return 15<a&&165>a?"right":195<a&&345>a?
134"left":"center"},tickSize:function(a){var b=this.options,d=b[a+"Length"],e=w(b[a+"Width"],"tick"===a&&this.isXAxis?1:0);if(e&&d)return"inside"===b[a+"Position"]&&(d=-d),[d,e]},labelMetrics:function(){var a=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style&&this.options.labels.style.fontSize,this.ticks[a]&&this.ticks[a].label)},unsquish:function(){var a=this.options.labels,b=this.horiz,d=this.tickInterval,e=d,k=this.len/(((this.categories?
1351:0)+this.max-this.min)/d),m,c=a.rotation,h=this.labelMetrics(),x,g=Number.MAX_VALUE,n,D=function(a){a/=k||1;a=1<a?Math.ceil(a):1;return a*d};b?(n=!a.staggerLines&&!a.step&&(l(c)?[c]:k<w(a.autoRotationLimit,80)&&a.autoRotation))&&f(n,function(a){var b;if(a===c||a&&-90<=a&&90>=a)x=D(Math.abs(h.h/Math.sin(u*a))),b=x+Math.abs(a/360),b<g&&(g=b,m=a,e=x)}):a.step||(e=D(h.h));this.autoRotation=n;this.labelRotation=w(m,c);return e},getSlotWidth:function(){var a=this.chart,b=this.horiz,d=this.options.labels,
136e=Math.max(this.tickPositions.length-(this.categories?0:1),1),k=a.margin[3];return b&&2>(d.step||0)&&!d.rotation&&(this.staggerLines||1)*this.len/e||!b&&(d.style&&parseInt(d.style.width,10)||k&&k-a.spacing[3]||.33*a.chartWidth)},renderUnsquish:function(){var a=this.chart,b=a.renderer,d=this.tickPositions,e=this.ticks,k=this.options.labels,m=this.horiz,c=this.getSlotWidth(),h=Math.max(1,Math.round(c-2*(k.padding||5))),x={},g=this.labelMetrics(),n=k.style&&k.style.textOverflow,D,A=0,w,l;F(k.rotation)||
137(x.rotation=k.rotation||0);f(d,function(a){(a=e[a])&&a.labelLength>A&&(A=a.labelLength)});this.maxLabelLength=A;if(this.autoRotation)A>h&&A>g.h?x.rotation=this.labelRotation:this.labelRotation=0;else if(c&&(D={width:h+"px"},!n))for(D.textOverflow="clip",w=d.length;!m&&w--;)if(l=d[w],h=e[l].label)h.styles&&"ellipsis"===h.styles.textOverflow?h.css({textOverflow:"clip"}):e[l].labelLength>c&&h.css({width:c+"px"}),h.getBBox().height>this.len/d.length-(g.h-g.f)&&(h.specCss={textOverflow:"ellipsis"});x.rotation&&
138(D={width:(A>.5*a.chartHeight?.33*a.chartHeight:a.chartHeight)+"px"},n||(D.textOverflow="ellipsis"));if(this.labelAlign=k.align||this.autoLabelAlign(this.labelRotation))x.align=this.labelAlign;f(d,function(a){var b=(a=e[a])&&a.label;b&&(b.attr(x),D&&b.css(G(D,b.specCss)),delete b.specCss,a.rotation=x.rotation)});this.tickRotCorr=b.rotCorr(g.b,this.labelRotation||0,0!==this.side)},hasData:function(){return this.hasVisibleSeries||l(this.min)&&l(this.max)&&this.tickPositions&&0<this.tickPositions.length},
139addTitle:function(a){var b=this.chart.renderer,d=this.horiz,e=this.opposite,k=this.options.title,r;this.axisTitle||((r=k.textAlign)||(r=(d?{low:"left",middle:"center",high:"right"}:{low:e?"right":"left",middle:"center",high:e?"left":"right"})[k.align]),this.axisTitle=b.text(k.text,0,0,k.useHTML).attr({zIndex:7,rotation:k.rotation||0,align:r}).addClass("highcharts-axis-title").add(this.axisGroup),this.axisTitle.isNew=!0);this.axisTitle.css({width:this.len});this.axisTitle[a?"show":"hide"](!0)},generateTick:function(a){var b=
140this.ticks;b[a]?b[a].addLabel():b[a]=new D(this,a)},getOffset:function(){var a=this,b=a.chart,d=b.renderer,e=a.options,k=a.tickPositions,m=a.ticks,c=a.horiz,h=a.side,x=b.inverted&&!a.isZAxis?[1,0,3,2][h]:h,g,n,D=0,A,v=0,q=e.title,E=e.labels,F=0,p=b.axisOffset,b=b.clipOffset,J=[-1,1,1,-1][h],u=e.className,L=a.axisParent,G=this.tickSize("tick");g=a.hasData();a.showAxis=n=g||w(e.showEmpty,!0);a.staggerLines=a.horiz&&E.staggerLines;a.axisGroup||(a.gridGroup=d.g("grid").attr({zIndex:e.gridZIndex||1}).addClass("highcharts-"+
141this.coll.toLowerCase()+"-grid "+(u||"")).add(L),a.axisGroup=d.g("axis").attr({zIndex:e.zIndex||2}).addClass("highcharts-"+this.coll.toLowerCase()+" "+(u||"")).add(L),a.labelGroup=d.g("axis-labels").attr({zIndex:E.zIndex||7}).addClass("highcharts-"+a.coll.toLowerCase()+"-labels "+(u||"")).add(L));g||a.isLinked?(f(k,function(b,d){a.generateTick(b,d)}),a.renderUnsquish(),!1===E.reserveSpace||0!==h&&2!==h&&{1:"left",3:"right"}[h]!==a.labelAlign&&"center"!==a.labelAlign||f(k,function(a){F=Math.max(m[a].getLabelSize(),
142F)}),a.staggerLines&&(F*=a.staggerLines,a.labelOffset=F*(a.opposite?-1:1))):K(m,function(a,b){a.destroy();delete m[b]});q&&q.text&&!1!==q.enabled&&(a.addTitle(n),n&&!1!==q.reserveSpace&&(a.titleOffset=D=a.axisTitle.getBBox()[c?"height":"width"],A=q.offset,v=l(A)?0:w(q.margin,c?5:10)));a.renderLine();a.offset=J*w(e.offset,p[h]);a.tickRotCorr=a.tickRotCorr||{x:0,y:0};d=0===h?-a.labelMetrics().h:2===h?a.tickRotCorr.y:0;v=Math.abs(F)+v;F&&(v=v-d+J*(c?w(E.y,a.tickRotCorr.y+8*J):E.x));a.axisTitleMargin=
143w(A,v);p[h]=Math.max(p[h],a.axisTitleMargin+D+J*a.offset,v,g&&k.length&&G?G[0]+J*a.offset:0);e=e.offset?0:2*Math.floor(a.axisLine.strokeWidth()/2);b[x]=Math.max(b[x],e)},getLinePath:function(a){var b=this.chart,d=this.opposite,e=this.offset,k=this.horiz,m=this.left+(d?this.width:0)+e,e=b.chartHeight-this.bottom-(d?this.height:0)+e;d&&(a*=-1);return b.renderer.crispLine(["M",k?this.left:m,k?e:this.top,"L",k?b.chartWidth-this.right:m,k?e:b.chartHeight-this.bottom],a)},renderLine:function(){this.axisLine||
144(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup))},getTitlePosition:function(){var a=this.horiz,b=this.left,d=this.top,e=this.len,k=this.options.title,m=a?b:d,c=this.opposite,f=this.offset,h=k.x||0,x=k.y||0,g=this.axisTitle,n=this.chart.renderer.fontMetrics(k.style&&k.style.fontSize,g),g=Math.max(g.getBBox(null,0).height-n.h-1,0),e={low:m+(a?0:e),middle:m+e/2,high:m+(a?e:0)}[k.align],b=(a?d+this.height:b)+(a?1:-1)*(c?-1:1)*this.axisTitleMargin+[-g,g,n.f,
145-g][this.side];return{x:a?e+h:b+(c?this.width:0)+f+h,y:a?b+x-(c?this.height:0)+f:e+x}},renderMinorTick:function(a){var b=this.chart.hasRendered&&m(this.oldMin),d=this.minorTicks;d[a]||(d[a]=new D(this,a,"minor"));b&&d[a].isNew&&d[a].render(null,!0);d[a].render(null,!1,1)},renderTick:function(a,b){var d=this.isLinked,e=this.ticks,k=this.chart.hasRendered&&m(this.oldMin);if(!d||a>=this.min&&a<=this.max)e[a]||(e[a]=new D(this,a)),k&&e[a].isNew&&e[a].render(b,!0,.1),e[a].render(b)},render:function(){var b=
146this,d=b.chart,e=b.options,k=b.isLog,c=b.lin2log,h=b.isLinked,g=b.tickPositions,x=b.axisTitle,n=b.ticks,w=b.minorTicks,l=b.alternateBands,v=e.stackLabels,q=e.alternateGridColor,E=b.tickmarkOffset,F=b.axisLine,p=b.showAxis,J=B(d.renderer.globalAnimation),u,L;b.labelEdge.length=0;b.overlap=!1;f([n,w,l],function(a){K(a,function(a){a.isActive=!1})});if(b.hasData()||h)b.minorTickInterval&&!b.categories&&f(b.getMinorTickPositions(),function(a){b.renderMinorTick(a)}),g.length&&(f(g,function(a,d){b.renderTick(a,
147d)}),E&&(0===b.min||b.single)&&(n[-1]||(n[-1]=new D(b,-1,null,!0)),n[-1].render(-1))),q&&f(g,function(e,m){L=void 0!==g[m+1]?g[m+1]+E:b.max-E;0===m%2&&e<b.max&&L<=b.max+(d.polar?-E:E)&&(l[e]||(l[e]=new a.PlotLineOrBand(b)),u=e+E,l[e].options={from:k?c(u):u,to:k?c(L):L,color:q},l[e].render(),l[e].isActive=!0)}),b._addedPlotLB||(f((e.plotLines||[]).concat(e.plotBands||[]),function(a){b.addPlotBandOrLine(a)}),b._addedPlotLB=!0);f([n,w,l],function(a){var b,e=[],k=J.duration;K(a,function(a,b){a.isActive||
148(a.render(b,!1,0),a.isActive=!1,e.push(b))});A(function(){for(b=e.length;b--;)a[e[b]]&&!a[e[b]].isActive&&(a[e[b]].destroy(),delete a[e[b]])},a!==l&&d.hasRendered&&k?k:0)});F&&(F[F.isPlaced?"animate":"attr"]({d:this.getLinePath(F.strokeWidth())}),F.isPlaced=!0,F[p?"show":"hide"](!0));x&&p&&(e=b.getTitlePosition(),m(e.y)?(x[x.isNew?"attr":"animate"](e),x.isNew=!1):(x.attr("y",-9999),x.isNew=!0));v&&v.enabled&&b.renderStackTotals();b.isDirty=!1},redraw:function(){this.visible&&(this.render(),f(this.plotLinesAndBands,
149function(a){a.render()}));f(this.series,function(a){a.isDirty=!0})},keepProps:"extKey hcEvents names series userMax userMin".split(" "),destroy:function(a){var b=this,e=b.stacks,k=b.plotLinesAndBands,m;a||L(b);K(e,function(a,b){q(a);e[b]=null});f([b.ticks,b.minorTicks,b.alternateBands],function(a){q(a)});if(k)for(a=k.length;a--;)k[a].destroy();f("stackTotalGroup axisLine axisTitle axisGroup gridGroup labelGroup cross".split(" "),function(a){b[a]&&(b[a]=b[a].destroy())});for(m in b.plotLinesAndBandsGroups)b.plotLinesAndBandsGroups[m]=
150b.plotLinesAndBandsGroups[m].destroy();K(b,function(a,e){-1===d(e,b.keepProps)&&delete b[e]})},drawCrosshair:function(a,b){var d,e=this.crosshair,k=w(e.snap,!0),m,c=this.cross;a||(a=this.cross&&this.cross.e);this.crosshair&&!1!==(l(b)||!k)?(k?l(b)&&(m=this.isXAxis?b.plotX:this.len-b.plotY):m=a&&(this.horiz?a.chartX-this.pos:this.len-a.chartY+this.pos),l(m)&&(d=this.getPlotLinePath(b&&(this.isXAxis?b.x:w(b.stackY,b.y)),null,null,null,m)||null),l(d)?(b=this.categories&&!this.isRadial,c||(this.cross=
151c=this.chart.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(b?"category ":"thin ")+e.className).attr({zIndex:w(e.zIndex,2)}).add()),c.show().attr({d:d}),b&&!e.width&&c.attr({"stroke-width":this.transA}),this.cross.e=a):this.hideCrosshair()):this.hideCrosshair()},hideCrosshair:function(){this.cross&&this.cross.hide()}});return a.Axis=J}(H);(function(a){var y=a.Axis,B=a.getMagnitude,z=a.map,c=a.normalizeTickInterval,g=a.pick;y.prototype.getLogTickPositions=function(a,l,u,q){var f=
152this.options,h=this.len,n=this.lin2log,v=this.log2lin,e=[];q||(this._minorAutoInterval=null);if(.5<=a)a=Math.round(a),e=this.getLinearTickPositions(a,l,u);else if(.08<=a)for(var h=Math.floor(l),b,d,k,m,F,f=.3<a?[1,2,4]:.15<a?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];h<u+1&&!F;h++)for(d=f.length,b=0;b<d&&!F;b++)k=v(n(h)*f[b]),k>l&&(!q||m<=u)&&void 0!==m&&e.push(m),m>u&&(F=!0),m=k;else l=n(l),u=n(u),a=q?this.getMinorTickInterval():f.tickInterval,a=g("auto"===a?null:a,this._minorAutoInterval,f.tickPixelInterval/
153(q?5:1)*(u-l)/((q?h/this.tickPositions.length:h)||1)),a=c(a,null,B(a)),e=z(this.getLinearTickPositions(a,l,u),v),q||(this._minorAutoInterval=a/5);q||(this.tickInterval=a);return e};y.prototype.log2lin=function(a){return Math.log(a)/Math.LN10};y.prototype.lin2log=function(a){return Math.pow(10,a)}})(H);(function(a,y){var B=a.arrayMax,z=a.arrayMin,c=a.defined,g=a.destroyObjectProperties,p=a.each,l=a.erase,u=a.merge,q=a.pick;a.PlotLineOrBand=function(a,c){this.axis=a;c&&(this.options=c,this.id=c.id)};
154a.PlotLineOrBand.prototype={render:function(){var f=this,h=f.axis,g=h.horiz,l=f.options,e=l.label,b=f.label,d=l.to,k=l.from,m=l.value,F=c(k)&&c(d),p=c(m),E=f.svgElem,K=!E,w=[],L=q(l.zIndex,0),x=l.events,w={"class":"highcharts-plot-"+(F?"band ":"line ")+(l.className||"")},A={},D=h.chart.renderer,J=F?"bands":"lines",r;r=h.log2lin;h.isLog&&(k=r(k),d=r(d),m=r(m));A.zIndex=L;J+="-"+L;(r=h.plotLinesAndBandsGroups[J])||(h.plotLinesAndBandsGroups[J]=r=D.g("plot-"+J).attr(A).add());K&&(f.svgElem=E=D.path().attr(w).add(r));
155if(p)w=h.getPlotLinePath(m,E.strokeWidth());else if(F)w=h.getPlotBandPath(k,d,l);else return;K&&w&&w.length?(E.attr({d:w}),x&&a.objectEach(x,function(a,b){E.on(b,function(a){x[b].apply(f,[a])})})):E&&(w?(E.show(),E.animate({d:w})):(E.hide(),b&&(f.label=b=b.destroy())));e&&c(e.text)&&w&&w.length&&0<h.width&&0<h.height&&!w.flat?(e=u({align:g&&F&&"center",x:g?!F&&4:10,verticalAlign:!g&&F&&"middle",y:g?F?16:10:F?6:-4,rotation:g&&!F&&90},e),this.renderLabel(e,w,F,L)):b&&b.hide();return f},renderLabel:function(a,
156c,g,l){var e=this.label,b=this.axis.chart.renderer;e||(e={align:a.textAlign||a.align,rotation:a.rotation,"class":"highcharts-plot-"+(g?"band":"line")+"-label "+(a.className||"")},e.zIndex=l,this.label=e=b.text(a.text,0,0,a.useHTML).attr(e).add());l=c.xBounds||[c[1],c[4],g?c[6]:c[1]];c=c.yBounds||[c[2],c[5],g?c[7]:c[2]];g=z(l);b=z(c);e.align(a,!1,{x:g,y:b,width:B(l)-g,height:B(c)-b});e.show()},destroy:function(){l(this.axis.plotLinesAndBands,this);delete this.axis;g(this)}};a.extend(y.prototype,{getPlotBandPath:function(a,
157c){var f=this.getPlotLinePath(c,null,null,!0),h=this.getPlotLinePath(a,null,null,!0),e=[],b=this.horiz,d=1,k;a=a<this.min&&c<this.min||a>this.max&&c>this.max;if(h&&f)for(a&&(k=h.toString()===f.toString(),d=0),a=0;a<h.length;a+=6)b&&f[a+1]===h[a+1]?(f[a+1]+=d,f[a+4]+=d):b||f[a+2]!==h[a+2]||(f[a+2]+=d,f[a+5]+=d),e.push("M",h[a+1],h[a+2],"L",h[a+4],h[a+5],f[a+4],f[a+5],f[a+1],f[a+2],"z"),e.flat=k;return e},addPlotBand:function(a){return this.addPlotBandOrLine(a,"plotBands")},addPlotLine:function(a){return this.addPlotBandOrLine(a,
158"plotLines")},addPlotBandOrLine:function(c,h){var f=(new a.PlotLineOrBand(this,c)).render(),g=this.userOptions;f&&(h&&(g[h]=g[h]||[],g[h].push(c)),this.plotLinesAndBands.push(f));return f},removePlotBandOrLine:function(a){for(var c=this.plotLinesAndBands,f=this.options,g=this.userOptions,e=c.length;e--;)c[e].id===a&&c[e].destroy();p([f.plotLines||[],g.plotLines||[],f.plotBands||[],g.plotBands||[]],function(b){for(e=b.length;e--;)b[e].id===a&&l(b,b[e])})},removePlotBand:function(a){this.removePlotBandOrLine(a)},
159removePlotLine:function(a){this.removePlotBandOrLine(a)}})})(H,U);(function(a){var y=a.dateFormat,B=a.each,z=a.extend,c=a.format,g=a.isNumber,p=a.map,l=a.merge,u=a.pick,q=a.splat,f=a.syncTimeout,h=a.timeUnits;a.Tooltip=function(){this.init.apply(this,arguments)};a.Tooltip.prototype={init:function(a,c){this.chart=a;this.options=c;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.split=c.split&&!a.inverted;this.shared=c.shared||this.split},cleanSplit:function(a){B(this.chart.series,function(c){var e=
160c&&c.tt;e&&(!e.isActive||a?c.tt=e.destroy():e.isActive=!1)})},applyFilter:function(){var a=this.chart;a.renderer.definition({tagName:"filter",id:"drop-shadow-"+a.index,opacity:.5,children:[{tagName:"feGaussianBlur",in:"SourceAlpha",stdDeviation:1},{tagName:"feOffset",dx:1,dy:1},{tagName:"feComponentTransfer",children:[{tagName:"feFuncA",type:"linear",slope:.3}]},{tagName:"feMerge",children:[{tagName:"feMergeNode"},{tagName:"feMergeNode",in:"SourceGraphic"}]}]});a.renderer.definition({tagName:"style",
161textContent:".highcharts-tooltip-"+a.index+"{filter:url(#drop-shadow-"+a.index+")}"})},getLabel:function(){var a=this.chart.renderer,c=this.options;this.label||(this.label=this.split?a.g("tooltip"):a.label("",0,0,c.shape||"callout",null,null,c.useHTML,null,"tooltip").attr({padding:c.padding,r:c.borderRadius}),this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index),this.label.attr({zIndex:8}).add());return this.label},update:function(a){this.destroy();l(!0,this.chart.options.tooltip.userOptions,
162a);this.init(this.chart,l(!0,this.options,a))},destroy:function(){this.label&&(this.label=this.label.destroy());this.split&&this.tt&&(this.cleanSplit(this.chart,!0),this.tt=this.tt.destroy());clearTimeout(this.hideTimer);clearTimeout(this.tooltipTimeout)},move:function(a,c,e,b){var d=this,k=d.now,m=!1!==d.options.animation&&!d.isHidden&&(1<Math.abs(a-k.x)||1<Math.abs(c-k.y)),f=d.followPointer||1<d.len;z(k,{x:m?(2*k.x+a)/3:a,y:m?(k.y+c)/2:c,anchorX:f?void 0:m?(2*k.anchorX+e)/3:e,anchorY:f?void 0:m?
163(k.anchorY+b)/2:b});d.getLabel().attr(k);m&&(clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){d&&d.move(a,c,e,b)},32))},hide:function(a){var c=this;clearTimeout(this.hideTimer);a=u(a,this.options.hideDelay,500);this.isHidden||(this.hideTimer=f(function(){c.getLabel()[a?"fadeOut":"hide"]();c.isHidden=!0},a))},getAnchor:function(a,c){var e,b=this.chart,d=b.inverted,k=b.plotTop,m=b.plotLeft,f=0,h=0,g,n;a=q(a);e=a[0].tooltipPos;this.followPointer&&c&&(void 0===c.chartX&&(c=
164b.pointer.normalize(c)),e=[c.chartX-b.plotLeft,c.chartY-k]);e||(B(a,function(a){g=a.series.yAxis;n=a.series.xAxis;f+=a.plotX+(!d&&n?n.left-m:0);h+=(a.plotLow?(a.plotLow+a.plotHigh)/2:a.plotY)+(!d&&g?g.top-k:0)}),f/=a.length,h/=a.length,e=[d?b.plotWidth-h:f,this.shared&&!d&&1<a.length&&c?c.chartY-k:d?b.plotHeight-f:h]);return p(e,Math.round)},getPosition:function(a,c,e){var b=this.chart,d=this.distance,k={},m=b.inverted&&e.h||0,f,h=["y",b.chartHeight,c,e.plotY+b.plotTop,b.plotTop,b.plotTop+b.plotHeight],
165g=["x",b.chartWidth,a,e.plotX+b.plotLeft,b.plotLeft,b.plotLeft+b.plotWidth],n=!this.followPointer&&u(e.ttBelow,!b.inverted===!!e.negative),w=function(a,b,e,c,f,h){var r=e<c-d,g=c+d+e<b,x=c-d-e;c+=d;if(n&&g)k[a]=c;else if(!n&&r)k[a]=x;else if(r)k[a]=Math.min(h-e,0>x-m?x:x-m);else if(g)k[a]=Math.max(f,c+m+e>b?c:c+m);else return!1},l=function(a,b,e,c){var m;c<d||c>b-d?m=!1:k[a]=c<e/2?1:c>b-e/2?b-e-2:c-e/2;return m},x=function(a){var b=h;h=g;g=b;f=a},A=function(){!1!==w.apply(0,h)?!1!==l.apply(0,g)||
166f||(x(!0),A()):f?k.x=k.y=0:(x(!0),A())};(b.inverted||1<this.len)&&x();A();return k},defaultFormatter:function(a){var c=this.points||q(this),e;e=[a.tooltipFooterHeaderFormatter(c[0])];e=e.concat(a.bodyFormatter(c));e.push(a.tooltipFooterHeaderFormatter(c[0],!0));return e},refresh:function(a,c){var e,b=this.options,d=a,k,m={},f=[];e=b.formatter||this.defaultFormatter;var m=this.shared,h;b.enabled&&(clearTimeout(this.hideTimer),this.followPointer=q(d)[0].series.tooltipOptions.followPointer,k=this.getAnchor(d,
167c),c=k[0],b=k[1],!m||d.series&&d.series.noSharedTooltip?m=d.getLabelConfig():(B(d,function(a){a.setState("hover");f.push(a.getLabelConfig())}),m={x:d[0].category,y:d[0].y},m.points=f,d=d[0]),this.len=f.length,m=e.call(m,this),h=d.series,this.distance=u(h.tooltipOptions.distance,16),!1===m?this.hide():(e=this.getLabel(),this.isHidden&&e.attr({opacity:1}).show(),this.split?this.renderSplit(m,q(a)):(e.css({width:this.chart.spacingBox.width}),e.attr({text:m&&m.join?m.join(""):m}),e.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+
168u(d.colorIndex,h.colorIndex)),this.updatePosition({plotX:c,plotY:b,negative:d.negative,ttBelow:d.ttBelow,h:k[2]||0})),this.isHidden=!1))},renderSplit:function(c,f){var e=this,b=[],d=this.chart,k=d.renderer,m=!0,h=this.options,g=0,n=this.getLabel();a.isString(c)&&(c=[!1,c]);B(c.slice(0,f.length+1),function(a,c){if(!1!==a){c=f[c-1]||{isHeader:!0,plotX:f[0].plotX};var l=c.series||e,x=l.tt,A="highcharts-color-"+u(c.colorIndex,(c.series||{}).colorIndex,"none");x||(l.tt=x=k.label(null,null,null,"callout",
169null,null,h.useHTML).addClass("highcharts-tooltip-box "+A).attr({padding:h.padding,r:h.borderRadius}).add(n));x.isActive=!0;x.attr({text:a});a=x.getBBox();A=a.width+x.strokeWidth();c.isHeader?(g=a.height,A=Math.max(0,Math.min(c.plotX+d.plotLeft-A/2,d.chartWidth-A))):A=c.plotX+d.plotLeft-u(h.distance,16)-A;0>A&&(m=!1);a=(c.series&&c.series.yAxis&&c.series.yAxis.pos)+(c.plotY||0);a-=d.plotTop;b.push({target:c.isHeader?d.plotHeight+g:a,rank:c.isHeader?1:0,size:l.tt.getBBox().height+1,point:c,x:A,tt:x})}});
170this.cleanSplit();a.distribute(b,d.plotHeight+g);B(b,function(a){var b=a.point,e=b.series;a.tt.attr({visibility:void 0===a.pos?"hidden":"inherit",x:m||b.isHeader?a.x:b.plotX+d.plotLeft+u(h.distance,16),y:a.pos+d.plotTop,anchorX:b.isHeader?b.plotX+d.plotLeft:b.plotX+e.xAxis.pos,anchorY:b.isHeader?a.pos+d.plotTop-15:b.plotY+e.yAxis.pos})})},updatePosition:function(a){var c=this.chart,e=this.getLabel(),e=(this.options.positioner||this.getPosition).call(this,e.width,e.height,a);this.move(Math.round(e.x),
171Math.round(e.y||0),a.plotX+c.plotLeft,a.plotY+c.plotTop)},getDateFormat:function(a,c,e,b){var d=y("%m-%d %H:%M:%S.%L",c),k,m,f={millisecond:15,second:12,minute:9,hour:6,day:3},g="millisecond";for(m in h){if(a===h.week&&+y("%w",c)===e&&"00:00:00.000"===d.substr(6)){m="week";break}if(h[m]>a){m=g;break}if(f[m]&&d.substr(f[m])!=="01-01 00:00:00.000".substr(f[m]))break;"week"!==m&&(g=m)}m&&(k=b[m]);return k},getXDateFormat:function(a,c,e){c=c.dateTimeLabelFormats;var b=e&&e.closestPointRange;return(b?
172this.getDateFormat(b,a.x,e.options.startOfWeek,c):c.day)||c.year},tooltipFooterHeaderFormatter:function(a,f){f=f?"footer":"header";var e=a.series,b=e.tooltipOptions,d=b.xDateFormat,k=e.xAxis,m=k&&"datetime"===k.options.type&&g(a.key),h=b[f+"Format"];m&&!d&&(d=this.getXDateFormat(a,b,k));m&&d&&B(a.point&&a.point.tooltipDateKeys||["key"],function(a){h=h.replace("{point."+a+"}","{point."+a+":"+d+"}")});return c(h,{point:a,series:e})},bodyFormatter:function(a){return p(a,function(a){var e=a.series.tooltipOptions;
173return(e[(a.point.formatPrefix||"point")+"Formatter"]||a.point.tooltipFormatter).call(a.point,e[(a.point.formatPrefix||"point")+"Format"])})}}})(H);(function(a){var y=a.addEvent,B=a.attr,z=a.charts,c=a.css,g=a.defined,p=a.each,l=a.extend,u=a.find,q=a.fireEvent,f=a.isObject,h=a.offset,n=a.pick,v=a.splat,e=a.Tooltip;a.Pointer=function(a,d){this.init(a,d)};a.Pointer.prototype={init:function(a,d){this.options=d;this.chart=a;this.runChartClick=d.chart.events&&!!d.chart.events.click;this.pinchDown=[];this.lastValidTouch=
174{};e&&(a.tooltip=new e(a,d.tooltip),this.followTouchMove=n(d.tooltip.followTouchMove,!0));this.setDOMEvents()},zoomOption:function(a){var b=this.chart,e=b.options.chart,c=e.zoomType||"",b=b.inverted;/touch/.test(a.type)&&(c=n(e.pinchType,c));this.zoomX=a=/x/.test(c);this.zoomY=c=/y/.test(c);this.zoomHor=a&&!b||c&&b;this.zoomVert=c&&!b||a&&b;this.hasZoom=a||c},normalize:function(a,d){var b;b=a.touches?a.touches.length?a.touches.item(0):a.changedTouches[0]:a;d||(this.chartPosition=d=h(this.chart.container));
175return l(a,{chartX:Math.round(b.pageX-d.left),chartY:Math.round(b.pageY-d.top)})},getCoordinates:function(a){var b={xAxis:[],yAxis:[]};p(this.chart.axes,function(d){b[d.isXAxis?"xAxis":"yAxis"].push({axis:d,value:d.toValue(a[d.horiz?"chartX":"chartY"])})});return b},findNearestKDPoint:function(a,d,e){var b;p(a,function(a){var k=!(a.noSharedTooltip&&d)&&0>a.options.findNearestPointBy.indexOf("y");a=a.searchPoint(e,k);if((k=f(a,!0))&&!(k=!f(b,!0)))var k=b.distX-a.distX,c=b.dist-a.dist,m=(a.series.group&&
176a.series.group.zIndex)-(b.series.group&&b.series.group.zIndex),k=0<(0!==k&&d?k:0!==c?c:0!==m?m:b.series.index>a.series.index?-1:1);k&&(b=a)});return b},getPointFromEvent:function(a){a=a.target;for(var b;a&&!b;)b=a.point,a=a.parentNode;return b},getChartCoordinatesFromPoint:function(a,d){var b=a.series,e=b.xAxis,b=b.yAxis,c=n(a.clientX,a.plotX);if(e&&b)return d?{chartX:e.len+e.pos-c,chartY:b.len+b.pos-a.plotY}:{chartX:c+e.pos,chartY:a.plotY+b.pos}},getHoverData:function(b,d,e,c,h,g,l){var k,m=[],q=
177l&&l.isBoosting;c=!(!c||!b);l=d&&!d.stickyTracking?[d]:a.grep(e,function(a){return a.visible&&!(!h&&a.directTouch)&&n(a.options.enableMouseTracking,!0)&&a.stickyTracking});d=(k=c?b:this.findNearestKDPoint(l,h,g))&&k.series;k&&(h&&!d.noSharedTooltip?(l=a.grep(e,function(a){return a.visible&&!(!h&&a.directTouch)&&n(a.options.enableMouseTracking,!0)&&!a.noSharedTooltip}),p(l,function(a){var b=u(a.points,function(a){return a.x===k.x&&!a.isNull});f(b)&&(q&&(b=a.getPoint(b)),m.push(b))})):m.push(k));return{hoverPoint:k,
178hoverSeries:d,hoverPoints:m}},runPointActions:function(b,d){var e=this.chart,c=e.tooltip&&e.tooltip.options.enabled?e.tooltip:void 0,f=c?c.shared:!1,h=d||e.hoverPoint,g=h&&h.series||e.hoverSeries,g=this.getHoverData(h,g,e.series,!!d||g&&g.directTouch&&this.isDirectTouch,f,b,{isBoosting:e.isBoosting}),l,h=g.hoverPoint;l=g.hoverPoints;d=(g=g.hoverSeries)&&g.tooltipOptions.followPointer;f=f&&g&&!g.noSharedTooltip;if(h&&(h!==e.hoverPoint||c&&c.isHidden)){p(e.hoverPoints||[],function(b){-1===a.inArray(b,
179l)&&b.setState()});p(l||[],function(a){a.setState("hover")});if(e.hoverSeries!==g)g.onMouseOver();e.hoverPoint&&e.hoverPoint.firePointEvent("mouseOut");if(!h.series)return;h.firePointEvent("mouseOver");e.hoverPoints=l;e.hoverPoint=h;c&&c.refresh(f?l:h,b)}else d&&c&&!c.isHidden&&(h=c.getAnchor([{}],b),c.updatePosition({plotX:h[0],plotY:h[1]}));this.unDocMouseMove||(this.unDocMouseMove=y(e.container.ownerDocument,"mousemove",function(b){var d=z[a.hoverChartIndex];if(d)d.pointer.onDocumentMouseMove(b)}));
180p(e.axes,function(d){var e=n(d.crosshair.snap,!0),c=e?a.find(l,function(a){return a.series[d.coll]===d}):void 0;c||!e?d.drawCrosshair(b,c):d.hideCrosshair()})},reset:function(a,d){var b=this.chart,e=b.hoverSeries,c=b.hoverPoint,h=b.hoverPoints,f=b.tooltip,g=f&&f.shared?h:c;a&&g&&p(v(g),function(b){b.series.isCartesian&&void 0===b.plotX&&(a=!1)});if(a)f&&g&&(f.refresh(g),c&&(c.setState(c.state,!0),p(b.axes,function(a){a.crosshair&&a.drawCrosshair(null,c)})));else{if(c)c.onMouseOut();h&&p(h,function(a){a.setState()});
181if(e)e.onMouseOut();f&&f.hide(d);this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove());p(b.axes,function(a){a.hideCrosshair()});this.hoverX=b.hoverPoints=b.hoverPoint=null}},scaleGroups:function(a,d){var b=this.chart,e;p(b.series,function(c){e=a||c.getPlotBox();c.xAxis&&c.xAxis.zoomEnabled&&c.group&&(c.group.attr(e),c.markerGroup&&(c.markerGroup.attr(e),c.markerGroup.clip(d?b.clipRect:null)),c.dataLabelsGroup&&c.dataLabelsGroup.attr(e))});b.clipRect.attr(d||b.clipBox)},dragStart:function(a){var b=
182this.chart;b.mouseIsDown=a.type;b.cancelClick=!1;b.mouseDownX=this.mouseDownX=a.chartX;b.mouseDownY=this.mouseDownY=a.chartY},drag:function(a){var b=this.chart,e=b.options.chart,c=a.chartX,h=a.chartY,f=this.zoomHor,g=this.zoomVert,l=b.plotLeft,n=b.plotTop,q=b.plotWidth,x=b.plotHeight,A,D=this.selectionMarker,p=this.mouseDownX,r=this.mouseDownY,t=e.panKey&&a[e.panKey+"Key"];D&&D.touch||(c<l?c=l:c>l+q&&(c=l+q),h<n?h=n:h>n+x&&(h=n+x),this.hasDragged=Math.sqrt(Math.pow(p-c,2)+Math.pow(r-h,2)),10<this.hasDragged&&
183(A=b.isInsidePlot(p-l,r-n),b.hasCartesianSeries&&(this.zoomX||this.zoomY)&&A&&!t&&!D&&(this.selectionMarker=D=b.renderer.rect(l,n,f?1:q,g?1:x,0).attr({"class":"highcharts-selection-marker",zIndex:7}).add()),D&&f&&(c-=p,D.attr({width:Math.abs(c),x:(0<c?0:c)+p})),D&&g&&(c=h-r,D.attr({height:Math.abs(c),y:(0<c?0:c)+r})),A&&!D&&e.panning&&b.pan(a,e.panning)))},drop:function(a){var b=this,e=this.chart,h=this.hasPinched;if(this.selectionMarker){var f={originalEvent:a,xAxis:[],yAxis:[]},n=this.selectionMarker,
184E=n.attr?n.attr("x"):n.x,u=n.attr?n.attr("y"):n.y,w=n.attr?n.attr("width"):n.width,v=n.attr?n.attr("height"):n.height,x;if(this.hasDragged||h)p(e.axes,function(d){if(d.zoomEnabled&&g(d.min)&&(h||b[{xAxis:"zoomX",yAxis:"zoomY"}[d.coll]])){var e=d.horiz,c="touchend"===a.type?d.minPixelPadding:0,k=d.toValue((e?E:u)+c),e=d.toValue((e?E+w:u+v)-c);f[d.coll].push({axis:d,min:Math.min(k,e),max:Math.max(k,e)});x=!0}}),x&&q(e,"selection",f,function(a){e.zoom(l(a,h?{animation:!1}:null))});this.selectionMarker=
185this.selectionMarker.destroy();h&&this.scaleGroups()}e&&(c(e.container,{cursor:e._cursor}),e.cancelClick=10<this.hasDragged,e.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},onContainerMouseDown:function(a){a=this.normalize(a);this.zoomOption(a);a.preventDefault&&a.preventDefault();this.dragStart(a)},onDocumentMouseUp:function(b){z[a.hoverChartIndex]&&z[a.hoverChartIndex].pointer.drop(b)},onDocumentMouseMove:function(a){var b=this.chart,e=this.chartPosition;a=this.normalize(a,e);
186!e||this.inClass(a.target,"highcharts-tracker")||b.isInsidePlot(a.chartX-b.plotLeft,a.chartY-b.plotTop)||this.reset()},onContainerMouseLeave:function(b){var d=z[a.hoverChartIndex];d&&(b.relatedTarget||b.toElement)&&(d.pointer.reset(),d.pointer.chartPosition=null)},onContainerMouseMove:function(b){var d=this.chart;g(a.hoverChartIndex)&&z[a.hoverChartIndex]&&z[a.hoverChartIndex].mouseIsDown||(a.hoverChartIndex=d.index);b=this.normalize(b);b.returnValue=!1;"mousedown"===d.mouseIsDown&&this.drag(b);!this.inClass(b.target,
187"highcharts-tracker")&&!d.isInsidePlot(b.chartX-d.plotLeft,b.chartY-d.plotTop)||d.openMenu||this.runPointActions(b)},inClass:function(a,d){for(var b;a;){if(b=B(a,"class")){if(-1!==b.indexOf(d))return!0;if(-1!==b.indexOf("highcharts-container"))return!1}a=a.parentNode}},onTrackerMouseOut:function(a){var b=this.chart.hoverSeries;a=a.relatedTarget||a.toElement;this.isDirectTouch=!1;if(!(!b||!a||b.stickyTracking||this.inClass(a,"highcharts-tooltip")||this.inClass(a,"highcharts-series-"+b.index)&&this.inClass(a,
188"highcharts-tracker")))b.onMouseOut()},onContainerClick:function(a){var b=this.chart,e=b.hoverPoint,c=b.plotLeft,h=b.plotTop;a=this.normalize(a);b.cancelClick||(e&&this.inClass(a.target,"highcharts-tracker")?(q(e.series,"click",l(a,{point:e})),b.hoverPoint&&e.firePointEvent("click",a)):(l(a,this.getCoordinates(a)),b.isInsidePlot(a.chartX-c,a.chartY-h)&&q(b,"click",a)))},setDOMEvents:function(){var b=this,d=b.chart.container,e=d.ownerDocument;d.onmousedown=function(a){b.onContainerMouseDown(a)};d.onmousemove=
189function(a){b.onContainerMouseMove(a)};d.onclick=function(a){b.onContainerClick(a)};this.unbindContainerMouseLeave=y(d,"mouseleave",b.onContainerMouseLeave);a.unbindDocumentMouseUp||(a.unbindDocumentMouseUp=y(e,"mouseup",b.onDocumentMouseUp));a.hasTouch&&(d.ontouchstart=function(a){b.onContainerTouchStart(a)},d.ontouchmove=function(a){b.onContainerTouchMove(a)},a.unbindDocumentTouchEnd||(a.unbindDocumentTouchEnd=y(e,"touchend",b.onDocumentTouchEnd)))},destroy:function(){var b=this;b.unDocMouseMove&&
190b.unDocMouseMove();this.unbindContainerMouseLeave();a.chartCount||(a.unbindDocumentMouseUp&&(a.unbindDocumentMouseUp=a.unbindDocumentMouseUp()),a.unbindDocumentTouchEnd&&(a.unbindDocumentTouchEnd=a.unbindDocumentTouchEnd()));clearInterval(b.tooltipTimeout);a.objectEach(b,function(a,e){b[e]=null})}}})(H);(function(a){var y=a.charts,B=a.each,z=a.extend,c=a.map,g=a.noop,p=a.pick;z(a.Pointer.prototype,{pinchTranslate:function(a,c,g,f,h,n){this.zoomHor&&this.pinchTranslateDirection(!0,a,c,g,f,h,n);this.zoomVert&&
191this.pinchTranslateDirection(!1,a,c,g,f,h,n)},pinchTranslateDirection:function(a,c,g,f,h,n,p,e){var b=this.chart,d=a?"x":"y",k=a?"X":"Y",m="chart"+k,l=a?"width":"height",q=b["plot"+(a?"Left":"Top")],E,K,w=e||1,u=b.inverted,x=b.bounds[a?"h":"v"],A=1===c.length,D=c[0][m],J=g[0][m],r=!A&&c[1][m],t=!A&&g[1][m],v;g=function(){!A&&20<Math.abs(D-r)&&(w=e||Math.abs(J-t)/Math.abs(D-r));K=(q-J)/w+D;E=b["plot"+(a?"Width":"Height")]/w};g();c=K;c<x.min?(c=x.min,v=!0):c+E>x.max&&(c=x.max-E,v=!0);v?(J-=.8*(J-p[d][0]),
192A||(t-=.8*(t-p[d][1])),g()):p[d]=[J,t];u||(n[d]=K-q,n[l]=E);n=u?1/w:w;h[l]=E;h[d]=c;f[u?a?"scaleY":"scaleX":"scale"+k]=w;f["translate"+k]=n*q+(J-n*D)},pinch:function(a){var l=this,q=l.chart,f=l.pinchDown,h=a.touches,n=h.length,v=l.lastValidTouch,e=l.hasZoom,b=l.selectionMarker,d={},k=1===n&&(l.inClass(a.target,"highcharts-tracker")&&q.runTrackerClick||l.runChartClick),m={};1<n&&(l.initiated=!0);e&&l.initiated&&!k&&a.preventDefault();c(h,function(a){return l.normalize(a)});"touchstart"===a.type?(B(h,
193function(a,b){f[b]={chartX:a.chartX,chartY:a.chartY}}),v.x=[f[0].chartX,f[1]&&f[1].chartX],v.y=[f[0].chartY,f[1]&&f[1].chartY],B(q.axes,function(a){if(a.zoomEnabled){var b=q.bounds[a.horiz?"h":"v"],d=a.minPixelPadding,e=a.toPixels(p(a.options.min,a.dataMin)),c=a.toPixels(p(a.options.max,a.dataMax)),k=Math.max(e,c);b.min=Math.min(a.pos,Math.min(e,c)-d);b.max=Math.max(a.pos+a.len,k+d)}}),l.res=!0):l.followTouchMove&&1===n?this.runPointActions(l.normalize(a)):f.length&&(b||(l.selectionMarker=b=z({destroy:g,
194touch:!0},q.plotBox)),l.pinchTranslate(f,h,d,b,m,v),l.hasPinched=e,l.scaleGroups(d,m),l.res&&(l.res=!1,this.reset(!1,0)))},touch:function(c,g){var l=this.chart,f,h;if(l.index!==a.hoverChartIndex)this.onContainerMouseLeave({relatedTarget:!0});a.hoverChartIndex=l.index;1===c.touches.length?(c=this.normalize(c),(h=l.isInsidePlot(c.chartX-l.plotLeft,c.chartY-l.plotTop))&&!l.openMenu?(g&&this.runPointActions(c),"touchmove"===c.type&&(g=this.pinchDown,f=g[0]?4<=Math.sqrt(Math.pow(g[0].chartX-c.chartX,2)+
195Math.pow(g[0].chartY-c.chartY,2)):!1),p(f,!0)&&this.pinch(c)):g&&this.reset()):2===c.touches.length&&this.pinch(c)},onContainerTouchStart:function(a){this.zoomOption(a);this.touch(a,!0)},onContainerTouchMove:function(a){this.touch(a)},onDocumentTouchEnd:function(c){y[a.hoverChartIndex]&&y[a.hoverChartIndex].pointer.drop(c)}})})(H);(function(a){var y=a.addEvent,B=a.charts,z=a.css,c=a.doc,g=a.extend,p=a.noop,l=a.Pointer,u=a.removeEvent,q=a.win,f=a.wrap;if(!a.hasTouch&&(q.PointerEvent||q.MSPointerEvent)){var h=
196{},n=!!q.PointerEvent,v=function(){var b=[];b.item=function(a){return this[a]};a.objectEach(h,function(a){b.push({pageX:a.pageX,pageY:a.pageY,target:a.target})});return b},e=function(b,d,e,c){"touch"!==b.pointerType&&b.pointerType!==b.MSPOINTER_TYPE_TOUCH||!B[a.hoverChartIndex]||(c(b),c=B[a.hoverChartIndex].pointer,c[d]({type:e,target:b.currentTarget,preventDefault:p,touches:v()}))};g(l.prototype,{onContainerPointerDown:function(a){e(a,"onContainerTouchStart","touchstart",function(a){h[a.pointerId]=
197{pageX:a.pageX,pageY:a.pageY,target:a.currentTarget}})},onContainerPointerMove:function(a){e(a,"onContainerTouchMove","touchmove",function(a){h[a.pointerId]={pageX:a.pageX,pageY:a.pageY};h[a.pointerId].target||(h[a.pointerId].target=a.currentTarget)})},onDocumentPointerUp:function(a){e(a,"onDocumentTouchEnd","touchend",function(a){delete h[a.pointerId]})},batchMSEvents:function(a){a(this.chart.container,n?"pointerdown":"MSPointerDown",this.onContainerPointerDown);a(this.chart.container,n?"pointermove":
198"MSPointerMove",this.onContainerPointerMove);a(c,n?"pointerup":"MSPointerUp",this.onDocumentPointerUp)}});f(l.prototype,"init",function(a,d,e){a.call(this,d,e);this.hasZoom&&z(d.container,{"-ms-touch-action":"none","touch-action":"none"})});f(l.prototype,"setDOMEvents",function(a){a.apply(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(y)});f(l.prototype,"destroy",function(a){this.batchMSEvents(u);a.call(this)})}})(H);(function(a){var y=a.addEvent,B=a.css,z=a.discardElement,c=a.defined,
199g=a.each,p=a.isFirefox,l=a.marginNames,u=a.merge,q=a.pick,f=a.setAnimation,h=a.stableSort,n=a.win,v=a.wrap;a.Legend=function(a,b){this.init(a,b)};a.Legend.prototype={init:function(a,b){this.chart=a;this.setOptions(b);b.enabled&&(this.render(),y(this.chart,"endResize",function(){this.legend.positionCheckboxes()}))},setOptions:function(a){var b=q(a.padding,8);this.options=a;this.itemMarginTop=a.itemMarginTop||0;this.padding=b;this.initialItemY=b-5;this.itemHeight=this.maxItemWidth=0;this.symbolWidth=
200q(a.symbolWidth,16);this.pages=[]},update:function(a,b){var d=this.chart;this.setOptions(u(!0,this.options,a));this.destroy();d.isDirtyLegend=d.isDirtyBox=!0;q(b,!0)&&d.redraw()},colorizeItem:function(a,b){a.legendGroup[b?"removeClass":"addClass"]("highcharts-legend-item-hidden")},positionItem:function(a){var b=this.options,d=b.symbolPadding,b=!b.rtl,e=a._legendItemPos,c=e[0],e=e[1],h=a.checkbox;(a=a.legendGroup)&&a.element&&a.translate(b?c:this.legendWidth-c-2*d-4,e);h&&(h.x=c,h.y=e)},destroyItem:function(a){var b=
201a.checkbox;g(["legendItem","legendLine","legendSymbol","legendGroup"],function(b){a[b]&&(a[b]=a[b].destroy())});b&&z(a.checkbox)},destroy:function(){function a(a){this[a]&&(this[a]=this[a].destroy())}g(this.getAllItems(),function(b){g(["legendItem","legendGroup"],a,b)});g("clipRect up down pager nav box title group".split(" "),a,this);this.display=null},positionCheckboxes:function(){var a=this.group&&this.group.alignAttr,b,d=this.clipHeight||this.legendHeight,c=this.titleHeight;a&&(b=a.translateY,
202g(this.allItems,function(e){var k=e.checkbox,h;k&&(h=b+c+k.y+(this.scrollOffset||0)+3,B(k,{left:a.translateX+e.checkboxOffset+k.x-20+"px",top:h+"px",display:h>b-6&&h<b+d-6?"":"none"}))},this))},renderTitle:function(){var a=this.options,b=this.padding,d=a.title,c=0;d.text&&(this.title||(this.title=this.chart.renderer.label(d.text,b-3,b-4,null,null,null,a.useHTML,null,"legend-title").attr({zIndex:1}).add(this.group)),a=this.title.getBBox(),c=a.height,this.offsetWidth=a.width,this.contentGroup.attr({translateY:c}));
203this.titleHeight=c},setText:function(e){var b=this.options;e.legendItem.attr({text:b.labelFormat?a.format(b.labelFormat,e):b.labelFormatter.call(e)})},renderItem:function(a){var b=this.chart,d=b.renderer,e=this.options,c="horizontal"===e.layout,h=this.symbolWidth,f=e.symbolPadding,g=this.padding,l=c?q(e.itemDistance,20):0,n=!e.rtl,p=e.width,x=e.itemMarginBottom||0,A=this.itemMarginTop,D=a.legendItem,J=!a.series,r=!J&&a.series.drawLegendSymbol?a.series:a,t=r.options,v=this.createCheckboxForItem&&t&&
204t.showCheckbox,t=h+f+l+(v?20:0),u=e.useHTML,C=a.options.className;D||(a.legendGroup=d.g("legend-item").addClass("highcharts-"+r.type+"-series highcharts-color-"+a.colorIndex+(C?" "+C:"")+(J?" highcharts-series-"+a.index:"")).attr({zIndex:1}).add(this.scrollGroup),a.legendItem=D=d.text("",n?h+f:-f,this.baseline||0,u).attr({align:n?"left":"right",zIndex:2}).add(a.legendGroup),this.baseline||(this.fontMetrics=d.fontMetrics(12,D),this.baseline=this.fontMetrics.f+3+A,D.attr("y",this.baseline)),this.symbolHeight=
205e.symbolHeight||this.fontMetrics.f,r.drawLegendSymbol(this,a),this.setItemEvents&&this.setItemEvents(a,D,u),v&&this.createCheckboxForItem(a));this.colorizeItem(a,a.visible);D.css({width:(e.itemWidth||e.width||b.spacingBox.width)-t});this.setText(a);d=D.getBBox();h=a.checkboxOffset=e.itemWidth||a.legendItemWidth||d.width+t;this.itemHeight=d=Math.round(a.legendItemHeight||d.height||this.symbolHeight);c&&this.itemX-g+h>(p||b.spacingBox.width-2*g-e.x)&&(this.itemX=g,this.itemY+=A+this.lastLineHeight+
206x,this.lastLineHeight=0);this.maxItemWidth=Math.max(this.maxItemWidth,h);this.lastItemY=A+this.itemY+x;this.lastLineHeight=Math.max(d,this.lastLineHeight);a._legendItemPos=[this.itemX,this.itemY];c?this.itemX+=h:(this.itemY+=A+d+x,this.lastLineHeight=d);this.offsetWidth=p||Math.max((c?this.itemX-g-(a.checkbox?0:l):h)+g,this.offsetWidth)},getAllItems:function(){var a=[];g(this.chart.series,function(b){var d=b&&b.options;b&&q(d.showInLegend,c(d.linkedTo)?!1:void 0,!0)&&(a=a.concat(b.legendItems||("point"===
207d.legendType?b.data:b)))});return a},adjustMargins:function(a,b){var d=this.chart,e=this.options,h=e.align.charAt(0)+e.verticalAlign.charAt(0)+e.layout.charAt(0);e.floating||g([/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/],function(k,f){k.test(h)&&!c(a[f])&&(d[l[f]]=Math.max(d[l[f]],d.legend[(f+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][f]*e[f%2?"x":"y"]+q(e.margin,12)+b[f]))})},render:function(){var a=this,b=a.chart,d=b.renderer,c=a.group,f,l,n,q,p=a.box,w=a.options,v=a.padding;
208a.itemX=v;a.itemY=a.initialItemY;a.offsetWidth=0;a.lastItemY=0;c||(a.group=c=d.g("legend").attr({zIndex:7}).add(),a.contentGroup=d.g().attr({zIndex:1}).add(c),a.scrollGroup=d.g().add(a.contentGroup));a.renderTitle();f=a.getAllItems();h(f,function(a,b){return(a.options&&a.options.legendIndex||0)-(b.options&&b.options.legendIndex||0)});w.reversed&&f.reverse();a.allItems=f;a.display=l=!!f.length;a.lastLineHeight=0;g(f,function(b){a.renderItem(b)});n=(w.width||a.offsetWidth)+v;q=a.lastItemY+a.lastLineHeight+
209a.titleHeight;q=a.handleOverflow(q);q+=v;p||(a.box=p=d.rect().addClass("highcharts-legend-box").attr({r:w.borderRadius}).add(c),p.isNew=!0);0<n&&0<q&&(p[p.isNew?"attr":"animate"](p.crisp.call({},{x:0,y:0,width:n,height:q},p.strokeWidth())),p.isNew=!1);p[l?"show":"hide"]();"none"===c.getStyle("display")&&(n=q=0);a.legendWidth=n;a.legendHeight=q;g(f,function(b){a.positionItem(b)});l&&c.align(u(w,{width:n,height:q}),!0,"spacingBox");b.isResizing||this.positionCheckboxes()},handleOverflow:function(a){var b=
210this,d=this.chart,e=d.renderer,c=this.options,h=c.y,f=this.padding,d=d.spacingBox.height+("top"===c.verticalAlign?-h:h)-f,h=c.maxHeight,l,n=this.clipRect,w=c.navigation,p=q(w.animation,!0),x=w.arrowSize||12,A=this.nav,D=this.pages,J,r=this.allItems,t=function(a){"number"===typeof a?n.attr({height:a}):n&&(b.clipRect=n.destroy(),b.contentGroup.clip());b.contentGroup.div&&(b.contentGroup.div.style.clip=a?"rect("+f+"px,9999px,"+(f+a)+"px,0)":"auto")};"horizontal"!==c.layout||"middle"===c.verticalAlign||
211c.floating||(d/=2);h&&(d=Math.min(d,h));D.length=0;a>d&&!1!==w.enabled?(this.clipHeight=l=Math.max(d-20-this.titleHeight-f,0),this.currentPage=q(this.currentPage,1),this.fullHeight=a,g(r,function(a,b){var d=a._legendItemPos[1];a=Math.round(a.legendItem.getBBox().height);var e=D.length;if(!e||d-D[e-1]>l&&(J||d)!==D[e-1])D.push(J||d),e++;b===r.length-1&&d+a-D[e-1]>l&&D.push(d);d!==J&&(J=d)}),n||(n=b.clipRect=e.clipRect(0,f,9999,0),b.contentGroup.clip(n)),t(l),A||(this.nav=A=e.g().attr({zIndex:1}).add(this.group),
212this.up=e.symbol("triangle",0,0,x,x).on("click",function(){b.scroll(-1,p)}).add(A),this.pager=e.text("",15,10).addClass("highcharts-legend-navigation").add(A),this.down=e.symbol("triangle-down",0,0,x,x).on("click",function(){b.scroll(1,p)}).add(A)),b.scroll(0),a=d):A&&(t(),this.nav=A.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0);return a},scroll:function(a,b){var d=this.pages,e=d.length;a=this.currentPage+a;var c=this.clipHeight,h=this.pager,g=this.padding;a>e&&(a=e);0<a&&(void 0!==
213b&&f(b,this.chart),this.nav.attr({translateX:g,translateY:c+this.padding+7+this.titleHeight,visibility:"visible"}),this.up.attr({"class":1===a?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"}),h.attr({text:a+"/"+e}),this.down.attr({x:18+this.pager.getBBox().width,"class":a===e?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"}),this.scrollOffset=-d[a-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=a,this.positionCheckboxes())}};
214a.LegendSymbolMixin={drawRectangle:function(a,b){var d=a.symbolHeight,e=a.options.squareSymbol;b.legendSymbol=this.chart.renderer.rect(e?(a.symbolWidth-d)/2:0,a.baseline-d+1,e?d:a.symbolWidth,d,q(a.options.symbolRadius,d/2)).addClass("highcharts-point").attr({zIndex:3}).add(b.legendGroup)},drawLineMarker:function(a){var b=this.options.marker,d,e=a.symbolWidth,c=a.symbolHeight;d=c/2;var h=this.chart.renderer,f=this.legendGroup;a=a.baseline-Math.round(.3*a.fontMetrics.b);this.legendLine=h.path(["M",
2150,a,"L",e,a]).addClass("highcharts-graph").attr({}).add(f);b&&!1!==b.enabled&&(d=Math.min(q(b.radius,d),d),0===this.symbol.indexOf("url")&&(b=u(b,{width:c,height:c}),d=0),this.legendSymbol=b=h.symbol(this.symbol,e/2-d,a-d,2*d,2*d,b).addClass("highcharts-point").add(f),b.isMarker=!0)}};(/Trident\/7\.0/.test(n.navigator.userAgent)||p)&&v(a.Legend.prototype,"positionItem",function(a,b){var d=this,c=function(){b._legendItemPos&&a.call(d,b)};c();setTimeout(c)})})(H);(function(a){var y=a.addEvent,B=a.animObject,
216z=a.attr,c=a.doc,g=a.Axis,p=a.createElement,l=a.defaultOptions,u=a.discardElement,q=a.charts,f=a.defined,h=a.each,n=a.extend,v=a.find,e=a.fireEvent,b=a.grep,d=a.isNumber,k=a.isObject,m=a.isString,F=a.Legend,G=a.marginNames,E=a.merge,K=a.objectEach,w=a.Pointer,L=a.pick,x=a.pInt,A=a.removeEvent,D=a.seriesTypes,J=a.splat,r=a.svg,t=a.syncTimeout,N=a.win,I=a.Chart=function(){this.getArgs.apply(this,arguments)};a.chart=function(a,b,d){return new I(a,b,d)};n(I.prototype,{callbacks:[],getArgs:function(){var a=
217[].slice.call(arguments);if(m(a[0])||a[0].nodeName)this.renderTo=a.shift();this.init(a[0],a[1])},init:function(b,d){var c,e,h=b.series,f=b.plotOptions||{};b.series=null;c=E(l,b);for(e in c.plotOptions)c.plotOptions[e].tooltip=f[e]&&E(f[e].tooltip)||void 0;c.tooltip.userOptions=b.chart&&b.chart.forExport&&b.tooltip.userOptions||b.tooltip;c.series=b.series=h;this.userOptions=b;b=c.chart;e=b.events;this.margin=[];this.spacing=[];this.bounds={h:{},v:{}};this.labelCollectors=[];this.callback=d;this.isResizing=
2180;this.options=c;this.axes=[];this.series=[];this.hasCartesianSeries=b.showAxes;var k=this;k.index=q.length;q.push(k);a.chartCount++;e&&K(e,function(a,b){y(k,b,a)});k.xAxis=[];k.yAxis=[];k.pointCount=k.colorCounter=k.symbolCounter=0;k.firstRender()},initSeries:function(b){var d=this.options.chart;(d=D[b.type||d.type||d.defaultSeriesType])||a.error(17,!0);d=new d;d.init(this,b);return d},orderSeries:function(a){var b=this.series;for(a=a||0;a<b.length;a++)b[a]&&(b[a].index=a,b[a].name=b[a].name||"Series "+
219(b[a].index+1))},isInsidePlot:function(a,b,d){var c=d?b:a;a=d?a:b;return 0<=c&&c<=this.plotWidth&&0<=a&&a<=this.plotHeight},redraw:function(b){var d=this.axes,c=this.series,f=this.pointer,k=this.legend,g=this.isDirtyLegend,m,r,t=this.hasCartesianSeries,x=this.isDirtyBox,D,l=this.renderer,A=l.isHidden(),C=[];this.setResponsive&&this.setResponsive(!1);a.setAnimation(b,this);A&&this.temporaryDisplay();this.layOutTitles();for(b=c.length;b--;)if(D=c[b],D.options.stacking&&(m=!0,D.isDirty)){r=!0;break}if(r)for(b=
220c.length;b--;)D=c[b],D.options.stacking&&(D.isDirty=!0);h(c,function(a){a.isDirty&&"point"===a.options.legendType&&(a.updateTotals&&a.updateTotals(),g=!0);a.isDirtyData&&e(a,"updatedData")});g&&k.options.enabled&&(k.render(),this.isDirtyLegend=!1);m&&this.getStacks();t&&h(d,function(a){a.updateNames();a.setScale()});this.getMargins();t&&(h(d,function(a){a.isDirty&&(x=!0)}),h(d,function(a){var b=a.min+","+a.max;a.extKey!==b&&(a.extKey=b,C.push(function(){e(a,"afterSetExtremes",n(a.eventArgs,a.getExtremes()));
221delete a.eventArgs}));(x||m)&&a.redraw()}));x&&this.drawChartBox();e(this,"predraw");h(c,function(a){(x||a.isDirty)&&a.visible&&a.redraw();a.isDirtyData=!1});f&&f.reset(!0);l.draw();e(this,"redraw");e(this,"render");A&&this.temporaryDisplay(!0);h(C,function(a){a.call()})},get:function(a){function b(b){return b.id===a||b.options&&b.options.id===a}var d,c=this.series,e;d=v(this.axes,b)||v(this.series,b);for(e=0;!d&&e<c.length;e++)d=v(c[e].points||[],b);return d},getAxes:function(){var a=this,b=this.options,
222d=b.xAxis=J(b.xAxis||{}),b=b.yAxis=J(b.yAxis||{});h(d,function(a,b){a.index=b;a.isX=!0});h(b,function(a,b){a.index=b});d=d.concat(b);h(d,function(b){new g(a,b)})},getSelectedPoints:function(){var a=[];h(this.series,function(d){a=a.concat(b(d.data||[],function(a){return a.selected}))});return a},getSelectedSeries:function(){return b(this.series,function(a){return a.selected})},setTitle:function(a,b,d){var c=this,e=c.options,f;f=e.title=E(e.title,a);e=e.subtitle=E(e.subtitle,b);h([["title",a,f],["subtitle",
223b,e]],function(a,b){var d=a[0],e=c[d],h=a[1];a=a[2];e&&h&&(c[d]=e=e.destroy());a&&!e&&(c[d]=c.renderer.text(a.text,0,0,a.useHTML).attr({align:a.align,"class":"highcharts-"+d,zIndex:a.zIndex||4}).add(),c[d].update=function(a){c.setTitle(!b&&a,b&&a)})});c.layOutTitles(d)},layOutTitles:function(a){var b=0,d,c=this.renderer,e=this.spacingBox;h(["title","subtitle"],function(a){var d=this[a],h=this.options[a];a="title"===a?-3:h.verticalAlign?0:b+2;var f;d&&(f=c.fontMetrics(f,d).b,d.css({width:(h.width||
224e.width+h.widthAdjust)+"px"}).align(n({y:a+f},h),!1,"spacingBox"),h.floating||h.verticalAlign||(b=Math.ceil(b+d.getBBox(h.useHTML).height)))},this);d=this.titleOffset!==b;this.titleOffset=b;!this.isDirtyBox&&d&&(this.isDirtyBox=d,this.hasRendered&&L(a,!0)&&this.isDirtyBox&&this.redraw())},getChartSize:function(){var b=this.options.chart,d=b.width,b=b.height,c=this.renderTo;f(d)||(this.containerWidth=a.getStyle(c,"width"));f(b)||(this.containerHeight=a.getStyle(c,"height"));this.chartWidth=Math.max(0,
225d||this.containerWidth||600);this.chartHeight=Math.max(0,a.relativeLength(b,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))},temporaryDisplay:function(b){var d=this.renderTo;if(b)for(;d&&d.style;)d.hcOrigStyle&&(a.css(d,d.hcOrigStyle),delete d.hcOrigStyle),d.hcOrigDetached&&(c.body.removeChild(d),d.hcOrigDetached=!1),d=d.parentNode;else for(;d&&d.style;){c.body.contains(d)||d.parentNode||(d.hcOrigDetached=!0,c.body.appendChild(d));if("none"===a.getStyle(d,"display",!1)||d.hcOricDetached)d.hcOrigStyle=
226{display:d.style.display,height:d.style.height,overflow:d.style.overflow},b={display:"block",overflow:"hidden"},d!==this.renderTo&&(b.height=0),a.css(d,b),d.offsetWidth||d.style.setProperty("display","block","important");d=d.parentNode;if(d===c.body)break}},setClassName:function(a){this.container.className="highcharts-container "+(a||"")},getContainer:function(){var b,e=this.options,h=e.chart,f,k;b=this.renderTo;var g=a.uniqueKey(),r;b||(this.renderTo=b=h.renderTo);m(b)&&(this.renderTo=b=c.getElementById(b));
227b||a.error(13,!0);f=x(z(b,"data-highcharts-chart"));d(f)&&q[f]&&q[f].hasRendered&&q[f].destroy();z(b,"data-highcharts-chart",this.index);b.innerHTML="";h.skipClone||b.offsetWidth||this.temporaryDisplay();this.getChartSize();f=this.chartWidth;k=this.chartHeight;this.container=b=p("div",{id:g},void 0,b);this._cursor=b.style.cursor;this.renderer=new (a[h.renderer]||a.Renderer)(b,f,k,null,h.forExport,e.exporting&&e.exporting.allowHTML);this.setClassName(h.className);for(r in e.defs)this.renderer.definition(e.defs[r]);
228this.renderer.chartIndex=this.index},getMargins:function(a){var b=this.spacing,d=this.margin,c=this.titleOffset;this.resetMargins();c&&!f(d[0])&&(this.plotTop=Math.max(this.plotTop,c+this.options.title.margin+b[0]));this.legend&&this.legend.display&&this.legend.adjustMargins(d,b);this.extraMargin&&(this[this.extraMargin.type]=(this[this.extraMargin.type]||0)+this.extraMargin.value);this.adjustPlotArea&&this.adjustPlotArea();a||this.getAxisMargins()},getAxisMargins:function(){var a=this,b=a.axisOffset=
229[0,0,0,0],d=a.margin;a.hasCartesianSeries&&h(a.axes,function(a){a.visible&&a.getOffset()});h(G,function(c,e){f(d[e])||(a[c]+=b[e])});a.setChartSize()},reflow:function(b){var d=this,e=d.options.chart,h=d.renderTo,k=f(e.width)&&f(e.height),g=e.width||a.getStyle(h,"width"),e=e.height||a.getStyle(h,"height"),h=b?b.target:N;if(!k&&!d.isPrinting&&g&&e&&(h===N||h===c)){if(g!==d.containerWidth||e!==d.containerHeight)clearTimeout(d.reflowTimeout),d.reflowTimeout=t(function(){d.container&&d.setSize(void 0,
230void 0,!1)},b?100:0);d.containerWidth=g;d.containerHeight=e}},initReflow:function(){var a=this,b;b=y(N,"resize",function(b){a.reflow(b)});y(a,"destroy",b)},setSize:function(b,d,c){var f=this,k=f.renderer;f.isResizing+=1;a.setAnimation(c,f);f.oldChartHeight=f.chartHeight;f.oldChartWidth=f.chartWidth;void 0!==b&&(f.options.chart.width=b);void 0!==d&&(f.options.chart.height=d);f.getChartSize();f.setChartSize(!0);k.setSize(f.chartWidth,f.chartHeight,c);h(f.axes,function(a){a.isDirty=!0;a.setScale()});
231f.isDirtyLegend=!0;f.isDirtyBox=!0;f.layOutTitles();f.getMargins();f.redraw(c);f.oldChartHeight=null;e(f,"resize");t(function(){f&&e(f,"endResize",null,function(){--f.isResizing})},B(void 0).duration)},setChartSize:function(a){var b=this.inverted,d=this.renderer,c=this.chartWidth,e=this.chartHeight,f=this.options.chart,k=this.spacing,g=this.clipOffset,m,r,x,t;this.plotLeft=m=Math.round(this.plotLeft);this.plotTop=r=Math.round(this.plotTop);this.plotWidth=x=Math.max(0,Math.round(c-m-this.marginRight));
232this.plotHeight=t=Math.max(0,Math.round(e-r-this.marginBottom));this.plotSizeX=b?t:x;this.plotSizeY=b?x:t;this.plotBorderWidth=f.plotBorderWidth||0;this.spacingBox=d.spacingBox={x:k[3],y:k[0],width:c-k[3]-k[1],height:e-k[0]-k[2]};this.plotBox=d.plotBox={x:m,y:r,width:x,height:t};c=2*Math.floor(this.plotBorderWidth/2);b=Math.ceil(Math.max(c,g[3])/2);d=Math.ceil(Math.max(c,g[0])/2);this.clipBox={x:b,y:d,width:Math.floor(this.plotSizeX-Math.max(c,g[1])/2-b),height:Math.max(0,Math.floor(this.plotSizeY-
233Math.max(c,g[2])/2-d))};a||h(this.axes,function(a){a.setAxisSize();a.setAxisTranslation()})},resetMargins:function(){var a=this,b=a.options.chart;h(["margin","spacing"],function(d){var c=b[d],e=k(c)?c:[c,c,c,c];h(["Top","Right","Bottom","Left"],function(c,f){a[d][f]=L(b[d+c],e[f])})});h(G,function(b,d){a[b]=L(a.margin[d],a.spacing[d])});a.axisOffset=[0,0,0,0];a.clipOffset=[0,0,0,0]},drawChartBox:function(){var a=this.options.chart,b=this.renderer,d=this.chartWidth,c=this.chartHeight,e=this.chartBackground,
234f=this.plotBackground,h=this.plotBorder,k,g,m=this.plotLeft,r=this.plotTop,x=this.plotWidth,t=this.plotHeight,D=this.plotBox,l=this.clipRect,n=this.clipBox,A="animate";e||(this.chartBackground=e=b.rect().addClass("highcharts-background").add(),A="attr");k=g=e.strokeWidth();e[A]({x:g/2,y:g/2,width:d-g-k%2,height:c-g-k%2,r:a.borderRadius});A="animate";f||(A="attr",this.plotBackground=f=b.rect().addClass("highcharts-plot-background").add());f[A](D);l?l.animate({width:n.width,height:n.height}):this.clipRect=
235b.clipRect(n);A="animate";h||(A="attr",this.plotBorder=h=b.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add());h[A](h.crisp({x:m,y:r,width:x,height:t},-h.strokeWidth()));this.isDirtyBox=!1},propFromSeries:function(){var a=this,b=a.options.chart,d,c=a.options.series,e,f;h(["inverted","angular","polar"],function(h){d=D[b.type||b.defaultSeriesType];f=b[h]||d&&d.prototype[h];for(e=c&&c.length;!f&&e--;)(d=D[c[e].type])&&d.prototype[h]&&(f=!0);a[h]=f})},linkSeries:function(){var a=this,b=
236a.series;h(b,function(a){a.linkedSeries.length=0});h(b,function(b){var d=b.options.linkedTo;m(d)&&(d=":previous"===d?a.series[b.index-1]:a.get(d))&&d.linkedParent!==b&&(d.linkedSeries.push(b),b.linkedParent=d,b.visible=L(b.options.visible,d.options.visible,b.visible))})},renderSeries:function(){h(this.series,function(a){a.translate();a.render()})},renderLabels:function(){var a=this,b=a.options.labels;b.items&&h(b.items,function(d){var c=n(b.style,d.style),e=x(c.left)+a.plotLeft,f=x(c.top)+a.plotTop+
23712;delete c.left;delete c.top;a.renderer.text(d.html,e,f).attr({zIndex:2}).css(c).add()})},render:function(){var a=this.axes,b=this.renderer,d=this.options,c,e,f;this.setTitle();this.legend=new F(this,d.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();d=this.plotWidth;c=this.plotHeight=Math.max(this.plotHeight-21,0);h(a,function(a){a.setScale()});this.getAxisMargins();e=1.1<d/this.plotWidth;f=1.05<c/this.plotHeight;if(e||f)h(a,function(a){(a.horiz&&e||!a.horiz&&f)&&
238a.setTickInterval(!0)}),this.getMargins();this.drawChartBox();this.hasCartesianSeries&&h(a,function(a){a.visible&&a.render()});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},addCredits:function(a){var b=this;a=E(!0,this.options.credits,a);a.enabled&&!this.credits&&(this.credits=this.renderer.text(a.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",
239function(){a.href&&(N.location.href=a.href)}).attr({align:a.position.align,zIndex:8}).add().align(a.position),this.credits.update=function(a){b.credits=b.credits.destroy();b.addCredits(a)})},destroy:function(){var b=this,d=b.axes,c=b.series,f=b.container,k,g=f&&f.parentNode;e(b,"destroy");b.renderer.forExport?a.erase(q,b):q[b.index]=void 0;a.chartCount--;b.renderTo.removeAttribute("data-highcharts-chart");A(b);for(k=d.length;k--;)d[k]=d[k].destroy();this.scroller&&this.scroller.destroy&&this.scroller.destroy();
240for(k=c.length;k--;)c[k]=c[k].destroy();h("title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" "),function(a){var d=b[a];d&&d.destroy&&(b[a]=d.destroy())});f&&(f.innerHTML="",A(f),g&&u(f));K(b,function(a,d){delete b[d]})},isReadyToRender:function(){var a=this;return r||N!=N.top||"complete"===c.readyState?!0:(c.attachEvent("onreadystatechange",function(){c.detachEvent("onreadystatechange",
241a.firstRender);"complete"===c.readyState&&a.firstRender()}),!1)},firstRender:function(){var a=this,b=a.options;if(a.isReadyToRender()){a.getContainer();e(a,"init");a.resetMargins();a.setChartSize();a.propFromSeries();a.getAxes();h(b.series||[],function(b){a.initSeries(b)});a.linkSeries();e(a,"beforeRender");w&&(a.pointer=new w(a,b));a.render();if(!a.renderer.imgCount&&a.onload)a.onload();a.temporaryDisplay(!0)}},onload:function(){h([this.callback].concat(this.callbacks),function(a){a&&void 0!==this.index&&
242a.apply(this,[this])},this);e(this,"load");e(this,"render");f(this.index)&&!1!==this.options.chart.reflow&&this.initReflow();this.onload=null}})})(H);(function(a){var y,B=a.each,z=a.extend,c=a.erase,g=a.fireEvent,p=a.format,l=a.isArray,u=a.isNumber,q=a.pick,f=a.removeEvent;a.Point=y=function(){};a.Point.prototype={init:function(a,c,f){var e=a.chart.options.chart.colorCount;this.series=a;this.applyOptions(c,f);a.options.colorByPoint?(c=a.colorCounter,a.colorCounter++,a.colorCounter===e&&(a.colorCounter=
2430)):c=a.colorIndex;this.colorIndex=q(this.colorIndex,c);a.chart.pointCount++;return this},applyOptions:function(a,c){var f=this.series,e=f.options.pointValKey||f.pointValKey;a=y.prototype.optionsToObject.call(this,a);z(this,a);this.options=this.options?z(this.options,a):a;a.group&&delete this.group;e&&(this.y=this[e]);this.isNull=q(this.isValid&&!this.isValid(),null===this.x||!u(this.y,!0));this.selected&&(this.state="select");"name"in this&&void 0===c&&f.xAxis&&f.xAxis.hasNames&&(this.x=f.xAxis.nameToX(this));
244void 0===this.x&&f&&(this.x=void 0===c?f.autoIncrement(this):c);return this},optionsToObject:function(a){var c={},f=this.series,e=f.options.keys,b=e||f.pointArrayMap||["y"],d=b.length,k=0,h=0;if(u(a)||null===a)c[b[0]]=a;else if(l(a))for(!e&&a.length>d&&(f=typeof a[0],"string"===f?c.name=a[0]:"number"===f&&(c.x=a[0]),k++);h<d;)e&&void 0===a[k]||(c[b[h]]=a[k]),k++,h++;else"object"===typeof a&&(c=a,a.dataLabels&&(f._hasPointLabels=!0),a.marker&&(f._hasPointMarkers=!0));return c},getClassName:function(){return"highcharts-point"+
245(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(void 0!==this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")},getZone:function(){var a=this.series,c=a.zones,a=a.zoneAxis||"y",f=0,e;for(e=c[f];this[a]>=e.value;)e=c[++f];e&&e.color&&!this.options.color&&(this.color=
246e.color);return e},destroy:function(){var a=this.series.chart,g=a.hoverPoints,l;a.pointCount--;g&&(this.setState(),c(g,this),g.length||(a.hoverPoints=null));if(this===a.hoverPoint)this.onMouseOut();if(this.graphic||this.dataLabel)f(this),this.destroyElements();this.legendItem&&a.legend.destroyItem(this);for(l in this)this[l]=null},destroyElements:function(){for(var a=["graphic","dataLabel","dataLabelUpper","connector","shadowGroup"],c,f=6;f--;)c=a[f],this[c]&&(this[c]=this[c].destroy())},getLabelConfig:function(){return{x:this.category,
247y: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}},tooltipFormatter:function(a){var c=this.series,f=c.tooltipOptions,e=q(f.valueDecimals,""),b=f.valuePrefix||"",d=f.valueSuffix||"";B(c.pointArrayMap||["y"],function(c){c="{point."+c;if(b||d)a=a.replace(c+"}",b+c+"}"+d);a=a.replace(c+"}",c+":,."+e+"f}")});return p(a,{point:this,series:this.series})},firePointEvent:function(a,c,
248f){var e=this,b=this.series.options;(b.point.events[a]||e.options&&e.options.events&&e.options.events[a])&&this.importEvents();"click"===a&&b.allowPointSelect&&(f=function(a){e.select&&e.select(null,a.ctrlKey||a.metaKey||a.shiftKey)});g(this,a,c,f)},visible:!0}})(H);(function(a){var y=a.addEvent,B=a.animObject,z=a.arrayMax,c=a.arrayMin,g=a.correctFloat,p=a.Date,l=a.defaultOptions,u=a.defined,q=a.each,f=a.erase,h=a.extend,n=a.fireEvent,v=a.grep,e=a.isArray,b=a.isNumber,d=a.isString,k=a.merge,m=a.objectEach,
249F=a.pick,G=a.removeEvent,E=a.splat,K=a.SVGElement,w=a.syncTimeout,L=a.win;a.Series=a.seriesType("line",null,{allowPointSelect:!1,showCheckbox:!1,animation:{duration:1E3},events:{},marker:{radius:4,states:{hover:{animation:{duration:50},enabled:!0,radiusPlus:2}}},point:{events:{}},dataLabels:{align:"center",formatter:function(){return null===this.y?"":a.numberFormat(this.y,-1)},verticalAlign:"bottom",x:0,y:0,padding:5},cropThreshold:300,pointRange:0,softThreshold:!0,states:{hover:{animation:{duration:50},
250lineWidthPlus:1,marker:{},halo:{size:10}},select:{marker:{}}},stickyTracking:!0,turboThreshold:1E3,findNearestPointBy:"x"},{isCartesian:!0,pointClass:a.Point,sorted:!0,requireSorting:!0,directTouch:!1,axisTypes:["xAxis","yAxis"],colorCounter:0,parallelArrays:["x","y"],coll:"series",init:function(a,b){var d=this,c,e=a.series,f;d.chart=a;d.options=b=d.setOptions(b);d.linkedSeries=[];d.bindAxes();h(d,{name:b.name,state:"",visible:!1!==b.visible,selected:!0===b.selected});c=b.events;m(c,function(a,b){y(d,
251b,a)});if(c&&c.click||b.point&&b.point.events&&b.point.events.click||b.allowPointSelect)a.runTrackerClick=!0;d.getColor();d.getSymbol();q(d.parallelArrays,function(a){d[a+"Data"]=[]});d.setData(b.data,!1);d.isCartesian&&(a.hasCartesianSeries=!0);e.length&&(f=e[e.length-1]);d._i=F(f&&f._i,-1)+1;a.orderSeries(this.insert(e))},insert:function(a){var d=this.options.index,c;if(b(d)){for(c=a.length;c--;)if(d>=F(a[c].options.index,a[c]._i)){a.splice(c+1,0,this);break}-1===c&&a.unshift(this);c+=1}else a.push(this);
252return F(c,a.length-1)},bindAxes:function(){var b=this,d=b.options,c=b.chart,e;q(b.axisTypes||[],function(f){q(c[f],function(a){e=a.options;if(d[f]===e.index||void 0!==d[f]&&d[f]===e.id||void 0===d[f]&&0===e.index)b.insert(a.series),b[f]=a,a.isDirty=!0});b[f]||b.optionalAxis===f||a.error(18,!0)})},updateParallelArrays:function(a,d){var c=a.series,e=arguments,f=b(d)?function(b){var e="y"===b&&c.toYData?c.toYData(a):a[b];c[b+"Data"][d]=e}:function(a){Array.prototype[d].apply(c[a+"Data"],Array.prototype.slice.call(e,
2532))};q(c.parallelArrays,f)},autoIncrement:function(){var a=this.options,b=this.xIncrement,d,c=a.pointIntervalUnit,b=F(b,a.pointStart,0);this.pointInterval=d=F(this.pointInterval,a.pointInterval,1);c&&(a=new p(b),"day"===c?a=+a[p.hcSetDate](a[p.hcGetDate]()+d):"month"===c?a=+a[p.hcSetMonth](a[p.hcGetMonth]()+d):"year"===c&&(a=+a[p.hcSetFullYear](a[p.hcGetFullYear]()+d)),d=a-b);this.xIncrement=b+d;return b},setOptions:function(a){var b=this.chart,d=b.options,c=d.plotOptions,e=(b.userOptions||{}).plotOptions||
254{},f=c[this.type];this.userOptions=a;b=k(f,c.series,a);this.tooltipOptions=k(l.tooltip,l.plotOptions.series&&l.plotOptions.series.tooltip,l.plotOptions[this.type].tooltip,d.tooltip.userOptions,c.series&&c.series.tooltip,c[this.type].tooltip,a.tooltip);this.stickyTracking=F(a.stickyTracking,e[this.type]&&e[this.type].stickyTracking,e.series&&e.series.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:b.stickyTracking);null===f.marker&&delete b.marker;this.zoneAxis=b.zoneAxis;a=this.zones=
255(b.zones||[]).slice();!b.negativeColor&&!b.negativeFillColor||b.zones||a.push({value:b[this.zoneAxis+"Threshold"]||b.threshold||0,className:"highcharts-negative"});a.length&&u(a[a.length-1].value)&&a.push({});return b},getCyclic:function(a,b,d){var c,e=this.chart,f=this.userOptions,k=a+"Index",h=a+"Counter",g=d?d.length:F(e.options.chart[a+"Count"],e[a+"Count"]);b||(c=F(f[k],f["_"+k]),u(c)||(e.series.length||(e[h]=0),f["_"+k]=c=e[h]%g,e[h]+=1),d&&(b=d[c]));void 0!==c&&(this[k]=c);this[a]=b},getColor:function(){this.getCyclic("color")},
256getSymbol:function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},drawLegendSymbol:a.LegendSymbolMixin.drawLineMarker,setData:function(c,f,k,h){var g=this,m=g.points,l=m&&m.length||0,x,n=g.options,D=g.chart,A=null,w=g.xAxis,p=n.turboThreshold,E=this.xData,K=this.yData,u=(x=g.pointArrayMap)&&x.length;c=c||[];x=c.length;f=F(f,!0);if(!1!==h&&x&&l===x&&!g.cropped&&!g.hasGroupedData&&g.visible)q(c,function(a,b){m[b].update&&a!==n.data[b]&&m[b].update(a,!1,null,!1)});
257else{g.xIncrement=null;g.colorCounter=0;q(this.parallelArrays,function(a){g[a+"Data"].length=0});if(p&&x>p){for(k=0;null===A&&k<x;)A=c[k],k++;if(b(A))for(k=0;k<x;k++)E[k]=this.autoIncrement(),K[k]=c[k];else if(e(A))if(u)for(k=0;k<x;k++)A=c[k],E[k]=A[0],K[k]=A.slice(1,u+1);else for(k=0;k<x;k++)A=c[k],E[k]=A[0],K[k]=A[1];else a.error(12)}else for(k=0;k<x;k++)void 0!==c[k]&&(A={series:g},g.pointClass.prototype.applyOptions.apply(A,[c[k]]),g.updateParallelArrays(A,k));K&&d(K[0])&&a.error(14,!0);g.data=
258[];g.options.data=g.userOptions.data=c;for(k=l;k--;)m[k]&&m[k].destroy&&m[k].destroy();w&&(w.minRange=w.userMinRange);g.isDirty=D.isDirtyBox=!0;g.isDirtyData=!!m;k=!1}"point"===n.legendType&&(this.processData(),this.generatePoints());f&&D.redraw(k)},processData:function(b){var d=this.xData,c=this.yData,e=d.length,f;f=0;var k,h,g=this.xAxis,m,l=this.options;m=l.cropThreshold;var x=this.getExtremesFromAll||l.getExtremesFromAll,n=this.isCartesian,l=g&&g.val2lin,q=g&&g.isLog,w=this.requireSorting,p,E;
259if(n&&!this.isDirty&&!g.isDirty&&!this.yAxis.isDirty&&!b)return!1;g&&(b=g.getExtremes(),p=b.min,E=b.max);if(n&&this.sorted&&!x&&(!m||e>m||this.forceCrop))if(d[e-1]<p||d[0]>E)d=[],c=[];else if(d[0]<p||d[e-1]>E)f=this.cropData(this.xData,this.yData,p,E),d=f.xData,c=f.yData,f=f.start,k=!0;for(m=d.length||1;--m;)e=q?l(d[m])-l(d[m-1]):d[m]-d[m-1],0<e&&(void 0===h||e<h)?h=e:0>e&&w&&(a.error(15),w=!1);this.cropped=k;this.cropStart=f;this.processedXData=d;this.processedYData=c;this.closestPointRange=h},cropData:function(a,
260b,d,c){var e=a.length,f=0,k=e,h=F(this.cropShoulder,1),g;for(g=0;g<e;g++)if(a[g]>=d){f=Math.max(0,g-h);break}for(d=g;d<e;d++)if(a[d]>c){k=d+h;break}return{xData:a.slice(f,k),yData:b.slice(f,k),start:f,end:k}},generatePoints:function(){var a=this.options,b=a.data,d=this.data,c,e=this.processedXData,f=this.processedYData,k=this.pointClass,g=e.length,h=this.cropStart||0,m,l=this.hasGroupedData,a=a.keys,n,q=[],w;d||l||(d=[],d.length=b.length,d=this.data=d);a&&l&&(this.options.keys=!1);for(w=0;w<g;w++)m=
261h+w,l?(n=(new k).init(this,[e[w]].concat(E(f[w]))),n.dataGroup=this.groupMap[w]):(n=d[m])||void 0===b[m]||(d[m]=n=(new k).init(this,b[m],e[w])),n&&(n.index=m,q[w]=n);this.options.keys=a;if(d&&(g!==(c=d.length)||l))for(w=0;w<c;w++)w!==h||l||(w+=g),d[w]&&(d[w].destroyElements(),d[w].plotX=void 0);this.data=d;this.points=q},getExtremes:function(a){var d=this.yAxis,f=this.processedXData,k,g=[],h=0;k=this.xAxis.getExtremes();var m=k.min,l=k.max,x,n,w,q;a=a||this.stackedYData||this.processedYData||[];k=
262a.length;for(q=0;q<k;q++)if(n=f[q],w=a[q],x=(b(w,!0)||e(w))&&(!d.positiveValuesOnly||w.length||0<w),n=this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||(f[q+1]||n)>=m&&(f[q-1]||n)<=l,x&&n)if(x=w.length)for(;x--;)null!==w[x]&&(g[h++]=w[x]);else g[h++]=w;this.dataMin=c(g);this.dataMax=z(g)},translate:function(){this.processedXData||this.processData();this.generatePoints();var a=this.options,d=a.stacking,c=this.xAxis,e=c.categories,f=this.yAxis,k=this.points,h=k.length,m=!!this.modifyValue,
263l=a.pointPlacement,n="between"===l||b(l),w=a.threshold,q=a.startFromThreshold?w:0,p,E,K,v,L=Number.MAX_VALUE;"between"===l&&(l=.5);b(l)&&(l*=F(a.pointRange||c.pointRange));for(a=0;a<h;a++){var G=k[a],y=G.x,z=G.y;E=G.low;var B=d&&f.stacks[(this.negStacks&&z<(q?0:w)?"-":"")+this.stackKey],H;f.positiveValuesOnly&&null!==z&&0>=z&&(G.isNull=!0);G.plotX=p=g(Math.min(Math.max(-1E5,c.translate(y,0,0,0,1,l,"flags"===this.type)),1E5));d&&this.visible&&!G.isNull&&B&&B[y]&&(v=this.getStackIndicator(v,y,this.index),
264H=B[y],z=H.points[v.key],E=z[0],z=z[1],E===q&&v.key===B[y].base&&(E=F(w,f.min)),f.positiveValuesOnly&&0>=E&&(E=null),G.total=G.stackTotal=H.total,G.percentage=H.total&&G.y/H.total*100,G.stackY=z,H.setOffset(this.pointXOffset||0,this.barW||0));G.yBottom=u(E)?f.translate(E,0,1,0,1):null;m&&(z=this.modifyValue(z,G));G.plotY=E="number"===typeof z&&Infinity!==z?Math.min(Math.max(-1E5,f.translate(z,0,1,0,1)),1E5):void 0;G.isInside=void 0!==E&&0<=E&&E<=f.len&&0<=p&&p<=c.len;G.clientX=n?g(c.translate(y,0,
2650,0,1,l)):p;G.negative=G.y<(w||0);G.category=e&&void 0!==e[G.x]?e[G.x]:G.x;G.isNull||(void 0!==K&&(L=Math.min(L,Math.abs(p-K))),K=p);G.zone=this.zones.length&&G.getZone()}this.closestPointRangePx=L},getValidPoints:function(a,b){var d=this.chart;return v(a||this.points||[],function(a){return b&&!d.isInsidePlot(a.plotX,a.plotY,d.inverted)?!1:!a.isNull})},setClip:function(a){var b=this.chart,d=this.options,c=b.renderer,e=b.inverted,f=this.clipBox,k=f||b.clipBox,g=this.sharedClipKey||["_sharedClip",a&&
266a.duration,a&&a.easing,k.height,d.xAxis,d.yAxis].join(),h=b[g],m=b[g+"m"];h||(a&&(k.width=0,e&&(k.x=b.plotSizeX),b[g+"m"]=m=c.clipRect(e?b.plotSizeX+99:-99,e?-b.plotLeft:-b.plotTop,99,e?b.chartWidth:b.chartHeight)),b[g]=h=c.clipRect(k),h.count={length:0});a&&!h.count[this.index]&&(h.count[this.index]=!0,h.count.length+=1);!1!==d.clip&&(this.group.clip(a||f?h:b.clipRect),this.markerGroup.clip(m),this.sharedClipKey=g);a||(h.count[this.index]&&(delete h.count[this.index],--h.count.length),0===h.count.length&&
267g&&b[g]&&(f||(b[g]=b[g].destroy()),b[g+"m"]&&(b[g+"m"]=b[g+"m"].destroy())))},animate:function(a){var b=this.chart,d=B(this.options.animation),c;a?this.setClip(d):(c=this.sharedClipKey,(a=b[c])&&a.animate({width:b.plotSizeX,x:0},d),b[c+"m"]&&b[c+"m"].animate({width:b.plotSizeX+99,x:0},d),this.animate=null)},afterAnimate:function(){this.setClip();n(this,"afterAnimate");this.finishedAnimating=!0},drawPoints:function(){var a=this.points,b=this.chart,d,c,e,f,k=this.options.marker,g,h,m,l=this[this.specialGroup]||
268this.markerGroup,n,w=F(k.enabled,this.xAxis.isRadial?!0:null,this.closestPointRangePx>=2*k.radius);if(!1!==k.enabled||this._hasPointMarkers)for(d=0;d<a.length;d++)c=a[d],f=c.graphic,g=c.marker||{},h=!!c.marker,e=w&&void 0===g.enabled||g.enabled,m=c.isInside,e&&!c.isNull?(e=F(g.symbol,this.symbol),c.hasImage=0===e.indexOf("url"),n=this.markerAttribs(c,c.selected&&"select"),f?f[m?"show":"hide"](!0).animate(n):m&&(0<n.width||c.hasImage)&&(c.graphic=f=b.renderer.symbol(e,n.x,n.y,n.width,n.height,h?g:
269k).add(l)),f&&f.addClass(c.getClassName(),!0)):f&&(c.graphic=f.destroy())},markerAttribs:function(a,b){var d=this.options.marker,c=a.marker||{},e=F(c.radius,d.radius);b&&(d=d.states[b],b=c.states&&c.states[b],e=F(b&&b.radius,d&&d.radius,e+(d&&d.radiusPlus||0)));a.hasImage&&(e=0);a={x:Math.floor(a.plotX)-e,y:a.plotY-e};e&&(a.width=a.height=2*e);return a},destroy:function(){var a=this,b=a.chart,d=/AppleWebKit\/533/.test(L.navigator.userAgent),c,e,k=a.data||[],g,h;n(a,"destroy");G(a);q(a.axisTypes||
270[],function(b){(h=a[b])&&h.series&&(f(h.series,a),h.isDirty=h.forceRedraw=!0)});a.legendItem&&a.chart.legend.destroyItem(a);for(e=k.length;e--;)(g=k[e])&&g.destroy&&g.destroy();a.points=null;clearTimeout(a.animationTimeout);m(a,function(a,b){a instanceof K&&!a.survive&&(c=d&&"group"===b?"hide":"destroy",a[c]())});b.hoverSeries===a&&(b.hoverSeries=null);f(b.series,a);b.orderSeries();m(a,function(b,d){delete a[d]})},getGraphPath:function(a,b,d){var c=this,e=c.options,f=e.step,k,g=[],h=[],m;a=a||c.points;
271(k=a.reversed)&&a.reverse();(f={right:1,center:2}[f]||f&&3)&&k&&(f=4-f);!e.connectNulls||b||d||(a=this.getValidPoints(a));q(a,function(k,l){var r=k.plotX,n=k.plotY,t=a[l-1];(k.leftCliff||t&&t.rightCliff)&&!d&&(m=!0);k.isNull&&!u(b)&&0<l?m=!e.connectNulls:k.isNull&&!b?m=!0:(0===l||m?l=["M",k.plotX,k.plotY]:c.getPointSpline?l=c.getPointSpline(a,k,l):f?(l=1===f?["L",t.plotX,n]:2===f?["L",(t.plotX+r)/2,t.plotY,"L",(t.plotX+r)/2,n]:["L",r,t.plotY],l.push("L",r,n)):l=["L",r,n],h.push(k.x),f&&h.push(k.x),
272g.push.apply(g,l),m=!1)});g.xMap=h;return c.graphPath=g},drawGraph:function(){var a=this,b=(this.gappedPath||this.getGraphPath).call(this),d=[["graph","highcharts-graph"]];q(this.zones,function(a,b){d.push(["zone-graph-"+b,"highcharts-graph highcharts-zone-graph-"+b+" "+(a.className||"")])});q(d,function(d,c){c=d[0];var e=a[c];e?(e.endX=a.preventGraphAnimation?null:b.xMap,e.animate({d:b})):b.length&&(a[c]=a.chart.renderer.path(b).addClass(d[1]).attr({zIndex:1}).add(a.group));e&&(e.startX=b.xMap,e.isArea=
273b.isArea)})},applyZones:function(){var a=this,b=this.chart,d=b.renderer,c=this.zones,e,f,k=this.clips||[],g,h=this.graph,m=this.area,l=Math.max(b.chartWidth,b.chartHeight),n=this[(this.zoneAxis||"y")+"Axis"],w,p,E=b.inverted,K,u,v,L,G=!1;c.length&&(h||m)&&n&&void 0!==n.min&&(p=n.reversed,K=n.horiz,h&&h.hide(),m&&m.hide(),w=n.getExtremes(),q(c,function(c,r){e=p?K?b.plotWidth:0:K?0:n.toPixels(w.min);e=Math.min(Math.max(F(f,e),0),l);f=Math.min(Math.max(Math.round(n.toPixels(F(c.value,w.max),!0)),0),
274l);G&&(e=f=n.toPixels(w.max));u=Math.abs(e-f);v=Math.min(e,f);L=Math.max(e,f);n.isXAxis?(g={x:E?L:v,y:0,width:u,height:l},K||(g.x=b.plotHeight-g.x)):(g={x:0,y:E?L:v,width:l,height:u},K&&(g.y=b.plotWidth-g.y));k[r]?k[r].animate(g):(k[r]=d.clipRect(g),h&&a["zone-graph-"+r].clip(k[r]),m&&a["zone-area-"+r].clip(k[r]));G=c.value>w.max}),this.clips=k)},invertGroups:function(a){function b(){q(["group","markerGroup"],function(b){d[b]&&(c.renderer.isVML&&d[b].attr({width:d.yAxis.len,height:d.xAxis.len}),d[b].width=
275d.yAxis.len,d[b].height=d.xAxis.len,d[b].invert(a))})}var d=this,c=d.chart,e;d.xAxis&&(e=y(c,"resize",b),y(d,"destroy",e),b(a),d.invertGroups=b)},plotGroup:function(a,b,d,c,e){var f=this[a],k=!f;k&&(this[a]=f=this.chart.renderer.g().attr({zIndex:c||.1}).add(e));f.addClass("highcharts-"+b+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(u(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(f.hasClass("highcharts-tracker")?" highcharts-tracker":
276""),!0);f.attr({visibility:d})[k?"attr":"animate"](this.getPlotBox());return f},getPlotBox:function(){var a=this.chart,b=this.xAxis,d=this.yAxis;a.inverted&&(b=d,d=this.xAxis);return{translateX:b?b.left:a.plotLeft,translateY:d?d.top:a.plotTop,scaleX:1,scaleY:1}},render:function(){var a=this,b=a.chart,d,c=a.options,e=!!a.animate&&b.renderer.isSVG&&B(c.animation).duration,f=a.visible?"inherit":"hidden",k=c.zIndex,g=a.hasRendered,h=b.seriesGroup,m=b.inverted;d=a.plotGroup("group","series",f,k,h);a.markerGroup=
277a.plotGroup("markerGroup","markers",f,k,h);e&&a.animate(!0);d.inverted=a.isCartesian?m:!1;a.drawGraph&&(a.drawGraph(),a.applyZones());a.drawDataLabels&&a.drawDataLabels();a.visible&&a.drawPoints();a.drawTracker&&!1!==a.options.enableMouseTracking&&a.drawTracker();a.invertGroups(m);!1===c.clip||a.sharedClipKey||g||d.clip(b.clipRect);e&&a.animate();g||(a.animationTimeout=w(function(){a.afterAnimate()},e));a.isDirty=!1;a.hasRendered=!0},redraw:function(){var a=this.chart,b=this.isDirty||this.isDirtyData,
278d=this.group,c=this.xAxis,e=this.yAxis;d&&(a.inverted&&d.attr({width:a.plotWidth,height:a.plotHeight}),d.animate({translateX:F(c&&c.left,a.plotLeft),translateY:F(e&&e.top,a.plotTop)}));this.translate();this.render();b&&delete this.kdTree},kdAxisArray:["clientX","plotY"],searchPoint:function(a,b){var d=this.xAxis,c=this.yAxis,e=this.chart.inverted;return this.searchKDTree({clientX:e?d.len-a.chartY+d.pos:a.chartX-d.pos,plotY:e?c.len-a.chartX+c.pos:a.chartY-c.pos},b)},buildKDTree:function(){function a(d,
279c,e){var f,k;if(k=d&&d.length)return f=b.kdAxisArray[c%e],d.sort(function(a,b){return a[f]-b[f]}),k=Math.floor(k/2),{point:d[k],left:a(d.slice(0,k),c+1,e),right:a(d.slice(k+1),c+1,e)}}this.buildingKdTree=!0;var b=this,d=-1<b.options.findNearestPointBy.indexOf("y")?2:1;delete b.kdTree;w(function(){b.kdTree=a(b.getValidPoints(null,!b.directTouch),d,d);b.buildingKdTree=!1},b.options.kdNow?0:1)},searchKDTree:function(a,b){function d(a,b,g,h){var m=b.point,l=c.kdAxisArray[g%h],n,r,t=m;r=u(a[e])&&u(m[e])?
280Math.pow(a[e]-m[e],2):null;n=u(a[f])&&u(m[f])?Math.pow(a[f]-m[f],2):null;n=(r||0)+(n||0);m.dist=u(n)?Math.sqrt(n):Number.MAX_VALUE;m.distX=u(r)?Math.sqrt(r):Number.MAX_VALUE;l=a[l]-m[l];n=0>l?"left":"right";r=0>l?"right":"left";b[n]&&(n=d(a,b[n],g+1,h),t=n[k]<t[k]?n:m);b[r]&&Math.sqrt(l*l)<t[k]&&(a=d(a,b[r],g+1,h),t=a[k]<t[k]?a:t);return t}var c=this,e=this.kdAxisArray[0],f=this.kdAxisArray[1],k=b?"distX":"dist";b=-1<c.options.findNearestPointBy.indexOf("y")?2:1;this.kdTree||this.buildingKdTree||
281this.buildKDTree();if(this.kdTree)return d(a,this.kdTree,b,b)}})})(H);(function(a){var y=a.addEvent,B=a.Axis,z=a.createElement,c=a.css,g=a.defined,p=a.each,l=a.erase,u=a.extend,q=a.fireEvent,f=a.inArray,h=a.isNumber,n=a.isObject,v=a.isArray,e=a.merge,b=a.objectEach,d=a.pick,k=a.Point,m=a.Series,F=a.seriesTypes,G=a.setAnimation,E=a.splat;u(a.Chart.prototype,{addSeries:function(a,b,c){var e,f=this;a&&(b=d(b,!0),q(f,"addSeries",{options:a},function(){e=f.initSeries(a);f.isDirtyLegend=!0;f.linkSeries();
282b&&f.redraw(c)}));return e},addAxis:function(a,b,c,f){var k=b?"xAxis":"yAxis",g=this.options;a=e(a,{index:this[k].length,isX:b});b=new B(this,a);g[k]=E(g[k]||{});g[k].push(a);d(c,!0)&&this.redraw(f);return b},showLoading:function(a){var b=this,d=b.options,e=b.loadingDiv,f=function(){e&&c(e,{left:b.plotLeft+"px",top:b.plotTop+"px",width:b.plotWidth+"px",height:b.plotHeight+"px"})};e||(b.loadingDiv=e=z("div",{className:"highcharts-loading highcharts-loading-hidden"},null,b.container),b.loadingSpan=
283z("span",{className:"highcharts-loading-inner"},null,e),y(b,"redraw",f));e.className="highcharts-loading";b.loadingSpan.innerHTML=a||d.lang.loading;b.loadingShown=!0;f()},hideLoading:function(){var a=this.loadingDiv;a&&(a.className="highcharts-loading highcharts-loading-hidden");this.loadingShown=!1},propsRequireDirtyBox:"backgroundColor borderColor borderWidth margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow".split(" "),
284propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions tooltip".split(" "),update:function(a,c,k){var m=this,l={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle"},n=a.chart,q,r,t=[];if(n){e(!0,m.options.chart,n);"className"in n&&m.setClassName(n.className);if("inverted"in n||"polar"in n)m.propFromSeries(),q=!0;"alignTicks"in n&&(q=!0);b(n,function(a,b){-1!==f("chart."+b,m.propsRequireUpdateSeries)&&(r=!0);-1!==f(b,m.propsRequireDirtyBox)&&
285(m.isDirtyBox=!0)})}a.plotOptions&&e(!0,this.options.plotOptions,a.plotOptions);b(a,function(a,b){if(m[b]&&"function"===typeof m[b].update)m[b].update(a,!1);else if("function"===typeof m[l[b]])m[l[b]](a);"chart"!==b&&-1!==f(b,m.propsRequireUpdateSeries)&&(r=!0)});p("xAxis yAxis zAxis series colorAxis pane".split(" "),function(b){a[b]&&(p(E(a[b]),function(a,d){(d=g(a.id)&&m.get(a.id)||m[b][d])&&d.coll===b&&(d.update(a,!1),k&&(d.touched=!0));if(!d&&k)if("series"===b)m.addSeries(a,!1).touched=!0;else if("xAxis"===
286b||"yAxis"===b)m.addAxis(a,"xAxis"===b,!1).touched=!0}),k&&p(m[b],function(a){a.touched?delete a.touched:t.push(a)}))});p(t,function(a){a.remove(!1)});q&&p(m.axes,function(a){a.update({},!1)});r&&p(m.series,function(a){a.update({},!1)});a.loading&&e(!0,m.options.loading,a.loading);q=n&&n.width;n=n&&n.height;h(q)&&q!==m.chartWidth||h(n)&&n!==m.chartHeight?m.setSize(q,n):d(c,!0)&&m.redraw()},setSubtitle:function(a){this.setTitle(void 0,a)}});u(k.prototype,{update:function(a,b,c,e){function f(){k.applyOptions(a);
287null===k.y&&h&&(k.graphic=h.destroy());n(a,!0)&&(h&&h.element&&a&&a.marker&&void 0!==a.marker.symbol&&(k.graphic=h.destroy()),a&&a.dataLabels&&k.dataLabel&&(k.dataLabel=k.dataLabel.destroy()),k.connector&&(k.connector=k.connector.destroy()));m=k.index;g.updateParallelArrays(k,m);q.data[m]=n(q.data[m],!0)||n(a,!0)?k.options:a;g.isDirty=g.isDirtyData=!0;!g.fixedBox&&g.hasCartesianSeries&&(l.isDirtyBox=!0);"point"===q.legendType&&(l.isDirtyLegend=!0);b&&l.redraw(c)}var k=this,g=k.series,h=k.graphic,
288m,l=g.chart,q=g.options;b=d(b,!0);!1===e?f():k.firePointEvent("update",{options:a},f)},remove:function(a,b){this.series.removePoint(f(this,this.series.data),a,b)}});u(m.prototype,{addPoint:function(a,b,c,e){var f=this.options,k=this.data,g=this.chart,h=this.xAxis,h=h&&h.hasNames&&h.names,m=f.data,l,n,q=this.xData,w,p;b=d(b,!0);l={series:this};this.pointClass.prototype.applyOptions.apply(l,[a]);p=l.x;w=q.length;if(this.requireSorting&&p<q[w-1])for(n=!0;w&&q[w-1]>p;)w--;this.updateParallelArrays(l,
289"splice",w,0,0);this.updateParallelArrays(l,w);h&&l.name&&(h[p]=l.name);m.splice(w,0,a);n&&(this.data.splice(w,0,null),this.processData());"point"===f.legendType&&this.generatePoints();c&&(k[0]&&k[0].remove?k[0].remove(!1):(k.shift(),this.updateParallelArrays(l,"shift"),m.shift()));this.isDirtyData=this.isDirty=!0;b&&g.redraw(e)},removePoint:function(a,b,c){var e=this,f=e.data,k=f[a],g=e.points,h=e.chart,m=function(){g&&g.length===f.length&&g.splice(a,1);f.splice(a,1);e.options.data.splice(a,1);e.updateParallelArrays(k||
290{series:e},"splice",a,1);k&&k.destroy();e.isDirty=!0;e.isDirtyData=!0;b&&h.redraw()};G(c,h);b=d(b,!0);k?k.firePointEvent("remove",null,m):m()},remove:function(a,b,c){function e(){f.destroy();k.isDirtyLegend=k.isDirtyBox=!0;k.linkSeries();d(a,!0)&&k.redraw(b)}var f=this,k=f.chart;!1!==c?q(f,"remove",null,e):e()},update:function(a,b){var c=this,f=c.chart,k=c.userOptions,g=c.oldType||c.type,h=a.type||k.type||f.options.chart.type,m=F[g].prototype,l,n=["group","markerGroup","dataLabelsGroup"],q=["navigatorSeries",
291"baseSeries"],w=c.finishedAnimating&&{animation:!1};if(Object.keys&&"data"===Object.keys(a).toString())return this.setData(a.data,b);if(h&&h!==g||void 0!==a.zIndex)n.length=0;q=n.concat(q);p(q,function(a){q[a]=c[a];delete c[a]});a=e(k,w,{index:c.index,pointStart:c.xData[0]},{data:c.options.data},a);c.remove(!1,null,!1);for(l in m)c[l]=void 0;u(c,F[h||g].prototype);p(q,function(a){c[a]=q[a]});c.init(f,a);c.oldType=g;f.linkSeries();d(b,!0)&&f.redraw(!1)}});u(B.prototype,{update:function(a,b){var c=
292this.chart;a=c.options[this.coll][this.options.index]=e(this.userOptions,a);this.destroy(!0);this.init(c,u(a,{events:void 0}));c.isDirtyBox=!0;d(b,!0)&&c.redraw()},remove:function(a){for(var b=this.chart,c=this.coll,e=this.series,f=e.length;f--;)e[f]&&e[f].remove(!1);l(b.axes,this);l(b[c],this);v(b.options[c])?b.options[c].splice(this.options.index,1):delete b.options[c];p(b[c],function(a,b){a.options.index=b});this.destroy();b.isDirtyBox=!0;d(a,!0)&&b.redraw()},setTitle:function(a,b){this.update({title:a},
293b)},setCategories:function(a,b){this.update({categories:a},b)}})})(H);(function(a){var y=a.animObject,B=a.each,z=a.extend,c=a.isNumber,g=a.merge,p=a.pick,l=a.Series,u=a.seriesType,q=a.svg;u("column","line",{borderRadius:0,crisp:!0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1}},dataLabels:{align:null,verticalAlign:null,y:null},softThreshold:!1,startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0},{cropShoulder:0,
294directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){l.prototype.init.apply(this,arguments);var a=this,c=a.chart;c.hasRendered&&B(c.series,function(c){c.type===a.type&&(c.isDirty=!0)})},getColumnMetrics:function(){var a=this,c=a.options,g=a.xAxis,l=a.yAxis,e=g.reversed,b,d={},k=0;!1===c.grouping?k=1:B(a.chart.series,function(c){var e=c.options,f=c.yAxis,g;c.type!==a.type||!c.visible&&a.chart.options.chart.ignoreHiddenSeries||l.len!==f.len||l.pos!==f.pos||(e.stacking?
295(b=c.stackKey,void 0===d[b]&&(d[b]=k++),g=d[b]):!1!==e.grouping&&(g=k++),c.columnIndex=g)});var m=Math.min(Math.abs(g.transA)*(g.ordinalSlope||c.pointRange||g.closestPointRange||g.tickInterval||1),g.len),q=m*c.groupPadding,u=(m-2*q)/(k||1),c=Math.min(c.maxPointWidth||g.len,p(c.pointWidth,u*(1-2*c.pointPadding)));a.columnMetrics={width:c,offset:(u-c)/2+(q+((a.columnIndex||0)+(e?1:0))*u-m/2)*(e?-1:1)};return a.columnMetrics},crispCol:function(a,c,g,l){var e=this.chart,b=this.borderWidth,d=-(b%2?.5:
2960),b=b%2?.5:1;e.inverted&&e.renderer.isVML&&(b+=1);this.options.crisp&&(g=Math.round(a+g)+d,a=Math.round(a)+d,g-=a);l=Math.round(c+l)+b;d=.5>=Math.abs(c)&&.5<l;c=Math.round(c)+b;l-=c;d&&l&&(--c,l+=1);return{x:a,y:c,width:g,height:l}},translate:function(){var a=this,c=a.chart,g=a.options,q=a.dense=2>a.closestPointRange*a.xAxis.transA,q=a.borderWidth=p(g.borderWidth,q?0:1),e=a.yAxis,b=g.threshold,d=a.translatedThreshold=e.getThreshold(b),k=p(g.minPointLength,5),m=a.getColumnMetrics(),u=m.width,G=a.barW=
297Math.max(u,1+2*q),E=a.pointXOffset=m.offset;c.inverted&&(d-=.5);g.pointPadding&&(G=Math.ceil(G));l.prototype.translate.apply(a);B(a.points,function(f){var g=p(f.yBottom,d),h=999+Math.abs(g),h=Math.min(Math.max(-h,f.plotY),e.len+h),m=f.plotX+E,l=G,n=Math.min(h,g),q,r=Math.max(h,g)-n;k&&Math.abs(r)<k&&(r=k,q=!e.reversed&&!f.negative||e.reversed&&f.negative,f.y===b&&a.dataMax<=b&&e.min<b&&(q=!q),n=Math.abs(n-d)>k?g-k:d-(q?k:0));f.barX=m;f.pointWidth=u;f.tooltipPos=c.inverted?[e.len+e.pos-c.plotLeft-
298h,a.xAxis.len-m-l/2,r]:[m+l/2,h+e.pos-c.plotTop,r];f.shapeType="rect";f.shapeArgs=a.crispCol.apply(a,f.isNull?[m,d,l,0]:[m,n,l,r])})},getSymbol:a.noop,drawLegendSymbol:a.LegendSymbolMixin.drawRectangle,drawGraph:function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},drawPoints:function(){var a=this,h=this.chart,l=a.options,q=h.renderer,e=l.animationLimit||250,b;B(a.points,function(d){var f=d.graphic;if(c(d.plotY)&&null!==d.y){b=d.shapeArgs;if(f)f[h.pointCount<e?"animate":
299"attr"](g(b));else d.graphic=f=q[d.shapeType](b).add(d.group||a.group);l.borderRadius&&f.attr({r:l.borderRadius});f.addClass(d.getClassName(),!0)}else f&&(d.graphic=f.destroy())})},animate:function(a){var c=this,f=this.yAxis,g=c.options,e=this.chart.inverted,b={},d=e?"translateX":"translateY",k;q&&(a?(b.scaleY=.001,a=Math.min(f.pos+f.len,Math.max(f.pos,f.toPixels(g.threshold))),e?b.translateX=a-f.len:b.translateY=a,c.group.attr(b)):(k=c.group.attr(d),c.group.animate({scaleY:1},z(y(c.options.animation),
300{step:function(a,e){b[d]=k+e.pos*(f.pos-k);c.group.attr(b)}})),c.animate=null))},remove:function(){var a=this,c=a.chart;c.hasRendered&&B(c.series,function(c){c.type===a.type&&(c.isDirty=!0)});l.prototype.remove.apply(a,arguments)}})})(H);(function(a){var y=a.Series;a=a.seriesType;a("scatter","line",{lineWidth:0,findNearestPointBy:"xy",marker:{enabled:!0},tooltip:{headerFormat:'\x3cspan class\x3d"highcharts-color-{point.colorIndex}"\x3e\u25cf\x3c/span\x3e \x3cspan class\x3d"highcharts-header"\x3e {series.name}\x3c/span\x3e\x3cbr/\x3e',
301pointFormat:"x: \x3cb\x3e{point.x}\x3c/b\x3e\x3cbr/\x3ey: \x3cb\x3e{point.y}\x3c/b\x3e\x3cbr/\x3e"}},{sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,drawGraph:function(){this.options.lineWidth&&y.prototype.drawGraph.call(this)}})})(H);(function(a){var y=a.addEvent,B=a.arrayMax,z=a.defined,c=a.each,g=a.extend,p=a.format,l=a.map,u=a.merge,q=a.noop,f=a.pick,h=a.relativeLength,n=a.Series,v=a.seriesTypes,e=a.stableSort;a.distribute=
302function(a,d){function b(a,b){return a.target-b.target}var g,h=!0,n=a,q=[],p;p=0;for(g=a.length;g--;)p+=a[g].size;if(p>d){e(a,function(a,b){return(b.rank||0)-(a.rank||0)});for(p=g=0;p<=d;)p+=a[g].size,g++;q=a.splice(g-1,a.length)}e(a,b);for(a=l(a,function(a){return{size:a.size,targets:[a.target],align:f(a.align,.5)}});h;){for(g=a.length;g--;)h=a[g],p=(Math.min.apply(0,h.targets)+Math.max.apply(0,h.targets))/2,h.pos=Math.min(Math.max(0,p-h.size*h.align),d-h.size);g=a.length;for(h=!1;g--;)0<g&&a[g-
3031].pos+a[g-1].size>a[g].pos&&(a[g-1].size+=a[g].size,a[g-1].targets=a[g-1].targets.concat(a[g].targets),a[g-1].align=.5,a[g-1].pos+a[g-1].size>d&&(a[g-1].pos=d-a[g-1].size),a.splice(g,1),h=!0)}g=0;c(a,function(a){var b=0;c(a.targets,function(){n[g].pos=a.pos+b;b+=n[g].size;g++})});n.push.apply(n,q);e(n,b)};n.prototype.drawDataLabels=function(){function b(a,b){var d=b.filter;return d?(b=d.operator,a=a[d.property],d=d.value,"\x3e"===b&&a>d||"\x3c"===b&&a<d||"\x3e\x3d"===b&&a>=d||"\x3c\x3d"===b&&a<=
304d||"\x3d\x3d"===b&&a==d||"\x3d\x3d\x3d"===b&&a===d?!0:!1):!0}var d=this,e=d.options,g=e.dataLabels,h=d.points,l,n,q=d.hasRendered||0,w,v,x=f(g.defer,!!e.animation),A=d.chart.renderer;if(g.enabled||d._hasPointLabels)d.dlProcessOptions&&d.dlProcessOptions(g),v=d.plotGroup("dataLabelsGroup","data-labels",x&&!q?"hidden":"visible",g.zIndex||6),x&&(v.attr({opacity:+q}),q||y(d,"afterAnimate",function(){d.visible&&v.show(!0);v[e.animation?"animate":"attr"]({opacity:1},{duration:200})})),n=g,c(h,function(c){var e,
305k=c.dataLabel,h,m,q=c.connector,E=!k,x;l=c.dlOptions||c.options&&c.options.dataLabels;(e=f(l&&l.enabled,n.enabled)&&!c.isNull)&&(e=!0===b(c,l||g));e&&(g=u(n,l),h=c.getLabelConfig(),x=g[c.formatPrefix+"Format"]||g.format,w=z(x)?p(x,h):(g[c.formatPrefix+"Formatter"]||g.formatter).call(h,g),h=g.rotation,m={r:g.borderRadius||0,rotation:h,padding:g.padding,zIndex:1},a.objectEach(m,function(a,b){void 0===a&&delete m[b]}));!k||e&&z(w)?e&&z(w)&&(k?m.text=w:(k=c.dataLabel=A[h?"text":"label"](w,0,-9999,g.shape,
306null,null,g.useHTML,null,"data-label"),k.addClass("highcharts-data-label-color-"+c.colorIndex+" "+(g.className||"")+(g.useHTML?"highcharts-tracker":""))),k.attr(m),k.added||k.add(v),d.alignDataLabel(c,k,g,null,E)):(c.dataLabel=k=k.destroy(),q&&(c.connector=q.destroy()))})};n.prototype.alignDataLabel=function(a,d,c,e,h){var b=this.chart,k=b.inverted,m=f(a.dlBox&&a.dlBox.centerX,a.plotX,-9999),l=f(a.plotY,-9999),n=d.getBBox(),q,p=c.rotation,u=c.align,v=this.visible&&(a.series.forceDL||b.isInsidePlot(m,
307Math.round(l),k)||e&&b.isInsidePlot(m,k?e.x+1:e.y+e.height-1,k)),r="justify"===f(c.overflow,"justify");if(v&&(q=b.renderer.fontMetrics(void 0,d).b,e=g({x:k?this.yAxis.len-l:m,y:Math.round(k?this.xAxis.len-m:l),width:0,height:0},e),g(c,{width:n.width,height:n.height}),p?(r=!1,m=b.renderer.rotCorr(q,p),m={x:e.x+c.x+e.width/2+m.x,y:e.y+c.y+{top:0,middle:.5,bottom:1}[c.verticalAlign]*e.height},d[h?"attr":"animate"](m).attr({align:u}),l=(p+720)%360,l=180<l&&360>l,"left"===u?m.y-=l?n.height:0:"center"===
308u?(m.x-=n.width/2,m.y-=n.height/2):"right"===u&&(m.x-=n.width,m.y-=l?0:n.height)):(d.align(c,null,e),m=d.alignAttr),r?a.isLabelJustified=this.justifyDataLabel(d,c,m,n,e,h):f(c.crop,!0)&&(v=b.isInsidePlot(m.x,m.y)&&b.isInsidePlot(m.x+n.width,m.y+n.height)),c.shape&&!p))d[h?"attr":"animate"]({anchorX:k?b.plotWidth-a.plotY:a.plotX,anchorY:k?b.plotHeight-a.plotX:a.plotY});v||(d.attr({y:-9999}),d.placed=!1)};n.prototype.justifyDataLabel=function(a,d,c,e,f,g){var b=this.chart,k=d.align,h=d.verticalAlign,
309m,l,n=a.box?0:a.padding||0;m=c.x+n;0>m&&("right"===k?d.align="left":d.x=-m,l=!0);m=c.x+e.width-n;m>b.plotWidth&&("left"===k?d.align="right":d.x=b.plotWidth-m,l=!0);m=c.y+n;0>m&&("bottom"===h?d.verticalAlign="top":d.y=-m,l=!0);m=c.y+e.height-n;m>b.plotHeight&&("top"===h?d.verticalAlign="bottom":d.y=b.plotHeight-m,l=!0);l&&(a.placed=!g,a.align(d,null,f));return l};v.pie&&(v.pie.prototype.drawDataLabels=function(){var b=this,d=b.data,e,g=b.chart,h=b.options.dataLabels,l=f(h.connectorPadding,10),q=f(h.connectorWidth,
3101),p=g.plotWidth,w=g.plotHeight,u,v=b.center,A=v[2]/2,D=v[1],y,r,t,N,I=[[],[]],C,H,P,Q,O=[0,0,0,0];b.visible&&(h.enabled||b._hasPointLabels)&&(c(d,function(a){a.dataLabel&&a.visible&&a.dataLabel.shortened&&(a.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),a.dataLabel.shortened=!1)}),n.prototype.drawDataLabels.apply(b),c(d,function(a){a.dataLabel&&a.visible&&(I[a.half].push(a),a.dataLabel._pos=null)}),c(I,function(d,k){var m,n,q=d.length,u=[],E;if(q)for(b.sortByAngle(d,k-.5),
3110<b.maxLabelDistance&&(m=Math.max(0,D-A-b.maxLabelDistance),n=Math.min(D+A+b.maxLabelDistance,g.plotHeight),c(d,function(a){0<a.labelDistance&&a.dataLabel&&(a.top=Math.max(0,D-A-a.labelDistance),a.bottom=Math.min(D+A+a.labelDistance,g.plotHeight),E=a.dataLabel.getBBox().height||21,a.positionsIndex=u.push({target:a.labelPos[1]-a.top+E/2,size:E,rank:a.y})-1)}),a.distribute(u,n+E-m)),Q=0;Q<q;Q++)e=d[Q],n=e.positionsIndex,t=e.labelPos,y=e.dataLabel,P=!1===e.visible?"hidden":"inherit",H=m=t[1],u&&z(u[n])&&
312(void 0===u[n].pos?P="hidden":(N=u[n].size,H=e.top+u[n].pos)),delete e.positionIndex,C=h.justify?v[0]+(k?-1:1)*(A+e.labelDistance):b.getX(H<e.top+2||H>e.bottom-2?m:H,k,e),y._attr={visibility:P,align:t[6]},y._pos={x:C+h.x+({left:l,right:-l}[t[6]]||0),y:H+h.y-10},t.x=C,t.y=H,f(h.crop,!0)&&(r=y.getBBox().width,m=null,C-r<l?(m=Math.round(r-C+l),O[3]=Math.max(m,O[3])):C+r>p-l&&(m=Math.round(C+r-p+l),O[1]=Math.max(m,O[1])),0>H-N/2?O[0]=Math.max(Math.round(-H+N/2),O[0]):H+N/2>w&&(O[2]=Math.max(Math.round(H+
313N/2-w),O[2])),y.sideOverflow=m)}),0===B(O)||this.verifyDataLabelOverflow(O))&&(this.placeDataLabels(),q&&c(this.points,function(a){var d;u=a.connector;if((y=a.dataLabel)&&y._pos&&a.visible&&0<a.labelDistance){P=y._attr.visibility;if(d=!u)a.connector=u=g.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+a.colorIndex).add(b.dataLabelsGroup);u[d?"attr":"animate"]({d:b.connectorPath(a.labelPos)});u.attr("visibility",P)}else u&&(a.connector=u.destroy())}))},v.pie.prototype.connectorPath=
314function(a){var b=a.x,c=a.y;return f(this.options.dataLabels.softConnector,!0)?["M",b+("left"===a[6]?5:-5),c,"C",b,c,2*a[2]-a[4],2*a[3]-a[5],a[2],a[3],"L",a[4],a[5]]:["M",b+("left"===a[6]?5:-5),c,"L",a[2],a[3],"L",a[4],a[5]]},v.pie.prototype.placeDataLabels=function(){c(this.points,function(a){var b=a.dataLabel;b&&a.visible&&((a=b._pos)?(b.sideOverflow&&(b._attr.width=b.getBBox().width-b.sideOverflow,b.css({width:b._attr.width+"px",textOverflow:"ellipsis"}),b.shortened=!0),b.attr(b._attr),b[b.moved?
315"animate":"attr"](a),b.moved=!0):b&&b.attr({y:-9999}))},this)},v.pie.prototype.alignDataLabel=q,v.pie.prototype.verifyDataLabelOverflow=function(a){var b=this.center,c=this.options,e=c.center,f=c.minSize||80,g,l=null!==c.size;l||(null!==e[0]?g=Math.max(b[2]-Math.max(a[1],a[3]),f):(g=Math.max(b[2]-a[1]-a[3],f),b[0]+=(a[3]-a[1])/2),null!==e[1]?g=Math.max(Math.min(g,b[2]-Math.max(a[0],a[2])),f):(g=Math.max(Math.min(g,b[2]-a[0]-a[2]),f),b[1]+=(a[0]-a[2])/2),g<b[2]?(b[2]=g,b[3]=Math.min(h(c.innerSize||
3160,g),g),this.translate(b),this.drawDataLabels&&this.drawDataLabels()):l=!0);return l});v.column&&(v.column.prototype.alignDataLabel=function(a,d,c,e,g){var b=this.chart.inverted,k=a.series,h=a.dlBox||a.shapeArgs,m=f(a.below,a.plotY>f(this.translatedThreshold,k.yAxis.len)),l=f(c.inside,!!this.options.stacking);h&&(e=u(h),0>e.y&&(e.height+=e.y,e.y=0),h=e.y+e.height-k.yAxis.len,0<h&&(e.height-=h),b&&(e={x:k.yAxis.len-e.y-e.height,y:k.xAxis.len-e.x-e.width,width:e.height,height:e.width}),l||(b?(e.x+=
317m?0:e.width,e.width=0):(e.y+=m?e.height:0,e.height=0)));c.align=f(c.align,!b||l?"center":m?"right":"left");c.verticalAlign=f(c.verticalAlign,b||l?"middle":m?"top":"bottom");n.prototype.alignDataLabel.call(this,a,d,c,e,g);a.isLabelJustified&&a.contrastColor&&a.dataLabel.css({color:a.contrastColor})})})(H);(function(a){var y=a.Chart,B=a.each,z=a.objectEach,c=a.pick;a=a.addEvent;a(y.prototype,"render",function(){var a=[];B(this.labelCollectors||[],function(c){a=a.concat(c())});B(this.yAxis||[],function(c){c.options.stackLabels&&
318!c.options.stackLabels.allowOverlap&&z(c.stacks,function(c){z(c,function(c){a.push(c.label)})})});B(this.series||[],function(g){var l=g.options.dataLabels,p=g.dataLabelCollections||["dataLabel"];(l.enabled||g._hasPointLabels)&&!l.allowOverlap&&g.visible&&B(p,function(l){B(g.points,function(f){f[l]&&(f[l].labelrank=c(f.labelrank,f.shapeArgs&&f.shapeArgs.height),a.push(f[l]))})})});this.hideOverlappingLabels(a)});y.prototype.hideOverlappingLabels=function(a){var c=a.length,g,u,q,f,h,n,v,e,b,d=function(a,
319b,d,c,e,f,g,h){return!(e>a+d||e+g<a||f>b+c||f+h<b)};for(u=0;u<c;u++)if(g=a[u])g.oldOpacity=g.opacity,g.newOpacity=1,g.width||(q=g.getBBox(),g.width=q.width,g.height=q.height);a.sort(function(a,b){return(b.labelrank||0)-(a.labelrank||0)});for(u=0;u<c;u++)for(q=a[u],g=u+1;g<c;++g)if(f=a[g],q&&f&&q!==f&&q.placed&&f.placed&&0!==q.newOpacity&&0!==f.newOpacity&&(h=q.alignAttr,n=f.alignAttr,v=q.parentGroup,e=f.parentGroup,b=2*(q.box?0:q.padding||0),h=d(h.x+v.translateX,h.y+v.translateY,q.width-b,q.height-
320b,n.x+e.translateX,n.y+e.translateY,f.width-b,f.height-b)))(q.labelrank<f.labelrank?q:f).newOpacity=0;B(a,function(a){var b,d;a&&(d=a.newOpacity,a.oldOpacity!==d&&a.placed&&(d?a.show(!0):b=function(){a.hide()},a.alignAttr.opacity=d,a[a.isOld?"animate":"attr"](a.alignAttr,null,b)),a.isOld=!0)})}})(H);(function(a){var y=a.addEvent,B=a.Chart,z=a.createElement,c=a.css,g=a.defaultOptions,p=a.defaultPlotOptions,l=a.each,u=a.extend,q=a.fireEvent,f=a.hasTouch,h=a.inArray,n=a.isObject,v=a.Legend,e=a.merge,
321b=a.pick,d=a.Point,k=a.Series,m=a.seriesTypes,F=a.svg,G;G=a.TrackerMixin={drawTrackerPoint:function(){var a=this,b=a.chart.pointer,d=function(a){var d=b.getPointFromEvent(a);void 0!==d&&(b.isDirectTouch=!0,d.onMouseOver(a))};l(a.points,function(a){a.graphic&&(a.graphic.element.point=a);a.dataLabel&&(a.dataLabel.div?a.dataLabel.div.point=a:a.dataLabel.element.point=a)});a._hasTracking||(l(a.trackerGroups,function(c){if(a[c]&&(a[c].addClass("highcharts-tracker").on("mouseover",d).on("mouseout",function(a){b.onTrackerMouseOut(a)}),
322f))a[c].on("touchstart",d)}),a._hasTracking=!0)},drawTrackerGraph:function(){var a=this,b=a.options.trackByArea,d=[].concat(b?a.areaPath:a.graphPath),c=d.length,e=a.chart,g=e.pointer,k=e.renderer,h=e.options.tooltip.snap,m=a.tracker,n,q=function(){if(e.hoverSeries!==a)a.onMouseOver()},p="rgba(192,192,192,"+(F?.0001:.002)+")";if(c&&!b)for(n=c+1;n--;)"M"===d[n]&&d.splice(n+1,0,d[n+1]-h,d[n+2],"L"),(n&&"M"===d[n]||n===c)&&d.splice(n,0,"L",d[n-2]+h,d[n-1]);m?m.attr({d:d}):a.graph&&(a.tracker=k.path(d).attr({"stroke-linejoin":"round",
323visibility:a.visible?"visible":"hidden",stroke:p,fill:b?p:"none","stroke-width":a.graph.strokeWidth()+(b?0:2*h),zIndex:2}).add(a.group),l([a.tracker,a.markerGroup],function(a){a.addClass("highcharts-tracker").on("mouseover",q).on("mouseout",function(a){g.onTrackerMouseOut(a)});if(f)a.on("touchstart",q)}))}};m.column&&(m.column.prototype.drawTracker=G.drawTrackerPoint);m.pie&&(m.pie.prototype.drawTracker=G.drawTrackerPoint);m.scatter&&(m.scatter.prototype.drawTracker=G.drawTrackerPoint);u(v.prototype,
324{setItemEvents:function(a,b,d){var c=this.chart.renderer.boxWrapper,e="highcharts-legend-"+(a.series?"point":"series")+"-active";(d?b:a.legendGroup).on("mouseover",function(){a.setState("hover");c.addClass(e)}).on("mouseout",function(){c.removeClass(e);a.setState()}).on("click",function(b){var d=function(){a.setVisible&&a.setVisible()};b={browserEvent:b};a.firePointEvent?a.firePointEvent("legendItemClick",b,d):q(a,"legendItemClick",b,d)})},createCheckboxForItem:function(a){a.checkbox=z("input",{type:"checkbox",
325checked:a.selected,defaultChecked:a.selected},this.options.itemCheckboxStyle,this.chart.container);y(a.checkbox,"click",function(b){q(a.series||a,"checkboxClick",{checked:b.target.checked,item:a},function(){a.select()})})}});u(B.prototype,{showResetZoom:function(){var a=this,b=g.lang,d=a.options.chart.resetZoomButton,c=d.theme,e=c.states,f="chart"===d.relativeTo?null:"plotBox";this.resetZoomButton=a.renderer.button(b.resetZoom,null,null,function(){a.zoomOut()},c,e&&e.hover).attr({align:d.position.align,
326title:b.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(d.position,!1,f)},zoomOut:function(){var a=this;q(a,"selection",{resetSelection:!0},function(){a.zoom()})},zoom:function(a){var d,c=this.pointer,e=!1,f;!a||a.resetSelection?(l(this.axes,function(a){d=a.zoom()}),c.initiated=!1):l(a.xAxis.concat(a.yAxis),function(a){var b=a.axis;c[b.isXAxis?"zoomX":"zoomY"]&&(d=b.zoom(a.min,a.max),b.displayBtn&&(e=!0))});f=this.resetZoomButton;e&&!f?this.showResetZoom():!e&&n(f)&&(this.resetZoomButton=
327f.destroy());d&&this.redraw(b(this.options.chart.animation,a&&a.animation,100>this.pointCount))},pan:function(a,b){var d=this,e=d.hoverPoints,f;e&&l(e,function(a){a.setState()});l("xy"===b?[1,0]:[1],function(b){b=d[b?"xAxis":"yAxis"][0];var c=b.horiz,e=a[c?"chartX":"chartY"],c=c?"mouseDownX":"mouseDownY",g=d[c],k=(b.pointRange||0)/2,h=b.getExtremes(),m=b.toValue(g-e,!0)+k,k=b.toValue(g+b.len-e,!0)-k,l=k<m,g=l?k:m,m=l?m:k,k=Math.min(h.dataMin,b.toValue(b.toPixels(h.min)-b.minPixelPadding)),l=Math.max(h.dataMax,
328b.toValue(b.toPixels(h.max)+b.minPixelPadding)),n;n=k-g;0<n&&(m+=n,g=k);n=m-l;0<n&&(m=l,g-=n);b.series.length&&g!==h.min&&m!==h.max&&(b.setExtremes(g,m,!1,!1,{trigger:"pan"}),f=!0);d[c]=e});f&&d.redraw(!1);c(d.container,{cursor:"move"})}});u(d.prototype,{select:function(a,d){var c=this,e=c.series,f=e.chart;a=b(a,!c.selected);c.firePointEvent(a?"select":"unselect",{accumulate:d},function(){c.selected=c.options.selected=a;e.options.data[h(c,e.data)]=c.options;c.setState(a&&"select");d||l(f.getSelectedPoints(),
329function(a){a.selected&&a!==c&&(a.selected=a.options.selected=!1,e.options.data[h(a,e.data)]=a.options,a.setState(""),a.firePointEvent("unselect"))})})},onMouseOver:function(a){var b=this.series.chart,d=b.pointer;a=a?d.normalize(a):d.getChartCoordinatesFromPoint(this,b.inverted);d.runPointActions(a,this)},onMouseOut:function(){var a=this.series.chart;this.firePointEvent("mouseOut");l(a.hoverPoints||[],function(a){a.setState()});a.hoverPoints=a.hoverPoint=null},importEvents:function(){if(!this.hasImportedEvents){var b=
330this,d=e(b.series.options.point,b.options).events;b.events=d;a.objectEach(d,function(a,d){y(b,d,a)});this.hasImportedEvents=!0}},setState:function(a,d){var c=Math.floor(this.plotX),e=this.plotY,f=this.series,g=f.options.states[a]||{},k=p[f.type].marker&&f.options.marker,h=k&&!1===k.enabled,m=k&&k.states&&k.states[a]||{},l=!1===m.enabled,n=f.stateMarkerGraphic,q=this.marker||{},u=f.chart,v=f.halo,E,F=k&&f.markerAttribs;a=a||"";if(!(a===this.state&&!d||this.selected&&"select"!==a||!1===g.enabled||a&&
331(l||h&&!1===m.enabled)||a&&q.states&&q.states[a]&&!1===q.states[a].enabled)){F&&(E=f.markerAttribs(this,a));if(this.graphic)this.state&&this.graphic.removeClass("highcharts-point-"+this.state),a&&this.graphic.addClass("highcharts-point-"+a),E&&this.graphic.animate(E,b(u.options.chart.animation,m.animation,k.animation)),n&&n.hide();else{if(a&&m)if(k=q.symbol||f.symbol,n&&n.currentSymbol!==k&&(n=n.destroy()),n)n[d?"animate":"attr"]({x:E.x,y:E.y});else k&&(f.stateMarkerGraphic=n=u.renderer.symbol(k,
332E.x,E.y,E.width,E.height).add(f.markerGroup),n.currentSymbol=k);n&&(n[a&&u.isInsidePlot(c,e,u.inverted)?"show":"hide"](),n.element.point=this)}(c=g.halo)&&c.size?(v||(f.halo=v=u.renderer.path().add((this.graphic||n).parentGroup)),v[d?"animate":"attr"]({d:this.haloPath(c.size)}),v.attr({"class":"highcharts-halo highcharts-color-"+b(this.colorIndex,f.colorIndex)}),v.point=this):v&&v.point&&v.point.haloPath&&v.animate({d:v.point.haloPath(0)});this.state=a}},haloPath:function(a){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-
333a,this.plotY-a,2*a,2*a)}});u(k.prototype,{onMouseOver:function(){var a=this.chart,b=a.hoverSeries;if(b&&b!==this)b.onMouseOut();this.options.events.mouseOver&&q(this,"mouseOver");this.setState("hover");a.hoverSeries=this},onMouseOut:function(){var a=this.options,b=this.chart,d=b.tooltip,c=b.hoverPoint;b.hoverSeries=null;if(c)c.onMouseOut();this&&a.events.mouseOut&&q(this,"mouseOut");!d||this.stickyTracking||d.shared&&!this.noSharedTooltip||d.hide();this.setState()},setState:function(a){var b=this;
334a=a||"";b.state!==a&&(l([b.group,b.markerGroup,b.dataLabelsGroup],function(d){d&&(b.state&&d.removeClass("highcharts-series-"+b.state),a&&d.addClass("highcharts-series-"+a))}),b.state=a)},setVisible:function(a,b){var d=this,c=d.chart,e=d.legendItem,f,g=c.options.chart.ignoreHiddenSeries,k=d.visible;f=(d.visible=a=d.options.visible=d.userOptions.visible=void 0===a?!k:a)?"show":"hide";l(["group","dataLabelsGroup","markerGroup","tracker","tt"],function(a){if(d[a])d[a][f]()});if(c.hoverSeries===d||(c.hoverPoint&&
335c.hoverPoint.series)===d)d.onMouseOut();e&&c.legend.colorizeItem(d,a);d.isDirty=!0;d.options.stacking&&l(c.series,function(a){a.options.stacking&&a.visible&&(a.isDirty=!0)});l(d.linkedSeries,function(b){b.setVisible(a,!1)});g&&(c.isDirtyBox=!0);!1!==b&&c.redraw();q(d,f)},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(a){this.selected=a=void 0===a?!this.selected:a;this.checkbox&&(this.checkbox.checked=a);q(this,a?"select":"unselect")},drawTracker:G.drawTrackerGraph})})(H);
336(function(a){var y=a.Chart,B=a.each,z=a.inArray,c=a.isArray,g=a.isObject,p=a.pick,l=a.splat;y.prototype.setResponsive=function(c){var g=this.options.responsive,f=[],h=this.currentResponsive;g&&g.rules&&B(g.rules,function(g){void 0===g._id&&(g._id=a.uniqueKey());this.matchResponsiveRule(g,f,c)},this);var l=a.merge.apply(0,a.map(f,function(c){return a.find(g.rules,function(a){return a._id===c}).chartOptions})),f=f.toString()||void 0;f!==(h&&h.ruleIds)&&(h&&this.update(h.undoOptions,c),f?(this.currentResponsive=
337{ruleIds:f,mergedOptions:l,undoOptions:this.currentOptions(l)},this.update(l,c)):this.currentResponsive=void 0)};y.prototype.matchResponsiveRule=function(a,c){var f=a.condition;(f.callback||function(){return this.chartWidth<=p(f.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=p(f.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=p(f.minWidth,0)&&this.chartHeight>=p(f.minHeight,0)}).call(this)&&c.push(a._id)};y.prototype.currentOptions=function(p){function q(f,n,p,e){var b;a.objectEach(f,function(a,f){if(!e&&
338-1<z(f,["series","xAxis","yAxis"]))for(a=l(a),p[f]=[],b=0;b<a.length;b++)n[f][b]&&(p[f][b]={},q(a[b],n[f][b],p[f][b],e+1));else g(a)?(p[f]=c(a)?[]:{},q(a,n[f]||{},p[f],e+1)):p[f]=n[f]||null})}var f={};q(p,this.options,f,0);return f}})(H);(function(a){var y=a.Axis,B=a.each,z=a.pick;a=a.wrap;a(y.prototype,"getSeriesExtremes",function(a){var c=this.isXAxis,p,l,u=[],q;c&&B(this.series,function(a,c){a.useMapGeometry&&(u[c]=a.xData,a.xData=[])});a.call(this);c&&(p=z(this.dataMin,Number.MAX_VALUE),l=z(this.dataMax,
339-Number.MAX_VALUE),B(this.series,function(a,c){a.useMapGeometry&&(p=Math.min(p,z(a.minX,p)),l=Math.max(l,z(a.maxX,l)),a.xData=u[c],q=!0)}),q&&(this.dataMin=p,this.dataMax=l))});a(y.prototype,"setAxisTranslation",function(a){var c=this.chart,p=c.plotWidth/c.plotHeight,c=c.xAxis[0],l;a.call(this);"yAxis"===this.coll&&void 0!==c.transA&&B(this.series,function(a){a.preserveAspectRatio&&(l=!0)});if(l&&(this.transA=c.transA=Math.min(this.transA,c.transA),a=p/((c.max-c.min)/(this.max-this.min)),a=1>a?this:
340c,p=(a.max-a.min)*a.transA,a.pixelPadding=a.len-p,a.minPixelPadding=a.pixelPadding/2,p=a.fixTo)){p=p[1]-a.toValue(p[0],!0);p*=a.transA;if(Math.abs(p)>a.minPixelPadding||a.min===a.dataMin&&a.max===a.dataMax)p=0;a.minPixelPadding-=p}});a(y.prototype,"render",function(a){a.call(this);this.fixTo=null})})(H);(function(a){var y=a.Axis,B=a.Chart,z=a.color,c,g=a.each,p=a.extend,l=a.isNumber,u=a.Legend,q=a.LegendSymbolMixin,f=a.noop,h=a.merge,n=a.pick,v=a.wrap;a.ColorAxis||(c=a.ColorAxis=function(){this.init.apply(this,
341arguments)},p(c.prototype,y.prototype),p(c.prototype,{defaultColorAxisOptions:{lineWidth:0,minPadding:0,maxPadding:0,gridLineWidth:1,tickPixelInterval:72,startOnTick:!0,endOnTick:!0,offset:0,marker:{animation:{duration:50},width:.01},labels:{overflow:"justify",rotation:0},minColor:"#e6ebf5",maxColor:"#003399",tickLength:5,showInLegend:!0},keepProps:["legendGroup","legendItemHeight","legendItemWidth","legendItem","legendSymbol"].concat(y.prototype.keepProps),init:function(a,b){var d="vertical"!==a.options.legend.layout,
342c;this.coll="colorAxis";c=h(this.defaultColorAxisOptions,{side:d?2:1,reversed:!d},b,{opposite:!d,showEmpty:!1,title:null});y.prototype.init.call(this,a,c);b.dataClasses&&this.initDataClasses(b);this.initStops();this.horiz=d;this.zoomEnabled=!1;this.defaultLegendLength=200},initDataClasses:function(a){var b,d=0,c=this.chart.options.chart.colorCount,e=this.options,f=a.dataClasses.length;this.dataClasses=b=[];this.legendItems=[];g(a.dataClasses,function(a,g){a=h(a);b.push(a);"category"===e.dataClassColor?
343(a.colorIndex=d,d++,d===c&&(d=0)):a.color=z(e.minColor).tweenTo(z(e.maxColor),2>f?.5:g/(f-1))})},setTickPositions:function(){if(!this.dataClasses)return y.prototype.setTickPositions.call(this)},initStops:function(){this.stops=this.options.stops||[[0,this.options.minColor],[1,this.options.maxColor]];g(this.stops,function(a){a.color=z(a[1])})},setOptions:function(a){y.prototype.setOptions.call(this,a);this.options.crosshair=this.options.marker},setAxisSize:function(){var a=this.legendSymbol,b=this.chart,
344d=b.options.legend||{},c,f;a?(this.left=d=a.attr("x"),this.top=c=a.attr("y"),this.width=f=a.attr("width"),this.height=a=a.attr("height"),this.right=b.chartWidth-d-f,this.bottom=b.chartHeight-c-a,this.len=this.horiz?f:a,this.pos=this.horiz?d:c):this.len=(this.horiz?d.symbolWidth:d.symbolHeight)||this.defaultLegendLength},normalizedValue:function(a){this.isLog&&(a=this.val2lin(a));return 1-(this.max-a)/(this.max-this.min||1)},toColor:function(a,b){var d=this.stops,c,e,f=this.dataClasses,g,h;if(f)for(h=
345f.length;h--;){if(g=f[h],c=g.from,d=g.to,(void 0===c||a>=c)&&(void 0===d||a<=d)){b&&(b.dataClass=h,b.colorIndex=g.colorIndex);break}}else{a=this.normalizedValue(a);for(h=d.length;h--&&!(a>d[h][0]););c=d[h]||d[h+1];d=d[h+1]||c;a=1-(d[0]-a)/(d[0]-c[0]||1);e=c.color.tweenTo(d.color,a)}return e},getOffset:function(){var a=this.legendGroup,b=this.chart.axisOffset[this.side];a&&(this.axisParent=a,y.prototype.getOffset.call(this),this.added||(this.added=!0,this.labelLeft=0,this.labelRight=this.width),this.chart.axisOffset[this.side]=
346b)},setLegendColor:function(){var a,b=this.reversed;a=b?1:0;b=b?0:1;a=this.horiz?[a,0,b,0]:[0,b,0,a];this.legendColor={linearGradient:{x1:a[0],y1:a[1],x2:a[2],y2:a[3]},stops:this.stops}},drawLegendSymbol:function(a,b){var d=a.padding,c=a.options,e=this.horiz,f=n(c.symbolWidth,e?this.defaultLegendLength:12),g=n(c.symbolHeight,e?12:this.defaultLegendLength),h=n(c.labelPadding,e?16:30),c=n(c.itemDistance,10);this.setLegendColor();b.legendSymbol=this.chart.renderer.rect(0,a.baseline-11,f,g).attr({zIndex:1}).add(b.legendGroup);
347this.legendItemWidth=f+d+(e?c:h);this.legendItemHeight=g+d+(e?h:0)},setState:f,visible:!0,setVisible:f,getSeriesExtremes:function(){var a=this.series,b=a.length;this.dataMin=Infinity;for(this.dataMax=-Infinity;b--;)void 0!==a[b].valueMin&&(this.dataMin=Math.min(this.dataMin,a[b].valueMin),this.dataMax=Math.max(this.dataMax,a[b].valueMax))},drawCrosshair:function(a,b){var d=b&&b.plotX,c=b&&b.plotY,e,f=this.pos,g=this.len;b&&(e=this.toPixels(b[b.series.colorKey]),e<f?e=f-2:e>f+g&&(e=f+g+2),b.plotX=
348e,b.plotY=this.len-e,y.prototype.drawCrosshair.call(this,a,b),b.plotX=d,b.plotY=c,this.cross&&this.cross.addClass("highcharts-coloraxis-marker").add(this.legendGroup))},getPlotLinePath:function(a,b,d,c,f){return l(f)?this.horiz?["M",f-4,this.top-6,"L",f+4,this.top-6,f,this.top,"Z"]:["M",this.left,f,"L",this.left-6,f+6,this.left-6,f-6,"Z"]:y.prototype.getPlotLinePath.call(this,a,b,d,c)},update:function(a,b){var d=this.chart,c=d.legend;g(this.series,function(a){a.isDirtyData=!0});a.dataClasses&&c.allItems&&
349(g(c.allItems,function(a){a.isDataClass&&a.legendGroup&&a.legendGroup.destroy()}),d.isDirtyLegend=!0);d.options[this.coll]=h(this.userOptions,a);y.prototype.update.call(this,a,b);this.legendItem&&(this.setLegendColor(),c.colorizeItem(this,!0))},remove:function(){this.legendItem&&this.chart.legend.destroyItem(this);y.prototype.remove.call(this)},getDataClassLegendSymbols:function(){var c=this,b=this.chart,d=this.legendItems,k=b.options.legend,h=k.valueDecimals,l=k.valueSuffix||"",n;d.length||g(this.dataClasses,
350function(e,k){var m=!0,u=e.from,v=e.to;n="";void 0===u?n="\x3c ":void 0===v&&(n="\x3e ");void 0!==u&&(n+=a.numberFormat(u,h)+l);void 0!==u&&void 0!==v&&(n+=" - ");void 0!==v&&(n+=a.numberFormat(v,h)+l);d.push(p({chart:b,name:n,options:{},drawLegendSymbol:q.drawRectangle,visible:!0,setState:f,isDataClass:!0,setVisible:function(){m=this.visible=!m;g(c.series,function(a){g(a.points,function(a){a.dataClass===k&&a.setVisible(m)})});b.legend.colorizeItem(this,m)}},e))});return d},name:""}),g(["fill","stroke"],
351function(c){a.Fx.prototype[c+"Setter"]=function(){this.elem.attr(c,z(this.start).tweenTo(z(this.end),this.pos),null,!0)}}),v(B.prototype,"getAxes",function(a){var b=this.options.colorAxis;a.call(this);this.colorAxis=[];b&&new c(this,b)}),v(u.prototype,"getAllItems",function(a){var b=[],d=this.chart.colorAxis[0];d&&d.options&&(d.options.showInLegend&&(d.options.dataClasses?b=b.concat(d.getDataClassLegendSymbols()):b.push(d)),g(d.series,function(a){a.options.showInLegend=!1}));return b.concat(a.call(this))}),
352v(u.prototype,"colorizeItem",function(a,b,d){a.call(this,b,d);d&&b.legendColor&&b.legendSymbol.attr({fill:b.legendColor})}),v(u.prototype,"update",function(a){a.apply(this,[].slice.call(arguments,1));this.chart.colorAxis[0]&&this.chart.colorAxis[0].update({},arguments[2])}))})(H);(function(a){var y=a.defined,B=a.each,z=a.noop;a.colorPointMixin={isValid:function(){return null!==this.value},setVisible:function(a){var c=this,p=a?"show":"hide";B(["graphic","dataLabel"],function(a){if(c[a])c[a][p]()})},
353setState:function(c){a.Point.prototype.setState.call(this,c);this.graphic&&this.graphic.attr({zIndex:"hover"===c?1:0})}};a.colorSeriesMixin={pointArrayMap:["value"],axisTypes:["xAxis","yAxis","colorAxis"],optionalAxis:"colorAxis",trackerGroups:["group","markerGroup","dataLabelsGroup"],getSymbol:z,parallelArrays:["x","y","value"],colorKey:"value",translateColors:function(){var a=this,g=this.options.nullColor,p=this.colorAxis,l=this.colorKey;B(this.data,function(c){var q=c[l];if(q=c.options.color||
354(c.isNull?g:p&&void 0!==q?p.toColor(q,c):c.color||a.color))c.color=q})},colorAttribs:function(a){var c={};y(a.color)&&(c[this.colorProp||"fill"]=a.color);return c}}})(H);(function(a){function y(a){a&&(a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)}function B(a){this.init(a)}var z=a.addEvent,c=a.Chart,g=a.doc,p=a.each,l=a.extend,u=a.merge,q=a.pick,f=a.wrap;B.prototype.init=function(a){this.chart=a;a.mapNavButtons=[]};B.prototype.update=function(c){var f=
355this.chart,g=f.options.mapNavigation,e,b=function(a){this.handler.call(f,a);y(a)},d=f.mapNavButtons;c&&(g=f.options.mapNavigation=u(f.options.mapNavigation,c));for(;d.length;)d.pop().destroy();q(g.enableButtons,g.enabled)&&!f.renderer.forExport&&a.objectEach(g.buttons,function(a,c){e=u(g.buttonOptions,a);a=f.renderer.button(e.text,0,0,b,void 0,void 0,void 0,0,"zoomIn"===c?"topbutton":"bottombutton").addClass("highcharts-map-navigation").attr({width:e.width,height:e.height,title:f.options.lang[c],
356padding:e.padding,zIndex:5}).add();a.handler=e.onclick;a.align(l(e,{width:a.width,height:2*a.height}),null,e.alignTo);z(a.element,"dblclick",y);d.push(a)});this.updateEvents(g)};B.prototype.updateEvents=function(a){var c=this.chart;q(a.enableDoubleClickZoom,a.enabled)||a.enableDoubleClickZoomTo?this.unbindDblClick=this.unbindDblClick||z(c.container,"dblclick",function(a){c.pointer.onContainerDblClick(a)}):this.unbindDblClick&&(this.unbindDblClick=this.unbindDblClick());q(a.enableMouseWheelZoom,a.enabled)?
357this.unbindMouseWheel=this.unbindMouseWheel||z(c.container,void 0===g.onmousewheel?"DOMMouseScroll":"mousewheel",function(a){c.pointer.onContainerMouseWheel(a);y(a);return!1}):this.unbindMouseWheel&&(this.unbindMouseWheel=this.unbindMouseWheel())};l(c.prototype,{fitToBox:function(a,c){p([["x","width"],["y","height"]],function(f){var e=f[0];f=f[1];a[e]+a[f]>c[e]+c[f]&&(a[f]>c[f]?(a[f]=c[f],a[e]=c[e]):a[e]=c[e]+c[f]-a[f]);a[f]>c[f]&&(a[f]=c[f]);a[e]<c[e]&&(a[e]=c[e])});return a},mapZoom:function(a,
358c,f,e,b){var d=this.xAxis[0],g=d.max-d.min,h=q(c,d.min+g/2),l=g*a,g=this.yAxis[0],n=g.max-g.min,p=q(f,g.min+n/2),n=n*a,h=this.fitToBox({x:h-l*(e?(e-d.pos)/d.len:.5),y:p-n*(b?(b-g.pos)/g.len:.5),width:l,height:n},{x:d.dataMin,y:g.dataMin,width:d.dataMax-d.dataMin,height:g.dataMax-g.dataMin}),l=h.x<=d.dataMin&&h.width>=d.dataMax-d.dataMin&&h.y<=g.dataMin&&h.height>=g.dataMax-g.dataMin;e&&(d.fixTo=[e-d.pos,c]);b&&(g.fixTo=[b-g.pos,f]);void 0===a||l?(d.setExtremes(void 0,void 0,!1),g.setExtremes(void 0,
359void 0,!1)):(d.setExtremes(h.x,h.x+h.width,!1),g.setExtremes(h.y,h.y+h.height,!1));this.redraw()}});f(c.prototype,"render",function(a){this.mapNavigation=new B(this);this.mapNavigation.update();a.call(this)})})(H);(function(a){var y=a.extend,B=a.pick,z=a.Pointer;a=a.wrap;y(z.prototype,{onContainerDblClick:function(a){var c=this.chart;a=this.normalize(a);c.options.mapNavigation.enableDoubleClickZoomTo?c.pointer.inClass(a.target,"highcharts-tracker")&&c.hoverPoint&&c.hoverPoint.zoomTo():c.isInsidePlot(a.chartX-
360c.plotLeft,a.chartY-c.plotTop)&&c.mapZoom(.5,c.xAxis[0].toValue(a.chartX),c.yAxis[0].toValue(a.chartY),a.chartX,a.chartY)},onContainerMouseWheel:function(a){var c=this.chart,p;a=this.normalize(a);p=a.detail||-(a.wheelDelta/120);c.isInsidePlot(a.chartX-c.plotLeft,a.chartY-c.plotTop)&&c.mapZoom(Math.pow(c.options.mapNavigation.mouseWheelSensitivity,p),c.xAxis[0].toValue(a.chartX),c.yAxis[0].toValue(a.chartY),a.chartX,a.chartY)}});a(z.prototype,"zoomOption",function(a){var c=this.chart.options.mapNavigation;
361B(c.enableTouchZoom,c.enabled)&&(this.chart.options.chart.pinchType="xy");a.apply(this,[].slice.call(arguments,1))});a(z.prototype,"pinchTranslate",function(a,g,p,l,u,q,f){a.call(this,g,p,l,u,q,f);"map"===this.chart.options.chart.type&&this.hasZoom&&(a=l.scaleX>l.scaleY,this.pinchTranslateDirection(!a,g,p,l,u,q,f,a?l.scaleX:l.scaleY))})})(H);(function(a){var y=a.colorPointMixin,B=a.each,z=a.extend,c=a.isNumber,g=a.map,p=a.merge,l=a.noop,u=a.pick,q=a.isArray,f=a.Point,h=a.Series,n=a.seriesType,v=a.seriesTypes,
362e=a.splat,b=void 0!==a.doc.documentElement.style.vectorEffect;n("map","scatter",{allAreas:!0,animation:!1,nullColor:"#f7f7f7",borderColor:"#cccccc",borderWidth:1,marker:null,stickyTracking:!1,joinBy:"hc-key",dataLabels:{formatter:function(){return this.point.value},inside:!0,verticalAlign:"middle",crop:!1,overflow:!1,padding:0},turboThreshold:0,tooltip:{followPointer:!0,pointFormat:"{point.name}: {point.value}\x3cbr/\x3e"},states:{normal:{animation:!0},hover:{halo:null,brightness:.2},select:{color:"#cccccc"}}},
363p(a.colorSeriesMixin,{type:"map",getExtremesFromAll:!0,useMapGeometry:!0,forceDL:!0,searchPoint:l,directTouch:!0,preserveAspectRatio:!0,pointArrayMap:["value"],getBox:function(b){var d=Number.MAX_VALUE,e=-d,f=d,g=-d,h=d,l=d,n=this.xAxis,q=this.yAxis,p;B(b||[],function(b){if(b.path){"string"===typeof b.path&&(b.path=a.splitPath(b.path));var k=b.path||[],m=k.length,n=!1,q=-d,v=d,w=-d,x=d,y=b.properties;if(!b._foundBox){for(;m--;)c(k[m])&&(n?(q=Math.max(q,k[m]),v=Math.min(v,k[m])):(w=Math.max(w,k[m]),
364x=Math.min(x,k[m])),n=!n);b._midX=v+(q-v)*u(b.middleX,y&&y["hc-middle-x"],.5);b._midY=x+(w-x)*u(b.middleY,y&&y["hc-middle-y"],.5);b._maxX=q;b._minX=v;b._maxY=w;b._minY=x;b.labelrank=u(b.labelrank,(q-v)*(w-x));b._foundBox=!0}e=Math.max(e,b._maxX);f=Math.min(f,b._minX);g=Math.max(g,b._maxY);h=Math.min(h,b._minY);l=Math.min(b._maxX-b._minX,b._maxY-b._minY,l);p=!0}});p&&(this.minY=Math.min(h,u(this.minY,d)),this.maxY=Math.max(g,u(this.maxY,-d)),this.minX=Math.min(f,u(this.minX,d)),this.maxX=Math.max(e,
365u(this.maxX,-d)),n&&void 0===n.options.minRange&&(n.minRange=Math.min(5*l,(this.maxX-this.minX)/5,n.minRange||d)),q&&void 0===q.options.minRange&&(q.minRange=Math.min(5*l,(this.maxY-this.minY)/5,q.minRange||d)))},getExtremes:function(){h.prototype.getExtremes.call(this,this.valueData);this.chart.hasRendered&&this.isDirtyData&&this.getBox(this.options.data);this.valueMin=this.dataMin;this.valueMax=this.dataMax;this.dataMin=this.minY;this.dataMax=this.maxY},translatePath:function(a){var b=!1,d=this.xAxis,
366e=this.yAxis,f=d.min,g=d.transA,d=d.minPixelPadding,h=e.min,l=e.transA,e=e.minPixelPadding,n,q=[];if(a)for(n=a.length;n--;)c(a[n])?(q[n]=b?(a[n]-f)*g+d:(a[n]-h)*l+e,b=!b):q[n]=a[n];return q},setData:function(b,f,l,n){var d=this.options,k=this.chart.options.chart,m=k&&k.map,u=d.mapData,v=d.joinBy,x=null===v,y=d.keys||this.pointArrayMap,D=[],z={},r=this.chart.mapTransforms;!u&&m&&(u="string"===typeof m?a.maps[m]:m);x&&(v="_i");v=this.joinBy=e(v);v[1]||(v[1]=v[0]);b&&B(b,function(a,e){var f=0;if(c(a))b[e]=
367{value:a};else if(q(a)){b[e]={};!d.keys&&a.length>y.length&&"string"===typeof a[0]&&(b[e]["hc-key"]=a[0],++f);for(var g=0;g<y.length;++g,++f)y[g]&&(b[e][y[g]]=a[f])}x&&(b[e]._i=e)});this.getBox(b);(this.chart.mapTransforms=r=k&&k.mapTransforms||u&&u["hc-transform"]||r)&&a.objectEach(r,function(a){a.rotation&&(a.cosAngle=Math.cos(a.rotation),a.sinAngle=Math.sin(a.rotation))});if(u){"FeatureCollection"===u.type&&(this.mapTitle=u.title,u=a.geojson(u,this.type,this));this.mapData=u;this.mapMap={};for(r=
3680;r<u.length;r++)k=u[r],m=k.properties,k._i=r,v[0]&&m&&m[v[0]]&&(k[v[0]]=m[v[0]]),z[k[v[0]]]=k;this.mapMap=z;b&&v[1]&&B(b,function(a){z[a[v[1]]]&&D.push(z[a[v[1]]])});d.allAreas?(this.getBox(u),b=b||[],v[1]&&B(b,function(a){D.push(a[v[1]])}),D="|"+g(D,function(a){return a&&a[v[0]]}).join("|")+"|",B(u,function(a){v[0]&&-1!==D.indexOf("|"+a[v[0]]+"|")||(b.push(p(a,{value:null})),n=!1)})):this.getBox(D)}h.prototype.setData.call(this,b,f,l,n)},drawGraph:l,drawDataLabels:l,doFullTranslate:function(){return this.isDirtyData||
369this.chart.isResizing||this.chart.renderer.isVML||!this.baseTrans},translate:function(){var a=this,b=a.xAxis,c=a.yAxis,e=a.doFullTranslate();a.generatePoints();B(a.data,function(d){d.plotX=b.toPixels(d._midX,!0);d.plotY=c.toPixels(d._midY,!0);e&&(d.shapeType="path",d.shapeArgs={d:a.translatePath(d.path)})});a.translateColors()},pointAttribs:function(a,c){a=this.colorAttribs(a);b?a["vector-effect"]="non-scaling-stroke":a["stroke-width"]="inherit";return a},drawPoints:function(){var a=this,c=a.xAxis,
370e=a.yAxis,f=a.group,g=a.chart,h=g.renderer,l,n,q,p,u=this.baseTrans,y,z,r,t,H;a.transformGroup||(a.transformGroup=h.g().attr({scaleX:1,scaleY:1}).add(f),a.transformGroup.survive=!0);a.doFullTranslate()?(a.group=a.transformGroup,v.column.prototype.drawPoints.apply(a),a.group=f,B(a.points,function(b){b.graphic&&(b.name&&b.graphic.addClass("highcharts-name-"+b.name.replace(/ /g,"-").toLowerCase()),b.properties&&b.properties["hc-key"]&&b.graphic.addClass("highcharts-key-"+b.properties["hc-key"].toLowerCase()),
371b.graphic.css(a.pointAttribs(b,b.selected&&"select")))}),this.baseTrans={originX:c.min-c.minPixelPadding/c.transA,originY:e.min-e.minPixelPadding/e.transA+(e.reversed?0:e.len/e.transA),transAX:c.transA,transAY:e.transA},this.transformGroup.animate({translateX:0,translateY:0,scaleX:1,scaleY:1})):(l=c.transA/u.transAX,n=e.transA/u.transAY,q=c.toPixels(u.originX,!0),p=e.toPixels(u.originY,!0),.99<l&&1.01>l&&.99<n&&1.01>n&&(n=l=1,q=Math.round(q),p=Math.round(p)),y=this.transformGroup,g.renderer.globalAnimation?
372(z=y.attr("translateX"),r=y.attr("translateY"),t=y.attr("scaleX"),H=y.attr("scaleY"),y.attr({animator:0}).animate({animator:1},{step:function(a,b){y.attr({translateX:z+(q-z)*b.pos,translateY:r+(p-r)*b.pos,scaleX:t+(l-t)*b.pos,scaleY:H+(n-H)*b.pos})}})):y.attr({translateX:q,translateY:p,scaleX:l,scaleY:n}));b||a.group.element.setAttribute("stroke-width",a.options[a.pointAttrToOptions&&a.pointAttrToOptions["stroke-width"]||"borderWidth"]/(l||1));this.drawMapDataLabels()},drawMapDataLabels:function(){h.prototype.drawDataLabels.call(this);
373this.dataLabelsGroup&&this.dataLabelsGroup.clip(this.chart.clipRect)},render:function(){var a=this,b=h.prototype.render;a.chart.renderer.isVML&&3E3<a.data.length?setTimeout(function(){b.call(a)}):b.call(a)},animate:function(a){var b=this.options.animation,d=this.group,c=this.xAxis,e=this.yAxis,f=c.pos,g=e.pos;this.chart.renderer.isSVG&&(!0===b&&(b={duration:1E3}),a?d.attr({translateX:f+c.len/2,translateY:g+e.len/2,scaleX:.001,scaleY:.001}):(d.animate({translateX:f,translateY:g,scaleX:1,scaleY:1},
374b),this.animate=null))},animateDrilldown:function(a){var b=this.chart.plotBox,d=this.chart.drilldownLevels[this.chart.drilldownLevels.length-1],c=d.bBox,e=this.chart.options.drilldown.animation;a||(a=Math.min(c.width/b.width,c.height/b.height),d.shapeArgs={scaleX:a,scaleY:a,translateX:c.x,translateY:c.y},B(this.points,function(a){a.graphic&&a.graphic.attr(d.shapeArgs).animate({scaleX:1,scaleY:1,translateX:0,translateY:0},e)}),this.animate=null)},drawLegendSymbol:a.LegendSymbolMixin.drawRectangle,
375animateDrillupFrom:function(a){v.column.prototype.animateDrillupFrom.call(this,a)},animateDrillupTo:function(a){v.column.prototype.animateDrillupTo.call(this,a)}}),z({applyOptions:function(a,b){a=f.prototype.applyOptions.call(this,a,b);b=this.series;var d=b.joinBy;b.mapData&&((d=void 0!==a[d[1]]&&b.mapMap[a[d[1]]])?(b.xyFromShape&&(a.x=d._midX,a.y=d._midY),z(a,d)):a.value=a.value||null);return a},onMouseOver:function(a){clearTimeout(this.colorInterval);if(null!==this.value||this.series.options.nullInteraction)f.prototype.onMouseOver.call(this,
376a);else this.series.onMouseOut(a)},zoomTo:function(){var a=this.series;a.xAxis.setExtremes(this._minX,this._maxX,!1);a.yAxis.setExtremes(this._minY,this._maxY,!1);a.chart.redraw()}},y))})(H);(function(a){var y=a.seriesType;y("mapline","map",{},{type:"mapline",colorProp:"stroke",drawLegendSymbol:a.seriesTypes.line.prototype.drawLegendSymbol})})(H);(function(a){var y=a.merge,B=a.Point;a=a.seriesType;a("mappoint","scatter",{dataLabels:{enabled:!0,formatter:function(){return this.point.name},crop:!1,
377defer:!1,overflow:!1,style:{color:"#000000"}}},{type:"mappoint",forceDL:!0},{applyOptions:function(a,c){a=void 0!==a.lat&&void 0!==a.lon?y(a,this.series.chart.fromLatLonToPoint(a)):a;return B.prototype.applyOptions.call(this,a,c)}})})(H);(function(a){var y=a.arrayMax,B=a.arrayMin,z=a.Axis,c=a.each,g=a.isNumber,p=a.noop,l=a.pick,u=a.pInt,q=a.Point,f=a.seriesType,h=a.seriesTypes;f("bubble","scatter",{dataLabels:{formatter:function(){return this.point.z},inside:!0,verticalAlign:"middle"},marker:{radius:null,
378states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"},{pointArrayMap:["y","z"],parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",bubblePadding:!0,zoneAxis:"z",directTouch:!0,getRadii:function(a,c,e,b){var d,f,g,h=this.zData,l=[],n=this.options,q="width"!==n.sizeBy,p=n.zThreshold,u=c-a;
379f=0;for(d=h.length;f<d;f++)g=h[f],n.sizeByAbsoluteValue&&null!==g&&(g=Math.abs(g-p),c=Math.max(c-p,Math.abs(a-p)),a=0),null===g?g=null:g<a?g=e/2-1:(g=0<u?(g-a)/u:.5,q&&0<=g&&(g=Math.sqrt(g)),g=Math.ceil(e+g*(b-e))/2),l.push(g);this.radii=l},animate:function(a){var f=this.options.animation;a||(c(this.points,function(a){var b=a.graphic,d;b&&b.width&&(d={x:b.x,y:b.y,width:b.width,height:b.height},b.attr({x:a.plotX,y:a.plotY,width:1,height:1}),b.animate(d,f))}),this.animate=null)},translate:function(){var c,
380f=this.data,e,b,d=this.radii;h.scatter.prototype.translate.call(this);for(c=f.length;c--;)e=f[c],b=d?d[c]:0,g(b)&&b>=this.minPxSize/2?(e.marker=a.extend(e.marker,{radius:b,width:2*b,height:2*b}),e.dlBox={x:e.plotX-b,y:e.plotY-b,width:2*b,height:2*b}):e.shapeArgs=e.plotY=e.dlBox=void 0},alignDataLabel:h.column.prototype.alignDataLabel,buildKDTree:p,applyZones:p},{haloPath:function(a){return q.prototype.haloPath.call(this,0===a?0:(this.marker?this.marker.radius||0:0)+a)},ttBelow:!1});z.prototype.beforePadding=
381function(){var a=this,f=this.len,e=this.chart,b=0,d=f,h=this.isXAxis,m=h?"xData":"yData",q=this.min,p={},z=Math.min(e.plotWidth,e.plotHeight),H=Number.MAX_VALUE,w=-Number.MAX_VALUE,L=this.max-q,x=f/L,A=[];c(this.series,function(b){var d=b.options;!b.bubblePadding||!b.visible&&e.options.chart.ignoreHiddenSeries||(a.allowZoomOutside=!0,A.push(b),h&&(c(["minSize","maxSize"],function(a){var b=d[a],c=/%$/.test(b),b=u(b);p[a]=c?z*b/100:b}),b.minPxSize=p.minSize,b.maxPxSize=Math.max(p.maxSize,p.minSize),
382b=b.zData,b.length&&(H=l(d.zMin,Math.min(H,Math.max(B(b),!1===d.displayNegative?d.zThreshold:-Number.MAX_VALUE))),w=l(d.zMax,Math.max(w,y(b))))))});c(A,function(c){var e=c[m],f=e.length,k;h&&c.getRadii(H,w,c.minPxSize,c.maxPxSize);if(0<L)for(;f--;)g(e[f])&&a.dataMin<=e[f]&&e[f]<=a.dataMax&&(k=c.radii[f],b=Math.min((e[f]-q)*x-k,b),d=Math.max((e[f]-q)*x+k,d))});A.length&&0<L&&!this.isLog&&(d-=f,x*=(f+b-d)/f,c([["min","userMin",b],["max","userMax",d]],function(b){void 0===l(a.options[b[0]],a[b[1]])&&
383(a[b[0]]+=b[2]/x)}))}})(H);(function(a){var y=a.merge,B=a.Point,z=a.seriesType,c=a.seriesTypes;c.bubble&&z("mapbubble","bubble",{animationLimit:500,tooltip:{pointFormat:"{point.name}: {point.z}"}},{xyFromShape:!0,type:"mapbubble",pointArrayMap:["z"],getMapData:c.map.prototype.getMapData,getBox:c.map.prototype.getBox,setData:c.map.prototype.setData},{applyOptions:function(a,p){return a&&void 0!==a.lat&&void 0!==a.lon?B.prototype.applyOptions.call(this,y(a,this.series.chart.fromLatLonToPoint(a)),p):
384c.map.prototype.pointClass.prototype.applyOptions.call(this,a,p)},isValid:function(){return"number"===typeof this.z},ttBelow:!1})})(H);(function(a){var y=a.colorPointMixin,B=a.each,z=a.merge,c=a.noop,g=a.pick,p=a.Series,l=a.seriesType,u=a.seriesTypes;l("heatmap","scatter",{animation:!1,borderWidth:0,dataLabels:{formatter:function(){return this.point.value},inside:!0,verticalAlign:"middle",crop:!1,overflow:!1,padding:0},marker:null,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}\x3cbr/\x3e"},
385states:{normal:{animation:!0},hover:{halo:!1,brightness:.2}}},z(a.colorSeriesMixin,{pointArrayMap:["y","value"],hasPointSpecificOptions:!0,getExtremesFromAll:!0,directTouch:!0,init:function(){var a;u.scatter.prototype.init.apply(this,arguments);a=this.options;a.pointRange=g(a.pointRange,a.colsize||1);this.yAxis.axisPointRange=a.rowsize||1},translate:function(){var a=this.options,c=this.xAxis,h=this.yAxis,l=a.pointPadding||0,p=function(a,b,d){return Math.min(Math.max(b,a),d)};this.generatePoints();
386B(this.points,function(e){var b=(a.colsize||1)/2,d=(a.rowsize||1)/2,f=p(Math.round(c.len-c.translate(e.x-b,0,1,0,1)),-c.len,2*c.len),b=p(Math.round(c.len-c.translate(e.x+b,0,1,0,1)),-c.len,2*c.len),m=p(Math.round(h.translate(e.y-d,0,1,0,1)),-h.len,2*h.len),d=p(Math.round(h.translate(e.y+d,0,1,0,1)),-h.len,2*h.len),n=g(e.pointPadding,l);e.plotX=e.clientX=(f+b)/2;e.plotY=(m+d)/2;e.shapeType="rect";e.shapeArgs={x:Math.min(f,b)+n,y:Math.min(m,d)+n,width:Math.abs(b-f)-2*n,height:Math.abs(d-m)-2*n}});this.translateColors()},
387drawPoints:function(){u.column.prototype.drawPoints.call(this);B(this.points,function(a){a.graphic.css(this.colorAttribs(a))},this)},animate:c,getBox:c,drawLegendSymbol:a.LegendSymbolMixin.drawRectangle,alignDataLabel:u.column.prototype.alignDataLabel,getExtremes:function(){p.prototype.getExtremes.call(this,this.valueData);this.valueMin=this.dataMin;this.valueMax=this.dataMax;p.prototype.getExtremes.call(this)}}),a.extend({haloPath:function(a){if(!a)return[];var c=this.shapeArgs;return["M",c.x-a,
388c.y-a,"L",c.x-a,c.y+c.height+a,c.x+c.width+a,c.y+c.height+a,c.x+c.width+a,c.y-a,"Z"]}},y))})(H);(function(a){function y(a,c){var f,g,l,e=!1,b=a.x,d=a.y;a=0;for(f=c.length-1;a<c.length;f=a++)g=c[a][1]>d,l=c[f][1]>d,g!==l&&b<(c[f][0]-c[a][0])*(d-c[a][1])/(c[f][1]-c[a][1])+c[a][0]&&(e=!e);return e}var B=a.Chart,z=a.each,c=a.extend,g=a.format,p=a.merge,l=a.win,u=a.wrap;B.prototype.transformFromLatLon=function(c,f){if(void 0===l.proj4)return a.error(21),{x:0,y:null};c=l.proj4(f.crs,[c.lon,c.lat]);var g=
389f.cosAngle||f.rotation&&Math.cos(f.rotation),n=f.sinAngle||f.rotation&&Math.sin(f.rotation);c=f.rotation?[c[0]*g+c[1]*n,-c[0]*n+c[1]*g]:c;return{x:((c[0]-(f.xoffset||0))*(f.scale||1)+(f.xpan||0))*(f.jsonres||1)+(f.jsonmarginX||0),y:(((f.yoffset||0)-c[1])*(f.scale||1)+(f.ypan||0))*(f.jsonres||1)-(f.jsonmarginY||0)}};B.prototype.transformToLatLon=function(c,f){if(void 0===l.proj4)a.error(21);else{c={x:((c.x-(f.jsonmarginX||0))/(f.jsonres||1)-(f.xpan||0))/(f.scale||1)+(f.xoffset||0),y:((-c.y-(f.jsonmarginY||
3900))/(f.jsonres||1)+(f.ypan||0))/(f.scale||1)+(f.yoffset||0)};var g=f.cosAngle||f.rotation&&Math.cos(f.rotation),n=f.sinAngle||f.rotation&&Math.sin(f.rotation);f=l.proj4(f.crs,"WGS84",f.rotation?{x:c.x*g+c.y*-n,y:c.x*n+c.y*g}:c);return{lat:f.y,lon:f.x}}};B.prototype.fromPointToLatLon=function(c){var f=this.mapTransforms,g;if(f){for(g in f)if(f.hasOwnProperty(g)&&f[g].hitZone&&y({x:c.x,y:-c.y},f[g].hitZone.coordinates[0]))return this.transformToLatLon(c,f[g]);return this.transformToLatLon(c,f["default"])}a.error(22)};
391B.prototype.fromLatLonToPoint=function(c){var f=this.mapTransforms,g,l;if(!f)return a.error(22),{x:0,y:null};for(g in f)if(f.hasOwnProperty(g)&&f[g].hitZone&&(l=this.transformFromLatLon(c,f[g]),y({x:l.x,y:-l.y},f[g].hitZone.coordinates[0])))return l;return this.transformFromLatLon(c,f["default"])};a.geojson=function(a,f,h){var l=[],p=[],e=function(a){var b,c=a.length;p.push("M");for(b=0;b<c;b++)1===b&&p.push("L"),p.push(a[b][0],-a[b][1])};f=f||"map";z(a.features,function(a){var b=a.geometry,g=b.type,
392b=b.coordinates;a=a.properties;var h;p=[];"map"===f||"mapbubble"===f?("Polygon"===g?(z(b,e),p.push("Z")):"MultiPolygon"===g&&(z(b,function(a){z(a,e)}),p.push("Z")),p.length&&(h={path:p})):"mapline"===f?("LineString"===g?e(b):"MultiLineString"===g&&z(b,e),p.length&&(h={path:p})):"mappoint"===f&&"Point"===g&&(h={x:b[0],y:-b[1]});h&&l.push(c(h,{name:a.name||a.NAME,properties:a}))});h&&a.copyrightShort&&(h.chart.mapCredits=g(h.chart.options.credits.mapText,{geojson:a}),h.chart.mapCreditsFull=g(h.chart.options.credits.mapTextFull,
393{geojson:a}));return l};u(B.prototype,"addCredits",function(a,c){c=p(!0,this.options.credits,c);this.mapCredits&&(c.href=null);a.call(this,c);this.credits&&this.mapCreditsFull&&this.credits.attr({title:this.mapCreditsFull})})})(H);(function(a){function y(a,c,f,e,b,d,g,l){return["M",a+b,c,"L",a+f-d,c,"C",a+f-d/2,c,a+f,c+d/2,a+f,c+d,"L",a+f,c+e-g,"C",a+f,c+e-g/2,a+f-g/2,c+e,a+f-g,c+e,"L",a+l,c+e,"C",a+l/2,c+e,a,c+e-l/2,a,c+e-l,"L",a,c+b,"C",a,c+b/2,a+b/2,c,a+b,c,"Z"]}var B=a.Chart,z=a.defaultOptions,
394c=a.each,g=a.extend,p=a.merge,l=a.pick,u=a.Renderer,q=a.SVGRenderer,f=a.VMLRenderer;g(z.lang,{zoomIn:"Zoom in",zoomOut:"Zoom out"});z.mapNavigation={buttonOptions:{alignTo:"plotBox",align:"left",verticalAlign:"top",x:0,width:18,height:18,padding:5},buttons:{zoomIn:{onclick:function(){this.mapZoom(.5)},text:"+",y:0},zoomOut:{onclick:function(){this.mapZoom(2)},text:"-",y:28}},mouseWheelSensitivity:1.1};a.splitPath=function(a){var c;a=a.replace(/([A-Za-z])/g," $1 ");a=a.replace(/^\s*/,"").replace(/\s*$/,
395"");a=a.split(/[ ,]+/);for(c=0;c<a.length;c++)/[a-zA-Z]/.test(a[c])||(a[c]=parseFloat(a[c]));return a};a.maps={};q.prototype.symbols.topbutton=function(a,c,f,e,b){return y(a-1,c-1,f,e,b.r,b.r,0,0)};q.prototype.symbols.bottombutton=function(a,c,f,e,b){return y(a-1,c-1,f,e,0,0,b.r,b.r)};u===f&&c(["topbutton","bottombutton"],function(a){f.prototype.symbols[a]=q.prototype.symbols[a]});a.Map=a.mapChart=function(c,f,g){var e="string"===typeof c||c.nodeName,b=arguments[e?1:0],d={endOnTick:!1,visible:!1,
396minPadding:0,maxPadding:0,startOnTick:!1},h,m=a.getOptions().credits;h=b.series;b.series=null;b=p({chart:{panning:"xy",type:"map"},credits:{mapText:l(m.mapText,' \u00a9 \x3ca href\x3d"{geojson.copyrightUrl}"\x3e{geojson.copyrightShort}\x3c/a\x3e'),mapTextFull:l(m.mapTextFull,"{geojson.copyright}")},tooltip:{followTouchMove:!1},xAxis:d,yAxis:p(d,{reversed:!0})},b,{chart:{inverted:!1,alignTicks:!1}});b.series=h;return e?new B(c,b,g):new B(b,f)}})(H);return H});