(function(n,t){"object"==typeof module&&module.exports?(t["default"]=t,module.exports=n.document?t(n):t):"function"==typeof define&&define.amd?define("highcharts/highcharts",function(){return t(n)}):(n.Highcharts&&n.Highcharts.error(16,!0),n.Highcharts=t(n))})("undefined"!=typeof window?window:this,function(n){function i(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}var t={};return i(t,"parts/Globals.js",[],function(){var i="undefined"!=typeof n?n:"undefined"!=typeof window?window:{},r=i.document,t=i.navigator&&i.navigator.userAgent||"",e=r&&r.createElementNS&&!!r.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,o=/(edge|msie|trident)/i.test(t)&&!i.opera,u=-1!==t.indexOf("Firefox"),f=-1!==t.indexOf("Chrome"),s=u&&4>parseInt(t.split("Firefox/")[1],10);return{product:"Highcharts",version:"8.1.0",deg2rad:Math.PI/180,doc:r,hasBidiBug:s,hasTouch:!!i.TouchEvent,isMS:o,isWebKit:-1!==t.indexOf("AppleWebKit"),isFirefox:u,isChrome:f,isSafari:!f&&-1!==t.indexOf("Safari"),isTouchDevice:/(Mobile|Android|Windows Phone)/.test(t),SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:e,win:i,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[],dateFormats:{}}}),i(t,"parts/Utilities.js",[t["parts/Globals.js"]],function(n){function e(){var i,n=arguments,u={},f=function(n,i){return"object"!=typeof n&&(n={}),t(i,function(t,u){n[u]=!r(t,!0)||g(t)||v(t)?i[u]:f(n[u]||{},t)}),n},e;for(!0===n[0]&&(u=n[1],n=Array.prototype.slice.call(n,2)),e=n.length,i=0;i<e;i++)u=f(u,n[i]);return u}function r(n,t){return!!n&&"object"==typeof n&&(!t||!h(n))}function c(n,i,r){var u;return a(i)?y(r)?n.setAttribute(i,r):n&&n.getAttribute&&((u=n.getAttribute(i))||"class"!==i||(u=n.getAttribute(i+"Name"))):t(i,function(t,i){n.setAttribute(i,t)}),u}function u(){for(var n,i=arguments,r=i.length,t=0;t<r;t++)if(n=i[t],"undefined"!=typeof n&&null!==n)return n}function b(n,t){if(!n)return t;var i=n.split(".").reverse();if(1===i.length)return t[n];for(n=i.pop();"undefined"!=typeof n&&"undefined"!=typeof t&&null!==t;)t=t[n],n=i.pop();return t}n.timers=[];var ot=n.charts,s=n.doc,i=n.win,k=n.error=function(n,r,u,f){var s=o(n),e=s?"Highcharts error #"+n+": www.highcharts.com/errors/"+n+"/":n.toString(),c=function(){if(r)throw Error(e);i.console&&console.log(e)},h;"undefined"!=typeof f&&(h="",s&&(e+="?"),t(f,function(n,t){h+="\n"+t+": "+n;s&&(e+=encodeURI(t)+"="+encodeURI(n))}),e+=h);u?et(u,"displayError",{code:n,message:e,params:f},c):c()},d=function(){function r(n,t,i){this.options=t;this.elem=n;this.prop=i}return r.prototype.dSetter=function(){var n=this.paths,o=n&&n[0],i,u,r,f,e;if(n=n&&n[1],i=[],u=this.now||0,1!==u&&o&&n)if(o.length===n.length&&1>u)for(r=0;r<n.length;r++){for(var c=o[r],s=n[r],h=[],t=0;t<s.length;t++)f=c[t],e=s[t],h[t]="number"==typeof f&&"number"==typeof e&&("A"!==s[0]||4!==t&&5!==t)?f+u*(e-f):e;i.push(h)}else i=n;else i=this.toD||[];this.elem.attr("d",i,void 0,!0)},r.prototype.update=function(){var n=this.elem,t=this.prop,i=this.now,r=this.options.step;this[t+"Setter"]?this[t+"Setter"]():n.attr?n.element&&n.attr(t,i,null,!0):n.style[t]=i+this.unit;r&&r.call(n,i,this)},r.prototype.run=function(t,r,u){var o=this,e=o.options,f=function(n){return f.stopped?!1:o.step(n)},s=i.requestAnimationFrame||function(n){setTimeout(n,13)},h=function(){for(var t=0;t<n.timers.length;t++)n.timers[t]()||n.timers.splice(t--,1);n.timers.length&&s(h)};t!==r||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=t,this.end=r,this.unit=u,this.now=this.start,this.pos=0,f.elem=this.elem,f.prop=this.prop,f()&&1===n.timers.push(f)&&s(h)):(delete e.curAnim[this.prop],e.complete&&0===Object.keys(e.curAnim).length&&e.complete.call(this.elem))},r.prototype.step=function(n){var f=+new Date,i=this.options,r=this.elem,e=i.complete,o=i.duration,s=i.curAnim,u;return r.attr&&!r.element?n=!1:n||f>=o+this.startTime?(this.now=this.end,this.pos=1,this.update(),u=s[this.prop]=!0,t(s,function(n){!0!==n&&(u=!1)}),u&&e&&e.call(r),n=!1):(this.pos=i.easing((f-this.startTime)/o),this.now=this.start+(this.end-this.start)*this.pos,this.update(),n=!0),n},r.prototype.initPath=function(n,t,i){function c(n,t){for(;n.length<h;){var i=n[0],r=t[h-n.length];r&&"M"===i[0]&&(n[0]="C"===r[0]?["C",i[1],i[2],i[1],i[2],i[1],i[2]]:["L",i[1],i[2]]);n.unshift(i);e&&n.push(n[n.length-1])}}function l(n,t){for(;n.length<h;)if(t=n[n.length/s-1].slice(),"C"===t[0]&&(t[1]=t[5],t[2]=t[6]),e){var i=n[n.length/s].slice();n.splice(n.length/2,0,t,i)}else n.push(t)}var r=n.startX,u=n.endX,e,s,f,a,h;if(t=t&&t.slice(),i=i.slice(),e=n.isArea,s=e?2:1,!t)return[i,i];if(r&&u){for(n=0;n<r.length;n++)if(r[n]===u[0]){f=n;break}else if(r[0]===u[u.length-r.length+n]){f=n;a=!0;break}else if(r[r.length-1]===u[u.length-r.length+n]){f=r.length-n;break}"undefined"==typeof f&&(t=[])}return t.length&&o(f)&&(h=i.length+f*s,a?(c(t,i),l(i,t)):(c(i,t),l(t,i))),[t,i]},r.prototype.fillSetter=function(){r.prototype.strokeSetter.apply(this,arguments)},r.prototype.strokeSetter=function(){this.elem.attr(this.prop,n.color(this.start).tweenTo(n.color(this.end),this.pos),null,!0)},r}();n.Fx=d;n.merge=e;var l=n.pInt=function(n,t){return parseInt(n,t||10)},a=n.isString=function(n){return"string"==typeof n},h=n.isArray=function(n){return n=Object.prototype.toString.call(n),"[object Array]"===n||"[object Array Iterator]"===n};n.isObject=r;var v=n.isDOMElement=function(n){return r(n)&&"number"==typeof n.nodeType},g=n.isClass=function(n){var t=n&&n.constructor;return!(!r(n,!0)||v(n)||!t||!t.name||"Object"===t.name)},o=n.isNumber=function(n){return"number"==typeof n&&!isNaN(n)&&Infinity>n&&-Infinity<n},st=n.erase=function(n,t){for(var i=n.length;i--;)if(n[i]===t){n.splice(i,1);break}},y=n.defined=function(n){return"undefined"!=typeof n&&null!==n};n.attr=c;var ht=n.splat=function(n){return h(n)?n:[n]},ct=n.syncTimeout=function(n,t,i){return 0<t?setTimeout(n,t,i):(n.call(0,i),-1)},lt=n.clearTimeout=function(n){y(n)&&clearTimeout(n)},f=n.extend=function(n,t){var i;n||(n={});for(i in t)n[i]=t[i];return n};n.pick=u;var p=n.css=function(t,i){n.isMS&&!n.svg&&i&&"undefined"!=typeof i.opacity&&(i.filter="alpha(opacity="+100*i.opacity+")");f(t.style,i)},nt=n.createElement=function(n,t,i,r,u){return n=s.createElement(n),t&&f(n,t),u&&p(n,{padding:"0",border:"none",margin:"0"}),i&&p(n,i),r&&r.appendChild(n),n},w=n.extendClass=function(n,t){var i=function(){};return i.prototype=new n,f(i.prototype,t),i},at=n.pad=function(n,t,i){return Array((t||2)+1-String(n).replace("-","").length).join(i||"0")+n},vt=n.relativeLength=function(n,t,i){return/%$/.test(n)?t*parseFloat(n)/100+(i||0):parseFloat(n)},yt=n.wrap=function(n,t,i){var r=n[t];n[t]=function(){var n=Array.prototype.slice.call(arguments),u=arguments,t=this;return t.proceed=function(){r.apply(t,arguments.length?arguments:u)},n.unshift(r),n=i.apply(this,n),t.proceed=null,n}},pt=n.format=function(t,i,r){var f="{",s=!1,e=[],h=n.defaultOptions.lang,l=r&&r.time||n.time,o,u,c;for(r=r&&r.numberFormatter||it;t;){if(o=t.indexOf(f),-1===o)break;u=t.slice(0,o);s?(u=u.split(":"),f=b(u.shift()||"",i),u.length&&"number"==typeof f&&((u=u.join(":"),/f$/.test(u))?(c=parseInt((u.match(/\.([0-9])/)||["","-1"])[1],10),null!==f&&(f=r(f,c,h.decimalPoint,-1<u.indexOf(",")?h.thousandsSep:""))):f=l.dateFormat(u,f)),e.push(f)):e.push(u);t=t.slice(o+1);f=(s=!s)?"}":"{"}return e.push(t),e.join("")},wt=n.getMagnitude=function(n){return Math.pow(10,Math.floor(Math.log(n)/Math.LN10))},bt=n.normalizeTickInterval=function(n,t,i,r,f){var e=n,o;for(i=u(i,1),o=n/i,t||(t=f?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===r&&(1===i?t=t.filter(function(n){return 0==n%1}):.1>=i&&(t=[1/i]))),r=0;r<t.length&&!(e=t[r],f&&e*i>=n||!f&&o<=(t[r]+(t[r+1]||t[r]))/2);r++);return tt(e*i,-Math.round(Math.log(.001)/Math.LN10))},kt=n.stableSort=function(n,t){for(var u=n.length,r,i=0;i<u;i++)n[i].safeI=i;for(n.sort(function(n,i){return r=t(n,i),0===r?n.safeI-i.safeI:r}),i=0;i<u;i++)delete n[i].safeI},dt=n.arrayMin=function(n){for(var t=n.length,i=n[0];t--;)n[t]<i&&(i=n[t]);return i},gt=n.arrayMax=function(n){for(var t=n.length,i=n[0];t--;)n[t]>i&&(i=n[t]);return i},ni=n.destroyObjectProperties=function(n,i){t(n,function(t,r){t&&t!==i&&t.destroy&&t.destroy();delete n[r]})},ti=n.discardElement=function(t){var i=n.garbageBin;i||(i=nt("div"));t&&i.appendChild(t);i.innerHTML=""},tt=n.correctFloat=function(n,t){return parseFloat(n.toPrecision(t||14))},ii=n.setAnimation=function(n,t){t.renderer.globalAnimation=u(n,t.options.chart.animation,!0)},ri=n.animObject=function(n){return r(n)?e(n):{duration:n?500:0}},ui=n.timeUnits={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},it=n.numberFormat=function(t,i,r,f){var s,c;t=+t||0;i=+i;var a=n.defaultOptions.lang,h=(t.toString().split(".")[1]||"").split("e")[0].length,e=t.toString().split("e");return-1===i?i=Math.min(h,20):o(i)?i&&e[1]&&0>e[1]&&(s=i+ +e[1],0<=s?(e[0]=(+e[0]).toExponential(s).split("e")[0],i=s):(e[0]=e[0].split(".")[0]||0,t=20>i?(e[0]*Math.pow(10,e[1])).toFixed(i):0,e[1]=0)):i=2,c=(Math.abs(e[1]?e[0]:t)+Math.pow(10,-Math.max(i,h)-1)).toFixed(i),h=String(l(c)),s=3<h.length?h.length%3:0,r=u(r,a.decimalPoint),f=u(f,a.thousandsSep),t=(0>t?"-":"")+(s?h.substr(0,s)+f:""),t+=h.substr(s).replace(/(\d{3})(?=\d)/g,"$1"+f),i&&(t+=r+c.slice(-i)),e[1]&&0!=+t&&(t+="e"+e[1]),t};Math.easeInOutSine=function(n){return-.5*(Math.cos(Math.PI*n)-1)};var rt=n.getStyle=function(t,r,f){return"width"===r?(r=Math.min(t.offsetWidth,t.scrollWidth),f=t.getBoundingClientRect&&t.getBoundingClientRect().width,f<r&&f>=r-1&&(r=Math.floor(f)),Math.max(0,r-n.getStyle(t,"padding-left")-n.getStyle(t,"padding-right"))):"height"===r?Math.max(0,Math.min(t.offsetHeight,t.scrollHeight)-n.getStyle(t,"padding-top")-n.getStyle(t,"padding-bottom")):(i.getComputedStyle||k(27,!0),(t=i.getComputedStyle(t,void 0))&&(t=t.getPropertyValue(r),u(f,"opacity"!==r)&&(t=l(t))),t)},fi=n.inArray=function(n,t,i){return t.indexOf(n,i)},ei=n.find=Array.prototype.find?function(n,t){return n.find(t)}:function(n,t){for(var r=n.length,i=0;i<r;i++)if(t(n[i],i))return n[i]};n.keys=Object.keys;var oi=n.offset=function(n){var t=s.documentElement;return n=n.parentElement||n.parentNode?n.getBoundingClientRect():{top:0,left:0},{top:n.top+(i.pageYOffset||t.scrollTop)-(t.clientTop||0),left:n.left+(i.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}},ut=n.stop=function(t,i){for(var r=n.timers.length;r--;)n.timers[r].elem!==t||i&&i!==n.timers[r].prop||(n.timers[r].stopped=!0)},t=n.objectEach=function(n,t,i){for(var r in n)Object.hasOwnProperty.call(n,r)&&t.call(i||n[r],n[r],r,n)};t({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(t,i){n[i]=function(n){return Array.prototype[t].apply(n,[].slice.call(arguments,1))}});var si=n.addEvent=function(t,i,r,u){void 0===u&&(u={});var e=t.addEventListener||n.addEventListenerPolyfill,f="function"==typeof t&&t.prototype?t.prototype.protoEvents=t.prototype.protoEvents||{}:t.hcEvents=t.hcEvents||{};return n.Point&&t instanceof n.Point&&t.series&&t.series.chart&&(t.series.chart.runTrackerClick=!0),e&&e.call(t,i,r,!1),f[i]||(f[i]=[]),f[i].push({fn:r,order:"number"==typeof u.order?u.order:Infinity}),f[i].sort(function(n,t){return n.order-t.order}),function(){ft(t,i,r)}},ft=n.removeEvent=function(i,r,u){function f(t,r){var u=i.removeEventListener||n.removeEventListenerPolyfill;u&&u.call(i,t,r,!1)}function e(n){var e,u;i.nodeName&&(r?(u={},u[r]=!0):u=n,t(u,function(t,i){if(n[i])for(e=n[i].length;e--;)f(i,n[i][e].fn)}))}var o;["protoEvents","hcEvents"].forEach(function(n,t){var s=(t=t?i:i.prototype)&&t[n];s&&(r?(o=s[r]||[],u?(s[r]=o.filter(function(n){return u!==n.fn}),f(r,u)):(e(s),s[r]=[])):(e(s),t[n]={}))})},et=n.fireEvent=function(n,t,i,r){var e,u;i=i||{};s.createEvent&&(n.dispatchEvent||n.fireEvent)?(u=s.createEvent("Events"),u.initEvent(t,!0,!0),f(u,i),n.dispatchEvent?n.dispatchEvent(u):n.fireEvent(t,u)):(i.target||f(i,{preventDefault:function(){i.defaultPrevented=!0},target:n,type:t}),function(t,r){void 0===t&&(t=[]);void 0===r&&(r=[]);var u=0,f=0,o=t.length+r.length;for(e=0;e<o;e++)!1===(t[u]?r[f]?t[u].order<=r[f].order?t[u++]:r[f++]:t[u++]:r[f++]).fn.call(n,i)&&i.preventDefault()}(n.protoEvents&&n.protoEvents[t],n.hcEvents&&n.hcEvents[t]));r&&!i.defaultPrevented&&r.call(n,i)},hi=n.animate=function(n,i,u){var c,a="",f,s,l;r(u)||(l=arguments,u={duration:l[2],easing:l[3],complete:l[4]});o(u.duration)||(u.duration=400);u.easing="function"==typeof u.easing?u.easing:Math[u.easing]||Math.easeInOutSine;u.curAnim=e(i);t(i,function(t,r){ut(n,r);s=new d(n,u,r);f=null;"d"===r&&h(i.d)?(s.paths=s.initPath(n,n.pathArray,i.d),s.toD=i.d,c=0,f=1):n.attr?c=n.attr(r):(c=parseFloat(rt(n,r))||0,"opacity"!==r&&(a="px"));f||(f=t);f&&f.match&&f.match("px")&&(f=f.replace(/px/g,""));s.run(c,f,a)})},ci=n.seriesType=function(t,i,r,u,f){var s=n.getOptions(),o=n.seriesTypes;return s.plotOptions[t]=e(s.plotOptions[i],r),o[t]=w(o[i]||function(){},u),o[t].prototype.type=t,f&&(o[t].prototype.pointClass=w(n.Point,f)),o[t]},li=n.uniqueKey=function(){var n=Math.random().toString(36).substring(2,9),t=0;return function(){return"highcharts-"+n+"-"+t++}}(),ai=n.isFunction=function(n){return"function"==typeof n};return i.jQuery&&(i.jQuery.fn.highcharts=function(){var t=[].slice.call(arguments);if(this[0])return t[0]?(new n[a(t[0])?t.shift():"Chart"](this[0],t[0],t[1]),this):ot[c(this[0],"data-highcharts-chart")]}),{Fx:n.Fx,addEvent:si,animate:hi,animObject:ri,arrayMax:gt,arrayMin:dt,attr:c,clamp:function(n,t,i){return n>t?n<i?n:i:t},clearTimeout:lt,correctFloat:tt,createElement:nt,css:p,defined:y,destroyObjectProperties:ni,discardElement:ti,erase:st,error:k,extend:f,extendClass:w,find:ei,fireEvent:et,format:pt,getMagnitude:wt,getNestedProperty:b,getStyle:rt,inArray:fi,isArray:h,isClass:g,isDOMElement:v,isFunction:ai,isNumber:o,isObject:r,isString:a,merge:e,normalizeTickInterval:bt,numberFormat:it,objectEach:t,offset:oi,pad:at,pick:u,pInt:l,relativeLength:vt,removeEvent:ft,seriesType:ci,setAnimation:ii,splat:ht,stableSort:kt,stop:ut,syncTimeout:ct,timeUnits:ui,uniqueKey:li,wrap:yt}}),i(t,"parts/Color.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var r=t.isNumber,u=t.merge,i=t.pInt;return t=function(){function n(t){if(this.parsers=[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(n){return[i(n[1]),i(n[2]),i(n[3]),parseFloat(n[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(n){return[i(n[1]),i(n[2]),i(n[3]),1]}}],this.rgba=[],!(this instanceof n))return new n(t);this.init(t)}return n.parse=function(t){return new n(t)},n.prototype.init=function(t){var i,u,r,f;if((this.input=t=n.names[t&&t.toLowerCase?t.toLowerCase():""]||t)&&t.stops)this.stops=t.stops.map(function(t){return new n(t[1])});else if(t&&t.charAt&&"#"===t.charAt()&&(r=t.length,t=parseInt(t.substr(1),16),7===r?i=[(t&16711680)>>16,(t&65280)>>8,t&255,1]:4===r&&(i=[(t&3840)>>4|(t&3840)>>8,(t&240)>>4|t&240,(t&15)<<4|t&15,1])),!i)for(u=this.parsers.length;u--&&!i;)f=this.parsers[u],(r=f.regex.exec(t))&&(i=f.parse(r));this.rgba=i||[]},n.prototype.get=function(n){var f=this.input,t=this.rgba,i;return"undefined"!=typeof this.stops?(i=u(f),i.stops=[].concat(i.stops),this.stops.forEach(function(t,r){i.stops[r]=[i.stops[r][0],t.get(n)]})):i=t&&r(t[0])?"rgb"===n||!n&&1===t[3]?"rgb("+t[0]+","+t[1]+","+t[2]+")":"a"===n?t[3]:"rgba("+t.join(",")+")":f,i},n.prototype.brighten=function(n){var t,u=this.rgba;if(this.stops)this.stops.forEach(function(t){t.brighten(n)});else if(r(n)&&0!==n)for(t=0;3>t;t++)u[t]+=i(255*n),0>u[t]&&(u[t]=0),255<u[t]&&(u[t]=255);return this},n.prototype.setOpacity=function(n){return this.rgba[3]=n,this},n.prototype.tweenTo=function(n,t){var r=this.rgba,i=n.rgba;return i.length&&r&&r.length?(n=1!==i[3]||1!==r[3],t=(n?"rgba(":"rgb(")+Math.round(i[0]+(r[0]-i[0])*(1-t))+","+Math.round(i[1]+(r[1]-i[1])*(1-t))+","+Math.round(i[2]+(r[2]-i[2])*(1-t))+(n?","+(i[3]+(r[3]-i[3])*(1-t)):"")+")"):t=n.input||"none",t},n.names={white:"#ffffff",black:"#000000"},n}(),n.Color=t,n.color=t.parse,n.Color}),i(t,"parts/SVGElement.js",[t["parts/Color.js"],t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t,i){var g=t.deg2rad,e=t.doc,nt=t.hasTouch,l=t.isFirefox,tt=t.noop,it=t.svg,a=t.SVG_NS,rt=t.win,ut=i.animate,ft=i.animObject,o=i.attr,et=i.createElement,ot=i.css,u=i.defined,h=i.erase,c=i.extend,v=i.fireEvent,st=i.inArray,y=i.isArray,p=i.isFunction,ht=i.isNumber,w=i.isString,b=i.merge,f=i.objectEach,r=i.pick,s=i.pInt,k=i.stop,d=i.uniqueKey;return i=function(){function i(){this.height=this.element=void 0;this.opacity=1;this.renderer=void 0;this.SVG_NS=a;this.symbolCustomAttribs="x y width height r start end innerR anchorX anchorY rounded".split(" ");this.textProps="color cursor direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" ");this.width=void 0}return i.prototype._defaultGetter=function(n){return n=r(this[n+"Value"],this[n],this.element?this.element.getAttribute(n):null,0),/^[\-0-9\.]+$/.test(n)&&(n=parseFloat(n)),n},i.prototype._defaultSetter=function(n,t,i){i.setAttribute(t,n)},i.prototype.add=function(n){var t=this.renderer,r=this.element,i;return n&&(this.parentGroup=n),this.parentInverted=n&&n.inverted,"undefined"!=typeof this.textStr&&t.buildText(this),this.added=!0,(!n||n.handleZ||this.zIndex)&&(i=this.zIndexSetter()),i||(n?n.element:t.box).appendChild(r),this.onAdd&&this.onAdd(),this},i.prototype.addClass=function(n,t){var i=t?"":this.attr("class")||"";return n=(n||"").split(/ /g).reduce(function(n,t){return-1===i.indexOf(t)&&n.push(t),n},i?[i]:[]).join(" "),n!==i&&this.attr("class",n),this},i.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)},i.prototype.align=function(n,t,i){var u,o={},f=this.renderer,e=f.alignedObjects,s,c,l;return n?(this.alignOptions=n,this.alignByTranslate=t,!i||w(i))&&(this.alignTo=u=i||"renderer",h(e,this),e.push(this),i=void 0):(n=this.alignOptions,t=this.alignByTranslate,u=this.alignTo),i=r(i,f[u],f),u=n.align,f=n.verticalAlign,e=(i.x||0)+(n.x||0),l=(i.y||0)+(n.y||0),"right"===u?s=1:"center"===u&&(s=2),s&&(e+=(i.width-(n.width||0))/s),o[t?"translateX":"x"]=Math.round(e),"bottom"===f?c=1:"middle"===f&&(c=2),c&&(l+=(i.height-(n.height||0))/c),o[t?"translateY":"y"]=Math.round(l),this[this.placed?"animate":"attr"](o),this.placed=!0,this.alignAttr=o,this},i.prototype.alignSetter=function(n){var t={left:"start",center:"middle",right:"end"};t[n]&&(this.alignValue=n,this.element.setAttribute("text-anchor",t[n]))},i.prototype.animate=function(n,t,i){var u=ft(r(t,this.renderer.globalAnimation,!0));return r(e.hidden,e.msHidden,e.webkitHidden,!1)&&(u.duration=0),0!==u.duration?(i&&(u.complete=i),ut(this,n,u)):(this.attr(n,void 0,i),f(n,function(n,t){u.step&&u.step.call(this,n,{prop:t,pos:1})},this)),this},i.prototype.applyTextOutline=function(n){var i=this.element,r,u,f,e;-1!==n.indexOf("contrast")&&(n=n.replace(/contrast/g,this.renderer.getContrast(i.style.fill)));n=n.split(" ");u=n[n.length-1];(r=n[0])&&"none"!==r&&t.svg&&(this.fakeTS=!0,n=[].slice.call(i.getElementsByTagName("tspan")),this.ySetter=this.xSetter,r=r.replace(/(^[\d\.]+)(.*?)$/g,function(n,t,i){return 2*t+i}),this.removeTextOutline(n),f=i.textContent?/^[\u0591-\u065F\u066A-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC]/.test(i.textContent):!1,e=i.firstChild,n.forEach(function(n,t){0===t&&(n.setAttribute("x",i.getAttribute("x")),t=i.getAttribute("y"),n.setAttribute("y",t||0),null===t&&i.setAttribute("y",0));t=n.cloneNode(!0);o(f&&!l?n:t,{"class":"highcharts-text-outline",fill:u,stroke:u,"stroke-width":r,"stroke-linejoin":"round"});i.insertBefore(t,e)}),f&&l&&n[0]&&(n=n[0].cloneNode(!0),n.textContent=" ",i.insertBefore(n,e)))},i.prototype.attr=function(n,t,i,r){var o=this.element,s,h=this,u,e,l=this.symbolCustomAttribs,c;return"string"==typeof n&&"undefined"!=typeof t&&(c=n,n={},n[c]=t),"string"==typeof n?h=(this[n+"Getter"]||this._defaultGetter).call(this,n,o):(f(n,function(t,i){u=!1;r||k(this,i);this.symbolName&&-1!==st(i,l)&&(s||(this.symbolAttr(n),s=!0),u=!0);this.rotation&&("x"===i||"y"===i)&&(this.doTransform=!0);u||(e=this[i+"Setter"]||this._defaultSetter,e.call(this,t,i,o),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(i)&&this.updateShadows(i,t,e))},this),this.afterSetters()),i&&i.call(this),h},i.prototype.clip=function(n){return this.attr("clip-path",n?"url("+this.renderer.url+"#"+n.id+")":"none")},i.prototype.crisp=function(n,t){t=t||n.strokeWidth||0;var i=Math.round(t)%2/2;return n.x=Math.floor(n.x||this.x||0)+i,n.y=Math.floor(n.y||this.y||0)+i,n.width=Math.floor((n.width||this.width||0)-2*i),n.height=Math.floor((n.height||this.height||0)-2*i),u(n.strokeWidth)&&(n.strokeWidth=t),n},i.prototype.complexColor=function(t,i,r){var h=this.renderer,l,s,e,a,c,p,w,k,g,nt,o=[],tt;v(this.renderer,"complexColor",{args:arguments},function(){if(t.radialGradient?s="radialGradient":t.linearGradient&&(s="linearGradient"),s){if(e=t[s],c=h.gradients,p=t.stops,g=r.radialReference,y(e)&&(t[s]=e={x1:e[0],y1:e[1],x2:e[2],y2:e[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===s&&g&&!u(e.gradientUnits)&&(a=e,e=b(e,h.getRadialAttr(g,a),{gradientUnits:"userSpaceOnUse"})),f(e,function(n,t){"id"!==t&&o.push(t,n)}),f(p,function(n){o.push(n)}),o=o.join(","),c[o])nt=c[o].attr("id");else{e.id=nt=d();var v=c[o]=h.createElement(s).attr(e).add(h.defs);v.radAttr=a;v.stops=[];p.forEach(function(t){0===t[1].indexOf("rgba")?(l=n.parse(t[1]),w=l.get("rgb"),k=l.get("a")):(w=t[1],k=1);t=h.createElement("stop").attr({offset:t[0],"stop-color":w,"stop-opacity":k}).add(v);v.stops.push(t)})}tt="url("+h.url+"#"+nt+")";r.setAttribute(i,tt);r.gradient=o;t.toString=function(){return tt}}})},i.prototype.css=function(n){var t=this.styles,u={},i=this.element,r="",e=!t,a=["textOutline","textOverflow","width"],h,l;return n&&n.color&&(n.fill=n.color),t&&f(n,function(n,i){t&&t[i]!==n&&(u[i]=n,e=!0)}),e&&(t&&(n=c(t,u)),n&&(null===n.width||"auto"===n.width?delete this.textWidth:"text"===i.nodeName.toLowerCase()&&n.width&&(h=this.textWidth=s(n.width))),this.styles=n,h&&!it&&this.renderer.forExport&&delete n.width,i.namespaceURI===this.SVG_NS?(l=function(n,t){return"-"+t.toLowerCase()},f(n,function(n,t){-1===a.indexOf(t)&&(r+=t.replace(/([A-Z])/g,l)+":"+n+";")}),r&&o(i,"style",r)):ot(i,n),this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),n&&n.textOutline&&this.applyTextOutline(n.textOutline))),this},i.prototype.dashstyleSetter=function(n){var i=this["stroke-width"],t;if("inherit"===i&&(i=1),n=n&&n.toLowerCase()){for(t=n.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(","),n=t.length;n--;)t[n]=""+s(t[n])*r(i,NaN);n=t.join(",").replace(/NaN/g,"none");this.element.setAttribute("stroke-dasharray",n)}},i.prototype.destroy=function(){var n=this,t=n.element||{},u=n.renderer,i=u.isSVG&&"SPAN"===t.nodeName&&n.parentGroup||void 0,r=t.ownerSVGElement,e;if(t.onclick=t.onmouseout=t.onmouseover=t.onmousemove=t.point=null,k(n),n.clipPath&&r&&(e=n.clipPath,[].forEach.call(r.querySelectorAll("[clip-path],[CLIP-PATH]"),function(n){-1<n.getAttribute("clip-path").indexOf(e.element.id)&&n.removeAttribute("clip-path")}),n.clipPath=e.destroy()),n.stops){for(r=0;r<n.stops.length;r++)n.stops[r].destroy();n.stops.length=0;n.stops=void 0}for(n.safeRemoveChild(t),u.styledMode||n.destroyShadows();i&&i.div&&0===i.div.childNodes.length;)t=i.parentGroup,n.safeRemoveChild(i.div),delete i.div,i=t;n.alignTo&&h(u.alignedObjects,n);f(n,function(t,i){n[i]&&n[i].parentGroup===n&&n[i].destroy&&n[i].destroy();delete n[i]})},i.prototype.destroyShadows=function(){(this.shadows||[]).forEach(function(n){this.safeRemoveChild(n)},this);this.shadows=void 0},i.prototype.destroyTextPath=function(n,t){var i=n.getElementsByTagName("text")[0];if(i){if(i.removeAttribute("dx"),i.removeAttribute("dy"),t.element.setAttribute("id",""),this.textPathWrapper&&i.getElementsByTagName("textPath").length){for(n=this.textPathWrapper.element.childNodes;n.length;)i.appendChild(n[0]);i.removeChild(this.textPathWrapper.element)}}else(n.getAttribute("dx")||n.getAttribute("dy"))&&(n.removeAttribute("dx"),n.removeAttribute("dy"));this.textPathWrapper&&(this.textPathWrapper=this.textPathWrapper.destroy())},i.prototype.dSetter=function(n,t,i){y(n)&&("string"==typeof n[0]&&(n=this.renderer.pathToSegments(n)),this.pathArray=n,n=n.reduce(function(n,t,i){return t&&t.join?(i?n+" ":"")+t.join(" "):(t||"").toString()},""));/(NaN| {2}|^$)/.test(n)&&(n="M 0 0");this[t]!==n&&(i.setAttribute(t,n),this[t]=n)},i.prototype.fadeOut=function(n){var t=this;t.animate({opacity:0},{duration:r(n,150),complete:function(){t.attr({y:-9999}).hide()}})},i.prototype.fillSetter=function(n,t,i){"string"==typeof n?i.setAttribute(t,n):n&&this.complexColor(n,t,i)},i.prototype.getBBox=function(n,t){var f,o=this.renderer,h=this.element,e=this.styles,y=this.textStr,a=o.cache,v=o.cacheKeys,w=h.namespaceURI===this.SVG_NS,b,s,l;if(t=r(t,this.rotation,0),b=o.styledMode?h&&i.prototype.getStyle.call(h,"font-size"):e&&e.fontSize,u(y)&&(s=y.toString(),-1===s.indexOf("<")&&(s=s.replace(/[0-9]/g,"0")),s+=["",t,b,this.textWidth,e&&e.textOverflow,e&&e.fontWeight].join()),s&&!n&&(f=a[s]),!f){if(w||o.forExport){try{l=this.fakeTS&&function(n){[].forEach.call(h.querySelectorAll(".highcharts-text-outline"),function(t){t.style.display=n})};p(l)&&l("none");f=h.getBBox?c({},h.getBBox()):{width:h.offsetWidth,height:h.offsetHeight};p(l)&&l("")}catch(k){""}(!f||0>f.width)&&(f={width:0,height:0})}else f=this.htmlGetBBox();if(o.isSVG&&(n=f.width,o=f.height,w&&(f.height=o={"11px,17":14,"13px,20":16}[e&&e.fontSize+","+Math.round(o)]||o),t&&(e=t*g,f.width=Math.abs(o*Math.sin(e))+Math.abs(n*Math.cos(e)),f.height=Math.abs(o*Math.cos(e))+Math.abs(n*Math.sin(e)))),s&&0<f.height){for(;250<v.length;)delete a[v.shift()];a[s]||v.push(s);a[s]=f}}return f},i.prototype.getStyle=function(n){return rt.getComputedStyle(this.element||this,"").getPropertyValue(n)},i.prototype.hasClass=function(n){return-1!==(""+this.attr("class")).split(" ").indexOf(n)},i.prototype.hide=function(n){return n?this.attr({y:-9999}):this.attr({visibility:"hidden"}),this},i.prototype.htmlGetBBox=function(){return{height:0,width:0,x:0,y:0}},i.prototype.init=function(n,t){this.element="span"===t?et(t):e.createElementNS(this.SVG_NS,t);this.renderer=n;v(this,"afterInit")},i.prototype.invert=function(n){return this.inverted=n,this.updateTransform(),this},i.prototype.on=function(n,t){var r,u,i=this.element,f;return nt&&"click"===n?(i.ontouchstart=function(n){r=n.touches[0].clientX;u=n.touches[0].clientY},i.ontouchend=function(n){r&&4<=Math.sqrt(Math.pow(r-n.changedTouches[0].clientX,2)+Math.pow(u-n.changedTouches[0].clientY,2))||t.call(i,n);f=!0;n.preventDefault()},i.onclick=function(n){f||t.call(i,n)}):i["on"+n]=t,this},i.prototype.opacitySetter=function(n,t,i){this[t]=n;i.setAttribute(t,n)},i.prototype.removeClass=function(n){return this.attr("class",(""+this.attr("class")).replace(w(n)?new RegExp(" ?"+n+" ?"):n,""))},i.prototype.removeTextOutline=function(n){for(var i=n.length,t;i--;)t=n[i],"highcharts-text-outline"===t.getAttribute("class")&&h(n,this.element.removeChild(t))},i.prototype.safeRemoveChild=function(n){var t=n.parentNode;t&&t.removeChild(n)},i.prototype.setRadialReference=function(n){var t=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=n,t&&t.radAttr&&t.animate(this.renderer.getRadialAttr(n,t.radAttr)),this},i.prototype.setTextPath=function(n,t){var e=this.element,c={textAnchor:"text-anchor"},s=!1,i=this.textPathWrapper,h=!i,r,o;if(t=b(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},t),r=t.attributes,n&&t&&t.enabled){if(i&&null===i.element.parentNode?(h=!0,i=i.destroy()):i&&this.removeTextOutline.call(i.parentGroup,[].slice.call(e.getElementsByTagName("tspan"))),this.options&&this.options.padding&&(r.dx=-this.options.padding),i||(this.textPathWrapper=i=this.renderer.createElement("textPath"),s=!0),o=i.element,(t=n.element.getAttribute("id"))||n.element.setAttribute("id",t=d()),h)for(n=e.getElementsByTagName("tspan");n.length;)n[0].setAttribute("y",0),ht(r.dx)&&n[0].setAttribute("x",-r.dx),o.appendChild(n[0]);s&&i&&i.add({element:this.text?this.text.element:e});o.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+t);u(r.dy)&&(o.parentNode.setAttribute("dy",r.dy),delete r.dy);u(r.dx)&&(o.parentNode.setAttribute("dx",r.dx),delete r.dx);f(r,function(n,t){o.setAttribute(c[t]||t,n)});e.removeAttribute("transform");this.removeTextOutline.call(i,[].slice.call(e.getElementsByTagName("tspan")));this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0});this.applyTextOutline=this.updateTransform=tt}else i&&(delete this.updateTransform,delete this.applyTextOutline,this.destroyTextPath(e,n),this.updateTransform(),this.options&&this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this},i.prototype.shadow=function(n,t,i){var l=[],s=this.element,a=!1,v=this.oldShadowOptions,e={color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:3},r,y,p,u,h;if(!0===n?r=e:"object"==typeof n&&(r=c(e,n)),r&&(r&&v&&f(r,function(n,t){n!==v[t]&&(a=!0)}),a&&this.destroyShadows(),this.oldShadowOptions=r),r){if(!this.shadows){for(y=r.opacity/r.width,p=this.parentInverted?"translate(-1,-1)":"translate("+r.offsetX+", "+r.offsetY+")",e=1;e<=r.width;e++)u=s.cloneNode(!1),h=2*r.width+1-2*e,o(u,{stroke:n.color||"#000000","stroke-opacity":y*e,"stroke-width":h,transform:p,fill:"none"}),u.setAttribute("class",(u.getAttribute("class")||"")+" highcharts-shadow"),i&&(o(u,"height",Math.max(o(u,"height")-h,0)),u.cutHeight=h),t?t.element.appendChild(u):s.parentNode&&s.parentNode.insertBefore(u,s),l.push(u);this.shadows=l}}else this.destroyShadows();return this},i.prototype.show=function(n){return this.attr({visibility:n?"inherit":"visible"})},i.prototype.strokeSetter=function(n,t,r){this[t]=n;this.stroke&&this["stroke-width"]?(i.prototype.fillSetter.call(this,this.stroke,"stroke",r),r.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===t&&0===n&&this.hasStroke?(r.removeAttribute("stroke"),this.hasStroke=!1):this.renderer.styledMode&&this["stroke-width"]&&(r.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)},i.prototype.strokeWidth=function(){var n,i,t;return this.renderer.styledMode?(n=this.getStyle("stroke-width"),i=0,n.indexOf("px")===n.length-2?i=s(n):""!==n&&(t=e.createElementNS(a,"rect"),o(t,{width:n,"stroke-width":0}),this.element.parentNode.appendChild(t),i=t.getBBox().width,t.parentNode.removeChild(t)),i):this["stroke-width"]||0},i.prototype.symbolAttr=function(n){var t=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(i){t[i]=r(n[i],t[i])});t.attr({d:t.renderer.symbols[t.symbolName](t.x,t.y,t.width,t.height,t)})},i.prototype.textSetter=function(n){n!==this.textStr&&(delete this.textPxLength,this.textStr=n,this.added&&this.renderer.buildText(this))},i.prototype.titleSetter=function(n){var t=this.element.getElementsByTagName("title")[0];t||(t=e.createElementNS(this.SVG_NS,"title"),this.element.appendChild(t));t.firstChild&&t.removeChild(t.firstChild);t.appendChild(e.createTextNode(String(r(n,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")))},i.prototype.toFront=function(){var n=this.element;return n.parentNode.appendChild(n),this},i.prototype.translate=function(n,t){return this.attr({translateX:n,translateY:t})},i.prototype.updateShadows=function(n,t,i){var r=this.shadows,u;if(r)for(u=r.length;u--;)i.call(r[u],"height"===n?Math.max(t-(r[u].cutHeight||0),0):"d"===n?this.d:t,n,r[u])},i.prototype.updateTransform=function(){var n=this.translateX||0,i=this.translateY||0,f=this.scaleX,e=this.scaleY,o=this.inverted,s=this.rotation,h=this.matrix,t=this.element;o&&(n+=this.width,i+=this.height);n=["translate("+n+","+i+")"];u(h)&&n.push("matrix("+h.join(",")+")");o?n.push("rotate(90) scale(-1,1)"):s&&n.push("rotate("+s+" "+r(this.rotationOriginX,t.getAttribute("x"),0)+" "+r(this.rotationOriginY,t.getAttribute("y")||0)+")");(u(f)||u(e))&&n.push("scale("+r(f,1)+" "+r(e,1)+")");n.length&&t.setAttribute("transform",n.join(" "))},i.prototype.visibilitySetter=function(n,t,i){"inherit"===n?i.removeAttribute(t):this[t]!==n&&i.setAttribute(t,n);this[t]=n},i.prototype.xGetter=function(n){return"circle"===this.element.nodeName&&("x"===n?n="cx":"y"===n&&(n="cy")),this._defaultGetter(n)},i.prototype.zIndexSetter=function(n,t){var r=this.renderer,f=this.parentGroup,c=(f||r).element||r.box,e=this.element,o=!1,h,i,l;if(r=c===r.box,h=this.added,u(n)?(e.setAttribute("data-z-index",n),n=+n,this[t]===n&&(h=!1)):u(this[t])&&e.removeAttribute("data-z-index"),this[t]=n,h){for((n=this.zIndex)&&f&&(f.handleZ=!0),t=c.childNodes,i=t.length-1;0<=i&&!o;i--)f=t[i],h=f.getAttribute("data-z-index"),l=!u(h),f!==e&&(0>n&&l&&!r&&!i?(c.insertBefore(e,t[i]),o=!0):(s(h)<=n||l&&(!u(n)||0<=n))&&(c.insertBefore(e,t[i+1]||null),o=!0));o||(c.insertBefore(e,t[r?3:0]||null),o=!0)}return o},i}(),i.prototype["stroke-widthSetter"]=i.prototype.strokeSetter,i.prototype.yGetter=i.prototype.xGetter,i.prototype.matrixSetter=i.prototype.rotationOriginXSetter=i.prototype.rotationOriginYSetter=i.prototype.rotationSetter=i.prototype.scaleXSetter=i.prototype.scaleYSetter=i.prototype.translateXSetter=i.prototype.translateYSetter=i.prototype.verticalAlignSetter=function(n,t){this[t]=n;this.doTransform=!0},t.SVGElement=i,t.SVGElement}),i(t,"parts/SvgRenderer.js",[t["parts/Color.js"],t["parts/Globals.js"],t["parts/SVGElement.js"],t["parts/Utilities.js"]],function(n,t,i,r){var it=n.parse,v=r.addEvent,u=r.attr,rt=r.createElement,c=r.css,f=r.defined,ut=r.destroyObjectProperties,o=r.extend,ft=r.isArray,y=r.isNumber,l=r.isObject,et=r.isString,h=r.merge,w=r.objectEach,s=r.pick,b=r.pInt,k=r.removeEvent,ot=r.splat,st=r.uniqueKey,ht=t.charts,d=t.deg2rad,e=t.doc,g=t.isFirefox,nt=t.isMS,ct=t.isWebKit;r=t.noop;var lt=t.svg,tt=t.SVG_NS,a=t.symbolSizes,p=t.win;n=t.SVGRenderer=function(){this.init.apply(this,arguments)};o(n.prototype,{Element:i,SVG_NS:tt,init:function(n,t,i,r,f,o,s){var l=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"}),h;s||l.css(this.getStyle(r));r=l.element;n.appendChild(r);u(n,"dir","ltr");-1===n.innerHTML.indexOf("xmlns")&&u(r,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=r;this.boxWrapper=l;this.alignedObjects=[];this.url=(g||ct)&&e.getElementsByTagName("base").length?p.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(e.createTextNode("Created with Highcharts 8.1.0"));this.defs=this.createElement("defs").add();this.allowHTML=o;this.forExport=f;this.styledMode=s;this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount=0;this.setSize(t,i,!1);g&&n.getBoundingClientRect&&(t=function(){c(n,{left:0,top:0});h=n.getBoundingClientRect();c(n,{left:Math.ceil(h.left)-h.left+"px",top:Math.ceil(h.top)-h.top+"px"})},t(),this.unSubPixelFix=v(p,"resize",t))},definition:function(n){function t(n,r){var u;return ot(n).forEach(function(n){var f=i.createElement(n.tagName),o={};w(n,function(n,t){"tagName"!==t&&"children"!==t&&"textContent"!==t&&(o[t]=n)});f.attr(o);f.add(r||i.defs);n.textContent&&f.element.appendChild(e.createTextNode(n.textContent));t(n.children||[],f);u=f}),u}var i=this;return t(n)},getStyle:function(n){return this.style=o({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},n)},setStyle:function(n){this.boxWrapper.css(this.getStyle(n))},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var n=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),ut(this.gradients||{}),this.gradients=null,n&&(this.defs=n.destroy()),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null},createElement:function(n){var t=new this.Element;return t.init(this,n),t},draw:r,getRadialAttr:function(n,t){return{cx:n[0]-n[2]/2+t.cx*n[2],cy:n[1]-n[2]/2+t.cy*n[2],r:t.r*n[2]}},truncate:function(n,t,i,r,u,f,o){var p=this,k=n.rotation,a,c=r?1:0,s=(i||r).length,h=s,v=[],y=function(n){t.firstChild&&t.removeChild(t.firstChild);n&&t.appendChild(e.createTextNode(n))},w=function(f,e){if(e=e||f,"undefined"==typeof v[e])if(t.getSubStringLength)try{v[e]=u+t.getSubStringLength(0,r?e+1:e)}catch(s){""}else p.getSpanWidth&&(y(o(i||r,f)),v[e]=u+p.getSpanWidth(n,t));return v[e]},b,l;if(n.rotation=0,l=w(t.textContent.length),b=u+l>f){for(;c<=s;)h=Math.ceil((c+s)/2),r&&(a=o(r,h)),l=w(h,a&&a.length-1),c===s?c=s+1:l>f?s=h-1:c=h;0===s?y(""):i&&s===i.length-1||y(a||o(i||r,h))}return r&&r.splice(0,h),n.actualWidth=l,n.rotation=k,b},escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},buildText:function(n){var r=n.element,f=this,nt=f.forExport,t=s(n.textStr,"").toString(),it=-1!==t.indexOf("<"),rt=r.childNodes,ut,v=u(r,"x"),i=n.styles,o=n.textWidth,y=i&&i.lineHeight,h=i&&i.textOutline,l=i&&"ellipsis"===i.textOverflow,a=i&&"nowrap"===i.whiteSpace,p=i&&i.fontSize,k,ft=rt.length;i=o&&!n.added&&this.box;var et=function(n){var t;return f.styledMode||(t=/(px|em)$/.test(n&&n.style.fontSize)?n.style.fontSize:p||f.style.fontSize||12),y?b(y):f.fontMetrics(t,n.getAttribute("style")?n:r).h},d=function(n,t){return w(f.escapes,function(i,r){t&&-1!==t.indexOf(i)||(n=n.toString().replace(new RegExp(i,"g"),r))}),n},g=function(n,t){var i=n.indexOf("<");return n=n.substring(i,n.indexOf(">")-i),i=n.indexOf(t+"="),-1!==i&&(i=i+t.length+1,t=n.charAt(i),'"'===t||"'"===t)?(n=n.substring(i+1),n.substring(0,n.indexOf(t))):void 0},ot=/<br.*?>/g,st=[t,l,a,y,h,p,o].join();if(st!==n.textCache){for(n.textCache=st;ft--;)r.removeChild(rt[ft]);it||h||l||o||-1!==t.indexOf(" ")&&(!a||ot.test(t))?(i&&i.appendChild(r),it?(t=f.styledMode?t.replace(/<(b|strong)>/g,'<span class="highcharts-strong">').replace(/<(i|em)>/g,'<span class="highcharts-emphasized">'):t.replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">'),t=t.replace(/<a/g,"<span").replace(/<\/(b|strong|i|em|a)>/g,"<\/span>").split(ot)):t=[t],t=t.filter(function(n){return""!==n}),t.forEach(function(t,i){var h=0,y=0,s;t=t.replace(/^\s+|\s+$/g,"").replace(/<span/g,"|||<span").replace(/<\/span>/g,"<\/span>|||");s=t.split("|||");s.forEach(function(t){var rt,w,b,ft,it,ot;if((""!==t||1===s.length)&&(rt={},w=e.createElementNS(f.SVG_NS,"tspan"),(b=g(t,"class"))&&u(w,"class",b),(b=g(t,"style"))&&(b=b.replace(/(;| |^)color([ :])/,"$1fill$2"),u(w,"style",b)),(ft=g(t,"href"))&&!nt&&(u(w,"onclick",'location.href="'+ft+'"'),u(w,"class","highcharts-anchor"),f.styledMode||c(w,{cursor:"pointer"})),t=d(t.replace(/<[a-zA-Z\/](.|\n)*?>/g,"")||" ")," "!==t)){if(w.appendChild(e.createTextNode(t)),h?rt.dx=0:i&&null!==v&&(rt.x=v),u(w,rt),r.appendChild(w),!h&&k&&(!lt&&nt&&c(w,{display:"block"}),u(w,"dy",et(w))),o)if(it=t.replace(/([^\^])-/g,"$1- ").split(" "),rt=!a&&(1<s.length||i||1<it.length),ft=0,ot=et(w),l)ut=f.truncate(n,w,t,void 0,0,Math.max(0,o-parseInt(p||12,10)),function(n,t){return n.substring(0,t)+"…"});else if(rt)for(;it.length;)it.length&&!a&&0<ft&&(w=e.createElementNS(tt,"tspan"),u(w,{dy:ot,x:v}),b&&u(w,"style",b),w.appendChild(e.createTextNode(it.join(" ").replace(/- /g,"-"))),r.appendChild(w)),f.truncate(n,w,null,it,0===ft?y:0,o,function(n,t){return it.slice(0,t).join(" ").replace(/- /g,"-")}),y=n.actualWidth,ft++;h++}});k=k||r.childNodes.length}),l&&ut&&n.attr("title",d(n.textStr,["&lt;","&gt;"])),i&&i.removeChild(r),h&&n.applyTextOutline&&n.applyTextOutline(h)):r.appendChild(e.createTextNode(d(t)))}},getContrast:function(n){return n=it(n).rgba,n[0]*=1,n[1]*=1.2,n[2]*=.5,459<n[0]+n[1]+n[2]?"#000000":"#FFFFFF"},button:function(n,t,i,r,u,f,e,s,c,l){var a=this.label(n,t,i,c,void 0,void 0,l,void 0,"button"),y=0,p=this.styledMode,w,b,k,d;a.attr(h({padding:8,r:2},u));p||(u=h({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontWeight:"normal"}},u),w=u.style,delete u.style,f=h(u,{fill:"#e6e6e6"},f),b=f.style,delete f.style,e=h(u,{fill:"#e6ebf5",style:{color:"#000000",fontWeight:"bold"}},e),k=e.style,delete e.style,s=h(u,{style:{color:"#cccccc"}},s),d=s.style,delete s.style);v(a.element,nt?"mouseover":"mouseenter",function(){3!==y&&a.setState(1)});v(a.element,nt?"mouseout":"mouseleave",function(){3!==y&&a.setState(y)});a.setState=function(n){1!==n&&(a.state=y=n);a.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][n||0]);p||a.attr([u,f,e,s][n||0]).css([w,b,k,d][n||0])};p||a.attr(u).css(o({cursor:"default"},w));return a.on("click",function(n){3!==y&&r.call(a,n)})},crispLine:function(n,t,i){void 0===i&&(i="round");var r=n[0],u=n[1];return r[1]===u[1]&&(r[1]=u[1]=Math[i](r[1])-t%2/2),r[2]===u[2]&&(r[2]=u[2]=Math[i](r[2])+t%2/2),n},path:function(n){var t=this.styledMode?{}:{fill:"none"};return ft(n)?t.d=n:l(n)&&o(t,n),this.createElement("path").attr(t)},circle:function(n,t,i){return n=l(n)?n:"undefined"==typeof n?{}:{x:n,y:t,r:i},t=this.createElement("circle"),t.xSetter=t.ySetter=function(n,t,i){i.setAttribute("c"+t,n)},t.attr(n)},arc:function(n,t,i,r,u,f){return l(n)?(r=n,t=r.y,i=r.r,n=r.x):r={innerR:r,start:u,end:f},n=this.symbol("arc",n,t,i,i,r),n.r=i,n},rect:function(n,t,i,r,f,e){f=l(n)?n.r:f;var o=this.createElement("rect");return n=l(n)?n:"undefined"==typeof n?{}:{x:n,y:t,width:Math.max(i,0),height:Math.max(r,0)},this.styledMode||("undefined"!=typeof e&&(n.strokeWidth=e,n=o.crisp(n)),n.fill="none"),f&&(n.r=f),o.rSetter=function(n,t,i){o.r=n;u(i,{rx:n,ry:n})},o.rGetter=function(){return o.r},o.attr(n)},setSize:function(n,t,i){var r=this.alignedObjects,u=r.length;for(this.width=n,this.height=t,this.boxWrapper.animate({width:n,height:t},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:s(i,!0)?void 0:0});u--;)r[u].align()},g:function(n){var t=this.createElement("g");return n?t.attr({"class":"highcharts-"+n}):t},image:function(n,t,i,r,u,f){var e={preserveAspectRatio:"none"},h=function(n,t){n.setAttributeNS?n.setAttributeNS("http://www.w3.org/1999/xlink","href",t):n.setAttribute("hc-svg-href",t)},c=function(t){h(s.element,n);f.call(s,t)},s;return 1<arguments.length&&o(e,{x:t,y:i,width:r,height:u}),s=this.createElement("image").attr(e),f?(h(s.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),e=new p.Image,v(e,"load",c),e.src=n,e.complete&&c({})):h(s.element,n),s},symbol:function(n,t,i,r,u,h){var y=this,b=/^url\((.*?)\)$/,k=b.test(n),p=!k&&(this.symbols[n]?n:"circle"),d=p&&this.symbols[p],g,l,v,w;return d?("number"==typeof t&&(g=d.call(this.symbols,Math.round(t||0),Math.round(i||0),r,u,h)),l=this.path(g),y.styledMode||l.attr("fill","none"),o(l,{symbolName:p,x:t,y:i,width:r,height:u}),h&&o(l,h)):k&&(v=n.match(b)[1],l=this.image(v),l.imgwidth=s(a[v]&&a[v].width,h&&h.width),l.imgheight=s(a[v]&&a[v].height,h&&h.height),w=function(){l.attr({width:l.width,height:l.height})},["width","height"].forEach(function(n){l[n+"Setter"]=function(n,t){var r={},i=this["img"+t],u="width"===t?"translateX":"translateY";this[t]=n;f(i)&&(h&&"within"===h.backgroundSize&&this.width&&this.height&&(i=Math.round(i*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(t,i),this.alignByTranslate||(r[u]=((this[t]||0)-i)/2,this.attr(r)))}}),f(t)&&l.attr({x:t,y:i}),l.isImg=!0,f(l.imgwidth)&&f(l.imgheight)?w():(l.attr({width:0,height:0}),rt("img",{onload:function(){var n=ht[y.chartIndex];0===this.width&&(c(this,{position:"absolute",top:"-999em"}),e.body.appendChild(this));a[v]={width:this.width,height:this.height};l.imgwidth=this.width;l.imgheight=this.height;l.element&&w();this.parentNode&&this.parentNode.removeChild(this);y.imgCount--;y.imgCount||!n||n.hasLoaded||n.onload()},src:v}),this.imgCount++)),l},symbols:{circle:function(n,t,i,r){return this.arc(n+i/2,t+r/2,i/2,r/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},square:function(n,t,i,r){return[["M",n,t],["L",n+i,t],["L",n+i,t+r],["L",n,t+r],["Z"]]},triangle:function(n,t,i,r){return[["M",n+i/2,t],["L",n+i,t+r],["L",n,t+r],["Z"]]},"triangle-down":function(n,t,i,r){return[["M",n,t],["L",n+i,t],["L",n+i/2,t+r],["Z"]]},diamond:function(n,t,i,r){return[["M",n+i/2,t],["L",n+i,t+r/2],["L",n+i/2,t+r],["L",n,t+r/2],["Z"]]},arc:function(n,t,i,r,u){var o=u.start,e=u.r||i,c=u.r||r||i,h=u.end-.001;i=u.innerR;r=s(u.open,.001>Math.abs(u.end-u.start-2*Math.PI));var a=Math.cos(o),v=Math.sin(o),l=Math.cos(h);return h=Math.sin(h),o=s(u.longArc,.001>u.end-o-Math.PI?0:1),e=[["M",n+e*a,t+c*v],["A",e,c,0,o,s(u.clockwise,1),n+e*l,t+c*h]],f(i)&&e.push(r?["M",n+i*l,t+i*h]:["L",n+i*l,t+i*h],["A",i,i,0,o,f(u.clockwise)?1-u.clockwise:0,n+i*a,t+i*v]),r||e.push(["Z"]),e},callout:function(n,t,i,r,u){var f=Math.min(u&&u.r||0,i,r),o=f+6,e=u&&u.anchorX,s;return u=u&&u.anchorY,s=[["M",n+f,t],["L",n+i-f,t],["C",n+i,t,n+i,t,n+i,t+f],["L",n+i,t+r-f],["C",n+i,t+r,n+i,t+r,n+i-f,t+r],["L",n+f,t+r],["C",n,t+r,n,t+r,n,t+r-f],["L",n,t+f],["C",n,t,n,t,n+f,t]],e&&e>i?u>t+o&&u<t+r-o?s.splice(3,1,["L",n+i,u-6],["L",n+i+6,u],["L",n+i,u+6],["L",n+i,t+r-f]):s.splice(3,1,["L",n+i,r/2],["L",e,u],["L",n+i,r/2],["L",n+i,t+r-f]):e&&0>e?u>t+o&&u<t+r-o?s.splice(7,1,["L",n,u+6],["L",n-6,u],["L",n,u-6],["L",n,t+f]):s.splice(7,1,["L",n,r/2],["L",e,u],["L",n,r/2],["L",n,t+f]):u&&u>r&&e>n+o&&e<n+i-o?s.splice(5,1,["L",e+6,t+r],["L",e,t+r+6],["L",e-6,t+r],["L",n+f,t+r]):u&&0>u&&e>n+o&&e<n+i-o&&s.splice(1,1,["L",e-6,t],["L",e,t-6],["L",e+6,t],["L",i-f,t]),s}},clipRect:function(n,t,i,r){var u=st()+"-",f=this.createElement("clipPath").attr({id:u}).add(this.defs);return n=this.rect(n,t,i,r,0).add(f),n.id=u,n.clipPath=f,n.count=0,n},text:function(n,t,i,r){var u={};return r&&(this.allowHTML||!this.forExport)?this.html(n,t,i):(u.x=Math.round(t||0),i&&(u.y=Math.round(i)),f(n)&&(u.text=n),n=this.createElement("text").attr(u),r||(n.xSetter=function(n,t,i){for(var f=i.getElementsByTagName("tspan"),e=i.getAttribute(t),u,r=0;r<f.length;r++)u=f[r],u.getAttribute(t)===e&&u.setAttribute(t,n);i.setAttribute(t,n)}),n)},fontMetrics:function(n,t){return n=!this.styledMode&&/px/.test(n)||!p.getComputedStyle?n||t&&t.style&&t.style.fontSize||this.style&&this.style.fontSize:t&&i.prototype.getStyle.call(t,"font-size"),n=/px/.test(n)?b(n):12,t=24>n?n+3:Math.round(1.2*n),{h:t,b:Math.round(.8*t),f:n}},rotCorr:function(n,t,i){var r=n;return t&&i&&(r=Math.max(r*Math.cos(t*d),4)),{x:-n/3*Math.sin(t*d),y:r}},pathToSegments:function(n){for(var r=[],t=[],u={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},i=0;i<n.length;i++)et(t[0])&&y(n[i])&&t.length===u[t[0].toUpperCase()]&&n.splice(i,0,t[0].replace("M","L").replace("m","l")),"string"==typeof n[i]&&(t.length&&r.push(t.slice(0)),t.length=0),t.push(n[i]);return r.push(t.slice(0)),r},label:function(n,t,r,u,e,s,c,l,a){var g=this,ft=g.styledMode,v=g.g("button"!==a&&"label"),p=v.text=g.text("",0,0,c).attr({zIndex:1}),w,pt={width:0,height:0,x:0,y:0},b=pt,et=0,d=3,ot=0,nt,ht,st,ct,it,lt={},at,vt,wt=/^url\((.*?)\)$/.test(u),yt=ft||wt,bt=function(){return ft?w.strokeWidth()%2/2:(at?parseInt(at,10):0)%2/2},kt;a&&v.addClass("highcharts-"+a);var rt=function(){var n=p.element.style,t={};b=y(nt)&&y(ht)&&!it||!f(p.textStr)?pt:p.getBBox();v.width=(nt||b.width||0)+2*d+ot;v.height=(ht||b.height||0)+2*d;vt=d+Math.min(g.fontMetrics(n&&n.fontSize,p).b,b.height||Infinity);yt&&(w||(v.box=w=g.symbols[u]||wt?g.symbol(u):g.rect(),w.addClass(("button"===a?"":"highcharts-label-box")+(a?" highcharts-"+a+"-box":"")),w.add(v),n=bt(),t.x=n,t.y=(l?-vt:0)+n),t.width=Math.round(v.width),t.height=Math.round(v.height),w.attr(o(t,lt)),lt={})},ut=function(){var n=ot+d,t=l?0:vt;f(nt)&&b&&("center"===it||"right"===it)&&(n+={center:.5,right:1}[it]*(nt-b.width));(n!==p.x||t!==p.y)&&(p.attr("x",n),p.hasBoxWidthChanged&&(b=p.getBBox(!0),rt()),"undefined"!=typeof t&&p.attr("y",t));p.x=n;p.y=t},tt=function(n,t){w?w.attr(n,t):lt[n]=t};return v.onAdd=function(){p.add(v);v.attr({text:n||0===n?n:"",x:t,y:r});w&&f(e)&&v.attr({anchorX:e,anchorY:s})},v.widthSetter=function(n){nt=y(n)?n:null},v.heightSetter=function(n){ht=n},v["text-alignSetter"]=function(n){it=n},v.paddingSetter=function(n){f(n)&&n!==d&&(d=v.padding=n,ut())},v.paddingLeftSetter=function(n){f(n)&&n!==ot&&(ot=n,ut())},v.alignSetter=function(n){n={left:0,center:.5,right:1}[n];n!==et&&(et=n,b&&v.attr({x:st}))},v.textSetter=function(n){"undefined"!=typeof n&&p.attr({text:n});rt();ut()},v["stroke-widthSetter"]=function(n,t){n&&(yt=!0);at=this["stroke-width"]=n;tt(t,n)},ft?v.rSetter=function(n,t){tt(t,n)}:v.strokeSetter=v.fillSetter=v.rSetter=function(n,t){"r"!==t&&("fill"===t&&n&&(yt=!0),v[t]=n);tt(t,n)},v.anchorXSetter=function(n,t){e=v.anchorX=n;tt(t,Math.round(n)-bt()-st)},v.anchorYSetter=function(n,t){s=v.anchorY=n;tt(t,n-ct)},v.xSetter=function(n){v.x=n;et&&(n-=et*((nt||b.width)+2*d),v["forceAnimate:x"]=!0);st=Math.round(n);v.attr("translateX",st)},v.ySetter=function(n){ct=v.y=Math.round(n);v.attr("translateY",ct)},v.isLabel=!0,kt=v.css,c={css:function(n){var t,i;return n&&(t={},n=h(n),v.textProps.forEach(function(i){"undefined"!=typeof n[i]&&(t[i]=n[i],delete n[i])}),p.css(t),i="fontSize"in t||"fontWeight"in t,("width"in t||i)&&(rt(),i&&ut())),kt.call(v,n)},getBBox:function(){return{width:b.width+2*d,height:b.height+2*d,x:b.x-d,y:b.y-d}},destroy:function(){k(v.element,"mouseenter");k(v.element,"mouseleave");p&&p.destroy();w&&(w=w.destroy());i.prototype.destroy.call(v);v=g=p=rt=ut=tt=null}},v.on=function(n,t){var r=p&&"SPAN"===p.element.tagName?p:void 0,u;if(r){u=function(i){("mouseenter"===n||"mouseleave"===n)&&i.relatedTarget instanceof Element&&(v.element.contains(i.relatedTarget)||r.element.contains(i.relatedTarget))||t.call(v.element,i)};r.on(n,u)}return i.prototype.on.call(v,n,u||t),v},ft||(c.shadow=function(n){return n&&(rt(),w&&w.shadow(n)),v}),o(v,c)}});t.Renderer=n}),i(t,"parts/Html.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var h=t.attr,c=t.createElement,i=t.css,f=t.defined,r=t.extend,e=t.pick,l=t.pInt,o=n.isFirefox,a=n.isMS,v=n.isWebKit,s=n.SVGElement,u;t=n.SVGRenderer;u=n.win;r(s.prototype,{htmlCss:function(n){var t="SPAN"===this.element.tagName&&n&&"width"in n,f=e(t&&n.width,void 0),u;return t&&(delete n.width,this.textWidth=f,u=!0),n&&"ellipsis"===n.textOverflow&&(n.whiteSpace="nowrap",n.overflow="hidden"),this.styles=r(this.styles,n),i(this.element,n),u&&this.htmlUpdateTransform(),this},htmlGetBBox:function(){var n=this.element;return{x:n.offsetLeft,y:n.offsetTop,width:n.offsetWidth,height:n.offsetHeight}},htmlUpdateTransform:function(){var u,h,r;if(this.added){var s=this.renderer,n=this.element,c=this.translateX||0,a=this.translateY||0,y=this.x||0,p=this.y||0,e=this.textAlign||"left",v={left:0,center:.5,right:1}[e],t=this.styles,o=t&&t.whiteSpace;i(n,{marginLeft:c,marginTop:a});!s.styledMode&&this.shadows&&this.shadows.forEach(function(n){i(n,{marginLeft:c+1,marginTop:a+1})});this.inverted&&[].forEach.call(n.childNodes,function(t){s.invertChild(t,n)});"SPAN"===n.tagName&&(t=this.rotation,u=this.textWidth&&l(this.textWidth),h=[t,e,n.innerHTML,this.textWidth,this.textAlign].join(),!(r=u!==this.oldTextWidth)||(r=u>this.oldTextWidth)||((r=this.textPxLength)||(i(n,{width:"",whiteSpace:o||"nowrap"}),r=n.offsetWidth),r=r>u),r&&(/[ \-]/.test(n.textContent||n.innerText)||"ellipsis"===n.style.textOverflow)?(i(n,{width:u+"px",display:"block",whiteSpace:o||"normal"}),this.oldTextWidth=u,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1,h!==this.cTT&&(o=s.fontMetrics(n.style.fontSize,n).b,!f(t)||t===(this.oldRotation||0)&&e===this.oldAlign||this.setSpanRotation(t,v,o),this.getSpanCorrection(!f(t)&&this.textPxLength||n.offsetWidth,o,v,t,e)),i(n,{left:y+(this.xCorr||0)+"px",top:p+(this.yCorr||0)+"px"}),this.cTT=h,this.oldRotation=t,this.oldAlign=e)}else this.alignOnAdd=!0},setSpanRotation:function(n,t,r){var u={},f=this.renderer.getTransformKey();u[f]=u.transform="rotate("+n+"deg)";u[f+(o?"Origin":"-origin")]=u.transformOrigin=100*t+"% "+r+"px";i(this.element,u)},getSpanCorrection:function(n,t,i){this.xCorr=-n*i;this.yCorr=-t}});r(t.prototype,{getTransformKey:function(){return a&&!/Edge/.test(u.navigator.userAgent)?"-ms-transform":v?"-webkit-transform":o?"MozTransform":u.opera?"-o-transform":""},html:function(n,t,i){var u=this.createElement("span"),f=u.element,o=u.renderer,l=o.isSVG,a=function(n,t){["opacity","visibility"].forEach(function(i){n[i+"Setter"]=function(r,u,f){var e=n.div?n.div.style:t;s.prototype[i+"Setter"].call(this,r,u,f);e&&(e[u]=r)}});n.addedSetters=!0};return u.textSetter=function(n){n!==f.innerHTML&&(delete this.bBox,delete this.oldTextWidth);this.textStr=n;f.innerHTML=e(n,"");u.doTransform=!0},l&&a(u,u.element.style),u.xSetter=u.ySetter=u.alignSetter=u.rotationSetter=function(n,t){"align"===t&&(t="textAlign");u[t]=n;u.doTransform=!0},u.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)},u.attr({text:n,x:Math.round(t),y:Math.round(i)}).css({position:"absolute"}),o.styledMode||u.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),f.style.whiteSpace="nowrap",u.css=u.htmlCss,l&&(u.add=function(n){var e=o.box.parentNode,i=[],t;if(this.parentGroup=n){if(t=n.div,!t){for(;n;)i.push(n),n=n.parentGroup;i.reverse().forEach(function(n){function o(t,i){n[i]=t;"translateX"===i?f.left=t+"px":f.top=t+"px";n.doTransform=!0}var s=h(n.element,"class"),f;t=n.div=n.div||c("div",s?{className:s}:void 0,{position:"absolute",left:(n.translateX||0)+"px",top:(n.translateY||0)+"px",display:n.display,opacity:n.opacity,pointerEvents:n.styles&&n.styles.pointerEvents},t||e);f=t.style;r(n,{classSetter:function(n){return function(t){this.element.setAttribute("class",t);n.className=t}}(t),on:function(){return i[0].div&&u.on.apply({element:i[0].div},arguments),n},translateXSetter:o,translateYSetter:o});n.addedSetters||a(n)})}}else t=e;return t.appendChild(f),u.added=!0,u.alignOnAdd&&u.htmlUpdateTransform(),u}),u}})}),i(t,"parts/Tick.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var s=t.clamp,u=t.correctFloat,f=t.defined,h=t.destroyObjectProperties,c=t.extend,r=t.fireEvent,o=t.isNumber,l=t.merge,a=t.objectEach,i=t.pick,e=n.deg2rad;return t=function(){function n(n,t,i,u,f){this.isNewLabel=this.isNew=!0;this.axis=n;this.pos=t;this.type=i||"";this.parameters=f||{};this.tickmarkOffset=this.parameters.tickmarkOffset;this.options=this.parameters.options;r(this,"init");i||u||this.addLabel()}return n.prototype.addLabel=function(){var n=this,t=n.axis,o=t.options,w=t.chart,l=t.categories,b=t.logarithmic,a=t.names,s=n.pos,h=i(n.options&&n.options.labels,o.labels),e=t.tickPositions,k=s===e[0],d=s===e[e.length-1],r,v,p,y,g;a=this.parameters.category||(l?i(l[s],a[s],s):s);r=n.label;l=(!h.step||1===h.step)&&1===t.tickInterval;e=e.info;t.dateTime&&e&&(y=w.time.resolveDTLFormat(o.dateTimeLabelFormats[!o.grid&&e.higherRanks[s]||e.unitName]),g=y.main);n.isFirst=k;n.isLast=d;n.formatCtx={axis:t,chart:w,isFirst:k,isLast:d,dateTimeLabelFormat:g,tickPositionInfo:e,value:b?u(b.lin2log(a)):a,pos:s};o=t.labelFormatter.call(n.formatCtx,this.formatCtx);(p=y&&y.list)&&(n.shortenLabel=function(){for(v=0;v<p.length;v++)if(r.attr({text:t.labelFormatter.call(c(n.formatCtx,{dateTimeLabelFormat:p[v]}))}),r.getBBox().width<t.getSlotWidth(n)-2*i(h.padding,5))return;r.attr({text:""})});l&&t._addedPlotLB&&t.isXAxis&&n.moveLabel(o,h);f(r)||n.movedLabel?r&&r.textStr!==o&&!l&&(!r.textWidth||h.style&&h.style.width||r.styles.width||r.css({width:null}),r.attr({text:o}),r.textPxLength=r.getBBox().width):(n.label=r=n.createLabel({x:0,y:0},o,h),n.rotation=0)},n.prototype.createLabel=function(n,t,i){var r=this.axis,u=r.chart;return(n=f(t)&&i.enabled?u.renderer.text(t,n.x,n.y,i.useHTML).add(r.labelGroup):null)&&(u.styledMode||n.css(l(i.style)),n.textPxLength=n.getBBox().width),n},n.prototype.destroy=function(){h(this,this.axis)},n.prototype.getPosition=function(n,t,i,f){var e=this.axis,o=e.chart,h=f&&o.oldChartHeight||o.chartHeight;return n={x:n?u(e.translate(t+i,null,null,f)+e.transB):e.left+e.offset+(e.opposite?(f&&o.oldChartWidth||o.chartWidth)-e.right-e.left:0),y:n?h-e.bottom+e.offset-(e.opposite?e.height:0):u(h-e.translate(t+i,null,null,f)-e.transB)},n.y=s(n.y,-1e5,1e5),r(this,"afterGetPosition",{pos:n}),n},n.prototype.getLabelPosition=function(n,t,i,u,o,s,h,c){var l=this.axis,w=l.transA,b=l.isLinked&&l.linkedParent?l.linkedParent.reversed:l.reversed,a=l.staggerLines,y=l.tickRotCorr||{x:0,y:0},p=o.y,k=u||l.reserveSpaceDefault?0:-l.labelOffset*("center"===l.labelAlign?.5:1),v={};return f(p)||(p=0===l.side?i.rotation?-8:-i.getBBox().height:2===l.side?y.y+8:Math.cos(i.rotation*e)*(y.y-i.getBBox(!1,0).height/2)),n=n+o.x+k+y.x-(s&&u?s*w*(b?-1:1):0),t=t+p-(s&&!u?s*w*(b?1:-1):0),a&&(i=h/(c||1)%a,l.opposite&&(i=a-i-1),t+=l.labelOffset/a*i),v.x=n,v.y=Math.round(t),r(this,"afterGetLabelPosition",{pos:v,tickmarkOffset:s,index:h}),v},n.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},n.prototype.getMarkPath=function(n,t,i,r,u,f){return f.crispLine([["M",n,t],["L",n+(u?0:-i),t+(u?i:0)]],r)},n.prototype.handleOverflow=function(n){var t=this.axis,w=t.options.labels,f=n.x,a=t.chart.chartWidth,o=t.chart.spacing,v=i(t.labelLeft,Math.min(t.pos,o[3]));o=i(t.labelRight,Math.max(t.isRadial?0:t.pos+t.len,a-o[1]));var y=this.label,h=this.rotation,u={left:0,center:.5,right:1}[t.labelAlign||y.attr("align")],s=y.getBBox().width,c=t.getSlotWidth(this),r=c,b=1,l,p={};h||"justify"!==i(w.overflow,"justify")?0>h&&f-u*s<v?l=Math.round(f/Math.cos(h*e)-v):0<h&&f+u*s>o&&(l=Math.round((a-f)/Math.cos(h*e))):(a=f+(1-u)*s,f-u*s<v?r=n.x+r*(1-u)-v:a>o&&(r=o-n.x+r*u,b=-1),r=Math.min(c,r),r<c&&"center"===t.labelAlign&&(n.x+=b*(c-r-u*(c-Math.min(s,r)))),s>r||t.autoRotation&&(y.styles||{}).width)&&(l=r);l&&(this.shortenLabel?this.shortenLabel():(p.width=Math.floor(l)+"px",(w.style||{}).textOverflow||(p.textOverflow="ellipsis"),y.css(p)))},n.prototype.moveLabel=function(n,t){var i=this,u=i.label,f=!1,r=i.axis,o=r.reversed,s=r.chart.inverted,e;u&&u.textStr===n?(i.movedLabel=u,f=!0,delete i.label):a(r.ticks,function(t){f||t.isNew||t===i||!t.label||t.label.textStr!==n||(i.movedLabel=t.label,f=!0,t.labelPos=i.movedLabel.xy,delete t.label)});!f&&(i.labelPos||u)&&(e=i.labelPos||u.xy,u=s?e.x:o?0:r.width+r.left,r=s?o?r.width+r.left:0:e.y,i.movedLabel=i.createLabel({x:u,y:r},n,t),i.movedLabel&&i.movedLabel.attr({opacity:0}))},n.prototype.render=function(n,t,u){var f=this.axis,o=f.horiz,e=this.pos,s=i(this.tickmarkOffset,f.tickmarkOffset),h;e=this.getPosition(o,e,s,t);s=e.x;h=e.y;f=o&&s===f.pos+f.len||!o&&h===f.pos?-1:1;u=i(u,1);this.isActive=!0;this.renderGridLine(t,u,f);this.renderMark(e,u,f);this.renderLabel(e,t,u,n);this.isNew=!1;r(this,"afterRender")},n.prototype.renderGridLine=function(n,t,r){var u=this.axis,f=u.options,e=this.gridLine,o={},c=this.pos,s=this.type,l=i(this.tickmarkOffset,u.tickmarkOffset),a=u.chart.renderer,h=s?s+"Grid":"grid",v=f[h+"LineWidth"],y=f[h+"LineColor"];f=f[h+"LineDashStyle"];e||(u.chart.styledMode||(o.stroke=y,o["stroke-width"]=v,f&&(o.dashstyle=f)),s||(o.zIndex=1),n&&(t=0),this.gridLine=e=a.path().attr(o).addClass("highcharts-"+(s?s+"-":"")+"grid-line").add(u.gridGroup));e&&(r=u.getPlotLinePath({value:c+l,lineWidth:e.strokeWidth()*r,force:"pass",old:n}))&&e[n||this.isNew?"attr":"animate"]({d:r,opacity:t})},n.prototype.renderMark=function(n,t,r){var u=this.axis,o=u.options,c=u.chart.renderer,f=this.type,h=f?f+"Tick":"tick",s=u.tickSize(h),e=this.mark,l=!e,v=n.x,a;n=n.y;a=i(o[h+"Width"],!f&&u.isXAxis?1:0);o=o[h+"Color"];s&&(u.opposite&&(s[0]=-s[0]),l&&(this.mark=e=c.path().addClass("highcharts-"+(f?f+"-":"")+"tick").add(u.axisGroup),u.chart.styledMode||e.attr({stroke:o,"stroke-width":a})),e[l?"attr":"animate"]({d:this.getMarkPath(v,n,s[0],e.strokeWidth()*r,u.horiz,c),opacity:t}))},n.prototype.renderLabel=function(n,t,r,u){var f=this.axis,v=f.horiz,c=f.options,e=this.label,s=c.labels,l=s.step,h,a;f=i(this.tickmarkOffset,f.tickmarkOffset);h=!0;a=n.x;n=n.y;e&&o(a)&&(e.xy=n=this.getLabelPosition(a,n,e,v,s,f,u,l),this.isFirst&&!this.isLast&&!i(c.showFirstLabel,1)||this.isLast&&!this.isFirst&&!i(c.showLastLabel,1)?h=!1:!v||s.step||s.rotation||t||0===r||this.handleOverflow(n),l&&u%l&&(h=!1),h&&o(n.y)?(n.opacity=r,e[this.isNewLabel?"attr":"animate"](n),this.isNewLabel=!1):(e.attr("y",-9999),this.isNewLabel=!0))},n.prototype.replaceMovedLabel=function(){var t=this.label,n=this.axis,i=n.reversed,r=this.axis.chart.inverted,u;t&&!this.isNew&&(u=r?t.xy.x:i?n.left:n.width+n.left,i=r?i?n.width+n.top:n.top:t.xy.y,t.animate({x:u,y:i,opacity:0},void 0,t.destroy),delete this.label);n.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel},n}(),n.Tick=t,n.Tick}),i(t,"parts/Time.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var e=t.defined,s=t.error,o=t.extend,h=t.isObject,c=t.merge,l=t.objectEach,r=t.pad,u=t.pick,a=t.splat,i=t.timeUnits,f=n.win;return t=function(){function t(n){this.options={};this.variableTimezone=this.useUTC=!1;this.Date=f.Date;this.getTimezoneOffset=this.timezoneOffsetFunction();this.update(n)}return t.prototype.get=function(n,t){if(this.variableTimezone||this.timezoneOffset){var i=t.getTime(),r=i-this.getTimezoneOffset(t);return t.setTime(r),n=t["getUTC"+n](),t.setTime(i),n}return this.useUTC?t["getUTC"+n]():t["get"+n]()},t.prototype.set=function(n,t,i){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===n||"Seconds"===n||"Minutes"===n)return t["setUTC"+n](i);var r=this.getTimezoneOffset(t);return r=t.getTime()-r,t.setTime(r),t["setUTC"+n](i),n=this.getTimezoneOffset(t),r=t.getTime()+n,t.setTime(r)}return this.useUTC?t["setUTC"+n](i):t["set"+n](i)},t.prototype.update=function(n){var t=u(n&&n.useUTC,!0);this.options=n=c(!0,this.options||{},n);this.Date=n.Date||f.Date||Date;this.timezoneOffset=(this.useUTC=t)&&n.timezoneOffset;this.getTimezoneOffset=this.timezoneOffsetFunction();this.variableTimezone=!(t&&!n.getTimezoneOffset&&!n.timezone)},t.prototype.makeTime=function(t,i,r,f,e,o){var s,h,c;return this.useUTC?(s=this.Date.UTC.apply(0,arguments),h=this.getTimezoneOffset(s),s+=h,c=this.getTimezoneOffset(s),h!==c?s+=c-h:h-36e5!==this.getTimezoneOffset(s-36e5)||n.isSafari||(s-=36e5)):s=new this.Date(t,i,u(r,1),u(f,0),u(e,0),u(o,0)).getTime(),s},t.prototype.timezoneOffsetFunction=function(){var i=this,n=this.options,t=f.moment;if(!this.useUTC)return function(n){return 6e4*new Date(n.toString()).getTimezoneOffset()};if(n.timezone){if(t)return function(i){return 6e4*-t.tz(i,n.timezone).utcOffset()};s(25)}return this.useUTC&&n.getTimezoneOffset?function(t){return 6e4*n.getTimezoneOffset(t.valueOf())}:function(){return 6e4*(i.timezoneOffset||0)}},t.prototype.dateFormat=function(t,i,f){var s,y;if(!e(i)||isNaN(i))return(null===(s=n.defaultOptions.lang)||void 0===s?void 0:s.invalidDate)||"";t=u(t,"%Y-%m-%d %H:%M:%S");y=this;s=new this.Date(i);var c=this.get("Hours",s),a=this.get("Day",s),p=this.get("Date",s),v=this.get("Month",s),w=this.get("FullYear",s),h=n.defaultOptions.lang,b=null===h||void 0===h?void 0:h.weekdays,k=null===h||void 0===h?void 0:h.shortWeekdays;return s=o({a:k?k[a]:b[a].substr(0,3),A:b[a],d:r(p),e:r(p,2," "),w:a,b:h.shortMonths[v],B:h.months[v],m:r(v+1),o:v+1,y:w.toString().substr(2,2),Y:w,H:r(c),k:c,I:r(c%12||12),l:c%12||12,M:r(this.get("Minutes",s)),p:12>c?"AM":"PM",P:12>c?"am":"pm",S:r(s.getSeconds()),L:r(Math.floor(i%1e3),3)},n.dateFormats),l(s,function(n,r){for(;-1!==t.indexOf("%"+r);)t=t.replace("%"+r,"function"==typeof n?n.call(y,i):n)}),f?t.substr(0,1).toUpperCase()+t.substr(1):t},t.prototype.resolveDTLFormat=function(n){return h(n,!0)?n:(n=a(n),{main:n[0],from:n[1],to:n[2]})},t.prototype.getTimeTicks=function(n,t,r,f){var s=this,v=[],w={},h=new s.Date(t),c=n.unitRange,l=n.count||1,y,a,p,b;if(f=u(f,1),e(t)){for(s.set("Milliseconds",h,c>=i.second?0:l*Math.floor(s.get("Milliseconds",h)/l)),c>=i.second&&s.set("Seconds",h,c>=i.minute?0:l*Math.floor(s.get("Seconds",h)/l)),c>=i.minute&&s.set("Minutes",h,c>=i.hour?0:l*Math.floor(s.get("Minutes",h)/l)),c>=i.hour&&s.set("Hours",h,c>=i.day?0:l*Math.floor(s.get("Hours",h)/l)),c>=i.day&&s.set("Date",h,c>=i.month?1:Math.max(1,l*Math.floor(s.get("Date",h)/l))),c>=i.month&&(s.set("Month",h,c>=i.year?0:l*Math.floor(s.get("Month",h)/l)),a=s.get("FullYear",h)),c>=i.year&&s.set("FullYear",h,a-a%l),c===i.week&&(a=s.get("Day",h),s.set("Date",h,s.get("Date",h)-a+f+(a<f?-7:0))),a=s.get("FullYear",h),f=s.get("Month",h),p=s.get("Date",h),b=s.get("Hours",h),t=h.getTime(),s.variableTimezone&&(y=r-t>4*i.month||s.getTimezoneOffset(t)!==s.getTimezoneOffset(r)),t=h.getTime(),h=1;t<r;)v.push(t),t=c===i.year?s.makeTime(a+h*l,0):c===i.month?s.makeTime(a,f+h*l):!y||c!==i.day&&c!==i.week?y&&c===i.hour&&1<l?s.makeTime(a,f,p,b+h*l):t+c*l:s.makeTime(a,f,p+h*l*(c===i.day?1:7)),h++;v.push(t);c<=i.hour&&1e4>v.length&&v.forEach(function(n){0==n%18e5&&"000000000"===s.dateFormat("%H%M%S%L",n)&&(w[n]="day")})}return v.info=o(n,{higherRanks:w,totalRange:c*l}),v},t.defaultOptions={Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},t}(),n.Time=t,n.Time}),i(t,"parts/Options.js",[t["parts/Globals.js"],t["parts/Time.js"],t["parts/Color.js"],t["parts/Utilities.js"]],function(n,t,i,r){i=i.parse;var u=r.merge;n.defaultOptions={colors:"#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1".split(" "),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),decimalPoint:".",numericSymbols:"kMGTPE".split(""),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{},time:t.defaultOptions,chart:{styledMode:!1,borderRadius:0,colorCount:10,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}},width:null,height:null,borderColor:"#335cad",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"},title:{text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{text:"",align:"center",widthAdjust:-44},caption:{margin:15,text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},labels:{style:{position:"absolute",color:"#333333"}},legend:{enabled:!0,align:"center",alignColumns:!0,layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{activeColor:"#003399",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"12px",fontWeight:"bold",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#cccccc"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:n.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:n.isTouchDevice?25:10,headerFormat:'<span style="font-size: 10px">{point.key}<\/span><br/>',pointFormat:'<span style="color:{point.color}">●<\/span> {series.name}: <b>{point.y}<\/b><br/>',backgroundColor:i("#f7f7f7").setOpacity(.85).get(),borderWidth:1,shadow:!0,style:{color:"#333333",cursor:"default",fontSize:"12px",whiteSpace:"nowrap"}},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"9px"},text:"Highcharts.com"}};n.setOptions=function(t){return n.defaultOptions=u(!0,n.defaultOptions,t),(t.time||t.global)&&n.time.update(u(n.defaultOptions.global,n.defaultOptions.time,t.global,t.time)),n.defaultOptions};n.getOptions=function(){return n.defaultOptions};n.defaultPlotOptions=n.defaultOptions.plotOptions;n.time=new t(u(n.defaultOptions.global,n.defaultOptions.time));n.dateFormat=function(t,i,r){return n.time.dateFormat(t,i,r)};""}),i(t,"parts/Axis.js",[t["parts/Color.js"],t["parts/Globals.js"],t["parts/Tick.js"],t["parts/Utilities.js"]],function(n,t,i,r){var k=r.addEvent,d=r.animObject,v=r.arrayMax,g=r.arrayMin,y=r.clamp,s=r.correctFloat,f=r.defined,nt=r.destroyObjectProperties,l=r.error,p=r.extend,e=r.fireEvent,tt=r.format,it=r.getMagnitude,rt=r.isArray,ut=r.isFunction,o=r.isNumber,w=r.isString,a=r.merge,ft=r.normalizeTickInterval,h=r.objectEach,u=r.pick,c=r.relativeLength,et=r.removeEvent,ot=r.splat,st=r.syncTimeout,b=t.defaultOptions,ht=t.deg2rad;return r=function(){function r(n,t){this.zoomEnabled=this.width=this.visible=this.userOptions=this.translationSlope=this.transB=this.transA=this.top=this.ticks=this.tickRotCorr=this.tickPositions=this.tickmarkOffset=this.tickInterval=this.tickAmount=this.side=this.series=this.right=this.positiveValuesOnly=this.pos=this.pointRangePadding=this.pointRange=this.plotLinesAndBandsGroups=this.plotLinesAndBands=this.paddedTicks=this.overlap=this.options=this.oldMin=this.oldMax=this.offset=this.names=this.minPixelPadding=this.minorTicks=this.minorTickInterval=this.min=this.maxLabelLength=this.max=this.len=this.left=this.labelFormatter=this.labelEdge=this.isLinked=this.height=this.hasVisibleSeries=this.hasNames=this.coll=this.closestPointRange=this.chart=this.categories=this.bottom=this.alternateBands=void 0;this.init(n,t)}return r.prototype.init=function(n,t){var o=t.isX,i=this,r,s;i.chart=n;i.horiz=n.inverted&&!i.isZAxis?!o:o;i.isXAxis=o;i.coll=i.coll||(o?"xAxis":"yAxis");e(this,"init",{userOptions:t});i.opposite=t.opposite;i.side=t.side||(i.horiz?i.opposite?0:2:i.opposite?1:3);i.setOptions(t);r=this.options;s=r.type;i.labelFormatter=r.labels.formatter||i.defaultLabelFormatter;i.userOptions=t;i.minPixelPadding=0;i.reversed=r.reversed;i.visible=!1!==r.visible;i.zoomEnabled=!1!==r.zoomEnabled;i.hasNames="category"===s||!0===r.categories;i.categories=r.categories||i.hasNames;i.names||(i.names=[],i.names.keys={});i.plotLinesAndBandsGroups={};i.positiveValuesOnly=!(!i.logarithmic||r.allowNegativeLog);i.isLinked=f(r.linkedTo);i.ticks={};i.labelEdge=[];i.minorTicks={};i.plotLinesAndBands=[];i.alternateBands={};i.len=0;i.minRange=i.userMinRange=r.minRange||r.maxZoom;i.range=r.range;i.offset=r.offset||0;i.max=null;i.min=null;i.crosshair=u(r.crosshair,ot(n.options.tooltip.crosshairs)[o?0:1],!1);t=i.options.events;-1===n.axes.indexOf(i)&&(o?n.axes.splice(n.xAxis.length,0,i):n.axes.push(i),n[i.coll].push(i));i.series=i.series||[];n.inverted&&!i.isZAxis&&o&&"undefined"==typeof i.reversed&&(i.reversed=!0);i.labelRotation=i.options.labels.rotation;h(t,function(n,t){ut(n)&&k(i,t,n)});e(this,"afterInit")},r.prototype.setOptions=function(n){this.options=a(r.defaultOptions,"yAxis"===this.coll&&r.defaultYAxisOptions,[r.defaultTopAxisOptions,r.defaultRightAxisOptions,r.defaultBottomAxisOptions,r.defaultLeftAxisOptions][this.side],a(b[this.coll],n));e(this,"afterSetOptions",{userOptions:n})},r.prototype.defaultLabelFormatter=function(){var t=this.axis,n=this.value,u=t.chart.time,l=t.categories,c=this.dateTimeLabelFormat,f=b.lang,e=f.numericSymbols,r,s,h,o,i;if(f=f.numericSymbolMagnitude||1e3,r=e&&e.length,s=t.options.labels.format,t=t.logarithmic?Math.abs(n):t.tickInterval,h=this.chart,o=h.numberFormatter,s)i=tt(s,this,h);else if(l)i=n;else if(c)i=u.dateFormat(c,n);else if(r&&1e3<=t)for(;r--&&"undefined"==typeof i;)u=Math.pow(f,r+1),t>=u&&0==10*n%u&&null!==e[r]&&0!==n&&(i=o(n/u,-1)+e[r]);return"undefined"==typeof i&&(i=1e4<=Math.abs(n)?o(n,-1):o(n,-1,void 0,"")),i},r.prototype.getSeriesExtremes=function(){var n=this,i=n.chart,t;e(this,"getSeriesExtremes",null,function(){n.hasVisibleSeries=!1;n.dataMin=n.dataMax=n.threshold=null;n.softThreshold=!n.isXAxis;n.stacking&&n.stacking.buildStacks();n.series.forEach(function(r){var e,c,s,h;(r.visible||!i.options.chart.ignoreHiddenSeries)&&(e=r.options,c=e.threshold,n.hasVisibleSeries=!0,n.positiveValuesOnly&&0>=c&&(c=null),n.isXAxis?(e=r.xData,e.length)&&(t=r.getXExtremes(e),s=t.min,h=t.max,o(s)||s instanceof Date||(e=e.filter(o),t=r.getXExtremes(e),s=t.min,h=t.max),e.length&&(n.dataMin=Math.min(u(n.dataMin,s),s),n.dataMax=Math.max(u(n.dataMax,h),h))):(r=r.applyExtremes(),o(r.dataMin)&&(s=r.dataMin,n.dataMin=Math.min(u(n.dataMin,s),s)),o(r.dataMax)&&(h=r.dataMax,n.dataMax=Math.max(u(n.dataMax,h),h)),f(c)&&(n.threshold=c),!e.softThreshold||n.positiveValuesOnly)&&(n.softThreshold=!1))})});e(this,"afterGetSeriesExtremes")},r.prototype.translate=function(n,t,i,r,u,f){var e=this.linkedParent||this,s=1,c=0,h=r?e.oldTransA:e.transA,l;return r=r?e.oldMin:e.min,l=e.minPixelPadding,u=(e.isOrdinal||e.brokenAxis&&e.brokenAxis.hasBreaks||e.logarithmic&&u)&&e.lin2val,h||(h=e.transA),i&&(s*=-1,c=e.len),e.reversed&&(s*=-1,c-=s*(e.sector||e.len)),t?(n=(n*s+c-l)/h+r,u&&(n=e.lin2val(n))):(u&&(n=e.val2lin(n)),n=o(r)?s*(n-r)*h+c+s*l+(o(f)?h*f:0):void 0),n},r.prototype.toPixels=function(n,t){return this.translate(n,!1,!this.horiz,null,!0)+(t?0:this.pos)},r.prototype.toValue=function(n,t){return this.translate(n-(t?0:this.pos),!0,!this.horiz,null,!0)},r.prototype.getPlotLinePath=function(n){function b(n,t,i){return("pass"!==f&&n<t||n>i)&&(f?n=y(n,t,i):w=!0),n}var t=this,r=t.chart,v=t.left,p=t.top,c=n.old,k=n.value,i=n.translatedValue,d=n.lineWidth,f=n.force,s,h,l,a,g=c&&r.oldChartHeight||r.chartHeight,tt=c&&r.oldChartWidth||r.chartWidth,w,nt=t.transB;return n={value:k,lineWidth:d,old:c,force:f,acrossPanes:n.acrossPanes,translatedValue:i},e(this,"getPlotLinePath",n,function(n){i=u(i,t.translate(k,null,null,c));i=y(i,-1e5,1e5);s=l=Math.round(i+nt);h=a=Math.round(g-i-nt);o(i)?t.horiz?(h=p,a=g-t.bottom,s=l=b(s,v,v+t.width)):(s=v,l=tt-t.right,h=a=b(h,p,p+t.height)):(w=!0,f=!1);n.path=w&&!f?null:r.renderer.crispLine([["M",s,h],["L",l,a]],d||1)}),n.path},r.prototype.getLinearTickPositions=function(n,t,i){var r=s(Math.floor(t/n)*n),u,f,e;if(i=s(Math.ceil(i/n)*n),u=[],s(r+n)===r&&(f=20),this.single)return[t];for(t=r;t<=i;){if(u.push(t),t=s(t+n,f),t===e)break;e=t}return u},r.prototype.getMinorTickInterval=function(){var n=this.options;return!0===n.minorTicks?u(n.minorTickInterval,"auto"):!1===n.minorTicks?null:n.minorTickInterval},r.prototype.getMinorTickPositions=function(){var t=this.options,o=this.tickPositions,r=this.minorTickInterval,n=[],i=this.pointRangePadding||0,u=this.min-i,f,e;if(i=this.max+i,f=i-u,f&&f/r<this.len/3)if(e=this.logarithmic,e)this.paddedTicks.forEach(function(t,i,u){i&&n.push.apply(n,e.getLogTickPositions(r,u[i-1],u[i],!0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())n=n.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(r),u,i,t.startOfWeek));else for(t=u+(o[0]-u)%r;t<=i&&t!==n[0];t+=r)n.push(t);return 0!==n.length&&this.trimTicks(n),n},r.prototype.adjustForMinRange=function(){var e=this.options,n=this.min,t=this.max,c=this.logarithmic,s,o,l,h,y;if(this.isXAxis&&"undefined"==typeof this.minRange&&!c&&(f(e.min)||f(e.max)?this.minRange=null:(this.series.forEach(function(n){for(h=n.xData,o=y=n.xIncrement?1:h.length-1;0<o;o--)(l=h[o]-h[o-1],"undefined"==typeof s||l<s)&&(s=l)}),this.minRange=Math.min(5*s,this.dataMax-this.dataMin))),t-n<this.minRange){var a=this.dataMax-this.dataMin>=this.minRange,r=this.minRange,i=(r-t+n)/2;i=[n-i,u(e.min,n-i)];a&&(i[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin);n=v(i);t=[n+r,u(e.max,n+r)];a&&(t[2]=c?c.log2lin(this.dataMax):this.dataMax);t=g(t);t-n<r&&(i[0]=t-r,i[1]=u(e.min,t-r),n=v(i))}this.min=n;this.max=t},r.prototype.getClosest=function(){var n;return this.categories?n=1:this.series.forEach(function(t){var i=t.closestPointRange,r=t.visible||!t.chart.options.chart.ignoreHiddenSeries;!t.noSharedTooltip&&f(i)&&r&&(n=f(n)?Math.min(n,i):i)}),n},r.prototype.nameToX=function(n){var r=rt(this.categories),e=r?this.categories:this.names,i=n.options.x,t;return n.series.requireSorting=!1,f(i)||(i=!1===this.options.uniqueNames?n.series.autoIncrement():r?e.indexOf(n.name):u(e.keys[n.name],-1)),-1===i?r||(t=e.length):t=i,"undefined"!=typeof t&&(this.names[t]=n.name,this.names.keys[n.name]=t),t},r.prototype.updateNames=function(){var t=this,n=this.names;0<n.length&&(Object.keys(n.keys).forEach(function(t){delete n.keys[t]}),n.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(n){n.xIncrement=null;(!n.points||n.isDirtyData)&&(t.max=Math.max(t.max,n.xData.length-1),n.processData(),n.generatePoints());n.data.forEach(function(i,r){if(i&&i.options&&"undefined"!=typeof i.name){var u=t.nameToX(i);"undefined"!=typeof u&&u!==i.x&&(i.x=u,n.xData[r]=u)}})}))},r.prototype.setAxisTranslation=function(n){var t=this,a=t.max-t.min,h=t.axisPointRange||0,r=0,f=0,i=t.linkedParent,c=!!t.categories,l=t.transA,o=t.isXAxis,s;(o||c||h)&&(s=t.getClosest(),i?(r=i.minPointOffset,f=i.pointRangePadding):t.series.forEach(function(n){var i=c?1:o?u(n.options.pointRange,s,0):t.axisPointRange||0,e=n.options.pointPlacement;h=Math.max(h,i);(!t.single||c)&&(n=n.is("xrange")?!o:o,r=Math.max(r,n&&w(e)?0:i/2),f=Math.max(f,n&&"on"===e?0:i))}),i=t.ordinal&&t.ordinal.slope&&s?t.ordinal.slope/s:1,t.minPointOffset=r*=i,t.pointRangePadding=f*=i,t.pointRange=Math.min(h,t.single&&c?1:a),o&&(t.closestPointRange=s));n&&(t.oldTransA=l);t.translationSlope=t.transA=l=t.staticScale||t.len/(a+f||1);t.transB=t.horiz?t.left:t.bottom;t.minPixelPadding=l*r;e(this,"afterSetAxisTranslation")},r.prototype.minFromRange=function(){return this.max-this.range},r.prototype.setTickInterval=function(n){var t=this,c=t.chart,w=t.logarithmic,i=t.options,rt=t.isXAxis,p=t.isLinked,b=i.maxPadding,k=i.minPadding,a=i.tickInterval,d=i.tickPixelInterval,g=t.categories,r=o(t.threshold)?t.threshold:null,nt=t.softThreshold,v,y,h,tt;t.dateTime||g||p||this.getTickAmount();v=u(t.userMin,i.min);y=u(t.userMax,i.max);p?(t.linkedParent=c[t.coll][i.linkedTo],h=t.linkedParent.getExtremes(),t.min=u(h.min,h.dataMin),t.max=u(h.max,h.dataMax),i.type!==t.linkedParent.options.type&&l(11,1,c)):(!nt&&f(r)&&(t.dataMin>=r?(h=r,k=0):t.dataMax<=r&&(tt=r,b=0)),t.min=u(v,h,t.dataMin),t.max=u(y,tt,t.dataMax));w&&(t.positiveValuesOnly&&!n&&0>=Math.min(t.min,u(t.dataMin,t.min))&&l(10,1,c),t.min=s(w.log2lin(t.min),16),t.max=s(w.log2lin(t.max),16));t.range&&f(t.max)&&(t.userMin=t.min=v=Math.max(t.dataMin,t.minFromRange()),t.userMax=y=t.max,t.range=null);e(t,"foundExtremes");t.beforePadding&&t.beforePadding();t.adjustForMinRange();!(g||t.axisPointRange||t.stacking&&t.stacking.usePercentage||p)&&f(t.min)&&f(t.max)&&(c=t.max-t.min)&&(!f(v)&&k&&(t.min-=c*k),!f(y)&&b&&(t.max+=c*b));o(t.userMin)||(o(i.softMin)&&i.softMin<t.min&&(t.min=v=i.softMin),o(i.floor)&&(t.min=Math.max(t.min,i.floor)));o(t.userMax)||(o(i.softMax)&&i.softMax>t.max&&(t.max=y=i.softMax),o(i.ceiling)&&(t.max=Math.min(t.max,i.ceiling)));nt&&f(t.dataMin)&&(r=r||0,!f(v)&&t.min<r&&t.dataMin>=r?t.min=t.options.minRange?Math.min(r,t.max-t.minRange):r:!f(y)&&t.max>r&&t.dataMax<=r&&(t.max=t.options.minRange?Math.max(r,t.min+t.minRange):r));t.tickInterval=t.min===t.max||"undefined"==typeof t.min||"undefined"==typeof t.max?1:p&&!a&&d===t.linkedParent.options.tickPixelInterval?a=t.linkedParent.tickInterval:u(a,this.tickAmount?(t.max-t.min)/Math.max(this.tickAmount-1,1):void 0,g?1:(t.max-t.min)*d/Math.max(t.len,d));rt&&!n&&t.series.forEach(function(n){n.processData(t.min!==t.oldMin||t.max!==t.oldMax)});t.setAxisTranslation(!0);t.beforeSetTickPositions&&t.beforeSetTickPositions();t.ordinal&&(t.tickInterval=t.ordinal.postProcessTickInterval(t.tickInterval));t.pointRange&&!a&&(t.tickInterval=Math.max(t.pointRange,t.tickInterval));n=u(i.minTickInterval,t.dateTime&&t.closestPointRange);!a&&t.tickInterval<n&&(t.tickInterval=n);t.dateTime||t.logarithmic||a||(t.tickInterval=ft(t.tickInterval,void 0,it(t.tickInterval),u(i.allowDecimals,.5>t.tickInterval||void 0!==this.tickAmount),!!this.tickAmount));this.tickAmount||(t.tickInterval=t.unsquish());this.setTickPositions()},r.prototype.setTickPositions=function(){var t=this.options,u=t.tickPositions,n=this.getMinorTickInterval(),i=t.tickPositioner,r=this.hasVerticalPanning(),o="colorAxis"===this.coll,s=(o||!r)&&t.startOnTick;r=(o||!r)&&t.endOnTick;this.tickmarkOffset=this.categories&&"between"===t.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval="auto"===n&&this.tickInterval?this.tickInterval/5:n;this.single=this.min===this.max&&f(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==t.allowDecimals);this.tickPositions=n=u&&u.slice();!n&&(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))?n=this.dateTime?this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,t.units),this.min,this.max,t.startOfWeek,this.ordinal&&this.ordinal.positions,this.closestPointRange,!0):this.logarithmic?this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max):(n=[this.min,this.max],l(19,!1,this.chart)),n.length>this.len&&(n=[n[0],n.pop()],n[0]===n[1]&&(n.length=1)),this.tickPositions=n,i&&(i=i.apply(this,[this.min,this.max])))&&(this.tickPositions=n=i);this.paddedTicks=n.slice(0);this.trimTicks(n,s,r);this.isLinked||(this.single&&2>n.length&&!this.categories&&!this.series.some(function(n){return n.is("heatmap")&&"between"===n.options.pointPlacement})&&(this.min-=.5,this.max+=.5),u||i||this.adjustTickAmount());e(this,"afterSetTickPositions")},r.prototype.trimTicks=function(n,t,i){var r=n[0],u=n[n.length-1],o=!this.isOrdinal&&this.minPointOffset||0;if(e(this,"trimTicks"),!this.isLinked){if(t&&-Infinity!==r)this.min=r;else for(;this.min-o>n[0];)n.shift();if(i)this.max=u;else for(;this.max+o<n[n.length-1];)n.pop();0===n.length&&f(r)&&!this.options.tickPositions&&n.push((u+r)/2)}},r.prototype.alignToOthers=function(){var t={},i,n=this.options;return!1===this.chart.options.chart.alignTicks||!1===n.alignTicks||!1===n.startOnTick||!1===n.endOnTick||this.logarithmic||this.chart[this.coll].forEach(function(n){var r=n.options;r=[n.horiz?r.left:r.top,r.width,r.height,r.pane].join();n.series.length&&(t[r]?i=!0:t[r]=1)}),i},r.prototype.getTickAmount=function(){var t=this.options,n=t.tickAmount,i=t.tickPixelInterval;!f(t.tickInterval)&&!n&&this.len<i&&!this.isRadial&&!this.logarithmic&&t.startOnTick&&t.endOnTick&&(n=2);!n&&this.alignToOthers()&&(n=Math.ceil(this.len/i)+1);4>n&&(this.finalTickAmt=n,n=5);this.tickAmount=n},r.prototype.adjustTickAmount=function(){var i=this.options,t=this.tickInterval,n=this.tickPositions,r=this.tickAmount,e=this.finalTickAmt,o=n&&n.length,c=u(this.threshold,this.softThreshold?0:null),h;if(this.hasData()){if(o<r){for(h=this.min;n.length<r;)n.length%2||h===c?n.push(s(n[n.length-1]+t)):n.unshift(s(n[0]-t));this.transA*=(o-1)/(r-1);this.min=i.startOnTick?n[0]:Math.min(this.min,n[0]);this.max=i.endOnTick?n[n.length-1]:Math.max(this.max,n[n.length-1])}else o>r&&(this.tickInterval*=2,this.setTickPositions());if(f(e)){for(t=i=n.length;t--;)(3===e&&1==t%2||2>=e&&0<t&&t<i-1)&&n.splice(t,1);this.finalTickAmt=void 0}}},r.prototype.setScale=function(){var i,n=!1,t=!1;this.series.forEach(function(i){var r;n=n||i.isDirtyData||i.isDirty;t=t||(null===(r=i.xAxis)||void 0===r?void 0:r.isDirty)||!1});this.oldMin=this.min;this.oldMax=this.max;this.oldAxisLength=this.len;this.setAxisSize();(i=this.len!==this.oldAxisLength)||n||t||this.isLinked||this.forceRedraw||this.userMin!==this.oldUserMin||this.userMax!==this.oldUserMax||this.alignToOthers()?(this.stacking&&this.stacking.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.oldUserMin=this.userMin,this.oldUserMax=this.userMax,this.isDirty||(this.isDirty=i||this.min!==this.oldMin||this.max!==this.oldMax)):this.stacking&&this.stacking.cleanStacks();n&&this.panningState&&(this.panningState.isDirty=!0);e(this,"afterSetScale")},r.prototype.setExtremes=function(n,t,i,r,f){var o=this,s=o.chart;i=u(i,!0);o.series.forEach(function(n){delete n.kdTree});f=p(f,{min:n,max:t});e(o,"setExtremes",f,function(){o.userMin=n;o.userMax=t;o.eventArgs=f;i&&s.redraw(r)})},r.prototype.zoom=function(n,t){var i=this,s=this.dataMin,h=this.dataMax,c=this.options,r=Math.min(s,u(c.min,s)),o=Math.max(h,u(c.max,h));return n={newMin:n,newMax:t},e(this,"zoom",n,function(n){var t=n.newMin,u=n.newMax;(t!==i.min||u!==i.max)&&(i.allowZoomOutside||(f(s)&&(t<r&&(t=r),t>o&&(t=o)),f(h)&&(u<r&&(u=r),u>o&&(u=o))),i.displayBtn="undefined"!=typeof t||"undefined"!=typeof u,i.setExtremes(t,u,!1,void 0,{trigger:"zoom"}));n.zoomed=!0}),n.zoomed},r.prototype.setAxisSize=function(){var n=this.chart,t=this.options,i=t.offsets||[0,0,0,0],r=this.horiz,f=this.width=Math.round(c(u(t.width,n.plotWidth-i[3]+i[1]),n.plotWidth)),e=this.height=Math.round(c(u(t.height,n.plotHeight-i[0]+i[2]),n.plotHeight)),o=this.top=Math.round(c(u(t.top,n.plotTop+i[0]),n.plotHeight,n.plotTop));t=this.left=Math.round(c(u(t.left,n.plotLeft+i[3]),n.plotWidth,n.plotLeft));this.bottom=n.chartHeight-e-o;this.right=n.chartWidth-f-t;this.len=Math.max(r?f:e,0);this.pos=r?t:o},r.prototype.getExtremes=function(){var n=this.logarithmic;return{min:n?s(n.lin2log(this.min)):this.min,max:n?s(n.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},r.prototype.getThreshold=function(n){var t=this.logarithmic,i=t?t.lin2log(this.min):this.min;return t=t?t.lin2log(this.max):this.max,null===n||-Infinity===n?n=i:Infinity===n?n=t:i>n?n=i:t<n&&(n=t),this.translate(n,0,1,0,1)},r.prototype.autoLabelAlign=function(n){var t=(u(n,0)-90*this.side+720)%360;return n={align:"center"},e(this,"autoLabelAlign",n,function(n){15<t&&165>t?n.align="right":195<t&&345>t&&(n.align="left")}),n.align},r.prototype.tickSize=function(n){var i=this.options,t=i["tick"===n?"tickLength":"minorTickLength"],r=u(i["tick"===n?"tickWidth":"minorTickWidth"],"tick"===n&&this.isXAxis&&!this.categories?1:0),f;return r&&t&&("inside"===i[n+"Position"]&&(t=-t),f=[t,r]),n={tickSize:f},e(this,"afterTickSize",n),n.tickSize},r.prototype.labelMetrics=function(){var n=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style&&this.options.labels.style.fontSize,this.ticks[n]&&this.ticks[n].label)},r.prototype.unsquish=function(){var n=this.options.labels,p=this.horiz,t=this.tickInterval,r=t,e=this.len/(((this.categories?1:0)+this.max-this.min)/t),l,i=n.rotation,a=this.labelMetrics(),o,v=Number.MAX_VALUE,h,c=this.max-this.min,y=function(n){var i=n/(e||1);return i=1<i?Math.ceil(i):1,i*t>c&&Infinity!==n&&Infinity!==e&&c&&(i=Math.ceil(c/t)),s(i*t)};return p?(h=!n.staggerLines&&!n.step&&(f(i)?[i]:e<u(n.autoRotationLimit,80)&&n.autoRotation))&&h.forEach(function(n){if(n===i||n&&-90<=n&&90>=n){o=y(Math.abs(a.h/Math.sin(ht*n)));var t=o+Math.abs(n/360);t<v&&(v=t,l=n,r=o)}}):n.step||(r=y(a.h)),this.autoRotation=h,this.labelRotation=u(l,i),r},r.prototype.getSlotWidth=function(n){var i,r=this.chart,u=this.horiz,t=this.options.labels,e=Math.max(this.tickPositions.length-(this.categories?0:1),1),f=r.margin[3];if(n&&o(n.slotWidth))return n.slotWidth;if(u&&t&&2>(t.step||0))return t.rotation?0:(this.staggerLines||1)*this.len/e;if(!u){if(n=null===(i=null===t||void 0===t?void 0:t.style)||void 0===i?void 0:i.width,void 0!==n)return parseInt(n,10);if(f)return f-r.spacing[3]}return.33*r.chartWidth},r.prototype.renderUnsquish=function(){var h=this.chart,y=h.renderer,u=this.tickPositions,c=this.ticks,t=this.options.labels,v=t&&t.style||{},p=this.horiz,o=this.getSlotWidth(),f=Math.max(1,Math.round(o-2*(t.padding||5))),r={},s=this.labelMetrics(),l=t.style&&t.style.textOverflow,i=0,e,a,n;if(w(t.rotation)||(r.rotation=t.rotation||0),u.forEach(function(n){n=c[n];n.movedLabel&&n.replaceMovedLabel();n&&n.label&&n.label.textPxLength>i&&(i=n.label.textPxLength)}),this.maxLabelLength=i,this.autoRotation)i>f&&i>s.h?r.rotation=this.labelRotation:this.labelRotation=0;else if(o&&(e=f,!l))for(a="clip",f=u.length;!p&&f--;)n=u[f],(n=c[n].label)&&(n.styles&&"ellipsis"===n.styles.textOverflow?n.css({textOverflow:"clip"}):n.textPxLength>o&&n.css({width:o+"px"}),n.getBBox().height>this.len/u.length-(s.h-s.f)&&(n.specificTextOverflow="ellipsis"));r.rotation&&(e=i>.5*h.chartHeight?.33*h.chartHeight:i,l||(a="ellipsis"));(this.labelAlign=t.align||this.autoLabelAlign(this.labelRotation))&&(r.align=this.labelAlign);u.forEach(function(n){var t=(n=c[n])&&n.label,u=v.width,i={};t&&(t.attr(r),n.shortenLabel?n.shortenLabel():e&&!u&&"nowrap"!==v.whiteSpace&&(e<t.textPxLength||"SPAN"===t.element.tagName)?(i.width=e+"px",l||(i.textOverflow=t.specificTextOverflow||a),t.css(i)):t.styles&&t.styles.width&&!i.width&&!u&&t.css({width:null}),delete t.specificTextOverflow,n.rotation=r.rotation)},this);this.tickRotCorr=y.rotCorr(s.b,this.labelRotation||0,0!==this.side)},r.prototype.hasData=function(){return this.series.some(function(n){return n.hasData()})||this.options.showEmpty&&f(this.min)&&f(this.max)},r.prototype.addTitle=function(n){var f=this.chart.renderer,e=this.horiz,r=this.opposite,t=this.options.title,i,u=this.chart.styledMode;this.axisTitle||((i=t.textAlign)||(i=(e?{low:"left",middle:"center",high:"right"}:{low:r?"right":"left",middle:"center",high:r?"left":"right"})[t.align]),this.axisTitle=f.text(t.text,0,0,t.useHTML).attr({zIndex:7,rotation:t.rotation||0,align:i}).addClass("highcharts-axis-title"),u||this.axisTitle.css(a(t.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0);u||t.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"});this.axisTitle[n?"show":"hide"](n)},r.prototype.generateTick=function(n){var t=this.ticks;t[n]?t[n].addLabel():t[n]=new i(this,n)},r.prototype.getOffset=function(){var n=this,r=n.chart,a=r.renderer,i=n.options,v=n.tickPositions,w=n.ticks,s=n.horiz,t=n.side,tt=r.inverted&&!n.isZAxis?[1,0,3,2][t]:t,k,it=0,o=0,c=i.title,y=i.labels,l=0,b=r.axisOffset,nt;r=r.clipOffset;var p=[-1,1,1,-1][t],d=i.className,g=n.axisParent,rt=n.hasData();n.showAxis=k=rt||u(i.showEmpty,!0);n.staggerLines=n.horiz&&y.staggerLines;n.axisGroup||(n.gridGroup=a.g("grid").attr({zIndex:i.gridZIndex||1}).addClass("highcharts-"+this.coll.toLowerCase()+"-grid "+(d||"")).add(g),n.axisGroup=a.g("axis").attr({zIndex:i.zIndex||2}).addClass("highcharts-"+this.coll.toLowerCase()+" "+(d||"")).add(g),n.labelGroup=a.g("axis-labels").attr({zIndex:y.zIndex||7}).addClass("highcharts-"+n.coll.toLowerCase()+"-labels "+(d||"")).add(g));rt||n.isLinked?(v.forEach(function(t,i){n.generateTick(t,i)}),n.renderUnsquish(),n.reserveSpaceDefault=0===t||2===t||{1:"left",3:"right"}[t]===n.labelAlign,u(y.reserveSpace,"center"===n.labelAlign?!0:null,n.reserveSpaceDefault)&&v.forEach(function(n){l=Math.max(w[n].getLabelSize(),l)}),n.staggerLines&&(l*=n.staggerLines),n.labelOffset=l*(n.opposite?-1:1)):h(w,function(n,t){n.destroy();delete w[t]});c&&c.text&&!1!==c.enabled&&(n.addTitle(k),k&&!1!==c.reserveSpace)&&(n.titleOffset=it=n.axisTitle.getBBox()[s?"height":"width"],nt=c.offset,o=f(nt)?0:u(c.margin,s?5:10));n.renderLine();n.offset=p*u(i.offset,b[t]?b[t]+(i.margin||0):0);n.tickRotCorr=n.tickRotCorr||{x:0,y:0};a=0===t?-n.labelMetrics().h:2===t?n.tickRotCorr.y:0;o=Math.abs(l)+o;l&&(o=o-a+p*(s?u(y.y,n.tickRotCorr.y+8*p):y.x));n.axisTitleMargin=u(nt,o);n.getMaxLabelDimensions&&(n.maxLabelDimensions=n.getMaxLabelDimensions(w,v));s=this.tickSize("tick");b[t]=Math.max(b[t],n.axisTitleMargin+it+p*n.offset,o,v&&v.length&&s?s[0]+p*n.offset:0);i=i.offset?0:2*Math.floor(n.axisLine.strokeWidth()/2);r[tt]=Math.max(r[tt],i);e(this,"afterGetOffset")},r.prototype.getLinePath=function(n){var i=this.chart,u=this.opposite,t=this.offset,r=this.horiz,f=this.left+(u?this.width:0)+t;return t=i.chartHeight-this.bottom-(u?this.height:0)+t,u&&(n*=-1),i.renderer.crispLine([["M",r?this.left:f,r?t:this.top],["L",r?i.chartWidth-this.right:f,r?t:i.chartHeight-this.bottom]],n)},r.prototype.renderLine=function(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))},r.prototype.getTitlePosition=function(){var n=this.horiz,r=this.left,s=this.top,t=this.len,u=this.options.title,f=n?r:s,o=this.opposite,h=this.offset,c=u.x||0,l=u.y||0,i=this.axisTitle,a=this.chart.renderer.fontMetrics(u.style&&u.style.fontSize,i);return i=Math.max(i.getBBox(null,0).height-a.h-1,0),t={low:f+(n?0:t),middle:f+t/2,high:f+(n?t:0)}[u.align],r=(n?s+this.height:r)+(n?1:-1)*(o?-1:1)*this.axisTitleMargin+[-i,i,a.f,-i][this.side],n={x:n?t+c:r+(o?this.width:0)+h+c,y:n?r+l-(o?this.height:0)+h:t+l},e(this,"afterGetTitlePosition",{titlePosition:n}),n},r.prototype.renderMinorTick=function(n){var r=this.chart.hasRendered&&o(this.oldMin),t=this.minorTicks;t[n]||(t[n]=new i(this,n,"minor"));r&&t[n].isNew&&t[n].render(null,!0);t[n].render(null,!1,1)},r.prototype.renderTick=function(n,t){var u=this.isLinked,r=this.ticks,f=this.chart.hasRendered&&o(this.oldMin);(!u||n>=this.min&&n<=this.max)&&(r[n]||(r[n]=new i(this,n)),f&&r[n].isNew&&r[n].render(t,!0,-1),r[n].render(t))},r.prototype.render=function(){var n=this,p=n.chart,v=n.logarithmic,u=n.options,tt=n.isLinked,l=n.tickPositions,f=n.axisTitle,a=n.ticks,k=n.minorTicks,r=n.alternateBands,g=u.stackLabels,nt=u.alternateGridColor,s=n.tickmarkOffset,c=n.axisLine,w=n.showAxis,it=d(p.renderer.globalAnimation),b,y;n.labelEdge.length=0;n.overlap=!1;[a,k,r].forEach(function(n){h(n,function(n){n.isActive=!1})});(n.hasData()||tt)&&(n.minorTickInterval&&!n.categories&&n.getMinorTickPositions().forEach(function(t){n.renderMinorTick(t)}),l.length&&(l.forEach(function(t,i){n.renderTick(t,i)}),s&&(0===n.min||n.single)&&(a[-1]||(a[-1]=new i(n,-1,null,!0)),a[-1].render(-1))),nt&&l.forEach(function(i,u){y="undefined"!=typeof l[u+1]?l[u+1]+s:n.max-s;0==u%2&&i<n.max&&y<=n.max+(p.polar?-s:s)&&(r[i]||(r[i]=new t.PlotLineOrBand(n)),b=i+s,r[i].options={from:v?v.lin2log(b):b,to:v?v.lin2log(y):y,color:nt},r[i].render(),r[i].isActive=!0)}),n._addedPlotLB||((u.plotLines||[]).concat(u.plotBands||[]).forEach(function(t){n.addPlotBandOrLine(t)}),n._addedPlotLB=!0));[a,k,r].forEach(function(n){var t,i=[],u=it.duration;h(n,function(n,t){n.isActive||(n.render(t,!1,0),n.isActive=!1,i.push(t))});st(function(){for(t=i.length;t--;)n[i[t]]&&!n[i[t]].isActive&&(n[i[t]].destroy(),delete n[i[t]])},n!==r&&p.hasRendered&&u?u:0)});c&&(c[c.isPlaced?"animate":"attr"]({d:this.getLinePath(c.strokeWidth())}),c.isPlaced=!0,c[w?"show":"hide"](w));f&&w&&(u=n.getTitlePosition(),o(u.y)?(f[f.isNew?"attr":"animate"](u),f.isNew=!1):(f.attr("y",-9999),f.isNew=!0));g&&g.enabled&&n.stacking&&n.stacking.renderStackTotals();n.isDirty=!1;e(this,"afterRender")},r.prototype.redraw=function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(n){n.render()}));this.series.forEach(function(n){n.isDirty=!0})},r.prototype.getKeepProps=function(){return this.keepProps||r.keepProps},r.prototype.destroy=function(n){var t=this,i=t.plotLinesAndBands,r;if(e(this,"destroy",{keepEvents:n}),n||et(t),[t.ticks,t.minorTicks,t.alternateBands].forEach(function(n){nt(n)}),i)for(n=i.length;n--;)i[n].destroy();"axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(n){t[n]&&(t[n]=t[n].destroy())});for(r in t.plotLinesAndBandsGroups)t.plotLinesAndBandsGroups[r]=t.plotLinesAndBandsGroups[r].destroy();h(t,function(n,i){-1===t.getKeepProps().indexOf(i)&&delete t[i]})},r.prototype.drawCrosshair=function(t,i){var r=this.crosshair,o=u(r.snap,!0),c,s=this.cross,l=this.chart,h;if(e(this,"drawCrosshair",{e:t,point:i}),t||(t=this.cross&&this.cross.e),this.crosshair&&!1!==(f(i)||!o)){if(o?f(i)&&(c=u("colorAxis"!==this.coll?i.crosshairPos:null,this.isXAxis?i.plotX:this.len-i.plotY)):c=t&&(this.horiz?t.chartX-this.pos:this.len-t.chartY+this.pos),f(c)&&(h={value:i&&(this.isXAxis?i.x:u(i.stackY,i.y)),translatedValue:c},l.polar&&p(h,{isCrosshair:!0,chartX:t&&t.chartX,chartY:t&&t.chartY,point:i}),h=this.getPlotLinePath(h)||null),!f(h)){this.hideCrosshair();return}o=this.categories&&!this.isRadial;s||(this.cross=s=l.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(o?"category ":"thin ")+r.className).attr({zIndex:u(r.zIndex,2)}).add(),l.styledMode||(s.attr({stroke:r.color||(o?n.parse("#ccd6eb").setOpacity(.25).get():"#cccccc"),"stroke-width":u(r.width,1)}).css({"pointer-events":"none"}),r.dashStyle&&s.attr({dashstyle:r.dashStyle})));s.show().attr({d:h});o&&!r.width&&s.attr({"stroke-width":this.transA});this.cross.e=t}else this.hideCrosshair();e(this,"afterDrawCrosshair",{e:t,point:i})},r.prototype.hideCrosshair=function(){this.cross&&this.cross.hide();e(this,"afterHideCrosshair")},r.prototype.hasVerticalPanning=function(){var n,t;return/y/.test((null===(t=null===(n=this.chart.options.chart)||void 0===n?void 0:n.panning)||void 0===t?void 0:t.type)||"")},r.defaultOptions={dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e. %b"},week:{main:"%e. %b"},month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,labels:{enabled:!0,indentation:10,x:0,style:{color:"#666666",cursor:"default",fontSize:"11px"}},maxPadding:.01,minorTickLength:2,minorTickPosition:"outside",minPadding:.01,showEmpty:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",style:{color:"#666666"}},type:"linear",minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#ccd6eb",lineWidth:1,gridLineColor:"#e6e6e6",tickColor:"#ccd6eb"},r.defaultYAxisOptions={endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){var n=this.axis.chart.numberFormatter;return n(this.total,-1)},style:{color:"#000000",fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},r.defaultLeftAxisOptions={labels:{x:-15},title:{rotation:270}},r.defaultRightAxisOptions={labels:{x:15},title:{rotation:90}},r.defaultBottomAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},r.defaultTopAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},r.keepProps="extKey hcEvents names series userMax userMin".split(" "),r}(),t.Axis=r,t.Axis}),i(t,"parts/DateTimeAxis.js",[t["parts/Axis.js"],t["parts/Utilities.js"]],function(n,t){var u=t.addEvent,f=t.getMagnitude,e=t.normalizeTickInterval,i=t.timeUnits,r=function(){function n(n){this.axis=n}return n.prototype.normalizeTimeTickInterval=function(n,t){var u=t||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],r,o,s;for(t=u[u.length-1],r=i[t[0]],o=t[1],s=0;s<u.length&&!(t=u[s],r=i[t[0]],o=t[1],u[s+1]&&n<=(r*o[o.length-1]+i[u[s+1][0]])/2);s++);return r===i.year&&n<5*r&&(o=[1,2,5]),n=e(n/r,o,"year"===t[0]?Math.max(f(n/r),1):1),{unitRange:r,count:n,unitName:t[0]}},n}();return t=function(){function n(){}return n.compose=function(n){n.keepProps.push("dateTime");n.prototype.getTimeTicks=function(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)};u(n,"init",function(n){"datetime"!==n.userOptions.type?this.dateTime=void 0:this.dateTime||(this.dateTime=new r(this))})},n.AdditionsClass=r,n}(),t.compose(n),t}),i(t,"parts/LogarithmicAxis.js",[t["parts/Axis.js"],t["parts/Utilities.js"]],function(n,t){var i=t.addEvent,u=t.getMagnitude,f=t.normalizeTickInterval,e=t.pick,r=function(){function n(n){this.axis=n}return n.prototype.getLogTickPositions=function(n,t,i,r){var o=this.axis,h=o.len,s=o.options,l=[],a,v,p,y,c;if(r||(this.minorAutoInterval=void 0),.5<=n)n=Math.round(n),l=o.getLinearTickPositions(n,t,i);else if(.08<=n)for(s=Math.floor(t),h=.3<n?[1,2,4]:.15<n?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];s<i+1&&!v;s++)for(p=h.length,a=0;a<p&&!v;a++)y=this.log2lin(this.lin2log(s)*h[a]),y>t&&(!r||c<=i)&&"undefined"!=typeof c&&l.push(c),c>i&&(v=!0),c=y;else t=this.lin2log(t),i=this.lin2log(i),n=r?o.getMinorTickInterval():s.tickInterval,n=e("auto"===n?null:n,this.minorAutoInterval,s.tickPixelInterval/(r?5:1)*(i-t)/((r?h/o.tickPositions.length:h)||1)),n=f(n,void 0,u(n)),l=o.getLinearTickPositions(n,t,i).map(this.log2lin),r||(this.minorAutoInterval=n/5);return r||(o.tickInterval=n),l},n.prototype.lin2log=function(n){return Math.pow(10,n)},n.prototype.log2lin=function(n){return Math.log(n)/Math.LN10},n}();return t=function(){function n(){}return n.compose=function(n){n.keepProps.push("logarithmic");var t=n.prototype,u=r.prototype;t.log2lin=u.log2lin;t.lin2log=u.lin2log;i(n,"init",function(n){var t=this.logarithmic;"logarithmic"!==n.userOptions.type?this.logarithmic=void 0:(t||(t=this.logarithmic=new r(this)),this.log2lin!==t.log2lin&&(t.log2lin=this.log2lin.bind(this)),this.lin2log!==t.lin2log&&(t.lin2log=this.lin2log.bind(this)))});i(n,"afterInit",function(){var n=this.logarithmic;n&&(this.lin2val=function(t){return n.lin2log(t)},this.val2lin=function(t){return n.log2lin(t)})})},n}(),t.compose(n),t}),i(t,"parts/PlotLineOrBand.js",[t["parts/Globals.js"],t["parts/Axis.js"],t["parts/Utilities.js"]],function(n,t,i){var u=i.arrayMax,f=i.arrayMin,r=i.defined,h=i.destroyObjectProperties,e=i.erase,c=i.extend,l=i.merge,a=i.objectEach,o=i.pick,s=function(){function t(n,t){this.axis=n;t&&(this.options=t,this.id=t.id)}return t.prototype.render=function(){n.fireEvent(this,"render");var s=this,e=s.axis,v=e.horiz,h=e.logarithmic,i=s.options,c=i.label,y=s.label,p=i.to,w=i.from,b=i.value,u=r(w)&&r(p),nt=r(b),f=s.svgElem,tt=!f,t=[],it=i.color,d=o(i.zIndex,0),g=i.events;t={"class":"highcharts-plot-"+(u?"band ":"line ")+(i.className||"")};var rt={},ut=e.chart.renderer,k=u?"bands":"lines";if(h&&(w=h.log2lin(w),p=h.log2lin(p),b=h.log2lin(b)),e.chart.styledMode||(nt?(t.stroke=it||"#999999",t["stroke-width"]=o(i.width,1),i.dashStyle&&(t.dashstyle=i.dashStyle)):u&&(t.fill=it||"#e6ebf5",i.borderWidth&&(t.stroke=i.borderColor,t["stroke-width"]=i.borderWidth))),rt.zIndex=d,k+="-"+d,(h=e.plotLinesAndBandsGroups[k])||(e.plotLinesAndBandsGroups[k]=h=ut.g("plot-"+k).attr(rt).add()),tt&&(s.svgElem=f=ut.path().attr(t).add(h)),nt)t=e.getPlotLinePath({value:b,lineWidth:f.strokeWidth(),acrossPanes:i.acrossPanes});else if(u)t=e.getPlotBandPath(w,p,i);else return;return(tt||!f.d)&&t&&t.length?(f.attr({d:t}),g&&a(g,function(n,t){f.on(t,function(n){g[t].apply(s,[n])})})):f&&(t?(f.show(!0),f.animate({d:t})):f.d&&(f.hide(),y&&(s.label=y=y.destroy()))),c&&(r(c.text)||r(c.formatter))&&t&&t.length&&0<e.width&&0<e.height&&!t.isFlat?(c=l({align:v&&u&&"center",x:v?!u&&4:10,verticalAlign:!v&&u&&"middle",y:v?u?16:10:u?6:-4,rotation:v&&!u&&90},c),this.renderLabel(c,t,u,d)):y&&y.hide(),s},t.prototype.renderLabel=function(n,t,i,r){var e=this.label,o=this.axis.chart.renderer;e||(e={align:n.textAlign||n.align,rotation:n.rotation,"class":"highcharts-plot-"+(i?"band":"line")+"-label "+(n.className||"")},e.zIndex=r,r=this.getLabelText(n),this.label=e=o.text(r,0,0,n.useHTML).attr(e).add(),this.axis.chart.styledMode||e.css(n.style));o=t.xBounds||[t[0][1],t[1][1],i?t[2][1]:t[0][1]];t=t.yBounds||[t[0][2],t[1][2],i?t[2][2]:t[0][2]];i=f(o);r=f(t);e.align(n,!1,{x:i,y:r,width:u(o)-i,height:u(t)-r});e.show(!0)},t.prototype.getLabelText=function(n){return r(n.formatter)?n.formatter.call(this):n.text},t.prototype.destroy=function(){e(this.axis.plotLinesAndBands,this);delete this.axis;h(this)},t}();return c(t.prototype,{getPlotBandPath:function(n,t){var e=this.getPlotLinePath({value:t,force:!0,acrossPanes:this.options.acrossPanes}),u=this.getPlotLinePath({value:n,force:!0,acrossPanes:this.options.acrossPanes}),s=[],h=this.horiz,f=1,c;if(n=n<this.min&&t<this.min||n>this.max&&t>this.max,u&&e)for(n&&(c=u.toString()===e.toString(),f=0),n=0;n<u.length;n+=2){t=u[n];var o=u[n+1],i=e[n],r=e[n+1];"M"!==t[0]&&"L"!==t[0]||"M"!==o[0]&&"L"!==o[0]||"M"!==i[0]&&"L"!==i[0]||"M"!==r[0]&&"L"!==r[0]||(h&&i[1]===t[1]?(i[1]+=f,r[1]+=f):h||i[2]!==t[2]||(i[2]+=f,r[2]+=f),s.push(["M",t[1],t[2]],["L",o[1],o[2]],["L",r[1],r[2]],["L",i[1],i[2]],["Z"]));s.isFlat=c}return s},addPlotBand:function(n){return this.addPlotBandOrLine(n,"plotBands")},addPlotLine:function(n){return this.addPlotBandOrLine(n,"plotLines")},addPlotBandOrLine:function(n,t){var i=new s(this,n).render(),u=this.userOptions,r;return i&&(t&&(r=u[t]||[],r.push(n),u[t]=r),this.plotLinesAndBands.push(i)),i},removePlotBandOrLine:function(n){for(var i=this.plotLinesAndBands,r=this.options,u=this.userOptions,t=i.length;t--;)i[t].id===n&&i[t].destroy();[r.plotLines||[],u.plotLines||[],r.plotBands||[],u.plotBands||[]].forEach(function(i){for(t=i.length;t--;)(i[t]||{}).id===n&&e(i,i[t])})},removePlotBand:function(n){this.removePlotBandOrLine(n)},removePlotLine:function(n){this.removePlotBandOrLine(n)}}),n.PlotLineOrBand=s,n.PlotLineOrBand}),i(t,"parts/Tooltip.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var u=t.clamp,o=t.css,a=t.defined,v=t.discardElement,s=t.extend,h=t.fireEvent,y=t.format,p=t.isNumber,w=t.isString,c=t.merge,i=t.pick,f=t.splat,b=t.syncTimeout,e=t.timeUnits,r,l;return r=n.doc,l=function(){function l(n,t){this.crosshairs=[];this.distance=0;this.isHidden=!0;this.isSticky=!1;this.now={};this.options={};this.outside=!1;this.chart=n;this.init(n,t)}return l.prototype.applyFilter=function(){var n=this.chart;n.renderer.definition({tagName:"filter",id:"drop-shadow-"+n.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"}]}]});n.renderer.definition({tagName:"style",textContent:".highcharts-tooltip-"+n.index+"{filter:url(#drop-shadow-"+n.index+")}"})},l.prototype.bodyFormatter=function(n){return n.map(function(n){var t=n.series.tooltipOptions;return(t[(n.point.formatPrefix||"point")+"Formatter"]||n.point.tooltipFormatter).call(n.point,t[(n.point.formatPrefix||"point")+"Format"]||"")})},l.prototype.cleanSplit=function(n){this.chart.series.forEach(function(t){var i=t&&t.tt;i&&(!i.isActive||n?t.tt=i.destroy():i.isActive=!1)})},l.prototype.defaultFormatter=function(n){var i=this.points||f(this),t=[n.tooltipFooterHeaderFormatter(i[0])];return t=t.concat(n.bodyFormatter(i)),t.push(n.tooltipFooterHeaderFormatter(i[0],!0)),t},l.prototype.destroy=function(){this.label&&(this.label=this.label.destroy());this.split&&this.tt&&(this.cleanSplit(this.chart,!0),this.tt=this.tt.destroy());this.renderer&&(this.renderer=this.renderer.destroy(),v(this.container));t.clearTimeout(this.hideTimer);t.clearTimeout(this.tooltipTimeout)},l.prototype.getAnchor=function(n,t){var i=this.chart,l=i.pointer,r=i.inverted,o=i.plotTop,c=i.plotLeft,u=0,e=0,s,h;return n=f(n),this.followPointer&&t?("undefined"==typeof t.chartX&&(t=l.normalize(t)),n=[t.chartX-c,t.chartY-o]):n[0].tooltipPos?n=n[0].tooltipPos:(n.forEach(function(n){s=n.series.yAxis;h=n.series.xAxis;u+=n.plotX+(!r&&h?h.left-c:0);e+=(n.plotLow?(n.plotLow+n.plotHigh)/2:n.plotY)+(!r&&s?s.top-o:0)}),u/=n.length,e/=n.length,n=[r?i.plotWidth-e:u,this.shared&&!r&&1<n.length&&t?t.chartY-o:r?i.plotHeight-u:e]),n.map(Math.round)},l.prototype.getDateFormat=function(n,t,i,r){var f=this.chart.time,s=f.dateFormat("%m-%d %H:%M:%S.%L",t),o={millisecond:15,second:12,minute:9,hour:6,day:3},h="millisecond",u,c;for(u in e){if(n===e.week&&+f.dateFormat("%w",t)===i&&"00:00:00.000"===s.substr(6)){u="week";break}if(e[u]>n){u=h;break}if(o[u]&&s.substr(o[u])!=="01-01 00:00:00.000".substr(o[u]))break;"week"!==u&&(h=u)}return u&&(c=f.resolveDTLFormat(r[u]).main),c},l.prototype.getLabel=function(){var u,e,i=this,f=this.chart.renderer,h=this.chart.styledMode,t=this.options,c="tooltip"+(a(t.className)?" "+t.className:""),l=(null===(u=t.style)||void 0===u?void 0:u.pointerEvents)||(!this.followPointer&&t.stickOnContact?"auto":"none"),r,v,s;return u=function(){i.inContact=!0},v=function(){var n=i.chart.hoverSeries;i.inContact=!1;n&&n.onMouseOut&&n.onMouseOut()},this.label||(this.outside&&(this.container=r=n.doc.createElement("div"),r.className="highcharts-tooltip-container",o(r,{position:"absolute",top:"1px",pointerEvents:l,zIndex:3}),n.doc.body.appendChild(r),this.renderer=f=new n.Renderer(r,0,0,null===(e=this.chart.options.chart)||void 0===e?void 0:e.style,void 0,void 0,f.styledMode)),this.split?this.label=f.g(c):(this.label=f.label("",0,0,t.shape||"callout",null,null,t.useHTML,null,c).attr({padding:t.padding,r:t.borderRadius}),h||this.label.attr({fill:t.backgroundColor,"stroke-width":t.borderWidth}).css(t.style).css({pointerEvents:l}).shadow(t.shadow)),h&&(this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index)),i.outside&&!i.split&&(s={x:this.label.xSetter,y:this.label.ySetter},this.label.xSetter=function(n,t){s[t].call(this.label,i.distance);r.style.left=n+"px"},this.label.ySetter=function(n,t){s[t].call(this.label,i.distance);r.style.top=n+"px"}),this.label.on("mouseenter",u).on("mouseleave",v).attr({zIndex:8}).add()),this.label},l.prototype.getPosition=function(n,t,u){var f=this.chart,e=this.distance,o={},s=f.inverted&&u.h||0,c,l=this.outside,k=l?r.documentElement.clientWidth-2*e:f.chartWidth,d=l?Math.max(r.body.scrollHeight,r.documentElement.scrollHeight,r.body.offsetHeight,r.documentElement.offsetHeight,r.documentElement.clientHeight):f.chartHeight,g=f.pointer.getChartPosition(),h=f.containerScaling,a=function(n){return h?n*h.scaleX:n},v=function(n){return h?n*h.scaleY:n},nt=function(i){var r="x"===i;return[i,r?k:d,r?n:t].concat(l?[r?a(n):v(t),r?g.left-e+a(u.plotX+f.plotLeft):g.top-e+v(u.plotY+f.plotTop),0,r?k:d]:[r?n:t,r?u.plotX+f.plotLeft:u.plotY+f.plotTop,r?f.plotLeft:f.plotTop,r?f.plotLeft+f.plotWidth:f.plotTop+f.plotHeight])},y=nt("y"),p=nt("x"),tt=!this.followPointer&&i(u.ttBelow,!f.inverted==!!u.negative),it=function(n,t,i,r,u,f,h){var l="y"===n?v(e):a(e),y=(i-r)/2,p=r<u-e,w=u+e+r<t,c=u-l-i+y;if(u=u+l-y,tt&&w)o[n]=u;else if(!tt&&p)o[n]=c;else if(p)o[n]=Math.min(h-r,0>c-s?c:c-s);else if(w)o[n]=Math.max(f,u+s+i>t?u:u+s);else return!1},rt=function(n,t,i,r,u){var f;return u<e||u>t-e?f=!1:o[n]=u<i/2?1:u>t-r/2?t-r-2:u-i/2,f},w=function(n){var t=y;y=p;p=t;c=n},b=function(){!1!==it.apply(0,y)?!1!==rt.apply(0,p)||c||(w(!0),b()):c?o.x=o.y=0:(w(!0),b())};return(f.inverted||1<this.len)&&w(),b(),o},l.prototype.getXDateFormat=function(n,t,i){t=t.dateTimeLabelFormats;var r=i&&i.closestPointRange;return(r?this.getDateFormat(r,n.x,i.options.startOfWeek,t):t.day)||t.year},l.prototype.hide=function(n){var r=this;t.clearTimeout(this.hideTimer);n=i(n,this.options.hideDelay,500);this.isHidden||(this.hideTimer=b(function(){r.getLabel().fadeOut(n?void 0:n);r.isHidden=!0},n))},l.prototype.init=function(n,t){this.chart=n;this.options=t;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.split=t.split&&!n.inverted&&!n.polar;this.shared=t.shared||this.split;this.outside=i(t.outside,!(!n.scrollablePixelsX&&!n.scrollablePixelsY))},l.prototype.isStickyOnContact=function(){return!(this.followPointer||!this.options.stickOnContact||!this.inContact)},l.prototype.move=function(n,i,r,u){var f=this,e=f.now,o=!1!==f.options.animation&&!f.isHidden&&(1<Math.abs(n-e.x)||1<Math.abs(i-e.y)),h=f.followPointer||1<f.len;s(e,{x:o?(2*e.x+n)/3:n,y:o?(e.y+i)/2:i,anchorX:h?void 0:o?(2*e.anchorX+r)/3:r,anchorY:h?void 0:o?(e.anchorY+u)/2:u});f.getLabel().attr(e);f.drawTracker();o&&(t.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){f&&f.move(n,i,r,u)},32))},l.prototype.refresh=function(n,r){var e=this.chart,c=this.options,u=n,o={},a=[],s=c.formatter||this.defaultFormatter,v,l,y;o=this.shared;v=e.styledMode;c.enabled&&(t.clearTimeout(this.hideTimer),this.followPointer=f(u)[0].series.tooltipOptions.followPointer,l=this.getAnchor(u,r),r=l[0],y=l[1],!o||u.series&&u.series.noSharedTooltip?o=u.getLabelConfig():(e.pointer.applyInactiveState(u),u.forEach(function(n){n.setState("hover");a.push(n.getLabelConfig())}),o={x:u[0].category,y:u[0].y},o.points=a,u=u[0]),this.len=a.length,e=s.call(o,this),s=u.series,this.distance=i(s.tooltipOptions.distance,16),!1===e?this.hide():(this.split?this.renderSplit(e,f(n)):(n=this.getLabel(),c.style.width&&!v||n.css({width:this.chart.spacingBox.width+"px"}),n.attr({text:e&&e.join?e.join(""):e}),n.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+i(u.colorIndex,s.colorIndex)),v||n.attr({stroke:c.borderColor||u.color||s.color||"#666666"}),this.updatePosition({plotX:r,plotY:y,negative:u.negative,ttBelow:u.ttBelow,h:l[2]||0})),this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1),h(this,"refresh"))},l.prototype.renderSplit=function(t,r){function tt(n,t,i,r,f){return void 0===f&&(f=!0),i?(t=et?0:nt,n=u(n-r/2,c.left,c.right-r)):(t-=d,n=f?n-r-l:n+l,n=u(n,f?n:c.left,c.right)),{x:n,y:t}}var e=this,a=e.chart,f=e.chart,y=f.plotHeight,ot=f.plotLeft,p=f.plotTop,b=f.pointer,st=f.renderer,h=f.scrollablePixelsY,it=void 0===h?0:h;h=f.scrollingContainer;h=void 0===h?{scrollLeft:0,scrollTop:0}:h;var rt=h.scrollLeft,v=h.scrollTop,ut=f.styledMode,l=e.distance,o=e.options,k=e.options.positioner,c={left:rt,right:rt+f.chartWidth,top:v,bottom:v+f.chartHeight},ft=e.getLabel(),et=!(!a.xAxis[0]||!a.xAxis[0].opposite),d=p+v,g=0,nt=y-it;w(t)&&(t=[!1,t]);t=t.slice(0,r.length+1).reduce(function(n,t,f){var b,ht;if(!1!==t&&""!==t){f=r[f-1]||{isHeader:!0,plotX:r[0].plotX,plotY:y,series:{}};var ct=f.isHeader,rt=ct?e:f.series,h=rt.tt,w=f.isHeader,s=f.series,a="highcharts-color-"+i(f.colorIndex,s.colorIndex,"none");h||(h={padding:o.padding,r:o.borderRadius},ut||(h.fill=o.backgroundColor,h["stroke-width"]=o.borderWidth),h=st.label("",0,0,o[w?"headerShape":"shape"]||"callout",void 0,void 0,o.useHTML).addClass((w?"highcharts-tooltip-header ":"")+"highcharts-tooltip-box "+a).attr(h).add(ft));h.isActive=!0;h.attr({text:t});ut||h.css(o.style).shadow(o.shadow).attr({stroke:o.borderColor||f.color||s.color||"#333333"});t=rt.tt=h;w=t.getBBox();rt=w.width+t.strokeWidth();ct&&(g=w.height,nt+=g,et&&(d-=g));s=f.plotX;s=void 0===s?0:s;a=f.plotY;a=void 0===a?0:a;b=f.series;f.isHeader?(s=ot+s,ht=p+y/2):(h=b.xAxis,b=b.yAxis,s=h.pos+u(s,-l,h.len+l),b.pos+a>=v+p&&b.pos+a<=v+p+y-it&&(ht=b.pos+a));s=u(s,c.left-l,c.right+l);"number"==typeof ht?(w=w.height+1,a=k?k.call(e,rt,w,f):tt(s,ht,ct,rt),n.push({align:k?0:void 0,anchorX:s,anchorY:ht,boxWidth:rt,point:f,rank:i(a.rank,ct?1:0),size:w,target:a.y,tt:t,x:a.x})):t.isActive=!1}return n},[]);!k&&t.some(function(n){return n.x<c.left})&&(t=t.map(function(n){var t=tt(n.anchorX,n.anchorY,n.point.isHeader,n.boxWidth,!1);return s(n,{target:t.y,x:t.x})}));e.cleanSplit();n.distribute(t,nt);t.forEach(function(n){var t=n.pos;n.tt.attr({visibility:"undefined"==typeof t?"hidden":"inherit",x:n.x,y:t+d,anchorX:n.anchorX,anchorY:n.anchorY})});t=e.container;a=e.renderer;e.outside&&t&&a&&(f=ft.getBBox(),a.setSize(f.width+f.x,f.height+f.y,!1),b=b.getChartPosition(),t.style.left=b.left+"px",t.style.top=b.top+"px")},l.prototype.drawTracker=function(){var t,r;if(this.followPointer||!this.options.stickOnContact)this.tracker&&this.tracker.destroy();else{var u=this.chart,i=this.label,n=u.hoverPoint;i&&n&&(t={x:0,y:0,width:0,height:0},n=this.getAnchor(n),r=i.getBBox(),n[0]+=u.plotLeft-i.translateX,n[1]+=u.plotTop-i.translateY,t.x=Math.min(0,n[0]),t.y=Math.min(0,n[1]),t.width=0>n[0]?Math.max(Math.abs(n[0]),r.width-n[0]):Math.max(Math.abs(n[0]),r.width),t.height=0>n[1]?Math.max(Math.abs(n[1]),r.height-Math.abs(n[1])):Math.max(Math.abs(n[1]),r.height),this.tracker?this.tracker.attr(t):(this.tracker=i.renderer.rect(t).addClass("highcharts-tracker").add(i),u.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"})))}},l.prototype.styledModeFormat=function(n){return n.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex}"')},l.prototype.tooltipFooterHeaderFormatter=function(n,t){var s=t?"footer":"header",r=n.series,f=r.tooltipOptions,u=f.xDateFormat,e=r.xAxis,o=e&&"datetime"===e.options.type&&p(n.key),i=f[s+"Format"];return t={isFooter:t,labelConfig:n},h(this,"headerFormatter",t,function(t){o&&!u&&(u=this.getXDateFormat(n,f,e));o&&u&&(n.point&&n.point.tooltipDateKeys||["key"]).forEach(function(n){i=i.replace("{point."+n+"}","{point."+n+":"+u+"}")});r.chart.styledMode&&(i=this.styledModeFormat(i));t.text=y(i,{point:n,series:r},this.chart)}),t.text},l.prototype.update=function(n){this.destroy();c(!0,this.chart.options.tooltip.userOptions,n);this.init(this.chart,c(!0,this.options,n))},l.prototype.updatePosition=function(n){var t=this.chart,i=t.pointer,r=this.getLabel(),u=n.plotX+t.plotLeft,f=n.plotY+t.plotTop,e;i=i.getChartPosition();n=(this.options.positioner||this.getPosition).call(this,r.width,r.height,n);this.outside&&(e=(this.options.borderWidth||0)+2*this.distance,this.renderer.setSize(r.width+e,r.height+e,!1),(t=t.containerScaling)&&(o(this.container,{transform:"scale("+t.scaleX+", "+t.scaleY+")"}),u*=t.scaleX,f*=t.scaleY),u+=i.left-n.x,f+=i.top-n.y);this.move(Math.round(n.x),Math.round(n.y||0),u,f)},l}(),n.Tooltip=l,n.Tooltip}),i(t,"parts/Pointer.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["parts/Tooltip.js"],t["parts/Color.js"]],function(n,t,i,r){var f=t.addEvent,v=t.attr,y=t.css,p=t.defined,e=t.extend,c=t.find,o=t.fireEvent,l=t.isNumber,h=t.isObject,w=t.objectEach,b=t.offset,u=t.pick,a=t.splat,k=r.parse,s=n.charts,d=n.noop;return t=function(){function t(n,t){this.lastValidTouch={};this.pinchDown=[];this.runChartClick=!1;this.chart=n;this.hasDragged=!1;this.options=t;this.unbindContainerMouseLeave=function(){};this.init(n,t)}return t.prototype.applyInactiveState=function(n){var i=[],t;(n||[]).forEach(function(n){t=n.series;i.push(t);t.linkedParent&&i.push(t.linkedParent);t.linkedSeries&&(i=i.concat(t.linkedSeries));t.navigatorSeries&&i.push(t.navigatorSeries)});this.chart.series.forEach(function(n){-1===i.indexOf(n)?n.setState("inactive",!0):n.options.inactiveOtherPoints&&n.setAllPointsToState("inactive")})},t.prototype.destroy=function(){var t=this;"undefined"!=typeof t.unDocMouseMove&&t.unDocMouseMove();this.unbindContainerMouseLeave();n.chartCount||(n.unbindDocumentMouseUp&&(n.unbindDocumentMouseUp=n.unbindDocumentMouseUp()),n.unbindDocumentTouchEnd&&(n.unbindDocumentTouchEnd=n.unbindDocumentTouchEnd()));clearInterval(t.tooltipTimeout);w(t,function(n,i){t[i]=null})},t.prototype.drag=function(n){var i=this.chart,u=i.options.chart,t=n.chartX,f=n.chartY,y=this.zoomHor,p=this.zoomVert,e=i.plotLeft,o=i.plotTop,l=i.plotWidth,a=i.plotHeight,r=this.selectionMarker,s=this.mouseDownX||0,c=this.mouseDownY||0,w=h(u.panning)?u.panning&&u.panning.enabled:u.panning,b=u.panKey&&n[u.panKey+"Key"],v;r&&r.touch||(t<e?t=e:t>e+l&&(t=e+l),f<o?f=o:f>o+a&&(f=o+a),this.hasDragged=Math.sqrt(Math.pow(s-t,2)+Math.pow(c-f,2)),10<this.hasDragged)&&(v=i.isInsidePlot(s-e,c-o),i.hasCartesianSeries&&(this.zoomX||this.zoomY)&&v&&!b&&!r&&(this.selectionMarker=r=i.renderer.rect(e,o,y?1:l,p?1:a,0).attr({"class":"highcharts-selection-marker",zIndex:7}).add(),i.styledMode||r.attr({fill:u.selectionMarkerFill||k("#335cad").setOpacity(.25).get()})),r&&y&&(t-=s,r.attr({width:Math.abs(t),x:(0<t?0:t)+s})),r&&p&&(t=f-c,r.attr({height:Math.abs(t),y:(0<t?0:t)+c})),v&&!r&&w&&i.pan(n,u.panning))},t.prototype.dragStart=function(n){var t=this.chart;t.mouseIsDown=n.type;t.cancelClick=!1;t.mouseDownX=this.mouseDownX=n.chartX;t.mouseDownY=this.mouseDownY=n.chartY},t.prototype.drop=function(n){var c=this,i=this.chart,r=this.hasPinched;if(this.selectionMarker){var u={originalEvent:n,xAxis:[],yAxis:[]},t=this.selectionMarker,f=t.attr?t.attr("x"):t.x,s=t.attr?t.attr("y"):t.y,a=t.attr?t.attr("width"):t.width,v=t.attr?t.attr("height"):t.height,h;(this.hasDragged||r)&&(i.axes.forEach(function(t){if(t.zoomEnabled&&p(t.min)&&(r||c[{xAxis:"zoomX",yAxis:"zoomY"}[t.coll]])){var i=t.horiz,e="touchend"===n.type?t.minPixelPadding:0,o=t.toValue((i?f:s)+e);i=t.toValue((i?f+a:s+v)-e);u[t.coll].push({axis:t,min:Math.min(o,i),max:Math.max(o,i)});h=!0}}),h&&o(i,"selection",u,function(n){i.zoom(e(n,r?{animation:!1}:null))}));l(i.index)&&(this.selectionMarker=this.selectionMarker.destroy());r&&this.scaleGroups()}i&&l(i.index)&&(y(i.container,{cursor:i._cursor}),i.cancelClick=10<this.hasDragged,i.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},t.prototype.findNearestKDPoint=function(n,t,i){var u=this.chart,f=u.hoverPoint,r;return(u=u.tooltip,f&&u&&u.isStickyOnContact())?f:(n.forEach(function(n){var u=!(n.noSharedTooltip&&t)&&0>n.options.findNearestPointBy.indexOf("y"),f,e;n=n.searchPoint(i,u);!(u=h(n,!0))||(u=!h(r,!0))||(u=r.distX-n.distX,f=r.dist-n.dist,e=(n.series.group&&n.series.group.zIndex)-(r.series.group&&r.series.group.zIndex),u=0<(0!==u&&t?u:0!==f?f:0!==e?e:r.series.index>n.series.index?-1:1));u&&(r=n)}),r)},t.prototype.getChartCoordinatesFromPoint=function(n,t){var i=n.series,f=i.xAxis,e,r;return(i=i.yAxis,e=u(n.clientX,n.plotX),r=n.shapeArgs,f&&i)?t?{chartX:f.len+f.pos-e,chartY:i.len+i.pos-n.plotY}:{chartX:e+f.pos,chartY:n.plotY+i.pos}:r&&r.x&&r.y?{chartX:r.x,chartY:r.y}:void 0},t.prototype.getChartPosition=function(){return this.chartPosition||(this.chartPosition=b(this.chart.container))},t.prototype.getCoordinates=function(n){var t={xAxis:[],yAxis:[]};return this.chart.axes.forEach(function(i){t[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(n[i.horiz?"chartX":"chartY"])})}),t},t.prototype.getHoverData=function(n,t,i,r,f,e){var l,v=[],a,s;return r=!(!r||!n),a=t&&!t.stickyTracking,s={chartX:e?e.chartX:void 0,chartY:e?e.chartY:void 0,shared:f},o(this,"beforeGetHoverData",s),a=a?[t]:i.filter(function(n){return s.filter?s.filter(n):n.visible&&!(!f&&n.directTouch)&&u(n.options.enableMouseTracking,!0)&&n.stickyTracking}),t=(l=r||!e?n:this.findNearestKDPoint(a,f,e))&&l.series,l&&(f&&!t.noSharedTooltip?(a=i.filter(function(n){return s.filter?s.filter(n):n.visible&&!(!f&&n.directTouch)&&u(n.options.enableMouseTracking,!0)&&!n.noSharedTooltip}),a.forEach(function(n){var t=c(n.points,function(n){return n.x===l.x&&!n.isNull});h(t)&&(n.chart.isBoosting&&(t=n.getPoint(t)),v.push(t))})):v.push(l)),s={hoverPoint:l},o(this,"afterGetHoverData",s),{hoverPoint:s.hoverPoint,hoverSeries:t,hoverPoints:v}},t.prototype.getPointFromEvent=function(n){n=n.target;for(var t;n&&!t;)t=n.point,n=n.parentNode;return t},t.prototype.onTrackerMouseOut=function(n){n=n.relatedTarget||n.toElement;var t=this.chart.hoverSeries;this.isDirectTouch=!1;!t||!n||t.stickyTracking||this.inClass(n,"highcharts-tooltip")||this.inClass(n,"highcharts-series-"+t.index)&&this.inClass(n,"highcharts-tracker")||t.onMouseOut()},t.prototype.inClass=function(n,t){for(var i;n;){if(i=v(n,"class")){if(-1!==i.indexOf(t))return!0;if(-1!==i.indexOf("highcharts-container"))return!1}n=n.parentNode}},t.prototype.init=function(n,t){this.options=t;this.chart=n;this.runChartClick=t.chart.events&&!!t.chart.events.click;this.pinchDown=[];this.lastValidTouch={};i&&(n.tooltip=new i(n,t.tooltip),this.followTouchMove=u(t.tooltip.followTouchMove,!0));this.setDOMEvents()},t.prototype.normalize=function(n,t){var i=n.touches,r=i?i.length?i.item(0):i.changedTouches[0]:n;return t||(t=this.getChartPosition()),i=r.pageX-t.left,t=r.pageY-t.top,(r=this.chart.containerScaling)&&(i/=r.scaleX,t/=r.scaleY),e(n,{chartX:Math.round(i),chartY:Math.round(t)})},t.prototype.onContainerClick=function(n){var t=this.chart,i=t.hoverPoint,r,u;n=this.normalize(n);r=t.plotLeft;u=t.plotTop;t.cancelClick||(i&&this.inClass(n.target,"highcharts-tracker")?(o(i.series,"click",e(n,{point:i})),t.hoverPoint&&i.firePointEvent("click",n)):(e(n,this.getCoordinates(n)),t.isInsidePlot(n.chartX-r,n.chartY-u)&&o(t,"click",n)))},t.prototype.onContainerMouseDown=function(t){if(t=this.normalize(t),n.isFirefox&&0!==t.button)this.onContainerMouseMove(t);("undefined"==typeof t.button||1==((t.buttons||t.button)&1))&&(this.zoomOption(t),this.dragStart(t))},t.prototype.onContainerMouseLeave=function(t){var i=s[u(n.hoverChartIndex,-1)],r=this.chart.tooltip;t=this.normalize(t);i&&(t.relatedTarget||t.toElement)&&(i.pointer.reset(),i.pointer.chartPosition=void 0);r&&!r.isHidden&&this.reset()},t.prototype.onContainerMouseMove=function(n){var t=this.chart;n=this.normalize(n);this.setHoverChartIndex();n.preventDefault||(n.returnValue=!1);"mousedown"===t.mouseIsDown&&this.drag(n);!t.openMenu&&(this.inClass(n.target,"highcharts-tracker")||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop))&&this.runPointActions(n)},t.prototype.onDocumentTouchEnd=function(t){s[n.hoverChartIndex]&&s[n.hoverChartIndex].pointer.drop(t)},t.prototype.onContainerTouchMove=function(n){this.touch(n)},t.prototype.onContainerTouchStart=function(n){this.zoomOption(n);this.touch(n,!0)},t.prototype.onDocumentMouseMove=function(n){var t=this.chart,r=this.chartPosition,i;n=this.normalize(n,r);i=t.tooltip;!r||i&&i.isStickyOnContact()||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop)||this.inClass(n.target,"highcharts-tracker")||this.reset()},t.prototype.onDocumentMouseUp=function(t){var i=s[u(n.hoverChartIndex,-1)];i&&i.pointer.drop(t)},t.prototype.pinch=function(n){var t=this,r=t.chart,i=t.pinchDown,f=n.touches||[],o=f.length,s=t.lastValidTouch,c=t.hasZoom,h=t.selectionMarker,l={},v=1===o&&(t.inClass(n.target,"highcharts-tracker")&&r.runTrackerClick||t.runChartClick),a={};1<o&&(t.initiated=!0);c&&t.initiated&&!v&&n.preventDefault();[].map.call(f,function(n){return t.normalize(n)});"touchstart"===n.type?([].forEach.call(f,function(n,t){i[t]={chartX:n.chartX,chartY:n.chartY}}),s.x=[i[0].chartX,i[1]&&i[1].chartX],s.y=[i[0].chartY,i[1]&&i[1].chartY],r.axes.forEach(function(n){if(n.zoomEnabled){var t=r.bounds[n.horiz?"h":"v"],i=n.minPixelPadding,f=n.toPixels(Math.min(u(n.options.min,n.dataMin),n.dataMin)),e=n.toPixels(Math.max(u(n.options.max,n.dataMax),n.dataMax)),o=Math.max(f,e);t.min=Math.min(n.pos,Math.min(f,e)-i);t.max=Math.max(n.pos+n.len,o+i)}}),t.res=!0):t.followTouchMove&&1===o?this.runPointActions(t.normalize(n)):i.length&&(h||(t.selectionMarker=h=e({destroy:d,touch:!0},r.plotBox)),t.pinchTranslate(i,f,l,h,a,s),t.hasPinched=c,t.scaleGroups(l,a),t.res&&(t.res=!1,this.reset(!1,0)))},t.prototype.pinchTranslate=function(n,t,i,r,u,f){this.zoomHor&&this.pinchTranslateDirection(!0,n,t,i,r,u,f);this.zoomVert&&this.pinchTranslateDirection(!1,n,t,i,r,u,f)},t.prototype.pinchTranslateDirection=function(n,t,i,r,u,f,e,o){var v=this.chart,l=n?"x":"y",b=n?"X":"Y",y="chart"+b,tt=n?"width":"height",k=v["plot"+(n?"Left":"Top")],a,d,s=o||1,g=v.inverted,p=v.bounds[n?"h":"v"],it=1===t.length,w=t[0][y],h=i[0][y],rt=!it&&t[1][y],c=!it&&i[1][y],nt;i=function(){"number"==typeof c&&20<Math.abs(w-rt)&&(s=o||Math.abs(h-c)/Math.abs(w-rt));d=(k-h)/s+w;a=v["plot"+(n?"Width":"Height")]/s};i();t=d;t<p.min?(t=p.min,nt=!0):t+a>p.max&&(t=p.max-a,nt=!0);nt?(h-=.8*(h-e[l][0]),"number"==typeof c&&(c-=.8*(c-e[l][1])),i()):e[l]=[h,c];g||(f[l]=d-k,f[tt]=a);f=g?1/s:s;u[tt]=a;u[l]=t;r[g?n?"scaleY":"scaleX":"scale"+b]=s;r["translate"+b]=f*k+(h-f*w)},t.prototype.reset=function(n,t){var i=this.chart,o=i.hoverSeries,r=i.hoverPoint,f=i.hoverPoints,u=i.tooltip,e=u&&u.shared?f:r;n&&e&&a(e).forEach(function(t){t.series.isCartesian&&"undefined"==typeof t.plotX&&(n=!1)});n?u&&e&&a(e).length&&(u.refresh(e),u.shared&&f?f.forEach(function(n){n.setState(n.state,!0);n.series.isCartesian&&(n.series.xAxis.crosshair&&n.series.xAxis.drawCrosshair(null,n),n.series.yAxis.crosshair&&n.series.yAxis.drawCrosshair(null,n))}):r&&(r.setState(r.state,!0),i.axes.forEach(function(n){n.crosshair&&r.series[n.coll]===n&&n.drawCrosshair(null,r)}))):(r&&r.onMouseOut(),f&&f.forEach(function(n){n.setState()}),o&&o.onMouseOut(),u&&u.hide(t),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),i.axes.forEach(function(n){n.hideCrosshair()}),this.hoverX=i.hoverPoints=i.hoverPoint=null)},t.prototype.runPointActions=function(t,i){var r=this.chart,h=r.tooltip&&r.tooltip.options.enabled?r.tooltip:void 0,a=h?h.shared:!1,e=i||r.hoverPoint,o=e&&e.series||r.hoverSeries,l;if(o=this.getHoverData(e,o,r.series,(!t||"touchmove"!==t.type)&&(!!i||o&&o.directTouch&&this.isDirectTouch),a,t),e=o.hoverPoint,l=o.hoverPoints,i=(o=o.hoverSeries)&&o.tooltipOptions.followPointer,a=a&&o&&!o.noSharedTooltip,e&&(e!==r.hoverPoint||h&&h.isHidden)){if((r.hoverPoints||[]).forEach(function(n){-1===l.indexOf(n)&&n.setState()}),r.hoverSeries!==o&&o.onMouseOver(),this.applyInactiveState(l),(l||[]).forEach(function(n){n.setState("hover")}),r.hoverPoint&&r.hoverPoint.firePointEvent("mouseOut"),!e.series)return;e.firePointEvent("mouseOver");r.hoverPoints=l;r.hoverPoint=e;h&&h.refresh(a?l:e,t)}else i&&h&&!h.isHidden&&(e=h.getAnchor([{}],t),h.updatePosition({plotX:e[0],plotY:e[1]}));this.unDocMouseMove||(this.unDocMouseMove=f(r.container.ownerDocument,"mousemove",function(t){var i=s[n.hoverChartIndex];if(i)i.pointer.onDocumentMouseMove(t)}));r.axes.forEach(function(n){var f=u((n.crosshair||{}).snap,!0),i;f&&((i=r.hoverPoint)&&i.series[n.coll]===n||(i=c(l,function(t){return t.series[n.coll]===n})));i||!f?n.drawCrosshair(t,i):n.hideCrosshair()})},t.prototype.scaleGroups=function(n,t){var i=this.chart,r;i.series.forEach(function(u){r=n||u.getPlotBox();u.xAxis&&u.xAxis.zoomEnabled&&u.group&&(u.group.attr(r),u.markerGroup&&(u.markerGroup.attr(r),u.markerGroup.clip(t?i.clipRect:null)),u.dataLabelsGroup&&u.dataLabelsGroup.attr(r))});i.clipRect.attr(t||i.clipBox)},t.prototype.setDOMEvents=function(){var t=this.chart.container,i=t.ownerDocument;t.onmousedown=this.onContainerMouseDown.bind(this);t.onmousemove=this.onContainerMouseMove.bind(this);t.onclick=this.onContainerClick.bind(this);this.unbindContainerMouseLeave=f(t,"mouseleave",this.onContainerMouseLeave.bind(this));n.unbindDocumentMouseUp||(n.unbindDocumentMouseUp=f(i,"mouseup",this.onDocumentMouseUp.bind(this)));n.hasTouch&&(f(t,"touchstart",this.onContainerTouchStart.bind(this)),f(t,"touchmove",this.onContainerTouchMove.bind(this)),n.unbindDocumentTouchEnd||(n.unbindDocumentTouchEnd=f(i,"touchend",this.onDocumentTouchEnd.bind(this))))},t.prototype.setHoverChartIndex=function(){var i=this.chart,t=n.charts[u(n.hoverChartIndex,-1)];if(t&&t!==i)t.pointer.onContainerMouseLeave({relatedTarget:!0});t&&t.mouseIsDown||(n.hoverChartIndex=i.index)},t.prototype.touch=function(n,t){var i=this.chart,f,r;this.setHoverChartIndex();1===n.touches.length?(n=this.normalize(n),(f=i.isInsidePlot(n.chartX-i.plotLeft,n.chartY-i.plotTop))&&!i.openMenu)?(t&&this.runPointActions(n),"touchmove"===n.type&&(t=this.pinchDown,r=t[0]?4<=Math.sqrt(Math.pow(t[0].chartX-n.chartX,2)+Math.pow(t[0].chartY-n.chartY,2)):!1),u(r,!0)&&this.pinch(n)):t&&this.reset():2===n.touches.length&&this.pinch(n)},t.prototype.zoomOption=function(n){var i=this.chart,r=i.options.chart,t=r.zoomType||"";i=i.inverted;/touch/.test(n.type)&&(t=u(r.pinchType,t));this.zoomX=n=/x/.test(t);this.zoomY=t=/y/.test(t);this.zoomHor=n&&!i||t&&i;this.zoomVert=t&&!i||n&&i;this.hasZoom=n||t},t}(),n.Pointer=t,n.Pointer}),i(t,"parts/MSPointer.js",[t["parts/Globals.js"],t["parts/Pointer.js"],t["parts/Utilities.js"]],function(n,t,i){function o(){var n=[];return n.item=function(n){return this[n]},l(r,function(t){n.push({pageX:t.pageX,pageY:t.pageY,target:t.target})}),n}function u(t,i,r,u){("touch"===t.pointerType||t.pointerType===t.MSPOINTER_TYPE_TOUCH)&&e[n.hoverChartIndex]&&(u(t),u=e[n.hoverChartIndex].pointer,u[i]({type:r,target:t.currentTarget,preventDefault:y,touches:o()}))}var s=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),h=i.addEvent,c=i.css,l=i.objectEach,a=i.removeEvent,e=n.charts,v=n.doc,y=n.noop,r={},f=!!n.win.PointerEvent;return function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return s(t,n),t.prototype.batchMSEvents=function(n){n(this.chart.container,f?"pointerdown":"MSPointerDown",this.onContainerPointerDown);n(this.chart.container,f?"pointermove":"MSPointerMove",this.onContainerPointerMove);n(v,f?"pointerup":"MSPointerUp",this.onDocumentPointerUp)},t.prototype.destroy=function(){this.batchMSEvents(a);n.prototype.destroy.call(this)},t.prototype.init=function(t,i){n.prototype.init.call(this,t,i);this.hasZoom&&c(t.container,{"-ms-touch-action":"none","touch-action":"none"})},t.prototype.onContainerPointerDown=function(n){u(n,"onContainerTouchStart","touchstart",function(n){r[n.pointerId]={pageX:n.pageX,pageY:n.pageY,target:n.currentTarget}})},t.prototype.onContainerPointerMove=function(n){u(n,"onContainerTouchMove","touchmove",function(n){r[n.pointerId]={pageX:n.pageX,pageY:n.pageY};r[n.pointerId].target||(r[n.pointerId].target=n.currentTarget)})},t.prototype.onDocumentPointerUp=function(n){u(n,"onDocumentTouchEnd","touchend",function(n){delete r[n.pointerId]})},t.prototype.setDOMEvents=function(){n.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(h)},t}(t)}),i(t,"parts/Legend.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var e=t.addEvent,c=t.animObject,l=t.css,f=t.defined,a=t.discardElement,v=t.find,r=t.fireEvent,y=t.format,p=t.isNumber,u=t.merge,i=t.pick,w=t.relativeLength,b=t.setAnimation,k=t.stableSort,d=t.syncTimeout;t=t.wrap;var g=n.isFirefox,o=n.marginNames,s=n.win,h=function(){function t(n,t){this.allItems=[];this.contentGroup=this.box=void 0;this.display=!1;this.group=void 0;this.offsetWidth=this.maxLegendWidth=this.maxItemWidth=this.legendWidth=this.legendHeight=this.lastLineHeight=this.lastItemY=this.itemY=this.itemX=this.itemMarginTop=this.itemMarginBottom=this.itemHeight=this.initialItemY=0;this.options={};this.padding=0;this.pages=[];this.proximate=!1;this.scrollGroup=void 0;this.widthOption=this.totalItemWidth=this.titleHeight=this.symbolWidth=this.symbolHeight=0;this.chart=n;this.init(n,t)}return t.prototype.init=function(n,t){this.chart=n;this.setOptions(t);t.enabled&&(this.render(),e(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=e(this.chart,"render",function(){this.legend.proximatePositions();this.legend.positionItems()}):this.unchartrender&&this.unchartrender())},t.prototype.setOptions=function(n){var t=i(n.padding,8);this.options=n;this.chart.styledMode||(this.itemStyle=n.itemStyle,this.itemHiddenStyle=u(this.itemStyle,n.itemHiddenStyle));this.itemMarginTop=n.itemMarginTop||0;this.itemMarginBottom=n.itemMarginBottom||0;this.padding=t;this.initialItemY=t-5;this.symbolWidth=i(n.symbolWidth,16);this.pages=[];this.proximate="proximate"===n.layout&&!this.chart.inverted;this.baseline=void 0},t.prototype.update=function(n,t){var f=this.chart;this.setOptions(u(!0,this.options,n));this.destroy();f.isDirtyLegend=f.isDirtyBox=!0;i(t,!0)&&f.redraw();r(this,"afterUpdate")},t.prototype.colorizeItem=function(n,t){if(n.legendGroup[t?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){var i=this.options,o=n.legendItem,s=n.legendLine,e=n.legendSymbol,u=this.itemHiddenStyle.color;i=t?i.itemStyle.color:u;var h=t?n.color||u:u,c=n.options&&n.options.marker,f={fill:h};o&&o.css({fill:i,color:i});s&&s.attr({stroke:h});e&&(c&&e.isMarker&&(f=n.pointAttribs(),t||(f.stroke=f.fill=u)),e.attr(f))}r(this,"afterColorizeItem",{item:n,visible:t})},t.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()},t.prototype.positionItem=function(n){var i=this.options,e=i.symbolPadding,t,r,u;i=!i.rtl;t=n._legendItemPos;r=t[0];t=t[1];u=n.checkbox;(n=n.legendGroup)&&n.element&&n[f(n.translateY)?"animate":"attr"]({translateX:i?r:this.legendWidth-r-2*e-4,translateY:t});u&&(u.x=r,u.y=t)},t.prototype.destroyItem=function(n){var t=n.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(t){n[t]&&(n[t]=n[t].destroy())});t&&a(n.checkbox)},t.prototype.destroy=function(){function n(n){this[n]&&(this[n]=this[n].destroy())}this.getAllItems().forEach(function(t){["legendItem","legendGroup"].forEach(n,t)});"clipRect up down pager nav box title group".split(" ").forEach(n,this);this.display=null},t.prototype.positionCheckboxes=function(){var t=this.group&&this.group.alignAttr,i=this.clipHeight||this.legendHeight,r=this.titleHeight,n;t&&(n=t.translateY,this.allItems.forEach(function(u){var f=u.checkbox,e;f&&(e=n+r+f.y+(this.scrollOffset||0)+3,l(f,{left:t.translateX+u.checkboxOffset+f.x-20+"px",top:e+"px",display:this.proximate||e>n-6&&e<n+i-6?"":"none"}))},this))},t.prototype.renderTitle=function(){var n=this.options,r=this.padding,t=n.title,i=0;t.text&&(this.title||(this.title=this.chart.renderer.label(t.text,r-3,r-4,null,null,null,n.useHTML,null,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(t.style),this.title.add(this.group)),t.width||this.title.css({width:this.maxLegendWidth+"px"}),n=this.title.getBBox(),i=n.height,this.offsetWidth=n.width,this.contentGroup.attr({translateY:i}));this.titleHeight=i},t.prototype.setText=function(n){var t=this.options;n.legendItem.attr({text:t.labelFormat?y(t.labelFormat,n,this.chart):t.labelFormatter.call(n)})},t.prototype.renderItem=function(n){var r=this.chart,s=r.renderer,f=this.options,y=this.symbolWidth,h=f.symbolPadding,c=this.itemStyle,b=this.itemHiddenStyle,o="horizontal"===f.layout?i(f.itemDistance,20):0,p=!f.rtl,t=n.legendItem,w=!n.series,l=!w&&n.series.drawLegendSymbol?n.series:n,e=l.options,a,v;e=this.createCheckboxForItem&&e&&e.showCheckbox;o=y+h+o+(e?20:0);a=f.useHTML;v=n.options.className;t||(n.legendGroup=s.g("legend-item").addClass("highcharts-"+l.type+"-series highcharts-color-"+n.colorIndex+(v?" "+v:"")+(w?" highcharts-series-"+n.index:"")).attr({zIndex:1}).add(this.scrollGroup),n.legendItem=t=s.text("",p?y+h:-h,this.baseline||0,a),r.styledMode||t.css(u(n.visible?c:b)),t.attr({align:p?"left":"right",zIndex:2}).add(n.legendGroup),this.baseline||(this.fontMetrics=s.fontMetrics(r.styledMode?12:c.fontSize,t),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,t.attr("y",this.baseline)),this.symbolHeight=f.symbolHeight||this.fontMetrics.f,l.drawLegendSymbol(this,n),this.setItemEvents&&this.setItemEvents(n,t,a));e&&!n.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(n);this.colorizeItem(n,n.visible);!r.styledMode&&c.width||t.css({width:(f.itemWidth||this.widthOption||r.spacingBox.width)-o+"px"});this.setText(n);r=t.getBBox();n.itemWidth=n.checkboxOffset=f.itemWidth||n.legendItemWidth||r.width+o;this.maxItemWidth=Math.max(this.maxItemWidth,n.itemWidth);this.totalItemWidth+=n.itemWidth;this.itemHeight=n.itemHeight=Math.round(n.legendItemHeight||r.height||this.symbolHeight)},t.prototype.layoutItem=function(n){var t=this.options,r=this.padding,u="horizontal"===t.layout,f=n.itemHeight,e=this.itemMarginBottom,o=this.itemMarginTop,h=u?i(t.itemDistance,20):0,s=this.maxLegendWidth;t=t.alignColumns&&this.totalItemWidth>s?this.maxItemWidth:n.itemWidth;u&&this.itemX-r+t>s&&(this.itemX=r,this.lastLineHeight&&(this.itemY+=o+this.lastLineHeight+e),this.lastLineHeight=0);this.lastItemY=o+this.itemY+e;this.lastLineHeight=Math.max(f,this.lastLineHeight);n._legendItemPos=[this.itemX,this.itemY];u?this.itemX+=t:(this.itemY+=o+f+e,this.lastLineHeight=f);this.offsetWidth=this.widthOption||Math.max((u?this.itemX-r-(n.checkbox?0:h):t)+r,this.offsetWidth)},t.prototype.getAllItems=function(){var n=[];return this.chart.series.forEach(function(t){var r=t&&t.options;t&&i(r.showInLegend,f(r.linkedTo)?!1:void 0,!0)&&(n=n.concat(t.legendItems||("point"===r.legendType?t.data:t)))}),r(this,"afterGetAllItems",{allItems:n}),n},t.prototype.getAlignment=function(){var n=this.options;return this.proximate?n.align.charAt(0)+"tv":n.floating?"":n.align.charAt(0)+n.verticalAlign.charAt(0)+n.layout.charAt(0)},t.prototype.adjustMargins=function(n,t){var r=this.chart,u=this.options,e=this.getAlignment();e&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(s,h){s.test(e)&&!f(n[h])&&(r[o[h]]=Math.max(r[o[h]],r.legend[(h+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][h]*u[h%2?"x":"y"]+i(u.margin,12)+t[h]+(r.titleOffset[h]||0)))})},t.prototype.proximatePositions=function(){var t=this.chart,i=[],r="left"===this.options.align;this.allItems.forEach(function(n){var f=r,u,e;n.yAxis&&n.points&&(n.xAxis.options.reversed&&(f=!f),u=v(f?n.points:n.points.slice(0).reverse(),function(n){return p(n.plotY)}),f=this.itemMarginTop+n.legendItem.getBBox().height+this.itemMarginBottom,e=n.yAxis.top-t.plotTop,n.visible?(u=u?u.plotY:n.yAxis.height,u+=e-.3*f):u=e+n.yAxis.height,i.push({target:u,size:f,item:n}))},this);n.distribute(i,t.plotHeight);i.forEach(function(n){n.item._legendItemPos[1]=t.plotTop-t.spacing[0]+n.pos})},t.prototype.render=function(){var e=this.chart,h=e.renderer,o=this.group,t=this.box,i=this.options,s=this.padding,f,n,u;this.itemX=s;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=w(i.width,e.spacingBox.width-s);f=e.spacingBox.width-2*s-i.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(f/=2);this.maxLegendWidth=this.widthOption||f;o||(this.group=o=h.g("legend").attr({zIndex:7}).add(),this.contentGroup=h.g().attr({zIndex:1}).add(o),this.scrollGroup=h.g().add(this.contentGroup));this.renderTitle();n=this.getAllItems();k(n,function(n,t){return(n.options&&n.options.legendIndex||0)-(t.options&&t.options.legendIndex||0)});i.reversed&&n.reverse();this.allItems=n;this.display=f=!!n.length;this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0;n.forEach(this.renderItem,this);n.forEach(this.layoutItem,this);n=(this.widthOption||this.offsetWidth)+s;u=this.lastItemY+this.lastLineHeight+this.titleHeight;u=this.handleOverflow(u);u+=s;t||(this.box=t=h.rect().addClass("highcharts-legend-box").attr({r:i.borderRadius}).add(o),t.isNew=!0);e.styledMode||t.attr({stroke:i.borderColor,"stroke-width":i.borderWidth||0,fill:i.backgroundColor||"none"}).shadow(i.shadow);0<n&&0<u&&(t[t.isNew?"attr":"animate"](t.crisp.call({},{x:0,y:0,width:n,height:u},t.strokeWidth())),t.isNew=!1);t[f?"show":"hide"]();e.styledMode&&"none"===o.getStyle("display")&&(n=u=0);this.legendWidth=n;this.legendHeight=u;f&&this.align();this.proximate||this.positionItems();r(this,"afterRender")},t.prototype.align=function(n){void 0===n&&(n=this.chart.spacingBox);var t=this.chart,r=this.options,i=n.y;/(lth|ct|rth)/.test(this.getAlignment())&&0<t.titleOffset[0]?i+=t.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<t.titleOffset[2]&&(i-=t.titleOffset[2]);i!==n.y&&(n=u(n,{y:i}));this.group.align(u(r,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":r.verticalAlign}),!0,n)},t.prototype.handleOverflow=function(n){var t=this,a=this.chart,s=a.renderer,f=this.options,r=f.y,l=this.padding;r=a.spacingBox.height+("top"===f.verticalAlign?-r:r)-l;var w=f.maxHeight,v,h=this.clipRect,y=f.navigation,b=i(y.animation,!0),e=y.arrowSize||12,u=this.nav,o=this.pages,c,p=this.allItems,k=function(n){"number"==typeof n?h.attr({height:n}):h&&(t.clipRect=h.destroy(),t.contentGroup.clip());t.contentGroup.div&&(t.contentGroup.div.style.clip=n?"rect("+l+"px,9999px,"+(l+n)+"px,0)":"auto")},d=function(n){return t[n]=s.circle(0,0,1.3*e).translate(e/2,e/2).add(u),a.styledMode||t[n].attr("fill","rgba(0,0,0,0.0001)"),t[n]};return"horizontal"!==f.layout||"middle"===f.verticalAlign||f.floating||(r/=2),w&&(r=Math.min(r,w)),o.length=0,n>r&&!1!==y.enabled?(this.clipHeight=v=Math.max(r-20-this.titleHeight-l,0),this.currentPage=i(this.currentPage,1),this.fullHeight=n,p.forEach(function(n,t){var i=n._legendItemPos[1],u=Math.round(n.legendItem.getBBox().height),r=o.length;(!r||i-o[r-1]>v&&(c||i)!==o[r-1])&&(o.push(c||i),r++);n.pageIx=r-1;c&&(p[t-1].pageIx=r-1);t===p.length-1&&i+u-o[r-1]>v&&i!==c&&(o.push(i),n.pageIx=r);i!==c&&(c=i)}),h||(h=t.clipRect=s.clipRect(0,l,9999,0),t.contentGroup.clip(h)),k(v),u||(this.nav=u=s.g().attr({zIndex:1}).add(this.group),this.up=s.symbol("triangle",0,0,e,e).add(u),d("upTracker").on("click",function(){t.scroll(-1,b)}),this.pager=s.text("",15,10).addClass("highcharts-legend-navigation"),a.styledMode||this.pager.css(y.style),this.pager.add(u),this.down=s.symbol("triangle-down",0,0,e,e).add(u),d("downTracker").on("click",function(){t.scroll(1,b)})),t.scroll(0),n=r):u&&(k(),this.nav=u.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),n},t.prototype.scroll=function(n,t){var h=this,o=this.chart,s=this.pages,f=s.length,u=this.currentPage+n;n=this.clipHeight;var e=this.options.navigation,l=this.pager,a=this.padding;u>f&&(u=f);0<u&&("undefined"!=typeof t&&b(t,o),this.nav.attr({translateX:a,translateY:n+this.padding+7+this.titleHeight,visibility:"visible"}),[this.up,this.upTracker].forEach(function(n){n.attr({"class":1===u?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),l.attr({text:u+"/"+f}),[this.down,this.downTracker].forEach(function(n){n.attr({x:18+this.pager.getBBox().width,"class":u===f?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),o.styledMode||(this.up.attr({fill:1===u?e.inactiveColor:e.activeColor}),this.upTracker.css({cursor:1===u?"default":"pointer"}),this.down.attr({fill:u===f?e.inactiveColor:e.activeColor}),this.downTracker.css({cursor:u===f?"default":"pointer"})),this.scrollOffset=-s[u-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=u,this.positionCheckboxes(),t=c(i(t,o.renderer.globalAnimation,!0)),d(function(){r(h,"afterScroll",{currentPage:u})},t.duration||0))},t}();return(/Trident\/7\.0/.test(s.navigator&&s.navigator.userAgent)||g)&&t(h.prototype,"positionItem",function(n,t){var i=this,r=function(){t._legendItemPos&&n.call(i,t)};r();i.bubbleLegend||setTimeout(r)}),n.Legend=h,n.Legend}),i(t,"parts/Chart.js",[t["parts/Globals.js"],t["parts/Legend.js"],t["parts/MSPointer.js"],t["parts/Pointer.js"],t["parts/Time.js"],t["parts/Utilities.js"]],function(n,t,i,r,u,f){var w=f.addEvent,ct=f.animate,lt=f.animObject,it=f.attr,at=f.createElement,y=f.css,o=f.defined,vt=f.discardElement,yt=f.erase,rt=f.error,l=f.extend,b=f.find,e=f.fireEvent,a=f.getStyle,pt=f.isArray,wt=f.isFunction,bt=f.isNumber,ut=f.isObject,k=f.isString,p=f.merge,kt=f.numberFormat,d=f.objectEach,v=f.pick,g=f.pInt,dt=f.relativeLength,ft=f.removeEvent,nt=f.setAnimation,et=f.splat,ot=f.syncTimeout,gt=f.uniqueKey,h=n.doc,ni=n.Axis,ti=n.defaultOptions,s=n.charts,st=n.marginNames,tt=n.seriesTypes,c=n.win,ht=n.Chart=function(){this.getArgs.apply(this,arguments)};n.chart=function(n,t,i){return new ht(n,t,i)};l(ht.prototype,{callbacks:[],getArgs:function(){var n=[].slice.call(arguments);(k(n[0])||n[0].nodeName)&&(this.renderTo=n.shift());this.init(n[0],n[1])},init:function(t,i){var r,o=t.series,f=t.plotOptions||{};e(this,"init",{args:arguments},function(){var c,l,h;t.series=null;r=p(ti,t);c=r.chart||{};d(r.plotOptions,function(n,t){ut(n)&&(n.tooltip=f[t]&&p(f[t].tooltip)||void 0)});r.tooltip.userOptions=t.chart&&t.chart.forExport&&t.tooltip.userOptions||t.tooltip;r.series=t.series=o;this.userOptions=t;l=c.events;this.margin=[];this.spacing=[];this.bounds={h:{},v:{}};this.labelCollectors=[];this.callback=i;this.isResizing=0;this.options=r;this.axes=[];this.series=[];this.time=t.time&&Object.keys(t.time).length?new u(t.time):n.time;this.numberFormatter=c.numberFormatter||kt;this.styledMode=c.styledMode;this.hasCartesianSeries=c.showAxes;h=this;h.index=s.length;s.push(h);n.chartCount++;l&&d(l,function(n,t){wt(n)&&w(h,t,n)});h.xAxis=[];h.yAxis=[];h.pointCount=h.colorCounter=h.symbolCounter=0;e(h,"afterInit");h.firstRender()})},initSeries:function(n){var t=this.options.chart,i;return t=n.type||t.type||t.defaultSeriesType,i=tt[t],i||rt(17,!0,this,{missingModuleFor:t}),t=new i,t.init(this,n),t},setSeriesData:function(){this.getSeriesOrderByLinks().forEach(function(n){n.points||n.data||!n.enabledDataSorting||n.setData(n.options.data,!1)})},getSeriesOrderByLinks:function(){return this.series.concat().sort(function(n,t){return n.linkedSeries.length||t.linkedSeries.length?t.linkedSeries.length-n.linkedSeries.length:0})},orderSeries:function(n){var t=this.series;for(n=n||0;n<t.length;n++)t[n]&&(t[n].index=n,t[n].name=t[n].getName())},isInsidePlot:function(n,t,i){var r=i?t:n;return n=i?n:t,r={x:r,y:n,isInsidePlot:0<=r&&r<=this.plotWidth&&0<=n&&n<=this.plotHeight},e(this,"afterIsInsidePlot",r),r.isInsidePlot},redraw:function(n){var i,h,w;e(this,"beforeRedraw");var u=this.axes,t=this.series,c=this.pointer,f=this.legend,o=this.userOptions.legend,s=this.isDirtyLegend,a=this.hasCartesianSeries,r=this.isDirtyBox,v=this.renderer,y=v.isHidden(),p=[];for(this.setResponsive&&this.setResponsive(!1),nt(this.hasRendered?n:!1,this),y&&this.temporaryDisplay(),this.layOutTitles(),n=t.length;n--;)if(i=t[n],i.options.stacking&&(h=!0,i.isDirty)){w=!0;break}if(w)for(n=t.length;n--;)i=t[n],i.options.stacking&&(i.isDirty=!0);t.forEach(function(n){n.isDirty&&("point"===n.options.legendType?(n.updateTotals&&n.updateTotals(),s=!0):o&&(o.labelFormatter||o.labelFormat)&&(s=!0));n.isDirtyData&&e(n,"updatedData")});s&&f&&f.options.enabled&&(f.render(),this.isDirtyLegend=!1);h&&this.getStacks();a&&u.forEach(function(n){n.updateNames();n.setScale()});this.getMargins();a&&(u.forEach(function(n){n.isDirty&&(r=!0)}),u.forEach(function(n){var t=n.min+","+n.max;n.extKey!==t&&(n.extKey=t,p.push(function(){e(n,"afterSetExtremes",l(n.eventArgs,n.getExtremes()));delete n.eventArgs}));(r||h)&&n.redraw()}));r&&this.drawChartBox();e(this,"predraw");t.forEach(function(n){(r||n.isDirty)&&n.visible&&n.redraw();n.isDirtyData=!1});c&&c.reset(!0);v.draw();e(this,"redraw");e(this,"render");y&&this.temporaryDisplay(!0);p.forEach(function(n){n.call()})},get:function(n){function i(t){return t.id===n||t.options&&t.options.id===n}for(var u=this.series,r=b(this.axes,i)||b(this.series,i),t=0;!r&&t<u.length;t++)r=b(u[t].points||[],i);return r},getAxes:function(){var i=this,n=this.options,t=n.xAxis=et(n.xAxis||{});n=n.yAxis=et(n.yAxis||{});e(this,"getAxes");t.forEach(function(n,t){n.index=t;n.isX=!0});n.forEach(function(n,t){n.index=t});t.concat(n).forEach(function(n){new ni(i,n)});e(this,"afterGetAxes")},getSelectedPoints:function(){var n=[];return this.series.forEach(function(t){n=n.concat(t.getPointsCollection().filter(function(n){return v(n.selectedStaging,n.selected)}))}),n},getSelectedSeries:function(){return this.series.filter(function(n){return n.selected})},setTitle:function(n,t,i){this.applyDescription("title",n);this.applyDescription("subtitle",t);this.applyDescription("caption",void 0);this.layOutTitles(i)},applyDescription:function(n,t){var u=this,r="title"===n?{color:"#333333",fontSize:this.options.isStock?"16px":"18px"}:{color:"#666666"},i;r=this.options[n]=p(!this.styledMode&&{style:r},this.options[n],t);i=this[n];i&&t&&(this[n]=i=i.destroy());r&&!i&&(i=this.renderer.text(r.text,0,0,r.useHTML).attr({align:r.align,"class":"highcharts-"+n,zIndex:r.zIndex||4}).add(),i.update=function(t){u[{title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"}[n]](t)},this.styledMode||i.css(r.style),this[n]=i)},layOutTitles:function(n){var t=[0,0,0],r=this.renderer,u=this.spacingBox,i;["title","subtitle","caption"].forEach(function(n){var f=this[n],i=this.options[n],o=i.verticalAlign||"top",e,s;n="title"===n?-3:"top"===o?t[0]+2:0;f&&(this.styledMode||(e=i.style.fontSize),e=r.fontMetrics(e,f).b,f.css({width:(i.width||u.width+(i.widthAdjust||0))+"px"}),s=Math.round(f.getBBox(i.useHTML).height),f.align(l({y:"bottom"===o?e:n+e,height:s},i),!1,"spacingBox"),i.floating||("top"===o?t[0]=Math.ceil(t[0]+s):"bottom"===o&&(t[2]=Math.ceil(t[2]+s))))},this);t[0]&&"top"===(this.options.title.verticalAlign||"top")&&(t[0]+=this.options.title.margin);t[2]&&"bottom"===this.options.caption.verticalAlign&&(t[2]+=this.options.caption.margin);i=!this.titleOffset||this.titleOffset.join(",")!==t.join(",");this.titleOffset=t;e(this,"afterLayOutTitles");!this.isDirtyBox&&i&&(this.isDirtyBox=this.isDirtyLegend=i,this.hasRendered&&v(n,!0)&&this.isDirtyBox&&this.redraw())},getChartSize:function(){var n=this.options.chart,i=n.width,t;n=n.height;t=this.renderTo;o(i)||(this.containerWidth=a(t,"width"));o(n)||(this.containerHeight=a(t,"height"));this.chartWidth=Math.max(0,i||this.containerWidth||600);this.chartHeight=Math.max(0,dt(n,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))},temporaryDisplay:function(n){var t=this.renderTo;if(n)for(;t&&t.style;)t.hcOrigStyle&&(y(t,t.hcOrigStyle),delete t.hcOrigStyle),t.hcOrigDetached&&(h.body.removeChild(t),t.hcOrigDetached=!1),t=t.parentNode;else for(;t&&t.style;)if(h.body.contains(t)||t.parentNode||(t.hcOrigDetached=!0,h.body.appendChild(t)),("none"===a(t,"display",!1)||t.hcOricDetached)&&(t.hcOrigStyle={display:t.style.display,height:t.style.height,overflow:t.style.overflow},n={display:"block",overflow:"hidden"},t!==this.renderTo&&(n.height=0),y(t,n),t.offsetWidth||t.style.setProperty("display","block","important")),t=t.parentNode,t===h.body)break},setClassName:function(n){this.container.className="highcharts-container "+(n||"")},getContainer:function(){var u=this.options,r=u.chart,t=this.renderTo,a=gt(),o,c,i,f;if(t||(this.renderTo=t=r.renderTo),k(t)&&(this.renderTo=t=h.getElementById(t)),t||rt(13,!0,this),i=g(it(t,"data-highcharts-chart")),bt(i)&&s[i]&&s[i].hasRendered&&s[i].destroy(),it(t,"data-highcharts-chart",this.index),t.innerHTML="",r.skipClone||t.offsetWidth||this.temporaryDisplay(),this.getChartSize(),i=this.chartWidth,f=this.chartHeight,y(t,{overflow:"hidden"}),this.styledMode||(o=l({position:"relative",overflow:"hidden",width:i+"px",height:f+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},r.style)),this.container=t=at("div",{id:a},o,t),this._cursor=t.style.cursor,this.renderer=new(n[r.renderer]||n.Renderer)(t,i,f,null,r.forExport,u.exporting&&u.exporting.allowHTML,this.styledMode),nt(void 0,this),this.setClassName(r.className),this.styledMode)for(c in u.defs)this.renderer.definition(u.defs[c]);else this.renderer.setStyle(r.style);this.renderer.chartIndex=this.index;e(this,"afterGetContainer")},getMargins:function(n){var i=this.spacing,r=this.margin,t=this.titleOffset;this.resetMargins();t[0]&&!o(r[0])&&(this.plotTop=Math.max(this.plotTop,t[0]+i[0]));t[2]&&!o(r[2])&&(this.marginBottom=Math.max(this.marginBottom,t[2]+i[2]));this.legend&&this.legend.display&&this.legend.adjustMargins(r,i);e(this,"getMargins");n||this.getAxisMargins()},getAxisMargins:function(){var n=this,r=n.axisOffset=[0,0,0,0],t=n.colorAxis,u=n.margin,i=function(n){n.forEach(function(n){n.visible&&n.getOffset()})};n.hasCartesianSeries?i(n.axes):t&&t.length&&i(t);st.forEach(function(t,i){o(u[i])||(n[t]+=r[i])});n.setChartSize()},reflow:function(n){var t=this,i=t.options.chart,r=t.renderTo,e=o(i.width)&&o(i.height),u=i.width||a(r,"width");i=i.height||a(r,"height");r=n?n.target:c;!e&&!t.isPrinting&&u&&i&&(r===c||r===h)&&((u!==t.containerWidth||i!==t.containerHeight)&&(f.clearTimeout(t.reflowTimeout),t.reflowTimeout=ot(function(){t.container&&t.setSize(void 0,void 0,!1)},n?100:0)),t.containerWidth=u,t.containerHeight=i)},setReflow:function(n){var t=this;!1===n||this.unbindReflow?!1===n&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=w(c,"resize",function(n){t.options&&t.reflow(n)}),w(this,"destroy",this.unbindReflow))},setSize:function(n,t,i){var r=this,u=r.renderer;r.isResizing+=1;nt(i,r);i=u.globalAnimation;r.oldChartHeight=r.chartHeight;r.oldChartWidth=r.chartWidth;"undefined"!=typeof n&&(r.options.chart.width=n);"undefined"!=typeof t&&(r.options.chart.height=t);r.getChartSize();r.styledMode||(i?ct:y)(r.container,{width:r.chartWidth+"px",height:r.chartHeight+"px"},i);r.setChartSize(!0);u.setSize(r.chartWidth,r.chartHeight,i);r.axes.forEach(function(n){n.isDirty=!0;n.setScale()});r.isDirtyLegend=!0;r.isDirtyBox=!0;r.layOutTitles();r.getMargins();r.redraw(i);r.oldChartHeight=null;e(r,"resize");ot(function(){r&&e(r,"endResize",null,function(){--r.isResizing})},lt(i).duration||0)},setChartSize:function(n){var r=this.inverted,u=this.renderer,t=this.chartWidth,l=this.chartHeight,a=this.options.chart,i=this.spacing,f=this.clipOffset,h,c,o,s;this.plotLeft=h=Math.round(this.plotLeft);this.plotTop=c=Math.round(this.plotTop);this.plotWidth=o=Math.max(0,Math.round(t-h-this.marginRight));this.plotHeight=s=Math.max(0,Math.round(l-c-this.marginBottom));this.plotSizeX=r?s:o;this.plotSizeY=r?o:s;this.plotBorderWidth=a.plotBorderWidth||0;this.spacingBox=u.spacingBox={x:i[3],y:i[0],width:t-i[3]-i[1],height:l-i[0]-i[2]};this.plotBox=u.plotBox={x:h,y:c,width:o,height:s};t=2*Math.floor(this.plotBorderWidth/2);r=Math.ceil(Math.max(t,f[3])/2);u=Math.ceil(Math.max(t,f[0])/2);this.clipBox={x:r,y:u,width:Math.floor(this.plotSizeX-Math.max(t,f[1])/2-r),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(t,f[2])/2-u))};n||this.axes.forEach(function(n){n.setAxisSize();n.setAxisTranslation()});e(this,"afterSetChartSize",{skipAxes:n})},resetMargins:function(){e(this,"resetMargins");var n=this,t=n.options.chart;["margin","spacing"].forEach(function(i){var r=t[i],u=ut(r)?r:[r,r,r,r];["Top","Right","Bottom","Left"].forEach(function(r,f){n[i][f]=v(t[i+r],u[f])})});st.forEach(function(t,i){n[t]=v(n.margin[i],n.spacing[i])});n.axisOffset=[0,0,0,0];n.clipOffset=[0,0,0,0]},drawChartBox:function(){var n=this.options.chart,o=this.renderer,g=this.chartWidth,nt=this.chartHeight,r=this.chartBackground,h=this.plotBackground,u=this.plotBorder,a=this.styledMode,c=this.plotBGImage,s=n.backgroundColor,tt=n.plotBackgroundColor,l=n.plotBackgroundImage,f,y=this.plotLeft,p=this.plotTop,w=this.plotWidth,b=this.plotHeight,k=this.plotBox,d=this.clipRect,v=this.clipBox,t="animate",i;r||(this.chartBackground=r=o.rect().addClass("highcharts-background").add(),t="attr");a?i=f=r.strokeWidth():(i=n.borderWidth||0,f=i+(n.shadow?8:0),s={fill:s||"none"},(i||r["stroke-width"])&&(s.stroke=n.borderColor,s["stroke-width"]=i),r.attr(s).shadow(n.shadow));r[t]({x:f/2,y:f/2,width:g-f-i%2,height:nt-f-i%2,r:n.borderRadius});t="animate";h||(t="attr",this.plotBackground=h=o.rect().addClass("highcharts-plot-background").add());h[t](k);a||(h.attr({fill:tt||"none"}).shadow(n.plotShadow),l&&(c?(l!==c.attr("href")&&c.attr("href",l),c.animate(k)):this.plotBGImage=o.image(l,y,p,w,b).add()));d?d.animate({width:v.width,height:v.height}):this.clipRect=o.clipRect(v);t="animate";u||(t="attr",this.plotBorder=u=o.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add());a||u.attr({stroke:n.plotBorderColor,"stroke-width":n.plotBorderWidth||0,fill:"none"});u[t](u.crisp({x:y,y:p,width:w,height:b},-u.strokeWidth()));this.isDirtyBox=!1;e(this,"afterDrawChartBox")},propFromSeries:function(){var i=this,r=i.options.chart,n,u=i.options.series,f,t;["inverted","angular","polar"].forEach(function(e){for(n=tt[r.type||r.defaultSeriesType],t=r[e]||n&&n.prototype[e],f=u&&u.length;!t&&f--;)(n=tt[u[f].type])&&n.prototype[e]&&(t=!0);i[e]=t})},linkSeries:function(){var n=this,t=n.series;t.forEach(function(n){n.linkedSeries.length=0});t.forEach(function(t){var i=t.options.linkedTo;k(i)&&(i=":previous"===i?n.series[t.index-1]:n.get(i))&&i.linkedParent!==t&&(i.linkedSeries.push(t),t.linkedParent=i,i.enabledDataSorting&&t.setDataSortingOptions(),t.visible=v(t.options.visible,i.options.visible,t.visible))});e(this,"afterLinkSeries")},renderSeries:function(){this.series.forEach(function(n){n.translate();n.render()})},renderLabels:function(){var n=this,t=n.options.labels;t.items&&t.items.forEach(function(i){var r=l(t.style,i.style),u=g(r.left)+n.plotLeft,f=g(r.top)+n.plotTop+12;delete r.left;delete r.top;n.renderer.text(i.html,u,f).attr({zIndex:2}).css(r).add()})},render:function(){var n=this.axes,i=this.colorAxis,h=this.renderer,r=this.options,e=0,o=function(n){n.forEach(function(n){n.visible&&n.render()})},s,u,f;this.setTitle();this.legend=new t(this,r.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();r=this.plotWidth;n.some(function(n){if(n.horiz&&n.visible&&n.options.labels.enabled&&n.series.length)return e=21,!0});s=this.plotHeight=Math.max(this.plotHeight-e,0);n.forEach(function(n){n.setScale()});this.getAxisMargins();u=1.1<r/this.plotWidth;f=1.05<s/this.plotHeight;(u||f)&&(n.forEach(function(n){(n.horiz&&u||!n.horiz&&f)&&n.setTickInterval(!0)}),this.getMargins());this.drawChartBox();this.hasCartesianSeries?o(n):i&&i.length&&o(i);this.seriesGroup||(this.seriesGroup=h.g("series-group").attr({zIndex:3}).add());this.renderSeries();this.renderLabels();this.addCredits();this.setResponsive&&this.setResponsive();this.updateContainerScaling();this.hasRendered=!0},addCredits:function(n){var t=this;n=p(!0,this.options.credits,n);n.enabled&&!this.credits&&(this.credits=this.renderer.text(n.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){n.href&&(c.location.href=n.href)}).attr({align:n.position.align,zIndex:8}),t.styledMode||this.credits.css(n.style),this.credits.add().align(n.position),this.credits.update=function(n){t.credits=t.credits.destroy();t.addCredits(n)})},updateContainerScaling:function(){var n=this.container,t,i;n.offsetWidth&&n.offsetHeight&&n.getBoundingClientRect&&(t=n.getBoundingClientRect(),i=t.width/n.offsetWidth,n=t.height/n.offsetHeight,1!==i||1!==n?this.containerScaling={scaleX:i,scaleY:n}:delete this.containerScaling)},destroy:function(){var t=this,u=t.axes,f=t.series,r=t.container,i,o=r&&r.parentNode;for(e(t,"destroy"),t.renderer.forExport?yt(s,t):s[t.index]=void 0,n.chartCount--,t.renderTo.removeAttribute("data-highcharts-chart"),ft(t),i=u.length;i--;)u[i]=u[i].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),i=f.length;i--;)f[i]=f[i].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(n){var i=t[n];i&&i.destroy&&(t[n]=i.destroy())});r&&(r.innerHTML="",ft(r),o&&vt(r));d(t,function(n,i){delete t[i]})},firstRender:function(){var t=this,u=t.options;(!t.isReadyToRender||t.isReadyToRender())&&(t.getContainer(),t.resetMargins(),t.setChartSize(),t.propFromSeries(),t.getAxes(),(pt(u.series)?u.series:[]).forEach(function(n){t.initSeries(n)}),t.linkSeries(),t.setSeriesData(),e(t,"beforeRender"),r&&(t.pointer=n.hasTouch||!c.PointerEvent&&!c.MSPointerEvent?new r(t,u):new i(t,u)),t.render(),t.renderer.imgCount||t.hasLoaded||t.onload(),t.temporaryDisplay(!0))},onload:function(){this.callbacks.concat([this.callback]).forEach(function(n){n&&"undefined"!=typeof this.index&&n.apply(this,[this])},this);e(this,"load");e(this,"render");o(this.index)&&this.setReflow(this.options.chart.reflow);this.hasLoaded=!0}})}),i(t,"parts/ScrollablePlotArea.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var i=t.addEvent,r=t.createElement,u=t.pick,f=t.stop;t=n.Chart;i(t,"afterSetChartSize",function(t){var r=this.options.chart.scrollablePlotArea,i=r&&r.minWidth,u;r=r&&r.minHeight;this.renderer.forExport||(i?(this.scrollablePixelsX=i=Math.max(0,i-this.chartWidth))&&(this.plotWidth+=i,this.inverted?(this.clipBox.height+=i,this.plotBox.height+=i):(this.clipBox.width+=i,this.plotBox.width+=i),u={1:{name:"right",value:i}}):r&&(this.scrollablePixelsY=i=Math.max(0,r-this.chartHeight))&&(this.plotHeight+=i,this.inverted?(this.clipBox.width+=i,this.plotBox.width+=i):(this.clipBox.height+=i,this.plotBox.height+=i),u={2:{name:"bottom",value:i}}),u&&!t.skipAxes&&this.axes.forEach(function(t){u[t.side]?t.getPlotLinePath=function(){var i=u[t.side].name,r=this[i],f;return this[i]=r-u[t.side].value,f=n.Axis.prototype.getPlotLinePath.apply(this,arguments),this[i]=r,f}:(t.setAxisSize(),t.setAxisTranslation())}))});i(t,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()});t.prototype.setUpScrolling=function(){var t=this,n={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(n.overflowX="auto");this.scrollablePixelsY&&(n.overflowY="auto");this.scrollingContainer=r("div",{className:"highcharts-scrolling"},n,this.renderTo);i(this.scrollingContainer,"scroll",function(){t.pointer&&delete t.pointer.chartPosition});this.innerContainer=r("div",{className:"highcharts-inner-container"},null,this.scrollingContainer);this.innerContainer.appendChild(this.container);this.setUpScrolling=null};t.prototype.moveFixedElements=function(){var r=this.container,t=this.fixedRenderer,i=".highcharts-contextbutton .highcharts-credits .highcharts-legend .highcharts-legend-checkbox .highcharts-navigator-series .highcharts-navigator-xaxis .highcharts-navigator-yaxis .highcharts-navigator .highcharts-reset-zoom .highcharts-scrollbar .highcharts-subtitle .highcharts-title".split(" "),n;this.scrollablePixelsX&&!this.inverted?n=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?n=".highcharts-xaxis":this.scrollablePixelsY&&!this.inverted?n=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(n=".highcharts-yaxis");i.push(n,n+"-labels");i.forEach(function(n){[].forEach.call(r.querySelectorAll(n),function(n){(n.namespaceURI===t.SVG_NS?t.box:t.box.parentNode).appendChild(n);n.style.pointerEvents="auto"})})};t.prototype.applyFixed=function(){var e,t,s=!this.fixedDiv,o=this.options.chart.scrollablePlotArea,h,c;s?(this.fixedDiv=r("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:2},null,!0),this.renderTo.insertBefore(this.fixedDiv,this.renderTo.firstChild),this.renderTo.style.overflow="visible",this.fixedRenderer=t=new n.Renderer(this.fixedDiv,this.chartWidth,this.chartHeight,null===(e=this.options.chart)||void 0===e?void 0:e.style),this.scrollableMask=t.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":u(o.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),this.moveFixedElements(),i(this,"afterShowResetZoom",this.moveFixedElements),i(this,"afterLayOutTitles",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight);e=this.chartWidth+(this.scrollablePixelsX||0);t=this.chartHeight+(this.scrollablePixelsY||0);f(this.container);this.container.style.width=e+"px";this.container.style.height=t+"px";this.renderer.boxWrapper.attr({width:e,height:t,viewBox:[0,0,e,t].join(" ")});this.chartBackground.attr({width:e,height:t});this.scrollingContainer.style.height=this.chartHeight+"px";s&&(o.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*o.scrollPositionX),o.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*o.scrollPositionY));t=this.axisOffset;s=this.plotTop-t[0]-1;o=this.plotLeft-t[3]-1;e=this.plotTop+this.plotHeight+t[2]+1;t=this.plotLeft+this.plotWidth+t[1]+1;h=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0);c=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);s=this.scrollablePixelsX?[["M",0,s],["L",this.plotLeft-1,s],["L",this.plotLeft-1,e],["L",0,e],["Z"],["M",h,s],["L",this.chartWidth,s],["L",this.chartWidth,e],["L",h,e],["Z"]]:this.scrollablePixelsY?[["M",o,0],["L",o,this.plotTop-1],["L",t,this.plotTop-1],["L",t,0],["Z"],["M",o,c],["L",o,this.chartHeight],["L",t,this.chartHeight],["L",t,c],["Z"]]:[["M",0,0]];"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:s})}}),i(t,"parts/StackingAxis.js",[t["parts/Utilities.js"]],function(n){var i=n.addEvent,r=n.destroyObjectProperties,u=n.fireEvent,t=n.objectEach,f=n.pick,e=function(){function n(n){this.oldStacks={};this.stacks={};this.stacksTouched=0;this.axis=n}return n.prototype.buildStacks=function(){var t=this.axis,i=t.series,o=f(t.options.reversedStacks,!0),r=i.length,n,e;if(!t.isXAxis){for(this.usePercentage=!1,n=r;n--;)e=i[o?n:r-n-1],e.setStackedPoints();for(n=0;n<r;n++)i[n].modifyStacks();u(t,"afterBuildStacks")}},n.prototype.cleanStacks=function(){if(!this.axis.isXAxis){if(this.oldStacks)var n=this.stacks=this.oldStacks;t(n,function(n){t(n,function(n){n.cumulative=n.total})})}},n.prototype.resetStacks=function(){var n=this,i=n.stacks;n.axis.isXAxis||t(i,function(i){t(i,function(t,r){t.touched<n.stacksTouched?(t.destroy(),delete i[r]):(t.total=null,t.cumulative=null)})})},n.prototype.renderStackTotals=function(){var n=this.axis.chart,r=n.renderer,u=this.stacks,i=this.stackTotalGroup=this.stackTotalGroup||r.g("stack-labels").attr({visibility:"visible",zIndex:6}).add();i.translate(n.plotLeft,n.plotTop);t(u,function(n){t(n,function(n){n.render(i)})})},n}();return function(){function n(){}return n.compose=function(t){i(t,"init",n.onInit);i(t,"destroy",n.onDestroy)},n.onDestroy=function(){var n=this.stacking,i;n&&(i=n.stacks,t(i,function(n,t){r(n);i[t]=null}),n&&n.stackTotalGroup&&n.stackTotalGroup.destroy())},n.onInit=function(){this.stacking||(this.stacking=new e(this))},n}()}),i(t,"mixins/legend-symbol.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var r=t.merge,i=t.pick;return n.LegendSymbolMixin={drawRectangle:function(n,t){var r=n.symbolHeight,u=n.options.squareSymbol;t.legendSymbol=this.chart.renderer.rect(u?(n.symbolWidth-r)/2:0,n.baseline-r+1,u?r:n.symbolWidth,r,i(n.options.symbolRadius,r/2)).addClass("highcharts-point").attr({zIndex:3}).add(t.legendGroup)},drawLineMarker:function(n){var t=this.options,u=t.marker,e=n.symbolWidth,o=n.symbolHeight,s=o/2,h=this.chart.renderer,c=this.legendGroup,f;n=n.baseline-Math.round(.3*n.fontMetrics.b);f={};this.chart.styledMode||(f={"stroke-width":t.lineWidth||0},t.dashStyle&&(f.dashstyle=t.dashStyle));this.legendLine=h.path(["M",0,n,"L",e,n]).addClass("highcharts-graph").attr(f).add(c);u&&!1!==u.enabled&&e&&(t=Math.min(i(u.radius,s),s),0===this.symbol.indexOf("url")&&(u=r(u,{width:o,height:o}),t=0),this.legendSymbol=u=h.symbol(this.symbol,e/2-t,n-t,2*t,2*t,u).addClass("highcharts-point").add(c),u.isMarker=!0)}},n.LegendSymbolMixin}),i(t,"parts/Point.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){"";var e=t.animObject,o=t.defined,s=t.erase,i=t.extend,u=t.fireEvent,h=t.format,c=t.getNestedProperty,l=t.isArray,f=t.isNumber,a=t.isObject,v=t.syncTimeout,r=t.pick,y=t.removeEvent,p=t.uniqueKey;return t=function(){function n(){this.colorIndex=this.category=void 0;this.formatPrefix="point";this.id=void 0;this.isNull=!1;this.percentage=this.options=this.name=void 0;this.selected=!1;this.total=this.series=void 0;this.visible=!0;this.x=void 0}return n.prototype.animateBeforeDestroy=function(){var n=this,u={x:n.startXPos,opacity:0},t,r=n.getGraphicalProps();r.singular.forEach(function(i){t="dataLabel"===i;n[i]=n[i].animate(t?{x:n[i].startXPos,y:n[i].startYPos,opacity:0}:u)});r.plural.forEach(function(t){n[t].forEach(function(t){t.element&&t.animate(i({x:n.startXPos},t.startYPos?{x:t.startXPos,y:t.startYPos}:{}))})})},n.prototype.applyOptions=function(t,u){var e=this.series,o=e.options.pointValKey||e.pointValKey;return t=n.prototype.optionsToObject.call(this,t),i(this,t),this.options=this.options?i(this.options,t):t,t.group&&delete this.group,t.dataLabels&&delete this.dataLabels,o&&(this.y=n.prototype.getNestedProperty.call(this,o)),this.formatPrefix=(this.isNull=r(this.isValid&&!this.isValid(),null===this.x||!f(this.y)))?"null":"point",this.selected&&(this.state="select"),"name"in this&&"undefined"==typeof u&&e.xAxis&&e.xAxis.hasNames&&(this.x=e.xAxis.nameToX(this)),"undefined"==typeof this.x&&e&&(this.x="undefined"==typeof u?e.autoIncrement(this):u),this},n.prototype.destroy=function(){function u(){(n.graphic||n.dataLabel||n.dataLabels)&&(y(n),n.destroyElements());for(o in n)n[o]=null}var n=this,t=n.series,i=t.chart,r,f,o;t=t.options.dataSorting;r=i.hoverPoints;f=e(n.series.chart.renderer.globalAnimation);n.legendItem&&i.legend.destroyItem(n);r&&(n.setState(),s(r,n),r.length||(i.hoverPoints=null));n===i.hoverPoint&&n.onMouseOut();t&&t.enabled?(this.animateBeforeDestroy(),v(u,f.duration)):u();i.pointCount--},n.prototype.destroyElements=function(n){var t=this;n=t.getGraphicalProps(n);n.singular.forEach(function(n){t[n]=t[n].destroy()});n.plural.forEach(function(n){t[n].forEach(function(n){n.element&&n.destroy()});delete t[n]})},n.prototype.firePointEvent=function(n,t,i){var r=this,f=this.series.options;(f.point.events[n]||r.options&&r.options.events&&r.options.events[n])&&r.importEvents();"click"===n&&f.allowPointSelect&&(i=function(n){r.select&&r.select(null,n.ctrlKey||n.metaKey||n.shiftKey)});u(r,n,t,i)},n.prototype.getClassName=function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+("undefined"!=typeof this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")},n.prototype.getGraphicalProps=function(n){var f=this,t=[],i,r={singular:[],plural:[]},u;for(n=n||{graphic:1,dataLabel:1},n.graphic&&t.push("graphic","shadowGroup"),n.dataLabel&&t.push("dataLabel","dataLabelUpper","connector"),i=t.length;i--;)u=t[i],f[u]&&r.singular.push(u);return["dataLabel","connector"].forEach(function(t){var i=t+"s";n[t]&&f[i]&&r.plural.push(i)}),r},n.prototype.getLabelConfig=function(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}},n.prototype.getNestedProperty=function(n){if(n)return 0===n.indexOf("custom.")?c(n,this.options):this[n]},n.prototype.getZone=function(){var t=this.series,r=t.zones,i,n;for(t=t.zoneAxis||"y",i=0,n=r[i];this[t]>=n.value;)n=r[++i];return this.nonZonedColor||(this.nonZonedColor=this.color),this.color=n&&n.color&&!this.options.color?n.color:this.nonZonedColor,n},n.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType},n.prototype.init=function(n,t,i){return this.series=n,this.applyOptions(t,i),this.id=o(this.id)?this.id:p(),this.resolveColor(),n.chart.pointCount++,u(this,"afterInit"),this},n.prototype.optionsToObject=function(t){var i={},r=this.series,s=r.options.keys,u=s||r.pointArrayMap||["y"],h=u.length,e=0,o=0;if(f(t)||null===t)i[u[0]]=t;else if(l(t))for(!s&&t.length>h&&(r=typeof t[0],"string"===r?i.name=t[0]:"number"===r&&(i.x=t[0]),e++);o<h;)s&&"undefined"==typeof t[e]||(0<u[o].indexOf(".")?n.prototype.setNestedProperty(i,t[e],u[o]):i[u[o]]=t[e]),e++,o++;else"object"==typeof t&&(i=t,t.dataLabels&&(r._hasPointLabels=!0),t.marker&&(r._hasPointMarkers=!0));return i},n.prototype.resolveColor=function(){var n=this.series,t=n.chart.options.chart.colorCount,i=n.chart.styledMode;delete this.nonZonedColor;i||this.options.color||(this.color=n.color);n.options.colorByPoint?(i||(t=n.options.colors||n.chart.options.colors,this.color=this.color||t[n.colorCounter],t=t.length),i=n.colorCounter,n.colorCounter++,n.colorCounter===t&&(n.colorCounter=0)):i=n.colorIndex;this.colorIndex=r(this.colorIndex,i)},n.prototype.setNestedProperty=function(n,t,i){return i.split(".").reduce(function(n,i,r,u){return n[i]=u.length-1===r?t:a(n[i],!0)?n[i]:{},n[i]},n),n},n.prototype.tooltipFormatter=function(n){var t=this.series,i=t.tooltipOptions,e=r(i.valueDecimals,""),u=i.valuePrefix||"",f=i.valueSuffix||"";return t.chart.styledMode&&(n=t.chart.tooltip.styledModeFormat(n)),(t.pointArrayMap||["y"]).forEach(function(t){t="{point."+t;(u||f)&&(n=n.replace(RegExp(t+"}","g"),u+t+"}"+f));n=n.replace(RegExp(t+"}","g"),t+":,."+e+"f}")}),h(n,{point:this,series:this.series},t.chart)},n}(),n.Point=t,n.Point}),i(t,"parts/Series.js",[t["mixins/legend-symbol.js"],t["parts/Globals.js"],t["parts/Point.js"],t["parts/Utilities.js"]],function(n,t,i,r){"";var w=r.addEvent,b=r.animObject,l=r.arrayMax,k=r.arrayMin,s=r.clamp,d=r.correctFloat,f=r.defined,g=r.erase,h=r.error,a=r.extend,ft=r.find,e=r.fireEvent,nt=r.getNestedProperty,v=r.isArray,tt=r.isFunction,o=r.isNumber,et=r.isString,y=r.merge,p=r.objectEach,u=r.pick,it=r.removeEvent,ot=r.seriesType,st=r.splat,rt=r.syncTimeout,c=t.defaultOptions,ht=t.defaultPlotOptions,ut=t.seriesTypes,ct=t.SVGElement,lt=t.win;t.Series=ot("line",null,{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{align:"center",formatter:function(){var n=this.series.chart.numberFormatter;return"number"!=typeof this.y?"":n(this.y,-1)},padding:5,style:{fontSize:"11px",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:50},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"},{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,eventsToUnbind:[],isCartesian:!0,parallelArrays:["x","y"],pointClass:i,requireSorting:!0,sorted:!0,init:function(n,t){var i,r,o,f;e(this,"init",{options:t});i=this;r=n.series;this.eventOptions=this.eventOptions||{};i.chart=n;i.options=t=i.setOptions(t);i.linkedSeries=[];i.bindAxes();a(i,{name:t.name,state:"",visible:!1!==t.visible,selected:!0===t.selected});f=t.events;p(f,function(n,t){tt(n)&&i.eventOptions[t]!==n&&(tt(i.eventOptions[t])&&it(i,t,i.eventOptions[t]),i.eventOptions[t]=n,w(i,t,n))});(f&&f.click||t.point&&t.point.events&&t.point.events.click||t.allowPointSelect)&&(n.runTrackerClick=!0);i.getColor();i.getSymbol();i.parallelArrays.forEach(function(n){i[n+"Data"]||(i[n+"Data"]=[])});i.isCartesian&&(n.hasCartesianSeries=!0);r.length&&(o=r[r.length-1]);i._i=u(o&&o._i,-1)+1;n.orderSeries(this.insert(r));t.dataSorting&&t.dataSorting.enabled?i.setDataSortingOptions():i.points||i.data||i.setData(t.data,!1);e(this,"afterInit")},is:function(n){return ut[n]&&this instanceof ut[n]},insert:function(n){var i=this.options.index,t;if(o(i)){for(t=n.length;t--;)if(i>=u(n[t].options.index,n[t]._i)){n.splice(t+1,0,this);break}-1===t&&n.unshift(this);t+=1}else n.push(this);return u(t,n.length-1)},bindAxes:function(){var n=this,t=n.options,r=n.chart,i;e(this,"bindAxes",null,function(){(n.axisTypes||[]).forEach(function(u){r[u].forEach(function(r){i=r.options;(t[u]===i.index||"undefined"!=typeof t[u]&&t[u]===i.id||"undefined"==typeof t[u]&&0===i.index)&&(n.insert(r.series),n[u]=r,r.isDirty=!0)});n[u]||n.optionalAxis===u||h(18,!0,r)})});e(this,"afterBindAxes")},updateParallelArrays:function(n,t){var i=n.series,r=arguments,u=o(t)?function(r){var u="y"===r&&i.toYData?i.toYData(n):n[r];i[r+"Data"][t]=u}:function(n){Array.prototype[t].apply(i[n+"Data"],Array.prototype.slice.call(r,2))};i.parallelArrays.forEach(u)},hasData:function(){return this.visible&&"undefined"!=typeof this.dataMax&&"undefined"!=typeof this.dataMin||this.visible&&this.yData&&0<this.yData.length},autoIncrement:function(){var n=this.options,i=this.xIncrement,r,f=n.pointIntervalUnit,t=this.chart.time;return i=u(i,n.pointStart,0),this.pointInterval=r=u(this.pointInterval,n.pointInterval,1),f&&(n=new t.Date(i),"day"===f?t.set("Date",n,t.get("Date",n)+r):"month"===f?t.set("Month",n,t.get("Month",n)+r):"year"===f&&t.set("FullYear",n,t.get("FullYear",n)+r),r=n.getTime()-i),this.xIncrement=i+r,i},setDataSortingOptions:function(){var n=this.options;a(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1});f(n.pointRange)||(n.pointRange=1)},setOptions:function(n){var o=this.chart,r=o.options,i=r.plotOptions,t=o.userOptions||{},h,l,s;return n=y(n),o=o.styledMode,h={plotOptions:i,userOptions:n},e(this,"setOptions",h),l=h.plotOptions[this.type],s=t.plotOptions||{},this.userOptions=h.userOptions,t=y(l,i.series,t.plotOptions&&t.plotOptions[this.type],n),this.tooltipOptions=y(c.tooltip,c.plotOptions.series&&c.plotOptions.series.tooltip,c.plotOptions[this.type].tooltip,r.tooltip.userOptions,i.series&&i.series.tooltip,i[this.type].tooltip,n.tooltip),this.stickyTracking=u(n.stickyTracking,s[this.type]&&s[this.type].stickyTracking,s.series&&s.series.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:t.stickyTracking),null===l.marker&&delete t.marker,this.zoneAxis=t.zoneAxis,r=this.zones=(t.zones||[]).slice(),(t.negativeColor||t.negativeFillColor)&&!t.zones&&(i={value:t[this.zoneAxis+"Threshold"]||t.threshold||0,className:"highcharts-negative"},o||(i.color=t.negativeColor,i.fillColor=t.negativeFillColor),r.push(i)),r.length&&f(r[r.length-1].value)&&r.push(o?{}:{color:this.color,fillColor:this.fillColor}),e(this,"afterSetOptions",{options:t}),t},getName:function(){return u(this.options.name,"Series "+(this.index+1))},getCyclic:function(n,t,i){var r=this.chart,s=this.userOptions,o=n+"Index",h=n+"Counter",c=i?i.length:u(r.options.chart[n+"Count"],r[n+"Count"]),e;t||(e=u(s[o],s["_"+o]),f(e)||(r.series.length||(r[h]=0),s["_"+o]=e=r[h]%c,r[h]+=1),i&&(t=i[e]));"undefined"!=typeof e&&(this[o]=e);this[n]=t},getColor:function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.options.color=null:this.getCyclic("color",this.options.color||ht[this.type].color,this.chart.options.colors)},getPointsCollection:function(){return(this.hasGroupedData?this.points:this.data)||[]},getSymbol:function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},findPointIndex:function(n,t){var e=n.id,s=n.x,u=this.points,h,c=this.options.dataSorting,r,f,i;if(e)r=this.chart.get(e);else if((this.linkedParent||this.enabledDataSorting)&&(f=c&&c.matchByName?"name":"index",r=ft(u,function(t){return!t.touched&&t[f]===n[f]}),!r))return;return r&&(i=r&&r.index,"undefined"!=typeof i&&(h=!0)),"undefined"==typeof i&&o(s)&&(i=this.xData.indexOf(s,t)),-1!==i&&"undefined"!=typeof i&&this.cropped&&(i=i>=this.cropStart?i-this.cropStart:i),!h&&u[i]&&u[i].touched&&(i=void 0),i},drawLegendSymbol:n.drawLineMarker,updateData:function(n,t){var s=this.options,r=s.dataSorting,i=this.points,u=[],h,e,c,y=this.requireSorting,a=n.length===i.length,v=!0;if(this.xIncrement=null,n.forEach(function(n,t){var l=f(n)&&this.pointClass.prototype.optionsToObject.call({series:this},n)||{},e=l.x;l.id||o(e)?(e=this.findPointIndex(l,c),-1===e||"undefined"==typeof e?u.push(n):i[e]&&n!==s.data[e]?(i[e].update(n,!1,null,!1),i[e].touched=!0,y&&(c=e+1)):i[e]&&(i[e].touched=!0),!a||t!==e||r&&r.enabled||this.hasDerivedData)&&(h=!0):u.push(n)},this),h)for(n=i.length;n--;)(e=i[n])&&!e.touched&&e.remove&&e.remove(!1,t);else!a||r&&r.enabled?v=!1:(n.forEach(function(n,t){i[t].update&&n!==i[t].y&&i[t].update(n,!1,null,!1)}),u.length=0);return(i.forEach(function(n){n&&(n.touched=!1)}),!v)?!1:(u.forEach(function(n){this.addPoint(n,!1,null,null,!1)},this),null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=l(this.xData),this.autoIncrement()),!0)},setData:function(n,t,i,r){var f=this,s=f.points,g=s&&s.length||0,e,p=f.options,w=f.chart,nt=p.dataSorting,c=null,b=f.xAxis;c=p.turboThreshold;var k=this.xData,l=this.yData,tt=(e=f.pointArrayMap)&&e.length,d=p.keys,a=0,y=1,it;if(n=n||[],e=n.length,t=u(t,!0),nt&&nt.enabled&&(n=this.sortData(n)),!1!==r&&e&&g&&!f.cropped&&!f.hasGroupedData&&f.visible&&!f.isSeriesBoosting&&(it=this.updateData(n,i)),!it){if(f.xIncrement=null,f.colorCounter=0,this.parallelArrays.forEach(function(n){f[n+"Data"].length=0}),c&&e>c)if(c=f.getFirstValidPoint(n),o(c))for(i=0;i<e;i++)k[i]=this.autoIncrement(),l[i]=n[i];else if(v(c))if(tt)for(i=0;i<e;i++)r=n[i],k[i]=r[0],l[i]=r.slice(1,tt+1);else for(d&&(a=d.indexOf("x"),y=d.indexOf("y"),a=0<=a?a:0,y=0<=y?y:1),i=0;i<e;i++)r=n[i],k[i]=r[a],l[i]=r[y];else h(12,!1,w);else for(i=0;i<e;i++)"undefined"!=typeof n[i]&&(r={series:f},f.pointClass.prototype.applyOptions.apply(r,[n[i]]),f.updateParallelArrays(r,i));for(l&&et(l[0])&&h(14,!0,w),f.data=[],f.options.data=f.userOptions.data=n,i=g;i--;)s[i]&&s[i].destroy&&s[i].destroy();b&&(b.minRange=b.userMinRange);f.isDirty=w.isDirtyBox=!0;f.isDirtyData=!!s;i=!1}"point"===p.legendType&&(this.processData(),this.generatePoints());t&&w.redraw(i)},sortData:function(n){var t=this,i=t.options.dataSorting.sortKey||"y",r=function(n,t){return f(t)&&n.pointClass.prototype.optionsToObject.call({series:n},t)||{}};return n.forEach(function(i,u){n[u]=r(t,i);n[u].index=u},this),n.concat().sort(function(n,t){return n=nt(i,n),t=nt(i,t),t<n?-1:t>n?1:0}).forEach(function(n,t){n.x=t},this),t.linkedSeries&&t.linkedSeries.forEach(function(t){var u=t.options,i=u.data;u.dataSorting&&u.dataSorting.enabled||!i||(i.forEach(function(u,f){i[f]=r(t,u);n[f]&&(i[f].x=n[f].x,i[f].index=f)}),t.setData(i,!1))}),n},getProcessedData:function(n){var t=this.xData,l=this.yData,r=t.length,f=0,i=this.xAxis,e=this.options,u=e.cropThreshold,y=n||this.getExtremesFromAll||e.getExtremesFromAll,p=this.isCartesian,a,o,s,v,c;for(n=i&&i.val2lin,e=!(!i||!i.logarithmic),a=this.requireSorting,i&&(i=i.getExtremes(),o=i.min,s=i.max),p&&this.sorted&&!y&&(!u||r>u||this.forceCrop)&&(t[r-1]<o||t[0]>s?(t=[],l=[]):this.yData&&(t[0]<o||t[r-1]>s)&&(f=this.cropData(this.xData,this.yData,o,s),t=f.xData,l=f.yData,f=f.start,v=!0)),u=t.length||1;--u;)(r=e?n(t[u])-n(t[u-1]):t[u]-t[u-1],0<r&&("undefined"==typeof c||r<c))?c=r:0>r&&a&&(h(15,!1,this.chart),a=!1);return{xData:t,yData:l,cropped:v,cropStart:f,closestPointRange:c}},processData:function(n){var t=this.xAxis;if(this.isCartesian&&!this.isDirty&&!t.isDirty&&!this.yAxis.isDirty&&!n)return!1;n=this.getProcessedData();this.cropped=n.cropped;this.cropStart=n.cropStart;this.processedXData=n.xData;this.processedYData=n.yData;this.closestPointRange=this.basePointRange=n.closestPointRange},cropData:function(n,t,i,r,f){var h=n.length,o=0,s=h,e;for(f=u(f,this.cropShoulder),e=0;e<h;e++)if(n[e]>=i){o=Math.max(0,e-f);break}for(i=e;i<h;i++)if(n[i]>r){s=i+f;break}return{xData:n.slice(o,s),yData:t.slice(o,s),start:o,end:s}},generatePoints:function(){var u=this.options,o=u.data,t=this.data,l,s=this.processedXData,p=this.processedYData,v=this.pointClass,h=s.length,y=this.cropStart||0,f=this.hasGroupedData,c,n,r,i;for(u=u.keys,c=[],t||f||(t=[],t.length=o.length,t=this.data=t),u&&f&&(this.options.keys=!1),n=0;n<h;n++)r=y+n,f?(i=(new v).init(this,[s[n]].concat(st(p[n]))),i.dataGroup=this.groupMap[n],i.dataGroup.options&&(i.options=i.dataGroup.options,a(i,i.dataGroup.options),delete i.dataLabels)):(i=t[r])||"undefined"==typeof o[r]||(t[r]=i=(new v).init(this,o[r],s[n])),i&&(i.index=r,c[n]=i);if(this.options.keys=u,t&&(h!==(l=t.length)||f))for(n=0;n<l;n++)n!==y||f||(n+=h),t[n]&&(t[n].destroyElements(),t[n].plotX=void 0);this.data=t;this.points=c;e(this,"afterGeneratePoints")},getXExtremes:function(n){return{min:k(n),max:l(n)}},getExtremes:function(n,t){var a=this.xAxis,s=this.yAxis,y=this.processedXData||this.xData,h=[],p=0,w=0,u=0,b=this.requireSorting?this.cropShoulder:0,d=s?s.positiveValuesOnly:!1,r;for(n=n||this.stackedYData||this.processedYData||[],s=n.length,a&&(u=a.getExtremes(),w=u.min,u=u.max),r=0;r<s;r++){var c=y[r],i=n[r],f=(o(i)||v(i))&&(i.length||0<i||!d);if(c=t||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!a||(y[r+b]||c)>=w&&(y[r-b]||c)<=u,f&&c)if(f=i.length)for(;f--;)o(i[f])&&(h[p++]=i[f]);else h[p++]=i}return n={dataMin:k(h),dataMax:l(h)},e(this,"afterGetExtremes",{dataExtremes:n}),n},applyExtremes:function(){var n=this.getExtremes();return this.dataMin=n.dataMin,this.dataMax=n.dataMax,n},getFirstValidPoint:function(n){for(var t=null,r=n.length,i=0;null===t&&i<r;)t=n[i],i++;return t},translate:function(){var b,c,k,rt;this.processedXData||this.processData();this.generatePoints();for(var a=this.options,ut=a.stacking,g=this.xAxis,nt=g.categories,st=this.enabledDataSorting,i=this.yAxis,ft=this.points,ht=ft.length,ct=!!this.modifyValue,tt=this.pointPlacementToXValue(),lt=!!tt,l=a.threshold,et=a.startFromThreshold?l:0,p,ot=this.zoneAxis||"y",it=Number.MAX_VALUE,y=0;y<ht;y++){var n=ft[y],h=n.x,t=n.y,r=n.low,w=ut&&i.stacking&&i.stacking.stacks[(this.negStacks&&t<(et?0:l)?"-":"")+this.stackKey];i.positiveValuesOnly&&null!==t&&0>=t&&(n.isNull=!0);n.plotX=p=d(s(g.translate(h,0,0,0,1,tt,"flags"===this.type),-1e5,1e5));ut&&this.visible&&w&&w[h]&&(b=this.getStackIndicator(b,h,this.index),n.isNull||(c=w[h],k=c.points[b.key]));v(k)&&(r=k[0],t=k[1],r===et&&b.key===w[h].base&&(r=u(o(l)&&l,i.min)),i.positiveValuesOnly&&0>=r&&(r=null),n.total=n.stackTotal=c.total,n.percentage=c.total&&n.y/c.total*100,n.stackY=t,this.irregularWidths||c.setOffset(this.pointXOffset||0,this.barW||0));n.yBottom=f(r)?s(i.translate(r,0,1,0,1),-1e5,1e5):null;ct&&(t=this.modifyValue(t,n));n.plotY="number"==typeof t&&Infinity!==t?s(i.translate(t,0,1,0,1),-1e5,1e5):void 0;n.isInside=this.isPointInside(n);n.clientX=lt?d(g.translate(h,0,0,0,1,tt)):p;n.negative=n[ot]<(a[ot+"Threshold"]||l||0);n.category=nt&&"undefined"!=typeof nt[n.x]?nt[n.x]:n.x;n.isNull||!1===n.visible||("undefined"!=typeof rt&&(it=Math.min(it,Math.abs(p-rt))),rt=p);n.zone=this.zones.length&&n.getZone();!n.graphic&&this.group&&st&&(n.isNew=!0)}this.closestPointRangePx=it;e(this,"afterTranslate")},getValidPoints:function(n,t,i){var r=this.chart;return(n||this.points||[]).filter(function(n){return t&&!r.isInsidePlot(n.plotX,n.plotY,r.inverted)?!1:!1!==n.visible&&(i||!n.isNull)})},getClipBox:function(n,t){var f=this.options,i=this.chart,e=i.inverted,r=this.xAxis,u=r&&this.yAxis;return n&&!1===f.clip&&u?n=e?{y:-i.chartWidth+u.len+u.pos,height:i.chartWidth,width:i.chartHeight,x:-i.chartHeight+r.len+r.pos}:{y:-u.pos,height:i.chartHeight,width:i.chartWidth,x:-r.pos}:(n=this.clipBox||i.clipBox,t&&(n.width=i.plotSizeX,n.x=0)),t?{width:n.width,x:n.x}:n},setClip:function(n){var t=this.chart,f=this.options,o=t.renderer,e=t.inverted,s=this.clipBox,u=this.getClipBox(n),i=this.sharedClipKey||["_sharedClip",n&&n.duration,n&&n.easing,u.height,f.xAxis,f.yAxis].join(),r=t[i],h=t[i+"m"];n&&(u.width=0,e&&(u.x=t.plotHeight+(!1!==f.clip?0:t.plotTop)));r?t.hasLoaded||r.attr(u):(n&&(t[i+"m"]=h=o.clipRect(e?t.plotSizeX+99:-99,e?-t.plotLeft:-t.plotTop,99,e?t.chartWidth:t.chartHeight)),t[i]=r=o.clipRect(u),r.count={length:0});n&&!r.count[this.index]&&(r.count[this.index]=!0,r.count.length+=1);(!1!==f.clip||n)&&(this.group.clip(n||s?r:t.clipRect),this.markerGroup.clip(h),this.sharedClipKey=i);n||(r.count[this.index]&&(delete r.count[this.index],--r.count.length),0===r.count.length&&i&&t[i]&&(s||(t[i]=t[i].destroy()),t[i+"m"]&&(t[i+"m"]=t[i+"m"].destroy())))},animate:function(n){var t=this.chart,i=b(this.options.animation),r,u;t.hasRendered||(n?this.setClip(i):(r=this.sharedClipKey,n=t[r],u=this.getClipBox(i,!0),n&&n.animate(u,i),t[r+"m"]&&t[r+"m"].animate({width:u.width+99,x:u.x-(t.inverted?0:99)},i)))},afterAnimate:function(){this.setClip();e(this,"afterAnimate");this.finishedAnimating=!0},drawPoints:function(){var l=this.points,h=this.chart,e,t,f=this.options.marker,v=this[this.specialGroup]||this.markerGroup,o=this.xAxis,y=u(f.enabled,!o||o.isRadial?!0:null,this.closestPointRangePx>=f.enabledThreshold*f.radius),a,i,r;if(!1!==f.enabled||this._hasPointMarkers)for(e=0;e<l.length;e++){var n=l[e],c=(t=n.graphic)?"animate":"attr",s=n.marker||{},p=!!n.marker;(y&&"undefined"==typeof s.enabled||s.enabled)&&!n.isNull&&!1!==n.visible?(a=u(s.symbol,this.symbol),i=this.markerAttribs(n,n.selected&&"select"),this.enabledDataSorting&&(n.startXPos=o.reversed?-i.width:o.width),r=!1!==n.isInside,t?t[r?"show":"hide"](r).animate(i):r&&(0<i.width||n.hasImage)&&(n.graphic=t=h.renderer.symbol(a,i.x,i.y,i.width,i.height,p?s:f).add(v),this.enabledDataSorting&&h.hasRendered&&(t.attr({x:n.startXPos}),c="animate")),t&&"animate"===c&&t[r?"show":"hide"](r).animate(i),t&&!h.styledMode&&t[c](this.pointAttribs(n,n.selected&&"select")),t&&t.addClass(n.getClassName(),!0)):t&&(n.graphic=t.destroy())}},markerAttribs:function(n,t){var e=this.options,i=e.marker,f=n.marker||{},o=f.symbol||i.symbol,r=u(f.radius,i.radius);return t&&(i=i.states[t],t=f.states&&f.states[t],r=u(t&&t.radius,i&&i.radius,r+(i&&i.radiusPlus||0))),n.hasImage=o&&0===o.indexOf("url"),n.hasImage&&(r=0),n={x:e.crisp?Math.floor(n.plotX)-r:n.plotX-r,y:n.plotY-r},r&&(n.width=n.height=2*r),n},pointAttribs:function(n,t){var i=this.options.marker,r=n&&n.options,e=r&&r.marker||{},f=this.color,o=r&&r.color,h=n&&n.color,s;return r=u(e.lineWidth,i.lineWidth),s=n&&n.zone&&n.zone.color,n=1,f=o||s||h||f,o=e.fillColor||i.fillColor||f,f=e.lineColor||i.lineColor||f,t=t||"normal",i=i.states[t],t=e.states&&e.states[t]||{},r=u(t.lineWidth,i.lineWidth,r+u(t.lineWidthPlus,i.lineWidthPlus,0)),o=t.fillColor||i.fillColor||o,f=t.lineColor||i.lineColor||f,n=u(t.opacity,i.opacity,n),{stroke:f,"stroke-width":r,fill:o,opacity:n}},destroy:function(n){var t=this,u=t.chart,c=/AppleWebKit\/533/.test(lt.navigator.userAgent),s,f,h=t.data||[],o,i;for(e(t,"destroy"),this.removeEvents(n),(t.axisTypes||[]).forEach(function(n){(i=t[n])&&i.series&&(g(i.series,t),i.isDirty=i.forceRedraw=!0)}),t.legendItem&&t.chart.legend.destroyItem(t),f=h.length;f--;)(o=h[f])&&o.destroy&&o.destroy();t.points=null;r.clearTimeout(t.animationTimeout);p(t,function(n,t){n instanceof ct&&!n.survive&&(s=c&&"group"===t?"hide":"destroy",n[s]())});u.hoverSeries===t&&(u.hoverSeries=null);g(u.series,t);u.orderSeries();p(t,function(i,r){n&&"hcEvents"===r||delete t[r]})},getGraphPath:function(n,t,i){var u=this,h=u.options,r=h.step,c,o=[],s=[],e;return n=n||u.points,(c=n.reversed)&&n.reverse(),(r={right:1,center:2}[r]||r&&3)&&c&&(r=4-r),n=this.getValidPoints(n,!1,!(h.connectNulls&&!t&&!i)),n.forEach(function(c,l){var v=c.plotX,y=c.plotY,a=n[l-1];(c.leftCliff||a&&a.rightCliff)&&!i&&(e=!0);c.isNull&&!f(t)&&0<l?e=!h.connectNulls:c.isNull&&!t?e=!0:(0===l||e?l=[["M",c.plotX,c.plotY]]:u.getPointSpline?l=[u.getPointSpline(n,c,l)]:r?(l=1===r?[["L",a.plotX,y]]:2===r?[["L",(a.plotX+v)/2,a.plotY],["L",(a.plotX+v)/2,y]]:[["L",v,a.plotY]],l.push(["L",v,y])):l=[["L",v,y]],s.push(c.x),r&&(s.push(c.x),2===r&&s.push(c.x)),o.push.apply(o,l),e=!1)}),o.xMap=s,u.graphPath=o},drawGraph:function(){var n=this,i=this.options,t=(this.gappedPath||this.getGraphPath).call(this),u=this.chart.styledMode,r=[["graph","highcharts-graph"]];u||r[0].push(i.lineColor||this.color||"#cccccc",i.dashStyle);r=n.getZonesGraphs(r);r.forEach(function(r,f){var o=r[0],e=n[o],s=e?"animate":"attr";e?(e.endX=n.preventGraphAnimation?null:t.xMap,e.animate({d:t})):t.length&&(n[o]=e=n.chart.renderer.path(t).addClass(r[1]).attr({zIndex:1}).add(n.group));e&&!u&&(o={stroke:r[2],"stroke-width":i.lineWidth,fill:n.fillGraph&&n.color||"none"},r[3]?o.dashstyle=r[3]:"square"!==i.linecap&&(o["stroke-linecap"]=o["stroke-linejoin"]="round"),e[s](o).shadow(2>f&&i.shadow));e&&(e.startX=t.xMap,e.isArea=t.isArea)})},getZonesGraphs:function(n){return this.zones.forEach(function(t,i){i=["zone-graph-"+i,"highcharts-graph highcharts-zone-graph-"+i+" "+(t.className||"")];this.chart.styledMode||i.push(t.color||this.color,t.dashStyle||this.options.dashStyle);n.push(i)},this),n},applyZones:function(){var a=this,t=this.chart,nt=t.renderer,tt=this.zones,f,r,e=this.clips||[],n,o=this.graph,h=this.area,v=Math.max(t.chartWidth,t.chartHeight),i=this[(this.zoneAxis||"y")+"Axis"],w=t.inverted,b,y,p,it=!1,k,d,g,c,l;tt.length&&(o||h)&&i&&"undefined"!=typeof i.min?(g=i.reversed,c=i.horiz,o&&!this.showLine&&o.hide(),h&&h.hide(),l=i.getExtremes(),tt.forEach(function(tt,rt){f=g?c?t.plotWidth:0:c?0:i.toPixels(l.min)||0;f=s(u(r,f),0,v);r=s(Math.round(i.toPixels(u(tt.value,l.max),!0)||0),0,v);it&&(f=r=i.toPixels(l.max));b=Math.abs(f-r);y=Math.min(f,r);p=Math.max(f,r);i.isXAxis?(n={x:w?p:y,y:0,width:b,height:v},c||(n.x=t.plotHeight-n.x)):(n={x:0,y:w?p:y,width:v,height:b},c&&(n.y=t.plotWidth-n.y));w&&nt.isVML&&(n=i.isXAxis?{x:0,y:g?y:p,height:n.width,width:t.chartWidth}:{x:n.y-t.plotLeft-t.spacingBox.x,y:0,width:n.height,height:t.chartHeight});e[rt]?e[rt].animate(n):e[rt]=nt.clipRect(n);k=a["zone-area-"+rt];d=a["zone-graph-"+rt];o&&d&&d.clip(e[rt]);h&&k&&k.clip(e[rt]);it=tt.value>l.max;a.resetZones&&0===r&&(r=void 0)}),this.clips=e):a.visible&&(o&&o.show(!0),h&&h.show(!0))},invertGroups:function(n){function i(){["group","markerGroup"].forEach(function(i){t[i]&&(r.renderer.isVML&&t[i].attr({width:t.yAxis.len,height:t.xAxis.len}),t[i].width=t.yAxis.len,t[i].height=t.xAxis.len,t[i].invert(t.isRadialSeries?!1:n))})}var t=this,r=t.chart;t.xAxis&&(t.eventsToUnbind.push(w(r,"resize",i)),i(),t.invertGroups=i)},plotGroup:function(n,t,i,r,u){var e=this[n],o=!e;return o&&(this[n]=e=this.chart.renderer.g().attr({zIndex:r||.1}).add(u)),e.addClass("highcharts-"+t+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(f(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(e.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),e.attr({visibility:i})[o?"attr":"animate"](this.getPlotBox()),e},getPlotBox:function(){var t=this.chart,i=this.xAxis,n=this.yAxis;return t.inverted&&(i=n,n=this.xAxis),{translateX:i?i.left:t.plotLeft,translateY:n?n.top:t.plotTop,scaleX:1,scaleY:1}},removeEvents:function(n){n?this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(n){n()}),this.eventsToUnbind.length=0):it(this)},render:function(){var n=this,t=n.chart,i=n.options,r=!n.finishedAnimating&&t.renderer.isSVG&&b(i.animation).duration,f=n.visible?"inherit":"hidden",o=i.zIndex,s=n.hasRendered,h=t.seriesGroup,c=t.inverted,u;e(this,"render");u=n.plotGroup("group","series",f,o,h);n.markerGroup=n.plotGroup("markerGroup","markers",f,o,h);r&&n.animate&&n.animate(!0);u.inverted=n.isCartesian||n.invertable?c:!1;n.drawGraph&&(n.drawGraph(),n.applyZones());n.visible&&n.drawPoints();n.drawDataLabels&&n.drawDataLabels();n.redrawPoints&&n.redrawPoints();n.drawTracker&&!1!==n.options.enableMouseTracking&&n.drawTracker();n.invertGroups(c);!1===i.clip||n.sharedClipKey||s||u.clip(t.clipRect);r&&n.animate&&n.animate();s||(n.animationTimeout=rt(function(){n.afterAnimate()},r||0));n.isDirty=!1;n.hasRendered=!0;e(n,"afterRender")},redraw:function(){var n=this.chart,f=this.isDirty||this.isDirtyData,t=this.group,i=this.xAxis,r=this.yAxis;t&&(n.inverted&&t.attr({width:n.plotWidth,height:n.plotHeight}),t.animate({translateX:u(i&&i.left,n.plotLeft),translateY:u(r&&r.top,n.plotTop)}));this.translate();this.render();f&&delete this.kdTree},kdAxisArray:["clientX","plotY"],searchPoint:function(n,t){var i=this.xAxis,r=this.yAxis,u=this.chart.inverted;return this.searchKDTree({clientX:u?i.len-n.chartY+i.pos:n.chartX-i.pos,plotY:u?r.len-n.chartX+r.pos:n.chartY-r.pos},t,n)},buildKDTree:function(n){function i(n,r,u){var f,e;if(f=n&&n.length)return e=t.kdAxisArray[r%u],n.sort(function(n,t){return n[e]-t[e]}),f=Math.floor(f/2),{point:n[f],left:i(n.slice(0,f),r+1,u),right:i(n.slice(f+1),r+1,u)}}this.buildingKdTree=!0;var t=this,r=-1<t.options.findNearestPointBy.indexOf("y")?2:1;delete t.kdTree;rt(function(){t.kdTree=i(t.getValidPoints(null,!t.directTouch),r,r);t.buildingKdTree=!1},t.options.kdNow||n&&"touchstart"===n.type?0:1)},searchKDTree:function(n,t,i){function o(n,t,i,h){var l=t.point,a=s.kdAxisArray[i%h],v=l,y=f(n[u])&&f(l[u])?Math.pow(n[u]-l[u],2):null,c=f(n[e])&&f(l[e])?Math.pow(n[e]-l[e],2):null;return c=(y||0)+(c||0),l.dist=f(c)?Math.sqrt(c):Number.MAX_VALUE,l.distX=f(y)?Math.sqrt(y):Number.MAX_VALUE,a=n[a]-l[a],c=0>a?"left":"right",y=0>a?"right":"left",t[c]&&(c=o(n,t[c],i+1,h),v=c[r]<v[r]?c:l),t[y]&&Math.sqrt(a*a)<v[r]&&(n=o(n,t[y],i+1,h),v=n[r]<v[r]?n:v),v}var s=this,u=this.kdAxisArray[0],e=this.kdAxisArray[1],r=t?"distX":"dist";return t=-1<s.options.findNearestPointBy.indexOf("y")?2:1,this.kdTree||this.buildingKdTree||this.buildKDTree(i),this.kdTree?o(n,this.kdTree,t,t):void 0},pointPlacementToXValue:function(){var n=this.options,i=n.pointRange,t=this.xAxis;return n=n.pointPlacement,"between"===n&&(n=t.reversed?-.5:.5),o(n)?n*u(i,t.pointRange):0},isPointInside:function(n){return"undefined"!=typeof n.plotY&&"undefined"!=typeof n.plotX&&0<=n.plotY&&n.plotY<=this.yAxis.len&&0<=n.plotX&&n.plotX<=this.xAxis.len}});""}),i(t,"parts/Stacking.js",[t["parts/Axis.js"],t["parts/Globals.js"],t["parts/StackingAxis.js"],t["parts/Utilities.js"]],function(n,t,i,r){var e=r.correctFloat,o=r.defined,h=r.destroyObjectProperties,c=r.format,u=r.pick,f,s;return r=t.Chart,f=t.Series,s=function(){function n(n,t,i,r,u){var f=n.chart.inverted;this.axis=n;this.isNegative=i;this.options=t=t||{};this.x=r;this.total=null;this.points={};this.stack=u;this.rightCliff=this.leftCliff=0;this.alignOptions={align:t.align||(f?i?"left":"right":"center"),verticalAlign:t.verticalAlign||(f?"middle":i?"bottom":"top"),y:t.y,x:t.x};this.textAlign=t.textAlign||(f?i?"right":"left":"center")}return n.prototype.destroy=function(){h(this,this.axis)},n.prototype.render=function(n){var r=this.axis.chart,t=this.options,i=t.format;i=i?c(i,this,r):t.formatter.call(this);this.label?this.label.attr({text:i,visibility:"hidden"}):(this.label=r.renderer.label(i,null,null,t.shape,null,null,t.useHTML,!1,"stack-labels"),i={r:t.borderRadius||0,text:i,rotation:t.rotation,padding:u(t.padding,5),visibility:"hidden"},r.styledMode||(i.fill=t.backgroundColor,i.stroke=t.borderColor,i["stroke-width"]=t.borderWidth,this.label.css(t.style)),this.label.attr(i),this.label.added||this.label.add(n));this.label.labelrank=r.plotHeight},n.prototype.setOffset=function(n,t,i,r,e){var s=this.axis,h=s.chart,c;r=s.translate(s.stacking.usePercentage?100:r?r:this.total,0,0,0,1);i=s.translate(i?i:0);i=o(r)&&Math.abs(r-i);n=u(e,h.xAxis[0].translate(this.x))+n;s=o(r)&&this.getStackBox(h,this,n,r,t,i,s);t=this.label;i=this.isNegative;n="justify"===u(this.options.overflow,"justify");c=this.textAlign;t&&s&&(e=t.getBBox(),r=t.padding,c="left"===c?h.inverted?-r:r:"right"===c?e.width:h.inverted&&"center"===c?e.width/2:h.inverted?i?e.width+r:-r:e.width/2,i=h.inverted?e.height/2:i?-r:e.height,this.alignOptions.x=u(this.options.x,0),this.alignOptions.y=u(this.options.y,0),s.x-=c,s.y-=i,t.align(this.alignOptions,null,s),h.isInsidePlot(t.alignAttr.x+c-this.alignOptions.x,t.alignAttr.y+i-this.alignOptions.y)?t.show():(t.alignAttr.y=-9999,n=!1),n&&f.prototype.justifyDataLabel.call(this.axis,t,this.alignOptions,t.alignAttr,e,s),t.attr({x:t.alignAttr.x,y:t.alignAttr.y}),u(!n&&this.options.crop,!0)&&((h=h.isInsidePlot(t.x-r+t.width,t.y)&&h.isInsidePlot(t.x+r,t.y))||t.hide()))},n.prototype.getStackBox=function(n,t,i,r,u,f,e){var s=t.axis.reversed,o=n.inverted,h=e.height+e.pos-(o?n.plotLeft:n.plotTop);return t=t.isNegative&&!s||!t.isNegative&&s,{x:o?t?r-e.right:r-f+e.pos-n.plotLeft:i+n.xAxis[0].transB-n.plotLeft,y:o?e.height-i-u:t?h-r-f:h-r,width:o?f:u,height:o?u:f}},n}(),r.prototype.getStacks=function(){var n=this,t=n.inverted;n.yAxis.forEach(function(n){n.stacking&&n.stacking.stacks&&n.hasVisibleSeries&&(n.stacking.oldStacks=n.stacking.stacks)});n.series.forEach(function(i){var r=i.xAxis&&i.xAxis.options||{};i.options.stacking&&(!0===i.visible||!1===n.options.chart.ignoreHiddenSeries)&&(i.stackKey=[i.type,u(i.options.stack,""),t?r.top:r.left,t?r.height:r.width].join())})},i.compose(n),f.prototype.setStackedPoints=function(){if(this.options.stacking&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var tt=this.processedXData,b=this.processedYData,k=[],it=b.length,h=this.options,d=h.threshold,v=u(h.startFromThreshold&&d,0),rt=h.stack;h=h.stacking;var y=this.stackKey,g="-"+y,nt=this.negStacks,f=this.yAxis,i=f.stacking.stacks,p=f.stacking.oldStacks,r,l;for(f.stacking.stacksTouched+=1,l=0;l<it;l++){var t=tt[l],c=b[l],w=this.getStackIndicator(w,t,this.index),a=w.key,n=(r=nt&&c<(v?0:d))?g:y;i[n]||(i[n]={});i[n][t]||(p[n]&&p[n][t]?(i[n][t]=p[n][t],i[n][t].total=null):i[n][t]=new s(f,f.options.stackLabels,r,t,rt));n=i[n][t];null!==c?(n.points[a]=n.points[this.index]=[u(n.cumulative,v)],o(n.cumulative)||(n.base=a),n.touched=f.stacking.stacksTouched,0<w.index&&!1===this.singleStacks&&(n.points[a][0]=n.points[this.index+","+t+",0"][0])):n.points[a]=n.points[this.index]=null;"percent"===h?(r=r?y:g,nt&&i[r]&&i[r][t]?(r=i[r][t],n.total=r.total=Math.max(r.total,n.total)+Math.abs(c)||0):n.total=e(n.total+(Math.abs(c)||0))):n.total=e(n.total+(c||0));n.cumulative=u(n.cumulative,v)+(c||0);null!==c&&(n.points[a].push(n.cumulative),k[l]=n.cumulative)}"percent"===h&&(f.stacking.usePercentage=!0);this.stackedYData=k;f.stacking.oldStacks={}}},f.prototype.modifyStacks=function(){var n=this,i=n.stackKey,r=n.yAxis.stacking.stacks,u=n.processedXData,t,f=n.options.stacking;n[f+"Stacker"]&&[i,"-"+i].forEach(function(i){for(var o=u.length,e,s;o--;)(e=u[o],t=n.getStackIndicator(t,e,n.index,i),s=(e=r[i]&&r[i][e])&&e.points[t.key])&&n[f+"Stacker"](s,e,o)})},f.prototype.percentStacker=function(n,t,i){t=t.total?100/t.total:0;n[0]=e(n[0]*t);n[1]=e(n[1]*t);this.stackedYData[i]=n[1]},f.prototype.getStackIndicator=function(n,t,i,r){return!o(n)||n.x!==t||r&&n.key!==r?n={x:t,index:0,key:r}:n.index++,n.key=[i,t,n.index].join(),n},t.StackItem=s,t.StackItem}),i(t,"parts/Dynamics.js",[t["parts/Globals.js"],t["parts/Point.js"],t["parts/Time.js"],t["parts/Utilities.js"]],function(n,t,i,r){var d=r.addEvent,a=r.animate,v=r.createElement,s=r.css,g=r.defined,y=r.erase,nt=r.error,f=r.extend,e=r.fireEvent,tt=r.isArray,p=r.isNumber,h=r.isObject,it=r.isString,o=r.merge,c=r.objectEach,u=r.pick,rt=r.relativeLength,ut=r.setAnimation,w=r.splat,b=n.Axis,k,l;r=n.Chart;k=n.Series;l=n.seriesTypes;n.cleanRecursively=function(t,i){var r={};return c(t,function(u,f){h(t[f],!0)&&!t.nodeType&&i[f]?(u=n.cleanRecursively(t[f],i[f]),Object.keys(u).length&&(r[f]=u)):(h(t[f])||t[f]!==i[f])&&(r[f]=t[f])}),r};f(r.prototype,{addSeries:function(n,t,i){var f,r=this;return n&&(t=u(t,!0),e(r,"addSeries",{options:n},function(){f=r.initSeries(n);r.isDirtyLegend=!0;r.linkSeries();f.enabledDataSorting&&f.setData(n.data,!1);e(r,"afterAddSeries",{series:f});t&&r.redraw(i)})),f},addAxis:function(n,t,i,r){return this.createAxis(t?"xAxis":"yAxis",{axis:n,redraw:i,animation:r})},addColorAxis:function(n,t,i){return this.createAxis("colorAxis",{axis:n,redraw:t,animation:i})},createAxis:function(t,i){var r=this.options,f="colorAxis"===t,s=i.redraw,h=i.animation,e;return i=o(i.axis,{index:this[t].length,isX:"xAxis"===t}),e=f?new n.ColorAxis(this,i):new b(this,i),r[t]=w(r[t]||{}),r[t].push(i),f&&(this.isDirtyLegend=!0,this.axes.forEach(function(n){n.series=[]}),this.series.forEach(function(n){n.bindAxes();n.isDirtyData=!0})),u(s,!0)&&this.redraw(h),e},showLoading:function(n){var t=this,e=t.options,i=t.loadingDiv,r=e.loading,o=function(){i&&s(i,{left:t.plotLeft+"px",top:t.plotTop+"px",width:t.plotWidth+"px",height:t.plotHeight+"px"})};i||(t.loadingDiv=i=v("div",{className:"highcharts-loading highcharts-loading-hidden"},null,t.container),t.loadingSpan=v("span",{className:"highcharts-loading-inner"},null,i),d(t,"redraw",o));i.className="highcharts-loading";t.loadingSpan.innerHTML=u(n,e.lang.loading,"");t.styledMode||(s(i,f(r.style,{zIndex:10})),s(t.loadingSpan,r.labelStyle),t.loadingShown||(s(i,{opacity:0,display:""}),a(i,{opacity:r.style.opacity||.5},{duration:r.showDuration||0})));t.loadingShown=!0;o()},hideLoading:function(){var t=this.options,n=this.loadingDiv;n&&(n.className="highcharts-loading highcharts-loading-hidden",this.styledMode||a(n,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){s(n,{display:"none"})}}));this.loadingShown=!1},propsRequireDirtyBox:"backgroundColor borderColor borderWidth borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow".split(" "),propsRequireReflow:"margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft".split(" "),propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip".split(" "),collectionsWithUpdate:["xAxis","yAxis","zAxis","series"],update:function(t,r,f,s){var h=this,y={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},l,v,b,k=t.isResponsiveOptions,d=[],a;e(h,"update",{options:t});k||h.setResponsive(!1,!0);t=n.cleanRecursively(t,h.options);o(!0,h.userOptions,t);(l=t.chart)&&(o(!0,h.options.chart,l),"className"in l&&h.setClassName(l.className),"reflow"in l&&h.setReflow(l.reflow),("inverted"in l||"polar"in l||"type"in l)&&(h.propFromSeries(),a=!0),"alignTicks"in l&&(a=!0),c(l,function(n,t){-1!==h.propsRequireUpdateSeries.indexOf("chart."+t)&&(v=!0);-1!==h.propsRequireDirtyBox.indexOf(t)&&(h.isDirtyBox=!0);k||-1===h.propsRequireReflow.indexOf(t)||(b=!0)}),!h.styledMode&&"style"in l&&h.renderer.setStyle(l.style));!h.styledMode&&t.colors&&(this.options.colors=t.colors);t.plotOptions&&o(!0,this.options.plotOptions,t.plotOptions);t.time&&this.time===n.time&&(this.time=new i(t.time));c(t,function(n,t){h[t]&&"function"==typeof h[t].update?h[t].update(n,!1):"function"==typeof h[y[t]]&&h[y[t]](n);"chart"!==t&&-1!==h.propsRequireUpdateSeries.indexOf(t)&&(v=!0)});this.collectionsWithUpdate.forEach(function(n){if(t[n]){if("series"===n){var i=[];h[n].forEach(function(n,t){n.options.isInternal||i.push(u(n.options.index,t))})}w(t[n]).forEach(function(t,r){(r=g(t.id)&&h.get(t.id)||h[n][i?i[r]:r])&&r.coll===n&&(r.update(t,!1),f&&(r.touched=!0));!r&&f&&h.collectionsWithInit[n]&&(h.collectionsWithInit[n][0].apply(h,[t].concat(h.collectionsWithInit[n][1]||[]).concat([!1])).touched=!0)});f&&h[n].forEach(function(n){n.touched||n.options.isInternal?delete n.touched:d.push(n)})}});d.forEach(function(n){n.remove&&n.remove(!1)});a&&h.axes.forEach(function(n){n.update({},!1)});v&&h.getSeriesOrderByLinks().forEach(function(n){n.chart&&n.update({},!1)},this);t.loading&&o(!0,h.options.loading,t.loading);a=l&&l.width;l=l&&l.height;it(l)&&(l=rt(l,a||h.chartWidth));b||p(a)&&a!==h.chartWidth||p(l)&&l!==h.chartHeight?h.setSize(a,l,s):u(r,!0)&&h.redraw(s);e(h,"afterUpdate",{options:t,redraw:r,animation:s})},setSubtitle:function(n,t){this.applyDescription("subtitle",n);this.layOutTitles(t)},setCaption:function(n,t){this.applyDescription("caption",n);this.layOutTitles(t)}});r.prototype.collectionsWithInit={xAxis:[r.prototype.addAxis,[!0]],yAxis:[r.prototype.addAxis,[!1]],series:[r.prototype.addSeries]};f(t.prototype,{update:function(n,t,i,r){function a(){f.applyOptions(n);var r=o&&f.hasDummyGraphic;r=null===f.y?!r:r;o&&r&&(f.graphic=o.destroy(),delete f.hasDummyGraphic);h(n,!0)&&(o&&o.element&&n&&n.marker&&"undefined"!=typeof n.marker.symbol&&(f.graphic=o.destroy()),n&&n.dataLabels&&f.dataLabel&&(f.dataLabel=f.dataLabel.destroy()),f.connector&&(f.connector=f.connector.destroy()));s=f.index;e.updateParallelArrays(f,s);c.data[s]=h(c.data[s],!0)||h(n,!0)?f.options:u(n,c.data[s]);e.isDirty=e.isDirtyData=!0;!e.fixedBox&&e.hasCartesianSeries&&(l.isDirtyBox=!0);"point"===c.legendType&&(l.isDirtyLegend=!0);t&&l.redraw(i)}var f=this,e=f.series,o=f.graphic,s,l=e.chart,c=e.options;t=u(t,!0);!1===r?a():f.firePointEvent("update",{options:n},a)},remove:function(n,t){this.series.removePoint(this.series.data.indexOf(this),n,t)}});f(k.prototype,{addPoint:function(n,t,i,r,f){var y=this.options,c=this.data,w=this.chart,h=this.xAxis,v,l,p,o,a,s;if(h=h&&h.hasNames&&h.names,v=y.data,l=this.xData,t=u(t,!0),o={series:this},this.pointClass.prototype.applyOptions.apply(o,[n]),a=o.x,s=l.length,this.requireSorting&&a<l[s-1])for(p=!0;s&&l[s-1]>a;)s--;this.updateParallelArrays(o,"splice",s,0,0);this.updateParallelArrays(o,s);h&&o.name&&(h[a]=o.name);v.splice(s,0,n);p&&(this.data.splice(s,0,null),this.processData());"point"===y.legendType&&this.generatePoints();i&&(c[0]&&c[0].remove?c[0].remove(!1):(c.shift(),this.updateParallelArrays(o,"shift"),v.shift()));!1!==f&&e(this,"addPoint",{point:o});this.isDirtyData=this.isDirty=!0;t&&w.redraw(r)},removePoint:function(n,t,i){var r=this,e=r.data,f=e[n],o=r.points,s=r.chart,h=function(){o&&o.length===e.length&&o.splice(n,1);e.splice(n,1);r.options.data.splice(n,1);r.updateParallelArrays(f||{series:r},"splice",n,1);f&&f.destroy();r.isDirty=!0;r.isDirtyData=!0;t&&s.redraw()};ut(i,s);t=u(t,!0);f?f.firePointEvent("remove",null,h):h()},remove:function(n,t,i,r){function s(){f.destroy(r);f.remove=null;o.isDirtyLegend=o.isDirtyBox=!0;o.linkSeries();u(n,!0)&&o.redraw(t)}var f=this,o=f.chart;!1!==i?e(f,"remove",null,s):s()},update:function(t,i){var w;t=n.cleanRecursively(t,this.userOptions);e(this,"update",{options:t});var r=this,c=r.chart,a=r.userOptions,y=r.initialType||r.type,s=t.type||a.type||c.options.chart.type,p=!(this.hasDerivedData||t.dataGrouping||s&&s!==this.type||"undefined"!=typeof t.pointStart||t.pointInterval||t.pointIntervalUnit||t.keys),b=l[y].prototype,k,d=["group","markerGroup","dataLabelsGroup","transformGroup"],h=["eventOptions","navigatorSeries","baseSeries"],g=r.finishedAnimating&&{animation:!1},v={};p&&(h.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","_hasPointMarkers","_hasPointLabels","mapMap","mapData","minY","maxY","minX","maxX"),!1!==t.visible&&h.push("area","graph"),r.parallelArrays.forEach(function(n){h.push(n+"Data")}),t.data&&(t.dataSorting&&f(r.options.dataSorting,t.dataSorting),this.setData(t.data,!1)));t=o(a,g,{index:"undefined"==typeof a.index?r.index:a.index,pointStart:u(a.pointStart,r.xData[0])},!p&&{data:r.options.data},t);p&&t.data&&(t.data=r.options.data);h=d.concat(h);h.forEach(function(n){h[n]=r[n];delete r[n]});r.remove(!1,null,!1,!0);for(k in b)r[k]=void 0;l[s||y]?f(r,l[s||y].prototype):nt(17,!0,c,{missingModuleFor:s||y});h.forEach(function(n){r[n]=h[n]});r.init(c,t);p&&this.points&&(w=r.options,!1===w.visible?(v.graphic=1,v.dataLabel=1):r._hasPointLabels||(s=w.marker,b=w.dataLabels,s&&(!1===s.enabled||"symbol"in s)&&(v.graphic=1),b&&!1===b.enabled&&(v.dataLabel=1)),this.points.forEach(function(n){n&&n.series&&(n.resolveColor(),Object.keys(v).length&&n.destroyElements(v),!1===w.showInLegend&&n.legendItem&&c.legend.destroyItem(n))},this));t.zIndex!==a.zIndex&&d.forEach(function(n){r[n]&&r[n].attr({zIndex:t.zIndex})});r.initialType=y;c.linkSeries();e(this,"afterUpdate");u(i,!0)&&c.redraw(p?void 0:!1)},setName:function(n){this.name=this.options.name=this.userOptions.name=n;this.chart.isDirtyLegend=!0}});f(b.prototype,{update:function(n,t){var i=this.chart,r=n&&n.events||{};n=o(this.userOptions,n);i.options[this.coll].indexOf&&(i.options[this.coll][i.options[this.coll].indexOf(this.userOptions)]=n);c(i.options[this.coll].events,function(n,t){"undefined"==typeof r[t]&&(r[t]=void 0)});this.destroy(!0);this.init(i,f(n,{events:r}));i.isDirtyBox=!0;u(t,!0)&&i.redraw()},remove:function(n){for(var t=this.chart,i=this.coll,r=this.series,f=r.length;f--;)r[f]&&r[f].remove(!1);y(t.axes,this);y(t[i],this);tt(t.options[i])?t.options[i].splice(this.options.index,1):delete t.options[i];t[i].forEach(function(n,t){n.options.index=n.userOptions.index=t});this.destroy();t.isDirtyBox=!0;u(n,!0)&&t.redraw()},setTitle:function(n,t){this.update({title:n},t)},setCategories:function(n,t){this.update({categories:n},t)}})}),i(t,"parts/AreaSeries.js",[t["parts/Globals.js"],t["parts/Color.js"],t["mixins/legend-symbol.js"],t["parts/Utilities.js"]],function(n,t,i,r){var e=t.parse,o=r.objectEach,u=r.pick,f;t=r.seriesType;f=n.Series;t("area","line",{softThreshold:!1,threshold:0},{singleStacks:!1,getStackPoints:function(n){var s=[],r=[],y=this.xAxis,f=this.yAxis,e=f.stacking.stacks[this.stackKey],i={},h=this.index,c=f.series,l=c.length,a=u(f.options.reversedStacks,!0)?1:-1,t,v;if(n=n||this.points,this.options.stacking){for(t=0;t<n.length;t++)n[t].leftNull=n[t].rightNull=void 0,i[n[t].x]=n[t];o(e,function(n,t){null!==n.total&&r.push(t)});r.sort(function(n,t){return n-t});v=c.map(function(n){return n.visible});r.forEach(function(n,u){var o=0,c,p;if(i[n]&&!i[n].isNull)s.push(i[n]),[-1,1].forEach(function(f){var y=1===f?"rightNull":"leftNull",o=0,s=e[r[u+f]];if(s)for(t=h;0<=t&&t<l;)c=s.points[t],c||(t===h?i[n][y]=!0:v[t]&&(p=e[n].points[t])&&(o-=p[1]-p[0])),t+=a;i[n][1===f?"rightCliff":"leftCliff"]=o});else{for(t=h;0<=t&&t<l;){if(c=e[n].points[t]){o=c[1];break}t+=a}o=f.translate(o,0,1,0,1);s.push({isNull:!0,plotX:y.translate(n,0,0,0,1),x:n,plotY:o,yBottom:o})}})}return s},getGraphPath:function(n){var o=f.prototype.getGraphPath,i=this.options,e=i.stacking,h=this.yAxis,t,c=[],l=[],p=this.index,w=h.stacking.stacks[this.stackKey],b=i.threshold,a=Math.round(h.getThreshold(i.threshold)),v;for(i=u(i.connectNulls,"percent"===e),v=function(t,i,r){var u=n[t],o,f,s;t=e&&w[u.x].points[p];o=u[r+"Null"]||0;r=u[r+"Cliff"]||0;u=!0;r||o?(f=(o?t[0]:t[1])+r,s=t[0]+r,u=!!o):!e&&n[i]&&n[i].isNull&&(f=s=b);"undefined"!=typeof f&&(l.push({plotX:y,plotY:null===f?a:h.getThreshold(f),isNull:u,isCliff:!0}),c.push({plotX:y,plotY:null===s?a:h.getThreshold(s),doCurve:!1}))},n=n||this.points,e&&(n=this.getStackPoints(n)),t=0;t<n.length;t++){e||(n[t].leftCliff=n[t].rightCliff=n[t].leftNull=n[t].rightNull=void 0);var r=n[t].isNull,y=u(n[t].rectPlotX,n[t].plotX),s=u(n[t].yBottom,a);(!r||i)&&(i||v(t,t-1,"left"),r&&!e&&i||(l.push(n[t]),c.push({x:t,plotX:y,plotY:s})),i||v(t,t+1,"right"))}return t=o.call(this,l,!0,!0),c.reversed=!0,r=o.call(this,c,!0,!0),(s=r[0])&&"M"===s[0]&&(r[0]=["L",s[1],s[2]]),r=t.concat(r),o=o.call(this,l,!1,i),r.xMap=t.xMap,this.areaPath=r,o},drawGraph:function(){this.areaPath=[];f.prototype.drawGraph.apply(this);var n=this,t=this.areaPath,i=this.options,r=[["area","highcharts-area",this.color,i.fillColor]];this.zones.forEach(function(t,u){r.push(["zone-area-"+u,"highcharts-area highcharts-zone-area-"+u+" "+t.className,t.color||n.color,t.fillColor||i.fillColor])});r.forEach(function(r){var s=r[0],f=n[s],h=f?"animate":"attr",o={};f?(f.endX=n.preventGraphAnimation?null:t.xMap,f.animate({d:t})):(o.zIndex=0,f=n[s]=n.chart.renderer.path(t).addClass(r[1]).add(n.group),f.isArea=!0);n.chart.styledMode||(o.fill=u(r[3],e(r[2]).setOpacity(u(i.fillOpacity,.75)).get()));f[h](o);f.startX=t.xMap;f.shiftUnit=i.step?2:1})},drawLegendSymbol:i.drawRectangle});""}),i(t,"parts/SplineSeries.js",[t["parts/Utilities.js"]],function(n){var t=n.pick;n=n.seriesType;n("spline","line",{},{getPointSpline:function(n,i,r){var h=i.plotX||0,u=i.plotY||0,o=n[r-1],s,f;if(r=n[r+1],o&&!o.isNull&&!1!==o.doCurve&&!i.isCliff&&r&&!r.isNull&&!1!==r.doCurve&&!i.isCliff){n=o.plotY||0;s=r.plotX||0;r=r.plotY||0;var c=0,l=(1.5*h+(o.plotX||0))/2.5,e=(1.5*u+n)/2.5;s=(1.5*h+s)/2.5;f=(1.5*u+r)/2.5;s!==l&&(c=(f-e)*(s-h)/(s-l)+u-f);e+=c;f+=c;e>n&&e>u?(e=Math.max(n,u),f=2*u-e):e<n&&e<u&&(e=Math.min(n,u),f=2*u-e);f>r&&f>u?(f=Math.max(r,u),e=2*u-f):f<r&&f<u&&(f=Math.min(r,u),e=2*u-f);i.rightContX=s;i.rightContY=f}return i=["C",t(o.rightContX,o.plotX,0),t(o.rightContY,o.plotY,0),t(l,h,0),t(e,u,0),h,u],o.rightContX=o.rightContY=void 0,i}});""}),i(t,"parts/AreaSplineSeries.js",[t["parts/Globals.js"],t["mixins/legend-symbol.js"],t["parts/Utilities.js"]],function(n,t,i){i=i.seriesType;var r=n.seriesTypes.area.prototype;i("areaspline","spline",n.defaultPlotOptions.area,{getStackPoints:r.getStackPoints,getGraphPath:r.getGraphPath,drawGraph:r.drawGraph,drawLegendSymbol:t.drawRectangle});""}),i(t,"parts/ColumnSeries.js",[t["parts/Globals.js"],t["parts/Color.js"],t["mixins/legend-symbol.js"],t["parts/Utilities.js"]],function(n,t,i,r){"";var h=t.parse,c=r.animObject,o=r.clamp,l=r.defined,a=r.extend,e=r.isNumber,s=r.merge,u=r.pick,f;t=r.seriesType;f=n.Series;t("column","line",{borderRadius:0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},select:{color:"#cccccc",borderColor:"#000000"}},dataLabels:{align:null,verticalAlign:null,y:null},softThreshold:!1,startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:"#ffffff"},{cropShoulder:0,directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){f.prototype.init.apply(this,arguments);var n=this,t=n.chart;t.hasRendered&&t.series.forEach(function(t){t.type===n.type&&(t.isDirty=!0)})},getColumnMetrics:function(){var t=this,i=t.options,n=t.xAxis,c=t.yAxis,r=n.options.reversedStacks,e,o,f;r=n.reversed&&!r||!n.reversed&&r;o={};f=0;!1===i.grouping?f=1:t.chart.series.forEach(function(n){var r=n.yAxis,u=n.options,i;n.type===t.type&&(n.visible||!t.chart.options.chart.ignoreHiddenSeries)&&c.len===r.len&&c.pos===r.pos&&(u.stacking?(e=n.stackKey,"undefined"==typeof o[e]&&(o[e]=f++),i=o[e]):!1!==u.grouping&&(i=f++),n.columnIndex=i)});var s=Math.min(Math.abs(n.transA)*(n.ordinal&&n.ordinal.slope||i.pointRange||n.closestPointRange||n.tickInterval||1),n.len),l=s*i.groupPadding,h=(s-2*l)/(f||1);return i=Math.min(i.maxPointWidth||n.len,u(i.pointWidth,h*(1-2*i.pointPadding))),t.columnMetrics={width:i,offset:(h-i)/2+(l+((t.columnIndex||0)+(r?1:0))*h-s/2)*(r?-1:1)},t.columnMetrics},crispCol:function(n,t,i,r){var e=this.chart,u=this.borderWidth,f=-(u%2?.5:0);return u=u%2?.5:1,e.inverted&&e.renderer.isVML&&(u+=1),this.options.crisp&&(i=Math.round(n+i)+f,n=Math.round(n)+f,i-=n),r=Math.round(t+r)+u,f=.5>=Math.abs(t)&&.5<r,t=Math.round(t)+u,r-=t,f&&r&&(--t,r+=1),{x:n,y:t,width:i,height:r}},translate:function(){var n=this,r=n.chart,c=n.options,a=n.dense=2>n.closestPointRange*n.xAxis.transA;a=n.borderWidth=u(c.borderWidth,a?0:1);var w=n.xAxis,t=n.yAxis,s=c.threshold,h=n.translatedThreshold=t.getThreshold(s),i=u(c.minPointLength,5),b=n.getColumnMetrics(),v=b.width,y=n.barW=Math.max(v,1+2*a),k=n.pointXOffset=b.offset,d=n.dataMin,p=n.dataMax;r.inverted&&(h-=.5);c.pointPadding&&(y=Math.ceil(y));f.prototype.translate.apply(n);n.points.forEach(function(f){var nt=u(f.yBottom,h),c=999+Math.abs(nt),rt=v,ut=f.plotX,it;c=o(f.plotY,-c,t.len+c);var a=f.plotX+k,b=y,tt=Math.min(c,nt),g=Math.max(c,nt)-tt;i&&Math.abs(g)<i&&(g=i,it=!t.reversed&&!f.negative||t.reversed&&f.negative,e(s)&&e(p)&&f.y===s&&p<=s&&(t.min||0)<s&&d!==p&&(it=!it),tt=Math.abs(tt-h)>i?nt-i:h-(it?i:0));l(f.options.pointWidth)&&(rt=b=Math.ceil(f.options.pointWidth),a-=Math.round((rt-v)/2));f.barX=a;f.pointWidth=rt;f.tooltipPos=r.inverted?[t.len+t.pos-r.plotLeft-c,w.len+w.pos-r.plotTop-(ut||0)-k-b/2,g]:[a+b/2,c+t.pos-r.plotTop,g];f.shapeType=n.pointClass.prototype.shapeType||"rect";f.shapeArgs=n.crispCol.apply(n,f.isNull?[a,h,b,0]:[a,tt,b,g])})},getSymbol:n.noop,drawLegendSymbol:i.drawRectangle,drawGraph:function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},pointAttribs:function(n,t){var o=this.options,i=this.pointAttrToOptions||{},f=i.stroke||"borderColor",a=i["stroke-width"]||"borderWidth",e=n&&n.color||this.color,c=n&&n[f]||o[f]||this.color||e,l=n&&n[a]||o[a]||this[a]||0,v,r;return i=n&&n.options.dashStyle||o.dashStyle,v=u(n&&n.opacity,o.opacity,1),n&&this.zones.length&&(r=n.getZone(),e=n.options.color||r&&(r.color||n.nonZonedColor)||this.color,r&&(c=r.borderColor||c,i=r.dashStyle||i,l=r.borderWidth||l)),t&&n&&(n=s(o.states[t],n.options.states&&n.options.states[t]||{}),t=n.brightness,e=n.color||"undefined"!=typeof t&&h(e).brighten(n.brightness).get()||e,c=n[f]||c,l=n[a]||l,i=n.dashStyle||i,v=u(n.opacity,v)),f={fill:e,stroke:c,"stroke-width":l,opacity:v},i&&(f.dashstyle=i),f},drawPoints:function(){var n=this,i=this.chart,t=n.options,f=i.renderer,u=t.animationLimit||250,r;n.points.forEach(function(o){var h=o.graphic,l=!!h,c=h&&i.pointCount<u?"animate":"attr";e(o.plotY)&&null!==o.y?(r=o.shapeArgs,h&&o.hasNewShapeType()&&(h=h.destroy()),n.enabledDataSorting&&(o.startXPos=n.xAxis.reversed?-(r?r.width:0):n.xAxis.width),h||(o.graphic=h=f[o.shapeType](r).add(o.group||n.group))&&n.enabledDataSorting&&i.hasRendered&&i.pointCount<u&&(h.attr({x:o.startXPos}),l=!0,c="animate"),h&&l&&h[c](s(r)),t.borderRadius&&h[c]({r:t.borderRadius}),i.styledMode||h[c](n.pointAttribs(o,o.selected&&"select")).shadow(!1!==o.allowShadow&&t.shadow,null,t.stacking&&!t.borderRadius),h.addClass(o.getClassName(),!0)):h&&(o.graphic=h.destroy())})},animate:function(n){var t=this,i=this.yAxis,s=t.options,f=this.chart.inverted,r={},e=f?"translateX":"translateY",u;n?(r.scaleY=.001,n=o(i.toPixels(s.threshold),i.pos,i.pos+i.len),f?r.translateX=n-i.len:r.translateY=n,t.clipBox&&t.setClip(),t.group.attr(r)):(u=t.group.attr(e),t.group.animate({scaleY:1},a(c(t.options.animation),{step:function(n,f){t.group&&(r[e]=u+f.pos*(i.pos-u),t.group.attr(r))}})))},remove:function(){var n=this,t=n.chart;t.hasRendered&&t.series.forEach(function(t){t.type===n.type&&(t.isDirty=!0)});f.prototype.remove.apply(n,arguments)}});""}),i(t,"parts/BarSeries.js",[t["parts/Utilities.js"]],function(n){n=n.seriesType;n("bar","column",null,{inverted:!0});""}),i(t,"parts/ScatterSeries.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var r=t.addEvent,i;t=t.seriesType;i=n.Series;t("scatter","line",{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">●<\/span> <span style="font-size: 10px"> {series.name}<\/span><br/>',pointFormat:"x: <b>{point.x}<\/b><br/>y: <b>{point.y}<\/b><br/>"}},{sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,drawGraph:function(){this.options.lineWidth&&i.prototype.drawGraph.call(this)},applyJitter:function(){var t=this,n=this.options.jitter,i=this.points.length;n&&this.points.forEach(function(r,u){["x","y"].forEach(function(f,e){var s="plot"+f.toUpperCase(),o,h,c;n[f]&&!r.isNull&&(o=t[f+"Axis"],h=n[f]*o.transA,o&&!o.isLog&&(c=Math.max(0,r[s]-h),o=Math.min(o.len,r[s]+h),e=1e4*Math.sin(u+e*i),r[s]=c+(o-c)*(e-Math.floor(e)),"x"===f&&(r.clientX=r.plotX)))})})}});r(i,"afterTranslate",function(){this.applyJitter&&this.applyJitter()});""}),i(t,"mixins/centered-series.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var r=t.isNumber,i=t.pick,f=t.relativeLength,u=n.deg2rad;n.CenteredSeriesMixin={getCenter:function(){var n=this.options,u=this.chart,o=2*(n.slicedOffset||0),s=u.plotWidth-2*o,h=u.plotHeight-2*o,t=n.center,c=Math.min(s,h),r=n.size,e=n.innerSize||0;for("string"==typeof r&&(r=parseFloat(r)),"string"==typeof e&&(e=parseFloat(e)),n=[i(t[0],"50%"),i(t[1],"50%"),i(r&&0>r?void 0:n.size,"100%"),i(e&&0>e?void 0:n.innerSize||0,"0%")],u.angular&&(n[3]=0),t=0;4>t;++t)r=n[t],u=2>t||2===t&&/%$/.test(r),n[t]=f(r,[s,h,c,n[2]][t])+(u?o:0);return n[3]>n[2]&&(n[3]=n[2]),n},getStartAndEndRadians:function(n,t){return n=r(n)?n:0,t=r(t)&&t>n&&360>t-n?t:n+360,{start:u*(n+-90),end:u*(t+-90)}}}}),i(t,"parts/PieSeries.js",[t["parts/Globals.js"],t["mixins/legend-symbol.js"],t["parts/Point.js"],t["parts/Utilities.js"]],function(n,t,i,r){var f=r.addEvent,h=r.clamp,c=r.defined,l=r.fireEvent,a=r.isNumber,e=r.merge,u=r.pick,o=r.relativeLength,v=r.seriesType,y=r.setAnimation;r=n.CenteredSeriesMixin;var p=r.getStartAndEndRadians,s=n.noop,w=n.Series;v("pie","line",{center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{allowOverlap:!0,connectorPadding:5,connectorShape:"fixedOffset",crookDistance:"70%",distance:30,enabled:!0,formatter:function(){if(!this.point.isNull)return this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}},{isCartesian:!1,requireSorting:!1,directTouch:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttribs:n.seriesTypes.column.prototype.pointAttribs,animate:function(n){var t=this,r=t.points,i=t.startAngleRad;n||r.forEach(function(n){var f=n.graphic,r=n.shapeArgs;f&&r&&(f.attr({r:u(n.startR,t.center&&t.center[3]/2),start:i,end:i}),f.animate({r:r.r,start:r.start,end:r.end},t.options.animation))})},hasData:function(){return!!this.processedXData.length},updateTotals:function(){for(var i=0,r=this.points,u=r.length,f=this.options.ignoreHiddenPoint,n,t=0;t<u;t++)n=r[t],i+=f&&!n.visible?0:n.isNull?0:n.y;for(this.total=i,t=0;t<u;t++)n=r[t],n.percentage=0<i&&(n.visible||!f)?n.y/i*100:0,n.total=i},generatePoints:function(){w.prototype.generatePoints.call(this);this.updateTotals()},getX:function(n,t,i){var r=this.center,u=this.radii?this.radii[i.index]:r[2]/2;return n=Math.asin(h((n-r[1])/(u+i.labelDistance),-1,1)),r[0]+(t?-1:1)*Math.cos(n)*(u+i.labelDistance)+(0<i.labelDistance?(t?-1:1)*this.options.dataLabels.padding:0)},translate:function(n){var w,b,c,k,t,f,i,s,h;this.generatePoints();var a=0,r=this.options,v=r.slicedOffset,d=v+(r.borderWidth||0),e=p(r.startAngle,r.endAngle),y=this.startAngleRad=e.start;for(e=(this.endAngleRad=e.end)-y,w=this.points,b=r.dataLabels.distance,r=r.ignoreHiddenPoint,k=w.length,n||(this.center=n=this.getCenter()),c=0;c<k;c++)t=w[c],f=y+a*e,(!r||t.visible)&&(a+=t.percentage/100),i=y+a*e,t.shapeType="arc",t.shapeArgs={x:n[0],y:n[1],r:n[2]/2,innerR:n[3]/2,start:Math.round(1e3*f)/1e3,end:Math.round(1e3*i)/1e3},t.labelDistance=u(t.options.dataLabels&&t.options.dataLabels.distance,b),t.labelDistance=o(t.labelDistance,t.shapeArgs.r),this.maxLabelDistance=Math.max(this.maxLabelDistance||0,t.labelDistance),i=(i+f)/2,i>1.5*Math.PI?i-=2*Math.PI:i<-Math.PI/2&&(i+=2*Math.PI),t.slicedTranslation={translateX:Math.round(Math.cos(i)*v),translateY:Math.round(Math.sin(i)*v)},s=Math.cos(i)*n[2]/2,h=Math.sin(i)*n[2]/2,t.tooltipPos=[n[0]+.7*s,n[1]+.7*h],t.half=i<-Math.PI/2||i>Math.PI/2?1:0,t.angle=i,f=Math.min(d,t.labelDistance/5),t.labelPosition={natural:{x:n[0]+s+Math.cos(i)*t.labelDistance,y:n[1]+h+Math.sin(i)*t.labelDistance},final:{},alignment:0>t.labelDistance?"center":t.half?"right":"left",connectorPosition:{breakAt:{x:n[0]+s+Math.cos(i)*f,y:n[1]+h+Math.sin(i)*f},touchingSliceAt:{x:n[0]+s,y:n[1]+h}}};l(this,"afterTranslate")},drawEmpty:function(){var n=this.options,t,i;0===this.total?(t=this.center[0],i=this.center[1],this.graph||(this.graph=this.chart.renderer.circle(t,i,0).addClass("highcharts-graph").add(this.group)),this.graph.animate({"stroke-width":n.borderWidth,cx:t,cy:i,r:this.center[2]/2,fill:n.fillColor||"none",stroke:n.color||"#cccccc"},this.options.animation)):this.graph&&(this.graph=this.graph.destroy())},redrawPoints:function(){var n=this,i=n.chart,s=i.renderer,r,t,u,f,o=n.options.shadow;this.drawEmpty();!o||n.shadowGroup||i.styledMode||(n.shadowGroup=s.g("shadow").attr({zIndex:-1}).add(n.group));n.points.forEach(function(h){var l={},c;t=h.graphic;!h.isNull&&t?(f=h.shapeArgs,r=h.getTranslate(),i.styledMode||(c=h.shadowGroup,o&&!c&&(c=h.shadowGroup=s.g("shadow").add(n.shadowGroup)),c&&c.attr(r),u=n.pointAttribs(h,h.selected&&"select")),h.delayedRendering?(t.setRadialReference(n.center).attr(f).attr(r),i.styledMode||t.attr(u).attr({"stroke-linejoin":"round"}).shadow(o,c),h.delayedRendering=!1):(t.setRadialReference(n.center),i.styledMode||e(!0,l,u),e(!0,l,f,r),t.animate(l)),t.attr({visibility:h.visible?"inherit":"hidden"}),t.addClass(h.getClassName())):t&&(h.graphic=t.destroy())})},drawPoints:function(){var n=this.chart.renderer;this.points.forEach(function(t){t.graphic&&t.hasNewShapeType()&&(t.graphic=t.graphic.destroy());t.graphic||(t.graphic=n[t.shapeType](t.shapeArgs).add(t.series.group),t.delayedRendering=!0)})},searchPoint:s,sortByAngle:function(n,t){n.sort(function(n,i){return"undefined"!=typeof n.angle&&(i.angle-n.angle)*t})},drawLegendSymbol:t.drawRectangle,getCenter:r.getCenter,getSymbol:s,drawGraph:null},{init:function(){var n,t;return i.prototype.init.apply(this,arguments),n=this,n.name=u(n.name,"Slice"),t=function(t){n.slice("select"===t.type)},f(n,"select",t),f(n,"unselect",t),n},isValid:function(){return a(this.y)&&0<=this.y},setVisible:function(n,t){var i=this,r=i.series,f=r.chart,e=r.options.ignoreHiddenPoint;t=u(t,e);n!==i.visible&&(i.visible=i.options.visible=n="undefined"==typeof n?!i.visible:n,r.options.data[r.data.indexOf(i)]=i.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(t){i[t]&&i[t][n?"show":"hide"](!0)}),i.legendItem&&f.legend.colorizeItem(i,n),n||"hover"!==i.state||i.setState(""),e&&(r.isDirty=!0),t&&f.redraw())},slice:function(n,t,i){var r=this.series;y(i,r.chart);u(t,!0);this.sliced=this.options.sliced=c(n)?n:!this.sliced;r.options.data[r.data.indexOf(this)]=this.options;this.graphic&&this.graphic.animate(this.getTranslate());this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())},getTranslate:function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}},haloPath:function(n){var t=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(t.x,t.y,t.r+n,t.r+n,{innerR:t.r-1,start:t.start,end:t.end})},connectorShapes:{fixedOffset:function(n,t,i){var r=t.breakAt;return t=t.touchingSliceAt,[["M",n.x,n.y],i.softConnector?["C",n.x+("left"===n.alignment?-5:5),n.y,2*r.x-t.x,2*r.y-t.y,r.x,r.y]:["L",r.x,r.y],["L",t.x,t.y]]},straight:function(n,t){return t=t.touchingSliceAt,[["M",n.x,n.y],["L",t.x,t.y]]},crookedLine:function(n,t,i){var e;t=t.touchingSliceAt;var u=this.series,f=u.center[0],r=u.chart.plotWidth,s=u.chart.plotLeft;return u=n.alignment,e=this.shapeArgs.r,i=o(i.crookDistance,1),r="left"===u?f+e+(r+s-f-e)*(1-i):s+(f-e)*i,i=["L",r,n.y],f=!0,("left"===u?r>n.x||r<t.x:r<n.x||r>t.x)&&(f=!1),n=[["M",n.x,n.y]],f&&n.push(i),n.push(["L",t.x,t.y]),n}},getConnectorPath:function(){var n=this.labelPosition,i=this.series.options.dataLabels,t=i.connectorShape,r=this.connectorShapes;return r[t]&&(t=r[t]),t.call(this,{x:n.final.x,y:n.final.y,alignment:n.alignment},n.connectorPosition,i)}});""}),i(t,"parts/DataLabels.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var a=t.animObject,v=t.arrayMax,s=t.clamp,u=t.defined,c=t.extend,l=t.fireEvent,y=t.format,f=t.isArray,o=t.merge,p=t.objectEach,i=t.pick,w=t.relativeLength,b=t.splat,h=t.stableSort,e,r;t=n.noop;e=n.Series;r=n.seriesTypes;n.distribute=function(t,r,u){function l(n,t){return n.target-t.target}for(var o=!0,e=t,a=[],c=0,v=e.reducedLen||r,f=t.length;f--;)c+=t[f].size;if(c>v){for(h(t,function(n,t){return(t.rank||0)-(n.rank||0)}),c=f=0;c<=v;)c+=t[f].size,f++;a=t.splice(f-1,t.length)}for(h(t,l),t=t.map(function(n){return{size:n.size,targets:[n.target],align:i(n.align,.5)}});o;){for(f=t.length;f--;)o=t[f],c=(Math.min.apply(0,o.targets)+Math.max.apply(0,o.targets))/2,o.pos=s(c-o.size*o.align,0,r-o.size);for(f=t.length,o=!1;f--;)0<f&&t[f-1].pos+t[f-1].size>t[f].pos&&(t[f-1].size+=t[f].size,t[f-1].targets=t[f-1].targets.concat(t[f].targets),t[f-1].align=.5,t[f-1].pos+t[f-1].size>r&&(t[f-1].pos=r-t[f-1].size),t.splice(f,1),o=!0)}e.push.apply(e,a);f=0;t.some(function(t){var i=0;if(t.targets.some(function(){if(e[f].pos=t.pos+i,"undefined"!=typeof u&&Math.abs(e[f].pos-e[f].target)>u)return e.slice(0,f+1).forEach(function(n){delete n.pos}),e.reducedLen=(e.reducedLen||r)-.1*r,e.reducedLen>.1*r&&n.distribute(e,r,u),!0;i+=e[f].size;f++}))return!0});h(e,l)};e.prototype.drawDataLabels=function(){function nt(n,t){var i=t.filter;return i?(t=i.operator,n=n[i.property],i=i.value,">"===t&&n>i||"<"===t&&n<i||">="===t&&n>=i||"<="===t&&n<=i||"=="===t&&n==i||"==="===t&&n===i?!0:!1):!0}function h(n,t){var i=[],r;if(f(n)&&!f(t))i=n.map(function(n){return o(n,t)});else if(f(t)&&!f(n))i=t.map(function(t){return o(n,t)});else if(f(n)||f(t))for(r=Math.max(n.length,t.length);r--;)i[r]=o(n[r],t[r]);else i=o(n,t);return i}var n=this,t=n.chart,e=n.options,r=e.dataLabels,tt=n.points,k,c=n.hasRendered||0,d=a(e.animation).duration,v=Math.min(d,200),g=!t.renderer.forExport&&i(r.defer,0<v),w=t.renderer,s;r=h(h(t.options.plotOptions&&t.options.plotOptions.series&&t.options.plotOptions.series.dataLabels,t.options.plotOptions&&t.options.plotOptions[n.type]&&t.options.plotOptions[n.type].dataLabels),r);l(this,"drawDataLabels");(f(r)||r.enabled||n._hasPointLabels)&&(s=n.plotGroup("dataLabelsGroup","data-labels",g&&!c?"hidden":"inherit",r.zIndex||6),g&&(s.attr({opacity:+c}),c||setTimeout(function(){var t=n.dataLabelsGroup;t&&(n.visible&&s.show(!0),t[e.animation?"animate":"attr"]({opacity:1},{duration:v}))},d-v)),tt.forEach(function(f){k=b(h(r,f.dlOptions||f.options&&f.options.dataLabels));k.forEach(function(r,o){var v=r.enabled&&(!f.isNull||f.dataLabelOnNull)&&nt(f,r),h=f.dataLabels?f.dataLabels[o]:f.dataLabel,d=f.connectors?f.connectors[o]:f.connector,k=i(r.distance,f.labelDistance),g=!h,l,c,b,a;v&&(l=f.getLabelConfig(),c=i(r[f.formatPrefix+"Format"],r.format),l=u(c)?y(c,l,t):(r[f.formatPrefix+"Formatter"]||r.formatter).call(l,r),c=r.style,b=r.rotation,t.styledMode||(c.color=i(r.color,c.color,n.color,"#000000"),"contrast"===c.color?(f.contrastColor=w.getContrast(f.color||n.color),c.color=!u(k)&&r.inside||0>k||e.stacking?f.contrastColor:"#000000"):delete f.contrastColor,e.cursor&&(c.cursor=e.cursor)),a={r:r.borderRadius||0,rotation:b,padding:r.padding,zIndex:1},t.styledMode||(a.fill=r.backgroundColor,a.stroke=r.borderColor,a["stroke-width"]=r.borderWidth),p(a,function(n,t){"undefined"==typeof n&&delete a[t]}));!h||v&&u(l)?v&&u(l)&&(h?a.text=l:(f.dataLabels=f.dataLabels||[],h=f.dataLabels[o]=b?w.text(l,0,-9999,r.useHTML).addClass("highcharts-data-label"):w.label(l,0,-9999,r.shape,null,null,r.useHTML,null,"data-label"),o||(f.dataLabel=h),h.addClass(" highcharts-data-label-color-"+f.colorIndex+" "+(r.className||"")+(r.useHTML?" highcharts-tracker":""))),h.options=r,h.attr(a),t.styledMode||h.css(c).shadow(r.shadow),h.added||h.add(s),r.textPath&&!r.useHTML&&(h.setTextPath(f.getDataLabelPath&&f.getDataLabelPath(h)||f.graphic,r.textPath),f.dataLabelPath&&!r.textPath.enabled&&(f.dataLabelPath=f.dataLabelPath.destroy())),n.alignDataLabel(f,h,r,null,g)):(f.dataLabel=f.dataLabel&&f.dataLabel.destroy(),f.dataLabels&&(1===f.dataLabels.length?delete f.dataLabels:delete f.dataLabels[o]),o||delete f.dataLabel,d&&(f.connector=f.connector.destroy(),f.connectors&&(1===f.connectors.length?delete f.connectors:delete f.connectors[o])))})}));l(this,"afterDrawDataLabels")};e.prototype.alignDataLabel=function(n,t,r,u,f){var k=this,o=this.chart,l=this.isCartesian&&o.inverted,a=this.enabledDataSorting,e=i(n.dlBox&&n.dlBox.centerX,n.plotX,-9999),w=i(n.plotY,-9999),s=t.getBBox(),y=r.rotation,p=r.align,d=o.isInsidePlot(e,Math.round(w),l),v="justify"===i(r.overflow,a?"none":"justify"),b=this.visible&&!1!==n.visible&&(n.series.forceDL||a&&!v||d||r.inside&&u&&o.isInsidePlot(e,l?u.x+1:u.y+u.height-1,l)),h=function(i){a&&k.xAxis&&!v&&k.setDataLabelStartPos(n,t,f,d,i)},g;b&&(g=o.renderer.fontMetrics(o.styledMode?void 0:r.style.fontSize,t).b,u=c({x:l?this.yAxis.len-w:e,y:Math.round(l?this.xAxis.len-e:w),width:0,height:0},u),c(r,{width:s.width,height:s.height}),y?(v=!1,e=o.renderer.rotCorr(g,y),e={x:u.x+r.x+u.width/2+e.x,y:u.y+r.y+{top:0,middle:.5,bottom:1}[r.verticalAlign]*u.height},h(e),t[f?"attr":"animate"](e).attr({align:p}),h=(y+720)%360,h=180<h&&360>h,"left"===p?e.y-=h?s.height:0:"center"===p?(e.x-=s.width/2,e.y-=s.height/2):"right"===p&&(e.x-=s.width,e.y-=h?0:s.height),t.placed=!0,t.alignAttr=e):(h(u),t.align(r,null,u),e=t.alignAttr),v&&0<=u.height?this.justifyDataLabel(t,r,e,s,u,f):i(r.crop,!0)&&(b=o.isInsidePlot(e.x,e.y)&&o.isInsidePlot(e.x+s.width,e.y+s.height)),r.shape&&!y&&t[f?"attr":"animate"]({anchorX:l?o.plotWidth-n.plotY:n.plotX,anchorY:l?o.plotHeight-n.plotX:n.plotY}));f&&a&&(t.placed=!1);b||a&&!v||(t.hide(!0),t.placed=!1)};e.prototype.setDataLabelStartPos=function(n,t,i,r,u){var s=this.chart,o=s.inverted,f=this.xAxis,h=f.reversed,e=o?t.height/2:t.width/2;n=(n=n.pointWidth)?n/2:0;f=o?u.x:h?-e-n:f.width-e+n;u=o?h?this.yAxis.height-e+n:-e-n:u.y;t.startXPos=f;t.startYPos=u;r?"hidden"===t.visibility&&(t.show(),t.attr({opacity:0}).animate({opacity:1})):t.attr({opacity:1}).animate({opacity:0},void 0,t.hide);s.hasRendered&&(i&&t.attr({x:t.startXPos,y:t.startYPos}),t.placed=!0)};e.prototype.justifyDataLabel=function(n,t,i,r,u,f){var s=this.chart,c=t.align,l=t.verticalAlign,h=n.box?0:n.padding||0,e=i.x+h,o;return 0>e&&("right"===c?(t.align="left",t.inside=!0):t.x=-e,o=!0),e=i.x+r.width-h,e>s.plotWidth&&("left"===c?(t.align="right",t.inside=!0):t.x=s.plotWidth-e,o=!0),e=i.y+h,0>e&&("bottom"===l?(t.verticalAlign="top",t.inside=!0):t.y=-e,o=!0),e=i.y+r.height-h,e>s.plotHeight&&("top"===l?(t.verticalAlign="bottom",t.inside=!0):t.y=s.plotHeight-e,o=!0),o&&(n.placed=!f,n.align(t,null,u)),o};r.pie&&(r.pie.prototype.dataLabelPositioners={radialDistributionY:function(n){return n.top+n.distributeBox.pos},radialDistributionX:function(n,t,i,r){return n.getX(i<t.top+2||i>t.bottom-2?r:i,t.half,t)},justify:function(n,t,i){return i[0]+(n.half?-1:1)*(t+n.labelDistance)},alignToPlotEdges:function(n,t,i,r){return n=n.getBBox().width,t?n+r:i-n-r},alignToConnectors:function(n,t,i,r){var u=0,f;return n.forEach(function(n){f=n.dataLabel.getBBox().width;f>u&&(u=f)}),t?u+r:i-u-r}},r.pie.prototype.drawDataLabels=function(){var t=this,et=t.data,r,a=t.chart,h=t.options.dataLabels||{},p=h.connectorPadding,ot,it=a.plotWidth,st=a.plotHeight,ht=a.plotLeft,ct=Math.round(a.chartWidth/3),y,ft=t.center,k=ft[2]/2,rt=ft[1],c,d,w,g,lt=[[],[]],f,l,nt,ut,s=[0,0,0,0],tt=t.dataLabelPositioners,b;t.visible&&(h.enabled||t._hasPointLabels)&&(et.forEach(function(n){n.dataLabel&&n.visible&&n.dataLabel.shortened&&(n.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),n.dataLabel.shortened=!1)}),e.prototype.drawDataLabels.apply(t),et.forEach(function(n){n.dataLabel&&(n.visible?(lt[n.half].push(n),n.dataLabel._pos=null,!u(h.style.width)&&!u(n.options.dataLabels&&n.options.dataLabels.style&&n.options.dataLabels.style.width)&&n.dataLabel.getBBox().width>ct&&(n.dataLabel.css({width:Math.round(.7*ct)+"px"}),n.dataLabel.shortened=!0)):(n.dataLabel=n.dataLabel.destroy(),n.dataLabels&&1===n.dataLabels.length&&delete n.dataLabels))}),lt.forEach(function(e,o){var ot=e.length,et=[],y,v,ct;if(ot)for(t.sortByAngle(e,o-.5),0<t.maxLabelDistance&&(v=Math.max(0,rt-k-t.maxLabelDistance),ct=Math.min(rt+k+t.maxLabelDistance,a.plotHeight),e.forEach(function(n){0<n.labelDistance&&n.dataLabel&&(n.top=Math.max(0,rt-k-n.labelDistance),n.bottom=Math.min(rt+k+n.labelDistance,a.plotHeight),y=n.dataLabel.getBBox().height||21,n.distributeBox={target:n.labelPosition.natural.y-n.top+y/2,size:y,rank:n.y},et.push(n.distributeBox))}),v=ct+y-v,n.distribute(et,v,v/5)),ut=0;ut<ot;ut++){if(r=e[ut],w=r.labelPosition,c=r.dataLabel,nt=!1===r.visible?"hidden":"inherit",l=v=w.natural.y,et&&u(r.distributeBox)&&("undefined"==typeof r.distributeBox.pos?nt="hidden":(g=r.distributeBox.size,l=tt.radialDistributionY(r))),delete r.positionIndex,h.justify)f=tt.justify(r,k,ft);else switch(h.alignTo){case"connectors":f=tt.alignToConnectors(e,o,it,ht);break;case"plotEdges":f=tt.alignToPlotEdges(c,o,it,ht);break;default:f=tt.radialDistributionX(t,r,l,v)}c._attr={visibility:nt,align:w.alignment};b=r.options.dataLabels||{};c._pos={x:f+i(b.x,h.x)+({left:p,right:-p}[w.alignment]||0),y:l+i(b.y,h.y)-10};w.final.x=f;w.final.y=l;i(h.crop,!0)&&(d=c.getBBox().width,v=null,f-d<p&&1===o?(v=Math.round(d-f+p),s[3]=Math.max(v,s[3])):f+d>it-p&&0===o&&(v=Math.round(f+d-it+p),s[1]=Math.max(v,s[1])),0>l-g/2?s[0]=Math.max(Math.round(-l+g/2),s[0]):l+g/2>st&&(s[2]=Math.max(Math.round(l+g/2-st),s[2])),c.sideOverflow=v)}}),0===v(s)||this.verifyDataLabelOverflow(s))&&(this.placeDataLabels(),this.points.forEach(function(n){if(b=o(h,n.options.dataLabels),ot=i(b.connectorWidth,1)){var r;y=n.connector;(c=n.dataLabel)&&c._pos&&n.visible&&0<n.labelDistance?(nt=c._attr.visibility,(r=!y)&&(n.connector=y=a.renderer.path().addClass("highcharts-data-label-connector  highcharts-color-"+n.colorIndex+(n.className?" "+n.className:"")).add(t.dataLabelsGroup),a.styledMode||y.attr({"stroke-width":ot,stroke:b.connectorColor||n.color||"#666666"})),y[r?"attr":"animate"]({d:n.getConnectorPath()}),y.attr("visibility",nt)):y&&(n.connector=y.destroy())}}))},r.pie.prototype.placeDataLabels=function(){this.points.forEach(function(n){var t=n.dataLabel,i;t&&n.visible&&((i=t._pos)?(t.sideOverflow&&(t._attr.width=Math.max(t.getBBox().width-t.sideOverflow,0),t.css({width:t._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),t.shortened=!0),t.attr(t._attr),t[t.moved?"animate":"attr"](i),t.moved=!0):t&&t.attr({y:-9999}));delete n.distributeBox},this)},r.pie.prototype.alignDataLabel=t,r.pie.prototype.verifyDataLabelOverflow=function(n){var t=this.center,r=this.options,e=r.center,u=r.minSize||80,f=null!==r.size,i;return f||(null!==e[0]?i=Math.max(t[2]-Math.max(n[1],n[3]),u):(i=Math.max(t[2]-n[1]-n[3],u),t[0]+=(n[3]-n[1])/2),null!==e[1]?i=s(i,u,t[2]-Math.max(n[0],n[2])):(i=s(i,u,t[2]-n[0]-n[2]),t[1]+=(n[0]-n[2])/2),i<t[2]?(t[2]=i,t[3]=Math.min(w(r.innerSize||0,i),i),this.translate(t),this.drawDataLabels&&this.drawDataLabels()):f=!0),f});r.column&&(r.column.prototype.alignDataLabel=function(n,t,r,u,f){var h=this.chart.inverted,c=n.series,s=n.dlBox||n.shapeArgs,l=i(n.below,n.plotY>i(this.translatedThreshold,c.yAxis.len)),a=i(r.inside,!!this.options.stacking);s&&(u=o(s),0>u.y&&(u.height+=u.y,u.y=0),s=u.y+u.height-c.yAxis.len,0<s&&s<u.height&&(u.height-=s),h&&(u={x:c.yAxis.len-u.y-u.height,y:c.xAxis.len-u.x-u.width,width:u.height,height:u.width}),a||(h?(u.x+=l?0:u.width,u.width=0):(u.y+=l?u.height:0,u.height=0)));r.align=i(r.align,!h||a?"center":l?"right":"left");r.verticalAlign=i(r.verticalAlign,h||a?"middle":l?"top":"bottom");e.prototype.alignDataLabel.call(this,n,t,r,u,f);r.inside&&n.contrastColor&&t.css({color:n.contrastColor})})}),i(t,"modules/overlapping-datalabels.src.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var u=t.addEvent,i=t.fireEvent,f=t.isArray,r=t.objectEach,e=t.pick;n=n.Chart;u(n,"render",function(){var n=[];(this.labelCollectors||[]).forEach(function(t){n=n.concat(t())});(this.yAxis||[]).forEach(function(t){t.stacking&&t.options.stackLabels&&!t.options.stackLabels.allowOverlap&&r(t.stacking.stacks,function(t){r(t,function(t){n.push(t.label)})})});(this.series||[]).forEach(function(t){var i=t.options.dataLabels;t.visible&&(!1!==i.enabled||t._hasPointLabels)&&(t.nodes||t.points).forEach(function(t){t.visible&&(f(t.dataLabels)?t.dataLabels:t.dataLabel?[t.dataLabel]:[]).forEach(function(i){var r=i.options;i.labelrank=e(r.labelrank,t.labelrank,t.shapeArgs&&t.shapeArgs.height);r.allowOverlap||n.push(i)})})});this.hideOverlappingLabels(n)});n.prototype.hideOverlappingLabels=function(n){for(var s=this,h=n.length,l=s.renderer,t,o,c=!1,e=function(n){var t,i=n.box?0:n.padding||0,r=t=0,e,u,f,o;if(n&&(!n.alignAttr||n.placed))return u=n.alignAttr||{x:n.attr("x"),y:n.attr("y")},f=n.parentGroup,n.width||(t=n.getBBox(),n.width=t.width,n.height=t.height,t=l.fontMetrics(null,n.element).h),o=n.width-2*i,(e={left:"0",center:"0.5",right:"1"}[n.alignValue])?r=+e*o:Math.round(n.x)!==n.translateX&&(r=n.x-n.translateX),{x:u.x+(f.translateX||0)+i-r,y:u.y+(f.translateY||0)+i-t,width:n.width-2*i,height:n.height-2*i}},u,f,r=0;r<h;r++)(t=n[r])&&(t.oldOpacity=t.opacity,t.newOpacity=1,t.absoluteBox=e(t));for(n.sort(function(n,t){return(t.labelrank||0)-(n.labelrank||0)}),r=0;r<h;r++)for(u=(e=n[r])&&e.absoluteBox,t=r+1;t<h;++t)f=(o=n[t])&&o.absoluteBox,!u||!f||e===o||0===e.newOpacity||0===o.newOpacity||f.x>u.x+u.width||f.x+f.width<u.x||f.y>u.y+u.height||f.y+f.height<u.y||((e.labelrank<o.labelrank?e:o).newOpacity=0);n.forEach(function(n){if(n){var t=n.newOpacity;n.oldOpacity!==t&&(n.alignAttr&&n.placed?(n[t?"removeClass":"addClass"]("highcharts-data-label-hidden"),c=!0,n.alignAttr.opacity=t,n[n.isOld?"animate":"attr"](n.alignAttr,null,function(){s.styledMode||n.css({pointerEvents:t?"auto":"none"});n.visibility=t?"inherit":"hidden";n.placed=!!t}),i(s,"afterHideOverlappingLabel")):n.attr({opacity:t}));n.isOld=!0}});c&&i(s,"afterHideAllOverlappingLabels")}}),i(t,"parts/Interaction.js",[t["parts/Globals.js"],t["parts/Legend.js"],t["parts/Point.js"],t["parts/Utilities.js"]],function(n,t,i,r){var h=r.addEvent,y=r.createElement,c=r.css,p=r.defined,o=r.extend,u=r.fireEvent,w=r.isArray,b=r.isFunction,l=r.isNumber,k=r.isObject,a=r.merge,d=r.objectEach,f=r.pick;r=n.Chart;var g=n.defaultOptions,nt=n.defaultPlotOptions,v=n.hasTouch,tt=n.Series,e=n.seriesTypes,it=n.svg,s=n.TrackerMixin={drawTrackerPoint:function(){var n=this,i=n.chart,t=i.pointer,r=function(n){var i=t.getPointFromEvent(n);"undefined"!=typeof i&&(t.isDirectTouch=!0,i.onMouseOver(n))},f;n.points.forEach(function(n){f=w(n.dataLabels)?n.dataLabels:n.dataLabel?[n.dataLabel]:[];n.graphic&&(n.graphic.element.point=n);f.forEach(function(t){t.div?t.div.point=n:t.element.point=n})});n._hasTracking||(n.trackerGroups.forEach(function(u){if(n[u]){n[u].addClass("highcharts-tracker").on("mouseover",r).on("mouseout",function(n){t.onTrackerMouseOut(n)});if(v)n[u].on("touchstart",r);!i.styledMode&&n.options.cursor&&n[u].css(c).css({cursor:n.options.cursor})}}),n._hasTracking=!0);u(this,"afterDrawTracker")},drawTrackerGraph:function(){var n=this,r=n.options,i=r.trackByArea,f=[].concat(i?n.areaPath:n.graphPath),t=n.chart,h=t.pointer,c=t.renderer,l=t.options.tooltip.snap,e=n.tracker,o=function(){t.hoverSeries!==n&&n.onMouseOver()},s="rgba(192,192,192,"+(it?.0001:.002)+")";e?e.attr({d:f}):n.graph&&(n.tracker=c.path(f).attr({visibility:n.visible?"visible":"hidden",zIndex:2}).addClass(i?"highcharts-tracker-area":"highcharts-tracker-line").add(n.group),t.styledMode||n.tracker.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:s,fill:i?s:"none","stroke-width":n.graph.strokeWidth()+(i?0:2*l)}),[n.tracker,n.markerGroup].forEach(function(n){n.addClass("highcharts-tracker").on("mouseover",o).on("mouseout",function(n){h.onTrackerMouseOut(n)});if(r.cursor&&!t.styledMode&&n.css({cursor:r.cursor}),v)n.on("touchstart",o)}));u(this,"afterDrawTracker")}};e.column&&(e.column.prototype.drawTracker=s.drawTrackerPoint);e.pie&&(e.pie.prototype.drawTracker=s.drawTrackerPoint);e.scatter&&(e.scatter.prototype.drawTracker=s.drawTrackerPoint);o(t.prototype,{setItemEvents:function(n,t,r){var f=this,o=f.chart.renderer.boxWrapper,e=n instanceof i,s="highcharts-legend-"+(e?"point":"series")+"-active",h=f.chart.styledMode;(r?[t,n.legendSymbol]:[n.legendGroup]).forEach(function(i){if(i)i.on("mouseover",function(){n.visible&&f.allItems.forEach(function(t){n!==t&&t.setState("inactive",!e)});n.setState("hover");n.visible&&o.addClass(s);h||t.css(f.options.itemHoverStyle)}).on("mouseout",function(){f.chart.styledMode||t.css(a(n.visible?f.itemStyle:f.itemHiddenStyle));f.allItems.forEach(function(t){n!==t&&t.setState("",!e)});o.removeClass(s);n.setState()}).on("click",function(t){var i=function(){n.setVisible&&n.setVisible();f.allItems.forEach(function(t){n!==t&&t.setState(n.visible?"inactive":"",!e)})};o.removeClass(s);t={browserEvent:t};n.firePointEvent?n.firePointEvent("legendItemClick",t,i):u(n,"legendItemClick",t,i)})})},createCheckboxForItem:function(n){n.checkbox=y("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:n.selected,defaultChecked:n.selected},this.options.itemCheckboxStyle,this.chart.container);h(n.checkbox,"click",function(t){u(n.series||n,"checkboxClick",{checked:t.target.checked,item:n},function(){n.select()})})}});o(r.prototype,{showResetZoom:function(){function e(){t.zoomOut()}var t=this,i=g.lang,n=t.options.chart.resetZoomButton,r=n.theme,f=r.states,o="chart"===n.relativeTo||"spaceBox"===n.relativeTo?null:"plotBox";u(this,"beforeShowResetZoom",null,function(){t.resetZoomButton=t.renderer.button(i.resetZoom,null,null,e,r,f&&f.hover).attr({align:n.position.align,title:i.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(n.position,!1,o)});u(this,"afterShowResetZoom")},zoomOut:function(){u(this,"selection",{resetSelection:!0},this.zoom)},zoom:function(n){var t=this,u,i=t.pointer,e=!1,o=t.inverted?i.mouseDownX:i.mouseDownY,r;!n||n.resetSelection?(t.axes.forEach(function(n){u=n.zoom()}),i.initiated=!1):n.xAxis.concat(n.yAxis).forEach(function(n){var r=n.axis,f=t.inverted?r.left:r.top,c=t.inverted?f+r.width:f+r.height,s=r.isXAxis,h=!1;(!s&&o>=f&&o<=c||s||!p(o))&&(h=!0);i[s?"zoomX":"zoomY"]&&h&&(u=r.zoom(n.min,n.max),r.displayBtn&&(e=!0))});r=t.resetZoomButton;e&&!r?t.showResetZoom():!e&&k(r)&&(t.resetZoomButton=r.destroy());u&&t.redraw(f(t.options.chart.animation,n&&n.animation,100>t.pointCount))},pan:function(t,i){var r=this,o=r.hoverPoints,e=r.options.chart,h=r.options.mapNavigation&&r.options.mapNavigation.enabled,s,f;i="object"==typeof i?i:{enabled:i,type:"x"};e&&e.panning&&(e.panning=i);f=i.type;u(this,"pan",{originalEvent:t},function(){o&&o.forEach(function(n){n.setState()});var i=[1];"xy"===f?i=[1,0]:"y"===f&&(i=[0]);i.forEach(function(i){var u=r[i?"xAxis":"yAxis"][0],p=u.options,w=u.horiz,b=t[w?"chartX":"chartY"],k,d,e;w=w?"mouseDownX":"mouseDownY";var a=r[w],v=(u.pointRange||0)/2,o=u.reversed&&!r.inverted||!u.reversed&&r.inverted?-1:1,y=u.getExtremes(),c=u.toValue(a-b,!0)+v*o;o=u.toValue(a+u.len-b,!0)-v*o;k=o<c;a=k?o:c;c=k?c:o;d=u.hasVerticalPanning();e=u.panningState;u.series.forEach(function(n){if(d&&!i&&(!e||e.isDirty)){var t=n.getProcessedData(!0);n=n.getExtremes(t.yData,!0);e||(e={startMin:Number.MAX_VALUE,startMax:-Number.MAX_VALUE});l(n.dataMin)&&l(n.dataMax)&&(e.startMin=Math.min(n.dataMin,e.startMin),e.startMax=Math.max(n.dataMax,e.startMax))}});o=Math.min(n.pick(null===e||void 0===e?void 0:e.startMin,y.dataMin),v?y.min:u.toValue(u.toPixels(y.min)-u.minPixelPadding));v=Math.max(n.pick(null===e||void 0===e?void 0:e.startMax,y.dataMax),v?y.max:u.toValue(u.toPixels(y.max)+u.minPixelPadding));u.panningState=e;p.ordinal||(p=o-a,0<p&&(c+=p,a=o),p=c-v,0<p&&(c=v,a-=p),(u.series.length&&a!==y.min&&c!==y.max&&i||e&&a>=o&&c<=v)&&(u.setExtremes(a,c,!1,!1,{trigger:"pan"}),r.resetZoomButton||h||!f.match("y")||(r.showResetZoom(),u.displayBtn=!1),s=!0),r[w]=b)});s&&r.redraw(!1);c(r.container,{cursor:"move"})})}});o(i.prototype,{select:function(n,t){var i=this,r=i.series,u=r.chart;this.selectedStaging=n=f(n,!i.selected);i.firePointEvent(n?"select":"unselect",{accumulate:t},function(){i.selected=i.options.selected=n;r.options.data[r.data.indexOf(i)]=i.options;i.setState(n&&"select");t||u.getSelectedPoints().forEach(function(n){var t=n.series;n.selected&&n!==i&&(n.selected=n.options.selected=!1,t.options.data[t.data.indexOf(n)]=n.options,n.setState(u.hoverPoints&&t.options.inactiveOtherPoints?"inactive":""),n.firePointEvent("unselect"))})});delete this.selectedStaging},onMouseOver:function(n){var i=this.series.chart,t=i.pointer;n=n?t.normalize(n):t.getChartCoordinatesFromPoint(this,i.inverted);t.runPointActions(n,this)},onMouseOut:function(){var n=this.series.chart;this.firePointEvent("mouseOut");this.series.options.inactiveOtherPoints||(n.hoverPoints||[]).forEach(function(n){n.setState()});n.hoverPoints=n.hoverPoint=null},importEvents:function(){if(!this.hasImportedEvents){var n=this,t=a(n.series.options.point,n.options).events;n.events=t;d(t,function(t,i){b(t)&&h(n,i,t)});this.hasImportedEvents=!0}},setState:function(n,t){var r=this.series,h=this.state,a=r.options.states[n||"normal"]||{},c=nt[r.type].marker&&r.options.marker,b=c&&!1===c.enabled,y=c&&c.states&&c.states[n||"normal"]||{},k=!1===y.enabled,i=r.stateMarkerGraphic,p=this.marker||{},l=r.chart,e=r.halo,s,d=c&&r.markerAttribs,v,w;n=n||"";n===this.state&&!t||this.selected&&"select"!==n||!1===a.enabled||n&&(k||b&&!1===y.enabled)||n&&p.states&&p.states[n]&&!1===p.states[n].enabled||(this.state=n,d&&(s=r.markerAttribs(this,n)),this.graphic?(h&&this.graphic.removeClass("highcharts-point-"+h),n&&this.graphic.addClass("highcharts-point-"+n),l.styledMode||(v=r.pointAttribs(this,n),w=f(l.options.chart.animation,a.animation),r.options.inactiveOtherPoints&&v.opacity&&((this.dataLabels||[]).forEach(function(n){n&&n.animate({opacity:v.opacity},w)}),this.connector&&this.connector.animate({opacity:v.opacity},w)),this.graphic.animate(v,w)),s&&this.graphic.animate(s,f(l.options.chart.animation,y.animation,c.animation)),i&&i.hide()):(n&&y&&(h=p.symbol||r.symbol,i&&i.currentSymbol!==h&&(i=i.destroy()),s&&(i?i[t?"animate":"attr"]({x:s.x,y:s.y}):h&&(r.stateMarkerGraphic=i=l.renderer.symbol(h,s.x,s.y,s.width,s.height).add(r.markerGroup),i.currentSymbol=h)),!l.styledMode&&i&&i.attr(r.pointAttribs(this,n))),i&&(i[n&&this.isInside?"show":"hide"](),i.element.point=this)),n=a.halo,a=(i=this.graphic||i)&&i.visibility||"inherit",n&&n.size&&i&&"hidden"!==a&&!this.isCluster?(e||(r.halo=e=l.renderer.path().add(i.parentGroup)),e.show()[t?"animate":"attr"]({d:this.haloPath(n.size)}),e.attr({"class":"highcharts-halo highcharts-color-"+f(this.colorIndex,r.colorIndex)+(this.className?" "+this.className:""),visibility:a,zIndex:-1}),e.point=this,l.styledMode||e.attr(o({fill:this.color||r.color,"fill-opacity":n.opacity},n.attributes))):e&&e.point&&e.point.haloPath&&e.animate({d:e.point.haloPath(0)},null,e.hide),u(this,"afterSetState"))},haloPath:function(n){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-n,this.plotY-n,2*n,2*n)}});o(tt.prototype,{onMouseOver:function(){var n=this.chart,t=n.hoverSeries;n.pointer.setHoverChartIndex();t&&t!==this&&t.onMouseOut();this.options.events.mouseOver&&u(this,"mouseOver");this.setState("hover");n.hoverSeries=this},onMouseOut:function(){var r=this.options,n=this.chart,t=n.tooltip,i=n.hoverPoint;n.hoverSeries=null;i&&i.onMouseOut();this&&r.events.mouseOut&&u(this,"mouseOut");!t||this.stickyTracking||t.shared&&!this.noSharedTooltip||t.hide();n.series.forEach(function(n){n.setState("",!0)})},setState:function(n,t){var i=this,u=i.options,e=i.graph,h=u.inactiveOtherPoints,r=u.states,o=u.lineWidth,s=u.opacity,c=f(r[n||"normal"]&&r[n||"normal"].animation,i.chart.options.chart.animation);if(u=0,n=n||"",i.state!==n&&([i.group,i.markerGroup,i.dataLabelsGroup].forEach(function(t){t&&(i.state&&t.removeClass("highcharts-series-"+i.state),n&&t.addClass("highcharts-series-"+n))}),i.state=n,!i.chart.styledMode)){if(r[n]&&!1===r[n].enabled)return;if(n&&(o=r[n].lineWidth||o+(r[n].lineWidthPlus||0),s=f(r[n].opacity,s)),e&&!e.dashstyle)for(r={"stroke-width":o},e.animate(r,c);i["zone-graph-"+u];)i["zone-graph-"+u].attr(r),u+=1;h||[i.group,i.markerGroup,i.dataLabelsGroup,i.labelBySeries].forEach(function(n){n&&n.animate({opacity:s},c)})}t&&h&&i.points&&i.setAllPointsToState(n)},setAllPointsToState:function(n){this.points.forEach(function(t){t.setState&&t.setState(n)})},setVisible:function(n,t){var i=this,r=i.chart,e=i.legendItem,o=r.options.chart.ignoreHiddenSeries,s=i.visible,f=(i.visible=n=i.options.visible=i.userOptions.visible="undefined"==typeof n?!s:n)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(n){i[n]&&i[n][f]()});(r.hoverSeries===i||(r.hoverPoint&&r.hoverPoint.series)===i)&&i.onMouseOut();e&&r.legend.colorizeItem(i,n);i.isDirty=!0;i.options.stacking&&r.series.forEach(function(n){n.options.stacking&&n.visible&&(n.isDirty=!0)});i.linkedSeries.forEach(function(t){t.setVisible(n,!1)});o&&(r.isDirtyBox=!0);u(i,f);!1!==t&&r.redraw()},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(n){this.selected=n=this.options.selected="undefined"==typeof n?!this.selected:n;this.checkbox&&(this.checkbox.checked=n);u(this,n?"select":"unselect")},drawTracker:s.drawTrackerGraph})}),i(t,"parts/Responsive.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var r=t.find,u=t.isArray,f=t.isObject,e=t.merge,o=t.objectEach,i=t.pick,s=t.splat,h=t.uniqueKey;n=n.Chart;n.prototype.setResponsive=function(n,t){var f=this.options.responsive,i=[],u=this.currentResponsive;!t&&f&&f.rules&&f.rules.forEach(function(n){"undefined"==typeof n._id&&(n._id=h());this.matchResponsiveRule(n,i)},this);t=e.apply(0,i.map(function(n){return r(f.rules,function(t){return t._id===n}).chartOptions}));t.isResponsiveOptions=!0;i=i.toString()||void 0;i!==(u&&u.ruleIds)&&(u&&this.update(u.undoOptions,n,!0),i?(u=this.currentOptions(t),u.isResponsiveOptions=!0,this.currentResponsive={ruleIds:i,mergedOptions:t,undoOptions:u},this.update(t,n,!0)):this.currentResponsive=void 0)};n.prototype.matchResponsiveRule=function(n,t){var r=n.condition;(r.callback||function(){return this.chartWidth<=i(r.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=i(r.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=i(r.minWidth,0)&&this.chartHeight>=i(r.minHeight,0)}).call(this)&&t.push(n._id)};n.prototype.currentOptions=function(n){function t(n,i,e,h){var c;o(n,function(n,o){if(!h&&-1<r.collectionsWithUpdate.indexOf(o))for(n=s(n),e[o]=[],c=0;c<n.length;c++)i[o][c]&&(e[o][c]={},t(n[c],i[o][c],e[o][c],h+1));else f(n)?(e[o]=u(n)?[]:{},t(n,i[o]||{},e[o],h+1)):e[o]="undefined"==typeof i[o]?null:i[o]})}var r=this,i={};return t(n,this.options,i,0),i}}),i(t,"masters/highcharts.src.js",[t["parts/Globals.js"]],function(n){return n}),t["masters/highcharts.src.js"]._modules=t,t["masters/highcharts.src.js"]}),function(n){"object"==typeof module&&module.exports?(n["default"]=n,module.exports=n):"function"==typeof define&&define.amd?define("highcharts/modules/accessibility",["highcharts"],function(t){return n(t),n.Highcharts=t,n}):n("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(n){function i(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}var t=n?n._modules:{};i(t,"modules/accessibility/utils/htmlUtilities.js",[t["parts/Utilities.js"],t["parts/Globals.js"]],function(n,t){function u(n){return n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/\//g,"&#x2F;")}var f=n.merge,i=t.win,r=i.document;return{addClass:function(n,t){n.classList?n.classList.add(t):0>n.className.indexOf(t)&&(n.className+=t)},escapeStringForHTML:u,getElement:function(n){return r.getElementById(n)},getFakeMouseEvent:function(n){if("function"==typeof i.MouseEvent)return new i.MouseEvent(n);if(r.createEvent){var t=r.createEvent("MouseEvent");if(t.initMouseEvent)return t.initMouseEvent(n,!0,!0,i,"click"===n?1:0,0,0,0,0,!1,!1,!1,!1,0,null),t}return{type:n}},removeElement:function(n){n&&n.parentNode&&n.parentNode.removeChild(n)},reverseChildNodes:function(n){for(var t=n.childNodes.length;t--;)n.appendChild(n.childNodes[t])},setElAttrs:function(n,t){Object.keys(t).forEach(function(i){var r=t[i];null===r?n.removeAttribute(i):(r=u(""+r),n.setAttribute(i,r))})},stripHTMLTagsFromString:function(n){return"string"==typeof n?n.replace(/<\/?[^>]+(>|$)/g,""):n},visuallyHideElement:function(n){f(!0,n.style,{position:"absolute",width:"1px",height:"1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(1px, 1px, 1px, 1px)",marginTop:"-3px","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)",filter:"alpha(opacity=1)",opacity:"0.01"})}}});i(t,"modules/accessibility/utils/chartUtilities.js",[t["modules/accessibility/utils/htmlUtilities.js"],t["parts/Utilities.js"]],function(t,i){function u(n){if(n.points&&n.points.length&&n.points[0].graphic)return n.points[0].graphic.element}function f(n){var t=u(n);return t&&t.parentNode||n.graph&&n.graph.element||n.group&&n.group.element}function e(n,t){t.setAttribute("aria-hidden",!1);t!==n.renderTo&&t.parentNode&&(Array.prototype.forEach.call(t.parentNode.childNodes,function(n){n.hasAttribute("aria-hidden")||n.setAttribute("aria-hidden",!0)}),e(n,t.parentNode))}var o=t.stripHTMLTagsFromString,r=i.defined,s=i.find;return{getChartTitle:function(n){return o(n.options.title.text||n.langFormat("accessibility.defaultChartTitle",{chart:n}))},getAxisDescription:function(n){return o(n&&(n.userOptions&&n.userOptions.accessibility&&n.userOptions.accessibility.description||n.axisTitle&&n.axisTitle.textStr||n.options.id||n.categories&&"categories"||n.dateTime&&"Time"||"values"))},getPointFromXY:function(n,t,i){for(var r=n.length,u;r--;)if(u=s(n[r].points||[],function(n){return n.x===t&&n.y===i}))return u},getSeriesFirstPointElement:u,getSeriesFromName:function(n,t){return t?(n.series||[]).filter(function(n){return n.name===t}):n.series},getSeriesA11yElement:f,unhideChartElementFromAT:e,hideSeriesFromAT:function(n){(n=f(n))&&n.setAttribute("aria-hidden",!0)},scrollToPoint:function(t){var i=t.series.xAxis,f=t.series.yAxis,u=(null===i||void 0===i?0:i.scrollbar)?i:f,e,o;(i=null===u||void 0===u?void 0:u.scrollbar)&&r(i.to)&&r(i.from)&&(f=i.to-i.from,r(u.dataMin)&&r(u.dataMax)?(e=u.toPixels(u.dataMin),o=u.toPixels(u.dataMax),t=(u.toPixels(t["xAxis"===u.coll?"x":"y"]||0)-e)/(o-e)):t=0,i.updatePosition(t-f/2,t+f/2),n.fireEvent(i,"changed",{from:i.from,to:i.to,trigger:"scrollbar",DOMEvent:null}))}}});i(t,"modules/accessibility/KeyboardNavigationHandler.js",[t["parts/Utilities.js"]],function(n){function t(n,t){this.chart=n;this.keyCodeMap=t.keyCodeMap||[];this.validate=t.validate;this.init=t.init;this.terminate=t.terminate;this.response={success:1,prev:2,next:3,noHandler:4,fail:5}}var i=n.find;return t.prototype={run:function(n){var t=n.which||n.keyCode,r=this.response.noHandler,u=i(this.keyCodeMap,function(n){return-1<n[0].indexOf(t)});return u?r=u[1].call(this,t,n):9===t&&(r=this.response[n.shiftKey?"prev":"next"]),r}},t});i(t,"modules/accessibility/utils/EventProvider.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){var r=t.addEvent,i;return t=t.extend,i=function(){this.eventRemovers=[]},t(i.prototype,{addEvent:function(){var t=r.apply(n,arguments);return this.eventRemovers.push(t),t},removeAddedEvents:function(){this.eventRemovers.forEach(function(n){n()});this.eventRemovers=[]}}),i});i(t,"modules/accessibility/utils/DOMElementProvider.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t,i){var r=n.win.document,u;return n=t.extend,u=i.removeElement,i=function(){this.elements=[]},n(i.prototype,{createElement:function(){var n=r.createElement.apply(r,arguments);return this.elements.push(n),n},destroyCreatedElements:function(){this.elements.forEach(function(n){u(n)});this.elements=[]}}),i});i(t,"modules/accessibility/AccessibilityComponent.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/utils/htmlUtilities.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/utils/EventProvider.js"],t["modules/accessibility/utils/DOMElementProvider.js"]],function(n,t,i,r,u,f){function s(){}var e=n.win,o=e.document;n=t.extend;var l=t.fireEvent,h=t.merge,a=i.removeElement,c=i.getFakeMouseEvent,v=r.unhideChartElementFromAT;return s.prototype={initBase:function(n){this.chart=n;this.eventProvider=new u;this.domElementProvider=new f;this.keyCodes={left:37,right:39,up:38,down:40,enter:13,space:32,esc:27,tab:9}},addEvent:function(){return this.eventProvider.addEvent.apply(this.eventProvider,arguments)},createElement:function(){return this.domElementProvider.createElement.apply(this.domElementProvider,arguments)},fireEventOnWrappedOrUnwrappedElement:function(n,t){var i=t.type;o.createEvent&&(n.dispatchEvent||n.fireEvent)?n.dispatchEvent?n.dispatchEvent(t):n.fireEvent(i,t):l(n,i,t)},fakeClickEvent:function(n){if(n){var t=c("click");this.fireEventOnWrappedOrUnwrappedElement(n,t)}},addProxyGroup:function(n){this.createOrUpdateProxyContainer();var t=this.createElement("div");return Object.keys(n||{}).forEach(function(i){null!==n[i]&&t.setAttribute(i,n[i])}),this.chart.a11yProxyContainer.appendChild(t),t},createOrUpdateProxyContainer:function(){var n=this.chart,t=n.renderer.box;n.a11yProxyContainer=n.a11yProxyContainer||this.createProxyContainerElement();t.nextSibling!==n.a11yProxyContainer&&n.container.insertBefore(n.a11yProxyContainer,t.nextSibling)},createProxyContainerElement:function(){var n=o.createElement("div");return n.className="highcharts-a11y-proxy-container",n},createProxyButton:function(n,t,i,r,u){var o=n.element,f=this.createElement("button"),e=h({"aria-label":o.getAttribute("aria-label")},i);return n=this.getElementPosition(r||n),Object.keys(e).forEach(function(n){null!==e[n]&&f.setAttribute(n,e[n])}),f.className="highcharts-a11y-proxy-button",u&&this.addEvent(f,"click",u),this.setProxyButtonStyle(f,n),this.proxyMouseEventsForButton(o,f),t.appendChild(f),e["aria-hidden"]||v(this.chart,f),f},getElementPosition:function(n){var t=n.element;return(n=this.chart.renderTo)&&t&&t.getBoundingClientRect?(t=t.getBoundingClientRect(),n=n.getBoundingClientRect(),{x:t.left-n.left,y:t.top-n.top,width:t.right-t.left,height:t.bottom-t.top}):{x:0,y:0,width:1,height:1}},setProxyButtonStyle:function(n,t){h(!0,n.style,{"border-width":0,"background-color":"transparent",cursor:"pointer",outline:"none",opacity:.001,filter:"alpha(opacity=1)","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)",zIndex:999,overflow:"hidden",padding:0,margin:0,display:"block",position:"absolute",width:(t.width||1)+"px",height:(t.height||1)+"px",left:(t.x||0)+"px",top:(t.y||0)+"px"})},proxyMouseEventsForButton:function(n,t){var i=this;"click touchstart touchend touchcancel touchmove mouseover mouseenter mouseleave mouseout".split(" ").forEach(function(r){i.addEvent(t,r,function(t){var r=i.cloneMouseEvent(t);n&&i.fireEventOnWrappedOrUnwrappedElement(n,r);t.stopPropagation();t.preventDefault()})})},cloneMouseEvent:function(n){if("function"==typeof e.MouseEvent)return new e.MouseEvent(n.type,n);if(o.createEvent){var t=o.createEvent("MouseEvent");if(t.initMouseEvent)return t.initMouseEvent(n.type,n.bubbles,n.cancelable,n.view||e,n.detail,n.screenX,n.screenY,n.clientX,n.clientY,n.ctrlKey,n.altKey,n.shiftKey,n.metaKey,n.button,n.relatedTarget),t}return c(n.type)},destroyBase:function(){a(this.chart.a11yProxyContainer);this.domElementProvider.destroyCreatedElements();this.eventProvider.removeAddedEvents()}},n(s.prototype,{init:function(){},getKeyboardNavigation:function(){},onChartUpdate:function(){},onChartRender:function(){},destroy:function(){}}),s});i(t,"modules/accessibility/KeyboardNavigation.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/utils/htmlUtilities.js"],t["modules/accessibility/utils/EventProvider.js"]],function(n,t,i,r){function e(n,t){this.init(n,t)}var u=n.win,f=u.document,o=t.addEvent,s=t.fireEvent,h=i.getElement;return o(f,"keydown",function(t){27===(t.which||t.keyCode)&&n.charts&&n.charts.forEach(function(n){n&&n.dismissPopupContent&&n.dismissPopupContent()})}),n.Chart.prototype.dismissPopupContent=function(){var n=this;s(this,"dismissPopupContent",{},function(){n.tooltip&&n.tooltip.hide(0);n.hideExportMenu()})},e.prototype={init:function(n,t){var i=this,u=this.eventProvider=new r;this.chart=n;this.components=t;this.modules=[];this.currentModuleIx=0;u.addEvent(n.renderTo,"keydown",function(n){return i.onKeydown(n)});u.addEvent(n.container,"focus",function(n){return i.onFocus(n)});u.addEvent(f,"mouseup",function(){return i.onMouseUp()});u.addEvent(n.renderTo,"mousedown",function(){i.isClickingChart=!0});u.addEvent(n.renderTo,"mouseover",function(){i.pointerIsOverChart=!0});u.addEvent(n.renderTo,"mouseout",function(){i.pointerIsOverChart=!1});this.update();this.modules.length&&this.modules[0].init(1)},update:function(n){var t=this.chart.options.accessibility,i;t=t&&t.keyboardNavigation;i=this.components;this.updateContainerTabindex();t&&t.enabled&&n&&n.length?(this.modules=n.reduce(function(n,t){return t=i[t].getKeyboardNavigation(),n.concat(t)},[]),this.updateExitAnchor()):(this.modules=[],this.currentModuleIx=0,this.removeExitAnchor())},onFocus:function(n){var t,i=this.chart;n=n.relatedTarget&&i.container.contains(n.relatedTarget);this.isClickingChart||n||(null===(t=this.modules[0])||void 0===t?void 0:t.init(1))},onMouseUp:function(){if(delete this.isClickingChart,!this.keyboardReset&&!this.pointerIsOverChart){var t=this.chart,n=this.modules&&this.modules[this.currentModuleIx||0];n&&n.terminate&&n.terminate();t.focusElement&&t.focusElement.removeFocusBorder();this.currentModuleIx=0;this.keyboardReset=!0}},onKeydown:function(n){var i,t,r;n=n||u.event;t=this.modules&&this.modules.length&&this.modules[this.currentModuleIx];this.keyboardReset=!1;t&&(r=t.run(n),r===t.response.success?i=!0:r===t.response.prev?i=this.prev():r===t.response.next&&(i=this.next()),i&&(n.preventDefault(),n.stopPropagation()))},prev:function(){return this.move(-1)},next:function(){return this.move(1)},move:function(n){var t=this.modules&&this.modules[this.currentModuleIx];if(t&&t.terminate&&t.terminate(n),this.chart.focusElement&&this.chart.focusElement.removeFocusBorder(),this.currentModuleIx+=n,t=this.modules&&this.modules[this.currentModuleIx]){if(t.validate&&!t.validate())return this.move(n);if(t.init)return t.init(n),!0}return this.currentModuleIx=0,0<n?(this.exiting=!0,this.exitAnchor.focus()):this.chart.container.focus(),!1},updateExitAnchor:function(){var n=h("highcharts-end-of-chart-marker-"+this.chart.index);this.removeExitAnchor();n?(this.makeElementAnExitAnchor(n),this.exitAnchor=n):this.createExitAnchor()},updateContainerTabindex:function(){var n=this.chart.options.accessibility,t,i;n=n&&n.keyboardNavigation;n=!(n&&!1===n.enabled);t=this.chart.container;i=t.getAttribute("tabIndex");n&&!i?t.setAttribute("tabindex","0"):n||"0"!==i||t.removeAttribute("tabindex")},makeElementAnExitAnchor:function(n){n.setAttribute("class","highcharts-exit-anchor");n.setAttribute("tabindex","0");n.setAttribute("aria-hidden",!1);this.addExitAnchorEventsToEl(n)},createExitAnchor:function(){var t=this.chart,n=this.exitAnchor=f.createElement("div");t.renderTo.appendChild(n);this.makeElementAnExitAnchor(n)},removeExitAnchor:function(){this.exitAnchor&&this.exitAnchor.parentNode&&(this.exitAnchor.parentNode.removeChild(this.exitAnchor),delete this.exitAnchor)},addExitAnchorEventsToEl:function(n){var i=this.chart,t=this;this.eventProvider.addEvent(n,"focus",function(n){n=n||u.event;n.relatedTarget&&i.container.contains(n.relatedTarget)||t.exiting?t.exiting=!1:(i.renderTo.focus(),n.preventDefault(),t.modules&&t.modules.length&&(t.currentModuleIx=t.modules.length-1,(n=t.modules[t.currentModuleIx])&&n.validate&&!n.validate()?t.prev():n&&n.init(-1)))})},destroy:function(){this.removeExitAnchor();this.eventProvider.removeAddedEvents();"0"===this.chart.container.getAttribute("tabindex")&&this.chart.container.removeAttribute("tabindex")}},e});i(t,"modules/accessibility/components/LegendComponent.js",[t["parts/Globals.js"],t["parts/Legend.js"],t["parts/Utilities.js"],t["modules/accessibility/AccessibilityComponent.js"],t["modules/accessibility/KeyboardNavigationHandler.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t,i,r,u,f){var o=i.addEvent,s=i.extend,e=i.fireEvent,h=f.stripHTMLTagsFromString,c=f.removeElement;return n.Chart.prototype.highlightLegendItem=function(n){var t=this.legend.allItems,i=this.highlightedLegendItemIx,r,u;return t[n]?(t[i]&&e(t[i].legendGroup.element,"mouseout"),i=this.legend,r=i.allItems[n].pageIx,u=i.currentPage,"undefined"!=typeof r&&r+1!==u&&i.scroll(1+r-u),this.setFocusToElement(t[n].legendItem,t[n].a11yProxyElement),e(t[n].legendGroup.element,"mouseover"),!0):!1},o(t,"afterColorizeItem",function(n){var t=n.item;this.chart.options.accessibility.enabled&&t&&t.a11yProxyElement&&t.a11yProxyElement.setAttribute("aria-pressed",n.visible?"false":"true")}),n=function(){},n.prototype=new r,s(n.prototype,{init:function(){var n=this;this.addEvent(t,"afterScroll",function(){this.chart===n.chart&&n.updateProxies()})},updateLegendItemProxyVisibility:function(){var n=this.chart.legend,t=n.currentPage||1,i=n.clipHeight||0;(n.allItems||[]).forEach(function(r){var u=r.pageIx||0,f=r._legendItemPos?r._legendItemPos[1]:0,e=r.legendItem?Math.round(r.legendItem.getBBox().height):0;u=f+e-n.pages[u]>i||u!==t-1;r.a11yProxyElement&&(r.a11yProxyElement.style.visibility=u?"hidden":"visible")})},onChartRender:function(){this.legendProxyButtonClicked?delete this.legendProxyButtonClicked:this.updateProxies()},updateProxies:function(){c(this.legendProxyGroup);var n=this.chart,t=n.legend&&n.legend.allItems,i=n.options.legend.accessibility||{};!t||!t.length||n.colorAxis&&n.colorAxis.length||!1===i.enabled||(this.addLegendProxyGroup(),this.proxyLegendItems(),this.updateLegendItemProxyVisibility())},addLegendProxyGroup:function(){var n=this.chart.options.accessibility,t=this.chart.langFormat("accessibility.legend.legendLabel",{});this.legendProxyGroup=this.addProxyGroup({"aria-label":t,role:"all"===n.landmarkVerbosity?"region":null})},proxyLegendItems:function(){var n=this;(this.chart.legend&&this.chart.legend.allItems||[]).forEach(function(t){t.legendItem&&t.legendItem.element&&n.proxyLegendItem(t)})},proxyLegendItem:function(n){var t=this,i=this.chart.langFormat("accessibility.legend.legendItem",{chart:this.chart,itemName:h(n.name)});n.a11yProxyElement=this.createProxyButton(n.legendItem,this.legendProxyGroup,{tabindex:-1,"aria-pressed":!n.visible,"aria-label":i},n.legendGroup.div?n.legendItem:n.legendGroup,function(){t.legendProxyButtonClicked=!0})},getKeyboardNavigation:function(){var n=this.keyCodes,t=this;return new u(this.chart,{keyCodeMap:[[[n.left,n.right,n.up,n.down],function(n){return t.onKbdArrowKey(this,n)}],[[n.enter,n.space],function(){return t.onKbdClick(this)}]],validate:function(){return t.shouldHaveLegendNavigation()},init:function(n){return t.onKbdNavigationInit(n)}})},onKbdArrowKey:function(n,t){var u=this.keyCodes,i=n.response,r=this.chart,f=r.options.accessibility,e=r.legend.allItems.length;return t=t===u.left||t===u.up?-1:1,r.highlightLegendItem(this.highlightedLegendItemIx+t)?(this.highlightedLegendItemIx+=t,i.success):1<e&&f.keyboardNavigation.wrapAround?(n.init(t),i.success):i[0<t?"next":"prev"]},onKbdClick:function(n){var t=this.chart.legend.allItems[this.highlightedLegendItemIx];return t&&t.a11yProxyElement&&e(t.a11yProxyElement,"click"),n.response.success},shouldHaveLegendNavigation:function(){var n=this.chart,i=n.colorAxis&&n.colorAxis.length,t=(n.options.legend||{}).accessibility||{};return!!(n.legend&&n.legend.allItems&&n.legend.display&&!i&&t.enabled&&t.keyboardNavigation&&t.keyboardNavigation.enabled)},onKbdNavigationInit:function(n){var t=this.chart,i=t.legend.allItems.length-1;n=0<n?0:i;t.highlightLegendItem(n);this.highlightedLegendItemIx=n}}),n});i(t,"modules/accessibility/components/MenuComponent.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/AccessibilityComponent.js"],t["modules/accessibility/KeyboardNavigationHandler.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t,i,r,u,f){function e(n){return n.exportSVGElements&&n.exportSVGElements[0]}t=t.extend;var s=u.unhideChartElementFromAT,h=f.removeElement,o=f.getFakeMouseEvent;return n.Chart.prototype.showExportMenu=function(){var n=e(this);if(n&&(n=n.element,n.onclick))n.onclick(o("click"))},n.Chart.prototype.hideExportMenu=function(){var n=this.exportDivElements;n&&this.exportContextMenu&&(n.forEach(function(n){if("highcharts-menu-item"===n.className&&n.onmouseout)n.onmouseout(o("mouseout"))}),this.highlightedExportItemIx=0,this.exportContextMenu.hideMenu(),this.container.focus())},n.Chart.prototype.highlightExportItem=function(n){var t=this.exportDivElements&&this.exportDivElements[n],i=this.exportDivElements&&this.exportDivElements[this.highlightedExportItemIx],r;if(t&&"LI"===t.tagName&&(!t.children||!t.children.length)){if(r=!!(this.renderTo.getElementsByTagName("g")[0]||{}).focus,t.focus&&r&&t.focus(),i&&i.onmouseout)i.onmouseout(o("mouseout"));if(t.onmouseover)t.onmouseover(o("mouseover"));return this.highlightedExportItemIx=n,!0}return!1},n.Chart.prototype.highlightLastExportItem=function(){var n;if(this.exportDivElements)for(n=this.exportDivElements.length;n--;)if(this.highlightExportItem(n))return!0;return!1},n=function(){},n.prototype=new i,t(n.prototype,{init:function(){var n=this.chart,t=this;this.addEvent(n,"exportMenuShown",function(){t.onMenuShown()});this.addEvent(n,"exportMenuHidden",function(){t.onMenuHidden()})},onMenuHidden:function(){var n=this.chart.exportContextMenu;n&&n.setAttribute("aria-hidden","true");this.isExportMenuShown=!1;this.setExportButtonExpandedState("false")},onMenuShown:function(){var n=this.chart,t=n.exportContextMenu;t&&(this.addAccessibleContextMenuAttribs(),s(n,t));this.isExportMenuShown=!0;this.setExportButtonExpandedState("true")},setExportButtonExpandedState:function(n){var t=this.exportButtonProxy;t&&t.setAttribute("aria-expanded",n)},onChartRender:function(){var n=this.chart,i=n.options.accessibility,t,r;h(this.exportProxyGroup);t=n.options.exporting;r=e(n);t&&!1!==t.enabled&&t.accessibility&&t.accessibility.enabled&&r&&r.element&&(this.exportProxyGroup=this.addProxyGroup("all"===i.landmarkVerbosity?{"aria-label":n.langFormat("accessibility.exporting.exportRegionLabel",{chart:n}),role:"region"}:{}),i=e(this.chart),this.exportButtonProxy=this.createProxyButton(i,this.exportProxyGroup,{"aria-label":n.langFormat("accessibility.exporting.menuButtonLabel",{chart:n}),"aria-expanded":"false"}))},addAccessibleContextMenuAttribs:function(){var t=this.chart,n=t.exportDivElements;n&&n.length&&(n.forEach(function(n){"LI"!==n.tagName||n.children&&n.children.length?n.setAttribute("aria-hidden","true"):n.setAttribute("tabindex",-1)}),n=n[0].parentNode,n.removeAttribute("aria-hidden"),n.setAttribute("aria-label",t.langFormat("accessibility.exporting.chartMenuLabel",{chart:t})))},getKeyboardNavigation:function(){var n=this.keyCodes,t=this.chart,i=this;return new r(t,{keyCodeMap:[[[n.left,n.up],function(){return i.onKbdPrevious(this)}],[[n.right,n.down],function(){return i.onKbdNext(this)}],[[n.enter,n.space],function(){return i.onKbdClick(this)}],[[n.esc],function(){return this.response.prev}]],validate:function(){return t.exportChart&&!1!==t.options.exporting.enabled&&!1!==t.options.exporting.accessibility.enabled},init:function(){var n=i.exportButtonProxy,r=t.exportingGroup;r&&n&&t.setFocusToElement(r,n)},terminate:function(){t.hideExportMenu()}})},onKbdPrevious:function(n){var t=this.chart,r=t.options.accessibility,i;for(n=n.response,i=t.highlightedExportItemIx||0;i--;)if(t.highlightExportItem(i))return n.success;return r.keyboardNavigation.wrapAround?(t.highlightLastExportItem(),n.success):n.prev},onKbdNext:function(n){var t=this.chart,r=t.options.accessibility,i;for(n=n.response,i=(t.highlightedExportItemIx||0)+1;i<t.exportDivElements.length;++i)if(t.highlightExportItem(i))return n.success;return r.keyboardNavigation.wrapAround?(t.highlightExportItem(0),n.success):n.next},onKbdClick:function(n){var t=this.chart,i=t.exportDivElements[t.highlightedExportItemIx],r=e(t).element;return this.isExportMenuShown?this.fakeClickEvent(i):(this.fakeClickEvent(r),t.highlightExportItem(0)),n.response.success}}),n});i(t,"modules/accessibility/components/SeriesComponent/SeriesKeyboardNavigation.js",[t["parts/Globals.js"],t["parts/Point.js"],t["parts/Utilities.js"],t["modules/accessibility/KeyboardNavigationHandler.js"],t["modules/accessibility/utils/EventProvider.js"],t["modules/accessibility/utils/chartUtilities.js"]],function(n,t,i,r,u,f){function h(n){var r=n.index,t=n.series.points,i=t.length;if(t[r]!==n){for(;i--;)if(t[i]===n)return i}else return r}function o(n){var t=n.chart.options.accessibility.keyboardNavigation.seriesNavigation,i=n.options.accessibility||{},r=i.keyboardNavigation;return r&&!1===r.enabled||!1===i.enabled||!1===n.options.enableMouseTracking||!n.visible||t.pointNavigationEnabledThreshold&&t.pointNavigationEnabledThreshold<=n.points.length}function s(n){var t=n.series.chart.options.accessibility;return n.isNull&&t.keyboardNavigation.seriesNavigation.skipNullPoints||!1===n.visible||o(n.series)}function a(n,t,i,r){var s=Infinity,f=t.points.length,h=function(n){return!(e(n.plotX)&&e(n.plotY))},u,o;if(!h(n)){for(;f--;)u=t.points[f],!h(u)&&(u=(n.plotX-u.plotX)*(n.plotX-u.plotX)*(i||1)+(n.plotY-u.plotY)*(n.plotY-u.plotY)*(r||1),u<s)&&(s=u,o=f);return e(o)?t.points[o]:void 0}}function c(n){return delete n.highlightedPoint,n.series.reduce(function(n,t){return n||t.highlightFirstValidPoint()},!1)}function l(n,t){this.keyCodes=t;this.chart=n}var v=i.extend,e=i.defined,y=f.getPointFromXY,p=f.getSeriesFromName,w=f.scrollToPoint;return n.Series.prototype.keyboardMoveVertical=!0,["column","pie"].forEach(function(t){n.seriesTypes[t]&&(n.seriesTypes[t].prototype.keyboardMoveVertical=!1)}),t.prototype.highlight=function(){var n=this.series.chart;return this.isNull?n.tooltip&&n.tooltip.hide(0):this.onMouseOver(),w(this),this.graphic&&n.setFocusToElement(this.graphic),n.highlightedPoint=this,this},n.Chart.prototype.highlightAdjacentPoint=function(n){var t=this.series,r=this.highlightedPoint,i=r&&h(r)||0,f=r&&r.series.points,u=this.series&&this.series[this.series.length-1];if(u=u&&u.points&&u.points[u.points.length-1],!t[0]||!t[0].points)return!1;if(r){if(t=t[r.series.index+(n?1:-1)],i=f[i+(n?1:-1)],!i&&t&&(i=t.points[n?0:t.points.length-1]),!i)return!1}else i=n?t[0].points[0]:u;return s(i)?(t=i.series,this.highlightedPoint=o(t)?n?t.points[t.points.length-1]:t.points[0]:i,this.highlightAdjacentPoint(n)):i.highlight()},n.Series.prototype.highlightFirstValidPoint=function(){var n=this.chart.highlightedPoint,t=(n&&n.series)===this?h(n):0,r,i;if(n=this.points,r=n.length,n&&r){for(i=t;i<r;++i)if(!s(n[i]))return n[i].highlight();for(;0<=t;--t)if(!s(n[t]))return n[t].highlight()}return!1},n.Chart.prototype.highlightAdjacentSeries=function(n){var t,r=this.highlightedPoint,i=(t=this.series&&this.series[this.series.length-1])&&t.points&&t.points[t.points.length-1];return this.highlightedPoint?(t=this.series[r.series.index+(n?-1:1)],!t)?!1:(i=a(r,t,4),!i)?!1:o(t)?(i.highlight(),n=this.highlightAdjacentSeries(n),n?n:(r.highlight(),!1)):(i.highlight(),i.series.highlightFirstValidPoint()):(t=n?this.series&&this.series[0]:t,(i=n?t&&t.points&&t.points[0]:i)?i.highlight():!1)},n.Chart.prototype.highlightAdjacentPointVertical=function(n){var t=this.highlightedPoint,r=Infinity,i;return!e(t.plotX)||!e(t.plotY)?!1:(this.series.forEach(function(u){o(u)||u.points.forEach(function(f){if(e(f.plotY)&&e(f.plotX)&&f!==t){var h=f.plotY-t.plotY,o=Math.abs(f.plotX-t.plotX);o=Math.abs(h)*Math.abs(h)+o*o*4;u.yAxis&&u.yAxis.reversed&&(h*=-1);!(0>=h&&n||0<=h&&!n||5>o||s(f))&&o<r&&(r=o,i=f)}})}),i?i.highlight():!1)},v(l.prototype,{init:function(){var i=this,r=this.chart,t=this.eventProvider=new u;t.addEvent(n.Series,"destroy",function(){return i.onSeriesDestroy(this)});t.addEvent(r,"afterDrilldown",function(){c(this);this.focusElement&&this.focusElement.removeFocusBorder()});t.addEvent(r,"drilldown",function(n){n=n.point;var t=n.series;i.lastDrilledDownPoint={x:n.x,y:n.y,seriesName:t?t.name:""}});t.addEvent(r,"drillupall",function(){setTimeout(function(){i.onDrillupAll()},10)})},onDrillupAll:function(){var n=this.lastDrilledDownPoint,t=this.chart,r=n&&p(t,n.seriesName),i;n&&r&&e(n.x)&&e(n.y)&&(i=y(r,n.x,n.y));t.container&&t.container.focus();i&&i.highlight&&i.highlight();t.focusElement&&t.focusElement.removeFocusBorder()},getKeyboardNavigationHandler:function(){var t=this,n=this.keyCodes,i=this.chart,u=i.inverted;return new r(i,{keyCodeMap:[[u?[n.up,n.down]:[n.left,n.right],function(n){return t.onKbdSideways(this,n)}],[u?[n.left,n.right]:[n.up,n.down],function(n){return t.onKbdVertical(this,n)}],[[n.enter,n.space],function(){return i.highlightedPoint&&i.highlightedPoint.firePointEvent("click"),this.response.success}]],init:function(n){return t.onHandlerInit(this,n)},terminate:function(){return t.onHandlerTerminate()}})},onKbdSideways:function(n,t){var i=this.keyCodes;return this.attemptHighlightAdjacentPoint(n,t===i.right||t===i.down)},onKbdVertical:function(n,t){var r=this.chart,i=this.keyCodes;return(t=t===i.down||t===i.right,i=r.options.accessibility.keyboardNavigation.seriesNavigation,i.mode&&"serialize"===i.mode)?this.attemptHighlightAdjacentPoint(n,t):(r[r.highlightedPoint&&r.highlightedPoint.series.keyboardMoveVertical?"highlightAdjacentPointVertical":"highlightAdjacentSeries"](t),n.response.success)},onHandlerInit:function(n,t){var i=this.chart,r;if(0<t)c(i);else for(t=i.series.length;t--&&!(i.highlightedPoint=i.series[t].points[i.series[t].points.length-1],r=i.series[t].highlightFirstValidPoint()););return n.response.success},onHandlerTerminate:function(){var t,i,r=this.chart,n=r.highlightedPoint;null===(t=r.tooltip)||void 0===t?void 0:t.hide(0);null===(i=null===n||void 0===n?void 0:n.onMouseOut)||void 0===i?void 0:i.call(n);delete r.highlightedPoint},attemptHighlightAdjacentPoint:function(n,t){var i=this.chart,r=i.options.accessibility.keyboardNavigation.wrapAround;return i.highlightAdjacentPoint(t)?n.response.success:r?n.init(t?1:-1):n.response[t?"next":"prev"]},onSeriesDestroy:function(n){var t=this.chart;t.highlightedPoint&&t.highlightedPoint.series===n&&(delete t.highlightedPoint,t.focusElement&&t.focusElement.removeFocusBorder())},destroy:function(){this.eventProvider.removeAddedEvents()}}),l});i(t,"modules/accessibility/components/AnnotationsA11y.js",[t["parts/Utilities.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t){function i(n){return(n.annotations||[]).reduce(function(n,t){var i;return!1!==(null===(i=t.options)||void 0===i?void 0:i.visible)&&(n=n.concat(t.labels)),n},[])}function r(n){var t,i,r,u,f=null===(i=null===(t=n.options)||void 0===t?void 0:t.accessibility)||void 0===i?void 0:i.description;return f?f:(null===(u=null===(r=n.graphic)||void 0===r?void 0:r.text)||void 0===u?void 0:u.textStr)||""}function u(n){var u,t,i=null===(t=null===(u=n.options)||void 0===u?void 0:u.accessibility)||void 0===t?void 0:t.description,f;return i?i:(u=n.chart,t=r(n),i=n.points.filter(function(n){return!!n.graphic}).map(function(n){var t,i,r,u;return(i=null===(t=null===n||void 0===n?void 0:n.accessibility)||void 0===t?void 0:t.valueDescription)||(i=(null===(u=null===(r=null===n||void 0===n?void 0:n.graphic)||void 0===r?void 0:r.element)||void 0===u?void 0:u.getAttribute("aria-label"))||""),n=(null===n||void 0===n?void 0:n.series.name)||"",(n?n+", ":"")+"data point "+i}).filter(function(n){return!!n}),f=i.length,n="accessibility.screenReaderSection.annotations.description"+(1<f?"MultiplePoints":f?"SinglePoint":"NoPoints"),t={annotationText:t,numPoints:f,annotationPoint:i[0],additionalAnnotationPoints:i.slice(1)},u.langFormat(n,t))}function f(n){return i(n).map(function(n){return(n=o(s(u(n))))?"<li>"+n+"<\/li>":""})}var e=n.inArray,o=t.escapeStringForHTML,s=t.stripHTMLTagsFromString;return{getAnnotationsInfoHTML:function(n){var t=n.annotations;return t&&t.length?"<ul>"+f(n).join(" ")+"<\/ul>":""},getAnnotationLabelDescription:u,getAnnotationListItems:f,getPointAnnotationTexts:function(n){var t=i(n.series.chart).filter(function(t){return-1<e(n,t.points)});return t.length?t.map(function(n){return""+r(n)}):[]}}});i(t,"modules/accessibility/components/SeriesComponent/SeriesDescriber.js",[t["parts/Utilities.js"],t["modules/accessibility/components/AnnotationsA11y.js"],t["modules/accessibility/utils/htmlUtilities.js"],t["modules/accessibility/utils/chartUtilities.js"],t["parts/Tooltip.js"]],function(n,t,i,r,u){function k(n){var t=n.index;return n.series&&n.series.data&&e(t)?rt(n.series.data,function(n){return!!(n&&"undefined"!=typeof n.index&&n.index>t&&n.graphic&&n.graphic.element)})||null:null}function o(n){var t=n.chart.options.accessibility.series.pointDescriptionEnabledThreshold;return!!(!1!==t&&n.points&&n.points.length>=t)}function d(n){var t=n.options.accessibility||{};return!o(n)&&!t.exposeAsGroupOnly}function g(n){var t=n.chart.options.accessibility.keyboardNavigation.seriesNavigation;return!(!n.points||!(n.points.length<t.pointNavigationEnabledThreshold||!1===t.pointNavigationEnabledThreshold))}function s(n,t){var i=n.series.chart,r=i.options.accessibility.point||{};return n=n.series.tooltipOptions||{},i=i.options.lang,ft(t)?et(t,r.valueDecimals||n.valueDecimals||-1,i.decimalPoint,i.accessibility.thousandsSep||i.thousandsSep):t}function nt(n){var t=(n.options.accessibility||{}).description;return t&&n.chart.langFormat("accessibility.series.description",{description:t,series:n})||""}function h(n,t){return n.chart.langFormat("accessibility.series."+t+"Description",{name:ht(n[t]),series:n})}function c(n){var t=n.series,r=t.chart,i=r.options.accessibility.point||{};if(t.xAxis&&t.xAxis.dateTime)return t=u.prototype.getXDateFormat.call({getDateFormat:u.prototype.getDateFormat,chart:r},n,r.options.tooltip,t.xAxis),i=i.dateFormatter&&i.dateFormatter(n)||i.dateFormat||t,r.time.dateFormat(i,n.x,void 0)}function l(n){var t=c(n),i=(n.series.xAxis||{}).categories&&e(n.category)&&(""+n.category).replace("<br/>"," "),r=n.id&&0>n.id.indexOf("highcharts-"),u="x, "+n.x;return n.name||t||i||(r?n.id:u)}function tt(n,t,i){var r=t||"",u=i||"";return n.series.pointArrayMap.reduce(function(t,i){t+=t.length?", ":"";var e=s(n,f(n[i],n.options[i]));return t+(i+": "+r+e+u)},"")}function a(n){var i=n.series,t=i.chart.options.accessibility.point||{},r=i.tooltipOptions||{},u=t.valuePrefix||r.valuePrefix||"";return t=t.valueSuffix||r.valueSuffix||"",r=s(n,n["undefined"!=typeof n.value?"value":"y"]),n.isNull?i.chart.langFormat("accessibility.series.nullPointValue",{point:n}):i.pointArrayMap?tt(n,u,t):u+r+t}function v(n){var t=n.series,i=t.chart,r=i.options.accessibility.point.valueDescriptionFormat,u=(t=f(t.xAxis&&t.xAxis.options.accessibility&&t.xAxis.options.accessibility.enabled,!i.angular))?l(n):"";return n={point:n,index:e(n.index)?n.index+1:"",xDescription:u,value:a(n),separator:t?", ":""},ut(r,n,i)}function y(n){var i=n.series,t=i.chart,f=v(n),r=n.options&&n.options.accessibility&&n.options.accessibility.description,u,e;return r=r?" "+r:"",i=1<t.series.length&&i.name?" "+i.name+".":"",t=n.series.chart,u=ot(n),e={point:n,annotations:u},t=u.length?t.langFormat("accessibility.series.pointAnnotationsDescription",e):"",n.accessibility=n.accessibility||{},n.accessibility.valueDescription=f,f+r+i+(t?" "+t:"")}function it(n){var t=d(n),i=g(n);(t||i)&&n.points.forEach(function(n){var r,u,i;(r=n.graphic&&n.graphic.element)||!(r=n.series&&n.series.is("sunburst"),r=n.isNull&&!r)||(u=n.series,i=k(n),u=(r=i&&i.graphic)?r.parentGroup:u.graph||u.group,i=i?{x:f(n.plotX,i.plotX,0),y:f(n.plotY,i.plotY,0)}:{x:f(n.plotX,0),y:f(n.plotY,0)},i=n.series.chart.renderer.rect(i.x,i.y,1,1),i.attr({"class":"highcharts-a11y-dummy-point",fill:"none",opacity:0,"fill-opacity":0,"stroke-opacity":0}),u&&u.element?(n.graphic=i,n.hasDummyGraphic=!0,i.add(u),u.element.insertBefore(i.element,r?r.element:null),r=i.element):r=void 0);r&&(r.setAttribute("tabindex","-1"),r.style.outline="0",t?(i=n.series,u=i.chart.options.accessibility.point||{},i=i.options.accessibility||{},n=w(b(i.pointDescriptionFormatter&&i.pointDescriptionFormatter(n)||u.descriptionFormatter&&u.descriptionFormatter(n)||y(n))),r.setAttribute("role","img"),r.setAttribute("aria-label",n)):r.setAttribute("aria-hidden",!0))})}function p(n){var t=n.chart,i=t.types||[],r=nt(n),u=function(i){return t[i]&&1<t[i].length&&n[i]},e=h(n,"xAxis"),o=h(n,"yAxis"),f={name:n.name||"",ix:n.index+1,numSeries:t.series&&t.series.length,numPoints:n.points&&n.points.length,series:n};return i=1<i.length?"Combination":"",(t.langFormat("accessibility.series.summary."+n.type+i,f)||t.langFormat("accessibility.series.summary.default"+i,f))+(r?" "+r:"")+(u("yAxis")?" "+o:"")+(u("xAxis")?" "+e:"")}var rt=n.find,ut=n.format,ft=n.isNumber,et=n.numberFormat,f=n.pick,e=n.defined,ot=t.getPointAnnotationTexts,w=i.escapeStringForHTML,st=i.reverseChildNodes,b=i.stripHTMLTagsFromString,ht=r.getAxisDescription,ct=r.getSeriesFirstPointElement,lt=r.getSeriesA11yElement,at=r.unhideChartElementFromAT;return{describeSeries:function(n){var t=n.chart,u=ct(n),i=lt(n),r=t.is3d&&t.is3d(),f;i&&(i.lastChild!==u||r||st(i),it(n),at(t,i),r=n.chart,t=r.options.chart||{},u=1<r.series.length,r=r.options.accessibility.series.describeSingleSeries,f=(n.options.accessibility||{}).exposeAsGroupOnly,t.options3d&&t.options3d.enabled&&u||!(u||r||f||o(n))?i.setAttribute("aria-label",""):(t=n.chart.options.accessibility,u=t.landmarkVerbosity,(n.options.accessibility||{}).exposeAsGroupOnly?i.setAttribute("role","img"):"all"===u&&i.setAttribute("role","region"),i.setAttribute("tabindex","-1"),i.style.outline="0",i.setAttribute("aria-label",w(b(t.series.descriptionFormatter&&t.series.descriptionFormatter(n)||p(n))))))},defaultPointDescriptionFormatter:y,defaultSeriesDescriptionFormatter:p,getPointA11yTimeDescription:c,getPointXDescription:l,getPointValue:a,getPointValueDescription:v}});i(t,"modules/accessibility/utils/Announcer.js",[t["parts/Globals.js"],t["modules/accessibility/utils/DOMElementProvider.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t,i){var r=i.visuallyHideElement;return i=function(){function n(n,i){this.chart=n;this.domElementProvider=new t;this.announceRegion=this.addAnnounceRegion(i)}return n.prototype.destroy=function(){this.domElementProvider.destroyCreatedElements()},n.prototype.announce=function(n){var t=this;this.announceRegion.innerHTML=n;this.clearAnnouncementRegionTimer&&clearTimeout(this.clearAnnouncementRegionTimer);this.clearAnnouncementRegionTimer=setTimeout(function(){t.announceRegion.innerHTML="";delete t.clearAnnouncementRegionTimer},1e3)},n.prototype.addAnnounceRegion=function(n){var i=this.chart.renderTo,t=this.domElementProvider.createElement("div");return t.setAttribute("aria-hidden",!1),t.setAttribute("aria-live",n),r(t),i.insertBefore(t,i.firstChild),t},n}(),n.Announcer=i});i(t,"modules/accessibility/components/SeriesComponent/NewDataAnnouncer.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/components/SeriesComponent/SeriesDescriber.js"],t["modules/accessibility/utils/Announcer.js"],t["modules/accessibility/utils/EventProvider.js"]],function(n,t,i,r,u,f){function o(n){var t=n.series.data.filter(function(t){return n.x===t.x&&n.y===t.y});return 1===t.length?t[0]:n}function s(n,t){var i=(n||[]).concat(t||[]).reduce(function(n,t){return n[t.name+t.index]=t,n},{});return Object.keys(i).map(function(n){return i[n]})}var h=t.extend,e=t.defined,c=i.getChartTitle,l=r.defaultPointDescriptionFormatter,a=r.defaultSeriesDescriptionFormatter;return t=function(n){this.chart=n},h(t.prototype,{init:function(){var n=this.chart,t=n.options.accessibility.announceNewData.interruptUser?"assertive":"polite";this.lastAnnouncementTime=0;this.dirty={allSeries:{}};this.eventProvider=new f;this.announcer=new u(n,t);this.addEventListeners()},destroy:function(){this.eventProvider.removeAddedEvents();this.announcer.destroy()},addEventListeners:function(){var t=this,r=this.chart,i=this.eventProvider;i.addEvent(r,"afterDrilldown",function(){t.lastAnnouncementTime=0});i.addEvent(n.Series,"updatedData",function(){t.onSeriesUpdatedData(this)});i.addEvent(r,"afterAddSeries",function(n){t.onSeriesAdded(n.series)});i.addEvent(n.Series,"addPoint",function(n){t.onPointAdded(n.point)});i.addEvent(r,"redraw",function(){t.announceDirtyData()})},onSeriesUpdatedData:function(n){var t=this.chart;n.chart===t&&t.options.accessibility.announceNewData.enabled&&(this.dirty.hasDirty=!0,this.dirty.allSeries[n.name+n.index]=n)},onSeriesAdded:function(n){this.chart.options.accessibility.announceNewData.enabled&&(this.dirty.hasDirty=!0,this.dirty.allSeries[n.name+n.index]=n,this.dirty.newSeries=e(this.dirty.newSeries)?void 0:n)},onPointAdded:function(n){var t=n.series.chart;this.chart===t&&t.options.accessibility.announceNewData.enabled&&(this.dirty.newPoint=e(this.dirty.newPoint)?void 0:n)},announceDirtyData:function(){var t=this,n;this.chart.options.accessibility.announceNewData&&this.dirty.hasDirty&&(n=this.dirty.newPoint,n&&(n=o(n)),this.queueAnnouncement(Object.keys(this.dirty.allSeries).map(function(n){return t.dirty.allSeries[n]}),this.dirty.newSeries,n),this.dirty={allSeries:{}})},queueAnnouncement:function(n,t,i){var r=this,u=this.chart.options.accessibility.announceNewData,f;u.enabled&&(f=+new Date,u=Math.max(0,u.minAnnounceInterval-(f-this.lastAnnouncementTime)),n=s(this.queuedAnnouncement&&this.queuedAnnouncement.series,n),(t=this.buildAnnouncementMessage(n,t,i))&&(this.queuedAnnouncement&&clearTimeout(this.queuedAnnouncementTimer),this.queuedAnnouncement={time:f,message:t,series:n},this.queuedAnnouncementTimer=setTimeout(function(){r&&r.announcer&&(r.lastAnnouncementTime=+new Date,r.announcer.announce(r.queuedAnnouncement.message),delete r.queuedAnnouncement,delete r.queuedAnnouncementTimer)},u)))},buildAnnouncementMessage:function(t,i,r){var f=this.chart,u=f.options.accessibility.announceNewData;return u.announcementFormatter&&(t=u.announcementFormatter(t,i,r),!1!==t)?t.length?t:null:(t=n.charts&&1<n.charts.length?"Multiple":"Single",t=i?"newSeriesAnnounce"+t:r?"newPointAnnounce"+t:"newDataAnnounce",u=c(f),f.langFormat("accessibility.announceNewData."+t,{chartTitle:u,seriesDesc:i?a(i):null,pointDesc:r?l(r):null,point:r,series:i}))}}),t});i(t,"modules/accessibility/components/SeriesComponent/forcedMarkers.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){function r(n){i(!0,n,{marker:{enabled:!0,states:{normal:{opacity:0}}}})}var u=t.addEvent,i=t.merge;return function(){u(n.Series,"render",function(){var n=this.options,f=this.chart.options.accessibility.enabled,t=!1!==(this.options.accessibility&&this.options.accessibility.enabled),e=this.chart.options.accessibility,u;if(e=this.points.length<e.series.pointDescriptionEnabledThreshold||!1===e.series.pointDescriptionEnabledThreshold,u=this.chart.options.accessibility.keyboardNavigation.seriesNavigation,u=this.points.length<u.pointNavigationEnabledThreshold||!1===u.pointNavigationEnabledThreshold,f&&t&&(e||u)){if(n.marker&&!1===n.marker.enabled&&(this.a11yMarkersForced=!0,r(this.options)),this._hasPointMarkers&&this.points&&this.points.length)for(n=this.points,f=n.length;f--;)t=n[f].options,t.marker&&(t.marker.enabled?i(!0,t.marker,{states:{normal:{opacity:t.marker.states&&t.marker.states.normal&&t.marker.states.normal.opacity||1}}}):r(t))}else this.a11yMarkersForced&&this.resetMarkerOptions&&(delete this.a11yMarkersForced,n=this.resetA11yMarkerOptions,i(!0,this.options,{marker:{enabled:n.enabled,states:{normal:{opacity:n.states&&n.states.normal&&n.states.normal.opacity}}}}))});u(n.Series,"afterSetOptions",function(n){this.resetA11yMarkerOptions=i(n.options.marker||{},this.userOptions.marker||{})})}});i(t,"modules/accessibility/components/SeriesComponent/SeriesComponent.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/AccessibilityComponent.js"],t["modules/accessibility/components/SeriesComponent/SeriesKeyboardNavigation.js"],t["modules/accessibility/components/SeriesComponent/NewDataAnnouncer.js"],t["modules/accessibility/components/SeriesComponent/forcedMarkers.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/components/SeriesComponent/SeriesDescriber.js"],t["parts/Tooltip.js"]],function(n,t,i,r,u,f,e,o,s){t=t.extend;var h=e.hideSeriesFromAT,c=o.describeSeries;return n.SeriesAccessibilityDescriber=o,f(),n=function(){},n.prototype=new i,t(n.prototype,{init:function(){this.newDataAnnouncer=new u(this.chart);this.newDataAnnouncer.init();this.keyboardNavigation=new r(this.chart,this.keyCodes);this.keyboardNavigation.init();this.hideTooltipFromATWhenShown();this.hideSeriesLabelsFromATWhenShown()},hideTooltipFromATWhenShown:function(){var n=this;this.addEvent(s,"refresh",function(){this.chart===n.chart&&this.label&&this.label.element&&this.label.element.setAttribute("aria-hidden",!0)})},hideSeriesLabelsFromATWhenShown:function(){this.addEvent(this.chart,"afterDrawSeriesLabels",function(){this.series.forEach(function(n){n.labelBySeries&&n.labelBySeries.attr("aria-hidden",!0)})})},onChartRender:function(){this.chart.series.forEach(function(n){!1!==(n.options.accessibility&&n.options.accessibility.enabled)&&n.visible?c(n):h(n)})},getKeyboardNavigation:function(){return this.keyboardNavigation.getKeyboardNavigationHandler()},destroy:function(){this.newDataAnnouncer.destroy();this.keyboardNavigation.destroy()}}),n});i(t,"modules/accessibility/components/ZoomComponent.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/AccessibilityComponent.js"],t["modules/accessibility/KeyboardNavigationHandler.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t,i,r,u,f){var o=t.extend,s=t.pick,h=u.unhideChartElementFromAT,c=f.setElAttrs,e=f.removeElement;return n.Axis.prototype.panStep=function(n,t){var r=t||3,i,u;t=this.getExtremes();i=(t.max-t.min)/r*n;r=t.max+i;i=t.min+i;u=r-i;0>n&&i<t.dataMin?(i=t.dataMin,r=i+u):0<n&&r>t.dataMax&&(r=t.dataMax,i=r-u);this.setExtremes(i,r)},n=function(){},n.prototype=new i,o(n.prototype,{init:function(){var n=this,t=this.chart;["afterShowResetZoom","afterDrilldown","drillupall"].forEach(function(i){n.addEvent(t,i,function(){n.updateProxyOverlays()})})},onChartUpdate:function(){var n=this.chart,t=this;n.mapNavButtons&&n.mapNavButtons.forEach(function(i,r){h(n,i.element);t.setMapNavButtonAttrs(i.element,"accessibility.zoom.mapZoom"+(r?"Out":"In"))})},setMapNavButtonAttrs:function(n,t){var i=this.chart;t=i.langFormat(t,{chart:i});c(n,{tabindex:-1,role:"button","aria-label":t})},onChartRender:function(){this.updateProxyOverlays()},updateProxyOverlays:function(){var n=this.chart;e(this.drillUpProxyGroup);e(this.resetZoomProxyGroup);n.resetZoomButton&&this.recreateProxyButtonAndGroup(n.resetZoomButton,"resetZoomProxyButton","resetZoomProxyGroup",n.langFormat("accessibility.zoom.resetZoomButton",{chart:n}));n.drillUpButton&&this.recreateProxyButtonAndGroup(n.drillUpButton,"drillUpProxyButton","drillUpProxyGroup",n.langFormat("accessibility.drillUpButton",{chart:n,buttonText:n.getDrilldownBackText()}))},recreateProxyButtonAndGroup:function(n,t,i,r){e(this[i]);this[i]=this.addProxyGroup();this[t]=this.createProxyButton(n,this[i],{"aria-label":r,tabindex:-1})},getMapZoomNavigation:function(){var n=this.keyCodes,t=this.chart,i=this;return new r(t,{keyCodeMap:[[[n.up,n.down,n.left,n.right],function(n){return i.onMapKbdArrow(this,n)}],[[n.tab],function(n,t){return i.onMapKbdTab(this,t)}],[[n.space,n.enter],function(){return i.onMapKbdClick(this)}]],validate:function(){return!!(t.mapZoom&&t.mapNavButtons&&t.mapNavButtons.length)},init:function(n){return i.onMapNavInit(n)}})},onMapKbdArrow:function(n,t){var i=this.keyCodes;return this.chart[t===i.up||t===i.down?"yAxis":"xAxis"][0].panStep(t===i.left||t===i.up?-1:1),n.response.success},onMapKbdTab:function(n,t){var i=this.chart,r;return(n=n.response,r=(t=t.shiftKey)&&!this.focusedMapNavButtonIx||!t&&this.focusedMapNavButtonIx,i.mapNavButtons[this.focusedMapNavButtonIx].setState(0),r)?(i.mapZoom(),n[t?"prev":"next"]):(this.focusedMapNavButtonIx+=t?-1:1,t=i.mapNavButtons[this.focusedMapNavButtonIx],i.setFocusToElement(t.box,t.element),t.setState(2),n.success)},onMapKbdClick:function(n){return this.fakeClickEvent(this.chart.mapNavButtons[this.focusedMapNavButtonIx].element),n.response.success},onMapNavInit:function(n){var i=this.chart,t=i.mapNavButtons[0],r=i.mapNavButtons[1];t=0<n?t:r;i.setFocusToElement(t.box,t.element);t.setState(2);this.focusedMapNavButtonIx=0<n?0:1},simpleButtonNavigation:function(n,t,i){var u=this.keyCodes,e=this,f=this.chart;return new r(f,{keyCodeMap:[[[u.tab,u.up,u.down,u.left,u.right],function(n,t){return this.response[n===u.tab&&t.shiftKey||n===u.left||n===u.up?"prev":"next"]}],[[u.space,u.enter],function(){var n=i(this,f);return s(n,this.response.success)}]],validate:function(){return f[n]&&f[n].box&&e[t]},init:function(){f.setFocusToElement(f[n].box,e[t])}})},getKeyboardNavigation:function(){return[this.simpleButtonNavigation("resetZoomButton","resetZoomProxyButton",function(n,t){t.zoomOut()}),this.simpleButtonNavigation("drillUpButton","drillUpProxyButton",function(n,t){return t.drillUp(),n.response.prev}),this.getMapZoomNavigation()]}}),n});i(t,"modules/accessibility/components/RangeSelectorComponent.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/AccessibilityComponent.js"],t["modules/accessibility/KeyboardNavigationHandler.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t,i,r,u,f){t=t.extend;var e=u.unhideChartElementFromAT,o=f.setElAttrs;return n.Chart.prototype.highlightRangeSelectorButton=function(n){var t=this.rangeSelector.buttons,i=this.highlightedRangeSelectorItemIx;return"undefined"!=typeof i&&t[i]&&t[i].setState(this.oldRangeSelectorItemState||0),this.highlightedRangeSelectorItemIx=n,t[n]?(this.setFocusToElement(t[n].box,t[n].element),this.oldRangeSelectorItemState=t[n].state,t[n].setState(2),!0):!1},n=function(){},n.prototype=new i,t(n.prototype,{onChartUpdate:function(){var t=this.chart,i=this,n=t.rangeSelector;n&&(n.buttons&&n.buttons.length&&n.buttons.forEach(function(n){e(t,n.element);i.setRangeButtonAttrs(n)}),n.maxInput&&n.minInput&&["minInput","maxInput"].forEach(function(r,u){(r=n[r])&&(e(t,r),i.setRangeInputAttrs(r,"accessibility.rangeSelector."+(u?"max":"min")+"InputLabel"))}))},setRangeButtonAttrs:function(n){var t=this.chart;t=t.langFormat("accessibility.rangeSelector.buttonText",{chart:t,buttonText:n.text&&n.text.textStr});o(n.element,{tabindex:-1,role:"button","aria-label":t})},setRangeInputAttrs:function(n,t){var i=this.chart;o(n,{tabindex:-1,role:"textbox","aria-label":i.langFormat(t,{chart:i})})},getRangeSelectorButtonNavigation:function(){var n=this.chart,t=this.keyCodes,i=this;return new r(n,{keyCodeMap:[[[t.left,t.right,t.up,t.down],function(n){return i.onButtonNavKbdArrowKey(this,n)}],[[t.enter,t.space],function(){return i.onButtonNavKbdClick(this)}]],validate:function(){return n.rangeSelector&&n.rangeSelector.buttons&&n.rangeSelector.buttons.length},init:function(t){var i=n.rangeSelector.buttons.length-1;n.highlightRangeSelectorButton(0<t?0:i)}})},onButtonNavKbdArrowKey:function(n,t){var i=n.response,u=this.keyCodes,r=this.chart,f=r.options.accessibility.keyboardNavigation.wrapAround;return t=t===u.left||t===u.up?-1:1,r.highlightRangeSelectorButton(r.highlightedRangeSelectorItemIx+t)?i.success:f?(n.init(t),i.success):i[0<t?"next":"prev"]},onButtonNavKbdClick:function(n){n=n.response;var t=this.chart;return 3!==t.oldRangeSelectorItemState&&this.fakeClickEvent(t.rangeSelector.buttons[t.highlightedRangeSelectorItemIx].element),n.success},getRangeSelectorInputNavigation:function(){var n=this.chart,t=this.keyCodes,i=this;return new r(n,{keyCodeMap:[[[t.tab,t.up,t.down],function(n,r){return i.onInputKbdMove(this,n===t.tab&&r.shiftKey||n===t.up?-1:1)}]],validate:function(){return n.rangeSelector&&n.rangeSelector.inputGroup&&"hidden"!==n.rangeSelector.inputGroup.element.getAttribute("visibility")&&!1!==n.options.rangeSelector.inputEnabled&&n.rangeSelector.minInput&&n.rangeSelector.maxInput},init:function(n){i.onInputNavInit(n)},terminate:function(){i.onInputNavTerminate()}})},onInputKbdMove:function(n,t){var r=this.chart,i;return(n=n.response,i=r.highlightedInputRangeIx+=t,1<i||0>i)?n[0<t?"next":"prev"]:(r.rangeSelector[i?"maxInput":"minInput"].focus(),n.success)},onInputNavInit:function(n){var t=this.chart;n=0<n?0:1;t.highlightedInputRangeIx=n;t.rangeSelector[n?"maxInput":"minInput"].focus()},onInputNavTerminate:function(){var n=this.chart.rangeSelector||{};n.maxInput&&n.hideInput("max");n.minInput&&n.hideInput("min")},getKeyboardNavigation:function(){return[this.getRangeSelectorButtonNavigation(),this.getRangeSelectorInputNavigation()]}}),n});i(t,"modules/accessibility/components/InfoRegionsComponent.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/AccessibilityComponent.js"],t["modules/accessibility/utils/Announcer.js"],t["modules/accessibility/components/AnnotationsA11y.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/utils/htmlUtilities.js"]],function(n,t,i,r,u,f,e){function c(n){return n.replace(/&lt;(h[1-7]|p|div|ul|ol|li)&gt;/g,"<$1>").replace(/&lt;&#x2F;(h[1-7]|p|div|ul|ol|li|a|button)&gt;/g,"<\/$1>").replace(/&lt;(div|a|button) id=&quot;([a-zA-Z\-0-9#]*?)&quot;&gt;/g,'<$1 id="$2">')}var v=n.win.document,y=t.extend,p=t.format,w=t.pick,b=u.getAnnotationsInfoHTML,k=f.unhideChartElementFromAT,o=f.getChartTitle,d=f.getAxisDescription,g=e.addClass,s=e.setElAttrs,l=e.escapeStringForHTML,a=e.stripHTMLTagsFromString,h=e.getElement,nt=e.visuallyHideElement;return n.Chart.prototype.getTypeDescription=function(n){var i=n[0],t=this.series&&this.series[0]||{},r;return(t={numSeries:this.series.length,numPoints:t.points&&t.points.length,chart:this,mapTitle:t.mapTitle},!i)?this.langFormat("accessibility.chartTypes.emptyChart",t):"map"===i?t.mapTitle?this.langFormat("accessibility.chartTypes.mapTypeDescription",t):this.langFormat("accessibility.chartTypes.unknownMap",t):1<this.types.length?this.langFormat("accessibility.chartTypes.combinationChart",t):(n=n[0],i=this.langFormat("accessibility.seriesTypeDescriptions."+n,t),r=this.series&&2>this.series.length?"Single":"Multiple",(this.langFormat("accessibility.chartTypes."+n+r,t)||this.langFormat("accessibility.chartTypes.default"+r,t))+(i?" "+i:""))},t=function(){},t.prototype=new i,y(t.prototype,{init:function(){var n=this.chart,t=this;this.initRegionsDefinitions();this.addEvent(n,"afterGetTable",function(n){t.onDataTableCreated(n)});this.addEvent(n,"afterViewData",function(n){t.dataTableDiv=n;setTimeout(function(){t.focusDataTable()},300)});this.announcer=new r(n,"assertive")},initRegionsDefinitions:function(){var n=this;this.screenReaderSections={before:{element:null,buildContent:function(t){var i=t.options.accessibility.screenReaderSection.beforeChartFormatter;return i?i(t):n.defaultBeforeChartFormatter(t)},insertIntoDOM:function(n,t){t.renderTo.insertBefore(n,t.renderTo.firstChild)},afterInserted:function(){"undefined"!=typeof n.sonifyButtonId&&n.initSonifyButton(n.sonifyButtonId);"undefined"!=typeof n.dataTableButtonId&&n.initDataTableButton(n.dataTableButtonId)}},after:{element:null,buildContent:function(t){var i=t.options.accessibility.screenReaderSection.afterChartFormatter;return i?i(t):n.defaultAfterChartFormatter()},insertIntoDOM:function(n,t){t.renderTo.insertBefore(n,t.container.nextSibling)}}}},onChartRender:function(){var n=this;this.linkedDescriptionElement=this.getLinkedDescriptionElement();this.setLinkedDescriptionAttrs();Object.keys(this.screenReaderSections).forEach(function(t){n.updateScreenReaderSection(t)})},getLinkedDescriptionElement:function(){var n=this.chart.options.accessibility.linkedDescription;if(n){if("string"!=typeof n)return n;if(n=p(n,this.chart),n=v.querySelectorAll(n),1===n.length)return n[0]}},setLinkedDescriptionAttrs:function(){var n=this.linkedDescriptionElement;n&&(n.setAttribute("aria-hidden","true"),g(n,"highcharts-linked-description"))},updateScreenReaderSection:function(n){var u=this.chart,t=this.screenReaderSections[n],f=t.buildContent(u),i=t.element=t.element||this.createElement("div"),r=i.firstChild||this.createElement("div");this.setScreenReaderSectionAttribs(i,n);r.innerHTML=f;i.appendChild(r);t.insertIntoDOM(i,u);nt(r);k(u,r);t.afterInserted&&t.afterInserted()},setScreenReaderSectionAttribs:function(n,t){var i=this.chart,r=i.langFormat("accessibility.screenReaderSection."+t+"RegionLabel",{chart:i});s(n,{id:"highcharts-screen-reader-region-"+t+"-"+i.index,"aria-label":r});n.style.position="relative";"all"===i.options.accessibility.landmarkVerbosity&&r&&n.setAttribute("role","region")},defaultBeforeChartFormatter:function(){var i,t=this.chart,e=t.options.accessibility.screenReaderSection.beforeChartFormat,r=this.getAxesDescription(),s=t.sonify&&(null===(i=t.options.sonification)||void 0===i?void 0:i.enabled);i="highcharts-a11y-sonify-data-btn-"+t.index;var u="hc-linkto-highcharts-data-table-"+t.index,f=b(t),h=t.langFormat("accessibility.screenReaderSection.annotations.heading",{chart:t});return r={chartTitle:o(t),typeDescription:this.getTypeDescriptionText(),chartSubtitle:this.getSubtitleText(),chartLongdesc:this.getLongdescText(),xAxisDescription:r.xAxis,yAxisDescription:r.yAxis,playAsSoundButton:s?this.getSonifyButtonText(i):"",viewTableButton:t.getCSV?this.getDataTableButtonText(u):"",annotationsTitle:f?h:"",annotationsList:f},t=n.i18nFormat(e,r,t),this.dataTableButtonId=u,this.sonifyButtonId=i,c(l(t)).replace(/<(\w+)[^>]*?>\s*<\/\1>/g,"")},defaultAfterChartFormatter:function(){var t=this.chart,i=t.options.accessibility.screenReaderSection.afterChartFormat,r={endOfChartMarker:this.getEndOfChartMarkerText()};return t=n.i18nFormat(i,r,t),c(l(t)).replace(/<(\w+)[^>]*?>\s*<\/\1>/g,"")},getLinkedDescription:function(){var n=this.linkedDescriptionElement;return a(n&&n.innerHTML||"")},getLongdescText:function(){var t=this.chart.options,n=t.caption,i;return n=n&&n.text,i=this.getLinkedDescription(),t.accessibility.description||i||n||""},getTypeDescriptionText:function(){var n=this.chart;return n.types?n.options.accessibility.typeDescription||n.getTypeDescription(n.types):""},getDataTableButtonText:function(n){var t=this.chart;return t=t.langFormat("accessibility.table.viewAsDataTableButtonText",{chart:t,chartTitle:o(t)}),'<a id="'+n+'">'+t+"<\/a>"},getSonifyButtonText:function(n){var t,i=this.chart;return!1===(null===(t=i.options.sonification)||void 0===t?void 0:t.enabled)?"":(t=i.langFormat("accessibility.sonification.playAsSoundButtonText",{chart:i,chartTitle:o(i)}),'<button id="'+n+'">'+t+"<\/button>")},getSubtitleText:function(){var n=this.chart.options.subtitle;return a(n&&n.text||"")},getEndOfChartMarkerText:function(){var n=this.chart,t=n.langFormat("accessibility.screenReaderSection.endOfChartMarker",{chart:n});return'<div id="highcharts-end-of-chart-marker-'+n.index+'">'+t+"<\/div>"},onDataTableCreated:function(n){var t=this.chart;t.options.accessibility.enabled&&(this.viewDataTableButton&&this.viewDataTableButton.setAttribute("aria-expanded","true"),n.html=n.html.replace("<table ",'<table tabindex="0" summary="'+t.langFormat("accessibility.table.tableSummary",{chart:t})+'"'))},focusDataTable:function(){var n=this.dataTableDiv;(n=n&&n.getElementsByTagName("table")[0])&&n.focus&&n.focus()},initSonifyButton:function(n){var r=this,t=this.sonifyButton=h(n),i=this.chart,u=function(n){null===t||void 0===t?void 0:t.setAttribute("aria-hidden","true");null===t||void 0===t?void 0:t.setAttribute("aria-label","");n.preventDefault();n.stopPropagation();n=i.langFormat("accessibility.sonification.playAsSoundClickAnnouncement",{chart:i});r.announcer.announce(n);setTimeout(function(){null===t||void 0===t?void 0:t.removeAttribute("aria-hidden");null===t||void 0===t?void 0:t.removeAttribute("aria-label");i.sonify&&i.sonify()},1e3)};t&&i&&(s(t,{tabindex:"-1"}),t.onclick=function(n){var t;((null===(t=i.options.accessibility)||void 0===t?void 0:t.screenReaderSection.onPlayAsSoundClick)||u).call(this,n,i)})},initDataTableButton:function(n){var t=this.viewDataTableButton=h(n),i=this.chart;n=n.replace("hc-linkto-","");t&&(s(t,{role:"button",tabindex:"-1","aria-expanded":!!h(n),href:"#"+n}),t.onclick=i.options.accessibility.screenReaderSection.onViewDataTableClick||function(){i.viewData()})},getAxesDescription:function(){var t=this.chart,i=function(n,i){return n=t[n],1<n.length||n[0]&&w(n[0].options.accessibility&&n[0].options.accessibility.enabled,i)},n=!!t.types&&0>t.types.indexOf("map"),r=!!t.hasCartesianSeries,u=i("xAxis",!t.angular&&r&&n);return i=i("yAxis",r&&n),n={},u&&(n.xAxis=this.getAxisDescriptionText("xAxis")),i&&(n.yAxis=this.getAxisDescriptionText("yAxis")),n},getAxisDescriptionText:function(n){var r=this,i=this.chart,t=i[n];return i.langFormat("accessibility.axis."+n+"Description"+(1<t.length?"Plural":"Singular"),{chart:i,names:t.map(function(n){return d(n)}),ranges:t.map(function(n){return r.getAxisRangeDescription(n)}),numAxes:t.length})},getAxisRangeDescription:function(n){var t=n.options||{};return t.accessibility&&"undefined"!=typeof t.accessibility.rangeDescription?t.accessibility.rangeDescription:n.categories?this.getCategoryAxisRangeDesc(n):!n.dateTime||0!==n.min&&0!==n.dataMin?this.getAxisFromToDescription(n):this.getAxisTimeLengthDesc(n)},getCategoryAxisRangeDesc:function(n){var t=this.chart;return n.dataMax&&n.dataMin?t.langFormat("accessibility.axis.rangeCategories",{chart:t,axis:n,numCategories:n.dataMax-n.dataMin+1}):""},getAxisTimeLengthDesc:function(n){var r=this.chart,t={},i="Seconds",u;return t.Seconds=((n.max||0)-(n.min||0))/1e3,t.Minutes=t.Seconds/60,t.Hours=t.Minutes/60,t.Days=t.Hours/24,["Minutes","Hours","Days"].forEach(function(n){2<t[n]&&(i=n)}),u=t[i].toFixed("Seconds"!==i&&"Minutes"!==i?1:0),r.langFormat("accessibility.axis.timeRange"+i,{chart:r,axis:n,range:u.replace(".0","")})},getAxisFromToDescription:function(n){var t=this.chart,r=t.options.accessibility.screenReaderSection.axisRangeDateFormat,i=function(i){return n.dateTime?t.time.dateFormat(r,n[i]):n[i]};return t.langFormat("accessibility.axis.rangeFromTo",{chart:t,axis:n,rangeFrom:i("min"),rangeTo:i("max")})},destroy:function(){var n;null===(n=this.announcer)||void 0===n?void 0:n.destroy()}}),t});i(t,"modules/accessibility/components/ContainerComponent.js",[t["parts/Globals.js"],t["parts/Utilities.js"],t["modules/accessibility/utils/htmlUtilities.js"],t["modules/accessibility/utils/chartUtilities.js"],t["modules/accessibility/AccessibilityComponent.js"]],function(n,t,i,r,u){var o=n.win.document;n=t.extend;var e=i.stripHTMLTagsFromString,s=r.unhideChartElementFromAT,f=r.getChartTitle;return i=function(){},i.prototype=new u,n(i.prototype,{onChartUpdate:function(){this.handleSVGTitleElement();this.setSVGContainerLabel();this.setGraphicContainerAttrs();this.setRenderToAttrs();this.makeCreditsAccessible()},handleSVGTitleElement:function(){var n=this.chart,r="highcharts-title-"+n.index,i=e(n.langFormat("accessibility.svgContainerTitle",{chartTitle:f(n)})),t;i.length&&(t=this.svgTitleElement=this.svgTitleElement||o.createElementNS("http://www.w3.org/2000/svg","title"),t.textContent=i,t.id=r,n.renderTo.insertBefore(t,n.renderTo.firstChild))},setSVGContainerLabel:function(){var n=this.chart,t=e(n.langFormat("accessibility.svgContainerLabel",{chartTitle:f(n)}));n.renderer.box&&t.length&&n.renderer.box.setAttribute("aria-label",t)},setGraphicContainerAttrs:function(){var n=this.chart,t=n.langFormat("accessibility.graphicContainerLabel",{chartTitle:f(n)});t.length&&n.container.setAttribute("aria-label",t)},setRenderToAttrs:function(){var n=this.chart;"disabled"!==n.options.accessibility.landmarkVerbosity?n.renderTo.setAttribute("role","region"):n.renderTo.removeAttribute("role");n.renderTo.setAttribute("aria-label",n.langFormat("accessibility.chartContainerLabel",{title:f(n),chart:n}))},makeCreditsAccessible:function(){var t=this.chart,n=t.credits;n&&(n.textStr&&n.element.setAttribute("aria-label",e(t.langFormat("accessibility.credits",{creditsStr:n.textStr}))),s(t,n.element))},destroy:function(){this.chart.renderTo.setAttribute("aria-hidden",!0)}}),i});i(t,"modules/accessibility/high-contrast-mode.js",[t["parts/Globals.js"]],function(n){var r=n.isMS,t=n.win,i=t.document;return{isHighContrastModeActive:function(){var n=/(Edg)/.test(t.navigator.userAgent),u;return t.matchMedia&&n?t.matchMedia("(-ms-high-contrast: active)").matches:r&&t.getComputedStyle?(n=i.createElement("div"),n.style.backgroundImage="url(#)",i.body.appendChild(n),u=(n.currentStyle||t.getComputedStyle(n)).backgroundImage,i.body.removeChild(n),"none"===u):!1},setHighContrastTheme:function(n){n.highContrastModeActive=!0;var t=n.options.accessibility.highContrastTheme;n.update(t,!1);n.series.forEach(function(n){var i=t.plotOptions[n.type]||{};n.update({color:i.color||"windowText",colors:[i.color||"windowText"],borderColor:i.borderColor||"window"});n.points.forEach(function(n){n.options&&n.options.color&&n.update({color:i.color||"windowText",borderColor:i.borderColor||"window"},!1)})});n.redraw()}}});i(t,"modules/accessibility/high-contrast-theme.js",[],function(){return{chart:{backgroundColor:"window"},title:{style:{color:"windowText"}},subtitle:{style:{color:"windowText"}},colorAxis:{minColor:"windowText",maxColor:"windowText",stops:[]},colors:["windowText"],xAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},yAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},tooltip:{backgroundColor:"window",borderColor:"windowText",style:{color:"windowText"}},plotOptions:{series:{lineColor:"windowText",fillColor:"window",borderColor:"windowText",edgeColor:"windowText",borderWidth:1,dataLabels:{connectorColor:"windowText",color:"windowText",style:{color:"windowText",textOutline:"none"}},marker:{lineColor:"windowText",fillColor:"windowText"}},pie:{color:"window",colors:["window"],borderColor:"windowText",borderWidth:1},boxplot:{fillColor:"window"},candlestick:{lineColor:"windowText",fillColor:"window"},errorbar:{fillColor:"window"}},legend:{backgroundColor:"window",itemStyle:{color:"windowText"},itemHoverStyle:{color:"windowText"},itemHiddenStyle:{color:"#555"},title:{style:{color:"windowText"}}},credits:{style:{color:"windowText"}},labels:{style:{color:"windowText"}},drilldown:{activeAxisLabelStyle:{color:"windowText"},activeDataLabelStyle:{color:"windowText"}},navigation:{buttonOptions:{symbolStroke:"windowText",theme:{fill:"window"}}},rangeSelector:{buttonTheme:{fill:"window",stroke:"windowText",style:{color:"windowText"},states:{hover:{fill:"window",stroke:"windowText",style:{color:"windowText"}},select:{fill:"#444",stroke:"windowText",style:{color:"windowText"}}}},inputBoxBorderColor:"windowText",inputStyle:{backgroundColor:"window",color:"windowText"},labelStyle:{color:"windowText"}},navigator:{handles:{backgroundColor:"window",borderColor:"windowText"},outlineColor:"windowText",maskFill:"transparent",series:{color:"windowText",lineColor:"windowText"},xAxis:{gridLineColor:"windowText"}},scrollbar:{barBackgroundColor:"#444",barBorderColor:"windowText",buttonArrowColor:"windowText",buttonBackgroundColor:"window",buttonBorderColor:"windowText",rifleColor:"windowText",trackBackgroundColor:"window",trackBorderColor:"windowText"}}});i(t,"modules/accessibility/options/options.js",[],function(){return{accessibility:{enabled:!0,screenReaderSection:{beforeChartFormat:"<h5>{chartTitle}<\/h5><div>{typeDescription}<\/div><div>{chartSubtitle}<\/div><div>{chartLongdesc}<\/div><div>{playAsSoundButton}<\/div><div>{viewTableButton}<\/div><div>{xAxisDescription}<\/div><div>{yAxisDescription}<\/div><div>{annotationsTitle}{annotationsList}<\/div>",afterChartFormat:"{endOfChartMarker}",axisRangeDateFormat:"%Y-%m-%d %H:%M:%S"},series:{describeSingleSeries:!1,pointDescriptionEnabledThreshold:200},point:{valueDescriptionFormat:"{index}. {xDescription}{separator}{value}."},landmarkVerbosity:"all",linkedDescription:'*[data-highcharts-chart="{index}"] + .highcharts-description',keyboardNavigation:{enabled:!0,focusBorder:{enabled:!0,hideBrowserFocusOutline:!0,style:{color:"#335cad",lineWidth:2,borderRadius:3},margin:2},order:["series","zoom","rangeSelector","legend","chartMenu"],wrapAround:!0,seriesNavigation:{skipNullPoints:!0,pointNavigationEnabledThreshold:!1}},announceNewData:{enabled:!1,minAnnounceInterval:5e3,interruptUser:!1}},legend:{accessibility:{enabled:!0,keyboardNavigation:{enabled:!0}}},exporting:{accessibility:{enabled:!0}}}});i(t,"modules/accessibility/options/langOptions.js",[],function(){return{accessibility:{defaultChartTitle:"Chart",chartContainerLabel:"{title}. Highcharts interactive chart.",svgContainerLabel:"Interactive chart",drillUpButton:"{buttonText}",credits:"Chart credits: {creditsStr}",thousandsSep:",",svgContainerTitle:"",graphicContainerLabel:"",screenReaderSection:{beforeRegionLabel:"Chart screen reader information.",afterRegionLabel:"",annotations:{heading:"Chart annotations summary",descriptionSinglePoint:"{annotationText}. Related to {annotationPoint}",descriptionMultiplePoints:"{annotationText}. Related to {annotationPoint}{ Also related to, #each(additionalAnnotationPoints)}",descriptionNoPoints:"{annotationText}"},endOfChartMarker:"End of interactive chart."},sonification:{playAsSoundButtonText:"Play as sound, {chartTitle}",playAsSoundClickAnnouncement:"Play"},legend:{legendLabel:"Toggle series visibility",legendItem:"Toggle visibility of {itemName}"},zoom:{mapZoomIn:"Zoom chart",mapZoomOut:"Zoom out chart",resetZoomButton:"Reset zoom"},rangeSelector:{minInputLabel:"Select start date.",maxInputLabel:"Select end date.",buttonText:"Select range {buttonText}"},table:{viewAsDataTableButtonText:"View as data table, {chartTitle}",tableSummary:"Table representation of chart."},announceNewData:{newDataAnnounce:"Updated data for chart {chartTitle}",newSeriesAnnounceSingle:"New data series: {seriesDesc}",newPointAnnounceSingle:"New data point: {pointDesc}",newSeriesAnnounceMultiple:"New data series in chart {chartTitle}: {seriesDesc}",newPointAnnounceMultiple:"New data point in chart {chartTitle}: {pointDesc}"},seriesTypeDescriptions:{boxplot:"Box plot charts are typically used to display groups of statistical data. Each data point in the chart can have up to 5 values: minimum, lower quartile, median, upper quartile, and maximum.",arearange:"Arearange charts are line charts displaying a range between a lower and higher value for each point.",areasplinerange:"These charts are line charts displaying a range between a lower and higher value for each point.",bubble:"Bubble charts are scatter charts where each data point also has a size value.",columnrange:"Columnrange charts are column charts displaying a range between a lower and higher value for each point.",errorbar:"Errorbar series are used to display the variability of the data.",funnel:"Funnel charts are used to display reduction of data in stages.",pyramid:"Pyramid charts consist of a single pyramid with item heights corresponding to each point value.",waterfall:"A waterfall chart is a column chart where each column contributes towards a total end value."},chartTypes:{emptyChart:"Empty chart",mapTypeDescription:"Map of {mapTitle} with {numSeries} data series.",unknownMap:"Map of unspecified region with {numSeries} data series.",combinationChart:"Combination chart with {numSeries} data series.",defaultSingle:"Chart with {numPoints} data {#plural(numPoints, points, point)}.",defaultMultiple:"Chart with {numSeries} data series.",splineSingle:"Line chart with {numPoints} data {#plural(numPoints, points, point)}.",splineMultiple:"Line chart with {numSeries} lines.",lineSingle:"Line chart with {numPoints} data {#plural(numPoints, points, point)}.",lineMultiple:"Line chart with {numSeries} lines.",columnSingle:"Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.",columnMultiple:"Bar chart with {numSeries} data series.",barSingle:"Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.",barMultiple:"Bar chart with {numSeries} data series.",pieSingle:"Pie chart with {numPoints} {#plural(numPoints, slices, slice)}.",pieMultiple:"Pie chart with {numSeries} pies.",scatterSingle:"Scatter chart with {numPoints} {#plural(numPoints, points, point)}.",scatterMultiple:"Scatter chart with {numSeries} data series.",boxplotSingle:"Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.",boxplotMultiple:"Boxplot with {numSeries} data series.",bubbleSingle:"Bubble chart with {numPoints} {#plural(numPoints, bubbles, bubble)}.",bubbleMultiple:"Bubble chart with {numSeries} data series."},axis:{xAxisDescriptionSingular:"The chart has 1 X axis displaying {names[0]}. {ranges[0]}",xAxisDescriptionPlural:"The chart has {numAxes} X axes displaying {#each(names, -1) }and {names[-1]}.",yAxisDescriptionSingular:"The chart has 1 Y axis displaying {names[0]}. {ranges[0]}",yAxisDescriptionPlural:"The chart has {numAxes} Y axes displaying {#each(names, -1) }and {names[-1]}.",timeRangeDays:"Range: {range} days.",timeRangeHours:"Range: {range} hours.",timeRangeMinutes:"Range: {range} minutes.",timeRangeSeconds:"Range: {range} seconds.",rangeFromTo:"Range: {rangeFrom} to {rangeTo}.",rangeCategories:"Range: {numCategories} categories."},exporting:{chartMenuLabel:"Chart menu",menuButtonLabel:"View chart menu",exportRegionLabel:"Chart menu"},series:{summary:{"default":"{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",defaultCombination:"{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",line:"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",lineCombination:"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.",spline:"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",splineCombination:"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.",column:"{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.",columnCombination:"{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.",bar:"{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.",barCombination:"{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.",pie:"{name}, pie {ix} of {numSeries} with {numPoints} {#plural(numPoints, slices, slice)}.",pieCombination:"{name}, series {ix} of {numSeries}. Pie with {numPoints} {#plural(numPoints, slices, slice)}.",scatter:"{name}, scatter plot {ix} of {numSeries} with {numPoints} {#plural(numPoints, points, point)}.",scatterCombination:"{name}, series {ix} of {numSeries}, scatter plot with {numPoints} {#plural(numPoints, points, point)}.",boxplot:"{name}, boxplot {ix} of {numSeries} with {numPoints} {#plural(numPoints, boxes, box)}.",boxplotCombination:"{name}, series {ix} of {numSeries}. Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.",bubble:"{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.",bubbleCombination:"{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.",map:"{name}, map {ix} of {numSeries} with {numPoints} {#plural(numPoints, areas, area)}.",mapCombination:"{name}, series {ix} of {numSeries}. Map with {numPoints} {#plural(numPoints, areas, area)}.",mapline:"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.",maplineCombination:"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.",mapbubble:"{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.",mapbubbleCombination:"{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}."},description:"{description}",xAxisDescription:"X axis, {name}",yAxisDescription:"Y axis, {name}",nullPointValue:"No value",pointAnnotationsDescription:"{Annotation: #each(annotations). }"}}}});i(t,"modules/accessibility/options/deprecatedOptions.js",[t["parts/Utilities.js"]],function(n){function t(n,t,i){o("Highcharts: Deprecated option "+t+" used. This will be removed from future versions of Highcharts. Use "+i+" instead.",!1,n)}function r(n,t,i){for(var r,u=0;u<t.length-1;++u)r=t[u],n=n[r]=s(n[r],{});n[t[t.length-1]]=i}function i(n,i,u,f){function e(n,t){return t.reduce(function(n,t){return n[t]},n)}var o=e(n.options,i),s=e(n.options,u);Object.keys(f).forEach(function(e){var h=o[e];"undefined"!=typeof h&&(r(s,f[e],h),t(n,i.join(".")+"."+e,u.join(".")+"."+f[e].join(".")))})}function u(n){var i=n.options.chart||{},r=n.options.accessibility||{};["description","typeDescription"].forEach(function(u){i[u]&&(r[u]=i[u],t(n,"chart."+u,"accessibility."+u))})}function f(n){n.axes.forEach(function(i){(i=i.options)&&i.description&&(i.accessibility=i.accessibility||{},i.accessibility.description=i.description,t(n,"axis.description","axis.accessibility.description"))})}function e(n){var i={description:["accessibility","description"],exposeElementToA11y:["accessibility","exposeAsGroupOnly"],pointDescriptionFormatter:["accessibility","pointDescriptionFormatter"],skipKeyboardNavigation:["accessibility","keyboardNavigation","enabled"]};n.series.forEach(function(u){Object.keys(i).forEach(function(f){var e=u.options[f];"undefined"!=typeof e&&(r(u.options,i[f],"skipKeyboardNavigation"===f?!e:e),t(n,"series."+f,"series."+i[f].join(".")))})})}var o=n.error,s=n.pick;return function(n){u(n);f(n);n.series&&e(n);i(n,["accessibility"],["accessibility"],{pointDateFormat:["point","dateFormat"],pointDateFormatter:["point","dateFormatter"],pointDescriptionFormatter:["point","descriptionFormatter"],pointDescriptionThreshold:["series","pointDescriptionEnabledThreshold"],pointNavigationThreshold:["keyboardNavigation","seriesNavigation","pointNavigationEnabledThreshold"],pointValueDecimals:["point","valueDecimals"],pointValuePrefix:["point","valuePrefix"],pointValueSuffix:["point","valueSuffix"],screenReaderSectionFormatter:["screenReaderSection","beforeChartFormatter"],describeSingleSeries:["series","describeSingleSeries"],seriesDescriptionFormatter:["series","descriptionFormatter"],onTableAnchorClick:["screenReaderSection","onViewDataTableClick"],axisRangeDateFormat:["screenReaderSection","axisRangeDateFormat"]});i(n,["accessibility","keyboardNavigation"],["accessibility","keyboardNavigation","seriesNavigation"],{skipNullPoints:["skipNullPoints"],mode:["mode"]});i(n,["lang","accessibility"],["lang","accessibility"],{legendItem:["legend","legendItem"],legendLabel:["legend","legendLabel"],mapZoomIn:["zoom","mapZoomIn"],mapZoomOut:["zoom","mapZoomOut"],resetZoomButton:["zoom","resetZoomButton"],screenReaderRegionLabel:["screenReaderSection","beforeRegionLabel"],rangeSelectorButton:["rangeSelector","buttonText"],rangeSelectorMaxInput:["rangeSelector","maxInputLabel"],rangeSelectorMinInput:["rangeSelector","minInputLabel"],svgContainerEnd:["screenReaderSection","endOfChartMarker"],viewAsDataTable:["table","viewAsDataTableButtonText"],tableSummary:["table","tableSummary"]})}});i(t,"modules/accessibility/a11y-i18n.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){function r(n,t){var r=n.indexOf("#each("),e=n.indexOf("#plural("),u=n.indexOf("["),o=n.indexOf("]"),f;if(-1<r){if(u=n.slice(r).indexOf(")")+r,f=n.substring(0,r),e=n.substring(u+1),u=n.substring(r+6,u).split(","),r=Number(u[1]),n="",t=t[u[0]])for(r=isNaN(r)?t.length:r,r=0>r?t.length+r:Math.min(r,t.length),u=0;u<r;++u)n+=f+t[u]+e;return n.length?n:""}if(-1<e){f=n.slice(e).indexOf(")")+e;n=n.substring(e+8,f).split(",");switch(Number(t[n[0]])){case 0:n=i(n[4],n[1]);break;case 1:n=i(n[2],n[1]);break;case 2:n=i(n[3],n[1]);break;default:n=n[1]}return n?(t=n,t=t.trim&&t.trim()||t.replace(/^\s+|\s+$/g,"")):t="",t}return-1<u?(e=n.substring(0,u),n=Number(n.substring(u+1,o)),t=t[e],!isNaN(n)&&t&&(0>n?(f=t[t.length+n],"undefined"==typeof f&&(f=t[0])):(f=t[n],"undefined"==typeof f&&(f=t[t.length-1]))),"undefined"!=typeof f?f:""):"{"+n+"}"}var u=t.format,i=t.pick;n.i18nFormat=function(n,t,i){var h=function(n,t){n=n.slice(t||0);var i=n.indexOf("{"),r=n.indexOf("}");if(-1<i&&r>i)return{statement:n.substring(i+1,r),begin:t+i+1,end:t+r}},e=[],o=0,f,s;do f=h(n,o),s=n.substring(o,f&&f.begin-1),s.length&&e.push({value:s,type:"constant"}),f&&e.push({value:f.statement,type:"statement"}),o=f?f.end+1:o+1;while(f);return e.forEach(function(n){"statement"===n.type&&(n.value=r(n.value,t))}),u(e.reduce(function(n,t){return n+t.value},""),t,i)};n.Chart.prototype.langFormat=function(t,i){t=t.split(".");for(var r=this.options.lang,u=0;u<t.length;++u)r=r&&r[t[u]];return"string"==typeof r?n.i18nFormat(r,i,this):""}});i(t,"modules/accessibility/focusBorder.js",[t["parts/Globals.js"],t["parts/Utilities.js"]],function(n,t){function i(n){if(!n.focusBorderDestroyHook){var t=n.destroy;n.destroy=function(){var i,r;return null===(r=null===(i=n.focusBorder)||void 0===i?void 0:i.destroy)||void 0===r?void 0:r.call(i),t.apply(n,arguments)};n.focusBorderDestroyHook=t}}function r(n){for(var i=[],t=1;t<arguments.length;t++)i[t-1]=arguments[t];n.focusBorderUpdateHooks||(n.focusBorderUpdateHooks={},s.forEach(function(t){t+="Setter";var r=n[t]||n._defaultSetter;n.focusBorderUpdateHooks[t]=r;n[t]=function(){var t=r.apply(n,arguments);return n.addFocusBorder.apply(n,i),t}}))}function u(n){n.focusBorderUpdateHooks&&(Object.keys(n.focusBorderUpdateHooks).forEach(function(t){var i=n.focusBorderUpdateHooks[t];i===n._defaultSetter?delete n[t]:n[t]=i}),delete n.focusBorderUpdateHooks)}var f=t.addEvent,e=t.extend,o=t.pick,s="x y transform width height r d stroke-width".split(" ");e(n.SVGElement.prototype,{addFocusBorder:function(t,u){var f,s,c,e;this.focusBorder&&this.removeFocusBorder();f=this.getBBox();s=o(t,3);f.x+=this.translateX?this.translateX:0;f.y+=this.translateY?this.translateY:0;var h=f.x-s,l=f.y-s,a=f.width+2*s,v=f.height+2*s;("text"===this.element.nodeName||this.isLabel)&&(c=!!this.rotation,this.isLabel?e={x:c?1:0,y:0}:(h=e=0,"middle"===this.attr("text-anchor")?(e=n.isFirefox&&this.rotation?.25:.5,h=n.isFirefox&&!this.rotation?.75:.5):this.rotation?e=.25:h=.75,e={x:e,y:h}),h=+this.attr("x")-f.width*e.x-s,l=+this.attr("y")-f.height*e.y-s,this.isLabel&&c&&(c=a,a=v,v=c,h=+this.attr("x")-f.height*e.x-s,l=+this.attr("y")-f.width*e.y-s));this.focusBorder=this.renderer.rect(h,l,a,v,parseInt((u&&u.borderRadius||0).toString(),10)).addClass("highcharts-focus-border").attr({zIndex:99}).add(this.parentGroup);this.renderer.styledMode||this.focusBorder.attr({stroke:u&&u.stroke,"stroke-width":u&&u.strokeWidth});r(this,t,u);i(this)},removeFocusBorder:function(){u(this);this.focusBorderDestroyHook&&(this.destroy=this.focusBorderDestroyHook,delete this.focusBorderDestroyHook);this.focusBorder&&(this.focusBorder.destroy(),delete this.focusBorder)}});n.Chart.prototype.renderFocusBorder=function(){var t=this.focusElement,n=this.options.accessibility.keyboardNavigation.focusBorder;t&&(t.removeFocusBorder(),n.enabled&&t.addFocusBorder(n.margin,{stroke:n.style.color,strokeWidth:n.style.lineWidth,borderRadius:n.style.borderRadius}))};n.Chart.prototype.setFocusToElement=function(n,t){var i=this.options.accessibility.keyboardNavigation.focusBorder;(t=t||n.element)&&t.focus&&(t.hcEvents&&t.hcEvents.focusin||f(t,"focusin",function(){}),t.focus(),i.hideBrowserFocusOutline&&(t.style.outline="none"));this.focusElement&&this.focusElement.removeFocusBorder();this.focusElement=n;this.renderFocusBorder()}});i(t,"modules/accessibility/accessibility.js",[t["modules/accessibility/utils/chartUtilities.js"],t["parts/Globals.js"],t["modules/accessibility/KeyboardNavigationHandler.js"],t["parts/Point.js"],t["parts/Utilities.js"],t["modules/accessibility/AccessibilityComponent.js"],t["modules/accessibility/KeyboardNavigation.js"],t["modules/accessibility/components/LegendComponent.js"],t["modules/accessibility/components/MenuComponent.js"],t["modules/accessibility/components/SeriesComponent/SeriesComponent.js"],t["modules/accessibility/components/ZoomComponent.js"],t["modules/accessibility/components/RangeSelectorComponent.js"],t["modules/accessibility/components/InfoRegionsComponent.js"],t["modules/accessibility/components/ContainerComponent.js"],t["modules/accessibility/high-contrast-mode.js"],t["modules/accessibility/high-contrast-theme.js"],t["modules/accessibility/options/options.js"],t["modules/accessibility/options/langOptions.js"],t["modules/accessibility/options/deprecatedOptions.js"]],function(n,t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w,b,k){function nt(n){this.init(n)}var d=u.addEvent,it=u.extend,g=u.fireEvent,tt=u.merge,rt=t.win.document;tt(!0,t.defaultOptions,w,{accessibility:{highContrastTheme:p},lang:b});t.A11yChartUtilities=n;t.KeyboardNavigationHandler=i;t.AccessibilityComponent=f;nt.prototype={init:function(n){this.chart=n;rt.addEventListener&&n.renderer.isSVG?(k(n),this.initComponents(),this.keyboardNavigation=new e(n,this.components),this.update()):n.renderTo.setAttribute("aria-hidden",!0)},initComponents:function(){var t=this.chart,i=t.options.accessibility,n;this.components={container:new v,infoRegions:new a,legend:new o,chartMenu:new s,rangeSelector:new l,series:new h,zoom:new c};i.customComponents&&it(this.components,i.customComponents);n=this.components;this.getComponentOrder().forEach(function(i){n[i].initBase(t);n[i].init()})},getComponentOrder:function(){if(!this.components)return[];if(!this.components.series)return Object.keys(this.components);var n=Object.keys(this.components).filter(function(n){return"series"!==n});return["series"].concat(n)},update:function(){var t=this.components,n=this.chart,i=n.options.accessibility;g(n,"beforeA11yUpdate");n.types=this.getChartTypes();this.getComponentOrder().forEach(function(i){t[i].onChartUpdate();g(n,"afterA11yComponentUpdate",{name:i,component:t[i]})});this.keyboardNavigation.update(i.keyboardNavigation.order);!n.highContrastModeActive&&y.isHighContrastModeActive()&&y.setHighContrastTheme(n);g(n,"afterA11yUpdate",{accessibility:this})},destroy:function(){var n=this.chart||{},t=this.components;Object.keys(t).forEach(function(n){t[n].destroy();t[n].destroyBase()});this.keyboardNavigation&&this.keyboardNavigation.destroy();n.renderTo&&n.renderTo.setAttribute("aria-hidden",!0);n.focusElement&&n.focusElement.removeFocusBorder()},getChartTypes:function(){var n={};return this.chart.series.forEach(function(t){n[t.type]=1}),Object.keys(n)}};t.Chart.prototype.updateA11yEnabled=function(){var n=this.accessibility,t=this.options.accessibility;t&&t.enabled?n?n.update():this.accessibility=new nt(this):n?(n.destroy&&n.destroy(),delete this.accessibility):this.renderTo.setAttribute("aria-hidden",!0)};d(t.Chart,"render",function(){this.a11yDirty&&this.renderTo&&(delete this.a11yDirty,this.updateA11yEnabled());var n=this.accessibility;n&&n.getComponentOrder().forEach(function(t){n.components[t].onChartRender()})});d(t.Chart,"update",function(n){(n=n.options.accessibility)&&(n.customComponents&&(this.options.accessibility.customComponents=n.customComponents,delete n.customComponents),tt(!0,this.options.accessibility,n),this.accessibility&&this.accessibility.destroy&&(this.accessibility.destroy(),delete this.accessibility));this.a11yDirty=!0});d(r,"update",function(){this.series.chart.accessibility&&(this.series.chart.a11yDirty=!0)});["addSeries","init"].forEach(function(n){d(t.Chart,n,function(){this.a11yDirty=!0})});["update","updatedData","remove"].forEach(function(n){d(t.Series,n,function(){this.chart.accessibility&&(this.chart.a11yDirty=!0)})});["afterDrilldown","drillupall"].forEach(function(n){d(t.Chart,n,function(){this.accessibility&&this.accessibility.update()})});d(t.Chart,"destroy",function(){this.accessibility&&this.accessibility.destroy()})});i(t,"masters/modules/accessibility.src.js",[],function(){})}),function(n){"object"==typeof module&&module.exports?(n["default"]=n,module.exports=n):"function"==typeof define&&define.amd?define("highcharts/modules/drilldown",["highcharts"],function(t){return n(t),n.Highcharts=t,n}):n("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(n){function t(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}n=n?n._modules:{};t(n,"modules/drilldown.src.js",[n["parts/Globals.js"],n["parts/Color.js"],n["parts/Point.js"],n["parts/Tick.js"],n["parts/Utilities.js"]],function(n,t,i,r,u){var f=u.addEvent,b=u.removeEvent,y=u.animObject,s=u.extend,l=u.fireEvent,k=u.format,h=u.merge,p=u.objectEach,c=u.pick,d=u.syncTimeout,g=n.noop,v,a;u=n.defaultOptions;var e=n.Chart,o=n.seriesTypes,w=o.pie;o=o.column;v=1;s(u.lang,{drillUpText:"◁ Back to {series.name}"});u.drilldown={activeAxisLabelStyle:{cursor:"pointer",color:"#003399",fontWeight:"bold",textDecoration:"underline"},activeDataLabelStyle:{cursor:"pointer",color:"#003399",fontWeight:"bold",textDecoration:"underline"},animation:{duration:500},drillUpButton:{position:{align:"right",x:-10,y:10}}};n.SVGRenderer.prototype.Element.prototype.fadeIn=function(n){this.attr({opacity:.1,visibility:"inherit"}).animate({opacity:c(this.newOpacity,1)},n||{duration:250})};e.prototype.addSeriesAsDrilldown=function(n,t){this.addSingleSeriesAsDrilldown(n,t);this.applyDrilldown()};e.prototype.addSingleSeriesAsDrilldown=function(n,i){var u=n.series,r=u.xAxis,f=u.yAxis,a=[],y=[],e,l=this.styledMode?{colorIndex:c(n.colorIndex,u.colorIndex)}:{color:n.color||u.color},o,p;this.drilldownLevels||(this.drilldownLevels=[]);o=u.options._levelNumber||0;(e=this.drilldownLevels[this.drilldownLevels.length-1])&&e.levelNumber!==o&&(e=void 0);i=s(s({_ddSeriesId:v++},l),i);p=u.points.indexOf(n);u.chart.series.forEach(function(n){n.xAxis!==r||n.isDrilling||(n.options._ddSeriesId=n.options._ddSeriesId||v++,n.options._colorIndex=n.userOptions._colorIndex,n.options._levelNumber=n.options._levelNumber||o,e?(a=e.levelSeries,y=e.levelSeriesOptions):(a.push(n),n.purgedOptions=h({_ddSeriesId:n.options._ddSeriesId,_levelNumber:n.options._levelNumber,selected:n.options.selected},n.userOptions),y.push(n.purgedOptions)))});n=s({levelNumber:o,seriesOptions:u.options,seriesPurgedOptions:u.purgedOptions,levelSeriesOptions:y,levelSeries:a,shapeArgs:n.shapeArgs,bBox:n.graphic?n.graphic.getBBox():{},color:n.isNull?new t(l.color).setOpacity(0).get():l.color,lowerSeriesOptions:i,pointOptions:u.options.data[p],pointIndex:p,oldExtremes:{xMin:r&&r.userMin,xMax:r&&r.userMax,yMin:f&&f.userMin,yMax:f&&f.userMax},resetZoomButton:this.resetZoomButton},l);this.drilldownLevels.push(n);r&&r.names&&(r.names.length=0);i=n.lowerSeries=this.addSeries(i,!1);i.options._levelNumber=o+1;r&&(r.oldPos=r.pos,r.userMin=r.userMax=null,f.userMin=f.userMax=null);u.type===i.type&&(i.animate=i.animateDrilldown||g,i.options.animation=!0)};e.prototype.applyDrilldown=function(){var n=this.drilldownLevels,t;n&&0<n.length&&(t=n[n.length-1].levelNumber,this.drilldownLevels.forEach(function(n){n.levelNumber===t&&n.levelSeries.forEach(function(n){n.options&&n.options._levelNumber===t&&n.remove(!1)})}));this.resetZoomButton&&(this.resetZoomButton.hide(),delete this.resetZoomButton);this.pointer.reset();this.redraw();this.showDrillUpButton();l(this,"afterDrilldown")};e.prototype.getDrilldownBackText=function(){var n=this.drilldownLevels;if(n&&0<n.length)return n=n[n.length-1],n.series=n.seriesOptions,k(this.options.lang.drillUpText,n)};e.prototype.showDrillUpButton=function(){var r=this,u=this.getDrilldownBackText(),t=r.options.drilldown.drillUpButton,i,n;this.drillUpButton?this.drillUpButton.attr({text:u}).align():(n=(i=t.theme)&&i.states,this.drillUpButton=this.renderer.button(u,null,null,function(){r.drillUp()},i,n&&n.hover,n&&n.select).addClass("highcharts-drillup-button").attr({align:t.position.align,zIndex:7}).add().align(t.position,!1,t.relativeTo||"plotBox"))};e.prototype.drillUp=function(){if(this.drilldownLevels&&0!==this.drilldownLevels.length){for(var r=this,f=r.drilldownLevels,o=f[f.length-1].levelNumber,s=f.length,e=r.series,t,n,i,u,h=function(t){e.forEach(function(n){n.options._ddSeriesId===t._ddSeriesId&&(f=n)});var f=f||r.addSeries(t,!1);f.type===i.type&&f.animateDrillupTo&&(f.animate=f.animateDrillupTo);t===n.seriesPurgedOptions&&(u=f)};s--;)if(n=f[s],n.levelNumber===o){if(f.pop(),i=n.lowerSeries,!i.chart)for(t=e.length;t--;)if(e[t].options.id===n.lowerSeriesOptions.id&&e[t].options._levelNumber===o+1){i=e[t];break}i.xData=[];n.levelSeriesOptions.forEach(h);l(r,"drillup",{seriesOptions:n.seriesPurgedOptions||n.seriesOptions});u.type===i.type&&(u.drilldownLevel=n,u.options.animation=r.options.drilldown.animation,i.animateDrillupFrom&&i.chart&&i.animateDrillupFrom(n));u.options._levelNumber=o;i.remove(!1);u.xAxis&&(t=n.oldExtremes,u.xAxis.setExtremes(t.xMin,t.xMax,!1),u.yAxis.setExtremes(t.yMin,t.yMax,!1));n.resetZoomButton&&(r.resetZoomButton=n.resetZoomButton,r.resetZoomButton.show())}this.redraw();0===this.drilldownLevels.length?this.drillUpButton=this.drillUpButton.destroy():this.drillUpButton.attr({text:this.getDrilldownBackText()}).align();this.ddDupes.length=[];l(r,"drillupall")}};f(e,"afterInit",function(){var n=this;n.drilldown={update:function(t,i){h(!0,n.options.drilldown,t);c(i,!0)&&n.redraw()}}});f(e,"beforeShowResetZoom",function(){if(this.drillUpButton)return!1});f(e,"render",function(){(this.xAxis||[]).forEach(function(n){n.ddPoints={};n.series.forEach(function(t){for(var u=t.xData||[],f=t.points,r,i=0;i<u.length;i++)r=t.options.data[i],"number"!=typeof r&&(r=t.pointClass.prototype.optionsToObject.call({series:t},r),r.drilldown&&(n.ddPoints[u[i]]||(n.ddPoints[u[i]]=[]),n.ddPoints[u[i]].push(f?f[i]:!0)))});p(n.ticks,r.prototype.drillable)})});o.prototype.animateDrillupTo=function(n){if(!n){var t=this,i=t.drilldownLevel;this.points.forEach(function(n){var t=n.dataLabel;n.graphic&&n.graphic.hide();t&&(t.hidden="hidden"===t.attr("visibility"),t.hidden||(t.hide(),n.connector&&n.connector.hide()))});d(function(){t.points&&t.points.forEach(function(n,t){t=t===(i&&i.pointIndex)?"show":"fadeIn";var u="show"===t?!0:void 0,r=n.dataLabel;n.graphic&&n.graphic[t](u);r&&!r.hidden&&(r.fadeIn(),n.connector&&n.connector.fadeIn())})},Math.max(this.chart.options.drilldown.animation.duration-50,0));delete this.animate}};o.prototype.animateDrilldown=function(n){var u=this,i=this.chart,o=i.drilldownLevels,t,f=y(i.options.drilldown.animation),r=this.xAxis,e=i.styledMode;n||(o.forEach(function(n){u.options._ddSeriesId===n.lowerSeriesOptions._ddSeriesId&&(t=n.shapeArgs,e||(t.fill=n.color))}),t.x+=c(r.oldPos,r.pos)-r.pos,this.points.forEach(function(n){var i=n.shapeArgs;e||(i.fill=n.color);n.graphic&&n.graphic.attr(t).animate(s(n.shapeArgs,{fill:n.color||u.color}),f);n.dataLabel&&n.dataLabel.fadeIn(f)}),delete this.animate)};o.prototype.animateDrillupFrom=function(n){var r=y(this.chart.options.drilldown.animation),t=this.group,u=t!==this.chart.columnGroup,i=this;i.trackerGroups.forEach(function(n){if(i[n])i[n].on("mouseover")});u&&delete this.group;this.points.forEach(function(f){var e=f.graphic,o=n.shapeArgs,s=function(){e.destroy();t&&u&&(t=t.destroy())};e&&(delete f.graphic,i.chart.styledMode||(o.fill=n.color),r.duration?e.animate(o,h(r,{complete:s})):(e.attr(o),s()))})};w&&s(w.prototype,{animateDrillupTo:o.prototype.animateDrillupTo,animateDrillupFrom:o.prototype.animateDrillupFrom,animateDrilldown:function(n){var r=this.chart.drilldownLevels[this.chart.drilldownLevels.length-1],u=this.chart.options.drilldown.animation,t=r.shapeArgs,i=t.start,f=(t.end-i)/this.points.length,e=this.chart.styledMode;n||(this.points.forEach(function(n,o){var s=n.shapeArgs;e||(t.fill=r.color,s.fill=n.color);n.graphic&&n.graphic.attr(h(t,{start:i+o*f,end:i+(o+1)*f}))[u?"animate":"attr"](s,u)}),delete this.animate)}});i.prototype.doDrilldown=function(n,t,i){var r=this.series.chart,u=r.options.drilldown,f=(u.series||[]).length,e;for(r.ddDupes||(r.ddDupes=[]);f--&&!e;)u.series[f].id===this.drilldown&&-1===r.ddDupes.indexOf(this.drilldown)&&(e=u.series[f],r.ddDupes.push(this.drilldown));l(r,"drilldown",{point:this,seriesOptions:e,category:t,originalEvent:i,points:"undefined"!=typeof t&&this.series.xAxis.getDDPoints(t).slice(0)},function(t){var i=t.point.series&&t.point.series.chart,r=t.seriesOptions;i&&r&&(n?i.addSingleSeriesAsDrilldown(t.point,r):i.addSeriesAsDrilldown(t.point,r))})};n.Axis.prototype.drilldownCategory=function(n,t){p(this.getDDPoints(n),function(i){i&&i.series&&i.series.visible&&i.doDrilldown&&i.doDrilldown(!0,n,t)});this.chart.applyDrilldown()};n.Axis.prototype.getDDPoints=function(n){return this.ddPoints&&this.ddPoints[n]};r.prototype.drillable=function(){var r=this.pos,n=this.label,t=this.axis,u="xAxis"===t.coll&&t.getDDPoints,e=u&&t.getDDPoints(r),i=t.chart.styledMode;u&&(n&&e&&e.length?(n.drillable=!0,n.basicStyles||i||(n.basicStyles=h(n.styles)),n.addClass("highcharts-drilldown-axis-label"),n.removeOnDrillableClick&&b(n.element,"click"),n.removeOnDrillableClick=f(n.element,"click",function(n){n.preventDefault();t.drilldownCategory(r,n)}),i||n.css(t.chart.options.drilldown.activeAxisLabelStyle)):n&&n.drillable&&n.removeOnDrillableClick&&(i||(n.styles={},n.css(n.basicStyles)),n.removeOnDrillableClick(),n.removeClass("highcharts-drilldown-axis-label")))};f(i,"afterInit",function(){var n=this,t=n.series;return n.drilldown&&f(n,"click",function(i){t.xAxis&&!1===t.chart.options.drilldown.allowPointDrilldown?t.xAxis.drilldownCategory(n.x,i):n.doDrilldown(void 0,void 0,i)}),n});f(n.Series,"afterDrawDataLabels",function(){var n=this.chart.options.drilldown.activeDataLabelStyle,i=this.chart.renderer,t=this.chart.styledMode;this.points.forEach(function(r){var u=r.options.dataLabels,f=c(r.dlOptions,u&&u.style,{});r.drilldown&&r.dataLabel&&("contrast"!==n.color||t||(f.color=i.getContrast(r.color||this.color)),u&&u.color&&(f.color=u.color),r.dataLabel.addClass("highcharts-drilldown-data-label"),t||r.dataLabel.css(n).css(f))},this)});a=function(n,t,i,r){n[i?"addClass":"removeClass"]("highcharts-drilldown-point");r||n.css({cursor:t})};f(n.Series,"afterDrawTracker",function(){var n=this.chart.styledMode;this.points.forEach(function(t){t.drilldown&&t.graphic&&a(t.graphic,"pointer",!0,n)})});f(i,"afterSetState",function(){var n=this.series.chart.styledMode;this.drilldown&&this.series.halo&&"hover"===this.state?a(this.series.halo,"pointer",!0,n):this.series.halo&&a(this.series.halo,"auto",!1,n)})});t(n,"masters/modules/drilldown.src.js",[],function(){})})