highcharts-gantt.js 358 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725
  1. /*
  2. Highcharts Gantt JS v8.2.0 (2020-08-20)
  3. (c) 2017-2018 Lars Cabrera, Torstein Honsi, Jon Arild Nygard & Oystein Moseng
  4. License: www.highcharts.com/license
  5. */
  6. (function(R,M){"object"===typeof module&&module.exports?(M["default"]=M,module.exports=R.document?M(R):M):"function"===typeof define&&define.amd?define("highcharts/highcharts-gantt",function(){return M(R)}):(R.Highcharts&&R.Highcharts.error(16,!0),R.Highcharts=M(R))})("undefined"!==typeof window?window:this,function(R){function M(r,f,Q,C){r.hasOwnProperty(f)||(r[f]=C.apply(null,Q))}var v={};M(v,"Core/Globals.js",[],function(){var r="undefined"!==typeof R?R:"undefined"!==typeof window?window:{},f=
  7. r.document,Q=r.navigator&&r.navigator.userAgent||"",C=f&&f.createElementNS&&!!f.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,v=/(edge|msie|trident)/i.test(Q)&&!r.opera,B=-1!==Q.indexOf("Firefox"),E=-1!==Q.indexOf("Chrome"),D=B&&4>parseInt(Q.split("Firefox/")[1],10);return{product:"Highcharts",version:"8.2.0",deg2rad:2*Math.PI/360,doc:f,hasBidiBug:D,hasTouch:!!r.TouchEvent,isMS:v,isWebKit:-1!==Q.indexOf("AppleWebKit"),isFirefox:B,isChrome:E,isSafari:!E&&-1!==Q.indexOf("Safari"),
  8. isTouchDevice:/(Mobile|Android|Windows Phone)/.test(Q),SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:C,win:r,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[],dateFormats:{}}});M(v,"Core/Utilities.js",[v["Core/Globals.js"]],function(r){function f(e,q,c,b){var a=q?"Highcharts error":"Highcharts warning";32===e&&(e=a+": Deprecated member");var k=n(e),d=k?a+" #"+e+": www.highcharts.com/errors/"+e+"/":e.toString();a=function(){if(q)throw Error(d);
  9. p.console&&-1===f.messages.indexOf(d)&&console.log(d)};if("undefined"!==typeof b){var g="";k&&(d+="?");V(b,function(e,q){g+="\n - "+q+": "+e;k&&(d+=encodeURI(q)+"="+encodeURI(e))});d+=g}c?T(c,"displayError",{code:e,message:d,params:b},a):a();f.messages.push(d)}function Q(){var e,q=arguments,c={},b=function(e,q){"object"!==typeof e&&(e={});V(q,function(c,a){!C(c,!0)||m(c)||u(c)?e[a]=q[a]:e[a]=b(e[a]||{},c)});return e};!0===q[0]&&(c=q[1],q=Array.prototype.slice.call(q,2));var a=q.length;for(e=0;e<a;e++)c=
  10. b(c,q[e]);return c}function C(e,q){return!!e&&"object"===typeof e&&(!q||!H(e))}function v(e,q,c){var b;J(q)?h(c)?e.setAttribute(q,c):e&&e.getAttribute&&((b=e.getAttribute(q))||"class"!==q||(b=e.getAttribute(q+"Name"))):V(q,function(q,c){e.setAttribute(c,q)});return b}function B(){for(var e=arguments,q=e.length,c=0;c<q;c++){var b=e[c];if("undefined"!==typeof b&&null!==b)return b}}function E(e,q){if(!e)return q;var c=e.split(".").reverse();if(1===c.length)return q[e];for(e=c.pop();"undefined"!==typeof e&&
  11. "undefined"!==typeof q&&null!==q;)q=q[e],e=c.pop();return q}r.timers=[];var D=r.charts,x=r.doc,p=r.win;(f||(f={})).messages=[];r.error=f;var I=function(){function e(e,q,c){this.options=q;this.elem=e;this.prop=c}e.prototype.dSetter=function(){var e=this.paths,q=e&&e[0];e=e&&e[1];var c=[],b=this.now||0;if(1!==b&&q&&e)if(q.length===e.length&&1>b)for(var a=0;a<e.length;a++){for(var k=q[a],d=e[a],g=[],O=0;O<d.length;O++){var P=k[O],t=d[O];g[O]="number"===typeof P&&"number"===typeof t&&("A"!==d[0]||4!==
  12. O&&5!==O)?P+b*(t-P):t}c.push(g)}else c=e;else c=this.toD||[];this.elem.attr("d",c,void 0,!0)};e.prototype.update=function(){var e=this.elem,q=this.prop,c=this.now,b=this.options.step;if(this[q+"Setter"])this[q+"Setter"]();else e.attr?e.element&&e.attr(q,c,null,!0):e.style[q]=c+this.unit;b&&b.call(e,c,this)};e.prototype.run=function(e,q,c){var b=this,a=b.options,k=function(e){return k.stopped?!1:b.step(e)},d=p.requestAnimationFrame||function(e){setTimeout(e,13)},g=function(){for(var e=0;e<r.timers.length;e++)r.timers[e]()||
  13. r.timers.splice(e--,1);r.timers.length&&d(g)};e!==q||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=e,this.end=q,this.unit=c,this.now=this.start,this.pos=0,k.elem=this.elem,k.prop=this.prop,k()&&1===r.timers.push(k)&&d(g)):(delete a.curAnim[this.prop],a.complete&&0===Object.keys(a.curAnim).length&&a.complete.call(this.elem))};e.prototype.step=function(e){var q=+new Date,c=this.options,b=this.elem,a=c.complete,k=c.duration,d=c.curAnim;if(b.attr&&!b.element)e=!1;else if(e||
  14. q>=k+this.startTime){this.now=this.end;this.pos=1;this.update();var g=d[this.prop]=!0;V(d,function(e){!0!==e&&(g=!1)});g&&a&&a.call(b);e=!1}else this.pos=c.easing((q-this.startTime)/k),this.now=this.start+(this.end-this.start)*this.pos,this.update(),e=!0;return e};e.prototype.initPath=function(e,q,c){function b(e,q){for(;e.length<h;){var c=e[0],b=q[h-e.length];b&&"M"===c[0]&&(e[0]="C"===b[0]?["C",c[1],c[2],c[1],c[2],c[1],c[2]]:["L",c[1],c[2]]);e.unshift(c);g&&e.push(e[e.length-1])}}function a(e,q){for(;e.length<
  15. h;)if(q=e[e.length/O-1].slice(),"C"===q[0]&&(q[1]=q[5],q[2]=q[6]),g){var c=e[e.length/O].slice();e.splice(e.length/2,0,q,c)}else e.push(q)}var k=e.startX,d=e.endX;q=q&&q.slice();c=c.slice();var g=e.isArea,O=g?2:1;if(!q)return[c,c];if(k&&d){for(e=0;e<k.length;e++)if(k[e]===d[0]){var P=e;break}else if(k[0]===d[d.length-k.length+e]){P=e;var t=!0;break}else if(k[k.length-1]===d[d.length-k.length+e]){P=k.length-e;break}"undefined"===typeof P&&(q=[])}if(q.length&&n(P)){var h=c.length+P*O;t?(b(q,c),a(c,
  16. q)):(b(c,q),a(q,c))}return[q,c]};e.prototype.fillSetter=function(){e.prototype.strokeSetter.apply(this,arguments)};e.prototype.strokeSetter=function(){this.elem.attr(this.prop,r.color(this.start).tweenTo(r.color(this.end),this.pos),null,!0)};return e}();r.Fx=I;r.merge=Q;var w=r.pInt=function(e,q){return parseInt(e,q||10)},J=r.isString=function(e){return"string"===typeof e},H=r.isArray=function(e){e=Object.prototype.toString.call(e);return"[object Array]"===e||"[object Array Iterator]"===e};r.isObject=
  17. C;var u=r.isDOMElement=function(e){return C(e)&&"number"===typeof e.nodeType},m=r.isClass=function(e){var q=e&&e.constructor;return!(!C(e,!0)||u(e)||!q||!q.name||"Object"===q.name)},n=r.isNumber=function(e){return"number"===typeof e&&!isNaN(e)&&Infinity>e&&-Infinity<e},l=r.erase=function(e,q){for(var c=e.length;c--;)if(e[c]===q){e.splice(c,1);break}},h=r.defined=function(e){return"undefined"!==typeof e&&null!==e};r.attr=v;var d=r.splat=function(e){return H(e)?e:[e]},g=r.syncTimeout=function(e,q,c){if(0<
  18. q)return setTimeout(e,q,c);e.call(0,c);return-1},a=r.clearTimeout=function(e){h(e)&&clearTimeout(e)},k=r.extend=function(e,q){var c;e||(e={});for(c in q)e[c]=q[c];return e};r.pick=B;var b=r.css=function(e,q){r.isMS&&!r.svg&&q&&"undefined"!==typeof q.opacity&&(q.filter="alpha(opacity="+100*q.opacity+")");k(e.style,q)},F=r.createElement=function(e,q,c,a,d){e=x.createElement(e);q&&k(e,q);d&&b(e,{padding:"0",border:"none",margin:"0"});c&&b(e,c);a&&a.appendChild(e);return e},y=r.extendClass=function(e,
  19. q){var c=function(){};c.prototype=new e;k(c.prototype,q);return c},G=r.pad=function(e,q,c){return Array((q||2)+1-String(e).replace("-","").length).join(c||"0")+e},L=r.relativeLength=function(e,q,c){return/%$/.test(e)?q*parseFloat(e)/100+(c||0):parseFloat(e)},t=r.wrap=function(e,q,c){var b=e[q];e[q]=function(){var e=Array.prototype.slice.call(arguments),q=arguments,a=this;a.proceed=function(){b.apply(a,arguments.length?arguments:q)};e.unshift(b);e=c.apply(this,e);a.proceed=null;return e}},A=r.format=
  20. function(e,q,c){var b="{",a=!1,k=[],d=/f$/,g=/\.([0-9])/,O=r.defaultOptions.lang,P=c&&c.time||r.time;for(c=c&&c.numberFormatter||Y;e;){var t=e.indexOf(b);if(-1===t)break;var h=e.slice(0,t);if(a){h=h.split(":");b=E(h.shift()||"",q);if(h.length&&"number"===typeof b)if(h=h.join(":"),d.test(h)){var y=parseInt((h.match(g)||["","-1"])[1],10);null!==b&&(b=c(b,y,O.decimalPoint,-1<h.indexOf(",")?O.thousandsSep:""))}else b=P.dateFormat(h,b);k.push(b)}else k.push(h);e=e.slice(t+1);b=(a=!a)?"}":"{"}k.push(e);
  21. return k.join("")},N=r.getMagnitude=function(e){return Math.pow(10,Math.floor(Math.log(e)/Math.LN10))},K=r.normalizeTickInterval=function(e,q,c,b,a){var k=e;c=B(c,1);var d=e/c;q||(q=a?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===b&&(1===c?q=q.filter(function(e){return 0===e%1}):.1>=c&&(q=[1/c])));for(b=0;b<q.length&&!(k=q[b],a&&k*c>=e||!a&&d<=(q[b]+(q[b+1]||q[b]))/2);b++);return k=Z(k*c,-Math.round(Math.log(.001)/Math.LN10))},c=r.stableSort=function(e,q){var c=e.length,b,a;for(a=0;a<c;a++)e[a].safeI=
  22. a;e.sort(function(e,c){b=q(e,c);return 0===b?e.safeI-c.safeI:b});for(a=0;a<c;a++)delete e[a].safeI},e=r.arrayMin=function(e){for(var q=e.length,c=e[0];q--;)e[q]<c&&(c=e[q]);return c},q=r.arrayMax=function(e){for(var q=e.length,c=e[0];q--;)e[q]>c&&(c=e[q]);return c},O=r.destroyObjectProperties=function(e,q){V(e,function(c,b){c&&c!==q&&c.destroy&&c.destroy();delete e[b]})},P=r.discardElement=function(e){var q=r.garbageBin;q||(q=F("div"));e&&q.appendChild(e);q.innerHTML=""},Z=r.correctFloat=function(e,
  23. q){return parseFloat(e.toPrecision(q||14))},aa=r.setAnimation=function(e,q){q.renderer.globalAnimation=B(e,q.options.chart.animation,!0)},X=r.animObject=function(e){return C(e)?r.merge({duration:500,defer:0},e):{duration:e?500:0,defer:0}},ba=r.timeUnits={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5,month:24192E5,year:314496E5},Y=r.numberFormat=function(e,q,c,b){e=+e||0;q=+q;var a=r.defaultOptions.lang,k=(e.toString().split(".")[1]||"").split("e")[0].length,d=e.toString().split("e");
  24. if(-1===q)q=Math.min(k,20);else if(!n(q))q=2;else if(q&&d[1]&&0>d[1]){var g=q+ +d[1];0<=g?(d[0]=(+d[0]).toExponential(g).split("e")[0],q=g):(d[0]=d[0].split(".")[0]||0,e=20>q?(d[0]*Math.pow(10,d[1])).toFixed(q):0,d[1]=0)}var O=(Math.abs(d[1]?d[0]:e)+Math.pow(10,-Math.max(q,k)-1)).toFixed(q);k=String(w(O));g=3<k.length?k.length%3:0;c=B(c,a.decimalPoint);b=B(b,a.thousandsSep);e=(0>e?"-":"")+(g?k.substr(0,g)+b:"");e+=k.substr(g).replace(/(\d{3})(?=\d)/g,"$1"+b);q&&(e+=c+O.slice(-q));d[1]&&0!==+e&&(e+=
  25. "e"+d[1]);return e};Math.easeInOutSine=function(e){return-.5*(Math.cos(Math.PI*e)-1)};var ea=r.getStyle=function(e,q,c){if("width"===q)return q=Math.min(e.offsetWidth,e.scrollWidth),c=e.getBoundingClientRect&&e.getBoundingClientRect().width,c<q&&c>=q-1&&(q=Math.floor(c)),Math.max(0,q-r.getStyle(e,"padding-left")-r.getStyle(e,"padding-right"));if("height"===q)return Math.max(0,Math.min(e.offsetHeight,e.scrollHeight)-r.getStyle(e,"padding-top")-r.getStyle(e,"padding-bottom"));p.getComputedStyle||f(27,
  26. !0);if(e=p.getComputedStyle(e,void 0))e=e.getPropertyValue(q),B(c,"opacity"!==q)&&(e=w(e));return e},ca=r.getDeferredAnimation=function(e,q,c){var b=X(q),a=0,k=0;(c?[c]:e.series).forEach(function(e){e=X(e.options.animation);a=q&&h(q.defer)?b.defer:Math.max(a,e.duration+e.defer);k=Math.min(b.duration,e.duration)});e.renderer.forExport&&(a=0);return{defer:Math.max(0,a-k),duration:Math.min(a,k)}},S=r.inArray=function(e,q,c){f(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"});return q.indexOf(e,
  27. c)},W=r.find=Array.prototype.find?function(e,q){return e.find(q)}:function(e,q){var c,b=e.length;for(c=0;c<b;c++)if(q(e[c],c))return e[c]};r.keys=function(e){f(32,!1,void 0,{"Highcharts.keys":"use Object.keys"});return Object.keys(e)};var ja=r.offset=function(e){var q=x.documentElement;e=e.parentElement||e.parentNode?e.getBoundingClientRect():{top:0,left:0};return{top:e.top+(p.pageYOffset||q.scrollTop)-(q.clientTop||0),left:e.left+(p.pageXOffset||q.scrollLeft)-(q.clientLeft||0)}},fa=r.stop=function(e,
  28. q){for(var c=r.timers.length;c--;)r.timers[c].elem!==e||q&&q!==r.timers[c].prop||(r.timers[c].stopped=!0)},V=r.objectEach=function(e,q,c){for(var b in e)Object.hasOwnProperty.call(e,b)&&q.call(c||e[b],e[b],b,e)};V({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(e,q){r[q]=function(c){var b;f(32,!1,void 0,(b={},b["Highcharts."+q]="use Array."+e,b));return Array.prototype[e].apply(c,[].slice.call(arguments,1))}});var ka=r.addEvent=function(e,q,c,b){void 0===b&&(b={});var a=
  29. e.addEventListener||r.addEventListenerPolyfill;var k="function"===typeof e&&e.prototype?e.prototype.protoEvents=e.prototype.protoEvents||{}:e.hcEvents=e.hcEvents||{};r.Point&&e instanceof r.Point&&e.series&&e.series.chart&&(e.series.chart.runTrackerClick=!0);a&&a.call(e,q,c,!1);k[q]||(k[q]=[]);k[q].push({fn:c,order:"number"===typeof b.order?b.order:Infinity});k[q].sort(function(e,q){return e.order-q.order});return function(){ha(e,q,c)}},ha=r.removeEvent=function(e,q,c){function b(q,c){var b=e.removeEventListener||
  30. r.removeEventListenerPolyfill;b&&b.call(e,q,c,!1)}function a(c){var a;if(e.nodeName){if(q){var k={};k[q]=!0}else k=c;V(k,function(e,q){if(c[q])for(a=c[q].length;a--;)b(q,c[q][a].fn)})}}var k;["protoEvents","hcEvents"].forEach(function(d,g){var O=(g=g?e:e.prototype)&&g[d];O&&(q?(k=O[q]||[],c?(O[q]=k.filter(function(e){return c!==e.fn}),b(q,c)):(a(O),O[q]=[])):(a(O),g[d]={}))})},T=r.fireEvent=function(e,q,c,b){var a;c=c||{};if(x.createEvent&&(e.dispatchEvent||e.fireEvent)){var d=x.createEvent("Events");
  31. d.initEvent(q,!0,!0);k(d,c);e.dispatchEvent?e.dispatchEvent(d):e.fireEvent(q,d)}else c.target||k(c,{preventDefault:function(){c.defaultPrevented=!0},target:e,type:q}),function(q,b){void 0===q&&(q=[]);void 0===b&&(b=[]);var k=0,d=0,g=q.length+b.length;for(a=0;a<g;a++)!1===(q[k]?b[d]?q[k].order<=b[d].order?q[k++]:b[d++]:q[k++]:b[d++]).fn.call(e,c)&&c.preventDefault()}(e.protoEvents&&e.protoEvents[q],e.hcEvents&&e.hcEvents[q]);b&&!c.defaultPrevented&&b.call(e,c)},U=r.animate=function(e,q,c){var b,a=
  32. "",k,d;if(!C(c)){var g=arguments;c={duration:g[2],easing:g[3],complete:g[4]}}n(c.duration)||(c.duration=400);c.easing="function"===typeof c.easing?c.easing:Math[c.easing]||Math.easeInOutSine;c.curAnim=Q(q);V(q,function(g,O){fa(e,O);d=new I(e,c,O);k=null;"d"===O&&H(q.d)?(d.paths=d.initPath(e,e.pathArray,q.d),d.toD=q.d,b=0,k=1):e.attr?b=e.attr(O):(b=parseFloat(ea(e,O))||0,"opacity"!==O&&(a="px"));k||(k=g);k&&k.match&&k.match("px")&&(k=k.replace(/px/g,""));d.run(b,k,a)})},da=r.seriesType=function(e,
  33. q,c,b,a){var k=ia(),d=r.seriesTypes;k.plotOptions[e]=Q(k.plotOptions[q],c);d[e]=y(d[q]||function(){},b);d[e].prototype.type=e;a&&(d[e].prototype.pointClass=y(r.Point,a));return d[e]},M,la=r.uniqueKey=function(){var e=Math.random().toString(36).substring(2,9)+"-",q=0;return function(){return"highcharts-"+(M?"":e)+q++}}(),ma=r.useSerialIds=function(e){return M=B(e,M)},na=r.isFunction=function(e){return"function"===typeof e},ia=r.getOptions=function(){return r.defaultOptions},oa=r.setOptions=function(e){r.defaultOptions=
  34. Q(!0,r.defaultOptions,e);(e.time||e.global)&&r.time.update(Q(r.defaultOptions.global,r.defaultOptions.time,e.global,e.time));return r.defaultOptions};p.jQuery&&(p.jQuery.fn.highcharts=function(){var e=[].slice.call(arguments);if(this[0])return e[0]?(new (r[J(e[0])?e.shift():"Chart"])(this[0],e[0],e[1]),this):D[v(this[0],"data-highcharts-chart")]});return{Fx:r.Fx,addEvent:ka,animate:U,animObject:X,arrayMax:q,arrayMin:e,attr:v,clamp:function(e,q,c){return e>q?e<c?e:c:q},clearTimeout:a,correctFloat:Z,
  35. createElement:F,css:b,defined:h,destroyObjectProperties:O,discardElement:P,erase:l,error:f,extend:k,extendClass:y,find:W,fireEvent:T,format:A,getDeferredAnimation:ca,getMagnitude:N,getNestedProperty:E,getOptions:ia,getStyle:ea,inArray:S,isArray:H,isClass:m,isDOMElement:u,isFunction:na,isNumber:n,isObject:C,isString:J,merge:Q,normalizeTickInterval:K,numberFormat:Y,objectEach:V,offset:ja,pad:G,pick:B,pInt:w,relativeLength:L,removeEvent:ha,seriesType:da,setAnimation:aa,setOptions:oa,splat:d,stableSort:c,
  36. stop:fa,syncTimeout:g,timeUnits:ba,uniqueKey:la,useSerialIds:ma,wrap:t}});M(v,"Core/Color.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.isNumber,C=f.merge,z=f.pInt;f=function(){function f(r){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(f){return[z(f[1]),z(f[2]),z(f[3]),parseFloat(f[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(f){return[z(f[1]),
  37. z(f[2]),z(f[3]),1]}}];this.rgba=[];if(!(this instanceof f))return new f(r);this.init(r)}f.parse=function(r){return new f(r)};f.prototype.init=function(r){var D,x;if((this.input=r=f.names[r&&r.toLowerCase?r.toLowerCase():""]||r)&&r.stops)this.stops=r.stops.map(function(w){return new f(w[1])});else{if(r&&r.charAt&&"#"===r.charAt()){var p=r.length;r=parseInt(r.substr(1),16);7===p?D=[(r&16711680)>>16,(r&65280)>>8,r&255,1]:4===p&&(D=[(r&3840)>>4|(r&3840)>>8,(r&240)>>4|r&240,(r&15)<<4|r&15,1])}if(!D)for(x=
  38. this.parsers.length;x--&&!D;){var I=this.parsers[x];(p=I.regex.exec(r))&&(D=I.parse(p))}}this.rgba=D||[]};f.prototype.get=function(f){var r=this.input,x=this.rgba;if("undefined"!==typeof this.stops){var p=C(r);p.stops=[].concat(p.stops);this.stops.forEach(function(I,w){p.stops[w]=[p.stops[w][0],I.get(f)]})}else p=x&&v(x[0])?"rgb"===f||!f&&1===x[3]?"rgb("+x[0]+","+x[1]+","+x[2]+")":"a"===f?x[3]:"rgba("+x.join(",")+")":r;return p};f.prototype.brighten=function(f){var r,x=this.rgba;if(this.stops)this.stops.forEach(function(p){p.brighten(f)});
  39. else if(v(f)&&0!==f)for(r=0;3>r;r++)x[r]+=z(255*f),0>x[r]&&(x[r]=0),255<x[r]&&(x[r]=255);return this};f.prototype.setOpacity=function(f){this.rgba[3]=f;return this};f.prototype.tweenTo=function(f,r){var x=this.rgba,p=f.rgba;p.length&&x&&x.length?(f=1!==p[3]||1!==x[3],r=(f?"rgba(":"rgb(")+Math.round(p[0]+(x[0]-p[0])*(1-r))+","+Math.round(p[1]+(x[1]-p[1])*(1-r))+","+Math.round(p[2]+(x[2]-p[2])*(1-r))+(f?","+(p[3]+(x[3]-p[3])*(1-r)):"")+")"):r=f.input||"none";return r};f.names={white:"#ffffff",black:"#000000"};
  40. return f}();r.Color=f;r.color=f.parse;return r.Color});M(v,"Core/Renderer/SVG/SVGElement.js",[v["Core/Color.js"],v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f,v){var C=f.deg2rad,z=f.doc,B=f.hasTouch,E=f.isFirefox,D=f.noop,x=f.svg,p=f.SVG_NS,I=f.win,w=v.animate,J=v.animObject,H=v.attr,u=v.createElement,m=v.css,n=v.defined,l=v.erase,h=v.extend,d=v.fireEvent,g=v.isArray,a=v.isFunction,k=v.isNumber,b=v.isString,F=v.merge,y=v.objectEach,G=v.pick,L=v.pInt,t=v.stop,A=v.syncTimeout,N=v.uniqueKey;
  41. "";v=function(){function K(){this.height=this.element=void 0;this.opacity=1;this.renderer=void 0;this.SVG_NS=p;this.symbolCustomAttribs="x y width height r start end innerR anchorX anchorY rounded".split(" ");this.width=void 0}K.prototype._defaultGetter=function(c){c=G(this[c+"Value"],this[c],this.element?this.element.getAttribute(c):null,0);/^[\-0-9\.]+$/.test(c)&&(c=parseFloat(c));return c};K.prototype._defaultSetter=function(c,e,q){q.setAttribute(e,c)};K.prototype.add=function(c){var e=this.renderer,
  42. q=this.element;c&&(this.parentGroup=c);this.parentInverted=c&&c.inverted;"undefined"!==typeof this.textStr&&"text"===this.element.nodeName&&e.buildText(this);this.added=!0;if(!c||c.handleZ||this.zIndex)var b=this.zIndexSetter();b||(c?c.element:e.box).appendChild(q);if(this.onAdd)this.onAdd();return this};K.prototype.addClass=function(c,e){var q=e?"":this.attr("class")||"";c=(c||"").split(/ /g).reduce(function(e,c){-1===q.indexOf(c)&&e.push(c);return e},q?[q]:[]).join(" ");c!==q&&this.attr("class",
  43. c);return this};K.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)};K.prototype.align=function(c,e,q){var a,k={};var d=this.renderer;var g=d.alignedObjects;var t,h;if(c){if(this.alignOptions=c,this.alignByTranslate=e,!q||b(q))this.alignTo=a=q||"renderer",l(g,this),g.push(this),q=void 0}else c=this.alignOptions,e=this.alignByTranslate,a=this.alignTo;q=G(q,d[a],d);a=c.align;d=c.verticalAlign;g=(q.x||0)+(c.x||0);var y=(q.y||0)+(c.y||0);"right"===a?t=1:
  44. "center"===a&&(t=2);t&&(g+=(q.width-(c.width||0))/t);k[e?"translateX":"x"]=Math.round(g);"bottom"===d?h=1:"middle"===d&&(h=2);h&&(y+=(q.height-(c.height||0))/h);k[e?"translateY":"y"]=Math.round(y);this[this.placed?"animate":"attr"](k);this.placed=!0;this.alignAttr=k;return this};K.prototype.alignSetter=function(c){var e={left:"start",center:"middle",right:"end"};e[c]&&(this.alignValue=c,this.element.setAttribute("text-anchor",e[c]))};K.prototype.animate=function(c,e,q){var b=this,a=J(G(e,this.renderer.globalAnimation,
  45. !0));e=a.defer;G(z.hidden,z.msHidden,z.webkitHidden,!1)&&(a.duration=0);0!==a.duration?(q&&(a.complete=q),A(function(){b.element&&w(b,c,a)},e)):(this.attr(c,void 0,q),y(c,function(e,q){a.step&&a.step.call(this,e,{prop:q,pos:1})},this));return this};K.prototype.applyTextOutline=function(c){var e=this.element,q;-1!==c.indexOf("contrast")&&(c=c.replace(/contrast/g,this.renderer.getContrast(e.style.fill)));c=c.split(" ");var b=c[c.length-1];if((q=c[0])&&"none"!==q&&f.svg){this.fakeTS=!0;c=[].slice.call(e.getElementsByTagName("tspan"));
  46. this.ySetter=this.xSetter;q=q.replace(/(^[\d\.]+)(.*?)$/g,function(e,q,c){return 2*q+c});this.removeTextOutline(c);var a=e.textContent?/^[\u0591-\u065F\u066A-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC]/.test(e.textContent):!1;var k=e.firstChild;c.forEach(function(c,d){0===d&&(c.setAttribute("x",e.getAttribute("x")),d=e.getAttribute("y"),c.setAttribute("y",d||0),null===d&&e.setAttribute("y",0));d=c.cloneNode(!0);H(a&&!E?c:d,{"class":"highcharts-text-outline",fill:b,stroke:b,"stroke-width":q,"stroke-linejoin":"round"});
  47. e.insertBefore(d,k)});a&&E&&c[0]&&(c=c[0].cloneNode(!0),c.textContent=" ",e.insertBefore(c,k))}};K.prototype.attr=function(c,e,q,b){var a=this.element,k,d=this,g,O,h=this.symbolCustomAttribs;if("string"===typeof c&&"undefined"!==typeof e){var A=c;c={};c[A]=e}"string"===typeof c?d=(this[c+"Getter"]||this._defaultGetter).call(this,c,a):(y(c,function(e,q){g=!1;b||t(this,q);this.symbolName&&-1!==h.indexOf(q)&&(k||(this.symbolAttr(c),k=!0),g=!0);!this.rotation||"x"!==q&&"y"!==q||(this.doTransform=!0);
  48. g||(O=this[q+"Setter"]||this._defaultSetter,O.call(this,e,q,a),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(q)&&this.updateShadows(q,e,O))},this),this.afterSetters());q&&q.call(this);return d};K.prototype.clip=function(c){return this.attr("clip-path",c?"url("+this.renderer.url+"#"+c.id+")":"none")};K.prototype.crisp=function(c,e){e=e||c.strokeWidth||0;var q=Math.round(e)%2/2;c.x=Math.floor(c.x||this.x||0)+q;c.y=Math.floor(c.y||this.y||0)+q;c.width=Math.floor((c.width||
  49. this.width||0)-2*q);c.height=Math.floor((c.height||this.height||0)-2*q);n(c.strokeWidth)&&(c.strokeWidth=e);return c};K.prototype.complexColor=function(c,e,q){var b=this.renderer,a,k,t,h,A,l,m,G,u,L,K=[],w;d(this.renderer,"complexColor",{args:arguments},function(){c.radialGradient?k="radialGradient":c.linearGradient&&(k="linearGradient");if(k){t=c[k];A=b.gradients;l=c.stops;u=q.radialReference;g(t)&&(c[k]=t={x1:t[0],y1:t[1],x2:t[2],y2:t[3],gradientUnits:"userSpaceOnUse"});"radialGradient"===k&&u&&
  50. !n(t.gradientUnits)&&(h=t,t=F(t,b.getRadialAttr(u,h),{gradientUnits:"userSpaceOnUse"}));y(t,function(e,q){"id"!==q&&K.push(q,e)});y(l,function(e){K.push(e)});K=K.join(",");if(A[K])L=A[K].attr("id");else{t.id=L=N();var d=A[K]=b.createElement(k).attr(t).add(b.defs);d.radAttr=h;d.stops=[];l.forEach(function(e){0===e[1].indexOf("rgba")?(a=r.parse(e[1]),m=a.get("rgb"),G=a.get("a")):(m=e[1],G=1);e=b.createElement("stop").attr({offset:e[0],"stop-color":m,"stop-opacity":G}).add(d);d.stops.push(e)})}w="url("+
  51. b.url+"#"+L+")";q.setAttribute(e,w);q.gradient=K;c.toString=function(){return w}}})};K.prototype.css=function(c){var e=this.styles,q={},b=this.element,a="",k=!e,d=["textOutline","textOverflow","width"];c&&c.color&&(c.fill=c.color);e&&y(c,function(c,b){e&&e[b]!==c&&(q[b]=c,k=!0)});if(k){e&&(c=h(e,q));if(c)if(null===c.width||"auto"===c.width)delete this.textWidth;else if("text"===b.nodeName.toLowerCase()&&c.width)var g=this.textWidth=L(c.width);this.styles=c;g&&!x&&this.renderer.forExport&&delete c.width;
  52. if(b.namespaceURI===this.SVG_NS){var t=function(e,q){return"-"+q.toLowerCase()};y(c,function(e,q){-1===d.indexOf(q)&&(a+=q.replace(/([A-Z])/g,t)+":"+e+";")});a&&H(b,"style",a)}else m(b,c);this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),c&&c.textOutline&&this.applyTextOutline(c.textOutline))}return this};K.prototype.dashstyleSetter=function(c){var e=this["stroke-width"];"inherit"===e&&(e=1);if(c=c&&c.toLowerCase()){var q=c.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot",
  53. "3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(c=q.length;c--;)q[c]=""+L(q[c])*G(e,NaN);c=q.join(",").replace(/NaN/g,"none");this.element.setAttribute("stroke-dasharray",c)}};K.prototype.destroy=function(){var c=this,e=c.element||{},q=c.renderer,b=q.isSVG&&"SPAN"===e.nodeName&&c.parentGroup||void 0,a=e.ownerSVGElement;e.onclick=e.onmouseout=e.onmouseover=e.onmousemove=e.point=
  54. null;t(c);if(c.clipPath&&a){var k=c.clipPath;[].forEach.call(a.querySelectorAll("[clip-path],[CLIP-PATH]"),function(e){-1<e.getAttribute("clip-path").indexOf(k.element.id)&&e.removeAttribute("clip-path")});c.clipPath=k.destroy()}if(c.stops){for(a=0;a<c.stops.length;a++)c.stops[a].destroy();c.stops.length=0;c.stops=void 0}c.safeRemoveChild(e);for(q.styledMode||c.destroyShadows();b&&b.div&&0===b.div.childNodes.length;)e=b.parentGroup,c.safeRemoveChild(b.div),delete b.div,b=e;c.alignTo&&l(q.alignedObjects,
  55. c);y(c,function(e,q){c[q]&&c[q].parentGroup===c&&c[q].destroy&&c[q].destroy();delete c[q]})};K.prototype.destroyShadows=function(){(this.shadows||[]).forEach(function(c){this.safeRemoveChild(c)},this);this.shadows=void 0};K.prototype.destroyTextPath=function(c,e){var q=c.getElementsByTagName("text")[0];if(q){if(q.removeAttribute("dx"),q.removeAttribute("dy"),e.element.setAttribute("id",""),this.textPathWrapper&&q.getElementsByTagName("textPath").length){for(c=this.textPathWrapper.element.childNodes;c.length;)q.appendChild(c[0]);
  56. q.removeChild(this.textPathWrapper.element)}}else if(c.getAttribute("dx")||c.getAttribute("dy"))c.removeAttribute("dx"),c.removeAttribute("dy");this.textPathWrapper&&(this.textPathWrapper=this.textPathWrapper.destroy())};K.prototype.dSetter=function(c,e,q){g(c)&&("string"===typeof c[0]&&(c=this.renderer.pathToSegments(c)),this.pathArray=c,c=c.reduce(function(e,q,c){return q&&q.join?(c?e+" ":"")+q.join(" "):(q||"").toString()},""));/(NaN| {2}|^$)/.test(c)&&(c="M 0 0");this[e]!==c&&(q.setAttribute(e,
  57. c),this[e]=c)};K.prototype.fadeOut=function(c){var e=this;e.animate({opacity:0},{duration:G(c,150),complete:function(){e.attr({y:-9999}).hide()}})};K.prototype.fillSetter=function(c,e,q){"string"===typeof c?q.setAttribute(e,c):c&&this.complexColor(c,e,q)};K.prototype.getBBox=function(c,e){var q,b=this.renderer,k=this.element,d=this.styles,g=this.textStr,t=b.cache,y=b.cacheKeys,A=k.namespaceURI===this.SVG_NS;e=G(e,this.rotation,0);var F=b.styledMode?k&&K.prototype.getStyle.call(k,"font-size"):d&&d.fontSize;
  58. if(n(g)){var l=g.toString();-1===l.indexOf("<")&&(l=l.replace(/[0-9]/g,"0"));l+=["",e,F,this.textWidth,d&&d.textOverflow,d&&d.fontWeight].join()}l&&!c&&(q=t[l]);if(!q){if(A||b.forExport){try{var m=this.fakeTS&&function(e){[].forEach.call(k.querySelectorAll(".highcharts-text-outline"),function(q){q.style.display=e})};a(m)&&m("none");q=k.getBBox?h({},k.getBBox()):{width:k.offsetWidth,height:k.offsetHeight};a(m)&&m("")}catch(W){""}if(!q||0>q.width)q={width:0,height:0}}else q=this.htmlGetBBox();b.isSVG&&
  59. (c=q.width,b=q.height,A&&(q.height=b={"11px,17":14,"13px,20":16}[d&&d.fontSize+","+Math.round(b)]||b),e&&(d=e*C,q.width=Math.abs(b*Math.sin(d))+Math.abs(c*Math.cos(d)),q.height=Math.abs(b*Math.cos(d))+Math.abs(c*Math.sin(d))));if(l&&0<q.height){for(;250<y.length;)delete t[y.shift()];t[l]||y.push(l);t[l]=q}}return q};K.prototype.getStyle=function(c){return I.getComputedStyle(this.element||this,"").getPropertyValue(c)};K.prototype.hasClass=function(c){return-1!==(""+this.attr("class")).split(" ").indexOf(c)};
  60. K.prototype.hide=function(c){c?this.attr({y:-9999}):this.attr({visibility:"hidden"});return this};K.prototype.htmlGetBBox=function(){return{height:0,width:0,x:0,y:0}};K.prototype.init=function(c,e){this.element="span"===e?u(e):z.createElementNS(this.SVG_NS,e);this.renderer=c;d(this,"afterInit")};K.prototype.invert=function(c){this.inverted=c;this.updateTransform();return this};K.prototype.on=function(c,e){var q,b,a=this.element,k;B&&"click"===c?(a.ontouchstart=function(e){q=e.touches[0].clientX;b=
  61. e.touches[0].clientY},a.ontouchend=function(c){q&&4<=Math.sqrt(Math.pow(q-c.changedTouches[0].clientX,2)+Math.pow(b-c.changedTouches[0].clientY,2))||e.call(a,c);k=!0;c.preventDefault()},a.onclick=function(q){k||e.call(a,q)}):a["on"+c]=e;return this};K.prototype.opacitySetter=function(c,e,q){this[e]=c;q.setAttribute(e,c)};K.prototype.removeClass=function(c){return this.attr("class",(""+this.attr("class")).replace(b(c)?new RegExp("(^| )"+c+"( |$)"):c," ").replace(/ +/g," ").trim())};K.prototype.removeTextOutline=
  62. function(c){for(var e=c.length,q;e--;)q=c[e],"highcharts-text-outline"===q.getAttribute("class")&&l(c,this.element.removeChild(q))};K.prototype.safeRemoveChild=function(c){var e=c.parentNode;e&&e.removeChild(c)};K.prototype.setRadialReference=function(c){var e=this.element.gradient&&this.renderer.gradients[this.element.gradient];this.element.radialReference=c;e&&e.radAttr&&e.animate(this.renderer.getRadialAttr(c,e.radAttr));return this};K.prototype.setTextPath=function(c,e){var q=this.element,b={textAnchor:"text-anchor"},
  63. a=!1,d=this.textPathWrapper,g=!d;e=F(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},e);var t=e.attributes;if(c&&e&&e.enabled){d&&null===d.element.parentNode?(g=!0,d=d.destroy()):d&&this.removeTextOutline.call(d.parentGroup,[].slice.call(q.getElementsByTagName("tspan")));this.options&&this.options.padding&&(t.dx=-this.options.padding);d||(this.textPathWrapper=d=this.renderer.createElement("textPath"),a=!0);var h=d.element;(e=c.element.getAttribute("id"))||c.element.setAttribute("id",
  64. e=N());if(g)for(c=q.getElementsByTagName("tspan");c.length;)c[0].setAttribute("y",0),k(t.dx)&&c[0].setAttribute("x",-t.dx),h.appendChild(c[0]);a&&d&&d.add({element:this.text?this.text.element:q});h.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+e);n(t.dy)&&(h.parentNode.setAttribute("dy",t.dy),delete t.dy);n(t.dx)&&(h.parentNode.setAttribute("dx",t.dx),delete t.dx);y(t,function(e,q){h.setAttribute(b[q]||q,e)});q.removeAttribute("transform");this.removeTextOutline.call(d,
  65. [].slice.call(q.getElementsByTagName("tspan")));this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0});this.applyTextOutline=this.updateTransform=D}else d&&(delete this.updateTransform,delete this.applyTextOutline,this.destroyTextPath(q,c),this.updateTransform(),this.options&&this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this};K.prototype.shadow=function(c,e,q){var b=[],a=this.element,d=!1,k=this.oldShadowOptions;var g={color:"#000000",
  66. offsetX:1,offsetY:1,opacity:.15,width:3};var t;!0===c?t=g:"object"===typeof c&&(t=h(g,c));t&&(t&&k&&y(t,function(e,q){e!==k[q]&&(d=!0)}),d&&this.destroyShadows(),this.oldShadowOptions=t);if(!t)this.destroyShadows();else if(!this.shadows){var A=t.opacity/t.width;var F=this.parentInverted?"translate(-1,-1)":"translate("+t.offsetX+", "+t.offsetY+")";for(g=1;g<=t.width;g++){var l=a.cloneNode(!1);var m=2*t.width+1-2*g;H(l,{stroke:c.color||"#000000","stroke-opacity":A*g,"stroke-width":m,transform:F,fill:"none"});
  67. l.setAttribute("class",(l.getAttribute("class")||"")+" highcharts-shadow");q&&(H(l,"height",Math.max(H(l,"height")-m,0)),l.cutHeight=m);e?e.element.appendChild(l):a.parentNode&&a.parentNode.insertBefore(l,a);b.push(l)}this.shadows=b}return this};K.prototype.show=function(c){return this.attr({visibility:c?"inherit":"visible"})};K.prototype.strokeSetter=function(c,e,q){this[e]=c;this.stroke&&this["stroke-width"]?(K.prototype.fillSetter.call(this,this.stroke,"stroke",q),q.setAttribute("stroke-width",
  68. this["stroke-width"]),this.hasStroke=!0):"stroke-width"===e&&0===c&&this.hasStroke?(q.removeAttribute("stroke"),this.hasStroke=!1):this.renderer.styledMode&&this["stroke-width"]&&(q.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)};K.prototype.strokeWidth=function(){if(!this.renderer.styledMode)return this["stroke-width"]||0;var c=this.getStyle("stroke-width"),e=0;if(c.indexOf("px")===c.length-2)e=L(c);else if(""!==c){var q=z.createElementNS(p,"rect");H(q,{width:c,"stroke-width":0});
  69. this.element.parentNode.appendChild(q);e=q.getBBox().width;q.parentNode.removeChild(q)}return e};K.prototype.symbolAttr=function(c){var e=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(q){e[q]=G(c[q],e[q])});e.attr({d:e.renderer.symbols[e.symbolName](e.x,e.y,e.width,e.height,e)})};K.prototype.textSetter=function(c){c!==this.textStr&&(delete this.textPxLength,this.textStr=c,this.added&&this.renderer.buildText(this))};K.prototype.titleSetter=function(c){var e=
  70. this.element.getElementsByTagName("title")[0];e||(e=z.createElementNS(this.SVG_NS,"title"),this.element.appendChild(e));e.firstChild&&e.removeChild(e.firstChild);e.appendChild(z.createTextNode(String(G(c,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")))};K.prototype.toFront=function(){var c=this.element;c.parentNode.appendChild(c);return this};K.prototype.translate=function(c,e){return this.attr({translateX:c,translateY:e})};K.prototype.updateShadows=function(c,e,q){var b=this.shadows;
  71. if(b)for(var a=b.length;a--;)q.call(b[a],"height"===c?Math.max(e-(b[a].cutHeight||0),0):"d"===c?this.d:e,c,b[a])};K.prototype.updateTransform=function(){var c=this.translateX||0,e=this.translateY||0,q=this.scaleX,b=this.scaleY,a=this.inverted,d=this.rotation,k=this.matrix,g=this.element;a&&(c+=this.width,e+=this.height);c=["translate("+c+","+e+")"];n(k)&&c.push("matrix("+k.join(",")+")");a?c.push("rotate(90) scale(-1,1)"):d&&c.push("rotate("+d+" "+G(this.rotationOriginX,g.getAttribute("x"),0)+" "+
  72. G(this.rotationOriginY,g.getAttribute("y")||0)+")");(n(q)||n(b))&&c.push("scale("+G(q,1)+" "+G(b,1)+")");c.length&&g.setAttribute("transform",c.join(" "))};K.prototype.visibilitySetter=function(c,e,q){"inherit"===c?q.removeAttribute(e):this[e]!==c&&q.setAttribute(e,c);this[e]=c};K.prototype.xGetter=function(c){"circle"===this.element.nodeName&&("x"===c?c="cx":"y"===c&&(c="cy"));return this._defaultGetter(c)};K.prototype.zIndexSetter=function(c,e){var q=this.renderer,b=this.parentGroup,a=(b||q).element||
  73. q.box,d=this.element,k=!1;q=a===q.box;var g=this.added;var t;n(c)?(d.setAttribute("data-z-index",c),c=+c,this[e]===c&&(g=!1)):n(this[e])&&d.removeAttribute("data-z-index");this[e]=c;if(g){(c=this.zIndex)&&b&&(b.handleZ=!0);e=a.childNodes;for(t=e.length-1;0<=t&&!k;t--){b=e[t];g=b.getAttribute("data-z-index");var h=!n(g);if(b!==d)if(0>c&&h&&!q&&!t)a.insertBefore(d,e[t]),k=!0;else if(L(g)<=c||h&&(!n(c)||0<=c))a.insertBefore(d,e[t+1]||null),k=!0}k||(a.insertBefore(d,e[q?3:0]||null),k=!0)}return k};return K}();
  74. v.prototype["stroke-widthSetter"]=v.prototype.strokeSetter;v.prototype.yGetter=v.prototype.xGetter;v.prototype.matrixSetter=v.prototype.rotationOriginXSetter=v.prototype.rotationOriginYSetter=v.prototype.rotationSetter=v.prototype.scaleXSetter=v.prototype.scaleYSetter=v.prototype.translateXSetter=v.prototype.translateYSetter=v.prototype.verticalAlignSetter=function(b,c){this[c]=b;this.doTransform=!0};f.SVGElement=v;return f.SVGElement});M(v,"Core/Renderer/SVG/SVGLabel.js",[v["Core/Renderer/SVG/SVGElement.js"],
  75. v["Core/Utilities.js"]],function(r,f){var v=this&&this.__extends||function(){var f=function(p,I){f=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(w,p){w.__proto__=p}||function(w,p){for(var H in p)p.hasOwnProperty(H)&&(w[H]=p[H])};return f(p,I)};return function(p,I){function w(){this.constructor=p}f(p,I);p.prototype=null===I?Object.create(I):(w.prototype=I.prototype,new w)}}(),C=f.defined,z=f.extend,B=f.isNumber,E=f.merge,D=f.removeEvent;return function(f){function p(I,w,x,H,u,m,n,
  76. l,h,d){var g=f.call(this)||this;g.init(I,"g");g.textStr=w;g.x=x;g.y=H;g.anchorX=m;g.anchorY=n;g.baseline=h;g.className=d;"button"!==d&&g.addClass("highcharts-label");d&&g.addClass("highcharts-"+d);g.text=I.text("",0,0,l).attr({zIndex:1});if("string"===typeof u){var a=/^url\((.*?)\)$/.test(u);if(g.renderer.symbols[u]||a)g.symbolKey=u}g.bBox=p.emptyBBox;g.padding=3;g.paddingLeft=0;g.baselineOffset=0;g.needsBox=I.styledMode||a;g.deferredAttr={};g.alignFactor=0;return g}v(p,f);p.prototype.alignSetter=
  77. function(p){p={left:0,center:.5,right:1}[p];p!==this.alignFactor&&(this.alignFactor=p,this.bBox&&B(this.xSetting)&&this.attr({x:this.xSetting}))};p.prototype.anchorXSetter=function(p,w){this.anchorX=p;this.boxAttr(w,Math.round(p)-this.getCrispAdjust()-this.xSetting)};p.prototype.anchorYSetter=function(p,w){this.anchorY=p;this.boxAttr(w,p-this.ySetting)};p.prototype.boxAttr=function(p,w){this.box?this.box.attr(p,w):this.deferredAttr[p]=w};p.prototype.css=function(f){if(f){var w={};f=E(f);p.textProps.forEach(function(p){"undefined"!==
  78. typeof f[p]&&(w[p]=f[p],delete f[p])});this.text.css(w);var I="fontSize"in w||"fontWeight"in w;if("width"in w||I)this.updateBoxSize(),I&&this.updateTextPadding()}return r.prototype.css.call(this,f)};p.prototype.destroy=function(){D(this.element,"mouseenter");D(this.element,"mouseleave");this.text&&this.text.destroy();this.box&&(this.box=this.box.destroy());r.prototype.destroy.call(this)};p.prototype.fillSetter=function(p,w){p&&(this.needsBox=!0);this.fill=p;this.boxAttr(w,p)};p.prototype.getBBox=
  79. function(){var p=this.bBox,w=this.padding;return{width:p.width+2*w,height:p.height+2*w,x:p.x-w,y:p.y-w}};p.prototype.getCrispAdjust=function(){return this.renderer.styledMode&&this.box?this.box.strokeWidth()%2/2:(this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2};p.prototype.heightSetter=function(p){this.heightSetting=p};p.prototype.on=function(p,w){var f=this,H=f.text,u=H&&"SPAN"===H.element.tagName?H:void 0;if(u){var m=function(m){("mouseenter"===p||"mouseleave"===p)&&m.relatedTarget instanceof
  80. Element&&(f.element.contains(m.relatedTarget)||u.element.contains(m.relatedTarget))||w.call(f.element,m)};u.on(p,m)}r.prototype.on.call(f,p,m||w);return f};p.prototype.onAdd=function(){var p=this.textStr;this.text.add(this);this.attr({text:C(p)?p:"",x:this.x,y:this.y});this.box&&C(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})};p.prototype.paddingSetter=function(p){C(p)&&p!==this.padding&&(this.padding=p,this.updateTextPadding())};p.prototype.paddingLeftSetter=function(p){C(p)&&
  81. p!==this.paddingLeft&&(this.paddingLeft=p,this.updateTextPadding())};p.prototype.rSetter=function(p,w){this.boxAttr(w,p)};p.prototype.shadow=function(p){p&&!this.renderer.styledMode&&(this.updateBoxSize(),this.box&&this.box.shadow(p));return this};p.prototype.strokeSetter=function(p,w){this.stroke=p;this.boxAttr(w,p)};p.prototype["stroke-widthSetter"]=function(p,w){p&&(this.needsBox=!0);this["stroke-width"]=p;this.boxAttr(w,p)};p.prototype["text-alignSetter"]=function(p){this.textAlign=p};p.prototype.textSetter=
  82. function(p){"undefined"!==typeof p&&this.text.attr({text:p});this.updateBoxSize();this.updateTextPadding()};p.prototype.updateBoxSize=function(){var f=this.text.element.style,w={},x=this.padding,H=this.paddingLeft,u=B(this.widthSetting)&&B(this.heightSetting)&&!this.textAlign||!C(this.text.textStr)?p.emptyBBox:this.text.getBBox();this.width=(this.widthSetting||u.width||0)+2*x+H;this.height=(this.heightSetting||u.height||0)+2*x;this.baselineOffset=x+Math.min(this.renderer.fontMetrics(f&&f.fontSize,
  83. this.text).b,u.height||Infinity);this.needsBox&&(this.box||(f=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect(),f.addClass(("button"===this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),f.add(this),f=this.getCrispAdjust(),w.x=f,w.y=(this.baseline?-this.baselineOffset:0)+f),w.width=Math.round(this.width),w.height=Math.round(this.height),this.box.attr(z(w,this.deferredAttr)),this.deferredAttr={});this.bBox=u};p.prototype.updateTextPadding=
  84. function(){var p=this.text,w=this.baseline?0:this.baselineOffset,f=this.paddingLeft+this.padding;C(this.widthSetting)&&this.bBox&&("center"===this.textAlign||"right"===this.textAlign)&&(f+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width));if(f!==p.x||w!==p.y)p.attr("x",f),p.hasBoxWidthChanged&&(this.bBox=p.getBBox(!0),this.updateBoxSize()),"undefined"!==typeof w&&p.attr("y",w);p.x=f;p.y=w};p.prototype.widthSetter=function(p){this.widthSetting=B(p)?p:void 0};p.prototype.xSetter=
  85. function(p){this.x=p;this.alignFactor&&(p-=this.alignFactor*((this.widthSetting||this.bBox.width)+2*this.padding),this["forceAnimate:x"]=!0);this.xSetting=Math.round(p);this.attr("translateX",this.xSetting)};p.prototype.ySetter=function(p){this.ySetting=this.y=Math.round(p);this.attr("translateY",this.ySetting)};p.emptyBBox={width:0,height:0,x:0,y:0};p.textProps="color cursor direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" ");
  86. return p}(r)});M(v,"Core/Renderer/SVG/SVGRenderer.js",[v["Core/Color.js"],v["Core/Globals.js"],v["Core/Renderer/SVG/SVGElement.js"],v["Core/Renderer/SVG/SVGLabel.js"],v["Core/Utilities.js"]],function(r,f,v,C,z){var B=z.addEvent,E=z.attr,D=z.createElement,x=z.css,p=z.defined,I=z.destroyObjectProperties,w=z.extend,J=z.isArray,H=z.isNumber,u=z.isObject,m=z.isString,n=z.merge,l=z.objectEach,h=z.pick,d=z.pInt,g=z.splat,a=z.uniqueKey,k=f.charts,b=f.deg2rad,F=f.doc,y=f.isFirefox,G=f.isMS,L=f.isWebKit;z=
  87. f.noop;var t=f.svg,A=f.SVG_NS,N=f.symbolSizes,K=f.win,c=function(){function e(e,c,b,a,d,k,g){this.width=this.url=this.style=this.isSVG=this.imgCount=this.height=this.gradients=this.globalAnimation=this.defs=this.chartIndex=this.cacheKeys=this.cache=this.boxWrapper=this.box=this.alignedObjects=void 0;this.init(e,c,b,a,d,k,g)}e.prototype.init=function(e,c,b,a,d,k,g){var q=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"});g||q.css(this.getStyle(a));a=q.element;e.appendChild(a);
  88. E(e,"dir","ltr");-1===e.innerHTML.indexOf("xmlns")&&E(a,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=a;this.boxWrapper=q;this.alignedObjects=[];this.url=(y||L)&&F.getElementsByTagName("base").length?K.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(F.createTextNode("Created with Highcharts 8.2.0"));this.defs=this.createElement("defs").add();this.allowHTML=k;this.forExport=d;this.styledMode=g;
  89. this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount=0;this.setSize(c,b,!1);var t;y&&e.getBoundingClientRect&&(c=function(){x(e,{left:0,top:0});t=e.getBoundingClientRect();x(e,{left:Math.ceil(t.left)-t.left+"px",top:Math.ceil(t.top)-t.top+"px"})},c(),this.unSubPixelFix=B(K,"resize",c))};e.prototype.definition=function(e){function q(e,b){var a;g(e).forEach(function(e){var d=c.createElement(e.tagName),k={};l(e,function(e,q){"tagName"!==q&&"children"!==q&&"textContent"!==q&&(k[q]=e)});d.attr(k);
  90. d.add(b||c.defs);e.textContent&&d.element.appendChild(F.createTextNode(e.textContent));q(e.children||[],d);a=d});return a}var c=this;return q(e)};e.prototype.getStyle=function(e){return this.style=w({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},e)};e.prototype.setStyle=function(e){this.boxWrapper.css(this.getStyle(e))};e.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width};e.prototype.destroy=function(){var e=this.defs;this.box=
  91. null;this.boxWrapper=this.boxWrapper.destroy();I(this.gradients||{});this.gradients=null;e&&(this.defs=e.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=null};e.prototype.createElement=function(e){var q=new this.Element;q.init(this,e);return q};e.prototype.getRadialAttr=function(e,c){return{cx:e[0]-e[2]/2+c.cx*e[2],cy:e[1]-e[2]/2+c.cy*e[2],r:c.r*e[2]}};e.prototype.truncate=function(e,c,b,a,d,k,g){var q=this,t=e.rotation,O,h=a?1:0,P=(b||a).length,y=P,A=[],l=function(e){c.firstChild&&
  92. c.removeChild(c.firstChild);e&&c.appendChild(F.createTextNode(e))},m=function(k,t){t=t||k;if("undefined"===typeof A[t])if(c.getSubStringLength)try{A[t]=d+c.getSubStringLength(0,a?t+1:t)}catch(pa){""}else q.getSpanWidth&&(l(g(b||a,k)),A[t]=d+q.getSpanWidth(e,c));return A[t]},G;e.rotation=0;var n=m(c.textContent.length);if(G=d+n>k){for(;h<=P;)y=Math.ceil((h+P)/2),a&&(O=g(a,y)),n=m(y,O&&O.length-1),h===P?h=P+1:n>k?P=y-1:h=y;0===P?l(""):b&&P===b.length-1||l(O||g(b||a,y))}a&&a.splice(0,y);e.actualWidth=
  93. n;e.rotation=t;return G};e.prototype.buildText=function(e){var q=e.element,c=this,b=c.forExport,a=h(e.textStr,"").toString(),k=-1!==a.indexOf("<"),g=q.childNodes,y,G=E(q,"x"),n=e.styles,u=e.textWidth,L=n&&n.lineHeight,K=n&&n.textOutline,N=n&&"ellipsis"===n.textOverflow,p=n&&"nowrap"===n.whiteSpace,w=n&&n.fontSize,f,H=g.length;n=u&&!e.added&&this.box;var r=function(e){var b;c.styledMode||(b=/(px|em)$/.test(e&&e.style.fontSize)?e.style.fontSize:w||c.style.fontSize||12);return L?d(L):c.fontMetrics(b,
  94. e.getAttribute("style")?e:q).h},I=function(e,q){l(c.escapes,function(c,b){q&&-1!==q.indexOf(c)||(e=e.toString().replace(new RegExp(c,"g"),b))});return e},J=function(e,q){var c=e.indexOf("<");e=e.substring(c,e.indexOf(">")-c);c=e.indexOf(q+"=");if(-1!==c&&(c=c+q.length+1,q=e.charAt(c),'"'===q||"'"===q))return e=e.substring(c+1),e.substring(0,e.indexOf(q))},D=/<br.*?>/g;var v=[a,N,p,L,K,w,u].join();if(v!==e.textCache){for(e.textCache=v;H--;)q.removeChild(g[H]);k||K||N||u||-1!==a.indexOf(" ")&&(!p||
  95. D.test(a))?(n&&n.appendChild(q),k?(a=c.styledMode?a.replace(/<(b|strong)>/g,'<span class="highcharts-strong">').replace(/<(i|em)>/g,'<span class="highcharts-emphasized">'):a.replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">'),a=a.replace(/<a/g,"<span").replace(/<\/(b|strong|i|em|a)>/g,"</span>").split(D)):a=[a],a=a.filter(function(e){return""!==e}),a.forEach(function(a,d){var k=0,g=0;a=a.replace(/^\s+|\s+$/g,"").replace(/<span/g,"|||<span").replace(/<\/span>/g,
  96. "</span>|||");var h=a.split("|||");h.forEach(function(a){if(""!==a||1===h.length){var O={},P=F.createElementNS(c.SVG_NS,"tspan"),l,m;(l=J(a,"class"))&&E(P,"class",l);if(l=J(a,"style"))l=l.replace(/(;| |^)color([ :])/,"$1fill$2"),E(P,"style",l);if((m=J(a,"href"))&&!b&&-1===m.split(":")[0].toLowerCase().indexOf("javascript")){var n=F.createElementNS(c.SVG_NS,"a");E(n,"href",m);E(P,"class","highcharts-anchor");n.appendChild(P);c.styledMode||x(P,{cursor:"pointer"})}a=I(a.replace(/<[a-zA-Z\/](.|\n)*?>/g,
  97. "")||" ");if(" "!==a){P.appendChild(F.createTextNode(a));k?O.dx=0:d&&null!==G&&(O.x=G);E(P,O);q.appendChild(n||P);!k&&f&&(!t&&b&&x(P,{display:"block"}),E(P,"dy",r(P)));if(u){var L=a.replace(/([^\^])-/g,"$1- ").split(" ");O=!p&&(1<h.length||d||1<L.length);n=0;m=r(P);if(N)y=c.truncate(e,P,a,void 0,0,Math.max(0,u-parseInt(w||12,10)),function(e,q){return e.substring(0,q)+"\u2026"});else if(O)for(;L.length;)L.length&&!p&&0<n&&(P=F.createElementNS(A,"tspan"),E(P,{dy:m,x:G}),l&&E(P,"style",l),P.appendChild(F.createTextNode(L.join(" ").replace(/- /g,
  98. "-"))),q.appendChild(P)),c.truncate(e,P,null,L,0===n?g:0,u,function(e,q){return L.slice(0,q).join(" ").replace(/- /g,"-")}),g=e.actualWidth,n++}k++}}});f=f||q.childNodes.length}),N&&y&&e.attr("title",I(e.textStr||"",["&lt;","&gt;"])),n&&n.removeChild(q),m(K)&&e.applyTextOutline&&e.applyTextOutline(K)):q.appendChild(F.createTextNode(I(a)))}};e.prototype.getContrast=function(e){e=r.parse(e).rgba;e[0]*=1;e[1]*=1.2;e[2]*=.5;return 459<e[0]+e[1]+e[2]?"#000000":"#FFFFFF"};e.prototype.button=function(e,
  99. c,b,a,k,d,g,t,h,y){var q=this.label(e,c,b,h,void 0,void 0,y,void 0,"button"),O=0,P=this.styledMode;e=(k=k?n(k):k)&&k.style||{};k&&k.style&&delete k.style;q.attr(n({padding:8,r:2},k));if(!P){k=n({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontWeight:"normal"}},{style:e},k);var A=k.style;delete k.style;d=n(k,{fill:"#e6e6e6"},d);var F=d.style;delete d.style;g=n(k,{fill:"#e6ebf5",style:{color:"#000000",fontWeight:"bold"}},g);var l=g.style;delete g.style;t=
  100. n(k,{style:{color:"#cccccc"}},t);var m=t.style;delete t.style}B(q.element,G?"mouseover":"mouseenter",function(){3!==O&&q.setState(1)});B(q.element,G?"mouseout":"mouseleave",function(){3!==O&&q.setState(O)});q.setState=function(e){1!==e&&(q.state=O=e);q.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][e||0]);P||q.attr([k,d,g,t][e||0]).css([A,F,l,m][e||0])};P||q.attr(k).css(w({cursor:"default"},A));return q.on("click",
  101. function(e){3!==O&&a.call(q,e)})};e.prototype.crispLine=function(e,c,b){void 0===b&&(b="round");var q=e[0],a=e[1];q[1]===a[1]&&(q[1]=a[1]=Math[b](q[1])-c%2/2);q[2]===a[2]&&(q[2]=a[2]=Math[b](q[2])+c%2/2);return e};e.prototype.path=function(e){var q=this.styledMode?{}:{fill:"none"};J(e)?q.d=e:u(e)&&w(q,e);return this.createElement("path").attr(q)};e.prototype.circle=function(e,c,b){e=u(e)?e:"undefined"===typeof e?{}:{x:e,y:c,r:b};c=this.createElement("circle");c.xSetter=c.ySetter=function(e,q,c){c.setAttribute("c"+
  102. q,e)};return c.attr(e)};e.prototype.arc=function(e,c,b,a,k,d){u(e)?(a=e,c=a.y,b=a.r,e=a.x):a={innerR:a,start:k,end:d};e=this.symbol("arc",e,c,b,b,a);e.r=b;return e};e.prototype.rect=function(e,c,b,a,k,d){k=u(e)?e.r:k;var q=this.createElement("rect");e=u(e)?e:"undefined"===typeof e?{}:{x:e,y:c,width:Math.max(b,0),height:Math.max(a,0)};this.styledMode||("undefined"!==typeof d&&(e.strokeWidth=d,e=q.crisp(e)),e.fill="none");k&&(e.r=k);q.rSetter=function(e,c,b){q.r=e;E(b,{rx:e,ry:e})};q.rGetter=function(){return q.r};
  103. return q.attr(e)};e.prototype.setSize=function(e,c,b){var q=this.alignedObjects,a=q.length;this.width=e;this.height=c;for(this.boxWrapper.animate({width:e,height:c},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:h(b,!0)?void 0:0});a--;)q[a].align()};e.prototype.g=function(e){var q=this.createElement("g");return e?q.attr({"class":"highcharts-"+e}):q};e.prototype.image=function(e,c,b,a,k,d){var q={preserveAspectRatio:"none"},g=function(e,q){e.setAttributeNS?
  104. e.setAttributeNS("http://www.w3.org/1999/xlink","href",q):e.setAttribute("hc-svg-href",q)},t=function(q){g(h.element,e);d.call(h,q)};1<arguments.length&&w(q,{x:c,y:b,width:a,height:k});var h=this.createElement("image").attr(q);d?(g(h.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),q=new K.Image,B(q,"load",t),q.src=e,q.complete&&t({})):g(h.element,e);return h};e.prototype.symbol=function(e,c,b,a,d,g){var q=this,t=/^url\((.*?)\)$/,O=t.test(e),y=!O&&(this.symbols[e]?
  105. e:"circle"),P=y&&this.symbols[y],A;if(P){"number"===typeof c&&(A=P.call(this.symbols,Math.round(c||0),Math.round(b||0),a||0,d||0,g));var l=this.path(A);q.styledMode||l.attr("fill","none");w(l,{symbolName:y,x:c,y:b,width:a,height:d});g&&w(l,g)}else if(O){var m=e.match(t)[1];l=this.image(m);l.imgwidth=h(N[m]&&N[m].width,g&&g.width);l.imgheight=h(N[m]&&N[m].height,g&&g.height);var n=function(){l.attr({width:l.width,height:l.height})};["width","height"].forEach(function(e){l[e+"Setter"]=function(e,q){var c=
  106. {},b=this["img"+q],a="width"===q?"translateX":"translateY";this[q]=e;p(b)&&(g&&"within"===g.backgroundSize&&this.width&&this.height&&(b=Math.round(b*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(q,b),this.alignByTranslate||(c[a]=((this[q]||0)-b)/2,this.attr(c)))}});p(c)&&l.attr({x:c,y:b});l.isImg=!0;p(l.imgwidth)&&p(l.imgheight)?n():(l.attr({width:0,height:0}),D("img",{onload:function(){var e=k[q.chartIndex];0===this.width&&(x(this,{position:"absolute",
  107. top:"-999em"}),F.body.appendChild(this));N[m]={width:this.width,height:this.height};l.imgwidth=this.width;l.imgheight=this.height;l.element&&n();this.parentNode&&this.parentNode.removeChild(this);q.imgCount--;if(!q.imgCount&&e&&!e.hasLoaded)e.onload()},src:m}),this.imgCount++)}return l};e.prototype.clipRect=function(e,c,b,k){var q=a()+"-",d=this.createElement("clipPath").attr({id:q}).add(this.defs);e=this.rect(e,c,b,k,0).add(d);e.id=q;e.clipPath=d;e.count=0;return e};e.prototype.text=function(e,c,
  108. b,a){var q={};if(a&&(this.allowHTML||!this.forExport))return this.html(e,c,b);q.x=Math.round(c||0);b&&(q.y=Math.round(b));p(e)&&(q.text=e);e=this.createElement("text").attr(q);a||(e.xSetter=function(e,q,c){var b=c.getElementsByTagName("tspan"),a=c.getAttribute(q),k;for(k=0;k<b.length;k++){var d=b[k];d.getAttribute(q)===a&&d.setAttribute(q,e)}c.setAttribute(q,e)});return e};e.prototype.fontMetrics=function(e,c){e=!this.styledMode&&/px/.test(e)||!K.getComputedStyle?e||c&&c.style&&c.style.fontSize||
  109. this.style&&this.style.fontSize:c&&v.prototype.getStyle.call(c,"font-size");e=/px/.test(e)?d(e):12;c=24>e?e+3:Math.round(1.2*e);return{h:c,b:Math.round(.8*c),f:e}};e.prototype.rotCorr=function(e,c,a){var q=e;c&&a&&(q=Math.max(q*Math.cos(c*b),4));return{x:-e/3*Math.sin(c*b),y:q}};e.prototype.pathToSegments=function(e){for(var c=[],q=[],b={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},a=0;a<e.length;a++)m(q[0])&&H(e[a])&&q.length===b[q[0].toUpperCase()]&&e.splice(a,0,q[0].replace("M","L").replace("m","l")),
  110. "string"===typeof e[a]&&(q.length&&c.push(q.slice(0)),q.length=0),q.push(e[a]);c.push(q.slice(0));return c};e.prototype.label=function(e,c,b,a,k,d,g,t,h){return new C(this,e,c,b,a,k,d,g,t,h)};return e}();c.prototype.Element=v;c.prototype.SVG_NS=A;c.prototype.draw=z;c.prototype.escapes={"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"};c.prototype.symbols={circle:function(e,c,b,a){return this.arc(e+b/2,c+a/2,b/2,a/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},square:function(e,c,b,a){return[["M",
  111. e,c],["L",e+b,c],["L",e+b,c+a],["L",e,c+a],["Z"]]},triangle:function(e,c,b,a){return[["M",e+b/2,c],["L",e+b,c+a],["L",e,c+a],["Z"]]},"triangle-down":function(e,c,b,a){return[["M",e,c],["L",e+b,c],["L",e+b/2,c+a],["Z"]]},diamond:function(e,c,b,a){return[["M",e+b/2,c],["L",e+b,c+a/2],["L",e+b/2,c+a],["L",e,c+a/2],["Z"]]},arc:function(e,c,b,a,k){var q=[];if(k){var d=k.start||0,g=k.end||0,t=k.r||b;b=k.r||a||b;var y=.001>Math.abs(g-d-2*Math.PI);g-=.001;a=k.innerR;y=h(k.open,y);var A=Math.cos(d),O=Math.sin(d),
  112. l=Math.cos(g),F=Math.sin(g);d=h(k.longArc,.001>g-d-Math.PI?0:1);q.push(["M",e+t*A,c+b*O],["A",t,b,0,d,h(k.clockwise,1),e+t*l,c+b*F]);p(a)&&q.push(y?["M",e+a*l,c+a*F]:["L",e+a*l,c+a*F],["A",a,a,0,d,p(k.clockwise)?1-k.clockwise:0,e+a*A,c+a*O]);y||q.push(["Z"])}return q},callout:function(e,c,b,a,k){var q=Math.min(k&&k.r||0,b,a),d=q+6,g=k&&k.anchorX||0;k=k&&k.anchorY||0;var t=[["M",e+q,c],["L",e+b-q,c],["C",e+b,c,e+b,c,e+b,c+q],["L",e+b,c+a-q],["C",e+b,c+a,e+b,c+a,e+b-q,c+a],["L",e+q,c+a],["C",e,c+a,
  113. e,c+a,e,c+a-q],["L",e,c+q],["C",e,c,e,c,e+q,c]];g&&g>b?k>c+d&&k<c+a-d?t.splice(3,1,["L",e+b,k-6],["L",e+b+6,k],["L",e+b,k+6],["L",e+b,c+a-q]):t.splice(3,1,["L",e+b,a/2],["L",g,k],["L",e+b,a/2],["L",e+b,c+a-q]):g&&0>g?k>c+d&&k<c+a-d?t.splice(7,1,["L",e,k+6],["L",e-6,k],["L",e,k-6],["L",e,c+q]):t.splice(7,1,["L",e,a/2],["L",g,k],["L",e,a/2],["L",e,c+q]):k&&k>a&&g>e+d&&g<e+b-d?t.splice(5,1,["L",g+6,c+a],["L",g,c+a+6],["L",g-6,c+a],["L",e+q,c+a]):k&&0>k&&g>e+d&&g<e+b-d&&t.splice(1,1,["L",g-6,c],["L",
  114. g,c-6],["L",g+6,c],["L",b-q,c]);return t}};f.SVGRenderer=c;f.Renderer=f.SVGRenderer;return f.Renderer});M(v,"Core/Renderer/HTML/HTML.js",[v["Core/Globals.js"],v["Core/Renderer/SVG/SVGElement.js"],v["Core/Renderer/SVG/SVGRenderer.js"],v["Core/Utilities.js"]],function(r,f,v,C){var z=C.attr,B=C.createElement,E=C.css,D=C.defined,x=C.extend,p=C.pick,I=C.pInt,w=r.isFirefox,J=r.isMS,H=r.isWebKit,u=r.win;x(f.prototype,{htmlCss:function(m){var n="SPAN"===this.element.tagName&&m&&"width"in m,l=p(n&&m.width,
  115. void 0);if(n){delete m.width;this.textWidth=l;var h=!0}m&&"ellipsis"===m.textOverflow&&(m.whiteSpace="nowrap",m.overflow="hidden");this.styles=x(this.styles,m);E(this.element,m);h&&this.htmlUpdateTransform();return this},htmlGetBBox:function(){var m=this.element;return{x:m.offsetLeft,y:m.offsetTop,width:m.offsetWidth,height:m.offsetHeight}},htmlUpdateTransform:function(){if(this.added){var m=this.renderer,n=this.element,l=this.translateX||0,h=this.translateY||0,d=this.x||0,g=this.y||0,a=this.textAlign||
  116. "left",k={left:0,center:.5,right:1}[a],b=this.styles,F=b&&b.whiteSpace;E(n,{marginLeft:l,marginTop:h});!m.styledMode&&this.shadows&&this.shadows.forEach(function(b){E(b,{marginLeft:l+1,marginTop:h+1})});this.inverted&&[].forEach.call(n.childNodes,function(b){m.invertChild(b,n)});if("SPAN"===n.tagName){b=this.rotation;var y=this.textWidth&&I(this.textWidth),G=[b,a,n.innerHTML,this.textWidth,this.textAlign].join(),u;(u=y!==this.oldTextWidth)&&!(u=y>this.oldTextWidth)&&((u=this.textPxLength)||(E(n,{width:"",
  117. whiteSpace:F||"nowrap"}),u=n.offsetWidth),u=u>y);u&&(/[ \-]/.test(n.textContent||n.innerText)||"ellipsis"===n.style.textOverflow)?(E(n,{width:y+"px",display:"block",whiteSpace:F||"normal"}),this.oldTextWidth=y,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1;G!==this.cTT&&(F=m.fontMetrics(n.style.fontSize,n).b,!D(b)||b===(this.oldRotation||0)&&a===this.oldAlign||this.setSpanRotation(b,k,F),this.getSpanCorrection(!D(b)&&this.textPxLength||n.offsetWidth,F,k,b,a));E(n,{left:d+(this.xCorr||0)+"px",
  118. top:g+(this.yCorr||0)+"px"});this.cTT=G;this.oldRotation=b;this.oldAlign=a}}else this.alignOnAdd=!0},setSpanRotation:function(m,n,l){var h={},d=this.renderer.getTransformKey();h[d]=h.transform="rotate("+m+"deg)";h[d+(w?"Origin":"-origin")]=h.transformOrigin=100*n+"% "+l+"px";E(this.element,h)},getSpanCorrection:function(m,n,l){this.xCorr=-m*l;this.yCorr=-n}});x(v.prototype,{getTransformKey:function(){return J&&!/Edge/.test(u.navigator.userAgent)?"-ms-transform":H?"-webkit-transform":w?"MozTransform":
  119. u.opera?"-o-transform":""},html:function(m,n,l){var h=this.createElement("span"),d=h.element,g=h.renderer,a=g.isSVG,k=function(b,a){["opacity","visibility"].forEach(function(k){b[k+"Setter"]=function(d,g,t){var h=b.div?b.div.style:a;f.prototype[k+"Setter"].call(this,d,g,t);h&&(h[g]=d)}});b.addedSetters=!0};h.textSetter=function(b){b!==d.innerHTML&&(delete this.bBox,delete this.oldTextWidth);this.textStr=b;d.innerHTML=p(b,"");h.doTransform=!0};a&&k(h,h.element.style);h.xSetter=h.ySetter=h.alignSetter=
  120. h.rotationSetter=function(b,a){"align"===a?h.alignValue=h.textAlign=b:h[a]=b;h.doTransform=!0};h.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)};h.attr({text:m,x:Math.round(n),y:Math.round(l)}).css({position:"absolute"});g.styledMode||h.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize});d.style.whiteSpace="nowrap";h.css=h.htmlCss;a&&(h.add=function(b){var a=g.box.parentNode,y=[];if(this.parentGroup=b){var l=b.div;if(!l){for(;b;)y.push(b),
  121. b=b.parentGroup;y.reverse().forEach(function(b){function d(a,c){b[c]=a;"translateX"===c?F.left=a+"px":F.top=a+"px";b.doTransform=!0}var g=z(b.element,"class");l=b.div=b.div||B("div",g?{className:g}:void 0,{position:"absolute",left:(b.translateX||0)+"px",top:(b.translateY||0)+"px",display:b.display,opacity:b.opacity,pointerEvents:b.styles&&b.styles.pointerEvents},l||a);var F=l.style;x(b,{classSetter:function(b){return function(c){this.element.setAttribute("class",c);b.className=c}}(l),on:function(){y[0].div&&
  122. h.on.apply({element:y[0].div},arguments);return b},translateXSetter:d,translateYSetter:d});b.addedSetters||k(b)})}}else l=a;l.appendChild(d);h.added=!0;h.alignOnAdd&&h.htmlUpdateTransform();return h});return h}})});M(v,"Core/Axis/Tick.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.clamp,C=f.correctFloat,z=f.defined,B=f.destroyObjectProperties,E=f.extend,D=f.fireEvent,x=f.isNumber,p=f.merge,I=f.objectEach,w=f.pick,J=r.deg2rad;f=function(){function f(u,m,n,l,h){this.isNewLabel=
  123. this.isNew=!0;this.axis=u;this.pos=m;this.type=n||"";this.parameters=h||{};this.tickmarkOffset=this.parameters.tickmarkOffset;this.options=this.parameters.options;D(this,"init");n||l||this.addLabel()}f.prototype.addLabel=function(){var u=this,m=u.axis,n=m.options,l=m.chart,h=m.categories,d=m.logarithmic,g=m.names,a=u.pos,k=w(u.options&&u.options.labels,n.labels),b=m.tickPositions,F=a===b[0],y=a===b[b.length-1];g=this.parameters.category||(h?w(h[a],g[a],a):a);var G=u.label;h=(!k.step||1===k.step)&&
  124. 1===m.tickInterval;b=b.info;var L,t;if(m.dateTime&&b){var A=l.time.resolveDTLFormat(n.dateTimeLabelFormats[!n.grid&&b.higherRanks[a]||b.unitName]);var N=A.main}u.isFirst=F;u.isLast=y;u.formatCtx={axis:m,chart:l,isFirst:F,isLast:y,dateTimeLabelFormat:N,tickPositionInfo:b,value:d?C(d.lin2log(g)):g,pos:a};n=m.labelFormatter.call(u.formatCtx,this.formatCtx);if(t=A&&A.list)u.shortenLabel=function(){for(L=0;L<t.length;L++)if(G.attr({text:m.labelFormatter.call(E(u.formatCtx,{dateTimeLabelFormat:t[L]}))}),
  125. G.getBBox().width<m.getSlotWidth(u)-2*w(k.padding,5))return;G.attr({text:""})};h&&m._addedPlotLB&&u.moveLabel(n,k);z(G)||u.movedLabel?G&&G.textStr!==n&&!h&&(!G.textWidth||k.style&&k.style.width||G.styles.width||G.css({width:null}),G.attr({text:n}),G.textPxLength=G.getBBox().width):(u.label=G=u.createLabel({x:0,y:0},n,k),u.rotation=0)};f.prototype.createLabel=function(u,m,n){var l=this.axis,h=l.chart;if(u=z(m)&&n.enabled?h.renderer.text(m,u.x,u.y,n.useHTML).add(l.labelGroup):null)h.styledMode||u.css(p(n.style)),
  126. u.textPxLength=u.getBBox().width;return u};f.prototype.destroy=function(){B(this,this.axis)};f.prototype.getPosition=function(u,m,n,l){var h=this.axis,d=h.chart,g=l&&d.oldChartHeight||d.chartHeight;u={x:u?C(h.translate(m+n,null,null,l)+h.transB):h.left+h.offset+(h.opposite?(l&&d.oldChartWidth||d.chartWidth)-h.right-h.left:0),y:u?g-h.bottom+h.offset-(h.opposite?h.height:0):C(g-h.translate(m+n,null,null,l)-h.transB)};u.y=v(u.y,-1E5,1E5);D(this,"afterGetPosition",{pos:u});return u};f.prototype.getLabelPosition=
  127. function(u,m,n,l,h,d,g,a){var k=this.axis,b=k.transA,F=k.isLinked&&k.linkedParent?k.linkedParent.reversed:k.reversed,y=k.staggerLines,G=k.tickRotCorr||{x:0,y:0},L=h.y,t=l||k.reserveSpaceDefault?0:-k.labelOffset*("center"===k.labelAlign?.5:1),A={};z(L)||(L=0===k.side?n.rotation?-8:-n.getBBox().height:2===k.side?G.y+8:Math.cos(n.rotation*J)*(G.y-n.getBBox(!1,0).height/2));u=u+h.x+t+G.x-(d&&l?d*b*(F?-1:1):0);m=m+L-(d&&!l?d*b*(F?1:-1):0);y&&(n=g/(a||1)%y,k.opposite&&(n=y-n-1),m+=k.labelOffset/y*n);A.x=
  128. u;A.y=Math.round(m);D(this,"afterGetLabelPosition",{pos:A,tickmarkOffset:d,index:g});return A};f.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0};f.prototype.getMarkPath=function(u,m,n,l,h,d){return d.crispLine([["M",u,m],["L",u+(h?0:-n),m+(h?n:0)]],l)};f.prototype.handleOverflow=function(u){var m=this.axis,n=m.options.labels,l=u.x,h=m.chart.chartWidth,d=m.chart.spacing,g=w(m.labelLeft,Math.min(m.pos,d[3]));d=w(m.labelRight,Math.max(m.isRadial?
  129. 0:m.pos+m.len,h-d[1]));var a=this.label,k=this.rotation,b={left:0,center:.5,right:1}[m.labelAlign||a.attr("align")],F=a.getBBox().width,y=m.getSlotWidth(this),G=y,L=1,t,A={};if(k||"justify"!==w(n.overflow,"justify"))0>k&&l-b*F<g?t=Math.round(l/Math.cos(k*J)-g):0<k&&l+b*F>d&&(t=Math.round((h-l)/Math.cos(k*J)));else if(h=l+(1-b)*F,l-b*F<g?G=u.x+G*(1-b)-g:h>d&&(G=d-u.x+G*b,L=-1),G=Math.min(y,G),G<y&&"center"===m.labelAlign&&(u.x+=L*(y-G-b*(y-Math.min(F,G)))),F>G||m.autoRotation&&(a.styles||{}).width)t=
  130. G;t&&(this.shortenLabel?this.shortenLabel():(A.width=Math.floor(t)+"px",(n.style||{}).textOverflow||(A.textOverflow="ellipsis"),a.css(A)))};f.prototype.moveLabel=function(u,m){var n=this,l=n.label,h=!1,d=n.axis,g=d.reversed;l&&l.textStr===u?(n.movedLabel=l,h=!0,delete n.label):I(d.ticks,function(a){h||a.isNew||a===n||!a.label||a.label.textStr!==u||(n.movedLabel=a.label,h=!0,a.labelPos=n.movedLabel.xy,delete a.label)});if(!h&&(n.labelPos||l)){var a=n.labelPos||l.xy;l=d.horiz?g?0:d.width+d.left:a.x;
  131. d=d.horiz?a.y:g?d.width+d.left:0;n.movedLabel=n.createLabel({x:l,y:d},u,m);n.movedLabel&&n.movedLabel.attr({opacity:0})}};f.prototype.render=function(u,m,n){var l=this.axis,h=l.horiz,d=this.pos,g=w(this.tickmarkOffset,l.tickmarkOffset);d=this.getPosition(h,d,g,m);g=d.x;var a=d.y;l=h&&g===l.pos+l.len||!h&&a===l.pos?-1:1;n=w(n,1);this.isActive=!0;this.renderGridLine(m,n,l);this.renderMark(d,n,l);this.renderLabel(d,m,n,u);this.isNew=!1;D(this,"afterRender")};f.prototype.renderGridLine=function(u,m,n){var l=
  132. this.axis,h=l.options,d=this.gridLine,g={},a=this.pos,k=this.type,b=w(this.tickmarkOffset,l.tickmarkOffset),F=l.chart.renderer,y=k?k+"Grid":"grid",G=h[y+"LineWidth"],L=h[y+"LineColor"];h=h[y+"LineDashStyle"];d||(l.chart.styledMode||(g.stroke=L,g["stroke-width"]=G,h&&(g.dashstyle=h)),k||(g.zIndex=1),u&&(m=0),this.gridLine=d=F.path().attr(g).addClass("highcharts-"+(k?k+"-":"")+"grid-line").add(l.gridGroup));if(d&&(n=l.getPlotLinePath({value:a+b,lineWidth:d.strokeWidth()*n,force:"pass",old:u})))d[u||
  133. this.isNew?"attr":"animate"]({d:n,opacity:m})};f.prototype.renderMark=function(u,m,n){var l=this.axis,h=l.options,d=l.chart.renderer,g=this.type,a=g?g+"Tick":"tick",k=l.tickSize(a),b=this.mark,F=!b,y=u.x;u=u.y;var G=w(h[a+"Width"],!g&&l.isXAxis?1:0);h=h[a+"Color"];k&&(l.opposite&&(k[0]=-k[0]),F&&(this.mark=b=d.path().addClass("highcharts-"+(g?g+"-":"")+"tick").add(l.axisGroup),l.chart.styledMode||b.attr({stroke:h,"stroke-width":G})),b[F?"attr":"animate"]({d:this.getMarkPath(y,u,k[0],b.strokeWidth()*
  134. n,l.horiz,d),opacity:m}))};f.prototype.renderLabel=function(u,m,n,l){var h=this.axis,d=h.horiz,g=h.options,a=this.label,k=g.labels,b=k.step;h=w(this.tickmarkOffset,h.tickmarkOffset);var F=!0,y=u.x;u=u.y;a&&x(y)&&(a.xy=u=this.getLabelPosition(y,u,a,d,k,h,l,b),this.isFirst&&!this.isLast&&!w(g.showFirstLabel,1)||this.isLast&&!this.isFirst&&!w(g.showLastLabel,1)?F=!1:!d||k.step||k.rotation||m||0===n||this.handleOverflow(u),b&&l%b&&(F=!1),F&&x(u.y)?(u.opacity=n,a[this.isNewLabel?"attr":"animate"](u),this.isNewLabel=
  135. !1):(a.attr("y",-9999),this.isNewLabel=!0))};f.prototype.replaceMovedLabel=function(){var u=this.label,m=this.axis,n=m.reversed;if(u&&!this.isNew){var l=m.horiz?n?m.left:m.width+m.left:u.xy.x;n=m.horiz?u.xy.y:n?m.width+m.top:m.top;u.animate({x:l,y:n,opacity:0},void 0,u.destroy);delete this.label}m.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel};return f}();r.Tick=f;return r.Tick});M(v,"Core/Time.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.defined,C=f.error,
  136. z=f.extend,B=f.isObject,E=f.merge,D=f.objectEach,x=f.pad,p=f.pick,I=f.splat,w=f.timeUnits,J=r.win;f=function(){function f(u){this.options={};this.variableTimezone=this.useUTC=!1;this.Date=J.Date;this.getTimezoneOffset=this.timezoneOffsetFunction();this.update(u)}f.prototype.get=function(u,m){if(this.variableTimezone||this.timezoneOffset){var n=m.getTime(),l=n-this.getTimezoneOffset(m);m.setTime(l);u=m["getUTC"+u]();m.setTime(n);return u}return this.useUTC?m["getUTC"+u]():m["get"+u]()};f.prototype.set=
  137. function(u,m,n){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===u||"Seconds"===u||"Minutes"===u)return m["setUTC"+u](n);var l=this.getTimezoneOffset(m);l=m.getTime()-l;m.setTime(l);m["setUTC"+u](n);u=this.getTimezoneOffset(m);l=m.getTime()+u;return m.setTime(l)}return this.useUTC?m["setUTC"+u](n):m["set"+u](n)};f.prototype.update=function(u){var m=p(u&&u.useUTC,!0);this.options=u=E(!0,this.options||{},u);this.Date=u.Date||J.Date||Date;this.timezoneOffset=(this.useUTC=m)&&u.timezoneOffset;
  138. this.getTimezoneOffset=this.timezoneOffsetFunction();this.variableTimezone=!(m&&!u.getTimezoneOffset&&!u.timezone)};f.prototype.makeTime=function(u,m,n,l,h,d){if(this.useUTC){var g=this.Date.UTC.apply(0,arguments);var a=this.getTimezoneOffset(g);g+=a;var k=this.getTimezoneOffset(g);a!==k?g+=k-a:a-36E5!==this.getTimezoneOffset(g-36E5)||r.isSafari||(g-=36E5)}else g=(new this.Date(u,m,p(n,1),p(l,0),p(h,0),p(d,0))).getTime();return g};f.prototype.timezoneOffsetFunction=function(){var u=this,m=this.options,
  139. n=m.moment||J.moment;if(!this.useUTC)return function(l){return 6E4*(new Date(l.toString())).getTimezoneOffset()};if(m.timezone){if(n)return function(l){return 6E4*-n.tz(l,m.timezone).utcOffset()};C(25)}return this.useUTC&&m.getTimezoneOffset?function(l){return 6E4*m.getTimezoneOffset(l.valueOf())}:function(){return 6E4*(u.timezoneOffset||0)}};f.prototype.dateFormat=function(u,m,n){var l;if(!v(m)||isNaN(m))return(null===(l=r.defaultOptions.lang)||void 0===l?void 0:l.invalidDate)||"";u=p(u,"%Y-%m-%d %H:%M:%S");
  140. var h=this;l=new this.Date(m);var d=this.get("Hours",l),g=this.get("Day",l),a=this.get("Date",l),k=this.get("Month",l),b=this.get("FullYear",l),F=r.defaultOptions.lang,y=null===F||void 0===F?void 0:F.weekdays,G=null===F||void 0===F?void 0:F.shortWeekdays;l=z({a:G?G[g]:y[g].substr(0,3),A:y[g],d:x(a),e:x(a,2," "),w:g,b:F.shortMonths[k],B:F.months[k],m:x(k+1),o:k+1,y:b.toString().substr(2,2),Y:b,H:x(d),k:d,I:x(d%12||12),l:d%12||12,M:x(this.get("Minutes",l)),p:12>d?"AM":"PM",P:12>d?"am":"pm",S:x(l.getSeconds()),
  141. L:x(Math.floor(m%1E3),3)},r.dateFormats);D(l,function(b,a){for(;-1!==u.indexOf("%"+a);)u=u.replace("%"+a,"function"===typeof b?b.call(h,m):b)});return n?u.substr(0,1).toUpperCase()+u.substr(1):u};f.prototype.resolveDTLFormat=function(u){return B(u,!0)?u:(u=I(u),{main:u[0],from:u[1],to:u[2]})};f.prototype.getTimeTicks=function(u,m,n,l){var h=this,d=[],g={};var a=new h.Date(m);var k=u.unitRange,b=u.count||1,F;l=p(l,1);if(v(m)){h.set("Milliseconds",a,k>=w.second?0:b*Math.floor(h.get("Milliseconds",a)/
  142. b));k>=w.second&&h.set("Seconds",a,k>=w.minute?0:b*Math.floor(h.get("Seconds",a)/b));k>=w.minute&&h.set("Minutes",a,k>=w.hour?0:b*Math.floor(h.get("Minutes",a)/b));k>=w.hour&&h.set("Hours",a,k>=w.day?0:b*Math.floor(h.get("Hours",a)/b));k>=w.day&&h.set("Date",a,k>=w.month?1:Math.max(1,b*Math.floor(h.get("Date",a)/b)));if(k>=w.month){h.set("Month",a,k>=w.year?0:b*Math.floor(h.get("Month",a)/b));var y=h.get("FullYear",a)}k>=w.year&&h.set("FullYear",a,y-y%b);k===w.week&&(y=h.get("Day",a),h.set("Date",
  143. a,h.get("Date",a)-y+l+(y<l?-7:0)));y=h.get("FullYear",a);l=h.get("Month",a);var G=h.get("Date",a),L=h.get("Hours",a);m=a.getTime();h.variableTimezone&&(F=n-m>4*w.month||h.getTimezoneOffset(m)!==h.getTimezoneOffset(n));m=a.getTime();for(a=1;m<n;)d.push(m),m=k===w.year?h.makeTime(y+a*b,0):k===w.month?h.makeTime(y,l+a*b):!F||k!==w.day&&k!==w.week?F&&k===w.hour&&1<b?h.makeTime(y,l,G,L+a*b):m+k*b:h.makeTime(y,l,G+a*b*(k===w.day?1:7)),a++;d.push(m);k<=w.hour&&1E4>d.length&&d.forEach(function(b){0===b%18E5&&
  144. "000000000"===h.dateFormat("%H%M%S%L",b)&&(g[b]="day")})}d.info=z(u,{higherRanks:g,totalRange:k*b});return d};return f}();r.Time=f;return r.Time});M(v,"Core/Options.js",[v["Core/Globals.js"],v["Core/Time.js"],v["Core/Color.js"],v["Core/Utilities.js"]],function(r,f,v,C){v=v.parse;C=C.merge;r.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(" "),
  145. shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),decimalPoint:".",numericSymbols:"kMGTPE".split(""),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:{styledMode:!1,borderRadius:0,colorCount:10,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:6},
  146. 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",
  147. 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",
  148. backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:r.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:r.isTouchDevice?25:10,headerFormat:'<span style="font-size: 10px">{point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.y}</b><br/>',
  149. backgroundColor:v("#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"}};"";r.time=new f(C(r.defaultOptions.global,r.defaultOptions.time));r.dateFormat=function(f,v,E){return r.time.dateFormat(f,v,E)};return{dateFormat:r.dateFormat,
  150. defaultOptions:r.defaultOptions,time:r.time}});M(v,"Core/Axis/Axis.js",[v["Core/Color.js"],v["Core/Globals.js"],v["Core/Axis/Tick.js"],v["Core/Utilities.js"],v["Core/Options.js"]],function(r,f,v,C,z){var B=C.addEvent,E=C.animObject,D=C.arrayMax,x=C.arrayMin,p=C.clamp,I=C.correctFloat,w=C.defined,J=C.destroyObjectProperties,H=C.error,u=C.extend,m=C.fireEvent,n=C.format,l=C.getMagnitude,h=C.isArray,d=C.isFunction,g=C.isNumber,a=C.isString,k=C.merge,b=C.normalizeTickInterval,F=C.objectEach,y=C.pick,
  151. G=C.relativeLength,L=C.removeEvent,t=C.splat,A=C.syncTimeout,N=z.defaultOptions,K=f.deg2rad;C=function(){function c(e,c){this.zoomEnabled=this.width=this.visible=this.userOptions=this.translationSlope=this.transB=this.transA=this.top=this.ticks=this.tickRotCorr=this.tickPositions=this.tickmarkOffset=this.tickInterval=this.tickAmount=this.side=this.series=this.right=this.positiveValuesOnly=this.pos=this.pointRangePadding=this.pointRange=this.plotLinesAndBandsGroups=this.plotLinesAndBands=this.paddedTicks=
  152. 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(e,c)}c.prototype.init=function(e,c){var q=c.isX,b=this;b.chart=e;b.horiz=e.inverted&&!b.isZAxis?!q:q;b.isXAxis=
  153. q;b.coll=b.coll||(q?"xAxis":"yAxis");m(this,"init",{userOptions:c});b.opposite=c.opposite;b.side=c.side||(b.horiz?b.opposite?0:2:b.opposite?1:3);b.setOptions(c);var a=this.options,k=a.type;b.labelFormatter=a.labels.formatter||b.defaultLabelFormatter;b.userOptions=c;b.minPixelPadding=0;b.reversed=a.reversed;b.visible=!1!==a.visible;b.zoomEnabled=!1!==a.zoomEnabled;b.hasNames="category"===k||!0===a.categories;b.categories=a.categories||b.hasNames;b.names||(b.names=[],b.names.keys={});b.plotLinesAndBandsGroups=
  154. {};b.positiveValuesOnly=!!b.logarithmic;b.isLinked=w(a.linkedTo);b.ticks={};b.labelEdge=[];b.minorTicks={};b.plotLinesAndBands=[];b.alternateBands={};b.len=0;b.minRange=b.userMinRange=a.minRange||a.maxZoom;b.range=a.range;b.offset=a.offset||0;b.max=null;b.min=null;b.crosshair=y(a.crosshair,t(e.options.tooltip.crosshairs)[q?0:1],!1);c=b.options.events;-1===e.axes.indexOf(b)&&(q?e.axes.splice(e.xAxis.length,0,b):e.axes.push(b),e[b.coll].push(b));b.series=b.series||[];e.inverted&&!b.isZAxis&&q&&"undefined"===
  155. typeof b.reversed&&(b.reversed=!0);b.labelRotation=b.options.labels.rotation;F(c,function(e,c){d(e)&&B(b,c,e)});m(this,"afterInit")};c.prototype.setOptions=function(e){this.options=k(c.defaultOptions,"yAxis"===this.coll&&c.defaultYAxisOptions,[c.defaultTopAxisOptions,c.defaultRightAxisOptions,c.defaultBottomAxisOptions,c.defaultLeftAxisOptions][this.side],k(N[this.coll],e));m(this,"afterSetOptions",{userOptions:e})};c.prototype.defaultLabelFormatter=function(){var e=this.axis,c=g(this.value)?this.value:
  156. NaN,b=e.chart.time,a=e.categories,k=this.dateTimeLabelFormat,d=N.lang,t=d.numericSymbols;d=d.numericSymbolMagnitude||1E3;var h=t&&t.length,y=e.options.labels.format;e=e.logarithmic?Math.abs(c):e.tickInterval;var A=this.chart,l=A.numberFormatter;if(y)var F=n(y,this,A);else if(a)F=""+this.value;else if(k)F=b.dateFormat(k,c);else if(h&&1E3<=e)for(;h--&&"undefined"===typeof F;)b=Math.pow(d,h+1),e>=b&&0===10*c%b&&null!==t[h]&&0!==c&&(F=l(c/b,-1)+t[h]);"undefined"===typeof F&&(F=1E4<=Math.abs(c)?l(c,-1):
  157. l(c,-1,void 0,""));return F};c.prototype.getSeriesExtremes=function(){var e=this,c=e.chart,b;m(this,"getSeriesExtremes",null,function(){e.hasVisibleSeries=!1;e.dataMin=e.dataMax=e.threshold=null;e.softThreshold=!e.isXAxis;e.stacking&&e.stacking.buildStacks();e.series.forEach(function(q){if(q.visible||!c.options.chart.ignoreHiddenSeries){var a=q.options,k=a.threshold;e.hasVisibleSeries=!0;e.positiveValuesOnly&&0>=k&&(k=null);if(e.isXAxis){if(a=q.xData,a.length){a=e.logarithmic?a.filter(e.validatePositiveValue):
  158. a;b=q.getXExtremes(a);var d=b.min;var t=b.max;g(d)||d instanceof Date||(a=a.filter(g),b=q.getXExtremes(a),d=b.min,t=b.max);a.length&&(e.dataMin=Math.min(y(e.dataMin,d),d),e.dataMax=Math.max(y(e.dataMax,t),t))}}else if(q=q.applyExtremes(),g(q.dataMin)&&(d=q.dataMin,e.dataMin=Math.min(y(e.dataMin,d),d)),g(q.dataMax)&&(t=q.dataMax,e.dataMax=Math.max(y(e.dataMax,t),t)),w(k)&&(e.threshold=k),!a.softThreshold||e.positiveValuesOnly)e.softThreshold=!1}})});m(this,"afterGetSeriesExtremes")};c.prototype.translate=
  159. function(e,c,b,a,k,d){var q=this.linkedParent||this,t=1,h=0,y=a?q.oldTransA:q.transA;a=a?q.oldMin:q.min;var A=q.minPixelPadding;k=(q.isOrdinal||q.brokenAxis&&q.brokenAxis.hasBreaks||q.logarithmic&&k)&&q.lin2val;y||(y=q.transA);b&&(t*=-1,h=q.len);q.reversed&&(t*=-1,h-=t*(q.sector||q.len));c?(e=(e*t+h-A)/y+a,k&&(e=q.lin2val(e))):(k&&(e=q.val2lin(e)),e=g(a)?t*(e-a)*y+h+t*A+(g(d)?y*d:0):void 0);return e};c.prototype.toPixels=function(e,c){return this.translate(e,!1,!this.horiz,null,!0)+(c?0:this.pos)};
  160. c.prototype.toValue=function(e,c){return this.translate(e-(c?0:this.pos),!0,!this.horiz,null,!0)};c.prototype.getPlotLinePath=function(e){function c(e,c,q){if("pass"!==F&&e<c||e>q)F?e=p(e,c,q):f=!0;return e}var b=this,a=b.chart,k=b.left,d=b.top,t=e.old,h=e.value,A=e.translatedValue,l=e.lineWidth,F=e.force,n,u,G,L,K=t&&a.oldChartHeight||a.chartHeight,N=t&&a.oldChartWidth||a.chartWidth,f,w=b.transB;e={value:h,lineWidth:l,old:t,force:F,acrossPanes:e.acrossPanes,translatedValue:A};m(this,"getPlotLinePath",
  161. e,function(e){A=y(A,b.translate(h,null,null,t));A=p(A,-1E5,1E5);n=G=Math.round(A+w);u=L=Math.round(K-A-w);g(A)?b.horiz?(u=d,L=K-b.bottom,n=G=c(n,k,k+b.width)):(n=k,G=N-b.right,u=L=c(u,d,d+b.height)):(f=!0,F=!1);e.path=f&&!F?null:a.renderer.crispLine([["M",n,u],["L",G,L]],l||1)});return e.path};c.prototype.getLinearTickPositions=function(e,c,b){var q=I(Math.floor(c/e)*e);b=I(Math.ceil(b/e)*e);var a=[],k;I(q+e)===q&&(k=20);if(this.single)return[c];for(c=q;c<=b;){a.push(c);c=I(c+e,k);if(c===d)break;
  162. var d=c}return a};c.prototype.getMinorTickInterval=function(){var e=this.options;return!0===e.minorTicks?y(e.minorTickInterval,"auto"):!1===e.minorTicks?null:e.minorTickInterval};c.prototype.getMinorTickPositions=function(){var e=this.options,c=this.tickPositions,b=this.minorTickInterval,a=[],k=this.pointRangePadding||0,d=this.min-k;k=this.max+k;var g=k-d;if(g&&g/b<this.len/3){var t=this.logarithmic;if(t)this.paddedTicks.forEach(function(e,c,q){c&&a.push.apply(a,t.getLogTickPositions(b,q[c-1],q[c],
  163. !0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())a=a.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(b),d,k,e.startOfWeek));else for(e=d+(c[0]-d)%b;e<=k&&e!==a[0];e+=b)a.push(e)}0!==a.length&&this.trimTicks(a);return a};c.prototype.adjustForMinRange=function(){var e=this.options,c=this.min,b=this.max,a=this.logarithmic,k,d,g,t,h;this.isXAxis&&"undefined"===typeof this.minRange&&!a&&(w(e.min)||w(e.max)?this.minRange=null:(this.series.forEach(function(e){t=e.xData;
  164. for(d=h=e.xIncrement?1:t.length-1;0<d;d--)if(g=t[d]-t[d-1],"undefined"===typeof k||g<k)k=g}),this.minRange=Math.min(5*k,this.dataMax-this.dataMin)));if(b-c<this.minRange){var A=this.dataMax-this.dataMin>=this.minRange;var l=this.minRange;var F=(l-b+c)/2;F=[c-F,y(e.min,c-F)];A&&(F[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin);c=D(F);b=[c+l,y(e.max,c+l)];A&&(b[2]=a?a.log2lin(this.dataMax):this.dataMax);b=x(b);b-c<l&&(F[0]=b-l,F[1]=y(e.min,b-l),c=D(F))}this.min=c;this.max=
  165. b};c.prototype.getClosest=function(){var e;this.categories?e=1:this.series.forEach(function(c){var b=c.closestPointRange,q=c.visible||!c.chart.options.chart.ignoreHiddenSeries;!c.noSharedTooltip&&w(b)&&q&&(e=w(e)?Math.min(e,b):b)});return e};c.prototype.nameToX=function(e){var c=h(this.categories),b=c?this.categories:this.names,a=e.options.x;e.series.requireSorting=!1;w(a)||(a=!1===this.options.uniqueNames?e.series.autoIncrement():c?b.indexOf(e.name):y(b.keys[e.name],-1));if(-1===a){if(!c)var k=b.length}else k=
  166. a;"undefined"!==typeof k&&(this.names[k]=e.name,this.names.keys[e.name]=k);return k};c.prototype.updateNames=function(){var e=this,c=this.names;0<c.length&&(Object.keys(c.keys).forEach(function(e){delete c.keys[e]}),c.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(c){c.xIncrement=null;if(!c.points||c.isDirtyData)e.max=Math.max(e.max,c.xData.length-1),c.processData(),c.generatePoints();c.data.forEach(function(b,q){if(b&&b.options&&"undefined"!==typeof b.name){var a=e.nameToX(b);
  167. "undefined"!==typeof a&&a!==b.x&&(b.x=a,c.xData[q]=a)}})}))};c.prototype.setAxisTranslation=function(e){var c=this,b=c.max-c.min,k=c.axisPointRange||0,d=0,g=0,t=c.linkedParent,h=!!c.categories,A=c.transA,l=c.isXAxis;if(l||h||k){var F=c.getClosest();t?(d=t.minPointOffset,g=t.pointRangePadding):c.series.forEach(function(e){var b=h?1:l?y(e.options.pointRange,F,0):c.axisPointRange||0,q=e.options.pointPlacement;k=Math.max(k,b);if(!c.single||h)e=e.is("xrange")?!l:l,d=Math.max(d,e&&a(q)?0:b/2),g=Math.max(g,
  168. e&&"on"===q?0:b)});t=c.ordinal&&c.ordinal.slope&&F?c.ordinal.slope/F:1;c.minPointOffset=d*=t;c.pointRangePadding=g*=t;c.pointRange=Math.min(k,c.single&&h?1:b);l&&(c.closestPointRange=F)}e&&(c.oldTransA=A);c.translationSlope=c.transA=A=c.staticScale||c.len/(b+g||1);c.transB=c.horiz?c.left:c.bottom;c.minPixelPadding=A*d;m(this,"afterSetAxisTranslation")};c.prototype.minFromRange=function(){return this.max-this.range};c.prototype.setTickInterval=function(e){var c=this,a=c.chart,k=c.logarithmic,d=c.options,
  169. t=c.isXAxis,h=c.isLinked,A=d.maxPadding,F=d.minPadding,n=d.tickInterval,u=d.tickPixelInterval,G=c.categories,L=g(c.threshold)?c.threshold:null,K=c.softThreshold;c.dateTime||G||h||this.getTickAmount();var N=y(c.userMin,d.min);var p=y(c.userMax,d.max);if(h){c.linkedParent=a[c.coll][d.linkedTo];var f=c.linkedParent.getExtremes();c.min=y(f.min,f.dataMin);c.max=y(f.max,f.dataMax);d.type!==c.linkedParent.options.type&&H(11,1,a)}else{if(K&&w(L))if(c.dataMin>=L)f=L,F=0;else if(c.dataMax<=L){var x=L;A=0}c.min=
  170. y(N,f,c.dataMin);c.max=y(p,x,c.dataMax)}k&&(c.positiveValuesOnly&&!e&&0>=Math.min(c.min,y(c.dataMin,c.min))&&H(10,1,a),c.min=I(k.log2lin(c.min),16),c.max=I(k.log2lin(c.max),16));c.range&&w(c.max)&&(c.userMin=c.min=N=Math.max(c.dataMin,c.minFromRange()),c.userMax=p=c.max,c.range=null);m(c,"foundExtremes");c.beforePadding&&c.beforePadding();c.adjustForMinRange();!(G||c.axisPointRange||c.stacking&&c.stacking.usePercentage||h)&&w(c.min)&&w(c.max)&&(a=c.max-c.min)&&(!w(N)&&F&&(c.min-=a*F),!w(p)&&A&&(c.max+=
  171. a*A));g(c.userMin)||(g(d.softMin)&&d.softMin<c.min&&(c.min=N=d.softMin),g(d.floor)&&(c.min=Math.max(c.min,d.floor)));g(c.userMax)||(g(d.softMax)&&d.softMax>c.max&&(c.max=p=d.softMax),g(d.ceiling)&&(c.max=Math.min(c.max,d.ceiling)));K&&w(c.dataMin)&&(L=L||0,!w(N)&&c.min<L&&c.dataMin>=L?c.min=c.options.minRange?Math.min(L,c.max-c.minRange):L:!w(p)&&c.max>L&&c.dataMax<=L&&(c.max=c.options.minRange?Math.max(L,c.min+c.minRange):L));c.tickInterval=c.min===c.max||"undefined"===typeof c.min||"undefined"===
  172. typeof c.max?1:h&&!n&&u===c.linkedParent.options.tickPixelInterval?n=c.linkedParent.tickInterval:y(n,this.tickAmount?(c.max-c.min)/Math.max(this.tickAmount-1,1):void 0,G?1:(c.max-c.min)*u/Math.max(c.len,u));t&&!e&&c.series.forEach(function(e){e.processData(c.min!==c.oldMin||c.max!==c.oldMax)});c.setAxisTranslation(!0);m(this,"initialAxisTranslation");c.pointRange&&!n&&(c.tickInterval=Math.max(c.pointRange,c.tickInterval));e=y(d.minTickInterval,c.dateTime&&!c.series.some(function(e){return e.noSharedTooltip})?
  173. c.closestPointRange:0);!n&&c.tickInterval<e&&(c.tickInterval=e);c.dateTime||c.logarithmic||n||(c.tickInterval=b(c.tickInterval,void 0,l(c.tickInterval),y(d.allowDecimals,.5>c.tickInterval||void 0!==this.tickAmount),!!this.tickAmount));this.tickAmount||(c.tickInterval=c.unsquish());this.setTickPositions()};c.prototype.setTickPositions=function(){var e=this.options,c=e.tickPositions;var b=this.getMinorTickInterval();var a=e.tickPositioner,k=this.hasVerticalPanning(),d="colorAxis"===this.coll,g=(d||
  174. !k)&&e.startOnTick;k=(d||!k)&&e.endOnTick;this.tickmarkOffset=this.categories&&"between"===e.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval="auto"===b&&this.tickInterval?this.tickInterval/5:b;this.single=this.min===this.max&&w(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==e.allowDecimals);this.tickPositions=b=c&&c.slice();!b&&(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))?b=this.dateTime?this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,
  175. e.units),this.min,this.max,e.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):(b=[this.min,this.max],H(19,!1,this.chart)),b.length>this.len&&(b=[b[0],b.pop()],b[0]===b[1]&&(b.length=1)),this.tickPositions=b,a&&(a=a.apply(this,[this.min,this.max])))&&(this.tickPositions=b=a);this.paddedTicks=b.slice(0);this.trimTicks(b,
  176. g,k);this.isLinked||(this.single&&2>b.length&&!this.categories&&!this.series.some(function(e){return e.is("heatmap")&&"between"===e.options.pointPlacement})&&(this.min-=.5,this.max+=.5),c||a||this.adjustTickAmount());m(this,"afterSetTickPositions")};c.prototype.trimTicks=function(e,c,b){var a=e[0],q=e[e.length-1],k=!this.isOrdinal&&this.minPointOffset||0;m(this,"trimTicks");if(!this.isLinked){if(c&&-Infinity!==a)this.min=a;else for(;this.min-k>e[0];)e.shift();if(b)this.max=q;else for(;this.max+k<
  177. e[e.length-1];)e.pop();0===e.length&&w(a)&&!this.options.tickPositions&&e.push((q+a)/2)}};c.prototype.alignToOthers=function(){var e={},c,b=this.options;!1===this.chart.options.chart.alignTicks||!1===b.alignTicks||!1===b.startOnTick||!1===b.endOnTick||this.logarithmic||this.chart[this.coll].forEach(function(b){var a=b.options;a=[b.horiz?a.left:a.top,a.width,a.height,a.pane].join();b.series.length&&(e[a]?c=!0:e[a]=1)});return c};c.prototype.getTickAmount=function(){var e=this.options,c=e.tickAmount,
  178. b=e.tickPixelInterval;!w(e.tickInterval)&&!c&&this.len<b&&!this.isRadial&&!this.logarithmic&&e.startOnTick&&e.endOnTick&&(c=2);!c&&this.alignToOthers()&&(c=Math.ceil(this.len/b)+1);4>c&&(this.finalTickAmt=c,c=5);this.tickAmount=c};c.prototype.adjustTickAmount=function(){var e=this.options,c=this.tickInterval,b=this.tickPositions,a=this.tickAmount,k=this.finalTickAmt,d=b&&b.length,g=y(this.threshold,this.softThreshold?0:null),t;if(this.hasData()){if(d<a){for(t=this.min;b.length<a;)b.length%2||t===
  179. g?b.push(I(b[b.length-1]+c)):b.unshift(I(b[0]-c));this.transA*=(d-1)/(a-1);this.min=e.startOnTick?b[0]:Math.min(this.min,b[0]);this.max=e.endOnTick?b[b.length-1]:Math.max(this.max,b[b.length-1])}else d>a&&(this.tickInterval*=2,this.setTickPositions());if(w(k)){for(c=e=b.length;c--;)(3===k&&1===c%2||2>=k&&0<c&&c<e-1)&&b.splice(c,1);this.finalTickAmt=void 0}}};c.prototype.setScale=function(){var e,c=!1,b=!1;this.series.forEach(function(e){var a;c=c||e.isDirtyData||e.isDirty;b=b||(null===(a=e.xAxis)||
  180. void 0===a?void 0:a.isDirty)||!1});this.oldMin=this.min;this.oldMax=this.max;this.oldAxisLength=this.len;this.setAxisSize();(e=this.len!==this.oldAxisLength)||c||b||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=e||this.min!==this.oldMin||
  181. this.max!==this.oldMax)):this.stacking&&this.stacking.cleanStacks();c&&this.panningState&&(this.panningState.isDirty=!0);m(this,"afterSetScale")};c.prototype.setExtremes=function(e,c,b,a,k){var q=this,d=q.chart;b=y(b,!0);q.series.forEach(function(e){delete e.kdTree});k=u(k,{min:e,max:c});m(q,"setExtremes",k,function(){q.userMin=e;q.userMax=c;q.eventArgs=k;b&&d.redraw(a)})};c.prototype.zoom=function(e,c){var b=this,a=this.dataMin,q=this.dataMax,k=this.options,d=Math.min(a,y(k.min,a)),g=Math.max(q,
  182. y(k.max,q));e={newMin:e,newMax:c};m(this,"zoom",e,function(e){var c=e.newMin,k=e.newMax;if(c!==b.min||k!==b.max)b.allowZoomOutside||(w(a)&&(c<d&&(c=d),c>g&&(c=g)),w(q)&&(k<d&&(k=d),k>g&&(k=g))),b.displayBtn="undefined"!==typeof c||"undefined"!==typeof k,b.setExtremes(c,k,!1,void 0,{trigger:"zoom"});e.zoomed=!0});return e.zoomed};c.prototype.setAxisSize=function(){var e=this.chart,c=this.options,b=c.offsets||[0,0,0,0],a=this.horiz,k=this.width=Math.round(G(y(c.width,e.plotWidth-b[3]+b[1]),e.plotWidth)),
  183. d=this.height=Math.round(G(y(c.height,e.plotHeight-b[0]+b[2]),e.plotHeight)),g=this.top=Math.round(G(y(c.top,e.plotTop+b[0]),e.plotHeight,e.plotTop));c=this.left=Math.round(G(y(c.left,e.plotLeft+b[3]),e.plotWidth,e.plotLeft));this.bottom=e.chartHeight-d-g;this.right=e.chartWidth-k-c;this.len=Math.max(a?k:d,0);this.pos=a?c:g};c.prototype.getExtremes=function(){var e=this.logarithmic;return{min:e?I(e.lin2log(this.min)):this.min,max:e?I(e.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,
  184. userMin:this.userMin,userMax:this.userMax}};c.prototype.getThreshold=function(e){var c=this.logarithmic,b=c?c.lin2log(this.min):this.min;c=c?c.lin2log(this.max):this.max;null===e||-Infinity===e?e=b:Infinity===e?e=c:b>e?e=b:c<e&&(e=c);return this.translate(e,0,1,0,1)};c.prototype.autoLabelAlign=function(e){var c=(y(e,0)-90*this.side+720)%360;e={align:"center"};m(this,"autoLabelAlign",e,function(e){15<c&&165>c?e.align="right":195<c&&345>c&&(e.align="left")});return e.align};c.prototype.tickSize=function(e){var c=
  185. this.options,b=c["tick"===e?"tickLength":"minorTickLength"],a=y(c["tick"===e?"tickWidth":"minorTickWidth"],"tick"===e&&this.isXAxis&&!this.categories?1:0);if(a&&b){"inside"===c[e+"Position"]&&(b=-b);var k=[b,a]}e={tickSize:k};m(this,"afterTickSize",e);return e.tickSize};c.prototype.labelMetrics=function(){var e=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style&&this.options.labels.style.fontSize,this.ticks[e]&&this.ticks[e].label)};c.prototype.unsquish=
  186. function(){var e=this.options.labels,c=this.horiz,b=this.tickInterval,a=b,k=this.len/(((this.categories?1:0)+this.max-this.min)/b),d,g=e.rotation,t=this.labelMetrics(),h,A=Number.MAX_VALUE,l,F=this.max-this.min,m=function(e){var c=e/(k||1);c=1<c?Math.ceil(c):1;c*b>F&&Infinity!==e&&Infinity!==k&&F&&(c=Math.ceil(F/b));return I(c*b)};c?(l=!e.staggerLines&&!e.step&&(w(g)?[g]:k<y(e.autoRotationLimit,80)&&e.autoRotation))&&l.forEach(function(e){if(e===g||e&&-90<=e&&90>=e){h=m(Math.abs(t.h/Math.sin(K*e)));
  187. var c=h+Math.abs(e/360);c<A&&(A=c,d=e,a=h)}}):e.step||(a=m(t.h));this.autoRotation=l;this.labelRotation=y(d,g);return a};c.prototype.getSlotWidth=function(e){var c,b=this.chart,a=this.horiz,k=this.options.labels,d=Math.max(this.tickPositions.length-(this.categories?0:1),1),t=b.margin[3];if(e&&g(e.slotWidth))return e.slotWidth;if(a&&k&&2>(k.step||0))return k.rotation?0:(this.staggerLines||1)*this.len/d;if(!a){e=null===(c=null===k||void 0===k?void 0:k.style)||void 0===c?void 0:c.width;if(void 0!==e)return parseInt(e,
  188. 10);if(t)return t-b.spacing[3]}return.33*b.chartWidth};c.prototype.renderUnsquish=function(){var e=this.chart,c=e.renderer,b=this.tickPositions,k=this.ticks,d=this.options.labels,g=d&&d.style||{},t=this.horiz,h=this.getSlotWidth(),A=Math.max(1,Math.round(h-2*(d.padding||5))),y={},l=this.labelMetrics(),F=d.style&&d.style.textOverflow,m=0;a(d.rotation)||(y.rotation=d.rotation||0);b.forEach(function(e){e=k[e];e.movedLabel&&e.replaceMovedLabel();e&&e.label&&e.label.textPxLength>m&&(m=e.label.textPxLength)});
  189. this.maxLabelLength=m;if(this.autoRotation)m>A&&m>l.h?y.rotation=this.labelRotation:this.labelRotation=0;else if(h){var n=A;if(!F){var u="clip";for(A=b.length;!t&&A--;){var G=b[A];if(G=k[G].label)G.styles&&"ellipsis"===G.styles.textOverflow?G.css({textOverflow:"clip"}):G.textPxLength>h&&G.css({width:h+"px"}),G.getBBox().height>this.len/b.length-(l.h-l.f)&&(G.specificTextOverflow="ellipsis")}}}y.rotation&&(n=m>.5*e.chartHeight?.33*e.chartHeight:m,F||(u="ellipsis"));if(this.labelAlign=d.align||this.autoLabelAlign(this.labelRotation))y.align=
  190. this.labelAlign;b.forEach(function(e){var c=(e=k[e])&&e.label,b=g.width,a={};c&&(c.attr(y),e.shortenLabel?e.shortenLabel():n&&!b&&"nowrap"!==g.whiteSpace&&(n<c.textPxLength||"SPAN"===c.element.tagName)?(a.width=n+"px",F||(a.textOverflow=c.specificTextOverflow||u),c.css(a)):c.styles&&c.styles.width&&!a.width&&!b&&c.css({width:null}),delete c.specificTextOverflow,e.rotation=y.rotation)},this);this.tickRotCorr=c.rotCorr(l.b,this.labelRotation||0,0!==this.side)};c.prototype.hasData=function(){return this.series.some(function(e){return e.hasData()})||
  191. this.options.showEmpty&&w(this.min)&&w(this.max)};c.prototype.addTitle=function(e){var c=this.chart.renderer,b=this.horiz,a=this.opposite,d=this.options.title,g,t=this.chart.styledMode;this.axisTitle||((g=d.textAlign)||(g=(b?{low:"left",middle:"center",high:"right"}:{low:a?"right":"left",middle:"center",high:a?"left":"right"})[d.align]),this.axisTitle=c.text(d.text,0,0,d.useHTML).attr({zIndex:7,rotation:d.rotation||0,align:g}).addClass("highcharts-axis-title"),t||this.axisTitle.css(k(d.style)),this.axisTitle.add(this.axisGroup),
  192. this.axisTitle.isNew=!0);t||d.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"});this.axisTitle[e?"show":"hide"](e)};c.prototype.generateTick=function(e){var c=this.ticks;c[e]?c[e].addLabel():c[e]=new v(this,e)};c.prototype.getOffset=function(){var e=this,c=e.chart,b=c.renderer,a=e.options,k=e.tickPositions,d=e.ticks,g=e.horiz,t=e.side,h=c.inverted&&!e.isZAxis?[1,0,3,2][t]:t,A,l=0,n=0,G=a.title,u=a.labels,L=0,K=c.axisOffset;c=c.clipOffset;var N=[-1,1,1,-1][t],p=a.className,f=e.axisParent;
  193. var H=e.hasData();e.showAxis=A=H||y(a.showEmpty,!0);e.staggerLines=e.horiz&&u.staggerLines;e.axisGroup||(e.gridGroup=b.g("grid").attr({zIndex:a.gridZIndex||1}).addClass("highcharts-"+this.coll.toLowerCase()+"-grid "+(p||"")).add(f),e.axisGroup=b.g("axis").attr({zIndex:a.zIndex||2}).addClass("highcharts-"+this.coll.toLowerCase()+" "+(p||"")).add(f),e.labelGroup=b.g("axis-labels").attr({zIndex:u.zIndex||7}).addClass("highcharts-"+e.coll.toLowerCase()+"-labels "+(p||"")).add(f));H||e.isLinked?(k.forEach(function(c,
  194. b){e.generateTick(c,b)}),e.renderUnsquish(),e.reserveSpaceDefault=0===t||2===t||{1:"left",3:"right"}[t]===e.labelAlign,y(u.reserveSpace,"center"===e.labelAlign?!0:null,e.reserveSpaceDefault)&&k.forEach(function(e){L=Math.max(d[e].getLabelSize(),L)}),e.staggerLines&&(L*=e.staggerLines),e.labelOffset=L*(e.opposite?-1:1)):F(d,function(e,c){e.destroy();delete d[c]});if(G&&G.text&&!1!==G.enabled&&(e.addTitle(A),A&&!1!==G.reserveSpace)){e.titleOffset=l=e.axisTitle.getBBox()[g?"height":"width"];var x=G.offset;
  195. n=w(x)?0:y(G.margin,g?5:10)}e.renderLine();e.offset=N*y(a.offset,K[t]?K[t]+(a.margin||0):0);e.tickRotCorr=e.tickRotCorr||{x:0,y:0};b=0===t?-e.labelMetrics().h:2===t?e.tickRotCorr.y:0;n=Math.abs(L)+n;L&&(n=n-b+N*(g?y(u.y,e.tickRotCorr.y+8*N):u.x));e.axisTitleMargin=y(x,n);e.getMaxLabelDimensions&&(e.maxLabelDimensions=e.getMaxLabelDimensions(d,k));g=this.tickSize("tick");K[t]=Math.max(K[t],e.axisTitleMargin+l+N*e.offset,n,k&&k.length&&g?g[0]+N*e.offset:0);a=a.offset?0:2*Math.floor(e.axisLine.strokeWidth()/
  196. 2);c[h]=Math.max(c[h],a);m(this,"afterGetOffset")};c.prototype.getLinePath=function(e){var c=this.chart,b=this.opposite,a=this.offset,k=this.horiz,d=this.left+(b?this.width:0)+a;a=c.chartHeight-this.bottom-(b?this.height:0)+a;b&&(e*=-1);return c.renderer.crispLine([["M",k?this.left:d,k?a:this.top],["L",k?c.chartWidth-this.right:d,k?a:c.chartHeight-this.bottom]],e)};c.prototype.renderLine=function(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),
  197. this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))};c.prototype.getTitlePosition=function(){var e=this.horiz,c=this.left,b=this.top,a=this.len,k=this.options.title,d=e?c:b,g=this.opposite,t=this.offset,h=k.x||0,A=k.y||0,y=this.axisTitle,l=this.chart.renderer.fontMetrics(k.style&&k.style.fontSize,y);y=Math.max(y.getBBox(null,0).height-l.h-1,0);a={low:d+(e?0:a),middle:d+a/2,high:d+(e?a:0)}[k.align];c=(e?b+this.height:c)+(e?1:-1)*
  198. (g?-1:1)*this.axisTitleMargin+[-y,y,l.f,-y][this.side];e={x:e?a+h:c+(g?this.width:0)+t+h,y:e?c+A-(g?this.height:0)+t:a+A};m(this,"afterGetTitlePosition",{titlePosition:e});return e};c.prototype.renderMinorTick=function(e){var c=this.chart.hasRendered&&g(this.oldMin),b=this.minorTicks;b[e]||(b[e]=new v(this,e,"minor"));c&&b[e].isNew&&b[e].render(null,!0);b[e].render(null,!1,1)};c.prototype.renderTick=function(e,c){var b=this.isLinked,a=this.ticks,k=this.chart.hasRendered&&g(this.oldMin);if(!b||e>=
  199. this.min&&e<=this.max)a[e]||(a[e]=new v(this,e)),k&&a[e].isNew&&a[e].render(c,!0,-1),a[e].render(c)};c.prototype.render=function(){var e=this,c=e.chart,b=e.logarithmic,a=e.options,k=e.isLinked,d=e.tickPositions,t=e.axisTitle,h=e.ticks,y=e.minorTicks,l=e.alternateBands,n=a.stackLabels,G=a.alternateGridColor,u=e.tickmarkOffset,L=e.axisLine,K=e.showAxis,N=E(c.renderer.globalAnimation),p,w;e.labelEdge.length=0;e.overlap=!1;[h,y,l].forEach(function(e){F(e,function(e){e.isActive=!1})});if(e.hasData()||
  200. k)e.minorTickInterval&&!e.categories&&e.getMinorTickPositions().forEach(function(c){e.renderMinorTick(c)}),d.length&&(d.forEach(function(c,b){e.renderTick(c,b)}),u&&(0===e.min||e.single)&&(h[-1]||(h[-1]=new v(e,-1,null,!0)),h[-1].render(-1))),G&&d.forEach(function(a,k){w="undefined"!==typeof d[k+1]?d[k+1]+u:e.max-u;0===k%2&&a<e.max&&w<=e.max+(c.polar?-u:u)&&(l[a]||(l[a]=new f.PlotLineOrBand(e)),p=a+u,l[a].options={from:b?b.lin2log(p):p,to:b?b.lin2log(w):w,color:G,className:"highcharts-alternate-grid"},
  201. l[a].render(),l[a].isActive=!0)}),e._addedPlotLB||((a.plotLines||[]).concat(a.plotBands||[]).forEach(function(c){e.addPlotBandOrLine(c)}),e._addedPlotLB=!0);[h,y,l].forEach(function(e){var b,a=[],k=N.duration;F(e,function(e,c){e.isActive||(e.render(c,!1,0),e.isActive=!1,a.push(c))});A(function(){for(b=a.length;b--;)e[a[b]]&&!e[a[b]].isActive&&(e[a[b]].destroy(),delete e[a[b]])},e!==l&&c.hasRendered&&k?k:0)});L&&(L[L.isPlaced?"animate":"attr"]({d:this.getLinePath(L.strokeWidth())}),L.isPlaced=!0,L[K?
  202. "show":"hide"](K));t&&K&&(a=e.getTitlePosition(),g(a.y)?(t[t.isNew?"attr":"animate"](a),t.isNew=!1):(t.attr("y",-9999),t.isNew=!0));n&&n.enabled&&e.stacking&&e.stacking.renderStackTotals();e.isDirty=!1;m(this,"afterRender")};c.prototype.redraw=function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(e){e.render()}));this.series.forEach(function(e){e.isDirty=!0})};c.prototype.getKeepProps=function(){return this.keepProps||c.keepProps};c.prototype.destroy=function(e){var c=this,
  203. b=c.plotLinesAndBands,a;m(this,"destroy",{keepEvents:e});e||L(c);[c.ticks,c.minorTicks,c.alternateBands].forEach(function(c){J(c)});if(b)for(e=b.length;e--;)b[e].destroy();"axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(e){c[e]&&(c[e]=c[e].destroy())});for(a in c.plotLinesAndBandsGroups)c.plotLinesAndBandsGroups[a]=c.plotLinesAndBandsGroups[a].destroy();F(c,function(e,b){-1===c.getKeepProps().indexOf(b)&&delete c[b]})};c.prototype.drawCrosshair=function(e,
  204. c){var b=this.crosshair,a=y(b.snap,!0),k,d=this.cross,q=this.chart;m(this,"drawCrosshair",{e:e,point:c});e||(e=this.cross&&this.cross.e);if(this.crosshair&&!1!==(w(c)||!a)){a?w(c)&&(k=y("colorAxis"!==this.coll?c.crosshairPos:null,this.isXAxis?c.plotX:this.len-c.plotY)):k=e&&(this.horiz?e.chartX-this.pos:this.len-e.chartY+this.pos);if(w(k)){var g={value:c&&(this.isXAxis?c.x:y(c.stackY,c.y)),translatedValue:k};q.polar&&u(g,{isCrosshair:!0,chartX:e&&e.chartX,chartY:e&&e.chartY,point:c});g=this.getPlotLinePath(g)||
  205. null}if(!w(g)){this.hideCrosshair();return}a=this.categories&&!this.isRadial;d||(this.cross=d=q.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(a?"category ":"thin ")+b.className).attr({zIndex:y(b.zIndex,2)}).add(),q.styledMode||(d.attr({stroke:b.color||(a?r.parse("#ccd6eb").setOpacity(.25).get():"#cccccc"),"stroke-width":y(b.width,1)}).css({"pointer-events":"none"}),b.dashStyle&&d.attr({dashstyle:b.dashStyle})));d.show().attr({d:g});a&&!b.width&&d.attr({"stroke-width":this.transA});
  206. this.cross.e=e}else this.hideCrosshair();m(this,"afterDrawCrosshair",{e:e,point:c})};c.prototype.hideCrosshair=function(){this.cross&&this.cross.hide();m(this,"afterHideCrosshair")};c.prototype.hasVerticalPanning=function(){var c,b;return/y/.test((null===(b=null===(c=this.chart.options.chart)||void 0===c?void 0:c.panning)||void 0===b?void 0:b.type)||"")};c.prototype.validatePositiveValue=function(c){return g(c)&&0<c};c.defaultOptions={dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},
  207. 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",
  208. style:{color:"#666666"}},type:"linear",minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#ccd6eb",lineWidth:1,gridLineColor:"#e6e6e6",tickColor:"#ccd6eb"};c.defaultYAxisOptions={endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){var c=this.axis.chart.numberFormatter;return c(this.total,
  209. -1)},style:{color:"#000000",fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0};c.defaultLeftAxisOptions={labels:{x:-15},title:{rotation:270}};c.defaultRightAxisOptions={labels:{x:15},title:{rotation:90}};c.defaultBottomAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}};c.defaultTopAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}};c.keepProps="extKey hcEvents names series userMax userMin".split(" ");return c}();
  210. f.Axis=C;return f.Axis});M(v,"Core/Axis/DateTimeAxis.js",[v["Core/Axis/Axis.js"],v["Core/Utilities.js"]],function(r,f){var v=f.addEvent,C=f.getMagnitude,z=f.normalizeTickInterval,B=f.timeUnits,E=function(){function f(f){this.axis=f}f.prototype.normalizeTimeTickInterval=function(f,p){var x=p||[["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]];p=x[x.length-
  211. 1];var w=B[p[0]],r=p[1],H;for(H=0;H<x.length&&!(p=x[H],w=B[p[0]],r=p[1],x[H+1]&&f<=(w*r[r.length-1]+B[x[H+1][0]])/2);H++);w===B.year&&f<5*w&&(r=[1,2,5]);f=z(f/w,r,"year"===p[0]?Math.max(C(f/w),1):1);return{unitRange:w,count:f,unitName:p[0]}};return f}();f=function(){function f(){}f.compose=function(f){f.keepProps.push("dateTime");f.prototype.getTimeTicks=function(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)};v(f,"init",function(p){"datetime"!==p.userOptions.type?this.dateTime=
  212. void 0:this.dateTime||(this.dateTime=new E(this))})};f.AdditionsClass=E;return f}();f.compose(r);return f});M(v,"Core/Axis/LogarithmicAxis.js",[v["Core/Axis/Axis.js"],v["Core/Utilities.js"]],function(r,f){var v=f.addEvent,C=f.getMagnitude,z=f.normalizeTickInterval,B=f.pick,E=function(){function f(f){this.axis=f}f.prototype.getLogTickPositions=function(f,p,r,w){var x=this.axis,H=x.len,u=x.options,m=[];w||(this.minorAutoInterval=void 0);if(.5<=f)f=Math.round(f),m=x.getLinearTickPositions(f,p,r);else if(.08<=
  213. f){u=Math.floor(p);var n,l;for(H=.3<f?[1,2,4]:.15<f?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];u<r+1&&!l;u++){var h=H.length;for(n=0;n<h&&!l;n++){var d=this.log2lin(this.lin2log(u)*H[n]);d>p&&(!w||g<=r)&&"undefined"!==typeof g&&m.push(g);g>r&&(l=!0);var g=d}}}else p=this.lin2log(p),r=this.lin2log(r),f=w?x.getMinorTickInterval():u.tickInterval,f=B("auto"===f?null:f,this.minorAutoInterval,u.tickPixelInterval/(w?5:1)*(r-p)/((w?H/x.tickPositions.length:H)||1)),f=z(f,void 0,C(f)),m=x.getLinearTickPositions(f,p,r).map(this.log2lin),
  214. w||(this.minorAutoInterval=f/5);w||(x.tickInterval=f);return m};f.prototype.lin2log=function(f){return Math.pow(10,f)};f.prototype.log2lin=function(f){return Math.log(f)/Math.LN10};return f}();f=function(){function f(){}f.compose=function(f){f.keepProps.push("logarithmic");var p=f.prototype,r=E.prototype;p.log2lin=r.log2lin;p.lin2log=r.lin2log;v(f,"init",function(f){var p=this.logarithmic;"logarithmic"!==f.userOptions.type?this.logarithmic=void 0:(p||(p=this.logarithmic=new E(this)),this.log2lin!==
  215. p.log2lin&&(p.log2lin=this.log2lin.bind(this)),this.lin2log!==p.lin2log&&(p.lin2log=this.lin2log.bind(this)))});v(f,"afterInit",function(){var f=this.logarithmic;f&&(this.lin2val=function(p){return f.lin2log(p)},this.val2lin=function(p){return f.log2lin(p)})})};return f}();f.compose(r);return f});M(v,"Core/Axis/PlotLineOrBand.js",[v["Core/Axis/Axis.js"],v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f,v){var C=v.arrayMax,z=v.arrayMin,B=v.defined,E=v.destroyObjectProperties,D=v.erase,x=v.extend,
  216. p=v.merge,I=v.objectEach,w=v.pick,J=function(){function H(u,m){this.axis=u;m&&(this.options=m,this.id=m.id)}H.prototype.render=function(){f.fireEvent(this,"render");var u=this,m=u.axis,n=m.horiz,l=m.logarithmic,h=u.options,d=h.label,g=u.label,a=h.to,k=h.from,b=h.value,F=B(k)&&B(a),y=B(b),G=u.svgElem,L=!G,t=[],A=h.color,N=w(h.zIndex,0),K=h.events;t={"class":"highcharts-plot-"+(F?"band ":"line ")+(h.className||"")};var c={},e=m.chart.renderer,q=F?"bands":"lines";l&&(k=l.log2lin(k),a=l.log2lin(a),b=
  217. l.log2lin(b));m.chart.styledMode||(y?(t.stroke=A||"#999999",t["stroke-width"]=w(h.width,1),h.dashStyle&&(t.dashstyle=h.dashStyle)):F&&(t.fill=A||"#e6ebf5",h.borderWidth&&(t.stroke=h.borderColor,t["stroke-width"]=h.borderWidth)));c.zIndex=N;q+="-"+N;(l=m.plotLinesAndBandsGroups[q])||(m.plotLinesAndBandsGroups[q]=l=e.g("plot-"+q).attr(c).add());L&&(u.svgElem=G=e.path().attr(t).add(l));if(y)t=m.getPlotLinePath({value:b,lineWidth:G.strokeWidth(),acrossPanes:h.acrossPanes});else if(F)t=m.getPlotBandPath(k,
  218. a,h);else return;!u.eventsAdded&&K&&(I(K,function(c,e){G.on(e,function(c){K[e].apply(u,[c])})}),u.eventsAdded=!0);(L||!G.d)&&t&&t.length?G.attr({d:t}):G&&(t?(G.show(!0),G.animate({d:t})):G.d&&(G.hide(),g&&(u.label=g=g.destroy())));d&&(B(d.text)||B(d.formatter))&&t&&t.length&&0<m.width&&0<m.height&&!t.isFlat?(d=p({align:n&&F&&"center",x:n?!F&&4:10,verticalAlign:!n&&F&&"middle",y:n?F?16:10:F?6:-4,rotation:n&&!F&&90},d),this.renderLabel(d,t,F,N)):g&&g.hide();return u};H.prototype.renderLabel=function(u,
  219. m,n,l){var h=this.label,d=this.axis.chart.renderer;h||(h={align:u.textAlign||u.align,rotation:u.rotation,"class":"highcharts-plot-"+(n?"band":"line")+"-label "+(u.className||"")},h.zIndex=l,l=this.getLabelText(u),this.label=h=d.text(l,0,0,u.useHTML).attr(h).add(),this.axis.chart.styledMode||h.css(u.style));d=m.xBounds||[m[0][1],m[1][1],n?m[2][1]:m[0][1]];m=m.yBounds||[m[0][2],m[1][2],n?m[2][2]:m[0][2]];n=z(d);l=z(m);h.align(u,!1,{x:n,y:l,width:C(d)-n,height:C(m)-l});h.show(!0)};H.prototype.getLabelText=
  220. function(u){return B(u.formatter)?u.formatter.call(this):u.text};H.prototype.destroy=function(){D(this.axis.plotLinesAndBands,this);delete this.axis;E(this)};return H}();x(r.prototype,{getPlotBandPath:function(f,u){var m=this.getPlotLinePath({value:u,force:!0,acrossPanes:this.options.acrossPanes}),n=this.getPlotLinePath({value:f,force:!0,acrossPanes:this.options.acrossPanes}),l=[],h=this.horiz,d=1;f=f<this.min&&u<this.min||f>this.max&&u>this.max;if(n&&m){if(f){var g=n.toString()===m.toString();d=
  221. 0}for(f=0;f<n.length;f+=2){u=n[f];var a=n[f+1],k=m[f],b=m[f+1];"M"!==u[0]&&"L"!==u[0]||"M"!==a[0]&&"L"!==a[0]||"M"!==k[0]&&"L"!==k[0]||"M"!==b[0]&&"L"!==b[0]||(h&&k[1]===u[1]?(k[1]+=d,b[1]+=d):h||k[2]!==u[2]||(k[2]+=d,b[2]+=d),l.push(["M",u[1],u[2]],["L",a[1],a[2]],["L",b[1],b[2]],["L",k[1],k[2]],["Z"]));l.isFlat=g}}return l},addPlotBand:function(f){return this.addPlotBandOrLine(f,"plotBands")},addPlotLine:function(f){return this.addPlotBandOrLine(f,"plotLines")},addPlotBandOrLine:function(f,u){var m=
  222. (new J(this,f)).render(),n=this.userOptions;if(m){if(u){var l=n[u]||[];l.push(f);n[u]=l}this.plotLinesAndBands.push(m);this._addedPlotLB=!0}return m},removePlotBandOrLine:function(f){for(var u=this.plotLinesAndBands,m=this.options,n=this.userOptions,l=u.length;l--;)u[l].id===f&&u[l].destroy();[m.plotLines||[],n.plotLines||[],m.plotBands||[],n.plotBands||[]].forEach(function(h){for(l=h.length;l--;)(h[l]||{}).id===f&&D(h,h[l])})},removePlotBand:function(f){this.removePlotBandOrLine(f)},removePlotLine:function(f){this.removePlotBandOrLine(f)}});
  223. f.PlotLineOrBand=J;return f.PlotLineOrBand});M(v,"Core/Tooltip.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=r.doc,C=f.clamp,z=f.css,B=f.defined,E=f.discardElement,D=f.extend,x=f.fireEvent,p=f.format,I=f.isNumber,w=f.isString,J=f.merge,H=f.pick,u=f.splat,m=f.syncTimeout,n=f.timeUnits;"";var l=function(){function h(d,g){this.container=void 0;this.crosshairs=[];this.distance=0;this.isHidden=!0;this.isSticky=!1;this.now={};this.options={};this.outside=!1;this.chart=d;this.init(d,
  224. g)}h.prototype.applyFilter=function(){var d=this.chart;d.renderer.definition({tagName:"filter",id:"drop-shadow-"+d.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"}]}]});d.renderer.definition({tagName:"style",textContent:".highcharts-tooltip-"+d.index+
  225. "{filter:url(#drop-shadow-"+d.index+")}"})};h.prototype.bodyFormatter=function(d){return d.map(function(d){var a=d.series.tooltipOptions;return(a[(d.point.formatPrefix||"point")+"Formatter"]||d.point.tooltipFormatter).call(d.point,a[(d.point.formatPrefix||"point")+"Format"]||"")})};h.prototype.cleanSplit=function(d){this.chart.series.forEach(function(g){var a=g&&g.tt;a&&(!a.isActive||d?g.tt=a.destroy():a.isActive=!1)})};h.prototype.defaultFormatter=function(d){var g=this.points||u(this);var a=[d.tooltipFooterHeaderFormatter(g[0])];
  226. a=a.concat(d.bodyFormatter(g));a.push(d.tooltipFooterHeaderFormatter(g[0],!0));return a};h.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(),E(this.container));f.clearTimeout(this.hideTimer);f.clearTimeout(this.tooltipTimeout)};h.prototype.getAnchor=function(d,g){var a=this.chart,k=a.pointer,b=a.inverted,h=a.plotTop,y=a.plotLeft,l=0,n=0,t,A;
  227. d=u(d);this.followPointer&&g?("undefined"===typeof g.chartX&&(g=k.normalize(g)),d=[g.chartX-y,g.chartY-h]):d[0].tooltipPos?d=d[0].tooltipPos:(d.forEach(function(a){t=a.series.yAxis;A=a.series.xAxis;l+=a.plotX+(!b&&A?A.left-y:0);n+=(a.plotLow?(a.plotLow+a.plotHigh)/2:a.plotY)+(!b&&t?t.top-h:0)}),l/=d.length,n/=d.length,d=[b?a.plotWidth-n:l,this.shared&&!b&&1<d.length&&g?g.chartY-h:b?a.plotHeight-l:n]);return d.map(Math.round)};h.prototype.getDateFormat=function(d,g,a,k){var b=this.chart.time,h=b.dateFormat("%m-%d %H:%M:%S.%L",
  228. g),y={millisecond:15,second:12,minute:9,hour:6,day:3},l="millisecond";for(m in n){if(d===n.week&&+b.dateFormat("%w",g)===a&&"00:00:00.000"===h.substr(6)){var m="week";break}if(n[m]>d){m=l;break}if(y[m]&&h.substr(y[m])!=="01-01 00:00:00.000".substr(y[m]))break;"week"!==m&&(l=m)}if(m)var t=b.resolveDTLFormat(k[m]).main;return t};h.prototype.getLabel=function(){var d,g,a=this,k=this.chart.renderer,b=this.chart.styledMode,h=this.options,y="tooltip"+(B(h.className)?" "+h.className:""),l=(null===(d=h.style)||
  229. void 0===d?void 0:d.pointerEvents)||(!this.followPointer&&h.stickOnContact?"auto":"none"),m;d=function(){a.inContact=!0};var t=function(){var c=a.chart.hoverSeries;a.inContact=!1;if(c&&c.onMouseOut)c.onMouseOut()};if(!this.label){this.outside&&(this.container=m=r.doc.createElement("div"),m.className="highcharts-tooltip-container",z(m,{position:"absolute",top:"1px",pointerEvents:l,zIndex:3}),r.doc.body.appendChild(m),this.renderer=k=new r.Renderer(m,0,0,null===(g=this.chart.options.chart)||void 0===
  230. g?void 0:g.style,void 0,void 0,k.styledMode));this.split?this.label=k.g(y):(this.label=k.label("",0,0,h.shape||"callout",null,null,h.useHTML,null,y).attr({padding:h.padding,r:h.borderRadius}),b||this.label.attr({fill:h.backgroundColor,"stroke-width":h.borderWidth}).css(h.style).css({pointerEvents:l}).shadow(h.shadow));b&&(this.applyFilter(),this.label.addClass("highcharts-tooltip-"+this.chart.index));if(a.outside&&!a.split){var A=this.label,n=A.xSetter,u=A.ySetter;A.xSetter=function(c){n.call(A,a.distance);
  231. m.style.left=c+"px"};A.ySetter=function(c){u.call(A,a.distance);m.style.top=c+"px"}}this.label.on("mouseenter",d).on("mouseleave",t).attr({zIndex:8}).add()}return this.label};h.prototype.getPosition=function(d,g,a){var k=this.chart,b=this.distance,h={},l=k.inverted&&a.h||0,m,n=this.outside,t=n?v.documentElement.clientWidth-2*b:k.chartWidth,A=n?Math.max(v.body.scrollHeight,v.documentElement.scrollHeight,v.body.offsetHeight,v.documentElement.offsetHeight,v.documentElement.clientHeight):k.chartHeight,
  232. u=k.pointer.getChartPosition(),f=k.containerScaling,c=function(c){return f?c*f.scaleX:c},e=function(c){return f?c*f.scaleY:c},q=function(q){var h="x"===q;return[q,h?t:A,h?d:g].concat(n?[h?c(d):e(g),h?u.left-b+c(a.plotX+k.plotLeft):u.top-b+e(a.plotY+k.plotTop),0,h?t:A]:[h?d:g,h?a.plotX+k.plotLeft:a.plotY+k.plotTop,h?k.plotLeft:k.plotTop,h?k.plotLeft+k.plotWidth:k.plotTop+k.plotHeight])},p=q("y"),w=q("x"),r=!this.followPointer&&H(a.ttBelow,!k.inverted===!!a.negative),x=function(a,k,d,q,g,t,A){var y=
  233. "y"===a?e(b):c(b),F=(d-q)/2,m=q<g-b,n=g+b+q<k,u=g-y-d+F;g=g+y-F;if(r&&n)h[a]=g;else if(!r&&m)h[a]=u;else if(m)h[a]=Math.min(A-q,0>u-l?u:u-l);else if(n)h[a]=Math.max(t,g+l+d>k?g:g+l);else return!1},I=function(c,e,a,k,d){var q;d<b||d>e-b?q=!1:h[c]=d<a/2?1:d>e-k/2?e-k-2:d-a/2;return q},J=function(c){var e=p;p=w;w=e;m=c},D=function(){!1!==x.apply(0,p)?!1!==I.apply(0,w)||m||(J(!0),D()):m?h.x=h.y=0:(J(!0),D())};(k.inverted||1<this.len)&&J();D();return h};h.prototype.getXDateFormat=function(d,g,a){g=g.dateTimeLabelFormats;
  234. var k=a&&a.closestPointRange;return(k?this.getDateFormat(k,d.x,a.options.startOfWeek,g):g.day)||g.year};h.prototype.hide=function(d){var g=this;f.clearTimeout(this.hideTimer);d=H(d,this.options.hideDelay,500);this.isHidden||(this.hideTimer=m(function(){g.getLabel().fadeOut(d?void 0:d);g.isHidden=!0},d))};h.prototype.init=function(d,g){this.chart=d;this.options=g;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.split=g.split&&!d.inverted&&!d.polar;this.shared=g.shared||this.split;this.outside=
  235. H(g.outside,!(!d.scrollablePixelsX&&!d.scrollablePixelsY))};h.prototype.isStickyOnContact=function(){return!(this.followPointer||!this.options.stickOnContact||!this.inContact)};h.prototype.move=function(d,g,a,k){var b=this,h=b.now,l=!1!==b.options.animation&&!b.isHidden&&(1<Math.abs(d-h.x)||1<Math.abs(g-h.y)),m=b.followPointer||1<b.len;D(h,{x:l?(2*h.x+d)/3:d,y:l?(h.y+g)/2:g,anchorX:m?void 0:l?(2*h.anchorX+a)/3:a,anchorY:m?void 0:l?(h.anchorY+k)/2:k});b.getLabel().attr(h);b.drawTracker();l&&(f.clearTimeout(this.tooltipTimeout),
  236. this.tooltipTimeout=setTimeout(function(){b&&b.move(d,g,a,k)},32))};h.prototype.refresh=function(d,g){var a=this.chart,k=this.options,b=d,h={},l=[],m=k.formatter||this.defaultFormatter;h=this.shared;var n=a.styledMode;if(k.enabled){f.clearTimeout(this.hideTimer);this.followPointer=u(b)[0].series.tooltipOptions.followPointer;var t=this.getAnchor(b,g);g=t[0];var A=t[1];!h||b.series&&b.series.noSharedTooltip?h=b.getLabelConfig():(a.pointer.applyInactiveState(b),b.forEach(function(b){b.setState("hover");
  237. l.push(b.getLabelConfig())}),h={x:b[0].category,y:b[0].y},h.points=l,b=b[0]);this.len=l.length;a=m.call(h,this);m=b.series;this.distance=H(m.tooltipOptions.distance,16);!1===a?this.hide():(this.split?this.renderSplit(a,u(d)):(d=this.getLabel(),k.style.width&&!n||d.css({width:this.chart.spacingBox.width+"px"}),d.attr({text:a&&a.join?a.join(""):a}),d.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+H(b.colorIndex,m.colorIndex)),n||d.attr({stroke:k.borderColor||b.color||m.color||"#666666"}),
  238. this.updatePosition({plotX:g,plotY:A,negative:b.negative,ttBelow:b.ttBelow,h:t[2]||0})),this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1);x(this,"refresh")}};h.prototype.renderSplit=function(d,g){function a(c,e,b,a,k){void 0===k&&(k=!0);b?(e=v?0:z,c=C(c-a/2,I.left,I.right-a)):(e-=E,c=k?c-a-p:c+p,c=C(c,k?c:I.left,I.right));return{x:c,y:e}}var k=this,b=k.chart,h=k.chart,l=h.plotHeight,m=h.plotLeft,n=h.plotTop,t=h.pointer,A=h.renderer,u=h.scrollablePixelsY,f=void 0===u?
  239. 0:u;u=h.scrollingContainer;u=void 0===u?{scrollLeft:0,scrollTop:0}:u;var c=u.scrollLeft,e=u.scrollTop,q=h.styledMode,p=k.distance,P=k.options,x=k.options.positioner,I={left:c,right:c+h.chartWidth,top:e,bottom:e+h.chartHeight},J=k.getLabel(),v=!(!b.xAxis[0]||!b.xAxis[0].opposite),E=n+e,B=0,z=l-f;w(d)&&(d=[!1,d]);d=d.slice(0,g.length+1).reduce(function(c,b,d){if(!1!==b&&""!==b){d=g[d-1]||{isHeader:!0,plotX:g[0].plotX,plotY:l,series:{}};var t=d.isHeader,h=t?k:d.series,y=h.tt,F=d.isHeader;var u=d.series;
  240. var G="highcharts-color-"+H(d.colorIndex,u.colorIndex,"none");y||(y={padding:P.padding,r:P.borderRadius},q||(y.fill=P.backgroundColor,y["stroke-width"]=P.borderWidth),y=A.label("",0,0,P[F?"headerShape":"shape"]||"callout",void 0,void 0,P.useHTML).addClass((F?"highcharts-tooltip-header ":"")+"highcharts-tooltip-box "+G).attr(y).add(J));y.isActive=!0;y.attr({text:b});q||y.css(P.style).shadow(P.shadow).attr({stroke:P.borderColor||d.color||u.color||"#333333"});b=h.tt=y;F=b.getBBox();h=F.width+b.strokeWidth();
  241. t&&(B=F.height,z+=B,v&&(E-=B));u=d.plotX;u=void 0===u?0:u;G=d.plotY;G=void 0===G?0:G;var L=d.series;if(d.isHeader){u=m+u;var K=n+l/2}else y=L.xAxis,L=L.yAxis,u=y.pos+C(u,-p,y.len+p),L.pos+G>=e+n&&L.pos+G<=e+n+l-f&&(K=L.pos+G);u=C(u,I.left-p,I.right+p);"number"===typeof K?(F=F.height+1,G=x?x.call(k,h,F,d):a(u,K,t,h),c.push({align:x?0:void 0,anchorX:u,anchorY:K,boxWidth:h,point:d,rank:H(G.rank,t?1:0),size:F,target:G.y,tt:b,x:G.x})):b.isActive=!1}return c},[]);!x&&d.some(function(c){return c.x<I.left})&&
  242. (d=d.map(function(c){var e=a(c.anchorX,c.anchorY,c.point.isHeader,c.boxWidth,!1);return D(c,{target:e.y,x:e.x})}));k.cleanSplit();r.distribute(d,z);d.forEach(function(c){var e=c.pos;c.tt.attr({visibility:"undefined"===typeof e?"hidden":"inherit",x:c.x,y:e+E,anchorX:c.anchorX,anchorY:c.anchorY})});d=k.container;b=k.renderer;k.outside&&d&&b&&(h=J.getBBox(),b.setSize(h.width+h.x,h.height+h.y,!1),t=t.getChartPosition(),d.style.left=t.left+"px",d.style.top=t.top+"px")};h.prototype.drawTracker=function(){if(this.followPointer||
  243. !this.options.stickOnContact)this.tracker&&this.tracker.destroy();else{var d=this.chart,g=this.label,a=d.hoverPoint;if(g&&a){var k={x:0,y:0,width:0,height:0};a=this.getAnchor(a);var b=g.getBBox();a[0]+=d.plotLeft-g.translateX;a[1]+=d.plotTop-g.translateY;k.x=Math.min(0,a[0]);k.y=Math.min(0,a[1]);k.width=0>a[0]?Math.max(Math.abs(a[0]),b.width-a[0]):Math.max(Math.abs(a[0]),b.width);k.height=0>a[1]?Math.max(Math.abs(a[1]),b.height-Math.abs(a[1])):Math.max(Math.abs(a[1]),b.height);this.tracker?this.tracker.attr(k):
  244. (this.tracker=g.renderer.rect(k).addClass("highcharts-tracker").add(g),d.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}}};h.prototype.styledModeFormat=function(d){return d.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex}"')};h.prototype.tooltipFooterHeaderFormatter=function(d,g){var a=g?"footer":"header",k=d.series,b=k.tooltipOptions,h=b.xDateFormat,l=k.xAxis,m=l&&"datetime"===l.options.type&&
  245. I(d.key),n=b[a+"Format"];g={isFooter:g,labelConfig:d};x(this,"headerFormatter",g,function(a){m&&!h&&(h=this.getXDateFormat(d,b,l));m&&h&&(d.point&&d.point.tooltipDateKeys||["key"]).forEach(function(b){n=n.replace("{point."+b+"}","{point."+b+":"+h+"}")});k.chart.styledMode&&(n=this.styledModeFormat(n));a.text=p(n,{point:d,series:k},this.chart)});return g.text};h.prototype.update=function(d){this.destroy();J(!0,this.chart.options.tooltip.userOptions,d);this.init(this.chart,J(!0,this.options,d))};h.prototype.updatePosition=
  246. function(d){var g=this.chart,a=g.pointer,k=this.getLabel(),b=d.plotX+g.plotLeft,h=d.plotY+g.plotTop;a=a.getChartPosition();d=(this.options.positioner||this.getPosition).call(this,k.width,k.height,d);if(this.outside){var l=(this.options.borderWidth||0)+2*this.distance;this.renderer.setSize(k.width+l,k.height+l,!1);if(g=g.containerScaling)z(this.container,{transform:"scale("+g.scaleX+", "+g.scaleY+")"}),b*=g.scaleX,h*=g.scaleY;b+=a.left-d.x;h+=a.top-d.y}this.move(Math.round(d.x),Math.round(d.y||0),
  247. b,h)};return h}();r.Tooltip=l;return r.Tooltip});M(v,"Core/Pointer.js",[v["Core/Color.js"],v["Core/Globals.js"],v["Core/Tooltip.js"],v["Core/Utilities.js"]],function(r,f,v,C){var z=r.parse,B=f.charts,E=f.noop,D=C.addEvent,x=C.attr,p=C.css,I=C.defined,w=C.extend,J=C.find,H=C.fireEvent,u=C.isNumber,m=C.isObject,n=C.objectEach,l=C.offset,h=C.pick,d=C.splat;"";r=function(){function g(a,k){this.lastValidTouch={};this.pinchDown=[];this.runChartClick=!1;this.chart=a;this.hasDragged=!1;this.options=k;this.unbindContainerMouseLeave=
  248. function(){};this.unbindContainerMouseEnter=function(){};this.init(a,k)}g.prototype.applyInactiveState=function(a){var k=[],b;(a||[]).forEach(function(a){b=a.series;k.push(b);b.linkedParent&&k.push(b.linkedParent);b.linkedSeries&&(k=k.concat(b.linkedSeries));b.navigatorSeries&&k.push(b.navigatorSeries)});this.chart.series.forEach(function(b){-1===k.indexOf(b)?b.setState("inactive",!0):b.options.inactiveOtherPoints&&b.setAllPointsToState("inactive")})};g.prototype.destroy=function(){var a=this;"undefined"!==
  249. typeof a.unDocMouseMove&&a.unDocMouseMove();this.unbindContainerMouseLeave();f.chartCount||(f.unbindDocumentMouseUp&&(f.unbindDocumentMouseUp=f.unbindDocumentMouseUp()),f.unbindDocumentTouchEnd&&(f.unbindDocumentTouchEnd=f.unbindDocumentTouchEnd()));clearInterval(a.tooltipTimeout);n(a,function(k,b){a[b]=void 0})};g.prototype.drag=function(a){var k=this.chart,b=k.options.chart,d=a.chartX,g=a.chartY,h=this.zoomHor,l=this.zoomVert,t=k.plotLeft,A=k.plotTop,n=k.plotWidth,u=k.plotHeight,c=this.selectionMarker,
  250. e=this.mouseDownX||0,q=this.mouseDownY||0,f=m(b.panning)?b.panning&&b.panning.enabled:b.panning,p=b.panKey&&a[b.panKey+"Key"];if(!c||!c.touch)if(d<t?d=t:d>t+n&&(d=t+n),g<A?g=A:g>A+u&&(g=A+u),this.hasDragged=Math.sqrt(Math.pow(e-d,2)+Math.pow(q-g,2)),10<this.hasDragged){var w=k.isInsidePlot(e-t,q-A);k.hasCartesianSeries&&(this.zoomX||this.zoomY)&&w&&!p&&!c&&(this.selectionMarker=c=k.renderer.rect(t,A,h?1:n,l?1:u,0).attr({"class":"highcharts-selection-marker",zIndex:7}).add(),k.styledMode||c.attr({fill:b.selectionMarkerFill||
  251. z("#335cad").setOpacity(.25).get()}));c&&h&&(d-=e,c.attr({width:Math.abs(d),x:(0<d?0:d)+e}));c&&l&&(d=g-q,c.attr({height:Math.abs(d),y:(0<d?0:d)+q}));w&&!c&&f&&k.pan(a,b.panning)}};g.prototype.dragStart=function(a){var d=this.chart;d.mouseIsDown=a.type;d.cancelClick=!1;d.mouseDownX=this.mouseDownX=a.chartX;d.mouseDownY=this.mouseDownY=a.chartY};g.prototype.drop=function(a){var d=this,b=this.chart,g=this.hasPinched;if(this.selectionMarker){var h={originalEvent:a,xAxis:[],yAxis:[]},l=this.selectionMarker,
  252. m=l.attr?l.attr("x"):l.x,t=l.attr?l.attr("y"):l.y,A=l.attr?l.attr("width"):l.width,n=l.attr?l.attr("height"):l.height,f;if(this.hasDragged||g)b.axes.forEach(function(c){if(c.zoomEnabled&&I(c.min)&&(g||d[{xAxis:"zoomX",yAxis:"zoomY"}[c.coll]])&&u(m)&&u(t)){var e=c.horiz,b="touchend"===a.type?c.minPixelPadding:0,k=c.toValue((e?m:t)+b);e=c.toValue((e?m+A:t+n)-b);h[c.coll].push({axis:c,min:Math.min(k,e),max:Math.max(k,e)});f=!0}}),f&&H(b,"selection",h,function(c){b.zoom(w(c,g?{animation:!1}:null))});
  253. u(b.index)&&(this.selectionMarker=this.selectionMarker.destroy());g&&this.scaleGroups()}b&&u(b.index)&&(p(b.container,{cursor:b._cursor}),b.cancelClick=10<this.hasDragged,b.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])};g.prototype.findNearestKDPoint=function(a,d,b){var k=this.chart,g=k.hoverPoint;k=k.tooltip;if(g&&k&&k.isStickyOnContact())return g;var h;a.forEach(function(a){var k=!(a.noSharedTooltip&&d)&&0>a.options.findNearestPointBy.indexOf("y");a=a.searchPoint(b,k);if((k=
  254. m(a,!0))&&!(k=!m(h,!0))){k=h.distX-a.distX;var g=h.dist-a.dist,l=(a.series.group&&a.series.group.zIndex)-(h.series.group&&h.series.group.zIndex);k=0<(0!==k&&d?k:0!==g?g:0!==l?l:h.series.index>a.series.index?-1:1)}k&&(h=a)});return h};g.prototype.getChartCoordinatesFromPoint=function(a,d){var b=a.series,k=b.xAxis;b=b.yAxis;var g=h(a.clientX,a.plotX),l=a.shapeArgs;if(k&&b)return d?{chartX:k.len+k.pos-g,chartY:b.len+b.pos-a.plotY}:{chartX:g+k.pos,chartY:a.plotY+b.pos};if(l&&l.x&&l.y)return{chartX:l.x,
  255. chartY:l.y}};g.prototype.getChartPosition=function(){return this.chartPosition||(this.chartPosition=l(this.chart.container))};g.prototype.getCoordinates=function(a){var d={xAxis:[],yAxis:[]};this.chart.axes.forEach(function(b){d[b.isXAxis?"xAxis":"yAxis"].push({axis:b,value:b.toValue(a[b.horiz?"chartX":"chartY"])})});return d};g.prototype.getHoverData=function(a,d,b,g,l,n){var k,t=[];g=!(!g||!a);var A=d&&!d.stickyTracking,y={chartX:n?n.chartX:void 0,chartY:n?n.chartY:void 0,shared:l};H(this,"beforeGetHoverData",
  256. y);A=A?[d]:b.filter(function(b){return y.filter?y.filter(b):b.visible&&!(!l&&b.directTouch)&&h(b.options.enableMouseTracking,!0)&&b.stickyTracking});d=(k=g||!n?a:this.findNearestKDPoint(A,l,n))&&k.series;k&&(l&&!d.noSharedTooltip?(A=b.filter(function(b){return y.filter?y.filter(b):b.visible&&!(!l&&b.directTouch)&&h(b.options.enableMouseTracking,!0)&&!b.noSharedTooltip}),A.forEach(function(b){var c=J(b.points,function(c){return c.x===k.x&&!c.isNull});m(c)&&(b.chart.isBoosting&&(c=b.getPoint(c)),t.push(c))})):
  257. t.push(k));y={hoverPoint:k};H(this,"afterGetHoverData",y);return{hoverPoint:y.hoverPoint,hoverSeries:d,hoverPoints:t}};g.prototype.getPointFromEvent=function(a){a=a.target;for(var d;a&&!d;)d=a.point,a=a.parentNode;return d};g.prototype.onTrackerMouseOut=function(a){a=a.relatedTarget||a.toElement;var d=this.chart.hoverSeries;this.isDirectTouch=!1;if(!(!d||!a||d.stickyTracking||this.inClass(a,"highcharts-tooltip")||this.inClass(a,"highcharts-series-"+d.index)&&this.inClass(a,"highcharts-tracker")))d.onMouseOut()};
  258. g.prototype.inClass=function(a,d){for(var b;a;){if(b=x(a,"class")){if(-1!==b.indexOf(d))return!0;if(-1!==b.indexOf("highcharts-container"))return!1}a=a.parentNode}};g.prototype.init=function(a,d){this.options=d;this.chart=a;this.runChartClick=d.chart.events&&!!d.chart.events.click;this.pinchDown=[];this.lastValidTouch={};v&&(a.tooltip=new v(a,d.tooltip),this.followTouchMove=h(d.tooltip.followTouchMove,!0));this.setDOMEvents()};g.prototype.normalize=function(a,d){var b=a.touches,k=b?b.length?b.item(0):
  259. h(b.changedTouches,a.changedTouches)[0]:a;d||(d=this.getChartPosition());b=k.pageX-d.left;d=k.pageY-d.top;if(k=this.chart.containerScaling)b/=k.scaleX,d/=k.scaleY;return w(a,{chartX:Math.round(b),chartY:Math.round(d)})};g.prototype.onContainerClick=function(a){var d=this.chart,b=d.hoverPoint;a=this.normalize(a);var g=d.plotLeft,h=d.plotTop;d.cancelClick||(b&&this.inClass(a.target,"highcharts-tracker")?(H(b.series,"click",w(a,{point:b})),d.hoverPoint&&b.firePointEvent("click",a)):(w(a,this.getCoordinates(a)),
  260. d.isInsidePlot(a.chartX-g,a.chartY-h)&&H(d,"click",a)))};g.prototype.onContainerMouseDown=function(a){var d=1===((a.buttons||a.button)&1);a=this.normalize(a);if(f.isFirefox&&0!==a.button)this.onContainerMouseMove(a);if("undefined"===typeof a.button||d)this.zoomOption(a),d&&a.preventDefault&&a.preventDefault(),this.dragStart(a)};g.prototype.onContainerMouseLeave=function(a){var d=B[h(f.hoverChartIndex,-1)],b=this.chart.tooltip;a=this.normalize(a);d&&(a.relatedTarget||a.toElement)&&(d.pointer.reset(),
  261. d.pointer.chartPosition=void 0);b&&!b.isHidden&&this.reset()};g.prototype.onContainerMouseEnter=function(a){delete this.chartPosition};g.prototype.onContainerMouseMove=function(a){var d=this.chart;a=this.normalize(a);this.setHoverChartIndex();a.preventDefault||(a.returnValue=!1);"mousedown"===d.mouseIsDown&&this.drag(a);d.openMenu||!this.inClass(a.target,"highcharts-tracker")&&!d.isInsidePlot(a.chartX-d.plotLeft,a.chartY-d.plotTop)||this.runPointActions(a)};g.prototype.onDocumentTouchEnd=function(a){B[f.hoverChartIndex]&&
  262. B[f.hoverChartIndex].pointer.drop(a)};g.prototype.onContainerTouchMove=function(a){this.touch(a)};g.prototype.onContainerTouchStart=function(a){this.zoomOption(a);this.touch(a,!0)};g.prototype.onDocumentMouseMove=function(a){var d=this.chart,b=this.chartPosition;a=this.normalize(a,b);var g=d.tooltip;!b||g&&g.isStickyOnContact()||d.isInsidePlot(a.chartX-d.plotLeft,a.chartY-d.plotTop)||this.inClass(a.target,"highcharts-tracker")||this.reset()};g.prototype.onDocumentMouseUp=function(a){var d=B[h(f.hoverChartIndex,
  263. -1)];d&&d.pointer.drop(a)};g.prototype.pinch=function(a){var d=this,b=d.chart,g=d.pinchDown,l=a.touches||[],m=l.length,n=d.lastValidTouch,t=d.hasZoom,A=d.selectionMarker,u={},f=1===m&&(d.inClass(a.target,"highcharts-tracker")&&b.runTrackerClick||d.runChartClick),c={};1<m&&(d.initiated=!0);t&&d.initiated&&!f&&a.preventDefault();[].map.call(l,function(c){return d.normalize(c)});"touchstart"===a.type?([].forEach.call(l,function(c,b){g[b]={chartX:c.chartX,chartY:c.chartY}}),n.x=[g[0].chartX,g[1]&&g[1].chartX],
  264. n.y=[g[0].chartY,g[1]&&g[1].chartY],b.axes.forEach(function(c){if(c.zoomEnabled){var e=b.bounds[c.horiz?"h":"v"],a=c.minPixelPadding,d=c.toPixels(Math.min(h(c.options.min,c.dataMin),c.dataMin)),k=c.toPixels(Math.max(h(c.options.max,c.dataMax),c.dataMax)),g=Math.max(d,k);e.min=Math.min(c.pos,Math.min(d,k)-a);e.max=Math.max(c.pos+c.len,g+a)}}),d.res=!0):d.followTouchMove&&1===m?this.runPointActions(d.normalize(a)):g.length&&(A||(d.selectionMarker=A=w({destroy:E,touch:!0},b.plotBox)),d.pinchTranslate(g,
  265. l,u,A,c,n),d.hasPinched=t,d.scaleGroups(u,c),d.res&&(d.res=!1,this.reset(!1,0)))};g.prototype.pinchTranslate=function(a,d,b,g,h,l){this.zoomHor&&this.pinchTranslateDirection(!0,a,d,b,g,h,l);this.zoomVert&&this.pinchTranslateDirection(!1,a,d,b,g,h,l)};g.prototype.pinchTranslateDirection=function(a,d,b,g,h,l,m,t){var k=this.chart,y=a?"x":"y",n=a?"X":"Y",c="chart"+n,e=a?"width":"height",q=k["plot"+(a?"Left":"Top")],u,F,f=t||1,p=k.inverted,G=k.bounds[a?"h":"v"],L=1===d.length,w=d[0][c],r=b[0][c],H=!L&&
  266. d[1][c],x=!L&&b[1][c];b=function(){"number"===typeof x&&20<Math.abs(w-H)&&(f=t||Math.abs(r-x)/Math.abs(w-H));F=(q-r)/f+w;u=k["plot"+(a?"Width":"Height")]/f};b();d=F;if(d<G.min){d=G.min;var I=!0}else d+u>G.max&&(d=G.max-u,I=!0);I?(r-=.8*(r-m[y][0]),"number"===typeof x&&(x-=.8*(x-m[y][1])),b()):m[y]=[r,x];p||(l[y]=F-q,l[e]=u);l=p?1/f:f;h[e]=u;h[y]=d;g[p?a?"scaleY":"scaleX":"scale"+n]=f;g["translate"+n]=l*q+(r-l*w)};g.prototype.reset=function(a,k){var b=this.chart,g=b.hoverSeries,h=b.hoverPoint,l=b.hoverPoints,
  267. m=b.tooltip,t=m&&m.shared?l:h;a&&t&&d(t).forEach(function(b){b.series.isCartesian&&"undefined"===typeof b.plotX&&(a=!1)});if(a)m&&t&&d(t).length&&(m.refresh(t),m.shared&&l?l.forEach(function(b){b.setState(b.state,!0);b.series.isCartesian&&(b.series.xAxis.crosshair&&b.series.xAxis.drawCrosshair(null,b),b.series.yAxis.crosshair&&b.series.yAxis.drawCrosshair(null,b))}):h&&(h.setState(h.state,!0),b.axes.forEach(function(b){b.crosshair&&h.series[b.coll]===b&&b.drawCrosshair(null,h)})));else{if(h)h.onMouseOut();
  268. l&&l.forEach(function(b){b.setState()});if(g)g.onMouseOut();m&&m.hide(k);this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove());b.axes.forEach(function(b){b.hideCrosshair()});this.hoverX=b.hoverPoints=b.hoverPoint=null}};g.prototype.runPointActions=function(a,d){var b=this.chart,k=b.tooltip&&b.tooltip.options.enabled?b.tooltip:void 0,g=k?k.shared:!1,l=d||b.hoverPoint,m=l&&l.series||b.hoverSeries;m=this.getHoverData(l,m,b.series,(!a||"touchmove"!==a.type)&&(!!d||m&&m.directTouch&&this.isDirectTouch),
  269. g,a);l=m.hoverPoint;var t=m.hoverPoints;d=(m=m.hoverSeries)&&m.tooltipOptions.followPointer;g=g&&m&&!m.noSharedTooltip;if(l&&(l!==b.hoverPoint||k&&k.isHidden)){(b.hoverPoints||[]).forEach(function(b){-1===t.indexOf(b)&&b.setState()});if(b.hoverSeries!==m)m.onMouseOver();this.applyInactiveState(t);(t||[]).forEach(function(b){b.setState("hover")});b.hoverPoint&&b.hoverPoint.firePointEvent("mouseOut");if(!l.series)return;b.hoverPoints=t;b.hoverPoint=l;l.firePointEvent("mouseOver");k&&k.refresh(g?t:l,
  270. a)}else d&&k&&!k.isHidden&&(l=k.getAnchor([{}],a),k.updatePosition({plotX:l[0],plotY:l[1]}));this.unDocMouseMove||(this.unDocMouseMove=D(b.container.ownerDocument,"mousemove",function(b){var a=B[f.hoverChartIndex];if(a)a.pointer.onDocumentMouseMove(b)}));b.axes.forEach(function(d){var k=h((d.crosshair||{}).snap,!0),g;k&&((g=b.hoverPoint)&&g.series[d.coll]===d||(g=J(t,function(c){return c.series[d.coll]===d})));g||!k?d.drawCrosshair(a,g):d.hideCrosshair()})};g.prototype.scaleGroups=function(a,d){var b=
  271. this.chart,k;b.series.forEach(function(g){k=a||g.getPlotBox();g.xAxis&&g.xAxis.zoomEnabled&&g.group&&(g.group.attr(k),g.markerGroup&&(g.markerGroup.attr(k),g.markerGroup.clip(d?b.clipRect:null)),g.dataLabelsGroup&&g.dataLabelsGroup.attr(k))});b.clipRect.attr(d||b.clipBox)};g.prototype.setDOMEvents=function(){var a=this.chart.container,d=a.ownerDocument;a.onmousedown=this.onContainerMouseDown.bind(this);a.onmousemove=this.onContainerMouseMove.bind(this);a.onclick=this.onContainerClick.bind(this);this.unbindContainerMouseEnter=
  272. D(a,"mouseenter",this.onContainerMouseEnter.bind(this));this.unbindContainerMouseLeave=D(a,"mouseleave",this.onContainerMouseLeave.bind(this));f.unbindDocumentMouseUp||(f.unbindDocumentMouseUp=D(d,"mouseup",this.onDocumentMouseUp.bind(this)));f.hasTouch&&(D(a,"touchstart",this.onContainerTouchStart.bind(this)),D(a,"touchmove",this.onContainerTouchMove.bind(this)),f.unbindDocumentTouchEnd||(f.unbindDocumentTouchEnd=D(d,"touchend",this.onDocumentTouchEnd.bind(this))))};g.prototype.setHoverChartIndex=
  273. function(){var a=this.chart,d=f.charts[h(f.hoverChartIndex,-1)];if(d&&d!==a)d.pointer.onContainerMouseLeave({relatedTarget:!0});d&&d.mouseIsDown||(f.hoverChartIndex=a.index)};g.prototype.touch=function(a,d){var b=this.chart,k;this.setHoverChartIndex();if(1===a.touches.length)if(a=this.normalize(a),(k=b.isInsidePlot(a.chartX-b.plotLeft,a.chartY-b.plotTop))&&!b.openMenu){d&&this.runPointActions(a);if("touchmove"===a.type){d=this.pinchDown;var g=d[0]?4<=Math.sqrt(Math.pow(d[0].chartX-a.chartX,2)+Math.pow(d[0].chartY-
  274. a.chartY,2)):!1}h(g,!0)&&this.pinch(a)}else d&&this.reset();else 2===a.touches.length&&this.pinch(a)};g.prototype.zoomOption=function(a){var d=this.chart,b=d.options.chart,g=b.zoomType||"";d=d.inverted;/touch/.test(a.type)&&(g=h(b.pinchType,g));this.zoomX=a=/x/.test(g);this.zoomY=g=/y/.test(g);this.zoomHor=a&&!d||g&&d;this.zoomVert=g&&!d||a&&d;this.hasZoom=a||g};return g}();return f.Pointer=r});M(v,"Core/MSPointer.js",[v["Core/Globals.js"],v["Core/Pointer.js"],v["Core/Utilities.js"]],function(r,f,
  275. v){function C(){var m=[];m.item=function(m){return this[m]};w(H,function(n){m.push({pageX:n.pageX,pageY:n.pageY,target:n.target})});return m}function z(m,n,l,h){"touch"!==m.pointerType&&m.pointerType!==m.MSPOINTER_TYPE_TOUCH||!E[r.hoverChartIndex]||(h(m),h=E[r.hoverChartIndex].pointer,h[n]({type:l,target:m.currentTarget,preventDefault:x,touches:C()}))}var B=this&&this.__extends||function(){var m=function(n,l){m=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(h,d){h.__proto__=d}||function(h,
  276. d){for(var g in d)d.hasOwnProperty(g)&&(h[g]=d[g])};return m(n,l)};return function(n,l){function h(){this.constructor=n}m(n,l);n.prototype=null===l?Object.create(l):(h.prototype=l.prototype,new h)}}(),E=r.charts,D=r.doc,x=r.noop,p=v.addEvent,I=v.css,w=v.objectEach,J=v.removeEvent,H={},u=!!r.win.PointerEvent;return function(m){function n(){return null!==m&&m.apply(this,arguments)||this}B(n,m);n.prototype.batchMSEvents=function(l){l(this.chart.container,u?"pointerdown":"MSPointerDown",this.onContainerPointerDown);
  277. l(this.chart.container,u?"pointermove":"MSPointerMove",this.onContainerPointerMove);l(D,u?"pointerup":"MSPointerUp",this.onDocumentPointerUp)};n.prototype.destroy=function(){this.batchMSEvents(J);m.prototype.destroy.call(this)};n.prototype.init=function(l,h){m.prototype.init.call(this,l,h);this.hasZoom&&I(l.container,{"-ms-touch-action":"none","touch-action":"none"})};n.prototype.onContainerPointerDown=function(l){z(l,"onContainerTouchStart","touchstart",function(h){H[h.pointerId]={pageX:h.pageX,
  278. pageY:h.pageY,target:h.currentTarget}})};n.prototype.onContainerPointerMove=function(l){z(l,"onContainerTouchMove","touchmove",function(h){H[h.pointerId]={pageX:h.pageX,pageY:h.pageY};H[h.pointerId].target||(H[h.pointerId].target=h.currentTarget)})};n.prototype.onDocumentPointerUp=function(l){z(l,"onDocumentTouchEnd","touchend",function(h){delete H[h.pointerId]})};n.prototype.setDOMEvents=function(){m.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(p)};return n}(f)});
  279. M(v,"Core/Legend.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.addEvent,C=f.animObject,z=f.css,B=f.defined,E=f.discardElement,D=f.find,x=f.fireEvent,p=f.format,I=f.isNumber,w=f.merge,J=f.pick,H=f.relativeLength,u=f.setAnimation,m=f.stableSort,n=f.syncTimeout;f=f.wrap;var l=r.isFirefox,h=r.marginNames,d=r.win,g=function(){function a(a,b){this.allItems=[];this.contentGroup=this.box=void 0;this.display=!1;this.group=void 0;this.offsetWidth=this.maxLegendWidth=this.maxItemWidth=
  280. this.legendWidth=this.legendHeight=this.lastLineHeight=this.lastItemY=this.itemY=this.itemX=this.itemMarginTop=this.itemMarginBottom=this.itemHeight=this.initialItemY=0;this.options={};this.padding=0;this.pages=[];this.proximate=!1;this.scrollGroup=void 0;this.widthOption=this.totalItemWidth=this.titleHeight=this.symbolWidth=this.symbolHeight=0;this.chart=a;this.init(a,b)}a.prototype.init=function(a,b){this.chart=a;this.setOptions(b);b.enabled&&(this.render(),v(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),
  281. this.proximate?this.unchartrender=v(this.chart,"render",function(){this.legend.proximatePositions();this.legend.positionItems()}):this.unchartrender&&this.unchartrender())};a.prototype.setOptions=function(a){var b=J(a.padding,8);this.options=a;this.chart.styledMode||(this.itemStyle=a.itemStyle,this.itemHiddenStyle=w(this.itemStyle,a.itemHiddenStyle));this.itemMarginTop=a.itemMarginTop||0;this.itemMarginBottom=a.itemMarginBottom||0;this.padding=b;this.initialItemY=b-5;this.symbolWidth=J(a.symbolWidth,
  282. 16);this.pages=[];this.proximate="proximate"===a.layout&&!this.chart.inverted;this.baseline=void 0};a.prototype.update=function(a,b){var d=this.chart;this.setOptions(w(!0,this.options,a));this.destroy();d.isDirtyLegend=d.isDirtyBox=!0;J(b,!0)&&d.redraw();x(this,"afterUpdate")};a.prototype.colorizeItem=function(a,b){a.legendGroup[b?"removeClass":"addClass"]("highcharts-legend-item-hidden");if(!this.chart.styledMode){var d=this.options,k=a.legendItem,g=a.legendLine,h=a.legendSymbol,t=this.itemHiddenStyle.color;
  283. d=b?d.itemStyle.color:t;var l=b?a.color||t:t,m=a.options&&a.options.marker,n={fill:l};k&&k.css({fill:d,color:d});g&&g.attr({stroke:l});h&&(m&&h.isMarker&&(n=a.pointAttribs(),b||(n.stroke=n.fill=t)),h.attr(n))}x(this,"afterColorizeItem",{item:a,visible:b})};a.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()};a.prototype.positionItem=function(a){var b=this,d=this.options,k=d.symbolPadding,g=!d.rtl,h=a._legendItemPos;d=
  284. h[0];h=h[1];var t=a.checkbox,l=a.legendGroup;l&&l.element&&(k={translateX:g?d:this.legendWidth-d-2*k-4,translateY:h},g=function(){x(b,"afterPositionItem",{item:a})},B(l.translateY)?l.animate(k,void 0,g):(l.attr(k),g()));t&&(t.x=d,t.y=h)};a.prototype.destroyItem=function(a){var b=a.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(b){a[b]&&(a[b]=a[b].destroy())});b&&E(a.checkbox)};a.prototype.destroy=function(){function a(b){this[b]&&(this[b]=this[b].destroy())}this.getAllItems().forEach(function(b){["legendItem",
  285. "legendGroup"].forEach(a,b)});"clipRect up down pager nav box title group".split(" ").forEach(a,this);this.display=null};a.prototype.positionCheckboxes=function(){var a=this.group&&this.group.alignAttr,b=this.clipHeight||this.legendHeight,d=this.titleHeight;if(a){var g=a.translateY;this.allItems.forEach(function(k){var h=k.checkbox;if(h){var t=g+d+h.y+(this.scrollOffset||0)+3;z(h,{left:a.translateX+k.checkboxOffset+h.x-20+"px",top:t+"px",display:this.proximate||t>g-6&&t<g+b-6?"":"none"})}},this)}};
  286. a.prototype.renderTitle=function(){var a=this.options,b=this.padding,d=a.title,g=0;d.text&&(this.title||(this.title=this.chart.renderer.label(d.text,b-3,b-4,null,null,null,a.useHTML,null,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(d.style),this.title.add(this.group)),d.width||this.title.css({width:this.maxLegendWidth+"px"}),a=this.title.getBBox(),g=a.height,this.offsetWidth=a.width,this.contentGroup.attr({translateY:g}));this.titleHeight=g};a.prototype.setText=function(a){var b=
  287. this.options;a.legendItem.attr({text:b.labelFormat?p(b.labelFormat,a,this.chart):b.labelFormatter.call(a)})};a.prototype.renderItem=function(a){var b=this.chart,d=b.renderer,g=this.options,k=this.symbolWidth,h=g.symbolPadding,t=this.itemStyle,l=this.itemHiddenStyle,m="horizontal"===g.layout?J(g.itemDistance,20):0,n=!g.rtl,c=a.legendItem,e=!a.series,q=!e&&a.series.drawLegendSymbol?a.series:a,u=q.options;u=this.createCheckboxForItem&&u&&u.showCheckbox;m=k+h+m+(u?20:0);var f=g.useHTML,p=a.options.className;
  288. c||(a.legendGroup=d.g("legend-item").addClass("highcharts-"+q.type+"-series highcharts-color-"+a.colorIndex+(p?" "+p:"")+(e?" highcharts-series-"+a.index:"")).attr({zIndex:1}).add(this.scrollGroup),a.legendItem=c=d.text("",n?k+h:-h,this.baseline||0,f),b.styledMode||c.css(w(a.visible?t:l)),c.attr({align:n?"left":"right",zIndex:2}).add(a.legendGroup),this.baseline||(this.fontMetrics=d.fontMetrics(b.styledMode?12:t.fontSize,c),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,c.attr("y",this.baseline)),
  289. this.symbolHeight=g.symbolHeight||this.fontMetrics.f,q.drawLegendSymbol(this,a),this.setItemEvents&&this.setItemEvents(a,c,f));u&&!a.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(a);this.colorizeItem(a,a.visible);!b.styledMode&&t.width||c.css({width:(g.itemWidth||this.widthOption||b.spacingBox.width)-m+"px"});this.setText(a);b=c.getBBox();a.itemWidth=a.checkboxOffset=g.itemWidth||a.legendItemWidth||b.width+m;this.maxItemWidth=Math.max(this.maxItemWidth,a.itemWidth);this.totalItemWidth+=
  290. a.itemWidth;this.itemHeight=a.itemHeight=Math.round(a.legendItemHeight||b.height||this.symbolHeight)};a.prototype.layoutItem=function(a){var b=this.options,d=this.padding,g="horizontal"===b.layout,k=a.itemHeight,h=this.itemMarginBottom,t=this.itemMarginTop,l=g?J(b.itemDistance,20):0,m=this.maxLegendWidth;b=b.alignColumns&&this.totalItemWidth>m?this.maxItemWidth:a.itemWidth;g&&this.itemX-d+b>m&&(this.itemX=d,this.lastLineHeight&&(this.itemY+=t+this.lastLineHeight+h),this.lastLineHeight=0);this.lastItemY=
  291. t+this.itemY+h;this.lastLineHeight=Math.max(k,this.lastLineHeight);a._legendItemPos=[this.itemX,this.itemY];g?this.itemX+=b:(this.itemY+=t+k+h,this.lastLineHeight=k);this.offsetWidth=this.widthOption||Math.max((g?this.itemX-d-(a.checkbox?0:l):b)+d,this.offsetWidth)};a.prototype.getAllItems=function(){var a=[];this.chart.series.forEach(function(b){var d=b&&b.options;b&&J(d.showInLegend,B(d.linkedTo)?!1:void 0,!0)&&(a=a.concat(b.legendItems||("point"===d.legendType?b.data:b)))});x(this,"afterGetAllItems",
  292. {allItems:a});return a};a.prototype.getAlignment=function(){var a=this.options;return this.proximate?a.align.charAt(0)+"tv":a.floating?"":a.align.charAt(0)+a.verticalAlign.charAt(0)+a.layout.charAt(0)};a.prototype.adjustMargins=function(a,b){var d=this.chart,g=this.options,k=this.getAlignment();k&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(l,t){l.test(k)&&!B(a[t])&&(d[h[t]]=Math.max(d[h[t]],d.legend[(t+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][t]*g[t%2?"x":
  293. "y"]+J(g.margin,12)+b[t]+(d.titleOffset[t]||0)))})};a.prototype.proximatePositions=function(){var a=this.chart,b=[],d="left"===this.options.align;this.allItems.forEach(function(g){var k;var h=d;if(g.yAxis){g.xAxis.options.reversed&&(h=!h);g.points&&(k=D(h?g.points:g.points.slice(0).reverse(),function(b){return I(b.plotY)}));h=this.itemMarginTop+g.legendItem.getBBox().height+this.itemMarginBottom;var t=g.yAxis.top-a.plotTop;g.visible?(k=k?k.plotY:g.yAxis.height,k+=t-.3*h):k=t+g.yAxis.height;b.push({target:k,
  294. size:h,item:g})}},this);r.distribute(b,a.plotHeight);b.forEach(function(b){b.item._legendItemPos[1]=a.plotTop-a.spacing[0]+b.pos})};a.prototype.render=function(){var a=this.chart,b=a.renderer,d=this.group,g=this.box,h=this.options,l=this.padding;this.itemX=l;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=H(h.width,a.spacingBox.width-l);var t=a.spacingBox.width-2*l-h.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(t/=2);this.maxLegendWidth=this.widthOption||
  295. t;d||(this.group=d=b.g("legend").attr({zIndex:7}).add(),this.contentGroup=b.g().attr({zIndex:1}).add(d),this.scrollGroup=b.g().add(this.contentGroup));this.renderTitle();var A=this.getAllItems();m(A,function(b,c){return(b.options&&b.options.legendIndex||0)-(c.options&&c.options.legendIndex||0)});h.reversed&&A.reverse();this.allItems=A;this.display=t=!!A.length;this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0;A.forEach(this.renderItem,this);A.forEach(this.layoutItem,this);
  296. A=(this.widthOption||this.offsetWidth)+l;var n=this.lastItemY+this.lastLineHeight+this.titleHeight;n=this.handleOverflow(n);n+=l;g||(this.box=g=b.rect().addClass("highcharts-legend-box").attr({r:h.borderRadius}).add(d),g.isNew=!0);a.styledMode||g.attr({stroke:h.borderColor,"stroke-width":h.borderWidth||0,fill:h.backgroundColor||"none"}).shadow(h.shadow);0<A&&0<n&&(g[g.isNew?"attr":"animate"](g.crisp.call({},{x:0,y:0,width:A,height:n},g.strokeWidth())),g.isNew=!1);g[t?"show":"hide"]();a.styledMode&&
  297. "none"===d.getStyle("display")&&(A=n=0);this.legendWidth=A;this.legendHeight=n;t&&this.align();this.proximate||this.positionItems();x(this,"afterRender")};a.prototype.align=function(a){void 0===a&&(a=this.chart.spacingBox);var b=this.chart,d=this.options,g=a.y;/(lth|ct|rth)/.test(this.getAlignment())&&0<b.titleOffset[0]?g+=b.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<b.titleOffset[2]&&(g-=b.titleOffset[2]);g!==a.y&&(a=w(a,{y:g}));this.group.align(w(d,{width:this.legendWidth,height:this.legendHeight,
  298. verticalAlign:this.proximate?"top":d.verticalAlign}),!0,a)};a.prototype.handleOverflow=function(a){var b=this,d=this.chart,g=d.renderer,k=this.options,h=k.y,t=this.padding;h=d.spacingBox.height+("top"===k.verticalAlign?-h:h)-t;var l=k.maxHeight,m,n=this.clipRect,c=k.navigation,e=J(c.animation,!0),q=c.arrowSize||12,u=this.nav,f=this.pages,p,w=this.allItems,r=function(c){"number"===typeof c?n.attr({height:c}):n&&(b.clipRect=n.destroy(),b.contentGroup.clip());b.contentGroup.div&&(b.contentGroup.div.style.clip=
  299. c?"rect("+t+"px,9999px,"+(t+c)+"px,0)":"auto")},H=function(c){b[c]=g.circle(0,0,1.3*q).translate(q/2,q/2).add(u);d.styledMode||b[c].attr("fill","rgba(0,0,0,0.0001)");return b[c]};"horizontal"!==k.layout||"middle"===k.verticalAlign||k.floating||(h/=2);l&&(h=Math.min(h,l));f.length=0;a>h&&!1!==c.enabled?(this.clipHeight=m=Math.max(h-20-this.titleHeight-t,0),this.currentPage=J(this.currentPage,1),this.fullHeight=a,w.forEach(function(c,e){var b=c._legendItemPos[1],a=Math.round(c.legendItem.getBBox().height),
  300. d=f.length;if(!d||b-f[d-1]>m&&(p||b)!==f[d-1])f.push(p||b),d++;c.pageIx=d-1;p&&(w[e-1].pageIx=d-1);e===w.length-1&&b+a-f[d-1]>m&&b!==p&&(f.push(b),c.pageIx=d);b!==p&&(p=b)}),n||(n=b.clipRect=g.clipRect(0,t,9999,0),b.contentGroup.clip(n)),r(m),u||(this.nav=u=g.g().attr({zIndex:1}).add(this.group),this.up=g.symbol("triangle",0,0,q,q).add(u),H("upTracker").on("click",function(){b.scroll(-1,e)}),this.pager=g.text("",15,10).addClass("highcharts-legend-navigation"),d.styledMode||this.pager.css(c.style),
  301. this.pager.add(u),this.down=g.symbol("triangle-down",0,0,q,q).add(u),H("downTracker").on("click",function(){b.scroll(1,e)})),b.scroll(0),a=h):u&&(r(),this.nav=u.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0);return a};a.prototype.scroll=function(a,b){var d=this,g=this.chart,k=this.pages,h=k.length,t=this.currentPage+a;a=this.clipHeight;var l=this.options.navigation,m=this.pager,f=this.padding;t>h&&(t=h);0<t&&("undefined"!==typeof b&&u(b,g),this.nav.attr({translateX:f,translateY:a+
  302. this.padding+7+this.titleHeight,visibility:"visible"}),[this.up,this.upTracker].forEach(function(c){c.attr({"class":1===t?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),m.attr({text:t+"/"+h}),[this.down,this.downTracker].forEach(function(c){c.attr({x:18+this.pager.getBBox().width,"class":t===h?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),g.styledMode||(this.up.attr({fill:1===t?l.inactiveColor:l.activeColor}),this.upTracker.css({cursor:1===t?"default":
  303. "pointer"}),this.down.attr({fill:t===h?l.inactiveColor:l.activeColor}),this.downTracker.css({cursor:t===h?"default":"pointer"})),this.scrollOffset=-k[t-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=t,this.positionCheckboxes(),b=C(J(b,g.renderer.globalAnimation,!0)),n(function(){x(d,"afterScroll",{currentPage:t})},b.duration))};return a}();(/Trident\/7\.0/.test(d.navigator&&d.navigator.userAgent)||l)&&f(g.prototype,"positionItem",function(a,d){var b=
  304. this,g=function(){d._legendItemPos&&a.call(b,d)};g();b.bubbleLegend||setTimeout(g)});r.Legend=g;return r.Legend});M(v,"Core/Chart/Chart.js",[v["Core/Axis/Axis.js"],v["Core/Globals.js"],v["Core/Legend.js"],v["Core/MSPointer.js"],v["Core/Options.js"],v["Core/Pointer.js"],v["Core/Time.js"],v["Core/Utilities.js"]],function(r,f,v,C,z,B,E,D){var x=f.charts,p=f.doc,I=f.seriesTypes,w=f.win,J=z.defaultOptions,H=D.addEvent,u=D.animate,m=D.animObject,n=D.attr,l=D.createElement,h=D.css,d=D.defined,g=D.discardElement,
  305. a=D.erase,k=D.error,b=D.extend,F=D.find,y=D.fireEvent,G=D.getStyle,L=D.isArray,t=D.isFunction,A=D.isNumber,N=D.isObject,K=D.isString,c=D.merge,e=D.numberFormat,q=D.objectEach,O=D.pick,P=D.pInt,Z=D.relativeLength,aa=D.removeEvent,X=D.setAnimation,ba=D.splat,Y=D.syncTimeout,Q=D.uniqueKey,ca=f.marginNames,S=function(){function z(c,e,b){this.yAxis=this.xAxis=this.userOptions=this.titleOffset=this.time=this.symbolCounter=this.spacingBox=this.spacing=this.series=this.renderTo=this.renderer=this.pointer=
  306. this.pointCount=this.plotWidth=this.plotTop=this.plotLeft=this.plotHeight=this.plotBox=this.options=this.numberFormatter=this.margin=this.legend=this.labelCollectors=this.isResizing=this.index=this.container=this.colorCounter=this.clipBox=this.chartWidth=this.chartHeight=this.bounds=this.axisOffset=this.axes=void 0;this.getArgs(c,e,b)}z.prototype.getArgs=function(c,e,b){K(c)||c.nodeName?(this.renderTo=c,this.init(e,b)):this.init(c,e)};z.prototype.init=function(b,a){var d,g=b.series,k=b.plotOptions||
  307. {};y(this,"init",{args:arguments},function(){b.series=null;d=c(J,b);var h=d.chart||{};q(d.plotOptions,function(e,b){N(e)&&(e.tooltip=k[b]&&c(k[b].tooltip)||void 0)});d.tooltip.userOptions=b.chart&&b.chart.forExport&&b.tooltip.userOptions||b.tooltip;d.series=b.series=g;this.userOptions=b;var l=h.events;this.margin=[];this.spacing=[];this.bounds={h:{},v:{}};this.labelCollectors=[];this.callback=a;this.isResizing=0;this.options=d;this.axes=[];this.series=[];this.time=b.time&&Object.keys(b.time).length?
  308. new E(b.time):f.time;this.numberFormatter=h.numberFormatter||e;this.styledMode=h.styledMode;this.hasCartesianSeries=h.showAxes;var m=this;m.index=x.length;x.push(m);f.chartCount++;l&&q(l,function(c,e){t(c)&&H(m,e,c)});m.xAxis=[];m.yAxis=[];m.pointCount=m.colorCounter=m.symbolCounter=0;y(m,"afterInit");m.firstRender()})};z.prototype.initSeries=function(c){var e=this.options.chart;e=c.type||e.type||e.defaultSeriesType;var b=I[e];b||k(17,!0,this,{missingModuleFor:e});e=new b;e.init(this,c);return e};
  309. z.prototype.setSeriesData=function(){this.getSeriesOrderByLinks().forEach(function(c){c.points||c.data||!c.enabledDataSorting||c.setData(c.options.data,!1)})};z.prototype.getSeriesOrderByLinks=function(){return this.series.concat().sort(function(c,e){return c.linkedSeries.length||e.linkedSeries.length?e.linkedSeries.length-c.linkedSeries.length:0})};z.prototype.orderSeries=function(c){var e=this.series;for(c=c||0;c<e.length;c++)e[c]&&(e[c].index=c,e[c].name=e[c].getName())};z.prototype.isInsidePlot=
  310. function(c,e,b){var a=b?e:c;c=b?c:e;a={x:a,y:c,isInsidePlot:0<=a&&a<=this.plotWidth&&0<=c&&c<=this.plotHeight};y(this,"afterIsInsidePlot",a);return a.isInsidePlot};z.prototype.redraw=function(c){y(this,"beforeRedraw");var e=this,a=e.axes,d=e.series,g=e.pointer,q=e.legend,k=e.userOptions.legend,h=e.isDirtyLegend,t=e.hasCartesianSeries,l=e.isDirtyBox,m=e.renderer,n=m.isHidden(),u=[];e.setResponsive&&e.setResponsive(!1);X(e.hasRendered?c:!1,e);n&&e.temporaryDisplay();e.layOutTitles();for(c=d.length;c--;){var f=
  311. d[c];if(f.options.stacking){var p=!0;if(f.isDirty){var F=!0;break}}}if(F)for(c=d.length;c--;)f=d[c],f.options.stacking&&(f.isDirty=!0);d.forEach(function(c){c.isDirty&&("point"===c.options.legendType?(c.updateTotals&&c.updateTotals(),h=!0):k&&(k.labelFormatter||k.labelFormat)&&(h=!0));c.isDirtyData&&y(c,"updatedData")});h&&q&&q.options.enabled&&(q.render(),e.isDirtyLegend=!1);p&&e.getStacks();t&&a.forEach(function(c){e.isResizing&&A(c.min)||(c.updateNames(),c.setScale())});e.getMargins();t&&(a.forEach(function(c){c.isDirty&&
  312. (l=!0)}),a.forEach(function(c){var e=c.min+","+c.max;c.extKey!==e&&(c.extKey=e,u.push(function(){y(c,"afterSetExtremes",b(c.eventArgs,c.getExtremes()));delete c.eventArgs}));(l||p)&&c.redraw()}));l&&e.drawChartBox();y(e,"predraw");d.forEach(function(c){(l||c.isDirty)&&c.visible&&c.redraw();c.isDirtyData=!1});g&&g.reset(!0);m.draw();y(e,"redraw");y(e,"render");n&&e.temporaryDisplay(!0);u.forEach(function(c){c.call()})};z.prototype.get=function(c){function e(e){return e.id===c||e.options&&e.options.id===
  313. c}var b=this.series,a;var d=F(this.axes,e)||F(this.series,e);for(a=0;!d&&a<b.length;a++)d=F(b[a].points||[],e);return d};z.prototype.getAxes=function(){var c=this,e=this.options,b=e.xAxis=ba(e.xAxis||{});e=e.yAxis=ba(e.yAxis||{});y(this,"getAxes");b.forEach(function(c,e){c.index=e;c.isX=!0});e.forEach(function(c,e){c.index=e});b.concat(e).forEach(function(e){new r(c,e)});y(this,"afterGetAxes")};z.prototype.getSelectedPoints=function(){var c=[];this.series.forEach(function(e){c=c.concat(e.getPointsCollection().filter(function(c){return O(c.selectedStaging,
  314. c.selected)}))});return c};z.prototype.getSelectedSeries=function(){return this.series.filter(function(c){return c.selected})};z.prototype.setTitle=function(c,e,b){this.applyDescription("title",c);this.applyDescription("subtitle",e);this.applyDescription("caption",void 0);this.layOutTitles(b)};z.prototype.applyDescription=function(e,b){var a=this,d="title"===e?{color:"#333333",fontSize:this.options.isStock?"16px":"18px"}:{color:"#666666"};d=this.options[e]=c(!this.styledMode&&{style:d},this.options[e],
  315. b);var g=this[e];g&&b&&(this[e]=g=g.destroy());d&&!g&&(g=this.renderer.text(d.text,0,0,d.useHTML).attr({align:d.align,"class":"highcharts-"+e,zIndex:d.zIndex||4}).add(),g.update=function(c){a[{title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"}[e]](c)},this.styledMode||g.css(d.style),this[e]=g)};z.prototype.layOutTitles=function(c){var e=[0,0,0],a=this.renderer,d=this.spacingBox;["title","subtitle","caption"].forEach(function(c){var g=this[c],q=this.options[c],k=q.verticalAlign||"top";c=
  316. "title"===c?-3:"top"===k?e[0]+2:0;if(g){if(!this.styledMode)var h=q.style.fontSize;h=a.fontMetrics(h,g).b;g.css({width:(q.width||d.width+(q.widthAdjust||0))+"px"});var t=Math.round(g.getBBox(q.useHTML).height);g.align(b({y:"bottom"===k?h:c+h,height:t},q),!1,"spacingBox");q.floating||("top"===k?e[0]=Math.ceil(e[0]+t):"bottom"===k&&(e[2]=Math.ceil(e[2]+t)))}},this);e[0]&&"top"===(this.options.title.verticalAlign||"top")&&(e[0]+=this.options.title.margin);e[2]&&"bottom"===this.options.caption.verticalAlign&&
  317. (e[2]+=this.options.caption.margin);var g=!this.titleOffset||this.titleOffset.join(",")!==e.join(",");this.titleOffset=e;y(this,"afterLayOutTitles");!this.isDirtyBox&&g&&(this.isDirtyBox=this.isDirtyLegend=g,this.hasRendered&&O(c,!0)&&this.isDirtyBox&&this.redraw())};z.prototype.getChartSize=function(){var c=this.options.chart,e=c.width;c=c.height;var b=this.renderTo;d(e)||(this.containerWidth=G(b,"width"));d(c)||(this.containerHeight=G(b,"height"));this.chartWidth=Math.max(0,e||this.containerWidth||
  318. 600);this.chartHeight=Math.max(0,Z(c,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))};z.prototype.temporaryDisplay=function(c){var e=this.renderTo;if(c)for(;e&&e.style;)e.hcOrigStyle&&(h(e,e.hcOrigStyle),delete e.hcOrigStyle),e.hcOrigDetached&&(p.body.removeChild(e),e.hcOrigDetached=!1),e=e.parentNode;else for(;e&&e.style;){p.body.contains(e)||e.parentNode||(e.hcOrigDetached=!0,p.body.appendChild(e));if("none"===G(e,"display",!1)||e.hcOricDetached)e.hcOrigStyle={display:e.style.display,
  319. height:e.style.height,overflow:e.style.overflow},c={display:"block",overflow:"hidden"},e!==this.renderTo&&(c.height=0),h(e,c),e.offsetWidth||e.style.setProperty("display","block","important");e=e.parentNode;if(e===p.body)break}};z.prototype.setClassName=function(c){this.container.className="highcharts-container "+(c||"")};z.prototype.getContainer=function(){var c=this.options,e=c.chart;var a=this.renderTo;var d=Q(),g,q;a||(this.renderTo=a=e.renderTo);K(a)&&(this.renderTo=a=p.getElementById(a));a||
  320. k(13,!0,this);var t=P(n(a,"data-highcharts-chart"));A(t)&&x[t]&&x[t].hasRendered&&x[t].destroy();n(a,"data-highcharts-chart",this.index);a.innerHTML="";e.skipClone||a.offsetWidth||this.temporaryDisplay();this.getChartSize();t=this.chartWidth;var m=this.chartHeight;h(a,{overflow:"hidden"});this.styledMode||(g=b({position:"relative",overflow:"hidden",width:t+"px",height:m+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none"},e.style));this.container=
  321. a=l("div",{id:d},g,a);this._cursor=a.style.cursor;this.renderer=new (f[e.renderer]||f.Renderer)(a,t,m,null,e.forExport,c.exporting&&c.exporting.allowHTML,this.styledMode);X(void 0,this);this.setClassName(e.className);if(this.styledMode)for(q in c.defs)this.renderer.definition(c.defs[q]);else this.renderer.setStyle(e.style);this.renderer.chartIndex=this.index;y(this,"afterGetContainer")};z.prototype.getMargins=function(c){var e=this.spacing,b=this.margin,a=this.titleOffset;this.resetMargins();a[0]&&
  322. !d(b[0])&&(this.plotTop=Math.max(this.plotTop,a[0]+e[0]));a[2]&&!d(b[2])&&(this.marginBottom=Math.max(this.marginBottom,a[2]+e[2]));this.legend&&this.legend.display&&this.legend.adjustMargins(b,e);y(this,"getMargins");c||this.getAxisMargins()};z.prototype.getAxisMargins=function(){var c=this,e=c.axisOffset=[0,0,0,0],b=c.colorAxis,a=c.margin,g=function(c){c.forEach(function(c){c.visible&&c.getOffset()})};c.hasCartesianSeries?g(c.axes):b&&b.length&&g(b);ca.forEach(function(b,g){d(a[g])||(c[b]+=e[g])});
  323. c.setChartSize()};z.prototype.reflow=function(c){var e=this,b=e.options.chart,a=e.renderTo,g=d(b.width)&&d(b.height),q=b.width||G(a,"width");b=b.height||G(a,"height");a=c?c.target:w;if(!g&&!e.isPrinting&&q&&b&&(a===w||a===p)){if(q!==e.containerWidth||b!==e.containerHeight)D.clearTimeout(e.reflowTimeout),e.reflowTimeout=Y(function(){e.container&&e.setSize(void 0,void 0,!1)},c?100:0);e.containerWidth=q;e.containerHeight=b}};z.prototype.setReflow=function(c){var e=this;!1===c||this.unbindReflow?!1===
  324. c&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=H(w,"resize",function(c){e.options&&e.reflow(c)}),H(this,"destroy",this.unbindReflow))};z.prototype.setSize=function(c,e,b){var a=this,d=a.renderer;a.isResizing+=1;X(b,a);b=d.globalAnimation;a.oldChartHeight=a.chartHeight;a.oldChartWidth=a.chartWidth;"undefined"!==typeof c&&(a.options.chart.width=c);"undefined"!==typeof e&&(a.options.chart.height=e);a.getChartSize();a.styledMode||(b?u:h)(a.container,{width:a.chartWidth+
  325. "px",height:a.chartHeight+"px"},b);a.setChartSize(!0);d.setSize(a.chartWidth,a.chartHeight,b);a.axes.forEach(function(c){c.isDirty=!0;c.setScale()});a.isDirtyLegend=!0;a.isDirtyBox=!0;a.layOutTitles();a.getMargins();a.redraw(b);a.oldChartHeight=null;y(a,"resize");Y(function(){a&&y(a,"endResize",null,function(){--a.isResizing})},m(b).duration)};z.prototype.setChartSize=function(c){var e=this.inverted,b=this.renderer,a=this.chartWidth,d=this.chartHeight,g=this.options.chart,q=this.spacing,k=this.clipOffset,
  326. h,t,l,m;this.plotLeft=h=Math.round(this.plotLeft);this.plotTop=t=Math.round(this.plotTop);this.plotWidth=l=Math.max(0,Math.round(a-h-this.marginRight));this.plotHeight=m=Math.max(0,Math.round(d-t-this.marginBottom));this.plotSizeX=e?m:l;this.plotSizeY=e?l:m;this.plotBorderWidth=g.plotBorderWidth||0;this.spacingBox=b.spacingBox={x:q[3],y:q[0],width:a-q[3]-q[1],height:d-q[0]-q[2]};this.plotBox=b.plotBox={x:h,y:t,width:l,height:m};a=2*Math.floor(this.plotBorderWidth/2);e=Math.ceil(Math.max(a,k[3])/2);
  327. b=Math.ceil(Math.max(a,k[0])/2);this.clipBox={x:e,y:b,width:Math.floor(this.plotSizeX-Math.max(a,k[1])/2-e),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(a,k[2])/2-b))};c||this.axes.forEach(function(c){c.setAxisSize();c.setAxisTranslation()});y(this,"afterSetChartSize",{skipAxes:c})};z.prototype.resetMargins=function(){y(this,"resetMargins");var c=this,e=c.options.chart;["margin","spacing"].forEach(function(b){var a=e[b],d=N(a)?a:[a,a,a,a];["Top","Right","Bottom","Left"].forEach(function(a,
  328. g){c[b][g]=O(e[b+a],d[g])})});ca.forEach(function(e,b){c[e]=O(c.margin[b],c.spacing[b])});c.axisOffset=[0,0,0,0];c.clipOffset=[0,0,0,0]};z.prototype.drawChartBox=function(){var c=this.options.chart,e=this.renderer,b=this.chartWidth,a=this.chartHeight,d=this.chartBackground,g=this.plotBackground,q=this.plotBorder,k=this.styledMode,h=this.plotBGImage,t=c.backgroundColor,l=c.plotBackgroundColor,m=c.plotBackgroundImage,n,A=this.plotLeft,u=this.plotTop,f=this.plotWidth,p=this.plotHeight,F=this.plotBox,
  329. G=this.clipRect,K=this.clipBox,w="animate";d||(this.chartBackground=d=e.rect().addClass("highcharts-background").add(),w="attr");if(k)var N=n=d.strokeWidth();else{N=c.borderWidth||0;n=N+(c.shadow?8:0);t={fill:t||"none"};if(N||d["stroke-width"])t.stroke=c.borderColor,t["stroke-width"]=N;d.attr(t).shadow(c.shadow)}d[w]({x:n/2,y:n/2,width:b-n-N%2,height:a-n-N%2,r:c.borderRadius});w="animate";g||(w="attr",this.plotBackground=g=e.rect().addClass("highcharts-plot-background").add());g[w](F);k||(g.attr({fill:l||
  330. "none"}).shadow(c.plotShadow),m&&(h?(m!==h.attr("href")&&h.attr("href",m),h.animate(F)):this.plotBGImage=e.image(m,A,u,f,p).add()));G?G.animate({width:K.width,height:K.height}):this.clipRect=e.clipRect(K);w="animate";q||(w="attr",this.plotBorder=q=e.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add());k||q.attr({stroke:c.plotBorderColor,"stroke-width":c.plotBorderWidth||0,fill:"none"});q[w](q.crisp({x:A,y:u,width:f,height:p},-q.strokeWidth()));this.isDirtyBox=!1;y(this,"afterDrawChartBox")};
  331. z.prototype.propFromSeries=function(){var c=this,e=c.options.chart,b,a=c.options.series,d,g;["inverted","angular","polar"].forEach(function(q){b=I[e.type||e.defaultSeriesType];g=e[q]||b&&b.prototype[q];for(d=a&&a.length;!g&&d--;)(b=I[a[d].type])&&b.prototype[q]&&(g=!0);c[q]=g})};z.prototype.linkSeries=function(){var c=this,e=c.series;e.forEach(function(c){c.linkedSeries.length=0});e.forEach(function(e){var b=e.options.linkedTo;K(b)&&(b=":previous"===b?c.series[e.index-1]:c.get(b))&&b.linkedParent!==
  332. e&&(b.linkedSeries.push(e),e.linkedParent=b,b.enabledDataSorting&&e.setDataSortingOptions(),e.visible=O(e.options.visible,b.options.visible,e.visible))});y(this,"afterLinkSeries")};z.prototype.renderSeries=function(){this.series.forEach(function(c){c.translate();c.render()})};z.prototype.renderLabels=function(){var c=this,e=c.options.labels;e.items&&e.items.forEach(function(a){var d=b(e.style,a.style),g=P(d.left)+c.plotLeft,q=P(d.top)+c.plotTop+12;delete d.left;delete d.top;c.renderer.text(a.html,
  333. g,q).attr({zIndex:2}).css(d).add()})};z.prototype.render=function(){var c=this.axes,e=this.colorAxis,b=this.renderer,a=this.options,d=0,g=function(c){c.forEach(function(c){c.visible&&c.render()})};this.setTitle();this.legend=new v(this,a.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();a=this.plotWidth;c.some(function(c){if(c.horiz&&c.visible&&c.options.labels.enabled&&c.series.length)return d=21,!0});var q=this.plotHeight=Math.max(this.plotHeight-d,0);c.forEach(function(c){c.setScale()});
  334. this.getAxisMargins();var k=1.1<a/this.plotWidth;var h=1.05<q/this.plotHeight;if(k||h)c.forEach(function(c){(c.horiz&&k||!c.horiz&&h)&&c.setTickInterval(!0)}),this.getMargins();this.drawChartBox();this.hasCartesianSeries?g(c):e&&e.length&&g(e);this.seriesGroup||(this.seriesGroup=b.g("series-group").attr({zIndex:3}).add());this.renderSeries();this.renderLabels();this.addCredits();this.setResponsive&&this.setResponsive();this.updateContainerScaling();this.hasRendered=!0};z.prototype.addCredits=function(e){var b=
  335. this,a=c(!0,this.options.credits,e);a.enabled&&!this.credits&&(this.credits=this.renderer.text(a.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){a.href&&(w.location.href=a.href)}).attr({align:a.position.align,zIndex:8}),b.styledMode||this.credits.css(a.style),this.credits.add().align(a.position),this.credits.update=function(c){b.credits=b.credits.destroy();b.addCredits(c)})};z.prototype.updateContainerScaling=function(){var c=this.container;if(2<c.offsetWidth&&
  336. 2<c.offsetHeight&&c.getBoundingClientRect){var e=c.getBoundingClientRect(),b=e.width/c.offsetWidth;c=e.height/c.offsetHeight;1!==b||1!==c?this.containerScaling={scaleX:b,scaleY:c}:delete this.containerScaling}};z.prototype.destroy=function(){var c=this,e=c.axes,b=c.series,d=c.container,k,h=d&&d.parentNode;y(c,"destroy");c.renderer.forExport?a(x,c):x[c.index]=void 0;f.chartCount--;c.renderTo.removeAttribute("data-highcharts-chart");aa(c);for(k=e.length;k--;)e[k]=e[k].destroy();this.scroller&&this.scroller.destroy&&
  337. this.scroller.destroy();for(k=b.length;k--;)b[k]=b[k].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(e){var b=c[e];b&&b.destroy&&(c[e]=b.destroy())});d&&(d.innerHTML="",aa(d),h&&g(d));q(c,function(e,b){delete c[b]})};z.prototype.firstRender=function(){var c=this,e=c.options;if(!c.isReadyToRender||c.isReadyToRender()){c.getContainer();c.resetMargins();
  338. c.setChartSize();c.propFromSeries();c.getAxes();(L(e.series)?e.series:[]).forEach(function(e){c.initSeries(e)});c.linkSeries();c.setSeriesData();y(c,"beforeRender");B&&(c.pointer=f.hasTouch||!w.PointerEvent&&!w.MSPointerEvent?new B(c,e):new C(c,e));c.render();if(!c.renderer.imgCount&&!c.hasLoaded)c.onload();c.temporaryDisplay(!0)}};z.prototype.onload=function(){this.callbacks.concat([this.callback]).forEach(function(c){c&&"undefined"!==typeof this.index&&c.apply(this,[this])},this);y(this,"load");
  339. y(this,"render");d(this.index)&&this.setReflow(this.options.chart.reflow);this.hasLoaded=!0};return z}();S.prototype.callbacks=[];f.chart=function(c,e,b){return new S(c,e,b)};return f.Chart=S});M(v,"Extensions/ScrollablePlotArea.js",[v["Core/Chart/Chart.js"],v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f,v){var C=v.addEvent,z=v.createElement,B=v.pick,E=v.stop;"";C(r,"afterSetChartSize",function(r){var x=this.options.chart.scrollablePlotArea,p=x&&x.minWidth;x=x&&x.minHeight;if(!this.renderer.forExport){if(p){if(this.scrollablePixelsX=
  340. p=Math.max(0,p-this.chartWidth)){this.plotWidth+=p;this.inverted?(this.clipBox.height+=p,this.plotBox.height+=p):(this.clipBox.width+=p,this.plotBox.width+=p);var I={1:{name:"right",value:p}}}}else x&&(this.scrollablePixelsY=p=Math.max(0,x-this.chartHeight))&&(this.plotHeight+=p,this.inverted?(this.clipBox.width+=p,this.plotBox.width+=p):(this.clipBox.height+=p,this.plotBox.height+=p),I={2:{name:"bottom",value:p}});I&&!r.skipAxes&&this.axes.forEach(function(p){I[p.side]?p.getPlotLinePath=function(){var w=
  341. I[p.side].name,r=this[w];this[w]=r-I[p.side].value;var u=f.Axis.prototype.getPlotLinePath.apply(this,arguments);this[w]=r;return u}:(p.setAxisSize(),p.setAxisTranslation())})}});C(r,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()});r.prototype.setUpScrolling=function(){var f=this,r={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(r.overflowX=
  342. "auto");this.scrollablePixelsY&&(r.overflowY="auto");this.scrollingParent=z("div",{className:"highcharts-scrolling-parent"},{position:"relative"},this.renderTo);this.scrollingContainer=z("div",{className:"highcharts-scrolling"},r,this.scrollingParent);C(this.scrollingContainer,"scroll",function(){f.pointer&&delete f.pointer.chartPosition});this.innerContainer=z("div",{className:"highcharts-inner-container"},null,this.scrollingContainer);this.innerContainer.appendChild(this.container);this.setUpScrolling=
  343. null};r.prototype.moveFixedElements=function(){var f=this.container,r=this.fixedRenderer,p=".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(" "),I;this.scrollablePixelsX&&!this.inverted?I=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?I=".highcharts-xaxis":
  344. this.scrollablePixelsY&&!this.inverted?I=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(I=".highcharts-yaxis");p.push(I,I+"-labels");p.forEach(function(p){[].forEach.call(f.querySelectorAll(p),function(f){(f.namespaceURI===r.SVG_NS?r.box:r.box.parentNode).appendChild(f);f.style.pointerEvents="auto"})})};r.prototype.applyFixed=function(){var r,x,p=!this.fixedDiv,I=this.options.chart.scrollablePlotArea;p?(this.fixedDiv=z("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",
  345. pointerEvents:"none",zIndex:2,top:0},null,!0),null===(r=this.scrollingContainer)||void 0===r?void 0:r.parentNode.insertBefore(this.fixedDiv,this.scrollingContainer),this.renderTo.style.overflow="visible",this.fixedRenderer=r=new f.Renderer(this.fixedDiv,this.chartWidth,this.chartHeight,null===(x=this.options.chart)||void 0===x?void 0:x.style),this.scrollableMask=r.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":B(I.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),
  346. this.moveFixedElements(),C(this,"afterShowResetZoom",this.moveFixedElements),C(this,"afterLayOutTitles",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight);x=this.chartWidth+(this.scrollablePixelsX||0);r=this.chartHeight+(this.scrollablePixelsY||0);E(this.container);this.container.style.width=x+"px";this.container.style.height=r+"px";this.renderer.boxWrapper.attr({width:x,height:r,viewBox:[0,0,x,r].join(" ")});this.chartBackground.attr({width:x,height:r});this.scrollingContainer.style.height=
  347. this.chartHeight+"px";p&&(I.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*I.scrollPositionX),I.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*I.scrollPositionY));r=this.axisOffset;p=this.plotTop-r[0]-1;I=this.plotLeft-r[3]-1;x=this.plotTop+this.plotHeight+r[2]+1;r=this.plotLeft+this.plotWidth+r[1]+1;var w=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),v=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);p=this.scrollablePixelsX?
  348. [["M",0,p],["L",this.plotLeft-1,p],["L",this.plotLeft-1,x],["L",0,x],["Z"],["M",w,p],["L",this.chartWidth,p],["L",this.chartWidth,x],["L",w,x],["Z"]]:this.scrollablePixelsY?[["M",I,0],["L",I,this.plotTop-1],["L",r,this.plotTop-1],["L",r,0],["Z"],["M",I,v],["L",I,this.chartHeight],["L",r,this.chartHeight],["L",r,v],["Z"]]:[["M",0,0]];"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:p})}});M(v,"Core/Axis/StackingAxis.js",[v["Core/Utilities.js"]],function(r){var f=r.addEvent,v=r.destroyObjectProperties,
  349. C=r.fireEvent,z=r.getDeferredAnimation,B=r.objectEach,E=r.pick,D=function(){function f(f){this.oldStacks={};this.stacks={};this.stacksTouched=0;this.axis=f}f.prototype.buildStacks=function(){var f=this.axis,r=f.series,w=E(f.options.reversedStacks,!0),x=r.length,H;if(!f.isXAxis){this.usePercentage=!1;for(H=x;H--;){var u=r[w?H:x-H-1];u.setStackedPoints();u.setGroupedPoints()}for(H=0;H<x;H++)r[H].modifyStacks();C(f,"afterBuildStacks")}};f.prototype.cleanStacks=function(){if(!this.axis.isXAxis){if(this.oldStacks)var f=
  350. this.stacks=this.oldStacks;B(f,function(f){B(f,function(f){f.cumulative=f.total})})}};f.prototype.resetStacks=function(){var f=this,r=f.stacks;f.axis.isXAxis||B(r,function(p){B(p,function(w,r){w.touched<f.stacksTouched?(w.destroy(),delete p[r]):(w.total=null,w.cumulative=null)})})};f.prototype.renderStackTotals=function(){var f=this.axis,r=f.chart,w=r.renderer,x=this.stacks;f=z(r,f.options.stackLabels.animation);var H=this.stackTotalGroup=this.stackTotalGroup||w.g("stack-labels").attr({visibility:"visible",
  351. zIndex:6,opacity:0}).add();H.translate(r.plotLeft,r.plotTop);B(x,function(u){B(u,function(m){m.render(H)})});H.animate({opacity:1},f)};return f}();return function(){function r(){}r.compose=function(p){f(p,"init",r.onInit);f(p,"destroy",r.onDestroy)};r.onDestroy=function(){var f=this.stacking;if(f){var r=f.stacks;B(r,function(f,p){v(f);r[p]=null});f&&f.stackTotalGroup&&f.stackTotalGroup.destroy()}};r.onInit=function(){this.stacking||(this.stacking=new D(this))};return r}()});M(v,"Mixins/LegendSymbol.js",
  352. [v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.merge,C=f.pick;return r.LegendSymbolMixin={drawRectangle:function(f,r){var v=f.symbolHeight,z=f.options.squareSymbol;r.legendSymbol=this.chart.renderer.rect(z?(f.symbolWidth-v)/2:0,f.baseline-v+1,z?v:f.symbolWidth,v,C(f.options.symbolRadius,v/2)).addClass("highcharts-point").attr({zIndex:3}).add(r.legendGroup)},drawLineMarker:function(f){var r=this.options,E=r.marker,z=f.symbolWidth,x=f.symbolHeight,p=x/2,I=this.chart.renderer,w=
  353. this.legendGroup;f=f.baseline-Math.round(.3*f.fontMetrics.b);var J={};this.chart.styledMode||(J={"stroke-width":r.lineWidth||0},r.dashStyle&&(J.dashstyle=r.dashStyle));this.legendLine=I.path([["M",0,f],["L",z,f]]).addClass("highcharts-graph").attr(J).add(w);E&&!1!==E.enabled&&z&&(r=Math.min(C(E.radius,p),p),0===this.symbol.indexOf("url")&&(E=v(E,{width:x,height:x}),r=0),this.legendSymbol=E=I.symbol(this.symbol,z/2-r,f-r,2*r,2*r,E).addClass("highcharts-point").add(w),E.isMarker=!0)}}});M(v,"Core/Series/Point.js",
  354. [v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.animObject,C=f.defined,z=f.erase,B=f.extend,E=f.fireEvent,D=f.format,x=f.getNestedProperty,p=f.isArray,I=f.isNumber,w=f.isObject,J=f.syncTimeout,H=f.pick,u=f.removeEvent,m=f.uniqueKey;"";f=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}n.prototype.animateBeforeDestroy=
  355. function(){var l=this,h={x:l.startXPos,opacity:0},d,g=l.getGraphicalProps();g.singular.forEach(function(a){d="dataLabel"===a;l[a]=l[a].animate(d?{x:l[a].startXPos,y:l[a].startYPos,opacity:0}:h)});g.plural.forEach(function(a){l[a].forEach(function(a){a.element&&a.animate(B({x:l.startXPos},a.startYPos?{x:a.startXPos,y:a.startYPos}:{}))})})};n.prototype.applyOptions=function(l,h){var d=this.series,g=d.options.pointValKey||d.pointValKey;l=n.prototype.optionsToObject.call(this,l);B(this,l);this.options=
  356. this.options?B(this.options,l):l;l.group&&delete this.group;l.dataLabels&&delete this.dataLabels;g&&(this.y=n.prototype.getNestedProperty.call(this,g));this.formatPrefix=(this.isNull=H(this.isValid&&!this.isValid(),null===this.x||!I(this.y)))?"null":"point";this.selected&&(this.state="select");"name"in this&&"undefined"===typeof h&&d.xAxis&&d.xAxis.hasNames&&(this.x=d.xAxis.nameToX(this));"undefined"===typeof this.x&&d&&(this.x="undefined"===typeof h?d.autoIncrement(this):h);return this};n.prototype.destroy=
  357. function(){function l(){if(h.graphic||h.dataLabel||h.dataLabels)u(h),h.destroyElements();for(b in h)h[b]=null}var h=this,d=h.series,g=d.chart;d=d.options.dataSorting;var a=g.hoverPoints,k=v(h.series.chart.renderer.globalAnimation),b;h.legendItem&&g.legend.destroyItem(h);a&&(h.setState(),z(a,h),a.length||(g.hoverPoints=null));if(h===g.hoverPoint)h.onMouseOut();d&&d.enabled?(this.animateBeforeDestroy(),J(l,k.duration)):l();g.pointCount--};n.prototype.destroyElements=function(l){var h=this;l=h.getGraphicalProps(l);
  358. l.singular.forEach(function(d){h[d]=h[d].destroy()});l.plural.forEach(function(d){h[d].forEach(function(d){d.element&&d.destroy()});delete h[d]})};n.prototype.firePointEvent=function(l,h,d){var g=this,a=this.series.options;(a.point.events[l]||g.options&&g.options.events&&g.options.events[l])&&g.importEvents();"click"===l&&a.allowPointSelect&&(d=function(a){g.select&&g.select(null,a.ctrlKey||a.metaKey||a.shiftKey)});E(g,l,h,d)};n.prototype.getClassName=function(){return"highcharts-point"+(this.selected?
  359. " 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(l){var h=this,d=[],g,a={singular:[],plural:[]};l=l||{graphic:1,dataLabel:1};l.graphic&&d.push("graphic","shadowGroup");
  360. l.dataLabel&&d.push("dataLabel","dataLabelUpper","connector");for(g=d.length;g--;){var k=d[g];h[k]&&a.singular.push(k)}["dataLabel","connector"].forEach(function(b){var d=b+"s";l[b]&&h[d]&&a.plural.push(d)});return a};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(l){if(l)return 0===
  361. l.indexOf("custom.")?x(l,this.options):this[l]};n.prototype.getZone=function(){var l=this.series,h=l.zones;l=l.zoneAxis||"y";var d=0,g;for(g=h[d];this[l]>=g.value;)g=h[++d];this.nonZonedColor||(this.nonZonedColor=this.color);this.color=g&&g.color&&!this.options.color?g.color:this.nonZonedColor;return g};n.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType};n.prototype.init=function(l,h,d){this.series=l;this.applyOptions(h,
  362. d);this.id=C(this.id)?this.id:m();this.resolveColor();l.chart.pointCount++;E(this,"afterInit");return this};n.prototype.optionsToObject=function(l){var h={},d=this.series,g=d.options.keys,a=g||d.pointArrayMap||["y"],k=a.length,b=0,m=0;if(I(l)||null===l)h[a[0]]=l;else if(p(l))for(!g&&l.length>k&&(d=typeof l[0],"string"===d?h.name=l[0]:"number"===d&&(h.x=l[0]),b++);m<k;)g&&"undefined"===typeof l[b]||(0<a[m].indexOf(".")?n.prototype.setNestedProperty(h,l[b],a[m]):h[a[m]]=l[b]),b++,m++;else"object"===
  363. typeof l&&(h=l,l.dataLabels&&(d._hasPointLabels=!0),l.marker&&(d._hasPointMarkers=!0));return h};n.prototype.resolveColor=function(){var l=this.series;var h=l.chart.options.chart.colorCount;var d=l.chart.styledMode;delete this.nonZonedColor;d||this.options.color||(this.color=l.color);l.options.colorByPoint?(d||(h=l.options.colors||l.chart.options.colors,this.color=this.color||h[l.colorCounter],h=h.length),d=l.colorCounter,l.colorCounter++,l.colorCounter===h&&(l.colorCounter=0)):d=l.colorIndex;this.colorIndex=
  364. H(this.colorIndex,d)};n.prototype.setNestedProperty=function(l,h,d){d.split(".").reduce(function(d,a,k,b){d[a]=b.length-1===k?h:w(d[a],!0)?d[a]:{};return d[a]},l);return l};n.prototype.tooltipFormatter=function(l){var h=this.series,d=h.tooltipOptions,g=H(d.valueDecimals,""),a=d.valuePrefix||"",k=d.valueSuffix||"";h.chart.styledMode&&(l=h.chart.tooltip.styledModeFormat(l));(h.pointArrayMap||["y"]).forEach(function(b){b="{point."+b;if(a||k)l=l.replace(RegExp(b+"}","g"),a+b+"}"+k);l=l.replace(RegExp(b+
  365. "}","g"),b+":,."+g+"f}")});return D(l,{point:this,series:this.series},h.chart)};return n}();return r.Point=f});M(v,"Core/Series/Series.js",[v["Core/Globals.js"],v["Mixins/LegendSymbol.js"],v["Core/Options.js"],v["Core/Series/Point.js"],v["Core/Renderer/SVG/SVGElement.js"],v["Core/Utilities.js"]],function(r,f,v,C,z,B){var E=v.defaultOptions,D=B.addEvent,x=B.animObject,p=B.arrayMax,I=B.arrayMin,w=B.clamp,J=B.correctFloat,H=B.defined,u=B.erase,m=B.error,n=B.extend,l=B.find,h=B.fireEvent,d=B.getNestedProperty,
  366. g=B.isArray,a=B.isFunction,k=B.isNumber,b=B.isString,F=B.merge,y=B.objectEach,G=B.pick,L=B.removeEvent;v=B.seriesType;var t=B.splat,A=B.syncTimeout;"";var N=r.seriesTypes,K=r.win;r.Series=v("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",
  367. lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",defer:!0,formatter:function(){var c=this.series.chart.numberFormatter;return"number"!==typeof this.y?"":c(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}},
  368. inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1E3,findNearestPointBy:"x"},{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,isCartesian:!0,parallelArrays:["x","y"],pointClass:C,requireSorting:!0,sorted:!0,init:function(c,e){h(this,"init",{options:e});var b=this,d=c.series,g;this.eventOptions=this.eventOptions||{};this.eventsToUnbind=[];b.chart=c;b.options=e=b.setOptions(e);b.linkedSeries=[];b.bindAxes();n(b,{name:e.name,state:"",
  369. visible:!1!==e.visible,selected:!0===e.selected});var k=e.events;y(k,function(c,e){a(c)&&b.eventOptions[e]!==c&&(a(b.eventOptions[e])&&L(b,e,b.eventOptions[e]),b.eventOptions[e]=c,D(b,e,c))});if(k&&k.click||e.point&&e.point.events&&e.point.events.click||e.allowPointSelect)c.runTrackerClick=!0;b.getColor();b.getSymbol();b.parallelArrays.forEach(function(c){b[c+"Data"]||(b[c+"Data"]=[])});b.isCartesian&&(c.hasCartesianSeries=!0);d.length&&(g=d[d.length-1]);b._i=G(g&&g._i,-1)+1;b.opacity=b.options.opacity;
  370. c.orderSeries(this.insert(d));e.dataSorting&&e.dataSorting.enabled?b.setDataSortingOptions():b.points||b.data||b.setData(e.data,!1);h(this,"afterInit")},is:function(c){return N[c]&&this instanceof N[c]},insert:function(c){var e=this.options.index,b;if(k(e)){for(b=c.length;b--;)if(e>=G(c[b].options.index,c[b]._i)){c.splice(b+1,0,this);break}-1===b&&c.unshift(this);b+=1}else c.push(this);return G(b,c.length-1)},bindAxes:function(){var c=this,e=c.options,b=c.chart,a;h(this,"bindAxes",null,function(){(c.axisTypes||
  371. []).forEach(function(d){b[d].forEach(function(b){a=b.options;if(e[d]===a.index||"undefined"!==typeof e[d]&&e[d]===a.id||"undefined"===typeof e[d]&&0===a.index)c.insert(b.series),c[d]=b,b.isDirty=!0});c[d]||c.optionalAxis===d||m(18,!0,b)})});h(this,"afterBindAxes")},updateParallelArrays:function(c,e){var b=c.series,a=arguments,d=k(e)?function(a){var d="y"===a&&b.toYData?b.toYData(c):c[a];b[a+"Data"][e]=d}:function(c){Array.prototype[e].apply(b[c+"Data"],Array.prototype.slice.call(a,2))};b.parallelArrays.forEach(d)},
  372. hasData:function(){return this.visible&&"undefined"!==typeof this.dataMax&&"undefined"!==typeof this.dataMin||this.visible&&this.yData&&0<this.yData.length},autoIncrement:function(){var c=this.options,e=this.xIncrement,b,a=c.pointIntervalUnit,d=this.chart.time;e=G(e,c.pointStart,0);this.pointInterval=b=G(this.pointInterval,c.pointInterval,1);a&&(c=new d.Date(e),"day"===a?d.set("Date",c,d.get("Date",c)+b):"month"===a?d.set("Month",c,d.get("Month",c)+b):"year"===a&&d.set("FullYear",c,d.get("FullYear",
  373. c)+b),b=c.getTime()-e);this.xIncrement=e+b;return e},setDataSortingOptions:function(){var c=this.options;n(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1});H(c.pointRange)||(c.pointRange=1)},setOptions:function(c){var e=this.chart,b=e.options,a=b.plotOptions,d=e.userOptions||{};c=F(c);e=e.styledMode;var g={plotOptions:a,userOptions:c};h(this,"setOptions",g);var k=g.plotOptions[this.type],t=d.plotOptions||{};this.userOptions=g.userOptions;d=F(k,a.series,d.plotOptions&&d.plotOptions[this.type],
  374. c);this.tooltipOptions=F(E.tooltip,E.plotOptions.series&&E.plotOptions.series.tooltip,E.plotOptions[this.type].tooltip,b.tooltip.userOptions,a.series&&a.series.tooltip,a[this.type].tooltip,c.tooltip);this.stickyTracking=G(c.stickyTracking,t[this.type]&&t[this.type].stickyTracking,t.series&&t.series.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:d.stickyTracking);null===k.marker&&delete d.marker;this.zoneAxis=d.zoneAxis;b=this.zones=(d.zones||[]).slice();!d.negativeColor&&!d.negativeFillColor||
  375. d.zones||(a={value:d[this.zoneAxis+"Threshold"]||d.threshold||0,className:"highcharts-negative"},e||(a.color=d.negativeColor,a.fillColor=d.negativeFillColor),b.push(a));b.length&&H(b[b.length-1].value)&&b.push(e?{}:{color:this.color,fillColor:this.fillColor});h(this,"afterSetOptions",{options:d});return d},getName:function(){return G(this.options.name,"Series "+(this.index+1))},getCyclic:function(c,e,b){var a=this.chart,d=this.userOptions,g=c+"Index",k=c+"Counter",q=b?b.length:G(a.options.chart[c+
  376. "Count"],a[c+"Count"]);if(!e){var h=G(d[g],d["_"+g]);H(h)||(a.series.length||(a[k]=0),d["_"+g]=h=a[k]%q,a[k]+=1);b&&(e=b[h])}"undefined"!==typeof h&&(this[g]=h);this[c]=e},getColor:function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.options.color=null:this.getCyclic("color",this.options.color||E.plotOptions[this.type].color,this.chart.options.colors)},getPointsCollection:function(){return(this.hasGroupedData?this.points:this.data)||[]},getSymbol:function(){this.getCyclic("symbol",
  377. this.options.marker.symbol,this.chart.options.symbols)},findPointIndex:function(c,e){var b=c.id,a=c.x,d=this.points,g,h=this.options.dataSorting;if(b)var t=this.chart.get(b);else if(this.linkedParent||this.enabledDataSorting){var m=h&&h.matchByName?"name":"index";t=l(d,function(e){return!e.touched&&e[m]===c[m]});if(!t)return}if(t){var n=t&&t.index;"undefined"!==typeof n&&(g=!0)}"undefined"===typeof n&&k(a)&&(n=this.xData.indexOf(a,e));-1!==n&&"undefined"!==typeof n&&this.cropped&&(n=n>=this.cropStart?
  378. n-this.cropStart:n);!g&&d[n]&&d[n].touched&&(n=void 0);return n},drawLegendSymbol:f.drawLineMarker,updateData:function(c,e){var b=this.options,a=b.dataSorting,d=this.points,g=[],h,t,l,m=this.requireSorting,n=c.length===d.length,A=!0;this.xIncrement=null;c.forEach(function(c,e){var q=H(c)&&this.pointClass.prototype.optionsToObject.call({series:this},c)||{};var t=q.x;if(q.id||k(t)){if(t=this.findPointIndex(q,l),-1===t||"undefined"===typeof t?g.push(c):d[t]&&c!==b.data[t]?(d[t].update(c,!1,null,!1),
  379. d[t].touched=!0,m&&(l=t+1)):d[t]&&(d[t].touched=!0),!n||e!==t||a&&a.enabled||this.hasDerivedData)h=!0}else g.push(c)},this);if(h)for(c=d.length;c--;)(t=d[c])&&!t.touched&&t.remove&&t.remove(!1,e);else!n||a&&a.enabled?A=!1:(c.forEach(function(c,e){d[e].update&&c!==d[e].y&&d[e].update(c,!1,null,!1)}),g.length=0);d.forEach(function(c){c&&(c.touched=!1)});if(!A)return!1;g.forEach(function(c){this.addPoint(c,!1,null,null,!1)},this);null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=
  380. p(this.xData),this.autoIncrement());return!0},setData:function(c,e,a,d){var q=this,h=q.points,t=h&&h.length||0,l,n=q.options,A=q.chart,u=n.dataSorting,f=null,y=q.xAxis;f=n.turboThreshold;var p=this.xData,F=this.yData,K=(l=q.pointArrayMap)&&l.length,w=n.keys,N=0,r=1,L;c=c||[];l=c.length;e=G(e,!0);u&&u.enabled&&(c=this.sortData(c));!1!==d&&l&&t&&!q.cropped&&!q.hasGroupedData&&q.visible&&!q.isSeriesBoosting&&(L=this.updateData(c,a));if(!L){q.xIncrement=null;q.colorCounter=0;this.parallelArrays.forEach(function(c){q[c+
  381. "Data"].length=0});if(f&&l>f)if(f=q.getFirstValidPoint(c),k(f))for(a=0;a<l;a++)p[a]=this.autoIncrement(),F[a]=c[a];else if(g(f))if(K)for(a=0;a<l;a++)d=c[a],p[a]=d[0],F[a]=d.slice(1,K+1);else for(w&&(N=w.indexOf("x"),r=w.indexOf("y"),N=0<=N?N:0,r=0<=r?r:1),a=0;a<l;a++)d=c[a],p[a]=d[N],F[a]=d[r];else m(12,!1,A);else for(a=0;a<l;a++)"undefined"!==typeof c[a]&&(d={series:q},q.pointClass.prototype.applyOptions.apply(d,[c[a]]),q.updateParallelArrays(d,a));F&&b(F[0])&&m(14,!0,A);q.data=[];q.options.data=
  382. q.userOptions.data=c;for(a=t;a--;)h[a]&&h[a].destroy&&h[a].destroy();y&&(y.minRange=y.userMinRange);q.isDirty=A.isDirtyBox=!0;q.isDirtyData=!!h;a=!1}"point"===n.legendType&&(this.processData(),this.generatePoints());e&&A.redraw(a)},sortData:function(c){var e=this,b=e.options.dataSorting.sortKey||"y",a=function(c,e){return H(e)&&c.pointClass.prototype.optionsToObject.call({series:c},e)||{}};c.forEach(function(b,d){c[d]=a(e,b);c[d].index=d},this);c.concat().sort(function(c,e){c=d(b,c);e=d(b,e);return e<
  383. c?-1:e>c?1:0}).forEach(function(c,e){c.x=e},this);e.linkedSeries&&e.linkedSeries.forEach(function(e){var b=e.options,d=b.data;b.dataSorting&&b.dataSorting.enabled||!d||(d.forEach(function(b,g){d[g]=a(e,b);c[g]&&(d[g].x=c[g].x,d[g].index=g)}),e.setData(d,!1))});return c},getProcessedData:function(c){var e=this.xData,b=this.yData,a=e.length;var d=0;var g=this.xAxis,k=this.options;var h=k.cropThreshold;var t=c||this.getExtremesFromAll||k.getExtremesFromAll,l=this.isCartesian;c=g&&g.val2lin;k=!(!g||!g.logarithmic);
  384. var n=this.requireSorting;if(g){g=g.getExtremes();var A=g.min;var u=g.max}if(l&&this.sorted&&!t&&(!h||a>h||this.forceCrop))if(e[a-1]<A||e[0]>u)e=[],b=[];else if(this.yData&&(e[0]<A||e[a-1]>u)){d=this.cropData(this.xData,this.yData,A,u);e=d.xData;b=d.yData;d=d.start;var f=!0}for(h=e.length||1;--h;)if(a=k?c(e[h])-c(e[h-1]):e[h]-e[h-1],0<a&&("undefined"===typeof y||a<y))var y=a;else 0>a&&n&&(m(15,!1,this.chart),n=!1);return{xData:e,yData:b,cropped:f,cropStart:d,closestPointRange:y}},processData:function(c){var e=
  385. this.xAxis;if(this.isCartesian&&!this.isDirty&&!e.isDirty&&!this.yAxis.isDirty&&!c)return!1;c=this.getProcessedData();this.cropped=c.cropped;this.cropStart=c.cropStart;this.processedXData=c.xData;this.processedYData=c.yData;this.closestPointRange=this.basePointRange=c.closestPointRange},cropData:function(c,e,b,a,d){var g=c.length,k=0,q=g,h;d=G(d,this.cropShoulder);for(h=0;h<g;h++)if(c[h]>=b){k=Math.max(0,h-d);break}for(b=h;b<g;b++)if(c[b]>a){q=b+d;break}return{xData:c.slice(k,q),yData:e.slice(k,q),
  386. start:k,end:q}},generatePoints:function(){var c=this.options,e=c.data,b=this.data,a,d=this.processedXData,g=this.processedYData,k=this.pointClass,l=d.length,m=this.cropStart||0,A=this.hasGroupedData;c=c.keys;var u=[],f;b||A||(b=[],b.length=e.length,b=this.data=b);c&&A&&(this.options.keys=!1);for(f=0;f<l;f++){var y=m+f;if(A){var p=(new k).init(this,[d[f]].concat(t(g[f])));p.dataGroup=this.groupMap[f];p.dataGroup.options&&(p.options=p.dataGroup.options,n(p,p.dataGroup.options),delete p.dataLabels)}else(p=
  387. b[y])||"undefined"===typeof e[y]||(b[y]=p=(new k).init(this,e[y],d[f]));p&&(p.index=y,u[f]=p)}this.options.keys=c;if(b&&(l!==(a=b.length)||A))for(f=0;f<a;f++)f!==m||A||(f+=l),b[f]&&(b[f].destroyElements(),b[f].plotX=void 0);this.data=b;this.points=u;h(this,"afterGeneratePoints")},getXExtremes:function(c){return{min:I(c),max:p(c)}},getExtremes:function(c,e){var b=this.xAxis,a=this.yAxis,d=this.processedXData||this.xData,t=[],l=0,m=0;var n=0;var A=this.requireSorting?this.cropShoulder:0,f=a?a.positiveValuesOnly:
  388. !1,u;c=c||this.stackedYData||this.processedYData||[];a=c.length;b&&(n=b.getExtremes(),m=n.min,n=n.max);for(u=0;u<a;u++){var y=d[u];var F=c[u];var K=(k(F)||g(F))&&(F.length||0<F||!f);y=e||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!b||(d[u+A]||y)>=m&&(d[u-A]||y)<=n;if(K&&y)if(K=F.length)for(;K--;)k(F[K])&&(t[l++]=F[K]);else t[l++]=F}c={dataMin:I(t),dataMax:p(t)};h(this,"afterGetExtremes",{dataExtremes:c});return c},applyExtremes:function(){var c=this.getExtremes();this.dataMin=
  389. c.dataMin;this.dataMax=c.dataMax;return c},getFirstValidPoint:function(c){for(var e=null,b=c.length,a=0;null===e&&a<b;)e=c[a],a++;return e},translate:function(){this.processedXData||this.processData();this.generatePoints();var c=this.options,e=c.stacking,b=this.xAxis,a=b.categories,d=this.enabledDataSorting,t=this.yAxis,l=this.points,m=l.length,n=!!this.modifyValue,A,f=this.pointPlacementToXValue(),u=!!f,y=c.threshold,p=c.startFromThreshold?y:0,F,K=this.zoneAxis||"y",N=Number.MAX_VALUE;for(A=0;A<
  390. m;A++){var r=l[A],L=r.x,x=r.y,v=r.low,I=e&&t.stacking&&t.stacking.stacks[(this.negStacks&&x<(p?0:y)?"-":"")+this.stackKey];if(t.positiveValuesOnly&&!t.validatePositiveValue(x)||b.positiveValuesOnly&&!b.validatePositiveValue(L))r.isNull=!0;r.plotX=F=J(w(b.translate(L,0,0,0,1,f,"flags"===this.type),-1E5,1E5));if(e&&this.visible&&I&&I[L]){var z=this.getStackIndicator(z,L,this.index);if(!r.isNull){var E=I[L];var D=E.points[z.key]}}g(D)&&(v=D[0],x=D[1],v===p&&z.key===I[L].base&&(v=G(k(y)&&y,t.min)),t.positiveValuesOnly&&
  391. 0>=v&&(v=null),r.total=r.stackTotal=E.total,r.percentage=E.total&&r.y/E.total*100,r.stackY=x,this.irregularWidths||E.setOffset(this.pointXOffset||0,this.barW||0));r.yBottom=H(v)?w(t.translate(v,0,1,0,1),-1E5,1E5):null;n&&(x=this.modifyValue(x,r));r.plotY="number"===typeof x&&Infinity!==x?w(t.translate(x,0,1,0,1),-1E5,1E5):void 0;r.isInside=this.isPointInside(r);r.clientX=u?J(b.translate(L,0,0,0,1,f)):F;r.negative=r[K]<(c[K+"Threshold"]||y||0);r.category=a&&"undefined"!==typeof a[r.x]?a[r.x]:r.x;if(!r.isNull&&
  392. !1!==r.visible){"undefined"!==typeof C&&(N=Math.min(N,Math.abs(F-C)));var C=F}r.zone=this.zones.length&&r.getZone();!r.graphic&&this.group&&d&&(r.isNew=!0)}this.closestPointRangePx=N;h(this,"afterTranslate")},getValidPoints:function(c,e,b){var a=this.chart;return(c||this.points||[]).filter(function(c){return e&&!a.isInsidePlot(c.plotX,c.plotY,a.inverted)?!1:!1!==c.visible&&(b||!c.isNull)})},getClipBox:function(c,e){var b=this.options,a=this.chart,d=a.inverted,g=this.xAxis,k=g&&this.yAxis,h=a.options.chart.scrollablePlotArea||
  393. {};c&&!1===b.clip&&k?c=d?{y:-a.chartWidth+k.len+k.pos,height:a.chartWidth,width:a.chartHeight,x:-a.chartHeight+g.len+g.pos}:{y:-k.pos,height:a.chartHeight,width:a.chartWidth,x:-g.pos}:(c=this.clipBox||a.clipBox,e&&(c.width=a.plotSizeX,c.x=(a.scrollablePixelsX||0)*(h.scrollPositionX||0)));return e?{width:c.width,x:c.x}:c},setClip:function(c){var e=this.chart,b=this.options,a=e.renderer,d=e.inverted,g=this.clipBox,k=this.getClipBox(c),h=this.sharedClipKey||["_sharedClip",c&&c.duration,c&&c.easing,k.height,
  394. b.xAxis,b.yAxis].join(),t=e[h],l=e[h+"m"];c&&(k.width=0,d&&(k.x=e.plotHeight+(!1!==b.clip?0:e.plotTop)));t?e.hasLoaded||t.attr(k):(c&&(e[h+"m"]=l=a.clipRect(d?e.plotSizeX+99:-99,d?-e.plotLeft:-e.plotTop,99,d?e.chartWidth:e.chartHeight)),e[h]=t=a.clipRect(k),t.count={length:0});c&&!t.count[this.index]&&(t.count[this.index]=!0,t.count.length+=1);if(!1!==b.clip||c)this.group.clip(c||g?t:e.clipRect),this.markerGroup.clip(l),this.sharedClipKey=h;c||(t.count[this.index]&&(delete t.count[this.index],--t.count.length),
  395. 0===t.count.length&&h&&e[h]&&(g||(e[h]=e[h].destroy()),e[h+"m"]&&(e[h+"m"]=e[h+"m"].destroy())))},animate:function(c){var e=this.chart,b=x(this.options.animation);if(!e.hasRendered)if(c)this.setClip(b);else{var a=this.sharedClipKey;c=e[a];var d=this.getClipBox(b,!0);c&&c.animate(d,b);e[a+"m"]&&e[a+"m"].animate({width:d.width+99,x:d.x-(e.inverted?0:99)},b)}},afterAnimate:function(){this.setClip();h(this,"afterAnimate");this.finishedAnimating=!0},drawPoints:function(){var c=this.points,e=this.chart,
  396. b,a,d=this.options.marker,g=this[this.specialGroup]||this.markerGroup,k=this.xAxis,h=G(d.enabled,!k||k.isRadial?!0:null,this.closestPointRangePx>=d.enabledThreshold*d.radius);if(!1!==d.enabled||this._hasPointMarkers)for(b=0;b<c.length;b++){var t=c[b];var l=(a=t.graphic)?"animate":"attr";var m=t.marker||{};var n=!!t.marker;if((h&&"undefined"===typeof m.enabled||m.enabled)&&!t.isNull&&!1!==t.visible){var A=G(m.symbol,this.symbol);var f=this.markerAttribs(t,t.selected&&"select");this.enabledDataSorting&&
  397. (t.startXPos=k.reversed?-f.width:k.width);var u=!1!==t.isInside;a?a[u?"show":"hide"](u).animate(f):u&&(0<f.width||t.hasImage)&&(t.graphic=a=e.renderer.symbol(A,f.x,f.y,f.width,f.height,n?m:d).add(g),this.enabledDataSorting&&e.hasRendered&&(a.attr({x:t.startXPos}),l="animate"));a&&"animate"===l&&a[u?"show":"hide"](u).animate(f);if(a&&!e.styledMode)a[l](this.pointAttribs(t,t.selected&&"select"));a&&a.addClass(t.getClassName(),!0)}else a&&(t.graphic=a.destroy())}},markerAttribs:function(c,e){var b=this.options,
  398. a=b.marker,d=c.marker||{},g=d.symbol||a.symbol,k=G(d.radius,a.radius);e&&(a=a.states[e],e=d.states&&d.states[e],k=G(e&&e.radius,a&&a.radius,k+(a&&a.radiusPlus||0)));c.hasImage=g&&0===g.indexOf("url");c.hasImage&&(k=0);c={x:b.crisp?Math.floor(c.plotX)-k:c.plotX-k,y:c.plotY-k};k&&(c.width=c.height=2*k);return c},pointAttribs:function(c,e){var b=this.options.marker,a=c&&c.options,d=a&&a.marker||{},g=this.color,k=a&&a.color,h=c&&c.color;a=G(d.lineWidth,b.lineWidth);var t=c&&c.zone&&c.zone.color;c=1;g=
  399. k||t||h||g;k=d.fillColor||b.fillColor||g;g=d.lineColor||b.lineColor||g;e=e||"normal";b=b.states[e];e=d.states&&d.states[e]||{};a=G(e.lineWidth,b.lineWidth,a+G(e.lineWidthPlus,b.lineWidthPlus,0));k=e.fillColor||b.fillColor||k;g=e.lineColor||b.lineColor||g;c=G(e.opacity,b.opacity,c);return{stroke:g,"stroke-width":a,fill:k,opacity:c}},destroy:function(c){var e=this,b=e.chart,a=/AppleWebKit\/533/.test(K.navigator.userAgent),d,g,k=e.data||[],t,l;h(e,"destroy");this.removeEvents(c);(e.axisTypes||[]).forEach(function(c){(l=
  400. e[c])&&l.series&&(u(l.series,e),l.isDirty=l.forceRedraw=!0)});e.legendItem&&e.chart.legend.destroyItem(e);for(g=k.length;g--;)(t=k[g])&&t.destroy&&t.destroy();e.points=null;B.clearTimeout(e.animationTimeout);y(e,function(c,e){c instanceof z&&!c.survive&&(d=a&&"group"===e?"hide":"destroy",c[d]())});b.hoverSeries===e&&(b.hoverSeries=null);u(b.series,e);b.orderSeries();y(e,function(b,a){c&&"hcEvents"===a||delete e[a]})},getGraphPath:function(c,e,b){var a=this,d=a.options,g=d.step,k,h=[],t=[],q;c=c||
  401. a.points;(k=c.reversed)&&c.reverse();(g={right:1,center:2}[g]||g&&3)&&k&&(g=4-g);c=this.getValidPoints(c,!1,!(d.connectNulls&&!e&&!b));c.forEach(function(k,l){var m=k.plotX,n=k.plotY,A=c[l-1];(k.leftCliff||A&&A.rightCliff)&&!b&&(q=!0);k.isNull&&!H(e)&&0<l?q=!d.connectNulls:k.isNull&&!e?q=!0:(0===l||q?l=[["M",k.plotX,k.plotY]]:a.getPointSpline?l=[a.getPointSpline(c,k,l)]:g?(l=1===g?[["L",A.plotX,n]]:2===g?[["L",(A.plotX+m)/2,A.plotY],["L",(A.plotX+m)/2,n]]:[["L",m,A.plotY]],l.push(["L",m,n])):l=[["L",
  402. m,n]],t.push(k.x),g&&(t.push(k.x),2===g&&t.push(k.x)),h.push.apply(h,l),q=!1)});h.xMap=t;return a.graphPath=h},drawGraph:function(){var c=this,e=this.options,b=(this.gappedPath||this.getGraphPath).call(this),a=this.chart.styledMode,d=[["graph","highcharts-graph"]];a||d[0].push(e.lineColor||this.color||"#cccccc",e.dashStyle);d=c.getZonesGraphs(d);d.forEach(function(d,g){var k=d[0],h=c[k],t=h?"animate":"attr";h?(h.endX=c.preventGraphAnimation?null:b.xMap,h.animate({d:b})):b.length&&(c[k]=h=c.chart.renderer.path(b).addClass(d[1]).attr({zIndex:1}).add(c.group));
  403. h&&!a&&(k={stroke:d[2],"stroke-width":e.lineWidth,fill:c.fillGraph&&c.color||"none"},d[3]?k.dashstyle=d[3]:"square"!==e.linecap&&(k["stroke-linecap"]=k["stroke-linejoin"]="round"),h[t](k).shadow(2>g&&e.shadow));h&&(h.startX=b.xMap,h.isArea=b.isArea)})},getZonesGraphs:function(c){this.zones.forEach(function(e,b){b=["zone-graph-"+b,"highcharts-graph highcharts-zone-graph-"+b+" "+(e.className||"")];this.chart.styledMode||b.push(e.color||this.color,e.dashStyle||this.options.dashStyle);c.push(b)},this);
  404. return c},applyZones:function(){var c=this,e=this.chart,b=e.renderer,a=this.zones,d,g,k=this.clips||[],h,t=this.graph,l=this.area,m=Math.max(e.chartWidth,e.chartHeight),n=this[(this.zoneAxis||"y")+"Axis"],A=e.inverted,f,u,y,p=!1,F,K;if(a.length&&(t||l)&&n&&"undefined"!==typeof n.min){var r=n.reversed;var N=n.horiz;t&&!this.showLine&&t.hide();l&&l.hide();var L=n.getExtremes();a.forEach(function(a,q){d=r?N?e.plotWidth:0:N?0:n.toPixels(L.min)||0;d=w(G(g,d),0,m);g=w(Math.round(n.toPixels(G(a.value,L.max),
  405. !0)||0),0,m);p&&(d=g=n.toPixels(L.max));f=Math.abs(d-g);u=Math.min(d,g);y=Math.max(d,g);n.isXAxis?(h={x:A?y:u,y:0,width:f,height:m},N||(h.x=e.plotHeight-h.x)):(h={x:0,y:A?y:u,width:m,height:f},N&&(h.y=e.plotWidth-h.y));A&&b.isVML&&(h=n.isXAxis?{x:0,y:r?u:y,height:h.width,width:e.chartWidth}:{x:h.y-e.plotLeft-e.spacingBox.x,y:0,width:h.height,height:e.chartHeight});k[q]?k[q].animate(h):k[q]=b.clipRect(h);F=c["zone-area-"+q];K=c["zone-graph-"+q];t&&K&&K.clip(k[q]);l&&F&&F.clip(k[q]);p=a.value>L.max;
  406. c.resetZones&&0===g&&(g=void 0)});this.clips=k}else c.visible&&(t&&t.show(!0),l&&l.show(!0))},invertGroups:function(c){function e(){["group","markerGroup"].forEach(function(e){b[e]&&(a.renderer.isVML&&b[e].attr({width:b.yAxis.len,height:b.xAxis.len}),b[e].width=b.yAxis.len,b[e].height=b.xAxis.len,b[e].invert(b.isRadialSeries?!1:c))})}var b=this,a=b.chart;b.xAxis&&(b.eventsToUnbind.push(D(a,"resize",e)),e(),b.invertGroups=e)},plotGroup:function(c,e,b,a,d){var g=this[c],k=!g;b={visibility:b,zIndex:a||
  407. .1};"undefined"===typeof this.opacity||this.chart.styledMode||"inactive"===this.state||(b.opacity=this.opacity);k&&(this[c]=g=this.chart.renderer.g().add(d));g.addClass("highcharts-"+e+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(H(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(g.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0);g.attr(b)[k?"attr":"animate"](this.getPlotBox());return g},getPlotBox:function(){var c=this.chart,
  408. e=this.xAxis,b=this.yAxis;c.inverted&&(e=b,b=this.xAxis);return{translateX:e?e.left:c.plotLeft,translateY:b?b.top:c.plotTop,scaleX:1,scaleY:1}},removeEvents:function(c){c?this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(c){c()}),this.eventsToUnbind.length=0):L(this)},render:function(){var c=this,e=c.chart,b=c.options,a=x(b.animation),d=!c.finishedAnimating&&e.renderer.isSVG&&a.duration,g=c.visible?"inherit":"hidden",k=b.zIndex,t=c.hasRendered,l=e.seriesGroup,m=e.inverted;h(this,"render");
  409. var n=c.plotGroup("group","series",g,k,l);c.markerGroup=c.plotGroup("markerGroup","markers",g,k,l);d&&c.animate&&c.animate(!0);n.inverted=c.isCartesian||c.invertable?m:!1;c.drawGraph&&(c.drawGraph(),c.applyZones());c.visible&&c.drawPoints();c.drawDataLabels&&c.drawDataLabels();c.redrawPoints&&c.redrawPoints();c.drawTracker&&!1!==c.options.enableMouseTracking&&c.drawTracker();c.invertGroups(m);!1===b.clip||c.sharedClipKey||t||n.clip(e.clipRect);d&&c.animate&&c.animate();t||(d&&a.defer&&(d+=a.defer),
  410. c.animationTimeout=A(function(){c.afterAnimate()},d||0));c.isDirty=!1;c.hasRendered=!0;h(c,"afterRender")},redraw:function(){var c=this.chart,e=this.isDirty||this.isDirtyData,b=this.group,a=this.xAxis,d=this.yAxis;b&&(c.inverted&&b.attr({width:c.plotWidth,height:c.plotHeight}),b.animate({translateX:G(a&&a.left,c.plotLeft),translateY:G(d&&d.top,c.plotTop)}));this.translate();this.render();e&&delete this.kdTree},kdAxisArray:["clientX","plotY"],searchPoint:function(c,e){var b=this.xAxis,a=this.yAxis,
  411. d=this.chart.inverted;return this.searchKDTree({clientX:d?b.len-c.chartY+b.pos:c.chartX-b.pos,plotY:d?a.len-c.chartX+a.pos:c.chartY-a.pos},e,c)},buildKDTree:function(c){function e(c,a,d){var g;if(g=c&&c.length){var k=b.kdAxisArray[a%d];c.sort(function(c,e){return c[k]-e[k]});g=Math.floor(g/2);return{point:c[g],left:e(c.slice(0,g),a+1,d),right:e(c.slice(g+1),a+1,d)}}}this.buildingKdTree=!0;var b=this,a=-1<b.options.findNearestPointBy.indexOf("y")?2:1;delete b.kdTree;A(function(){b.kdTree=e(b.getValidPoints(null,
  412. !b.directTouch),a,a);b.buildingKdTree=!1},b.options.kdNow||c&&"touchstart"===c.type?0:1)},searchKDTree:function(c,e,b){function a(c,e,b,t){var q=e.point,l=d.kdAxisArray[b%t],m=q;var n=H(c[g])&&H(q[g])?Math.pow(c[g]-q[g],2):null;var A=H(c[k])&&H(q[k])?Math.pow(c[k]-q[k],2):null;A=(n||0)+(A||0);q.dist=H(A)?Math.sqrt(A):Number.MAX_VALUE;q.distX=H(n)?Math.sqrt(n):Number.MAX_VALUE;l=c[l]-q[l];A=0>l?"left":"right";n=0>l?"right":"left";e[A]&&(A=a(c,e[A],b+1,t),m=A[h]<m[h]?A:q);e[n]&&Math.sqrt(l*l)<m[h]&&
  413. (c=a(c,e[n],b+1,t),m=c[h]<m[h]?c:m);return m}var d=this,g=this.kdAxisArray[0],k=this.kdAxisArray[1],h=e?"distX":"dist";e=-1<d.options.findNearestPointBy.indexOf("y")?2:1;this.kdTree||this.buildingKdTree||this.buildKDTree(b);if(this.kdTree)return a(c,this.kdTree,e,e)},pointPlacementToXValue:function(){var c=this.options,e=c.pointRange,b=this.xAxis;c=c.pointPlacement;"between"===c&&(c=b.reversed?-.5:.5);return k(c)?c*G(e,b.pointRange):0},isPointInside:function(c){return"undefined"!==typeof c.plotY&&
  414. "undefined"!==typeof c.plotX&&0<=c.plotY&&c.plotY<=this.yAxis.len&&0<=c.plotX&&c.plotX<=this.xAxis.len}});""});M(v,"Extensions/Stacking.js",[v["Core/Axis/Axis.js"],v["Core/Chart/Chart.js"],v["Core/Globals.js"],v["Core/Axis/StackingAxis.js"],v["Core/Utilities.js"]],function(r,f,v,C,z){var B=z.correctFloat,E=z.defined,D=z.destroyObjectProperties,x=z.format,p=z.isNumber,I=z.pick;"";var w=v.Series,J=function(){function f(f,m,n,l,h){var d=f.chart.inverted;this.axis=f;this.isNegative=n;this.options=m=m||
  415. {};this.x=l;this.total=null;this.points={};this.hasValidPoints=!1;this.stack=h;this.rightCliff=this.leftCliff=0;this.alignOptions={align:m.align||(d?n?"left":"right":"center"),verticalAlign:m.verticalAlign||(d?"middle":n?"bottom":"top"),y:m.y,x:m.x};this.textAlign=m.textAlign||(d?n?"right":"left":"center")}f.prototype.destroy=function(){D(this,this.axis)};f.prototype.render=function(f){var m=this.axis.chart,n=this.options,l=n.format;l=l?x(l,this,m):n.formatter.call(this);this.label?this.label.attr({text:l,
  416. visibility:"hidden"}):(this.label=m.renderer.label(l,null,null,n.shape,null,null,n.useHTML,!1,"stack-labels"),l={r:n.borderRadius||0,text:l,rotation:n.rotation,padding:I(n.padding,5),visibility:"hidden"},m.styledMode||(l.fill=n.backgroundColor,l.stroke=n.borderColor,l["stroke-width"]=n.borderWidth,this.label.css(n.style)),this.label.attr(l),this.label.added||this.label.add(f));this.label.labelrank=m.plotHeight};f.prototype.setOffset=function(f,m,n,l,h){var d=this.axis,g=d.chart;l=d.translate(d.stacking.usePercentage?
  417. 100:l?l:this.total,0,0,0,1);n=d.translate(n?n:0);n=E(l)&&Math.abs(l-n);f=I(h,g.xAxis[0].translate(this.x))+f;d=E(l)&&this.getStackBox(g,this,f,l,m,n,d);m=this.label;n=this.isNegative;f="justify"===I(this.options.overflow,"justify");var a=this.textAlign;m&&d&&(h=m.getBBox(),l=m.padding,a="left"===a?g.inverted?-l:l:"right"===a?h.width:g.inverted&&"center"===a?h.width/2:g.inverted?n?h.width+l:-l:h.width/2,n=g.inverted?h.height/2:n?-l:h.height,this.alignOptions.x=I(this.options.x,0),this.alignOptions.y=
  418. I(this.options.y,0),d.x-=a,d.y-=n,m.align(this.alignOptions,null,d),g.isInsidePlot(m.alignAttr.x+a-this.alignOptions.x,m.alignAttr.y+n-this.alignOptions.y)?m.show():(m.alignAttr.y=-9999,f=!1),f&&w.prototype.justifyDataLabel.call(this.axis,m,this.alignOptions,m.alignAttr,h,d),m.attr({x:m.alignAttr.x,y:m.alignAttr.y}),I(!f&&this.options.crop,!0)&&((g=p(m.x)&&p(m.y)&&g.isInsidePlot(m.x-l+m.width,m.y)&&g.isInsidePlot(m.x+l,m.y))||m.hide()))};f.prototype.getStackBox=function(f,m,n,l,h,d,g){var a=m.axis.reversed,
  419. k=f.inverted,b=g.height+g.pos-(k?f.plotLeft:f.plotTop);m=m.isNegative&&!a||!m.isNegative&&a;return{x:k?m?l-g.right:l-d+g.pos-f.plotLeft:n+f.xAxis[0].transB-f.plotLeft,y:k?g.height-n-h:m?b-l-d:b-l,width:k?d:h,height:k?h:d}};return f}();f.prototype.getStacks=function(){var f=this,u=f.inverted;f.yAxis.forEach(function(m){m.stacking&&m.stacking.stacks&&m.hasVisibleSeries&&(m.stacking.oldStacks=m.stacking.stacks)});f.series.forEach(function(m){var n=m.xAxis&&m.xAxis.options||{};!m.options.stacking||!0!==
  420. m.visible&&!1!==f.options.chart.ignoreHiddenSeries||(m.stackKey=[m.type,I(m.options.stack,""),u?n.top:n.left,u?n.height:n.width].join())})};C.compose(r);w.prototype.setGroupedPoints=function(){this.options.centerInCategory&&(this.is("column")||this.is("columnrange"))&&!this.options.stacking&&1<this.chart.series.length&&w.prototype.setStackedPoints.call(this,"group")};w.prototype.setStackedPoints=function(f){var u=f||this.options.stacking;if(u&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var m=
  421. this.processedXData,n=this.processedYData,l=[],h=n.length,d=this.options,g=d.threshold,a=I(d.startFromThreshold&&g,0);d=d.stack;f=f?this.type+","+u:this.stackKey;var k="-"+f,b=this.negStacks,p=this.yAxis,y=p.stacking.stacks,G=p.stacking.oldStacks,r,t;p.stacking.stacksTouched+=1;for(t=0;t<h;t++){var A=m[t];var w=n[t];var K=this.getStackIndicator(K,A,this.index);var c=K.key;var e=(r=b&&w<(a?0:g))?k:f;y[e]||(y[e]={});y[e][A]||(G[e]&&G[e][A]?(y[e][A]=G[e][A],y[e][A].total=null):y[e][A]=new J(p,p.options.stackLabels,
  422. r,A,d));e=y[e][A];null!==w?(e.points[c]=e.points[this.index]=[I(e.cumulative,a)],E(e.cumulative)||(e.base=c),e.touched=p.stacking.stacksTouched,0<K.index&&!1===this.singleStacks&&(e.points[c][0]=e.points[this.index+","+A+",0"][0])):e.points[c]=e.points[this.index]=null;"percent"===u?(r=r?f:k,b&&y[r]&&y[r][A]?(r=y[r][A],e.total=r.total=Math.max(r.total,e.total)+Math.abs(w)||0):e.total=B(e.total+(Math.abs(w)||0))):"group"===u?null!==w&&(e.total=(e.total||0)+1):e.total=B(e.total+(w||0));e.cumulative=
  423. "group"===u?(e.total||1)-1:I(e.cumulative,a)+(w||0);null!==w&&(e.points[c].push(e.cumulative),l[t]=e.cumulative,e.hasValidPoints=!0)}"percent"===u&&(p.stacking.usePercentage=!0);"group"!==u&&(this.stackedYData=l);p.stacking.oldStacks={}}};w.prototype.modifyStacks=function(){var f=this,u=f.stackKey,m=f.yAxis.stacking.stacks,n=f.processedXData,l,h=f.options.stacking;f[h+"Stacker"]&&[u,"-"+u].forEach(function(d){for(var g=n.length,a,k;g--;)if(a=n[g],l=f.getStackIndicator(l,a,f.index,d),k=(a=m[d]&&m[d][a])&&
  424. a.points[l.key])f[h+"Stacker"](k,a,g)})};w.prototype.percentStacker=function(f,u,m){u=u.total?100/u.total:0;f[0]=B(f[0]*u);f[1]=B(f[1]*u);this.stackedYData[m]=f[1]};w.prototype.getStackIndicator=function(f,u,m,n){!E(f)||f.x!==u||n&&f.key!==n?f={x:u,index:0,key:n}:f.index++;f.key=[m,u,f.index].join();return f};v.StackItem=J;return v.StackItem});M(v,"Core/Dynamics.js",[v["Core/Axis/Axis.js"],v["Core/Chart/Chart.js"],v["Core/Globals.js"],v["Core/Options.js"],v["Core/Series/Point.js"],v["Core/Time.js"],
  425. v["Core/Utilities.js"]],function(r,f,v,C,z,B,E){var D=C.time,x=E.addEvent,p=E.animate,I=E.createElement,w=E.css,J=E.defined,H=E.erase,u=E.error,m=E.extend,n=E.fireEvent,l=E.isArray,h=E.isNumber,d=E.isObject,g=E.isString,a=E.merge,k=E.objectEach,b=E.pick,F=E.relativeLength,y=E.setAnimation,G=E.splat;C=v.Series;var L=v.seriesTypes;v.cleanRecursively=function(b,a){var g={};k(b,function(k,c){if(d(b[c],!0)&&!b.nodeType&&a[c])k=v.cleanRecursively(b[c],a[c]),Object.keys(k).length&&(g[c]=k);else if(d(b[c])||
  426. b[c]!==a[c])g[c]=b[c]});return g};m(f.prototype,{addSeries:function(a,d,g){var k,c=this;a&&(d=b(d,!0),n(c,"addSeries",{options:a},function(){k=c.initSeries(a);c.isDirtyLegend=!0;c.linkSeries();k.enabledDataSorting&&k.setData(a.data,!1);n(c,"afterAddSeries",{series:k});d&&c.redraw(g)}));return k},addAxis:function(b,a,d,g){return this.createAxis(a?"xAxis":"yAxis",{axis:b,redraw:d,animation:g})},addColorAxis:function(b,a,d){return this.createAxis("colorAxis",{axis:b,redraw:a,animation:d})},createAxis:function(d,
  427. g){var k=this.options,h="colorAxis"===d,c=g.redraw,e=g.animation;g=a(g.axis,{index:this[d].length,isX:"xAxis"===d});var t=h?new v.ColorAxis(this,g):new r(this,g);k[d]=G(k[d]||{});k[d].push(g);h&&(this.isDirtyLegend=!0,this.axes.forEach(function(c){c.series=[]}),this.series.forEach(function(c){c.bindAxes();c.isDirtyData=!0}));b(c,!0)&&this.redraw(e);return t},showLoading:function(a){var d=this,g=d.options,k=d.loadingDiv,c=g.loading,e=function(){k&&w(k,{left:d.plotLeft+"px",top:d.plotTop+"px",width:d.plotWidth+
  428. "px",height:d.plotHeight+"px"})};k||(d.loadingDiv=k=I("div",{className:"highcharts-loading highcharts-loading-hidden"},null,d.container),d.loadingSpan=I("span",{className:"highcharts-loading-inner"},null,k),x(d,"redraw",e));k.className="highcharts-loading";d.loadingSpan.innerHTML=b(a,g.lang.loading,"");d.styledMode||(w(k,m(c.style,{zIndex:10})),w(d.loadingSpan,c.labelStyle),d.loadingShown||(w(k,{opacity:0,display:""}),p(k,{opacity:c.style.opacity||.5},{duration:c.showDuration||0})));d.loadingShown=
  429. !0;e()},hideLoading:function(){var b=this.options,a=this.loadingDiv;a&&(a.className="highcharts-loading highcharts-loading-hidden",this.styledMode||p(a,{opacity:0},{duration:b.loading.hideDuration||100,complete:function(){w(a,{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(" "),
  430. propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip".split(" "),collectionsWithUpdate:["xAxis","yAxis","zAxis","series"],update:function(d,l,m,f){var c=this,e={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},t,A,u,y=d.isResponsiveOptions,p=[];n(c,"update",{options:d});y||c.setResponsive(!1,!0);d=v.cleanRecursively(d,c.options);a(!0,c.userOptions,d);if(t=d.chart){a(!0,c.options.chart,t);"className"in
  431. t&&c.setClassName(t.className);"reflow"in t&&c.setReflow(t.reflow);if("inverted"in t||"polar"in t||"type"in t){c.propFromSeries();var r=!0}"alignTicks"in t&&(r=!0);k(t,function(e,b){-1!==c.propsRequireUpdateSeries.indexOf("chart."+b)&&(A=!0);-1!==c.propsRequireDirtyBox.indexOf(b)&&(c.isDirtyBox=!0);-1!==c.propsRequireReflow.indexOf(b)&&(y?c.isDirtyBox=!0:u=!0)});!c.styledMode&&"style"in t&&c.renderer.setStyle(t.style)}!c.styledMode&&d.colors&&(this.options.colors=d.colors);d.plotOptions&&a(!0,this.options.plotOptions,
  432. d.plotOptions);d.time&&this.time===D&&(this.time=new B(d.time));k(d,function(b,a){if(c[a]&&"function"===typeof c[a].update)c[a].update(b,!1);else if("function"===typeof c[e[a]])c[e[a]](b);"chart"!==a&&-1!==c.propsRequireUpdateSeries.indexOf(a)&&(A=!0)});this.collectionsWithUpdate.forEach(function(e){if(d[e]){if("series"===e){var a=[];c[e].forEach(function(c,e){c.options.isInternal||a.push(b(c.options.index,e))})}G(d[e]).forEach(function(b,d){var g=J(b.id),k;g&&(k=c.get(b.id));k||(k=c[e][a?a[d]:d])&&
  433. g&&J(k.options.id)&&(k=void 0);k&&k.coll===e&&(k.update(b,!1),m&&(k.touched=!0));!k&&m&&c.collectionsWithInit[e]&&(c.collectionsWithInit[e][0].apply(c,[b].concat(c.collectionsWithInit[e][1]||[]).concat([!1])).touched=!0)});m&&c[e].forEach(function(c){c.touched||c.options.isInternal?delete c.touched:p.push(c)})}});p.forEach(function(c){c.remove&&c.remove(!1)});r&&c.axes.forEach(function(c){c.update({},!1)});A&&c.getSeriesOrderByLinks().forEach(function(c){c.chart&&c.update({},!1)},this);d.loading&&
  434. a(!0,c.options.loading,d.loading);r=t&&t.width;t=t&&t.height;g(t)&&(t=F(t,r||c.chartWidth));u||h(r)&&r!==c.chartWidth||h(t)&&t!==c.chartHeight?c.setSize(r,t,f):b(l,!0)&&c.redraw(f);n(c,"afterUpdate",{options:d,redraw:l,animation:f})},setSubtitle:function(b,a){this.applyDescription("subtitle",b);this.layOutTitles(a)},setCaption:function(b,a){this.applyDescription("caption",b);this.layOutTitles(a)}});f.prototype.collectionsWithInit={xAxis:[f.prototype.addAxis,[!0]],yAxis:[f.prototype.addAxis,[!1]],
  435. series:[f.prototype.addSeries]};m(z.prototype,{update:function(a,g,k,h){function c(){e.applyOptions(a);var c=l&&e.hasDummyGraphic;c=null===e.y?!c:c;l&&c&&(e.graphic=l.destroy(),delete e.hasDummyGraphic);d(a,!0)&&(l&&l.element&&a&&a.marker&&"undefined"!==typeof a.marker.symbol&&(e.graphic=l.destroy()),a&&a.dataLabels&&e.dataLabel&&(e.dataLabel=e.dataLabel.destroy()),e.connector&&(e.connector=e.connector.destroy()));m=e.index;t.updateParallelArrays(e,m);n.data[m]=d(n.data[m],!0)||d(a,!0)?e.options:
  436. b(a,n.data[m]);t.isDirty=t.isDirtyData=!0;!t.fixedBox&&t.hasCartesianSeries&&(f.isDirtyBox=!0);"point"===n.legendType&&(f.isDirtyLegend=!0);g&&f.redraw(k)}var e=this,t=e.series,l=e.graphic,m,f=t.chart,n=t.options;g=b(g,!0);!1===h?c():e.firePointEvent("update",{options:a},c)},remove:function(b,a){this.series.removePoint(this.series.data.indexOf(this),b,a)}});m(C.prototype,{addPoint:function(a,d,g,k,c){var e=this.options,h=this.data,t=this.chart,l=this.xAxis;l=l&&l.hasNames&&l.names;var m=e.data,f=
  437. this.xData,u;d=b(d,!0);var A={series:this};this.pointClass.prototype.applyOptions.apply(A,[a]);var y=A.x;var p=f.length;if(this.requireSorting&&y<f[p-1])for(u=!0;p&&f[p-1]>y;)p--;this.updateParallelArrays(A,"splice",p,0,0);this.updateParallelArrays(A,p);l&&A.name&&(l[y]=A.name);m.splice(p,0,a);u&&(this.data.splice(p,0,null),this.processData());"point"===e.legendType&&this.generatePoints();g&&(h[0]&&h[0].remove?h[0].remove(!1):(h.shift(),this.updateParallelArrays(A,"shift"),m.shift()));!1!==c&&n(this,
  438. "addPoint",{point:A});this.isDirtyData=this.isDirty=!0;d&&t.redraw(k)},removePoint:function(a,d,g){var k=this,c=k.data,e=c[a],h=k.points,t=k.chart,l=function(){h&&h.length===c.length&&h.splice(a,1);c.splice(a,1);k.options.data.splice(a,1);k.updateParallelArrays(e||{series:k},"splice",a,1);e&&e.destroy();k.isDirty=!0;k.isDirtyData=!0;d&&t.redraw()};y(g,t);d=b(d,!0);e?e.firePointEvent("remove",null,l):l()},remove:function(a,d,g,k){function c(){e.destroy(k);e.remove=null;h.isDirtyLegend=h.isDirtyBox=
  439. !0;h.linkSeries();b(a,!0)&&h.redraw(d)}var e=this,h=e.chart;!1!==g?n(e,"remove",null,c):c()},update:function(d,g){d=v.cleanRecursively(d,this.userOptions);n(this,"update",{options:d});var k=this,h=k.chart,c=k.userOptions,e=k.initialType||k.type,t=d.type||c.type||h.options.chart.type,l=!(this.hasDerivedData||d.dataGrouping||t&&t!==this.type||"undefined"!==typeof d.pointStart||d.pointInterval||d.pointIntervalUnit||d.keys),f=L[e].prototype,A,y=["eventOptions","navigatorSeries","baseSeries"],p=k.finishedAnimating&&
  440. {animation:!1},F={};l&&(y.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","_hasPointLabels","mapMap","mapData","minY","maxY","minX","maxX"),!1!==d.visible&&y.push("area","graph"),k.parallelArrays.forEach(function(c){y.push(c+"Data")}),d.data&&(d.dataSorting&&m(k.options.dataSorting,d.dataSorting),this.setData(d.data,!1)));d=a(c,p,{index:"undefined"===typeof c.index?k.index:c.index,pointStart:b(c.pointStart,k.xData[0])},!l&&{data:k.options.data},
  441. d);l&&d.data&&(d.data=k.options.data);y=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(y);y.forEach(function(c){y[c]=k[c];delete k[c]});k.remove(!1,null,!1,!0);for(A in f)k[A]=void 0;L[t||e]?m(k,L[t||e].prototype):u(17,!0,h,{missingModuleFor:t||e});y.forEach(function(c){k[c]=y[c]});k.init(h,d);if(l&&this.points){var r=k.options;!1===r.visible?(F.graphic=1,F.dataLabel=1):k._hasPointLabels||(d=r.marker,c=r.dataLabels,d&&(!1===d.enabled||"symbol"in d)&&(F.graphic=1),c&&!1===c.enabled&&
  442. (F.dataLabel=1));this.points.forEach(function(c){c&&c.series&&(c.resolveColor(),Object.keys(F).length&&c.destroyElements(F),!1===r.showInLegend&&c.legendItem&&h.legend.destroyItem(c))},this)}k.initialType=e;h.linkSeries();n(this,"afterUpdate");b(g,!0)&&h.redraw(l?void 0:!1)},setName:function(b){this.name=this.options.name=this.userOptions.name=b;this.chart.isDirtyLegend=!0}});m(r.prototype,{update:function(d,g){var h=this.chart,t=d&&d.events||{};d=a(this.userOptions,d);h.options[this.coll].indexOf&&
  443. (h.options[this.coll][h.options[this.coll].indexOf(this.userOptions)]=d);k(h.options[this.coll].events,function(c,e){"undefined"===typeof t[e]&&(t[e]=void 0)});this.destroy(!0);this.init(h,m(d,{events:t}));h.isDirtyBox=!0;b(g,!0)&&h.redraw()},remove:function(a){for(var d=this.chart,g=this.coll,k=this.series,c=k.length;c--;)k[c]&&k[c].remove(!1);H(d.axes,this);H(d[g],this);l(d.options[g])?d.options[g].splice(this.options.index,1):delete d.options[g];d[g].forEach(function(c,b){c.options.index=c.userOptions.index=
  444. b});this.destroy();d.isDirtyBox=!0;b(a,!0)&&d.redraw()},setTitle:function(b,a){this.update({title:b},a)},setCategories:function(b,a){this.update({categories:b},a)}})});M(v,"Series/AreaSeries.js",[v["Core/Globals.js"],v["Core/Color.js"],v["Mixins/LegendSymbol.js"],v["Core/Utilities.js"]],function(r,f,v,C){var z=f.parse,B=C.objectEach,E=C.pick;f=C.seriesType;var D=r.Series;f("area","line",{threshold:0},{singleStacks:!1,getStackPoints:function(f){var p=[],r=[],w=this.xAxis,v=this.yAxis,x=v.stacking.stacks[this.stackKey],
  445. u={},m=this.index,n=v.series,l=n.length,h=E(v.options.reversedStacks,!0)?1:-1,d;f=f||this.points;if(this.options.stacking){for(d=0;d<f.length;d++)f[d].leftNull=f[d].rightNull=void 0,u[f[d].x]=f[d];B(x,function(a,d){null!==a.total&&r.push(d)});r.sort(function(a,d){return a-d});var g=n.map(function(a){return a.visible});r.forEach(function(a,k){var b=0,f,n;if(u[a]&&!u[a].isNull)p.push(u[a]),[-1,1].forEach(function(b){var y=1===b?"rightNull":"leftNull",t=0,A=x[r[k+b]];if(A)for(d=m;0<=d&&d<l;)f=A.points[d],
  446. f||(d===m?u[a][y]=!0:g[d]&&(n=x[a].points[d])&&(t-=n[1]-n[0])),d+=h;u[a][1===b?"rightCliff":"leftCliff"]=t});else{for(d=m;0<=d&&d<l;){if(f=x[a].points[d]){b=f[1];break}d+=h}b=v.translate(b,0,1,0,1);p.push({isNull:!0,plotX:w.translate(a,0,0,0,1),x:a,plotY:b,yBottom:b})}})}return p},getGraphPath:function(f){var p=D.prototype.getGraphPath,r=this.options,w=r.stacking,v=this.yAxis,x,u=[],m=[],n=this.index,l=v.stacking.stacks[this.stackKey],h=r.threshold,d=Math.round(v.getThreshold(r.threshold));r=E(r.connectNulls,
  447. "percent"===w);var g=function(b,a,g){var y=f[b];b=w&&l[y.x].points[n];var t=y[g+"Null"]||0;g=y[g+"Cliff"]||0;y=!0;if(g||t){var A=(t?b[0]:b[1])+g;var p=b[0]+g;y=!!t}else!w&&f[a]&&f[a].isNull&&(A=p=h);"undefined"!==typeof A&&(m.push({plotX:k,plotY:null===A?d:v.getThreshold(A),isNull:y,isCliff:!0}),u.push({plotX:k,plotY:null===p?d:v.getThreshold(p),doCurve:!1}))};f=f||this.points;w&&(f=this.getStackPoints(f));for(x=0;x<f.length;x++){w||(f[x].leftCliff=f[x].rightCliff=f[x].leftNull=f[x].rightNull=void 0);
  448. var a=f[x].isNull;var k=E(f[x].rectPlotX,f[x].plotX);var b=w?f[x].yBottom:d;if(!a||r)r||g(x,x-1,"left"),a&&!w&&r||(m.push(f[x]),u.push({x:x,plotX:k,plotY:b})),r||g(x,x+1,"right")}x=p.call(this,m,!0,!0);u.reversed=!0;a=p.call(this,u,!0,!0);(b=a[0])&&"M"===b[0]&&(a[0]=["L",b[1],b[2]]);a=x.concat(a);p=p.call(this,m,!1,r);a.xMap=x.xMap;this.areaPath=a;return p},drawGraph:function(){this.areaPath=[];D.prototype.drawGraph.apply(this);var f=this,p=this.areaPath,r=this.options,w=[["area","highcharts-area",
  449. this.color,r.fillColor]];this.zones.forEach(function(p,v){w.push(["zone-area-"+v,"highcharts-area highcharts-zone-area-"+v+" "+p.className,p.color||f.color,p.fillColor||r.fillColor])});w.forEach(function(w){var v=w[0],u=f[v],m=u?"animate":"attr",n={};u?(u.endX=f.preventGraphAnimation?null:p.xMap,u.animate({d:p})):(n.zIndex=0,u=f[v]=f.chart.renderer.path(p).addClass(w[1]).add(f.group),u.isArea=!0);f.chart.styledMode||(n.fill=E(w[3],z(w[2]).setOpacity(E(r.fillOpacity,.75)).get()));u[m](n);u.startX=
  450. p.xMap;u.shiftUnit=r.step?2:1})},drawLegendSymbol:v.drawRectangle});""});M(v,"Series/SplineSeries.js",[v["Core/Utilities.js"]],function(r){var f=r.pick;r=r.seriesType;r("spline","line",{},{getPointSpline:function(r,v,z){var C=v.plotX||0,E=v.plotY||0,D=r[z-1];z=r[z+1];if(D&&!D.isNull&&!1!==D.doCurve&&!v.isCliff&&z&&!z.isNull&&!1!==z.doCurve&&!v.isCliff){r=D.plotY||0;var x=z.plotX||0;z=z.plotY||0;var p=0;var I=(1.5*C+(D.plotX||0))/2.5;var w=(1.5*E+r)/2.5;x=(1.5*C+x)/2.5;var J=(1.5*E+z)/2.5;x!==I&&(p=
  451. (J-w)*(x-C)/(x-I)+E-J);w+=p;J+=p;w>r&&w>E?(w=Math.max(r,E),J=2*E-w):w<r&&w<E&&(w=Math.min(r,E),J=2*E-w);J>z&&J>E?(J=Math.max(z,E),w=2*E-J):J<z&&J<E&&(J=Math.min(z,E),w=2*E-J);v.rightContX=x;v.rightContY=J}v=["C",f(D.rightContX,D.plotX,0),f(D.rightContY,D.plotY,0),f(I,C,0),f(w,E,0),C,E];D.rightContX=D.rightContY=void 0;return v}});""});M(v,"Series/AreaSplineSeries.js",[v["Core/Globals.js"],v["Mixins/LegendSymbol.js"],v["Core/Options.js"],v["Core/Utilities.js"]],function(r,f,v,C){C=C.seriesType;r=r.seriesTypes.area.prototype;
  452. C("areaspline","spline",v.defaultOptions.plotOptions.area,{getStackPoints:r.getStackPoints,getGraphPath:r.getGraphPath,drawGraph:r.drawGraph,drawLegendSymbol:f.drawRectangle});""});M(v,"Series/ColumnSeries.js",[v["Core/Globals.js"],v["Core/Color.js"],v["Mixins/LegendSymbol.js"],v["Core/Utilities.js"]],function(r,f,v,C){"";var z=f.parse,B=C.animObject,E=C.clamp,D=C.defined,x=C.extend,p=C.isNumber,I=C.merge,w=C.pick;f=C.seriesType;var J=C.objectEach,H=r.Series;f("column","line",{borderRadius:0,centerInCategory:!1,
  453. 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:void 0,verticalAlign:void 0,y:void 0},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:"#ffffff"},{cropShoulder:0,directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){H.prototype.init.apply(this,arguments);var f=this,m=f.chart;m.hasRendered&&
  454. m.series.forEach(function(m){m.type===f.type&&(m.isDirty=!0)})},getColumnMetrics:function(){var f=this,m=f.options,n=f.xAxis,l=f.yAxis,h=n.options.reversedStacks;h=n.reversed&&!h||!n.reversed&&h;var d,g={},a=0;!1===m.grouping?a=1:f.chart.series.forEach(function(b){var k=b.yAxis,h=b.options;if(b.type===f.type&&(b.visible||!f.chart.options.chart.ignoreHiddenSeries)&&l.len===k.len&&l.pos===k.pos){if(h.stacking&&"group"!==h.stacking){d=b.stackKey;"undefined"===typeof g[d]&&(g[d]=a++);var t=g[d]}else!1!==
  455. h.grouping&&(t=a++);b.columnIndex=t}});var k=Math.min(Math.abs(n.transA)*(n.ordinal&&n.ordinal.slope||m.pointRange||n.closestPointRange||n.tickInterval||1),n.len),b=k*m.groupPadding,p=(k-2*b)/(a||1);m=Math.min(m.maxPointWidth||n.len,w(m.pointWidth,p*(1-2*m.pointPadding)));f.columnMetrics={width:m,offset:(p-m)/2+(b+((f.columnIndex||0)+(h?1:0))*p-k/2)*(h?-1:1),paddedWidth:p,columnCount:a};return f.columnMetrics},crispCol:function(f,m,n,l){var h=this.chart,d=this.borderWidth,g=-(d%2?.5:0);d=d%2?.5:1;
  456. h.inverted&&h.renderer.isVML&&(d+=1);this.options.crisp&&(n=Math.round(f+n)+g,f=Math.round(f)+g,n-=f);l=Math.round(m+l)+d;g=.5>=Math.abs(m)&&.5<l;m=Math.round(m)+d;l-=m;g&&l&&(--m,l+=1);return{x:f,y:m,width:n,height:l}},adjustForMissingColumns:function(f,m,n,l){var h=this,d=this.options.stacking;if(!n.isNull&&1<l.columnCount){var g=0,a=0;J(this.yAxis.stacking&&this.yAxis.stacking.stacks,function(k){if("number"===typeof n.x&&(k=k[n.x.toString()])){var b=k.points[h.index],l=k.total;d?(b&&(g=a),k.hasValidPoints&&
  457. a++):r.isArray(b)&&(g=b[1],a=l||0)}});f=(n.plotX||0)+((a-1)*l.paddedWidth+m)/2-m-g*l.paddedWidth}return f},translate:function(){var f=this,m=f.chart,n=f.options,l=f.dense=2>f.closestPointRange*f.xAxis.transA;l=f.borderWidth=w(n.borderWidth,l?0:1);var h=f.xAxis,d=f.yAxis,g=n.threshold,a=f.translatedThreshold=d.getThreshold(g),k=w(n.minPointLength,5),b=f.getColumnMetrics(),r=b.width,y=f.barW=Math.max(r,1+2*l),G=f.pointXOffset=b.offset,L=f.dataMin,t=f.dataMax;m.inverted&&(a-=.5);n.pointPadding&&(y=Math.ceil(y));
  458. H.prototype.translate.apply(f);f.points.forEach(function(l){var A=w(l.yBottom,a),u=999+Math.abs(A),c=r,e=l.plotX||0;u=E(l.plotY,-u,d.len+u);var q=e+G,F=y,v=Math.min(u,A),x=Math.max(u,A)-v;if(k&&Math.abs(x)<k){x=k;var H=!d.reversed&&!l.negative||d.reversed&&l.negative;p(g)&&p(t)&&l.y===g&&t<=g&&(d.min||0)<g&&L!==t&&(H=!H);v=Math.abs(v-a)>k?A-k:a-(H?k:0)}D(l.options.pointWidth)&&(c=F=Math.ceil(l.options.pointWidth),q-=Math.round((c-r)/2));n.centerInCategory&&(q=f.adjustForMissingColumns(q,c,l,b));l.barX=
  459. q;l.pointWidth=c;l.tooltipPos=m.inverted?[d.len+d.pos-m.plotLeft-u,h.len+h.pos-m.plotTop-(e||0)-G-F/2,x]:[q+F/2,u+d.pos-m.plotTop,x];l.shapeType=f.pointClass.prototype.shapeType||"rect";l.shapeArgs=f.crispCol.apply(f,l.isNull?[q,a,F,0]:[q,v,F,x])})},getSymbol:r.noop,drawLegendSymbol:v.drawRectangle,drawGraph:function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},pointAttribs:function(f,m){var n=this.options,l=this.pointAttrToOptions||{};var h=l.stroke||"borderColor";
  460. var d=l["stroke-width"]||"borderWidth",g=f&&f.color||this.color,a=f&&f[h]||n[h]||this.color||g,k=f&&f[d]||n[d]||this[d]||0;l=f&&f.options.dashStyle||n.dashStyle;var b=w(f&&f.opacity,n.opacity,1);if(f&&this.zones.length){var u=f.getZone();g=f.options.color||u&&(u.color||f.nonZonedColor)||this.color;u&&(a=u.borderColor||a,l=u.dashStyle||l,k=u.borderWidth||k)}m&&f&&(f=I(n.states[m],f.options.states&&f.options.states[m]||{}),m=f.brightness,g=f.color||"undefined"!==typeof m&&z(g).brighten(f.brightness).get()||
  461. g,a=f[h]||a,k=f[d]||k,l=f.dashStyle||l,b=w(f.opacity,b));h={fill:g,stroke:a,"stroke-width":k,opacity:b};l&&(h.dashstyle=l);return h},drawPoints:function(){var f=this,m=this.chart,n=f.options,l=m.renderer,h=n.animationLimit||250,d;f.points.forEach(function(g){var a=g.graphic,k=!!a,b=a&&m.pointCount<h?"animate":"attr";if(p(g.plotY)&&null!==g.y){d=g.shapeArgs;a&&g.hasNewShapeType()&&(a=a.destroy());f.enabledDataSorting&&(g.startXPos=f.xAxis.reversed?-(d?d.width:0):f.xAxis.width);a||(g.graphic=a=l[g.shapeType](d).add(g.group||
  462. f.group))&&f.enabledDataSorting&&m.hasRendered&&m.pointCount<h&&(a.attr({x:g.startXPos}),k=!0,b="animate");if(a&&k)a[b](I(d));if(n.borderRadius)a[b]({r:n.borderRadius});m.styledMode||a[b](f.pointAttribs(g,g.selected&&"select")).shadow(!1!==g.allowShadow&&n.shadow,null,n.stacking&&!n.borderRadius);a.addClass(g.getClassName(),!0)}else a&&(g.graphic=a.destroy())})},animate:function(f){var m=this,n=this.yAxis,l=m.options,h=this.chart.inverted,d={},g=h?"translateX":"translateY";if(f)d.scaleY=.001,f=E(n.toPixels(l.threshold),
  463. n.pos,n.pos+n.len),h?d.translateX=f-n.len:d.translateY=f,m.clipBox&&m.setClip(),m.group.attr(d);else{var a=m.group.attr(g);m.group.animate({scaleY:1},x(B(m.options.animation),{step:function(k,b){m.group&&(d[g]=a+b.pos*(n.pos-a),m.group.attr(d))}}))}},remove:function(){var f=this,m=f.chart;m.hasRendered&&m.series.forEach(function(m){m.type===f.type&&(m.isDirty=!0)});H.prototype.remove.apply(f,arguments)}});""});M(v,"Series/BarSeries.js",[v["Core/Utilities.js"]],function(r){r=r.seriesType;r("bar","column",
  464. null,{inverted:!0});""});M(v,"Series/ScatterSeries.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.addEvent;f=f.seriesType;var C=r.Series;f("scatter","line",{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">\u25cf</span> <span style="font-size: 10px"> {series.name}</span><br/>',pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}},{sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group",
  465. "markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,drawGraph:function(){this.options.lineWidth&&C.prototype.drawGraph.call(this)},applyJitter:function(){var f=this,r=this.options.jitter,v=this.points.length;r&&this.points.forEach(function(z,x){["x","y"].forEach(function(p,I){var w="plot"+p.toUpperCase();if(r[p]&&!z.isNull){var J=f[p+"Axis"];var H=r[p]*J.transA;if(J&&!J.isLog){var u=Math.max(0,z[w]-H);J=Math.min(J.len,z[w]+H);I=1E4*Math.sin(x+I*v);z[w]=u+(J-u)*(I-Math.floor(I));"x"===p&&(z.clientX=
  466. z.plotX)}}})})}});v(C,"afterTranslate",function(){this.applyJitter&&this.applyJitter()});""});M(v,"Mixins/CenteredSeries.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.isNumber,C=f.pick,z=f.relativeLength,B=r.deg2rad;return r.CenteredSeriesMixin={getCenter:function(){var f=this.options,v=this.chart,x=2*(f.slicedOffset||0),p=v.plotWidth-2*x,I=v.plotHeight-2*x,w=f.center,J=Math.min(p,I),H=f.size,u=f.innerSize||0;"string"===typeof H&&(H=parseFloat(H));"string"===typeof u&&(u=
  467. parseFloat(u));f=[C(w[0],"50%"),C(w[1],"50%"),C(H&&0>H?void 0:f.size,"100%"),C(u&&0>u?void 0:f.innerSize||0,"0%")];!v.angular||this instanceof r.Series||(f[3]=0);for(w=0;4>w;++w)H=f[w],v=2>w||2===w&&/%$/.test(H),f[w]=z(H,[p,I,J,f[2]][w])+(v?x:0);f[3]>f[2]&&(f[3]=f[2]);return f},getStartAndEndRadians:function(f,r){f=v(f)?f:0;r=v(r)&&r>f&&360>r-f?r:f+360;return{start:B*(f+-90),end:B*(r+-90)}}}});M(v,"Series/PieSeries.js",[v["Core/Globals.js"],v["Core/Renderer/SVG/SVGRenderer.js"],v["Mixins/LegendSymbol.js"],
  468. v["Core/Series/Point.js"],v["Core/Utilities.js"],v["Mixins/CenteredSeries.js"]],function(r,f,v,C,z,B){var E=z.addEvent,D=z.clamp,x=z.defined,p=z.fireEvent,I=z.isNumber,w=z.merge,J=z.pick,H=z.relativeLength,u=z.seriesType,m=z.setAnimation,n=B.getStartAndEndRadians;z=r.noop;var l=r.Series;u("pie","line",{center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{allowOverlap:!0,connectorPadding:5,connectorShape:"fixedOffset",crookDistance:"70%",distance:30,enabled:!0,formatter:function(){return this.point.isNull?
  469. void 0:this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}},{isCartesian:!1,requireSorting:!1,directTouch:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttribs:r.seriesTypes.column.prototype.pointAttribs,animate:function(h){var d=
  470. this,g=d.points,a=d.startAngleRad;h||g.forEach(function(g){var b=g.graphic,k=g.shapeArgs;b&&k&&(b.attr({r:J(g.startR,d.center&&d.center[3]/2),start:a,end:a}),b.animate({r:k.r,start:k.start,end:k.end},d.options.animation))})},hasData:function(){return!!this.processedXData.length},updateTotals:function(){var h,d=0,g=this.points,a=g.length,k=this.options.ignoreHiddenPoint;for(h=0;h<a;h++){var b=g[h];d+=k&&!b.visible?0:b.isNull?0:b.y}this.total=d;for(h=0;h<a;h++)b=g[h],b.percentage=0<d&&(b.visible||!k)?
  471. b.y/d*100:0,b.total=d},generatePoints:function(){l.prototype.generatePoints.call(this);this.updateTotals()},getX:function(h,d,g){var a=this.center,k=this.radii?this.radii[g.index]:a[2]/2;h=Math.asin(D((h-a[1])/(k+g.labelDistance),-1,1));return a[0]+(d?-1:1)*Math.cos(h)*(k+g.labelDistance)+(0<g.labelDistance?(d?-1:1)*this.options.dataLabels.padding:0)},translate:function(h){this.generatePoints();var d=0,g=this.options,a=g.slicedOffset,k=a+(g.borderWidth||0),b=n(g.startAngle,g.endAngle),l=this.startAngleRad=
  472. b.start;b=(this.endAngleRad=b.end)-l;var f=this.points,m=g.dataLabels.distance;g=g.ignoreHiddenPoint;var u,t=f.length;h||(this.center=h=this.getCenter());for(u=0;u<t;u++){var A=f[u];var r=l+d*b;if(!g||A.visible)d+=A.percentage/100;var w=l+d*b;A.shapeType="arc";A.shapeArgs={x:h[0],y:h[1],r:h[2]/2,innerR:h[3]/2,start:Math.round(1E3*r)/1E3,end:Math.round(1E3*w)/1E3};A.labelDistance=J(A.options.dataLabels&&A.options.dataLabels.distance,m);A.labelDistance=H(A.labelDistance,A.shapeArgs.r);this.maxLabelDistance=
  473. Math.max(this.maxLabelDistance||0,A.labelDistance);w=(w+r)/2;w>1.5*Math.PI?w-=2*Math.PI:w<-Math.PI/2&&(w+=2*Math.PI);A.slicedTranslation={translateX:Math.round(Math.cos(w)*a),translateY:Math.round(Math.sin(w)*a)};var c=Math.cos(w)*h[2]/2;var e=Math.sin(w)*h[2]/2;A.tooltipPos=[h[0]+.7*c,h[1]+.7*e];A.half=w<-Math.PI/2||w>Math.PI/2?1:0;A.angle=w;r=Math.min(k,A.labelDistance/5);A.labelPosition={natural:{x:h[0]+c+Math.cos(w)*A.labelDistance,y:h[1]+e+Math.sin(w)*A.labelDistance},"final":{},alignment:0>
  474. A.labelDistance?"center":A.half?"right":"left",connectorPosition:{breakAt:{x:h[0]+c+Math.cos(w)*r,y:h[1]+e+Math.sin(w)*r},touchingSliceAt:{x:h[0]+c,y:h[1]+e}}}}p(this,"afterTranslate")},drawEmpty:function(){var h=this.startAngleRad,d=this.endAngleRad,g=this.options;if(0===this.total&&this.center){var a=this.center[0];var k=this.center[1];this.graph||(this.graph=this.chart.renderer.arc(a,k,this.center[1]/2,0,h,d).addClass("highcharts-empty-series").add(this.group));this.graph.attr({d:f.prototype.symbols.arc(a,
  475. k,this.center[2]/2,0,{start:h,end:d,innerR:this.center[3]/2})});this.chart.styledMode||this.graph.attr({"stroke-width":g.borderWidth,fill:g.fillColor||"none",stroke:g.color||"#cccccc"})}else this.graph&&(this.graph=this.graph.destroy())},redrawPoints:function(){var h=this,d=h.chart,g=d.renderer,a,k,b,l,f=h.options.shadow;this.drawEmpty();!f||h.shadowGroup||d.styledMode||(h.shadowGroup=g.g("shadow").attr({zIndex:-1}).add(h.group));h.points.forEach(function(m){var n={};k=m.graphic;if(!m.isNull&&k){l=
  476. m.shapeArgs;a=m.getTranslate();if(!d.styledMode){var t=m.shadowGroup;f&&!t&&(t=m.shadowGroup=g.g("shadow").add(h.shadowGroup));t&&t.attr(a);b=h.pointAttribs(m,m.selected&&"select")}m.delayedRendering?(k.setRadialReference(h.center).attr(l).attr(a),d.styledMode||k.attr(b).attr({"stroke-linejoin":"round"}).shadow(f,t),m.delayedRendering=!1):(k.setRadialReference(h.center),d.styledMode||w(!0,n,b),w(!0,n,l,a),k.animate(n));k.attr({visibility:m.visible?"inherit":"hidden"});k.addClass(m.getClassName())}else k&&
  477. (m.graphic=k.destroy())})},drawPoints:function(){var h=this.chart.renderer;this.points.forEach(function(d){d.graphic&&d.hasNewShapeType()&&(d.graphic=d.graphic.destroy());d.graphic||(d.graphic=h[d.shapeType](d.shapeArgs).add(d.series.group),d.delayedRendering=!0)})},searchPoint:z,sortByAngle:function(h,d){h.sort(function(g,a){return"undefined"!==typeof g.angle&&(a.angle-g.angle)*d})},drawLegendSymbol:v.drawRectangle,getCenter:B.getCenter,getSymbol:z,drawGraph:null},{init:function(){C.prototype.init.apply(this,
  478. arguments);var h=this;h.name=J(h.name,"Slice");var d=function(d){h.slice("select"===d.type)};E(h,"select",d);E(h,"unselect",d);return h},isValid:function(){return I(this.y)&&0<=this.y},setVisible:function(h,d){var g=this,a=g.series,k=a.chart,b=a.options.ignoreHiddenPoint;d=J(d,b);h!==g.visible&&(g.visible=g.options.visible=h="undefined"===typeof h?!g.visible:h,a.options.data[a.data.indexOf(g)]=g.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(b){if(g[b])g[b][h?"show":"hide"](!0)}),
  479. g.legendItem&&k.legend.colorizeItem(g,h),h||"hover"!==g.state||g.setState(""),b&&(a.isDirty=!0),d&&k.redraw())},slice:function(h,d,g){var a=this.series;m(g,a.chart);J(d,!0);this.sliced=this.options.sliced=x(h)?h:!this.sliced;a.options.data[a.data.indexOf(this)]=this.options;this.graphic&&this.graphic.animate(this.getTranslate());this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())},getTranslate:function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}},haloPath:function(h){var d=
  480. this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(d.x,d.y,d.r+h,d.r+h,{innerR:d.r-1,start:d.start,end:d.end})},connectorShapes:{fixedOffset:function(h,d,g){var a=d.breakAt;d=d.touchingSliceAt;return[["M",h.x,h.y],g.softConnector?["C",h.x+("left"===h.alignment?-5:5),h.y,2*a.x-d.x,2*a.y-d.y,a.x,a.y]:["L",a.x,a.y],["L",d.x,d.y]]},straight:function(h,d){d=d.touchingSliceAt;return[["M",h.x,h.y],["L",d.x,d.y]]},crookedLine:function(h,d,g){d=d.touchingSliceAt;var a=
  481. this.series,k=a.center[0],b=a.chart.plotWidth,l=a.chart.plotLeft;a=h.alignment;var f=this.shapeArgs.r;g=H(g.crookDistance,1);b="left"===a?k+f+(b+l-k-f)*(1-g):l+(k-f)*g;g=["L",b,h.y];k=!0;if("left"===a?b>h.x||b<d.x:b<h.x||b>d.x)k=!1;h=[["M",h.x,h.y]];k&&h.push(g);h.push(["L",d.x,d.y]);return h}},getConnectorPath:function(){var h=this.labelPosition,d=this.series.options.dataLabels,g=d.connectorShape,a=this.connectorShapes;a[g]&&(g=a[g]);return g.call(this,{x:h.final.x,y:h.final.y,alignment:h.alignment},
  482. h.connectorPosition,d)}});""});M(v,"Core/Series/DataLabels.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=r.noop,C=r.seriesTypes,z=f.arrayMax,B=f.clamp,E=f.defined,D=f.extend,x=f.fireEvent,p=f.format,I=f.getDeferredAnimation,w=f.isArray,J=f.merge,H=f.objectEach,u=f.pick,m=f.relativeLength,n=f.splat,l=f.stableSort,h=r.Series;r.distribute=function(d,g,a){function k(b,a){return b.target-a.target}var b,h=!0,f=d,m=[];var n=0;var t=f.reducedLen||g;for(b=d.length;b--;)n+=d[b].size;
  483. if(n>t){l(d,function(b,a){return(a.rank||0)-(b.rank||0)});for(n=b=0;n<=t;)n+=d[b].size,b++;m=d.splice(b-1,d.length)}l(d,k);for(d=d.map(function(b){return{size:b.size,targets:[b.target],align:u(b.align,.5)}});h;){for(b=d.length;b--;)h=d[b],n=(Math.min.apply(0,h.targets)+Math.max.apply(0,h.targets))/2,h.pos=B(n-h.size*h.align,0,g-h.size);b=d.length;for(h=!1;b--;)0<b&&d[b-1].pos+d[b-1].size>d[b].pos&&(d[b-1].size+=d[b].size,d[b-1].targets=d[b-1].targets.concat(d[b].targets),d[b-1].align=.5,d[b-1].pos+
  484. d[b-1].size>g&&(d[b-1].pos=g-d[b-1].size),d.splice(b,1),h=!0)}f.push.apply(f,m);b=0;d.some(function(d){var k=0;if(d.targets.some(function(){f[b].pos=d.pos+k;if("undefined"!==typeof a&&Math.abs(f[b].pos-f[b].target)>a)return f.slice(0,b+1).forEach(function(b){delete b.pos}),f.reducedLen=(f.reducedLen||g)-.1*g,f.reducedLen>.1*g&&r.distribute(f,g,a),!0;k+=f[b].size;b++}))return!0});l(f,k)};h.prototype.drawDataLabels=function(){function d(b,c){var e=c.filter;return e?(c=e.operator,b=b[e.property],e=e.value,
  485. ">"===c&&b>e||"<"===c&&b<e||">="===c&&b>=e||"<="===c&&b<=e||"=="===c&&b==e||"==="===c&&b===e?!0:!1):!0}function g(b,c){var e=[],a;if(w(b)&&!w(c))e=b.map(function(e){return J(e,c)});else if(w(c)&&!w(b))e=c.map(function(c){return J(b,c)});else if(w(b)||w(c))for(a=Math.max(b.length,c.length);a--;)e[a]=J(b[a],c[a]);else e=J(b,c);return e}var a=this,k=a.chart,b=a.options,h=b.dataLabels,l=a.points,f,m=a.hasRendered||0,t=h.animation;t=h.defer?I(k,t,a):{defer:0,duration:0};var A=k.renderer;h=g(g(k.options.plotOptions&&
  486. k.options.plotOptions.series&&k.options.plotOptions.series.dataLabels,k.options.plotOptions&&k.options.plotOptions[a.type]&&k.options.plotOptions[a.type].dataLabels),h);x(this,"drawDataLabels");if(w(h)||h.enabled||a._hasPointLabels){var r=a.plotGroup("dataLabelsGroup","data-labels",m?"inherit":"hidden",h.zIndex||6);r.attr({opacity:+m});!m&&(m=a.dataLabelsGroup)&&(a.visible&&r.show(!0),m[b.animation?"animate":"attr"]({opacity:1},t));l.forEach(function(t){f=n(g(h,t.dlOptions||t.options&&t.options.dataLabels));
  487. f.forEach(function(c,e){var g=c.enabled&&(!t.isNull||t.dataLabelOnNull)&&d(t,c),h=t.dataLabels?t.dataLabels[e]:t.dataLabel,l=t.connectors?t.connectors[e]:t.connector,f=u(c.distance,t.labelDistance),m=!h;if(g){var n=t.getLabelConfig();var y=u(c[t.formatPrefix+"Format"],c.format);n=E(y)?p(y,n,k):(c[t.formatPrefix+"Formatter"]||c.formatter).call(n,c);y=c.style;var w=c.rotation;k.styledMode||(y.color=u(c.color,y.color,a.color,"#000000"),"contrast"===y.color?(t.contrastColor=A.getContrast(t.color||a.color),
  488. y.color=!E(f)&&c.inside||0>f||b.stacking?t.contrastColor:"#000000"):delete t.contrastColor,b.cursor&&(y.cursor=b.cursor));var F={r:c.borderRadius||0,rotation:w,padding:c.padding,zIndex:1};k.styledMode||(F.fill=c.backgroundColor,F.stroke=c.borderColor,F["stroke-width"]=c.borderWidth);H(F,function(c,e){"undefined"===typeof c&&delete F[e]})}!h||g&&E(n)?g&&E(n)&&(h?F.text=n:(t.dataLabels=t.dataLabels||[],h=t.dataLabels[e]=w?A.text(n,0,-9999,c.useHTML).addClass("highcharts-data-label"):A.label(n,0,-9999,
  489. c.shape,null,null,c.useHTML,null,"data-label"),e||(t.dataLabel=h),h.addClass(" highcharts-data-label-color-"+t.colorIndex+" "+(c.className||"")+(c.useHTML?" highcharts-tracker":""))),h.options=c,h.attr(F),k.styledMode||h.css(y).shadow(c.shadow),h.added||h.add(r),c.textPath&&!c.useHTML&&(h.setTextPath(t.getDataLabelPath&&t.getDataLabelPath(h)||t.graphic,c.textPath),t.dataLabelPath&&!c.textPath.enabled&&(t.dataLabelPath=t.dataLabelPath.destroy())),a.alignDataLabel(t,h,c,null,m)):(t.dataLabel=t.dataLabel&&
  490. t.dataLabel.destroy(),t.dataLabels&&(1===t.dataLabels.length?delete t.dataLabels:delete t.dataLabels[e]),e||delete t.dataLabel,l&&(t.connector=t.connector.destroy(),t.connectors&&(1===t.connectors.length?delete t.connectors:delete t.connectors[e])))})})}x(this,"afterDrawDataLabels")};h.prototype.alignDataLabel=function(d,g,a,k,b){var h=this,l=this.chart,f=this.isCartesian&&l.inverted,m=this.enabledDataSorting,t=u(d.dlBox&&d.dlBox.centerX,d.plotX,-9999),n=u(d.plotY,-9999),p=g.getBBox(),r=a.rotation,
  491. c=a.align,e=l.isInsidePlot(t,Math.round(n),f),q="justify"===u(a.overflow,m?"none":"justify"),w=this.visible&&!1!==d.visible&&(d.series.forceDL||m&&!q||e||a.inside&&k&&l.isInsidePlot(t,f?k.x+1:k.y+k.height-1,f));var v=function(c){m&&h.xAxis&&!q&&h.setDataLabelStartPos(d,g,b,e,c)};if(w){var x=l.renderer.fontMetrics(l.styledMode?void 0:a.style.fontSize,g).b;k=D({x:f?this.yAxis.len-n:t,y:Math.round(f?this.xAxis.len-t:n),width:0,height:0},k);D(a,{width:p.width,height:p.height});r?(q=!1,t=l.renderer.rotCorr(x,
  492. r),t={x:k.x+(a.x||0)+k.width/2+t.x,y:k.y+(a.y||0)+{top:0,middle:.5,bottom:1}[a.verticalAlign]*k.height},v(t),g[b?"attr":"animate"](t).attr({align:c}),v=(r+720)%360,v=180<v&&360>v,"left"===c?t.y-=v?p.height:0:"center"===c?(t.x-=p.width/2,t.y-=p.height/2):"right"===c&&(t.x-=p.width,t.y-=v?0:p.height),g.placed=!0,g.alignAttr=t):(v(k),g.align(a,null,k),t=g.alignAttr);q&&0<=k.height?this.justifyDataLabel(g,a,t,p,k,b):u(a.crop,!0)&&(w=l.isInsidePlot(t.x,t.y)&&l.isInsidePlot(t.x+p.width,t.y+p.height));if(a.shape&&
  493. !r)g[b?"attr":"animate"]({anchorX:f?l.plotWidth-d.plotY:d.plotX,anchorY:f?l.plotHeight-d.plotX:d.plotY})}b&&m&&(g.placed=!1);w||m&&!q||(g.hide(!0),g.placed=!1)};h.prototype.setDataLabelStartPos=function(d,g,a,k,b){var h=this.chart,l=h.inverted,f=this.xAxis,m=f.reversed,t=l?g.height/2:g.width/2;d=(d=d.pointWidth)?d/2:0;f=l?b.x:m?-t-d:f.width-t+d;b=l?m?this.yAxis.height-t+d:-t-d:b.y;g.startXPos=f;g.startYPos=b;k?"hidden"===g.visibility&&(g.show(),g.attr({opacity:0}).animate({opacity:1})):g.attr({opacity:1}).animate({opacity:0},
  494. void 0,g.hide);h.hasRendered&&(a&&g.attr({x:g.startXPos,y:g.startYPos}),g.placed=!0)};h.prototype.justifyDataLabel=function(d,g,a,k,b,h){var l=this.chart,f=g.align,m=g.verticalAlign,t=d.box?0:d.padding||0,n=g.x;n=void 0===n?0:n;var u=g.y;var p=void 0===u?0:u;u=a.x+t;if(0>u){"right"===f&&0<=n?(g.align="left",g.inside=!0):n-=u;var c=!0}u=a.x+k.width-t;u>l.plotWidth&&("left"===f&&0>=n?(g.align="right",g.inside=!0):n+=l.plotWidth-u,c=!0);u=a.y+t;0>u&&("bottom"===m&&0<=p?(g.verticalAlign="top",g.inside=
  495. !0):p-=u,c=!0);u=a.y+k.height-t;u>l.plotHeight&&("top"===m&&0>=p?(g.verticalAlign="bottom",g.inside=!0):p+=l.plotHeight-u,c=!0);c&&(g.x=n,g.y=p,d.placed=!h,d.align(g,void 0,b));return c};C.pie&&(C.pie.prototype.dataLabelPositioners={radialDistributionY:function(d){return d.top+d.distributeBox.pos},radialDistributionX:function(d,g,a,k){return d.getX(a<g.top+2||a>g.bottom-2?k:a,g.half,g)},justify:function(d,g,a){return a[0]+(d.half?-1:1)*(g+d.labelDistance)},alignToPlotEdges:function(d,g,a,k){d=d.getBBox().width;
  496. return g?d+k:a-d-k},alignToConnectors:function(d,g,a,k){var b=0,h;d.forEach(function(a){h=a.dataLabel.getBBox().width;h>b&&(b=h)});return g?b+k:a-b-k}},C.pie.prototype.drawDataLabels=function(){var d=this,g=d.data,a,k=d.chart,b=d.options.dataLabels||{},l=b.connectorPadding,f,m=k.plotWidth,n=k.plotHeight,t=k.plotLeft,A=Math.round(k.chartWidth/3),p,w=d.center,c=w[2]/2,e=w[1],q,v,x,H,I=[[],[]],C,D,B,Q,M=[0,0,0,0],S=d.dataLabelPositioners,W;d.visible&&(b.enabled||d._hasPointLabels)&&(g.forEach(function(c){c.dataLabel&&
  497. c.visible&&c.dataLabel.shortened&&(c.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),c.dataLabel.shortened=!1)}),h.prototype.drawDataLabels.apply(d),g.forEach(function(c){c.dataLabel&&(c.visible?(I[c.half].push(c),c.dataLabel._pos=null,!E(b.style.width)&&!E(c.options.dataLabels&&c.options.dataLabels.style&&c.options.dataLabels.style.width)&&c.dataLabel.getBBox().width>A&&(c.dataLabel.css({width:Math.round(.7*A)+"px"}),c.dataLabel.shortened=!0)):(c.dataLabel=c.dataLabel.destroy(),
  498. c.dataLabels&&1===c.dataLabels.length&&delete c.dataLabels))}),I.forEach(function(g,h){var f=g.length,A=[],p;if(f){d.sortByAngle(g,h-.5);if(0<d.maxLabelDistance){var y=Math.max(0,e-c-d.maxLabelDistance);var F=Math.min(e+c+d.maxLabelDistance,k.plotHeight);g.forEach(function(b){0<b.labelDistance&&b.dataLabel&&(b.top=Math.max(0,e-c-b.labelDistance),b.bottom=Math.min(e+c+b.labelDistance,k.plotHeight),p=b.dataLabel.getBBox().height||21,b.distributeBox={target:b.labelPosition.natural.y-b.top+p/2,size:p,
  499. rank:b.y},A.push(b.distributeBox))});y=F+p-y;r.distribute(A,y,y/5)}for(Q=0;Q<f;Q++){a=g[Q];x=a.labelPosition;q=a.dataLabel;B=!1===a.visible?"hidden":"inherit";D=y=x.natural.y;A&&E(a.distributeBox)&&("undefined"===typeof a.distributeBox.pos?B="hidden":(H=a.distributeBox.size,D=S.radialDistributionY(a)));delete a.positionIndex;if(b.justify)C=S.justify(a,c,w);else switch(b.alignTo){case "connectors":C=S.alignToConnectors(g,h,m,t);break;case "plotEdges":C=S.alignToPlotEdges(q,h,m,t);break;default:C=S.radialDistributionX(d,
  500. a,D,y)}q._attr={visibility:B,align:x.alignment};W=a.options.dataLabels||{};q._pos={x:C+u(W.x,b.x)+({left:l,right:-l}[x.alignment]||0),y:D+u(W.y,b.y)-10};x.final.x=C;x.final.y=D;u(b.crop,!0)&&(v=q.getBBox().width,y=null,C-v<l&&1===h?(y=Math.round(v-C+l),M[3]=Math.max(y,M[3])):C+v>m-l&&0===h&&(y=Math.round(C+v-m+l),M[1]=Math.max(y,M[1])),0>D-H/2?M[0]=Math.max(Math.round(-D+H/2),M[0]):D+H/2>n&&(M[2]=Math.max(Math.round(D+H/2-n),M[2])),q.sideOverflow=y)}}}),0===z(M)||this.verifyDataLabelOverflow(M))&&
  501. (this.placeDataLabels(),this.points.forEach(function(c){W=J(b,c.options.dataLabels);if(f=u(W.connectorWidth,1)){var e;p=c.connector;if((q=c.dataLabel)&&q._pos&&c.visible&&0<c.labelDistance){B=q._attr.visibility;if(e=!p)c.connector=p=k.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+c.colorIndex+(c.className?" "+c.className:"")).add(d.dataLabelsGroup),k.styledMode||p.attr({"stroke-width":f,stroke:W.connectorColor||c.color||"#666666"});p[e?"attr":"animate"]({d:c.getConnectorPath()});
  502. p.attr("visibility",B)}else p&&(c.connector=p.destroy())}}))},C.pie.prototype.placeDataLabels=function(){this.points.forEach(function(d){var g=d.dataLabel,a;g&&d.visible&&((a=g._pos)?(g.sideOverflow&&(g._attr.width=Math.max(g.getBBox().width-g.sideOverflow,0),g.css({width:g._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),g.shortened=!0),g.attr(g._attr),g[g.moved?"animate":"attr"](a),g.moved=!0):g&&g.attr({y:-9999}));delete d.distributeBox},this)},C.pie.prototype.alignDataLabel=
  503. v,C.pie.prototype.verifyDataLabelOverflow=function(d){var g=this.center,a=this.options,k=a.center,b=a.minSize||80,h=null!==a.size;if(!h){if(null!==k[0])var l=Math.max(g[2]-Math.max(d[1],d[3]),b);else l=Math.max(g[2]-d[1]-d[3],b),g[0]+=(d[3]-d[1])/2;null!==k[1]?l=B(l,b,g[2]-Math.max(d[0],d[2])):(l=B(l,b,g[2]-d[0]-d[2]),g[1]+=(d[0]-d[2])/2);l<g[2]?(g[2]=l,g[3]=Math.min(m(a.innerSize||0,l),l),this.translate(g),this.drawDataLabels&&this.drawDataLabels()):h=!0}return h});C.column&&(C.column.prototype.alignDataLabel=
  504. function(d,g,a,k,b){var l=this.chart.inverted,f=d.series,m=d.dlBox||d.shapeArgs,n=u(d.below,d.plotY>u(this.translatedThreshold,f.yAxis.len)),t=u(a.inside,!!this.options.stacking);m&&(k=J(m),0>k.y&&(k.height+=k.y,k.y=0),m=k.y+k.height-f.yAxis.len,0<m&&m<k.height&&(k.height-=m),l&&(k={x:f.yAxis.len-k.y-k.height,y:f.xAxis.len-k.x-k.width,width:k.height,height:k.width}),t||(l?(k.x+=n?0:k.width,k.width=0):(k.y+=n?k.height:0,k.height=0)));a.align=u(a.align,!l||t?"center":n?"right":"left");a.verticalAlign=
  505. u(a.verticalAlign,l||t?"middle":n?"top":"bottom");h.prototype.alignDataLabel.call(this,d,g,a,k,b);a.inside&&d.contrastColor&&g.css({color:d.contrastColor})})});M(v,"Extensions/OverlappingDataLabels.js",[v["Core/Chart/Chart.js"],v["Core/Utilities.js"]],function(r,f){var v=f.addEvent,C=f.fireEvent,z=f.isArray,B=f.isNumber,E=f.objectEach,D=f.pick;v(r,"render",function(){var f=[];(this.labelCollectors||[]).forEach(function(p){f=f.concat(p())});(this.yAxis||[]).forEach(function(p){p.stacking&&p.options.stackLabels&&
  506. !p.options.stackLabels.allowOverlap&&E(p.stacking.stacks,function(p){E(p,function(p){f.push(p.label)})})});(this.series||[]).forEach(function(p){var r=p.options.dataLabels;p.visible&&(!1!==r.enabled||p._hasPointLabels)&&(p.nodes||p.points).forEach(function(p){p.visible&&(z(p.dataLabels)?p.dataLabels:p.dataLabel?[p.dataLabel]:[]).forEach(function(r){var w=r.options;r.labelrank=D(w.labelrank,p.labelrank,p.shapeArgs&&p.shapeArgs.height);w.allowOverlap||f.push(r)})})});this.hideOverlappingLabels(f)});
  507. r.prototype.hideOverlappingLabels=function(f){var p=this,r=f.length,w=p.renderer,v,x,u,m=!1;var n=function(d){var g,a=d.box?0:d.padding||0,k=g=0,b;if(d&&(!d.alignAttr||d.placed)){var h=d.alignAttr||{x:d.attr("x"),y:d.attr("y")};var l=d.parentGroup;d.width||(g=d.getBBox(),d.width=g.width,d.height=g.height,g=w.fontMetrics(null,d.element).h);var f=d.width-2*a;(b={left:"0",center:"0.5",right:"1"}[d.alignValue])?k=+b*f:B(d.x)&&Math.round(d.x)!==d.translateX&&(k=d.x-d.translateX);return{x:h.x+(l.translateX||
  508. 0)+a-(k||0),y:h.y+(l.translateY||0)+a-g,width:d.width-2*a,height:d.height-2*a}}};for(x=0;x<r;x++)if(v=f[x])v.oldOpacity=v.opacity,v.newOpacity=1,v.absoluteBox=n(v);f.sort(function(d,g){return(g.labelrank||0)-(d.labelrank||0)});for(x=0;x<r;x++){var l=(n=f[x])&&n.absoluteBox;for(v=x+1;v<r;++v){var h=(u=f[v])&&u.absoluteBox;!l||!h||n===u||0===n.newOpacity||0===u.newOpacity||h.x>=l.x+l.width||h.x+h.width<=l.x||h.y>=l.y+l.height||h.y+h.height<=l.y||((n.labelrank<u.labelrank?n:u).newOpacity=0)}}f.forEach(function(d){if(d){var g=
  509. d.newOpacity;d.oldOpacity!==g&&(d.alignAttr&&d.placed?(d[g?"removeClass":"addClass"]("highcharts-data-label-hidden"),m=!0,d.alignAttr.opacity=g,d[d.isOld?"animate":"attr"](d.alignAttr,null,function(){p.styledMode||d.css({pointerEvents:g?"auto":"none"});d.visibility=g?"inherit":"hidden"}),C(p,"afterHideOverlappingLabel")):d.attr({opacity:g}));d.isOld=!0}});m&&C(p,"afterHideAllOverlappingLabels")}});M(v,"Core/Interaction.js",[v["Core/Chart/Chart.js"],v["Core/Globals.js"],v["Core/Legend.js"],v["Core/Options.js"],
  510. v["Core/Series/Point.js"],v["Core/Utilities.js"]],function(r,f,v,C,z,B){var E=C.defaultOptions,D=B.addEvent,x=B.createElement,p=B.css,I=B.defined,w=B.extend,J=B.fireEvent,H=B.isArray,u=B.isFunction,m=B.isNumber,n=B.isObject,l=B.merge,h=B.objectEach,d=B.pick,g=f.hasTouch;C=f.Series;B=f.seriesTypes;var a=f.svg;var k=f.TrackerMixin={drawTrackerPoint:function(){var b=this,a=b.chart,d=a.pointer,k=function(b){var a=d.getPointFromEvent(b);"undefined"!==typeof a&&(d.isDirectTouch=!0,a.onMouseOver(b))},h;
  511. b.points.forEach(function(b){h=H(b.dataLabels)?b.dataLabels:b.dataLabel?[b.dataLabel]:[];b.graphic&&(b.graphic.element.point=b);h.forEach(function(a){a.div?a.div.point=b:a.element.point=b})});b._hasTracking||(b.trackerGroups.forEach(function(h){if(b[h]){b[h].addClass("highcharts-tracker").on("mouseover",k).on("mouseout",function(b){d.onTrackerMouseOut(b)});if(g)b[h].on("touchstart",k);!a.styledMode&&b.options.cursor&&b[h].css(p).css({cursor:b.options.cursor})}}),b._hasTracking=!0);J(this,"afterDrawTracker")},
  512. drawTrackerGraph:function(){var b=this,d=b.options,k=d.trackByArea,h=[].concat(k?b.areaPath:b.graphPath),l=b.chart,t=l.pointer,f=l.renderer,m=l.options.tooltip.snap,n=b.tracker,c=function(c){if(l.hoverSeries!==b)b.onMouseOver()},e="rgba(192,192,192,"+(a?.0001:.002)+")";n?n.attr({d:h}):b.graph&&(b.tracker=f.path(h).attr({visibility:b.visible?"visible":"hidden",zIndex:2}).addClass(k?"highcharts-tracker-area":"highcharts-tracker-line").add(b.group),l.styledMode||b.tracker.attr({"stroke-linecap":"round",
  513. "stroke-linejoin":"round",stroke:e,fill:k?e:"none","stroke-width":b.graph.strokeWidth()+(k?0:2*m)}),[b.tracker,b.markerGroup].forEach(function(e){e.addClass("highcharts-tracker").on("mouseover",c).on("mouseout",function(c){t.onTrackerMouseOut(c)});d.cursor&&!l.styledMode&&e.css({cursor:d.cursor});if(g)e.on("touchstart",c)}));J(this,"afterDrawTracker")}};B.column&&(B.column.prototype.drawTracker=k.drawTrackerPoint);B.pie&&(B.pie.prototype.drawTracker=k.drawTrackerPoint);B.scatter&&(B.scatter.prototype.drawTracker=
  514. k.drawTrackerPoint);w(v.prototype,{setItemEvents:function(b,a,d){var g=this,k=g.chart.renderer.boxWrapper,h=b instanceof z,f="highcharts-legend-"+(h?"point":"series")+"-active",m=g.chart.styledMode;(d?[a,b.legendSymbol]:[b.legendGroup]).forEach(function(d){if(d)d.on("mouseover",function(){b.visible&&g.allItems.forEach(function(c){b!==c&&c.setState("inactive",!h)});b.setState("hover");b.visible&&k.addClass(f);m||a.css(g.options.itemHoverStyle)}).on("mouseout",function(){g.chart.styledMode||a.css(l(b.visible?
  515. g.itemStyle:g.itemHiddenStyle));g.allItems.forEach(function(c){b!==c&&c.setState("",!h)});k.removeClass(f);b.setState()}).on("click",function(c){var e=function(){b.setVisible&&b.setVisible();g.allItems.forEach(function(c){b!==c&&c.setState(b.visible?"inactive":"",!h)})};k.removeClass(f);c={browserEvent:c};b.firePointEvent?b.firePointEvent("legendItemClick",c,e):J(b,"legendItemClick",c,e)})})},createCheckboxForItem:function(b){b.checkbox=x("input",{type:"checkbox",className:"highcharts-legend-checkbox",
  516. checked:b.selected,defaultChecked:b.selected},this.options.itemCheckboxStyle,this.chart.container);D(b.checkbox,"click",function(a){J(b.series||b,"checkboxClick",{checked:a.target.checked,item:b},function(){b.select()})})}});w(r.prototype,{showResetZoom:function(){function b(){a.zoomOut()}var a=this,d=E.lang,g=a.options.chart.resetZoomButton,k=g.theme,h=k.states,l="chart"===g.relativeTo||"spaceBox"===g.relativeTo?null:"plotBox";J(this,"beforeShowResetZoom",null,function(){a.resetZoomButton=a.renderer.button(d.resetZoom,
  517. null,null,b,k,h&&h.hover).attr({align:g.position.align,title:d.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(g.position,!1,l)});J(this,"afterShowResetZoom")},zoomOut:function(){J(this,"selection",{resetSelection:!0},this.zoom)},zoom:function(b){var a=this,g,k=a.pointer,h=!1,l=a.inverted?k.mouseDownX:k.mouseDownY;!b||b.resetSelection?(a.axes.forEach(function(b){g=b.zoom()}),k.initiated=!1):b.xAxis.concat(b.yAxis).forEach(function(b){var d=b.axis,c=a.inverted?d.left:d.top,e=a.inverted?
  518. c+d.width:c+d.height,t=d.isXAxis,f=!1;if(!t&&l>=c&&l<=e||t||!I(l))f=!0;k[t?"zoomX":"zoomY"]&&f&&(g=d.zoom(b.min,b.max),d.displayBtn&&(h=!0))});var f=a.resetZoomButton;h&&!f?a.showResetZoom():!h&&n(f)&&(a.resetZoomButton=f.destroy());g&&a.redraw(d(a.options.chart.animation,b&&b.animation,100>a.pointCount))},pan:function(b,a){var d=this,g=d.hoverPoints,k=d.options.chart,h=d.options.mapNavigation&&d.options.mapNavigation.enabled,l;a="object"===typeof a?a:{enabled:a,type:"x"};k&&k.panning&&(k.panning=
  519. a);var n=a.type;J(this,"pan",{originalEvent:b},function(){g&&g.forEach(function(c){c.setState()});var a=[1];"xy"===n?a=[1,0]:"y"===n&&(a=[0]);a.forEach(function(c){var e=d[c?"xAxis":"yAxis"][0],a=e.horiz,g=b[a?"chartX":"chartY"];a=a?"mouseDownX":"mouseDownY";var k=d[a],t=(e.pointRange||0)/2,p=e.reversed&&!d.inverted||!e.reversed&&d.inverted?-1:1,u=e.getExtremes(),A=e.toValue(k-g,!0)+t*p;p=e.toValue(k+e.len-g,!0)-t*p;var y=p<A;k=y?p:A;A=y?A:p;var r=e.hasVerticalPanning(),w=e.panningState;e.series.forEach(function(e){if(r&&
  520. !c&&(!w||w.isDirty)){var b=e.getProcessedData(!0);e=e.getExtremes(b.yData,!0);w||(w={startMin:Number.MAX_VALUE,startMax:-Number.MAX_VALUE});m(e.dataMin)&&m(e.dataMax)&&(w.startMin=Math.min(e.dataMin,w.startMin),w.startMax=Math.max(e.dataMax,w.startMax))}});p=Math.min(f.pick(null===w||void 0===w?void 0:w.startMin,u.dataMin),t?u.min:e.toValue(e.toPixels(u.min)-e.minPixelPadding));t=Math.max(f.pick(null===w||void 0===w?void 0:w.startMax,u.dataMax),t?u.max:e.toValue(e.toPixels(u.max)+e.minPixelPadding));
  521. e.panningState=w;e.isOrdinal||(y=p-k,0<y&&(A+=y,k=p),y=A-t,0<y&&(A=t,k-=y),e.series.length&&k!==u.min&&A!==u.max&&k>=p&&A<=t&&(e.setExtremes(k,A,!1,!1,{trigger:"pan"}),d.resetZoomButton||h||k===p||A===t||!n.match("y")||(d.showResetZoom(),e.displayBtn=!1),l=!0),d[a]=g)});l&&d.redraw(!1);p(d.container,{cursor:"move"})})}});w(z.prototype,{select:function(b,a){var g=this,k=g.series,h=k.chart;this.selectedStaging=b=d(b,!g.selected);g.firePointEvent(b?"select":"unselect",{accumulate:a},function(){g.selected=
  522. g.options.selected=b;k.options.data[k.data.indexOf(g)]=g.options;g.setState(b&&"select");a||h.getSelectedPoints().forEach(function(b){var a=b.series;b.selected&&b!==g&&(b.selected=b.options.selected=!1,a.options.data[a.data.indexOf(b)]=b.options,b.setState(h.hoverPoints&&a.options.inactiveOtherPoints?"inactive":""),b.firePointEvent("unselect"))})});delete this.selectedStaging},onMouseOver:function(b){var a=this.series.chart,d=a.pointer;b=b?d.normalize(b):d.getChartCoordinatesFromPoint(this,a.inverted);
  523. d.runPointActions(b,this)},onMouseOut:function(){var b=this.series.chart;this.firePointEvent("mouseOut");this.series.options.inactiveOtherPoints||(b.hoverPoints||[]).forEach(function(b){b.setState()});b.hoverPoints=b.hoverPoint=null},importEvents:function(){if(!this.hasImportedEvents){var b=this,a=l(b.series.options.point,b.options).events;b.events=a;h(a,function(a,d){u(a)&&D(b,d,a)});this.hasImportedEvents=!0}},setState:function(b,a){var g=this.series,k=this.state,h=g.options.states[b||"normal"]||
  524. {},l=E.plotOptions[g.type].marker&&g.options.marker,f=l&&!1===l.enabled,m=l&&l.states&&l.states[b||"normal"]||{},n=!1===m.enabled,c=g.stateMarkerGraphic,e=this.marker||{},q=g.chart,p=g.halo,u,r=l&&g.markerAttribs;b=b||"";if(!(b===this.state&&!a||this.selected&&"select"!==b||!1===h.enabled||b&&(n||f&&!1===m.enabled)||b&&e.states&&e.states[b]&&!1===e.states[b].enabled)){this.state=b;r&&(u=g.markerAttribs(this,b));if(this.graphic){k&&this.graphic.removeClass("highcharts-point-"+k);b&&this.graphic.addClass("highcharts-point-"+
  525. b);if(!q.styledMode){var v=g.pointAttribs(this,b);var F=d(q.options.chart.animation,h.animation);g.options.inactiveOtherPoints&&v.opacity&&((this.dataLabels||[]).forEach(function(c){c&&c.animate({opacity:v.opacity},F)}),this.connector&&this.connector.animate({opacity:v.opacity},F));this.graphic.animate(v,F)}u&&this.graphic.animate(u,d(q.options.chart.animation,m.animation,l.animation));c&&c.hide()}else{if(b&&m){k=e.symbol||g.symbol;c&&c.currentSymbol!==k&&(c=c.destroy());if(u)if(c)c[a?"animate":"attr"]({x:u.x,
  526. y:u.y});else k&&(g.stateMarkerGraphic=c=q.renderer.symbol(k,u.x,u.y,u.width,u.height).add(g.markerGroup),c.currentSymbol=k);!q.styledMode&&c&&c.attr(g.pointAttribs(this,b))}c&&(c[b&&this.isInside?"show":"hide"](),c.element.point=this)}b=h.halo;h=(c=this.graphic||c)&&c.visibility||"inherit";b&&b.size&&c&&"hidden"!==h&&!this.isCluster?(p||(g.halo=p=q.renderer.path().add(c.parentGroup)),p.show()[a?"animate":"attr"]({d:this.haloPath(b.size)}),p.attr({"class":"highcharts-halo highcharts-color-"+d(this.colorIndex,
  527. g.colorIndex)+(this.className?" "+this.className:""),visibility:h,zIndex:-1}),p.point=this,q.styledMode||p.attr(w({fill:this.color||g.color,"fill-opacity":b.opacity},b.attributes))):p&&p.point&&p.point.haloPath&&p.animate({d:p.point.haloPath(0)},null,p.hide);J(this,"afterSetState")}},haloPath:function(b){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-b,this.plotY-b,2*b,2*b)}});w(C.prototype,{onMouseOver:function(){var b=this.chart,a=b.hoverSeries;b.pointer.setHoverChartIndex();
  528. if(a&&a!==this)a.onMouseOut();this.options.events.mouseOver&&J(this,"mouseOver");this.setState("hover");b.hoverSeries=this},onMouseOut:function(){var b=this.options,a=this.chart,d=a.tooltip,g=a.hoverPoint;a.hoverSeries=null;if(g)g.onMouseOut();this&&b.events.mouseOut&&J(this,"mouseOut");!d||this.stickyTracking||d.shared&&!this.noSharedTooltip||d.hide();a.series.forEach(function(b){b.setState("",!0)})},setState:function(b,a){var g=this,k=g.options,h=g.graph,l=k.inactiveOtherPoints,f=k.states,m=k.lineWidth,
  529. n=k.opacity,c=d(f[b||"normal"]&&f[b||"normal"].animation,g.chart.options.chart.animation);k=0;b=b||"";if(g.state!==b&&([g.group,g.markerGroup,g.dataLabelsGroup].forEach(function(c){c&&(g.state&&c.removeClass("highcharts-series-"+g.state),b&&c.addClass("highcharts-series-"+b))}),g.state=b,!g.chart.styledMode)){if(f[b]&&!1===f[b].enabled)return;b&&(m=f[b].lineWidth||m+(f[b].lineWidthPlus||0),n=d(f[b].opacity,n));if(h&&!h.dashstyle)for(f={"stroke-width":m},h.animate(f,c);g["zone-graph-"+k];)g["zone-graph-"+
  530. k].attr(f),k+=1;l||[g.group,g.markerGroup,g.dataLabelsGroup,g.labelBySeries].forEach(function(e){e&&e.animate({opacity:n},c)})}a&&l&&g.points&&g.setAllPointsToState(b)},setAllPointsToState:function(b){this.points.forEach(function(a){a.setState&&a.setState(b)})},setVisible:function(b,a){var d=this,g=d.chart,k=d.legendItem,h=g.options.chart.ignoreHiddenSeries,l=d.visible;var f=(d.visible=b=d.options.visible=d.userOptions.visible="undefined"===typeof b?!l:b)?"show":"hide";["group","dataLabelsGroup",
  531. "markerGroup","tracker","tt"].forEach(function(b){if(d[b])d[b][f]()});if(g.hoverSeries===d||(g.hoverPoint&&g.hoverPoint.series)===d)d.onMouseOut();k&&g.legend.colorizeItem(d,b);d.isDirty=!0;d.options.stacking&&g.series.forEach(function(b){b.options.stacking&&b.visible&&(b.isDirty=!0)});d.linkedSeries.forEach(function(a){a.setVisible(b,!1)});h&&(g.isDirtyBox=!0);J(d,f);!1!==a&&g.redraw()},show:function(){this.setVisible(!0)},hide:function(){this.setVisible(!1)},select:function(b){this.selected=b=this.options.selected=
  532. "undefined"===typeof b?!this.selected:b;this.checkbox&&(this.checkbox.checked=b);J(this,b?"select":"unselect")},drawTracker:k.drawTrackerGraph})});M(v,"Core/Responsive.js",[v["Core/Chart/Chart.js"],v["Core/Utilities.js"]],function(r,f){var v=f.find,C=f.isArray,z=f.isObject,B=f.merge,E=f.objectEach,D=f.pick,x=f.splat,p=f.uniqueKey;r.prototype.setResponsive=function(f,r){var w=this.options.responsive,x=[],u=this.currentResponsive;!r&&w&&w.rules&&w.rules.forEach(function(f){"undefined"===typeof f._id&&
  533. (f._id=p());this.matchResponsiveRule(f,x)},this);r=B.apply(0,x.map(function(f){return v(w.rules,function(m){return m._id===f}).chartOptions}));r.isResponsiveOptions=!0;x=x.toString()||void 0;x!==(u&&u.ruleIds)&&(u&&this.update(u.undoOptions,f,!0),x?(u=this.currentOptions(r),u.isResponsiveOptions=!0,this.currentResponsive={ruleIds:x,mergedOptions:r,undoOptions:u},this.update(r,f,!0)):this.currentResponsive=void 0)};r.prototype.matchResponsiveRule=function(f,p){var r=f.condition;(r.callback||function(){return this.chartWidth<=
  534. D(r.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=D(r.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=D(r.minWidth,0)&&this.chartHeight>=D(r.minHeight,0)}).call(this)&&p.push(f._id)};r.prototype.currentOptions=function(f){function p(f,m,n,l){var h;E(f,function(d,g){if(!l&&-1<r.collectionsWithUpdate.indexOf(g))for(d=x(d),n[g]=[],h=0;h<Math.max(d.length,m[g].length);h++)m[g][h]&&(void 0===d[h]?n[g][h]=m[g][h]:(n[g][h]={},p(d[h],m[g][h],n[g][h],l+1)));else z(d)?(n[g]=C(d)?[]:{},p(d,m[g]||{},n[g],l+1)):
  535. n[g]="undefined"===typeof m[g]?null:m[g]})}var r=this,v={};p(f,this.options,v,0);return v}});M(v,"masters/highcharts.src.js",[v["Core/Globals.js"]],function(r){return r});M(v,"Gantt/Tree.js",[v["Core/Utilities.js"]],function(r){var f=r.extend,v=r.isNumber,C=r.pick,z=function(f,r){var v=f.reduce(function(f,r){var p=C(r.parent,"");"undefined"===typeof f[p]&&(f[p]=[]);f[p].push(r);return f},{});Object.keys(v).forEach(function(f,x){var p=v[f];""!==f&&-1===r.indexOf(f)&&(p.forEach(function(f){x[""].push(f)}),
  536. delete x[f])});return v},B=function(r,z,x,p,I,w){var J=0,H=0,u=w&&w.after,m=w&&w.before;z={data:p,depth:x-1,id:r,level:x,parent:z};var n,l;"function"===typeof m&&m(z,w);m=(I[r]||[]).map(function(h){var d=B(h.id,r,x+1,h,I,w),g=h.start;h=!0===h.milestone?g:h.end;n=!v(n)||g<n?g:n;l=!v(l)||h>l?h:l;J=J+1+d.descendants;H=Math.max(d.height+1,H);return d});p&&(p.start=C(p.start,n),p.end=C(p.end,l));f(z,{children:m,descendants:J,height:H});"function"===typeof u&&u(z,w);return z};return{getListOfParents:z,
  537. getNode:B,getTree:function(f,r){var v=f.map(function(f){return f.id});f=z(f,v);return B("",null,1,null,f,r)}}});M(v,"Core/Axis/TreeGridTick.js",[v["Core/Utilities.js"]],function(r){var f=r.addEvent,v=r.defined,C=r.isObject,z=r.isNumber,B=r.pick,E=r.wrap,D;(function(r){function p(){this.treeGrid||(this.treeGrid=new u(this))}function x(f,n){f=f.treeGrid;var l=!f.labelIcon,h=n.renderer,d=n.xy,g=n.options,a=g.width,k=g.height,b=d.x-a/2-g.padding;d=d.y-k/2;var m=n.collapsed?90:180,p=n.show&&z(d),u=f.labelIcon;
  538. u||(f.labelIcon=u=h.path(h.symbols[g.type](g.x,g.y,a,k)).addClass("highcharts-label-icon").add(n.group));p||u.attr({y:-9999});h.styledMode||u.attr({"stroke-width":1,fill:B(n.color,"#666666")}).css({cursor:"pointer",stroke:g.lineColor,strokeWidth:g.lineWidth});u[l?"attr":"animate"]({translateX:b,translateY:d,rotation:m})}function w(f,n,l,h,d,g,a,k,b){var m=B(this.options&&this.options.labels,g);g=this.pos;var p=this.axis,u="treegrid"===p.options.type;f=f.apply(this,[n,l,h,d,m,a,k,b]);u&&(n=m&&C(m.symbol,
  539. !0)?m.symbol:{},m=m&&z(m.indentation)?m.indentation:0,g=(g=(p=p.treeGrid.mapOfPosToGridNode)&&p[g])&&g.depth||1,f.x+=n.width+2*n.padding+(g-1)*m);return f}function J(m){var n=this,l=n.pos,h=n.axis,d=n.label,g=h.treeGrid.mapOfPosToGridNode,a=h.options,k=B(n.options&&n.options.labels,a&&a.labels),b=k&&C(k.symbol,!0)?k.symbol:{},p=(g=g&&g[l])&&g.depth;a="treegrid"===a.type;var u=-1<h.tickPositions.indexOf(l);l=h.chart.styledMode;a&&g&&d&&d.element&&d.addClass("highcharts-treegrid-node-level-"+p);m.apply(n,
  540. Array.prototype.slice.call(arguments,1));a&&d&&d.element&&g&&g.descendants&&0<g.descendants&&(h=h.treeGrid.isCollapsed(g),x(n,{color:!l&&d.styles&&d.styles.color||"",collapsed:h,group:d.parentGroup,options:b,renderer:d.renderer,show:u,xy:d.xy}),b="highcharts-treegrid-node-"+(h?"expanded":"collapsed"),d.addClass("highcharts-treegrid-node-"+(h?"collapsed":"expanded")).removeClass(b),l||d.css({cursor:"pointer"}),[d,n.treeGrid.labelIcon].forEach(function(b){b&&!b.attachedTreeGridEvents&&(f(b.element,
  541. "mouseover",function(){d.addClass("highcharts-treegrid-node-active");d.renderer.styledMode||d.css({textDecoration:"underline"})}),f(b.element,"mouseout",function(){var b=v(k.style)?k.style:{};d.removeClass("highcharts-treegrid-node-active");d.renderer.styledMode||d.css({textDecoration:b.textDecoration})}),f(b.element,"click",function(){n.treeGrid.toggleCollapse()}),b.attachedTreeGridEvents=!0)}))}var H=!1;r.compose=function(m){H||(f(m,"init",p),E(m.prototype,"getLabelPosition",w),E(m.prototype,"renderLabel",
  542. J),m.prototype.collapse=function(f){this.treeGrid.collapse(f)},m.prototype.expand=function(f){this.treeGrid.expand(f)},m.prototype.toggleCollapse=function(f){this.treeGrid.toggleCollapse(f)},H=!0)};var u=function(){function f(f){this.tick=f}f.prototype.collapse=function(f){var l=this.tick,h=l.axis,d=h.brokenAxis;d&&h.treeGrid.mapOfPosToGridNode&&(l=h.treeGrid.collapse(h.treeGrid.mapOfPosToGridNode[l.pos]),d.setBreaks(l,B(f,!0)))};f.prototype.expand=function(f){var l=this.tick,h=l.axis,d=h.brokenAxis;
  543. d&&h.treeGrid.mapOfPosToGridNode&&(l=h.treeGrid.expand(h.treeGrid.mapOfPosToGridNode[l.pos]),d.setBreaks(l,B(f,!0)))};f.prototype.toggleCollapse=function(f){var l=this.tick,h=l.axis,d=h.brokenAxis;d&&h.treeGrid.mapOfPosToGridNode&&(l=h.treeGrid.toggleCollapse(h.treeGrid.mapOfPosToGridNode[l.pos]),d.setBreaks(l,B(f,!0)))};return f}();r.Additions=u})(D||(D={}));return D});M(v,"Mixins/TreeSeries.js",[v["Core/Color.js"],v["Core/Utilities.js"]],function(r,f){var v=f.extend,C=f.isArray,z=f.isNumber,B=f.isObject,
  544. E=f.merge,D=f.pick;return{getColor:function(f,p){var v=p.index,w=p.mapOptionsToLevel,x=p.parentColor,H=p.parentColorIndex,u=p.series,m=p.colors,n=p.siblings,l=u.points,h=u.chart.options.chart,d;if(f){l=l[f.i];f=w[f.level]||{};if(w=l&&f.colorByPoint){var g=l.index%(m?m.length:h.colorCount);var a=m&&m[g]}if(!u.chart.styledMode){m=l&&l.options.color;h=f&&f.color;if(d=x)d=(d=f&&f.colorVariation)&&"brightness"===d.key?r.parse(x).brighten(v/n*d.to).get():x;d=D(m,h,a,d,u.color)}var k=D(l&&l.options.colorIndex,
  545. f&&f.colorIndex,g,H,p.colorIndex)}return{color:d,colorIndex:k}},getLevelOptions:function(f){var p=null;if(B(f)){p={};var r=z(f.from)?f.from:1;var w=f.levels;var x={};var H=B(f.defaults)?f.defaults:{};C(w)&&(x=w.reduce(function(f,m){if(B(m)&&z(m.level)){var n=E({},m);var l="boolean"===typeof n.levelIsConstant?n.levelIsConstant:H.levelIsConstant;delete n.levelIsConstant;delete n.level;m=m.level+(l?0:r-1);B(f[m])?v(f[m],n):f[m]=n}return f},{}));w=z(f.to)?f.to:1;for(f=0;f<=w;f++)p[f]=E({},H,B(x[f])?x[f]:
  546. {})}return p},setTreeValues:function w(f,r){var p=r.before,H=r.idRoot,u=r.mapIdToNode[H],m=r.points[f.i],n=m&&m.options||{},l=0,h=[];v(f,{levelDynamic:f.level-(("boolean"===typeof r.levelIsConstant?r.levelIsConstant:1)?0:u.level),name:D(m&&m.name,""),visible:H===f.id||("boolean"===typeof r.visible?r.visible:!1)});"function"===typeof p&&(f=p(f,r));f.children.forEach(function(d,g){var a=v({},r);v(a,{index:g,siblings:f.children.length,visible:f.visible});d=w(d,a);h.push(d);d.visible&&(l+=d.val)});f.visible=
  547. 0<l||f.visible;p=D(n.value,l);v(f,{children:h,childrenTotal:l,isLeaf:f.visible&&!l,val:p});return f},updateRootId:function(f){if(B(f)){var p=B(f.options)?f.options:{};p=D(f.rootNode,p.rootId,"");B(f.userOptions)&&(f.userOptions.rootId=p);f.rootNode=p}return p}}});M(v,"Core/Axis/GridAxis.js",[v["Core/Axis/Axis.js"],v["Core/Globals.js"],v["Core/Options.js"],v["Core/Axis/Tick.js"],v["Core/Utilities.js"]],function(r,f,v,C,z){var B=v.dateFormat,E=z.addEvent,D=z.defined,x=z.erase,p=z.find,I=z.isArray,w=
  548. z.isNumber,J=z.merge,H=z.pick,u=z.timeUnits,m=z.wrap;v=f.Chart;var n=function(d){var g=d.options;g.labels||(g.labels={});g.labels.align=H(g.labels.align,"center");d.categories||(g.showLastLabel=!1);d.labelRotation=0;g.labels.rotation=0};"";r.prototype.getMaxLabelDimensions=function(d,g){var a={width:0,height:0};g.forEach(function(g){var b=d[g];g=0;if(z.isObject(b,!0)){var k=z.isObject(b.label,!0)?b.label:{};b=k.getBBox?k.getBBox().height:0;k.textStr&&(g=Math.round(k.getBBox().width));a.height=Math.max(b,
  549. a.height);a.width=Math.max(g,a.width)}});return a};f.dateFormats.W=function(d){d=new this.Date(d);var g=(this.get("Day",d)+6)%7,a=new this.Date(d.valueOf());this.set("Date",a,this.get("Date",d)-g+3);g=new this.Date(this.get("FullYear",a),0,1);4!==this.get("Day",g)&&(this.set("Month",d,0),this.set("Date",d,1+(11-this.get("Day",g))%7));return(1+Math.floor((a.valueOf()-g.valueOf())/6048E5)).toString()};f.dateFormats.E=function(d){return B("%a",d,!0).charAt(0)};E(v,"afterSetChartSize",function(){this.axes.forEach(function(d){(d.grid&&
  550. d.grid.columns||[]).forEach(function(d){d.setAxisSize();d.setAxisTranslation()})})});E(C,"afterGetLabelPosition",function(d){var g=this.label,a=this.axis,k=a.reversed,b=a.chart,f=a.options.grid||{},l=a.options.labels,m=l.align,n=h.Side[a.side],t=d.tickmarkOffset,p=a.tickPositions,u=this.pos-t;p=w(p[d.index+1])?p[d.index+1]-t:a.max+t;var r=a.tickSize("tick");t=r?r[0]:0;r=r?r[1]/2:0;if(!0===f.enabled){if("top"===n){f=a.top+a.offset;var c=f-t}else"bottom"===n?(c=b.chartHeight-a.bottom+a.offset,f=c+t):
  551. (f=a.top+a.len-a.translate(k?p:u),c=a.top+a.len-a.translate(k?u:p));"right"===n?(n=b.chartWidth-a.right+a.offset,k=n+t):"left"===n?(k=a.left+a.offset,n=k-t):(n=Math.round(a.left+a.translate(k?p:u))-r,k=Math.round(a.left+a.translate(k?u:p))-r);this.slotWidth=k-n;d.pos.x="left"===m?n:"right"===m?k:n+(k-n)/2;d.pos.y=c+(f-c)/2;b=b.renderer.fontMetrics(l.style.fontSize,g.element);g=g.getBBox().height;l.useHTML?d.pos.y+=b.b+-(g/2):(g=Math.round(g/b.h),d.pos.y+=(b.b-(b.h-b.f))/2+-((g-1)*b.h/2));d.pos.x+=
  552. a.horiz&&l.x||0}});var l=function(){function d(d){this.axis=d}d.prototype.isOuterAxis=function(){var d=this.axis,a=d.grid.columnIndex,k=d.linkedParent&&d.linkedParent.grid.columns||d.grid.columns,b=a?d.linkedParent:d,h=-1,f=0;d.chart[d.coll].forEach(function(a,g){a.side!==d.side||a.options.isInternal||(f=g,a===b&&(h=g))});return f===h&&(w(a)?k.length===a:!0)};return d}(),h=function(){function d(){}d.compose=function(g){r.keepProps.push("grid");m(g.prototype,"unsquish",d.wrapUnsquish);E(g,"init",d.onInit);
  553. E(g,"afterGetOffset",d.onAfterGetOffset);E(g,"afterGetTitlePosition",d.onAfterGetTitlePosition);E(g,"afterInit",d.onAfterInit);E(g,"afterRender",d.onAfterRender);E(g,"afterSetAxisTranslation",d.onAfterSetAxisTranslation);E(g,"afterSetOptions",d.onAfterSetOptions);E(g,"afterSetOptions",d.onAfterSetOptions2);E(g,"afterSetScale",d.onAfterSetScale);E(g,"afterTickSize",d.onAfterTickSize);E(g,"trimTicks",d.onTrimTicks);E(g,"destroy",d.onDestroy)};d.onAfterGetOffset=function(){var d=this.grid;(d&&d.columns||
  554. []).forEach(function(a){a.getOffset()})};d.onAfterGetTitlePosition=function(g){if(!0===(this.options.grid||{}).enabled){var a=this.axisTitle,k=this.height,b=this.horiz,h=this.left,f=this.offset,l=this.opposite,m=this.options.title,t=void 0===m?{}:m;m=this.top;var n=this.width,p=this.tickSize(),u=a&&a.getBBox().width,c=t.x||0,e=t.y||0,q=H(t.margin,b?5:10);a=this.chart.renderer.fontMetrics(t.style&&t.style.fontSize,a).f;p=(b?m+k:h)+(b?1:-1)*(l?-1:1)*(p?p[0]/2:0)+(this.side===d.Side.bottom?a:0);g.titlePosition.x=
  555. b?h-u/2-q+c:p+(l?n:0)+f+c;g.titlePosition.y=b?p-(l?k:0)+(l?a:-a)/2+f+e:m-q+e}};d.onAfterInit=function(){var d=this.chart,a=this.options.grid;a=void 0===a?{}:a;var k=this.userOptions;a.enabled&&(n(this),m(this,"labelFormatter",function(b){var a=this.axis,d=this.value,g=a.tickPositions,k=(a.isLinked?a.linkedParent:a).series[0],h=d===g[0];g=d===g[g.length-1];k=k&&p(k.options.data,function(c){return c[a.isXAxis?"x":"y"]===d});this.isFirst=h;this.isLast=g;this.point=k;return b.call(this)}));if(a.columns)for(var b=
  556. this.grid.columns=[],h=this.grid.columnIndex=0;++h<a.columns.length;){var f=J(k,a.columns[a.columns.length-h-1],{linkedTo:0,type:"category",scrollbar:{enabled:!1}});delete f.grid.columns;f=new r(this.chart,f);f.grid.isColumn=!0;f.grid.columnIndex=h;x(d.axes,f);x(d[this.coll],f);b.push(f)}};d.onAfterRender=function(){var g=this.grid,a=this.options,k=this.chart.renderer;if(!0===(a.grid||{}).enabled){this.maxLabelDimensions=this.getMaxLabelDimensions(this.ticks,this.tickPositions);this.rightWall&&this.rightWall.destroy();
  557. if(this.grid&&this.grid.isOuterAxis()&&this.axisLine){var b=a.lineWidth;if(b){var h=this.getLinePath(b),f=h[0],l=h[1],m=((this.tickSize("tick")||[1])[0]-1)*(this.side===d.Side.top||this.side===d.Side.left?-1:1);"M"===f[0]&&"L"===l[0]&&(this.horiz?(f[2]+=m,l[2]+=m):(f[1]+=m,l[1]+=m));this.grid.axisLineExtra?this.grid.axisLineExtra.animate({d:h}):(this.grid.axisLineExtra=k.path(h).attr({zIndex:7}).addClass("highcharts-axis-line").add(this.axisGroup),k.styledMode||this.grid.axisLineExtra.attr({stroke:a.lineColor,
  558. "stroke-width":b}));this.axisLine[this.showAxis?"show":"hide"](!0)}}(g&&g.columns||[]).forEach(function(b){b.render()})}};d.onAfterSetAxisTranslation=function(){var d=this.tickPositions&&this.tickPositions.info,a=this.options,k=a.grid||{},b=this.userOptions.labels||{};this.horiz&&(!0===k.enabled&&this.series.forEach(function(b){b.options.pointRange=0}),d&&a.dateTimeLabelFormats&&a.labels&&!D(b.align)&&(!1===a.dateTimeLabelFormats[d.unitName].range||1<d.count)&&(a.labels.align="left",D(b.x)||(a.labels.x=
  559. 3)))};d.onAfterSetOptions=function(d){var a=this.options;d=d.userOptions;var g=a&&z.isObject(a.grid,!0)?a.grid:{};if(!0===g.enabled){var b=J(!0,{className:"highcharts-grid-axis "+(d.className||""),dateTimeLabelFormats:{hour:{list:["%H:%M","%H"]},day:{list:["%A, %e. %B","%a, %e. %b","%E"]},week:{list:["Week %W","W%W"]},month:{list:["%B","%b","%o"]}},grid:{borderWidth:1},labels:{padding:2,style:{fontSize:"13px"}},margin:0,title:{text:null,reserveSpace:!1,rotation:0},units:[["millisecond",[1,10,100]],
  560. ["second",[1,10]],["minute",[1,5,15]],["hour",[1,6]],["day",[1]],["week",[1]],["month",[1]],["year",null]]},d);"xAxis"===this.coll&&(D(d.linkedTo)&&!D(d.tickPixelInterval)&&(b.tickPixelInterval=350),D(d.tickPixelInterval)||!D(d.linkedTo)||D(d.tickPositioner)||D(d.tickInterval)||(b.tickPositioner=function(a,d){var g=this.linkedParent&&this.linkedParent.tickPositions&&this.linkedParent.tickPositions.info;if(g){var k,h=b.units;for(k=0;k<h.length;k++)if(h[k][0]===g.unitName){var f=k;break}if(h[f+1]){var l=
  561. h[f+1][0];var m=(h[f+1][1]||[1])[0]}else"year"===g.unitName&&(l="year",m=10*g.count);g=u[l];this.tickInterval=g*m;return this.getTimeTicks({unitRange:g,count:m,unitName:l},a,d,this.options.startOfWeek)}}));J(!0,this.options,b);this.horiz&&(a.minPadding=H(d.minPadding,0),a.maxPadding=H(d.maxPadding,0));w(a.grid.borderWidth)&&(a.tickWidth=a.lineWidth=g.borderWidth)}};d.onAfterSetOptions2=function(d){d=(d=d.userOptions)&&d.grid||{};var a=d.columns;d.enabled&&a&&J(!0,this.options,a[a.length-1])};d.onAfterSetScale=
  562. function(){(this.grid.columns||[]).forEach(function(d){d.setScale()})};d.onAfterTickSize=function(d){var a=r.defaultLeftAxisOptions,g=this.horiz,b=this.maxLabelDimensions,h=this.options.grid;h=void 0===h?{}:h;h.enabled&&b&&(a=2*Math.abs(a.labels.x),g=g?h.cellHeight||a+b.height:a+b.width,I(d.tickSize)?d.tickSize[0]=g:d.tickSize=[g,0])};d.onDestroy=function(d){var a=this.grid;(a.columns||[]).forEach(function(a){a.destroy(d.keepEvents)});a.columns=void 0};d.onInit=function(d){d=d.userOptions||{};var a=
  563. d.grid||{};a.enabled&&D(a.borderColor)&&(d.tickColor=d.lineColor=a.borderColor);this.grid||(this.grid=new l(this))};d.onTrimTicks=function(){var d=this.options,a=this.categories,k=this.tickPositions,b=k[0],h=k[k.length-1],f=this.linkedParent&&this.linkedParent.min||this.min,l=this.linkedParent&&this.linkedParent.max||this.max,m=this.tickInterval;!0!==(d.grid||{}).enabled||a||!this.horiz&&!this.isLinked||(b<f&&b+m>f&&!d.startOnTick&&(k[0]=f),h>l&&h-m<l&&!d.endOnTick&&(k[k.length-1]=l))};d.wrapUnsquish=
  564. function(d){var a=this.options.grid;return!0===(void 0===a?{}:a).enabled&&this.categories?this.tickInterval:d.apply(this,Array.prototype.slice.call(arguments,1))};return d}();(function(d){d=d.Side||(d.Side={});d[d.top=0]="top";d[d.right=1]="right";d[d.bottom=2]="bottom";d[d.left=3]="left"})(h||(h={}));h.compose(r);return h});M(v,"Core/Axis/BrokenAxis.js",[v["Core/Axis/Axis.js"],v["Core/Globals.js"],v["Core/Utilities.js"],v["Extensions/Stacking.js"]],function(r,f,v,C){var z=v.addEvent,B=v.find,E=v.fireEvent,
  565. D=v.isArray,x=v.isNumber,p=v.pick,I=f.Series,w=function(){function f(f){this.hasBreaks=!1;this.axis=f}f.isInBreak=function(f,p){var m=f.repeat||Infinity,n=f.from,l=f.to-f.from;p=p>=n?(p-n)%m:m-(n-p)%m;return f.inclusive?p<=l:p<l&&0!==p};f.lin2Val=function(p){var u=this.brokenAxis;u=u&&u.breakArray;if(!u)return p;var m;for(m=0;m<u.length;m++){var n=u[m];if(n.from>=p)break;else n.to<p?p+=n.len:f.isInBreak(n,p)&&(p+=n.len)}return p};f.val2Lin=function(p){var u=this.brokenAxis;u=u&&u.breakArray;if(!u)return p;
  566. var m=p,n;for(n=0;n<u.length;n++){var l=u[n];if(l.to<=p)m-=l.len;else if(l.from>=p)break;else if(f.isInBreak(l,p)){m-=p-l.from;break}}return m};f.prototype.findBreakAt=function(f,p){return B(p,function(m){return m.from<f&&f<m.to})};f.prototype.isInAnyBreak=function(r,u){var m=this.axis,n=m.options.breaks,l=n&&n.length,h;if(l){for(;l--;)if(f.isInBreak(n[l],r)){var d=!0;h||(h=p(n[l].showPoints,!m.isXAxis))}var g=d&&u?d&&!h:d}return g};f.prototype.setBreaks=function(w,u){var m=this,n=m.axis,l=D(w)&&
  567. !!w.length;n.isDirty=m.hasBreaks!==l;m.hasBreaks=l;n.options.breaks=n.userOptions.breaks=w;n.forceRedraw=!0;n.series.forEach(function(h){h.isDirty=!0});l||n.val2lin!==f.val2Lin||(delete n.val2lin,delete n.lin2val);l&&(n.userOptions.ordinal=!1,n.lin2val=f.lin2Val,n.val2lin=f.val2Lin,n.setExtremes=function(h,d,g,a,k){if(m.hasBreaks){for(var b,f=this.options.breaks;b=m.findBreakAt(h,f);)h=b.to;for(;b=m.findBreakAt(d,f);)d=b.from;d<h&&(d=h)}r.prototype.setExtremes.call(this,h,d,g,a,k)},n.setAxisTranslation=
  568. function(h){r.prototype.setAxisTranslation.call(this,h);m.unitLength=null;if(m.hasBreaks){h=n.options.breaks||[];var d=[],g=[],a=0,k,b=n.userMin||n.min,l=n.userMax||n.max,u=p(n.pointRangePadding,0),w;h.forEach(function(a){k=a.repeat||Infinity;f.isInBreak(a,b)&&(b+=a.to%k-b%k);f.isInBreak(a,l)&&(l-=l%k-a.from%k)});h.forEach(function(a){t=a.from;for(k=a.repeat||Infinity;t-k>b;)t-=k;for(;t<b;)t+=k;for(w=t;w<l;w+=k)d.push({value:w,move:"in"}),d.push({value:w+(a.to-a.from),move:"out",size:a.breakSize})});
  569. d.sort(function(b,a){return b.value===a.value?("in"===b.move?0:1)-("in"===a.move?0:1):b.value-a.value});var v=0;var t=b;d.forEach(function(b){v+="in"===b.move?1:-1;1===v&&"in"===b.move&&(t=b.value);0===v&&(g.push({from:t,to:b.value,len:b.value-t-(b.size||0)}),a+=b.value-t-(b.size||0))});n.breakArray=m.breakArray=g;m.unitLength=l-b-a+u;E(n,"afterBreaks");n.staticScale?n.transA=n.staticScale:m.unitLength&&(n.transA*=(l-n.min+u)/m.unitLength);u&&(n.minPixelPadding=n.transA*n.minPointOffset);n.min=b;
  570. n.max=l}});p(u,!0)&&n.chart.redraw()};return f}();f=function(){function f(){}f.compose=function(f,u){f.keepProps.push("brokenAxis");var m=I.prototype;m.drawBreaks=function(f,l){var h=this,d=h.points,g,a,k,b;if(f&&f.brokenAxis&&f.brokenAxis.hasBreaks){var m=f.brokenAxis;l.forEach(function(l){g=m&&m.breakArray||[];a=f.isXAxis?f.min:p(h.options.threshold,f.min);d.forEach(function(d){b=p(d["stack"+l.toUpperCase()],d[l]);g.forEach(function(g){if(x(a)&&x(b)){k=!1;if(a<g.from&&b>g.to||a>g.from&&b<g.from)k=
  571. "pointBreak";else if(a<g.from&&b>g.from&&b<g.to||a>g.from&&b>g.to&&b<g.from)k="pointInBreak";k&&E(f,k,{point:d,brk:g})}})})})}};m.gappedPath=function(){var f=this.currentDataGrouping,l=f&&f.gapSize;f=this.options.gapSize;var h=this.points.slice(),d=h.length-1,g=this.yAxis,a;if(f&&0<d)for("value"!==this.options.gapUnit&&(f*=this.basePointRange),l&&l>f&&l>=this.basePointRange&&(f=l),a=void 0;d--;)a&&!1!==a.visible||(a=h[d+1]),l=h[d],!1!==a.visible&&!1!==l.visible&&(a.x-l.x>f&&(a=(l.x+a.x)/2,h.splice(d+
  572. 1,0,{isNull:!0,x:a}),g.stacking&&this.options.stacking&&(a=g.stacking.stacks[this.stackKey][a]=new C(g,g.options.stackLabels,!1,a,this.stack),a.total=0)),a=l);return this.getGraphPath(h)};z(f,"init",function(){this.brokenAxis||(this.brokenAxis=new w(this))});z(f,"afterInit",function(){"undefined"!==typeof this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)});z(f,"afterSetTickPositions",function(){var f=this.brokenAxis;if(f&&f.hasBreaks){var l=this.tickPositions,h=this.tickPositions.info,
  573. d=[],g;for(g=0;g<l.length;g++)f.isInAnyBreak(l[g])||d.push(l[g]);this.tickPositions=d;this.tickPositions.info=h}});z(f,"afterSetOptions",function(){this.brokenAxis&&this.brokenAxis.hasBreaks&&(this.options.ordinal=!1)});z(u,"afterGeneratePoints",function(){var f=this.options.connectNulls,l=this.points,h=this.xAxis,d=this.yAxis;if(this.isDirty)for(var g=l.length;g--;){var a=l[g],k=!(null===a.y&&!1===f)&&(h&&h.brokenAxis&&h.brokenAxis.isInAnyBreak(a.x,!0)||d&&d.brokenAxis&&d.brokenAxis.isInAnyBreak(a.y,
  574. !0));a.visible=k?!1:!1!==a.options.visible}});z(u,"afterRender",function(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,p(this.pointArrayMap,["y"]))})};return f}();f.compose(r,I);return f});M(v,"Core/Axis/TreeGridAxis.js",[v["Core/Axis/Axis.js"],v["Core/Axis/Tick.js"],v["Gantt/Tree.js"],v["Core/Axis/TreeGridTick.js"],v["Mixins/TreeSeries.js"],v["Core/Utilities.js"]],function(r,f,v,C,z,B){var E=z.getLevelOptions,D=B.addEvent,x=B.find,p=B.fireEvent,I=B.isNumber,w=B.isObject,J=B.isString,
  575. H=B.merge,u=B.pick,m=B.wrap,n;(function(l){function h(b,a){var d=b.collapseStart||0;b=b.collapseEnd||0;b>=a&&(d-=.5);return{from:d,to:b,showPoints:!1}}function d(b,a,d){var g=[],k=[],c={},e={},h=-1,f="boolean"===typeof a?a:!1;b=v.getTree(b,{after:function(c){c=e[c.pos];var b=0,a=0;c.children.forEach(function(c){a+=(c.descendants||0)+1;b=Math.max((c.height||0)+1,b)});c.descendants=a;c.height=b;c.collapsed&&k.push(c)},before:function(b){var a=w(b.data,!0)?b.data:{},d=J(a.name)?a.name:"",k=c[b.parent];
  576. k=w(k,!0)?e[k.pos]:null;var l=function(c){return c.name===d},t;f&&w(k,!0)&&(t=x(k.children,l))?(l=t.pos,t.nodes.push(b)):l=h++;e[l]||(e[l]=t={depth:k?k.depth+1:0,name:d,nodes:[b],children:[],pos:l},-1!==l&&g.push(d),w(k,!0)&&k.children.push(t));J(b.id)&&(c[b.id]=b);t&&!0===a.collapsed&&(t.collapsed=!0);b.pos=l}});e=function(c,b){var e=function(c,a,d){var g=a+(-1===a?0:b-1),k=(g-a)/2,h=a+k;c.nodes.forEach(function(c){var b=c.data;w(b,!0)&&(b.y=a+(b.seriesIndex||0),delete b.seriesIndex);c.pos=h});d[h]=
  577. c;c.pos=h;c.tickmarkOffset=k+.5;c.collapseStart=g+.5;c.children.forEach(function(c){e(c,g+1,d);g=(c.collapseEnd||0)-.5});c.collapseEnd=g+.5;return d};return e(c["-1"],-1,{})}(e,d);return{categories:g,mapOfIdToNode:c,mapOfPosToGridNode:e,collapsedNodes:k,tree:b}}function g(b){b.target.axes.filter(function(b){return"treegrid"===b.options.type}).forEach(function(a){var g=a.options||{},k=g.labels,h=g.uniqueNames,c=0,e=g.max;if(!a.treeGrid.mapOfPosToGridNode||a.series.some(function(c){return!c.hasRendered||
  578. c.isDirtyData||c.isDirty})){g=a.series.reduce(function(b,e){e.visible&&((e.options.data||[]).forEach(function(e){w(e,!0)&&(e.seriesIndex=c,b.push(e))}),!0===h&&c++);return b},[]);if(e&&g.length<e)for(var f=g.length;f<=e;f++)g.push({name:f+"\u200b"});g=d(g,h||!1,!0===h?c:1);a.categories=g.categories;a.treeGrid.mapOfPosToGridNode=g.mapOfPosToGridNode;a.hasNames=!0;a.treeGrid.tree=g.tree;a.series.forEach(function(c){var b=(c.options.data||[]).map(function(c){return w(c,!0)?H(c):c});c.visible&&c.setData(b,
  579. !1)});a.treeGrid.mapOptionsToLevel=E({defaults:k,from:1,levels:k&&k.levels,to:a.treeGrid.tree&&a.treeGrid.tree.height});"beforeRender"===b.type&&(a.treeGrid.collapsedNodes=g.collapsedNodes)}})}function a(b,a){var d=this.treeGrid.mapOptionsToLevel||{},g=this.ticks,k=g[a],c;if("treegrid"===this.options.type&&this.treeGrid.mapOfPosToGridNode){var e=this.treeGrid.mapOfPosToGridNode[a];(d=d[e.depth])&&(c={labels:d});k?(k.parameters.category=e.name,k.options=c,k.addLabel()):g[a]=new f(this,a,void 0,void 0,
  580. {category:e.name,tickmarkOffset:e.tickmarkOffset,options:c})}else b.apply(this,Array.prototype.slice.call(arguments,1))}function k(b){var a=this.options;a=(a=a&&a.labels)&&I(a.indentation)?a.indentation:0;var d=b.apply(this,Array.prototype.slice.call(arguments,1));if("treegrid"===this.options.type&&this.treeGrid.mapOfPosToGridNode){var g=this.treeGrid.mapOfPosToGridNode[-1].height||0;d.width+=a*(g-1)}return d}function b(b,a,k){var h=this,f="treegrid"===k.type;h.treeGrid||(h.treeGrid=new G(h));f&&
  581. (D(a,"beforeRender",g),D(a,"beforeRedraw",g),D(a,"addSeries",function(c){c.options.data&&(c=d(c.options.data,k.uniqueNames||!1,1),h.treeGrid.collapsedNodes=(h.treeGrid.collapsedNodes||[]).concat(c.collapsedNodes))}),D(h,"foundExtremes",function(){h.treeGrid.collapsedNodes&&h.treeGrid.collapsedNodes.forEach(function(c){var b=h.treeGrid.collapse(c);h.brokenAxis&&(h.brokenAxis.setBreaks(b,!1),h.treeGrid.collapsedNodes&&(h.treeGrid.collapsedNodes=h.treeGrid.collapsedNodes.filter(function(b){return c.collapseStart!==
  582. b.collapseStart||c.collapseEnd!==b.collapseEnd})))})}),D(h,"afterBreaks",function(){var c;"yAxis"===h.coll&&!h.staticScale&&(null===(c=h.chart.options.chart)||void 0===c?0:c.height)&&(h.isDirty=!0)}),k=H({grid:{enabled:!0},labels:{align:"left",levels:[{level:void 0},{level:1,style:{fontWeight:"bold"}}],symbol:{type:"triangle",x:-5,y:-5,height:10,width:10,padding:5}},uniqueNames:!1},k,{reversed:!0,grid:{columns:void 0}}));b.apply(h,[a,k]);f&&(h.hasNames=!0,h.options.showLastLabel=!0)}function n(b){var a=
  583. this.options;"treegrid"===a.type?(this.min=u(this.userMin,a.min,this.dataMin),this.max=u(this.userMax,a.max,this.dataMax),p(this,"foundExtremes"),this.setAxisTranslation(!0),this.tickmarkOffset=.5,this.tickInterval=1,this.tickPositions=this.treeGrid.mapOfPosToGridNode?this.treeGrid.getTickPositions():[]):b.apply(this,Array.prototype.slice.call(arguments,1))}var r=!1;l.compose=function(d){r||(m(d.prototype,"generateTick",a),m(d.prototype,"getMaxLabelDimensions",k),m(d.prototype,"init",b),m(d.prototype,
  584. "setTickInterval",n),C.compose(f),r=!0)};var G=function(){function b(b){this.axis=b}b.prototype.collapse=function(b){var a=this.axis,d=a.options.breaks||[];b=h(b,a.max);d.push(b);return d};b.prototype.expand=function(b){var a=this.axis,d=a.options.breaks||[],g=h(b,a.max);return d.reduce(function(c,b){b.to===g.to&&b.from===g.from||c.push(b);return c},[])};b.prototype.getTickPositions=function(){var b=this.axis;return Object.keys(b.treeGrid.mapOfPosToGridNode||{}).reduce(function(a,d){d=+d;!(b.min<=
  585. d&&b.max>=d)||b.brokenAxis&&b.brokenAxis.isInAnyBreak(d)||a.push(d);return a},[])};b.prototype.isCollapsed=function(b){var a=this.axis,d=a.options.breaks||[],g=h(b,a.max);return d.some(function(c){return c.from===g.from&&c.to===g.to})};b.prototype.toggleCollapse=function(b){return this.isCollapsed(b)?this.expand(b):this.collapse(b)};return b}();l.Additions=G})(n||(n={}));r.prototype.utils={getNode:v.getNode};n.compose(r);return n});M(v,"Extensions/CurrentDateIndication.js",[v["Core/Globals.js"],v["Core/Options.js"],
  586. v["Core/Utilities.js"],v["Core/Axis/PlotLineOrBand.js"]],function(r,f,v,C){var z=f.dateFormat;f=v.addEvent;var B=v.merge;v=v.wrap;var E={currentDateIndicator:!0,color:"#ccd6eb",width:2,label:{format:"%a, %b %d %Y, %H:%M",formatter:function(f,r){return z(r,f)},rotation:0,style:{fontSize:"10px"}}};f(r.Axis,"afterSetOptions",function(){var f=this.options,r=f.currentDateIndicator;r&&(r="object"===typeof r?B(E,r):B(E),r.value=new Date,f.plotLines||(f.plotLines=[]),f.plotLines.push(r))});f(C,"render",function(){this.label&&
  587. this.label.attr({text:this.getLabelText(this.options.label)})});v(C.prototype,"getLabelText",function(f,r){var p=this.options;return p.currentDateIndicator&&p.label&&"function"===typeof p.label.formatter?(p.value=new Date,p.label.formatter.call(this,p.value,p.label.format)):f.call(this,r)})});M(v,"Extensions/StaticScale.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.addEvent,C=f.defined,z=f.isNumber,B=f.pick;f=r.Chart;v(r.Axis,"afterSetOptions",function(){var f=this.chart.options&&
  588. this.chart.options.chart;!this.horiz&&z(this.options.staticScale)&&(!f.height||f.scrollablePlotArea&&f.scrollablePlotArea.minHeight)&&(this.staticScale=this.options.staticScale)});f.prototype.adjustHeight=function(){"adjustHeight"!==this.redrawTrigger&&((this.axes||[]).forEach(function(f){var r=f.chart,v=!!r.initiatedScale&&r.options.animation,p=f.options.staticScale;if(f.staticScale&&C(f.min)){var z=B(f.brokenAxis&&f.brokenAxis.unitLength,f.max+f.tickInterval-f.min)*p;z=Math.max(z,p);p=z-r.plotHeight;
  589. 1<=Math.abs(p)&&(r.plotHeight=z,r.redrawTrigger="adjustHeight",r.setSize(void 0,r.chartHeight+p,v));f.series.forEach(function(f){(f=f.sharedClipKey&&r[f.sharedClipKey])&&f.attr({height:r.plotHeight})})}}),this.initiatedScale=!0);this.redrawTrigger=null};v(f,"render",f.prototype.adjustHeight)});M(v,"Extensions/ArrowSymbols.js",[v["Core/Renderer/SVG/SVGRenderer.js"]],function(r){r.prototype.symbols.arrow=function(f,r,v,z){return[["M",f,r+z/2],["L",f+v,r],["L",f,r+z/2],["L",f+v,r+z]]};r.prototype.symbols["arrow-half"]=
  590. function(f,v,C,z){return r.prototype.symbols.arrow(f,v,C/2,z)};r.prototype.symbols["triangle-left"]=function(f,r,v,z){return[["M",f+v,r],["L",f,r+z/2],["L",f+v,r+z],["Z"]]};r.prototype.symbols["arrow-filled"]=r.prototype.symbols["triangle-left"];r.prototype.symbols["triangle-left-half"]=function(f,v,C,z){return r.prototype.symbols["triangle-left"](f,v,C/2,z)};r.prototype.symbols["arrow-filled-half"]=r.prototype.symbols["triangle-left-half"]});M(v,"Gantt/Connection.js",[v["Core/Globals.js"],v["Core/Options.js"],
  591. v["Core/Series/Point.js"],v["Core/Utilities.js"]],function(r,f,v,C){function z(f){var p=f.shapeArgs;return p?{xMin:p.x,xMax:p.x+p.width,yMin:p.y,yMax:p.y+p.height}:(p=f.graphic&&f.graphic.getBBox())?{xMin:f.plotX-p.width/2,xMax:f.plotX+p.width/2,yMin:f.plotY-p.height/2,yMax:f.plotY+p.height/2}:null}"";var B=C.defined,E=C.error,D=C.extend,x=C.merge,p=C.objectEach,I=r.deg2rad,w=Math.max,J=Math.min;D(f.defaultOptions,{connectors:{type:"straight",lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",
  592. inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}});f=function(){function f(f,m,n){this.toPoint=this.pathfinder=this.graphics=this.fromPoint=this.chart=void 0;this.init(f,m,n)}f.prototype.init=function(f,m,n){this.fromPoint=f;this.toPoint=m;this.options=n;this.chart=f.series.chart;this.pathfinder=this.chart.pathfinder};f.prototype.renderPath=function(f,m,n){var l=this.chart,h=l.styledMode,d=l.pathfinder,g=!l.options.chart.forExport&&!1!==n,a=this.graphics&&this.graphics.path;
  593. d.group||(d.group=l.renderer.g().addClass("highcharts-pathfinder-group").attr({zIndex:-1}).add(l.seriesGroup));d.group.translate(l.plotLeft,l.plotTop);a&&a.renderer||(a=l.renderer.path().add(d.group),h||a.attr({opacity:0}));a.attr(m);f={d:f};h||(f.opacity=1);a[g?"animate":"attr"](f,n);this.graphics=this.graphics||{};this.graphics.path=a};f.prototype.addMarker=function(f,m,n){var l=this.fromPoint.series.chart,h=l.pathfinder;l=l.renderer;var d="start"===f?this.fromPoint:this.toPoint,g=d.getPathfinderAnchorPoint(m);
  594. if(m.enabled&&((n="start"===f?n[1]:n[n.length-2])&&"M"===n[0]||"L"===n[0])){n={x:n[1],y:n[2]};n=d.getRadiansToVector(n,g);g=d.getMarkerVector(n,m.radius,g);n=-n/I;if(m.width&&m.height){var a=m.width;var k=m.height}else a=k=2*m.radius;this.graphics=this.graphics||{};g={x:g.x-a/2,y:g.y-k/2,width:a,height:k,rotation:n,rotationOriginX:g.x,rotationOriginY:g.y};this.graphics[f]?this.graphics[f].animate(g):(this.graphics[f]=l.symbol(m.symbol).addClass("highcharts-point-connecting-path-"+f+"-marker").attr(g).add(h.group),
  595. l.styledMode||this.graphics[f].attr({fill:m.color||this.fromPoint.color,stroke:m.lineColor,"stroke-width":m.lineWidth,opacity:0}).animate({opacity:1},d.series.options.animation))}};f.prototype.getPath=function(f){var m=this.pathfinder,n=this.chart,l=m.algorithms[f.type],h=m.chartObstacles;if("function"!==typeof l)return E('"'+f.type+'" is not a Pathfinder algorithm.'),{path:[],obstacles:[]};l.requiresObstacles&&!h&&(h=m.chartObstacles=m.getChartObstacles(f),n.options.connectors.algorithmMargin=f.algorithmMargin,
  596. m.chartObstacleMetrics=m.getObstacleMetrics(h));return l(this.fromPoint.getPathfinderAnchorPoint(f.startMarker),this.toPoint.getPathfinderAnchorPoint(f.endMarker),x({chartObstacles:h,lineObstacles:m.lineObstacles||[],obstacleMetrics:m.chartObstacleMetrics,hardBounds:{xMin:0,xMax:n.plotWidth,yMin:0,yMax:n.plotHeight},obstacleOptions:{margin:f.algorithmMargin},startDirectionX:m.getAlgorithmStartDirection(f.startMarker)},f))};f.prototype.render=function(){var f=this.fromPoint,m=f.series,n=m.chart,l=
  597. n.pathfinder,h=x(n.options.connectors,m.options.connectors,f.options.connectors,this.options),d={};n.styledMode||(d.stroke=h.lineColor||f.color,d["stroke-width"]=h.lineWidth,h.dashStyle&&(d.dashstyle=h.dashStyle));d["class"]="highcharts-point-connecting-path highcharts-color-"+f.colorIndex;h=x(d,h);B(h.marker.radius)||(h.marker.radius=J(w(Math.ceil((h.algorithmMargin||8)/2)-1,1),5));f=this.getPath(h);n=f.path;f.obstacles&&(l.lineObstacles=l.lineObstacles||[],l.lineObstacles=l.lineObstacles.concat(f.obstacles));
  598. this.renderPath(n,d,m.options.animation);this.addMarker("start",x(h.marker,h.startMarker),n);this.addMarker("end",x(h.marker,h.endMarker),n)};f.prototype.destroy=function(){this.graphics&&(p(this.graphics,function(f){f.destroy()}),delete this.graphics)};return f}();r.Connection=f;D(v.prototype,{getPathfinderAnchorPoint:function(f){var p=z(this);switch(f.align){case "right":var m="xMax";break;case "left":m="xMin"}switch(f.verticalAlign){case "top":var n="yMin";break;case "bottom":n="yMax"}return{x:m?
  599. p[m]:(p.xMin+p.xMax)/2,y:n?p[n]:(p.yMin+p.yMax)/2}},getRadiansToVector:function(f,p){var m;B(p)||(m=z(this))&&(p={x:(m.xMin+m.xMax)/2,y:(m.yMin+m.yMax)/2});return Math.atan2(p.y-f.y,f.x-p.x)},getMarkerVector:function(f,p,m){var n=2*Math.PI,l=z(this),h=l.xMax-l.xMin,d=l.yMax-l.yMin,g=Math.atan2(d,h),a=!1;h/=2;var k=d/2,b=l.xMin+h;l=l.yMin+k;for(var r=b,u=l,w={},v=1,t=1;f<-Math.PI;)f+=n;for(;f>Math.PI;)f-=n;n=Math.tan(f);f>-g&&f<=g?(t=-1,a=!0):f>g&&f<=Math.PI-g?t=-1:f>Math.PI-g||f<=-(Math.PI-g)?(v=
  600. -1,a=!0):v=-1;a?(r+=v*h,u+=t*h*n):(r+=d/(2*n)*v,u+=t*k);m.x!==b&&(r=m.x);m.y!==l&&(u=m.y);w.x=r+p*Math.cos(f);w.y=u-p*Math.sin(f);return w}});return f});M(v,"Gantt/PathfinderAlgorithms.js",[v["Core/Utilities.js"]],function(r){function f(f,p,r){r=r||0;var v=f.length-1;p-=1e-7;for(var u,m;r<=v;)if(u=v+r>>1,m=p-f[u].xMin,0<m)r=u+1;else if(0>m)v=u-1;else return u;return 0<r?r-1:0}function v(p,r){for(var v=f(p,r.x+1)+1;v--;){var w;if(w=p[v].xMax>=r.x)w=p[v],w=r.x<=w.xMax&&r.x>=w.xMin&&r.y<=w.yMax&&r.y>=
  601. w.yMin;if(w)return v}return-1}function C(f){var p=[];if(f.length){p.push(["M",f[0].start.x,f[0].start.y]);for(var r=0;r<f.length;++r)p.push(["L",f[r].end.x,f[r].end.y])}return p}function z(f,p){f.yMin=x(f.yMin,p.yMin);f.yMax=D(f.yMax,p.yMax);f.xMin=x(f.xMin,p.xMin);f.xMax=D(f.xMax,p.xMax)}var B=r.extend,E=r.pick,D=Math.min,x=Math.max,p=Math.abs;r=B(function(f,r,x){function w(a,d,b,g,f){a={x:a.x,y:a.y};a[d]=b[g||d]+(f||0);return a}function u(a,d,b){var g=p(d[b]-a[b+"Min"])>p(d[b]-a[b+"Max"]);return w(d,
  602. b,a,b+(g?"Max":"Min"),g?1:-1)}var m=[],n=E(x.startDirectionX,p(r.x-f.x)>p(r.y-f.y))?"x":"y",l=x.chartObstacles,h=v(l,f);x=v(l,r);if(-1<x){var d=l[x];x=u(d,r,n);d={start:x,end:r};var g=x}else g=r;-1<h&&(l=l[h],x=u(l,f,n),m.push({start:f,end:x}),x[n]>=f[n]===x[n]>=g[n]&&(n="y"===n?"x":"y",r=f[n]<r[n],m.push({start:x,end:w(x,n,l,n+(r?"Max":"Min"),r?1:-1)}),n="y"===n?"x":"y"));f=m.length?m[m.length-1].end:f;x=w(f,n,g);m.push({start:f,end:x});n=w(x,"y"===n?"x":"y",g);m.push({start:x,end:n});m.push(d);
  603. return{path:C(m),obstacles:m}},{requiresObstacles:!0});return{fastAvoid:B(function(r,w,B){function I(b,a,d){var c,e=b.x<a.x?1:-1;if(b.x<a.x){var g=b;var k=a}else g=a,k=b;if(b.y<a.y){var h=b;var l=a}else h=a,l=b;for(c=0>e?D(f(G,k.x),G.length-1):0;G[c]&&(0<e&&G[c].xMin<=k.x||0>e&&G[c].xMax>=g.x);){if(G[c].xMin<=k.x&&G[c].xMax>=g.x&&G[c].yMin<=l.y&&G[c].yMax>=h.y)return d?{y:b.y,x:b.x<a.x?G[c].xMin-1:G[c].xMax+1,obstacle:G[c]}:{x:b.x,y:b.y<a.y?G[c].yMin-1:G[c].yMax+1,obstacle:G[c]};c+=e}return a}function u(b,
  604. a,d,c,e){var g=e.soft,f=e.hard,k=c?"x":"y",h={x:a.x,y:a.y},l={x:a.x,y:a.y};e=b[k+"Max"]>=g[k+"Max"];g=b[k+"Min"]<=g[k+"Min"];var t=b[k+"Max"]>=f[k+"Max"];f=b[k+"Min"]<=f[k+"Min"];var m=p(b[k+"Min"]-a[k]),n=p(b[k+"Max"]-a[k]);d=10>p(m-n)?a[k]<d[k]:n<m;l[k]=b[k+"Min"];h[k]=b[k+"Max"];b=I(a,l,c)[k]!==l[k];a=I(a,h,c)[k]!==h[k];d=b?a?d:!0:a?!1:d;d=g?e?d:!0:e?!1:d;return f?t?d:!0:t?!1:d}function m(a,d,f){if(a.x===d.x&&a.y===d.y)return[];var c=f?"x":"y",e=B.obstacleOptions.margin;var h={soft:{xMin:k,xMax:b,
  605. yMin:F,yMax:y},hard:B.hardBounds};var l=v(G,a);if(-1<l){l=G[l];h=u(l,a,d,f,h);z(l,B.hardBounds);var t=f?{y:a.y,x:l[h?"xMax":"xMin"]+(h?1:-1)}:{x:a.x,y:l[h?"yMax":"yMin"]+(h?1:-1)};var n=v(G,t);-1<n&&(n=G[n],z(n,B.hardBounds),t[c]=h?x(l[c+"Max"]-e+1,(n[c+"Min"]+l[c+"Max"])/2):D(l[c+"Min"]+e-1,(n[c+"Max"]+l[c+"Min"])/2),a.x===t.x&&a.y===t.y?(g&&(t[c]=h?x(l[c+"Max"],n[c+"Max"])+1:D(l[c+"Min"],n[c+"Min"])-1),g=!g):g=!1);a=[{start:a,end:t}]}else c=I(a,{x:f?d.x:a.x,y:f?a.y:d.y},f),a=[{start:a,end:{x:c.x,
  606. y:c.y}}],c[f?"x":"y"]!==d[f?"x":"y"]&&(h=u(c.obstacle,c,d,!f,h),z(c.obstacle,B.hardBounds),h={x:f?c.x:c.obstacle[h?"xMax":"xMin"]+(h?1:-1),y:f?c.obstacle[h?"yMax":"yMin"]+(h?1:-1):c.y},f=!f,a=a.concat(m({x:c.x,y:c.y},h,f)));return a=a.concat(m(a[a.length-1].end,d,!f))}function n(b,a,d){var c=D(b.xMax-a.x,a.x-b.xMin)<D(b.yMax-a.y,a.y-b.yMin);d=u(b,a,d,c,{soft:B.hardBounds,hard:B.hardBounds});return c?{y:a.y,x:b[d?"xMax":"xMin"]+(d?1:-1)}:{x:a.x,y:b[d?"yMax":"yMin"]+(d?1:-1)}}var l=E(B.startDirectionX,
  607. p(w.x-r.x)>p(w.y-r.y)),h=l?"x":"y",d=[],g=!1,a=B.obstacleMetrics,k=D(r.x,w.x)-a.maxWidth-10,b=x(r.x,w.x)+a.maxWidth+10,F=D(r.y,w.y)-a.maxHeight-10,y=x(r.y,w.y)+a.maxHeight+10,G=B.chartObstacles;var L=f(G,k);a=f(G,b);G=G.slice(L,a+1);if(-1<(a=v(G,w))){var t=n(G[a],w,r);d.push({end:w,start:t});w=t}for(;-1<(a=v(G,w));)L=0>w[h]-r[h],t={x:w.x,y:w.y},t[h]=G[a][L?h+"Max":h+"Min"]+(L?1:-1),d.push({end:w,start:t}),w=t;r=m(r,w,l);r=r.concat(d.reverse());return{path:C(r),obstacles:r}},{requiresObstacles:!0}),
  608. straight:function(f,p){return{path:[["M",f.x,f.y],["L",p.x,p.y]],obstacles:[{start:f,end:p}]}},simpleConnect:r}});M(v,"Gantt/Pathfinder.js",[v["Gantt/Connection.js"],v["Core/Chart/Chart.js"],v["Core/Globals.js"],v["Core/Options.js"],v["Core/Series/Point.js"],v["Core/Utilities.js"],v["Gantt/PathfinderAlgorithms.js"]],function(r,f,v,C,z,B,E){function D(d){var a=d.shapeArgs;return a?{xMin:a.x,xMax:a.x+a.width,yMin:a.y,yMax:a.y+a.height}:(a=d.graphic&&d.graphic.getBBox())?{xMin:d.plotX-a.width/2,xMax:d.plotX+
  609. a.width/2,yMin:d.plotY-a.height/2,yMax:d.plotY+a.height/2}:null}function x(d){for(var a=d.length,g=0,b,f,n=[],p=function(b,a,d){d=m(d,10);var g=b.yMax+d>a.yMin-d&&b.yMin-d<a.yMax+d,f=b.xMax+d>a.xMin-d&&b.xMin-d<a.xMax+d,c=g?b.xMin>a.xMax?b.xMin-a.xMax:a.xMin-b.xMax:Infinity,e=f?b.yMin>a.yMax?b.yMin-a.yMax:a.yMin-b.yMax:Infinity;return f&&g?d?p(b,a,Math.floor(d/2)):Infinity:h(c,e)};g<a;++g)for(b=g+1;b<a;++b)f=p(d[g],d[b]),80>f&&n.push(f);n.push(80);return l(Math.floor(n.sort(function(b,a){return b-
  610. a})[Math.floor(n.length/10)]/2-1),1)}function p(d){if(d.options.pathfinder||d.series.reduce(function(a,d){d.options&&u(!0,d.options.connectors=d.options.connectors||{},d.options.pathfinder);return a||d.options&&d.options.pathfinder},!1))u(!0,d.options.connectors=d.options.connectors||{},d.options.pathfinder),J('WARNING: Pathfinder options have been renamed. Use "chart.connectors" or "series.connectors" instead.')}"";var I=B.addEvent,w=B.defined,J=B.error,H=B.extend,u=B.merge,m=B.pick,n=B.splat,l=
  611. Math.max,h=Math.min;H(C.defaultOptions,{connectors:{type:"straight",lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}});var d=function(){function d(a){this.lineObstacles=this.group=this.connections=this.chartObstacleMetrics=this.chartObstacles=this.chart=void 0;this.init(a)}d.prototype.init=function(a){this.chart=a;this.connections=[];I(a,"redraw",function(){this.pathfinder.update()})};d.prototype.update=
  612. function(a){var d=this.chart,b=this,g=b.connections;b.connections=[];d.series.forEach(function(a){a.visible&&!a.options.isInternal&&a.points.forEach(function(a){var c,e=a.options&&a.options.connect&&n(a.options.connect);a.visible&&!1!==a.isInside&&e&&e.forEach(function(e){c=d.get("string"===typeof e?e:e.to);c instanceof z&&c.series.visible&&c.visible&&!1!==c.isInside&&b.connections.push(new r(a,c,"string"===typeof e?{}:e))})})});for(var f=0,h,l,t=g.length,m=b.connections.length;f<t;++f){l=!1;for(h=
  613. 0;h<m;++h)if(g[f].fromPoint===b.connections[h].fromPoint&&g[f].toPoint===b.connections[h].toPoint){b.connections[h].graphics=g[f].graphics;l=!0;break}l||g[f].destroy()}delete this.chartObstacles;delete this.lineObstacles;b.renderConnections(a)};d.prototype.renderConnections=function(a){a?this.chart.series.forEach(function(a){var b=function(){var b=a.chart.pathfinder;(b&&b.connections||[]).forEach(function(b){b.fromPoint&&b.fromPoint.series===a&&b.render()});a.pathfinderRemoveRenderEvent&&(a.pathfinderRemoveRenderEvent(),
  614. delete a.pathfinderRemoveRenderEvent)};!1===a.options.animation?b():a.pathfinderRemoveRenderEvent=I(a,"afterAnimate",b)}):this.connections.forEach(function(a){a.render()})};d.prototype.getChartObstacles=function(a){for(var d=[],b=this.chart.series,g=m(a.algorithmMargin,0),f,h=0,l=b.length;h<l;++h)if(b[h].visible&&!b[h].options.isInternal)for(var t=0,n=b[h].points.length,p;t<n;++t)p=b[h].points[t],p.visible&&(p=D(p))&&d.push({xMin:p.xMin-g,xMax:p.xMax+g,yMin:p.yMin-g,yMax:p.yMax+g});d=d.sort(function(b,
  615. c){return b.xMin-c.xMin});w(a.algorithmMargin)||(f=a.algorithmMargin=x(d),d.forEach(function(b){b.xMin-=f;b.xMax+=f;b.yMin-=f;b.yMax+=f}));return d};d.prototype.getObstacleMetrics=function(a){for(var d=0,b=0,g,f,h=a.length;h--;)g=a[h].xMax-a[h].xMin,f=a[h].yMax-a[h].yMin,d<g&&(d=g),b<f&&(b=f);return{maxHeight:b,maxWidth:d}};d.prototype.getAlgorithmStartDirection=function(a){var d="top"!==a.verticalAlign&&"bottom"!==a.verticalAlign;return"left"!==a.align&&"right"!==a.align?d?void 0:!1:d?!0:void 0};
  616. return d}();d.prototype.algorithms=E;v.Pathfinder=d;H(z.prototype,{getPathfinderAnchorPoint:function(d){var a=D(this);switch(d.align){case "right":var g="xMax";break;case "left":g="xMin"}switch(d.verticalAlign){case "top":var b="yMin";break;case "bottom":b="yMax"}return{x:g?a[g]:(a.xMin+a.xMax)/2,y:b?a[b]:(a.yMin+a.yMax)/2}},getRadiansToVector:function(d,a){var g;w(a)||(g=D(this))&&(a={x:(g.xMin+g.xMax)/2,y:(g.yMin+g.yMax)/2});return Math.atan2(a.y-d.y,d.x-a.x)},getMarkerVector:function(d,a,f){var b=
  617. 2*Math.PI,g=D(this),h=g.xMax-g.xMin,k=g.yMax-g.yMin,l=Math.atan2(k,h),t=!1;h/=2;var m=k/2,n=g.xMin+h;g=g.yMin+m;for(var p=n,c=g,e={},q=1,r=1;d<-Math.PI;)d+=b;for(;d>Math.PI;)d-=b;b=Math.tan(d);d>-l&&d<=l?(r=-1,t=!0):d>l&&d<=Math.PI-l?r=-1:d>Math.PI-l||d<=-(Math.PI-l)?(q=-1,t=!0):q=-1;t?(p+=q*h,c+=r*h*b):(p+=k/(2*b)*q,c+=r*m);f.x!==n&&(p=f.x);f.y!==g&&(c=f.y);e.x=p+a*Math.cos(d);e.y=c-a*Math.sin(d);return e}});f.prototype.callbacks.push(function(g){!1!==g.options.connectors.enabled&&(p(g),this.pathfinder=
  618. new d(this),this.pathfinder.update(!0))});return d});M(v,"Series/XRangeSeries.js",[v["Core/Axis/Axis.js"],v["Core/Globals.js"],v["Core/Color.js"],v["Core/Series/Point.js"],v["Core/Utilities.js"]],function(r,f,v,C,z){var B=v.parse;v=z.addEvent;var E=z.clamp,D=z.correctFloat,x=z.defined,p=z.find,I=z.isNumber,w=z.isObject,J=z.merge,H=z.pick;z=z.seriesType;var u=f.seriesTypes.column,m=f.seriesTypes,n=f.Series;z("xrange","column",{colorByPoint:!0,dataLabels:{formatter:function(){var f=this.point.partialFill;
  619. w(f)&&(f=f.amount);if(I(f)&&0<f)return D(100*f)+"%"},inside:!0,verticalAlign:"middle"},tooltip:{headerFormat:'<span style="font-size: 10px">{point.x} - {point.x2}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.yCategory}</b><br/>'},borderRadius:3,pointRange:0},{type:"xrange",parallelArrays:["x","x2","y"],requireSorting:!1,animate:m.line.prototype.animate,cropShoulder:1,getExtremesFromAll:!0,autoIncrement:f.noop,buildKDTree:f.noop,init:function(){m.column.prototype.init.apply(this,
  620. arguments);this.options.stacking=void 0},getColumnMetrics:function(){function f(){h.series.forEach(function(d){var a=d.xAxis;d.xAxis=d.yAxis;d.yAxis=a})}var h=this.chart;f();var d=u.prototype.getColumnMetrics.call(this);f();return d},cropData:function(f,h,d,g){h=n.prototype.cropData.call(this,this.x2Data,h,d,g);h.xData=f.slice(h.start,h.end);return h},findPointIndex:function(f){var h=this.cropped,d=this.cropStart,g=this.points,a=f.id;if(a)var k=(k=p(g,function(b){return b.id===a}))?k.index:void 0;
  621. "undefined"===typeof k&&(k=(k=p(g,function(b){return b.x===f.x&&b.x2===f.x2&&!b.touched}))?k.index:void 0);h&&I(k)&&I(d)&&k>=d&&(k-=d);return k},translatePoint:function(f){var h=this.xAxis,d=this.yAxis,g=this.columnMetrics,a=this.options,k=a.minPointLength||0,b=f.plotX,l=H(f.x2,f.x+(f.len||0)),m=h.translate(l,0,0,0,1);l=Math.abs(m-b);var n=this.chart.inverted,p=H(a.borderWidth,1)%2/2,t=g.offset,r=Math.round(g.width);k&&(k-=l,0>k&&(k=0),b-=k/2,m+=k/2);b=Math.max(b,-10);m=E(m,-10,h.len+10);x(f.options.pointWidth)&&
  622. (t-=(Math.ceil(f.options.pointWidth)-r)/2,r=Math.ceil(f.options.pointWidth));a.pointPlacement&&I(f.plotY)&&d.categories&&(f.plotY=d.translate(f.y,0,1,0,1,a.pointPlacement));f.shapeArgs={x:Math.floor(Math.min(b,m))+p,y:Math.floor(f.plotY+t)+p,width:Math.round(Math.abs(m-b)),height:r,r:this.options.borderRadius};a=f.shapeArgs.x;k=a+f.shapeArgs.width;0>a||k>h.len?(a=E(a,0,h.len),k=E(k,0,h.len),m=k-a,f.dlBox=J(f.shapeArgs,{x:a,width:k-a,centerX:m?m/2:null})):f.dlBox=null;a=f.tooltipPos;k=n?1:0;m=n?0:
  623. 1;g=this.columnMetrics?this.columnMetrics.offset:-g.width/2;a[k]=E(a[k]+l/2*(h.reversed?-1:1)*(n?-1:1),0,h.len-1);a[m]=E(a[m]+(n?-1:1)*g,0,d.len-1);if(g=f.partialFill)w(g)&&(g=g.amount),I(g)||(g=0),d=f.shapeArgs,f.partShapeArgs={x:d.x,y:d.y,width:d.width,height:d.height,r:this.options.borderRadius},b=Math.max(Math.round(l*g+f.plotX-b),0),f.clipRectArgs={x:h.reversed?d.x+l-b:d.x,y:d.y,width:b,height:d.height}},translate:function(){u.prototype.translate.apply(this,arguments);this.points.forEach(function(f){this.translatePoint(f)},
  624. this)},drawPoint:function(f,h){var d=this.options,g=this.chart.renderer,a=f.graphic,k=f.shapeType,b=f.shapeArgs,l=f.partShapeArgs,m=f.clipRectArgs,n=f.partialFill,p=d.stacking&&!d.borderRadius,t=f.state,r=d.states[t||"normal"]||{},u="undefined"===typeof t?"attr":h;t=this.pointAttribs(f,t);r=H(this.chart.options.chart.animation,r.animation);if(f.isNull||!1===f.visible)a&&(f.graphic=a.destroy());else{if(a)a.rect[h](b);else f.graphic=a=g.g("point").addClass(f.getClassName()).add(f.group||this.group),
  625. a.rect=g[k](J(b)).addClass(f.getClassName()).addClass("highcharts-partfill-original").add(a);l&&(a.partRect?(a.partRect[h](J(l)),a.partialClipRect[h](J(m))):(a.partialClipRect=g.clipRect(m.x,m.y,m.width,m.height),a.partRect=g[k](l).addClass("highcharts-partfill-overlay").add(a).clip(a.partialClipRect)));this.chart.styledMode||(a.rect[h](t,r).shadow(d.shadow,null,p),l&&(w(n)||(n={}),w(d.partialFill)&&(n=J(n,d.partialFill)),f=n.fill||B(t.fill).brighten(-.3).get()||B(f.color||this.color).brighten(-.3).get(),
  626. t.fill=f,a.partRect[u](t,r).shadow(d.shadow,null,p)))}},drawPoints:function(){var f=this,h=f.getAnimationVerb();f.points.forEach(function(d){f.drawPoint(d,h)})},getAnimationVerb:function(){return this.chart.pointCount<(this.options.animationLimit||250)?"animate":"attr"}},{resolveColor:function(){var f=this.series;if(f.options.colorByPoint&&!this.options.color){var h=f.options.colors||f.chart.options.colors;var d=this.y%(h?h.length:f.chart.options.chart.colorCount);h=h&&h[d];f.chart.styledMode||(this.color=
  627. h);this.options.colorIndex||(this.colorIndex=d)}else this.color||(this.color=f.color)},init:function(){C.prototype.init.apply(this,arguments);this.y||(this.y=0);return this},setState:function(){C.prototype.setState.apply(this,arguments);this.series.drawPoint(this,this.series.getAnimationVerb())},getLabelConfig:function(){var f=C.prototype.getLabelConfig.call(this),h=this.series.yAxis.categories;f.x2=this.x2;f.yCategory=this.yCategory=h&&h[this.y];return f},tooltipDateKeys:["x","x2"],isValid:function(){return"number"===
  628. typeof this.x&&"number"===typeof this.x2}});v(r,"afterGetSeriesExtremes",function(){var f=this.series,h;if(this.isXAxis){var d=H(this.dataMax,-Number.MAX_VALUE);f.forEach(function(f){f.x2Data&&f.x2Data.forEach(function(a){a>d&&(d=a,h=!0)})});h&&(this.dataMax=d)}});""});M(v,"Series/GanttSeries.js",[v["Core/Globals.js"],v["Core/Options.js"],v["Core/Utilities.js"]],function(r,f,v){var C=f.dateFormat,z=v.isNumber,B=v.merge,E=v.pick;f=v.seriesType;var D=v.splat,x=r.seriesTypes.xrange;f("gantt","xrange",
  629. {grouping:!1,dataLabels:{enabled:!0},tooltip:{headerFormat:'<span style="font-size: 10px">{series.name}</span><br/>',pointFormat:null,pointFormatter:function(){var f=this.series,r=f.chart.tooltip,v=f.xAxis,x=f.tooltipOptions.dateTimeLabelFormats,z=v.options.startOfWeek,u=f.tooltipOptions,m=u.xDateFormat;f=this.options.milestone;var n="<b>"+(this.name||this.yCategory)+"</b>";if(u.pointFormat)return this.tooltipFormatter(u.pointFormat);m||(m=D(r.getDateFormat(v.closestPointRange,this.start,z,x))[0]);
  630. r=C(m,this.start);v=C(m,this.end);n+="<br/>";return f?n+(r+"<br/>"):n+("Start: "+r+"<br/>End: ")+(v+"<br/>")}},connectors:{type:"simpleConnect",animation:{reversed:!0},startMarker:{enabled:!0,symbol:"arrow-filled",radius:4,fill:"#fa0",align:"left"},endMarker:{enabled:!1,align:"right"}}},{pointArrayMap:["start","end","y"],keyboardMoveVertical:!1,translatePoint:function(f){x.prototype.translatePoint.call(this,f);if(f.options.milestone){var p=f.shapeArgs;var r=p.height;f.shapeArgs={x:p.x-r/2,y:p.y,width:r,
  631. height:r}}},drawPoint:function(f,r){var p=this.options,v=this.chart.renderer,C=f.shapeArgs,u=f.plotY,m=f.graphic,n=f.selected&&"select",l=p.stacking&&!p.borderRadius;if(f.options.milestone)if(z(u)&&null!==f.y&&!1!==f.visible){C=v.symbols.diamond(C.x,C.y,C.width,C.height);if(m)m[r]({d:C});else f.graphic=v.path(C).addClass(f.getClassName(),!0).add(f.group||this.group);this.chart.styledMode||f.graphic.attr(this.pointAttribs(f,n)).shadow(p.shadow,null,l)}else m&&(f.graphic=m.destroy());else x.prototype.drawPoint.call(this,
  632. f,r)},setData:r.Series.prototype.setData,setGanttPointAliases:function(f){function p(p,r){"undefined"!==typeof r&&(f[p]=r)}p("x",E(f.start,f.x));p("x2",E(f.end,f.x2));p("partialFill",E(f.completed,f.partialFill));p("connect",E(f.dependency,f.connect))}},B(x.prototype.pointClass.prototype,{applyOptions:function(f,v){f=B(f);r.seriesTypes.gantt.prototype.setGanttPointAliases(f);return f=x.prototype.pointClass.prototype.applyOptions.call(this,f,v)},isValid:function(){return("number"===typeof this.start||
  633. "number"===typeof this.x)&&("number"===typeof this.end||"number"===typeof this.x2||this.milestone)}}));""});M(v,"Core/Chart/GanttChart.js",[v["Core/Chart/Chart.js"],v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f,v){var C=v.getOptions,z=v.isArray,B=v.merge,E=v.splat;f.ganttChart=function(v,x,p){var D="string"===typeof v||v.nodeName,w=x.series,J=C(),H,u=x;x=arguments[D?1:0];z(x.xAxis)||(x.xAxis=[x.xAxis||{},{}]);x.xAxis=x.xAxis.map(function(f,n){1===n&&(H=0);return B(J.xAxis,{grid:{enabled:!0},
  634. opposite:!0,linkedTo:H},f,{type:"datetime"})});x.yAxis=E(x.yAxis||{}).map(function(f){return B(J.yAxis,{grid:{enabled:!0},staticScale:50,reversed:!0,type:f.categories?f.type:"treegrid"},f)});x.series=null;x=B(!0,{chart:{type:"gantt"},title:{text:null},legend:{enabled:!1},navigator:{series:{type:"gantt"}}},x,{isGantt:!0});x.series=u.series=w;(x.series||[]).forEach(function(m){m.data&&m.data.forEach(function(m){f.seriesTypes.gantt.prototype.setGanttPointAliases(m)})});return D?new r(v,x,p):new r(x,
  635. x)}});M(v,"Core/Axis/ScrollbarAxis.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=f.addEvent,C=f.defined,z=f.pick;return function(){function f(){}f.compose=function(f,B){v(f,"afterInit",function(){var f=this;f.options&&f.options.scrollbar&&f.options.scrollbar.enabled&&(f.options.scrollbar.vertical=!f.horiz,f.options.startOnTick=f.options.endOnTick=!1,f.scrollbar=new B(f.chart.renderer,f.options.scrollbar,f.chart),v(f.scrollbar,"changed",function(p){var v=z(f.options&&f.options.min,
  636. f.min),w=z(f.options&&f.options.max,f.max),x=C(f.dataMin)?Math.min(v,f.min,f.dataMin):v,B=(C(f.dataMax)?Math.max(w,f.max,f.dataMax):w)-x;C(v)&&C(w)&&(f.horiz&&!f.reversed||!f.horiz&&f.reversed?(v=x+B*this.to,x+=B*this.from):(v=x+B*(1-this.from),x+=B*(1-this.to)),z(this.options.liveRedraw,r.svg&&!r.isTouchDevice&&!this.chart.isBoosting)||"mouseup"===p.DOMType||!C(p.DOMType)?f.setExtremes(x,v,!0,"mousemove"!==p.DOMType,p):this.setRange(this.from,this.to))}))});v(f,"afterRender",function(){var f=Math.min(z(this.options.min,
  637. this.min),this.min,z(this.dataMin,this.min)),p=Math.max(z(this.options.max,this.max),this.max,z(this.dataMax,this.max)),r=this.scrollbar,v=this.axisTitleMargin+(this.titleOffset||0),B=this.chart.scrollbarsOffsets,D=this.options.margin||0;r&&(this.horiz?(this.opposite||(B[1]+=v),r.position(this.left,this.top+this.height+2+B[1]-(this.opposite?D:0),this.width,this.height),this.opposite||(B[1]+=D),v=1):(this.opposite&&(B[0]+=v),r.position(this.left+this.width+2+B[0]-(this.opposite?0:D),this.top,this.width,
  638. this.height),this.opposite&&(B[0]+=D),v=0),B[v]+=r.size+r.options.margin,isNaN(f)||isNaN(p)||!C(this.min)||!C(this.max)||this.min===this.max?r.setRange(0,1):(B=(this.min-f)/(p-f),f=(this.max-f)/(p-f),this.horiz&&!this.reversed||!this.horiz&&this.reversed?r.setRange(B,f):r.setRange(1-f,1-B)))});v(f,"afterGetOffset",function(){var f=this.horiz?2:1,p=this.scrollbar;p&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[f]+=p.size+p.options.margin)})};return f}()});M(v,"Core/Scrollbar.js",[v["Core/Axis/Axis.js"],
  639. v["Core/Globals.js"],v["Core/Axis/ScrollbarAxis.js"],v["Core/Utilities.js"],v["Core/Options.js"]],function(r,f,v,C,z){var B=C.addEvent,E=C.correctFloat,D=C.defined,x=C.destroyObjectProperties,p=C.fireEvent,I=C.merge,w=C.pick,J=C.removeEvent;C=z.defaultOptions;var H=f.hasTouch,u=f.isTouchDevice,m=f.swapXY=function(f,l){l&&f.forEach(function(f){for(var d=f.length,g,a=0;a<d;a+=2)g=f[a+1],"number"===typeof g&&(f[a+1]=f[a+2],f[a+2]=g)});return f};z=function(){function f(f,h,d){this._events=[];this.from=
  640. this.chartY=this.chartX=0;this.scrollbar=this.group=void 0;this.scrollbarButtons=[];this.scrollbarGroup=void 0;this.scrollbarLeft=0;this.scrollbarRifles=void 0;this.scrollbarStrokeWidth=1;this.to=this.size=this.scrollbarTop=0;this.track=void 0;this.trackBorderWidth=1;this.userOptions={};this.y=this.x=0;this.chart=d;this.options=h;this.renderer=d.renderer;this.init(f,h,d)}f.prototype.addEvents=function(){var f=this.options.inverted?[1,0]:[0,1],h=this.scrollbarButtons,d=this.scrollbarGroup.element,
  641. g=this.track.element,a=this.mouseDownHandler.bind(this),k=this.mouseMoveHandler.bind(this),b=this.mouseUpHandler.bind(this);f=[[h[f[0]].element,"click",this.buttonToMinClick.bind(this)],[h[f[1]].element,"click",this.buttonToMaxClick.bind(this)],[g,"click",this.trackClick.bind(this)],[d,"mousedown",a],[d.ownerDocument,"mousemove",k],[d.ownerDocument,"mouseup",b]];H&&f.push([d,"touchstart",a],[d.ownerDocument,"touchmove",k],[d.ownerDocument,"touchend",b]);f.forEach(function(b){B.apply(null,b)});this._events=
  642. f};f.prototype.buttonToMaxClick=function(f){var h=(this.to-this.from)*w(this.options.step,.2);this.updatePosition(this.from+h,this.to+h);p(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:f})};f.prototype.buttonToMinClick=function(f){var h=E(this.to-this.from)*w(this.options.step,.2);this.updatePosition(E(this.from-h),E(this.to-h));p(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:f})};f.prototype.cursorToScrollbarPosition=function(f){var h=this.options;
  643. h=h.minWidth>this.calculatedWidth?h.minWidth:0;return{chartX:(f.chartX-this.x-this.xOffset)/(this.barWidth-h),chartY:(f.chartY-this.y-this.yOffset)/(this.barWidth-h)}};f.prototype.destroy=function(){var f=this.chart.scroller;this.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(f){this[f]&&this[f].destroy&&(this[f]=this[f].destroy())},this);f&&this===f.scrollbar&&(f.scrollbar=null,x(f.scrollbarButtons))};f.prototype.drawScrollbarButton=function(f){var h=
  644. this.renderer,d=this.scrollbarButtons,g=this.options,a=this.size;var k=h.g().add(this.group);d.push(k);k=h.rect().addClass("highcharts-scrollbar-button").add(k);this.chart.styledMode||k.attr({stroke:g.buttonBorderColor,"stroke-width":g.buttonBorderWidth,fill:g.buttonBackgroundColor});k.attr(k.crisp({x:-.5,y:-.5,width:a+1,height:a+1,r:g.buttonBorderRadius},k.strokeWidth()));k=h.path(m([["M",a/2+(f?-1:1),a/2-3],["L",a/2+(f?-1:1),a/2+3],["L",a/2+(f?2:-2),a/2]],g.vertical)).addClass("highcharts-scrollbar-arrow").add(d[f]);
  645. this.chart.styledMode||k.attr({fill:g.buttonArrowColor})};f.prototype.init=function(l,h,d){this.scrollbarButtons=[];this.renderer=l;this.userOptions=h;this.options=I(f.defaultOptions,h);this.chart=d;this.size=w(this.options.size,this.options.height);h.enabled&&(this.render(),this.addEvents())};f.prototype.mouseDownHandler=function(f){f=this.chart.pointer.normalize(f);f=this.cursorToScrollbarPosition(f);this.chartX=f.chartX;this.chartY=f.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=
  646. !0};f.prototype.mouseMoveHandler=function(f){var h=this.chart.pointer.normalize(f),d=this.options.vertical?"chartY":"chartX",g=this.initPositions||[];!this.grabbedCenter||f.touches&&0===f.touches[0][d]||(h=this.cursorToScrollbarPosition(h)[d],d=this[d],d=h-d,this.hasDragged=!0,this.updatePosition(g[0]+d,g[1]+d),this.hasDragged&&p(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:f.type,DOMEvent:f}))};f.prototype.mouseUpHandler=function(f){this.hasDragged&&p(this,"changed",{from:this.from,
  647. to:this.to,trigger:"scrollbar",DOMType:f.type,DOMEvent:f});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};f.prototype.position=function(f,h,d,g){var a=this.options.vertical,k=0,b=this.rendered?"animate":"attr";this.x=f;this.y=h+this.trackBorderWidth;this.width=d;this.xOffset=this.height=g;this.yOffset=k;a?(this.width=this.yOffset=d=k=this.size,this.xOffset=h=0,this.barWidth=g-2*d,this.x=f+=this.options.margin):(this.height=this.xOffset=g=h=this.size,this.barWidth=d-2*g,this.y+=this.options.margin);
  648. this.group[b]({translateX:f,translateY:this.y});this.track[b]({width:d,height:g});this.scrollbarButtons[1][b]({translateX:a?0:d-h,translateY:a?g-k:0})};f.prototype.removeEvents=function(){this._events.forEach(function(f){J.apply(null,f)});this._events.length=0};f.prototype.render=function(){var f=this.renderer,h=this.options,d=this.size,g=this.chart.styledMode,a;this.group=a=f.g("scrollbar").attr({zIndex:h.zIndex,translateY:-99999}).add();this.track=f.rect().addClass("highcharts-scrollbar-track").attr({x:0,
  649. r:h.trackBorderRadius||0,height:d,width:d}).add(a);g||this.track.attr({fill:h.trackBackgroundColor,stroke:h.trackBorderColor,"stroke-width":h.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%2/2});this.scrollbarGroup=f.g().add(a);this.scrollbar=f.rect().addClass("highcharts-scrollbar-thumb").attr({height:d,width:d,r:h.barBorderRadius||0}).add(this.scrollbarGroup);this.scrollbarRifles=f.path(m([["M",-3,d/4],["L",-3,2*d/3],["M",0,d/4],["L",
  650. 0,2*d/3],["M",3,d/4],["L",3,2*d/3]],h.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);g||(this.scrollbar.attr({fill:h.barBackgroundColor,stroke:h.barBorderColor,"stroke-width":h.barBorderWidth}),this.scrollbarRifles.attr({stroke:h.rifleColor,"stroke-width":1}));this.scrollbarStrokeWidth=this.scrollbar.strokeWidth();this.scrollbarGroup.translate(-this.scrollbarStrokeWidth%2/2,-this.scrollbarStrokeWidth%2/2);this.drawScrollbarButton(0);this.drawScrollbarButton(1)};f.prototype.setRange=
  651. function(f,h){var d=this.options,g=d.vertical,a=d.minWidth,k=this.barWidth,b,l=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(D(k)){f=Math.max(f,0);var m=Math.ceil(k*f);this.calculatedWidth=b=E(k*Math.min(h,1)-m);b<a&&(m=(k-a+b)*f,b=a);a=Math.floor(m+this.xOffset+this.yOffset);k=b/2-.5;this.from=f;this.to=h;g?(this.scrollbarGroup[l]({translateY:a}),this.scrollbar[l]({height:b}),this.scrollbarRifles[l]({translateY:k}),this.scrollbarTop=a,
  652. this.scrollbarLeft=0):(this.scrollbarGroup[l]({translateX:a}),this.scrollbar[l]({width:b}),this.scrollbarRifles[l]({translateX:k}),this.scrollbarLeft=a,this.scrollbarTop=0);12>=b?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===d.showFull&&(0>=f&&1<=h?this.group.hide():this.group.show());this.rendered=!0}};f.prototype.trackClick=function(f){var h=this.chart.pointer.normalize(f),d=this.to-this.from,g=this.y+this.scrollbarTop,a=this.x+this.scrollbarLeft;this.options.vertical&&h.chartY>
  653. g||!this.options.vertical&&h.chartX>a?this.updatePosition(this.from+d,this.to+d):this.updatePosition(this.from-d,this.to-d);p(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:f})};f.prototype.update=function(f){this.destroy();this.init(this.chart.renderer,I(!0,this.options,f),this.chart)};f.prototype.updatePosition=function(f,h){1<h&&(f=E(1-E(h-f)),h=1);0>f&&(h=E(h-f),f=0);this.from=f;this.to=h};f.defaultOptions={height:u?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,
  654. margin:10,minWidth:6,step:.2,zIndex:3,barBackgroundColor:"#cccccc",barBorderWidth:1,barBorderColor:"#cccccc",buttonArrowColor:"#333333",buttonBackgroundColor:"#e6e6e6",buttonBorderColor:"#cccccc",buttonBorderWidth:1,rifleColor:"#333333",trackBackgroundColor:"#f2f2f2",trackBorderColor:"#f2f2f2",trackBorderWidth:1};return f}();f.Scrollbar||(C.scrollbar=I(!0,z.defaultOptions,C.scrollbar),f.Scrollbar=z,v.compose(r,z));return f.Scrollbar});M(v,"Extensions/RangeSelector.js",[v["Core/Axis/Axis.js"],v["Core/Chart/Chart.js"],
  655. v["Core/Globals.js"],v["Core/Options.js"],v["Core/Renderer/SVG/SVGElement.js"],v["Core/Utilities.js"]],function(r,f,v,C,z,B){var E=C.defaultOptions,D=B.addEvent,x=B.createElement,p=B.css,I=B.defined,w=B.destroyObjectProperties,J=B.discardElement,H=B.extend,u=B.fireEvent,m=B.isNumber,n=B.merge,l=B.objectEach,h=B.pick,d=B.pInt,g=B.splat;H(E,{rangeSelector:{verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputPosition:{align:"right",x:0,y:0},
  656. buttonPosition:{align:"left",x:0,y:0},labelStyle:{color:"#666666"}}});E.lang=n(E.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"From",rangeSelectorTo:"To"});var a=function(){function a(b){this.buttons=void 0;this.buttonOptions=a.prototype.defaultButtons;this.options=void 0;this.chart=b;this.init(b)}a.prototype.clickButton=function(b,a){var d=this.chart,f=this.buttonOptions[b],k=d.xAxis[0],l=d.scroller&&d.scroller.getUnionExtremes()||k||{},n=l.dataMin,p=l.dataMax,u=k&&Math.round(Math.min(k.max,
  657. h(p,k.max))),c=f.type;l=f._range;var e,q=f.dataGrouping;if(null!==n&&null!==p){d.fixedRange=l;q&&(this.forcedDataGrouping=!0,r.prototype.setDataGrouping.call(k||{chart:this.chart},q,!1),this.frozenStates=f.preserveDataGrouping);if("month"===c||"year"===c)if(k){c={range:f,max:u,chart:d,dataMin:n,dataMax:p};var v=k.minFromRange.call(c);m(c.newMax)&&(u=c.newMax)}else l=f;else if(l)v=Math.max(u-l,n),u=Math.min(v+l,p);else if("ytd"===c)if(k)"undefined"===typeof p&&(n=Number.MAX_VALUE,p=Number.MIN_VALUE,
  658. d.series.forEach(function(c){c=c.xData;n=Math.min(c[0],n);p=Math.max(c[c.length-1],p)}),a=!1),u=this.getYTDExtremes(p,n,d.time.useUTC),v=e=u.min,u=u.max;else{this.deferredYTDClick=b;return}else"all"===c&&k&&(v=n,u=p);I(v)&&(v+=f._offsetMin);I(u)&&(u+=f._offsetMax);this.setSelected(b);if(k)k.setExtremes(v,u,h(a,1),null,{trigger:"rangeSelectorButton",rangeSelectorButton:f});else{var w=g(d.options.xAxis)[0];var x=w.range;w.range=l;var z=w.min;w.min=e;D(d,"load",function(){w.range=x;w.min=z})}}};a.prototype.setSelected=
  659. function(b){this.selected=this.options.selected=b};a.prototype.init=function(b){var a=this,d=b.options.rangeSelector,f=d.buttons||a.defaultButtons.slice(),g=d.selected,h=function(){var b=a.minInput,d=a.maxInput;b&&b.blur&&u(b,"blur");d&&d.blur&&u(d,"blur")};a.chart=b;a.options=d;a.buttons=[];a.buttonOptions=f;this.unMouseDown=D(b.container,"mousedown",h);this.unResize=D(b,"resize",h);f.forEach(a.computeButtonRange);"undefined"!==typeof g&&f[g]&&this.clickButton(g,!1);D(b,"load",function(){b.xAxis&&
  660. b.xAxis[0]&&D(b.xAxis[0],"setExtremes",function(d){this.max-this.min!==b.fixedRange&&"rangeSelectorButton"!==d.trigger&&"updatedData"!==d.trigger&&a.forcedDataGrouping&&!a.frozenStates&&this.setDataGrouping(!1,!1)})})};a.prototype.updateButtonStates=function(){var b=this,a=this.chart,d=a.xAxis[0],f=Math.round(d.max-d.min),g=!d.hasVisibleSeries,h=a.scroller&&a.scroller.getUnionExtremes()||d,k=h.dataMin,l=h.dataMax;a=b.getYTDExtremes(l,k,a.time.useUTC);var n=a.min,c=a.max,e=b.selected,q=m(e),p=b.options.allButtonsEnabled,
  661. r=b.buttons;b.buttonOptions.forEach(function(a,h){var t=a._range,m=a.type,u=a.count||1,v=r[h],w=0,A=a._offsetMax-a._offsetMin;a=h===e;var y=t>l-k,x=t<d.minRange,z=!1,G=!1;t=t===f;("month"===m||"year"===m)&&f+36E5>=864E5*{month:28,year:365}[m]*u-A&&f-36E5<=864E5*{month:31,year:366}[m]*u+A?t=!0:"ytd"===m?(t=c-n+A===f,z=!a):"all"===m&&(t=d.max-d.min>=l-k,G=!a&&q&&t);m=!p&&(y||x||G||g);u=a&&t||t&&!q&&!z||a&&b.frozenStates;m?w=3:u&&(q=!0,w=2);v.state!==w&&(v.setState(w),0===w&&e===h&&b.setSelected(null))})};
  662. a.prototype.computeButtonRange=function(a){var b=a.type,d=a.count||1,f={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5};if(f[b])a._range=f[b]*d;else if("month"===b||"year"===b)a._range=864E5*{month:30,year:365}[b]*d;a._offsetMin=h(a.offsetMin,0);a._offsetMax=h(a.offsetMax,0);a._range+=a._offsetMax-a._offsetMin};a.prototype.setInputValue=function(a,d){var b=this.chart.options.rangeSelector,f=this.chart.time,g=this[a+"Input"];I(d)&&(g.previousValue=g.HCTime,g.HCTime=d);g.value=
  663. f.dateFormat(b.inputEditDateFormat||"%Y-%m-%d",g.HCTime);this[a+"DateBox"].attr({text:f.dateFormat(b.inputDateFormat||"%b %e, %Y",g.HCTime)})};a.prototype.showInput=function(a){var b=this.inputGroup,d=this[a+"DateBox"];p(this[a+"Input"],{left:b.translateX+d.x+"px",top:b.translateY+"px",width:d.width-2+"px",height:d.height-2+"px",border:"2px solid silver"})};a.prototype.hideInput=function(a){p(this[a+"Input"],{border:0,width:"1px",height:"1px"});this.setInputValue(a)};a.prototype.defaultInputDateParser=
  664. function(a,d){var b=new Date;return v.isSafari?Date.parse(a.split(" ").join("T")):d?Date.parse(a+"Z"):Date.parse(a)-6E4*b.getTimezoneOffset()};a.prototype.drawInput=function(a){function b(){var a=c.value,b=g.xAxis[0];var e=g.scroller&&g.scroller.xAxis?g.scroller.xAxis:b;var h=e.dataMin,k=e.dataMax;e=(l.inputDateParser||w)(a,g.time.useUTC);e!==c.previousValue&&(c.previousValue=e,m(e)||(e=a.split("-"),e=Date.UTC(d(e[0]),d(e[1])-1,d(e[2]))),m(e)&&(g.time.useUTC||(e+=6E4*(new Date).getTimezoneOffset()),
  665. u?e>f.maxInput.HCTime?e=void 0:e<h&&(e=h):e<f.minInput.HCTime?e=void 0:e>k&&(e=k),"undefined"!==typeof e&&b.setExtremes(u?e:b.min,u?b.max:e,void 0,void 0,{trigger:"rangeSelectorInput"})))}var f=this,g=f.chart,h=g.renderer.style||{},k=g.renderer,l=g.options.rangeSelector,r=f.div,u="min"===a,c,e,q=this.inputGroup,w=this.defaultInputDateParser;this[a+"Label"]=e=k.label(E.lang[u?"rangeSelectorFrom":"rangeSelectorTo"],this.inputGroup.offset).addClass("highcharts-range-label").attr({padding:2}).add(q);
  666. q.offset+=e.width+5;this[a+"DateBox"]=k=k.label("",q.offset).addClass("highcharts-range-input").attr({padding:2,width:l.inputBoxWidth||90,height:l.inputBoxHeight||17,"text-align":"center"}).on("click",function(){f.showInput(a);f[a+"Input"].focus()});g.styledMode||k.attr({stroke:l.inputBoxBorderColor||"#cccccc","stroke-width":1});k.add(q);q.offset+=k.width+(u?10:0);this[a+"Input"]=c=x("input",{name:a,className:"highcharts-range-selector",type:"text"},{top:g.plotTop+"px"},r);g.styledMode||(e.css(n(h,
  667. l.labelStyle)),k.css(n({color:"#333333"},h,l.inputStyle)),p(c,H({position:"absolute",border:0,width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:h.fontSize,fontFamily:h.fontFamily,top:"-9999em"},l.inputStyle)));c.onfocus=function(){f.showInput(a)};c.onblur=function(){c===v.doc.activeElement&&b();f.hideInput(a);c.blur()};c.onchange=b;c.onkeypress=function(c){13===c.keyCode&&b()}};a.prototype.getPosition=function(){var a=this.chart,d=a.options.rangeSelector;a="top"===d.verticalAlign?a.plotTop-
  668. a.axisOffset[0]:0;return{buttonTop:a+d.buttonPosition.y,inputTop:a+d.inputPosition.y-10}};a.prototype.getYTDExtremes=function(a,d,f){var b=this.chart.time,g=new b.Date(a),h=b.get("FullYear",g);f=f?b.Date.UTC(h,0,1):+new b.Date(h,0,1);d=Math.max(d||0,f);g=g.getTime();return{max:Math.min(a||g,g),min:d}};a.prototype.render=function(a,d){var b=this,f=b.chart,g=f.renderer,k=f.container,l=f.options,m=l.exporting&&!1!==l.exporting.enabled&&l.navigation&&l.navigation.buttonOptions,n=E.lang,c=b.div,e=l.rangeSelector,
  669. q=h(l.chart.style&&l.chart.style.zIndex,0)+1;l=e.floating;var p=b.buttons;c=b.inputGroup;var r=e.buttonTheme,u=e.buttonPosition,v=e.inputPosition,w=e.inputEnabled,z=r&&r.states,B=f.plotLeft,C=b.buttonGroup,F,D=b.options.verticalAlign,H=f.legend,I=H&&H.options,J=u.y,M=v.y,Q=f.hasLoaded,R=Q?"animate":"attr",T=0,U=0;if(!1!==e.enabled){b.rendered||(b.group=F=g.g("range-selector-group").attr({zIndex:7}).add(),b.buttonGroup=C=g.g("range-selector-buttons").add(F),b.zoomText=g.text(n.rangeSelectorZoom,0,
  670. 15).add(C),f.styledMode||(b.zoomText.css(e.labelStyle),r["stroke-width"]=h(r["stroke-width"],0)),b.buttonOptions.forEach(function(c,a){p[a]=g.button(c.text,0,0,function(e){var d=c.events&&c.events.click,f;d&&(f=d.call(c,e));!1!==f&&b.clickButton(a);b.isActive=!0},r,z&&z.hover,z&&z.select,z&&z.disabled).attr({"text-align":"center"}).add(C)}),!1!==w&&(b.div=c=x("div",null,{position:"relative",height:0,zIndex:q}),k.parentNode.insertBefore(c,k),b.inputGroup=c=g.g("input-group").add(F),c.offset=0,b.drawInput("min"),
  671. b.drawInput("max")));b.zoomText[R]({x:h(B+u.x,B)});var da=h(B+u.x,B)+b.zoomText.getBBox().width+5;b.buttonOptions.forEach(function(c,a){p[a][R]({x:da});da+=p[a].width+h(e.buttonSpacing,5)});B=f.plotLeft-f.spacing[3];b.updateButtonStates();m&&this.titleCollision(f)&&"top"===D&&"right"===u.align&&u.y+C.getBBox().height-12<(m.y||0)+m.height&&(T=-40);k=u.x-f.spacing[3];"right"===u.align?k+=T-B:"center"===u.align&&(k-=B/2);C.align({y:u.y,width:C.getBBox().width,align:u.align,x:k},!0,f.spacingBox);b.group.placed=
  672. Q;b.buttonGroup.placed=Q;!1!==w&&(T=m&&this.titleCollision(f)&&"top"===D&&"right"===v.align&&v.y-c.getBBox().height-12<(m.y||0)+m.height+f.spacing[0]?-40:0,"left"===v.align?k=B:"right"===v.align&&(k=-Math.max(f.axisOffset[1],-T)),c.align({y:v.y,width:c.getBBox().width,align:v.align,x:v.x+k-2},!0,f.spacingBox),m=c.alignAttr.translateX+c.alignOptions.x-T+c.getBBox().x+2,k=c.alignOptions.width,n=C.alignAttr.translateX+C.getBBox().x,B=C.getBBox().width+20,(v.align===u.align||n+B>m&&m+k>n&&J<M+c.getBBox().height)&&
  673. c.attr({translateX:c.alignAttr.translateX+(f.axisOffset[1]>=-T?0:-T),translateY:c.alignAttr.translateY+C.getBBox().height+10}),b.setInputValue("min",a),b.setInputValue("max",d),b.inputGroup.placed=Q);b.group.align({verticalAlign:D},!0,f.spacingBox);a=b.group.getBBox().height+20;d=b.group.alignAttr.translateY;"bottom"===D&&(H=I&&"bottom"===I.verticalAlign&&I.enabled&&!I.floating?H.legendHeight+h(I.margin,10):0,a=a+H-20,U=d-a-(l?0:e.y)-(f.titleOffset?f.titleOffset[2]:0)-10);if("top"===D)l&&(U=0),f.titleOffset&&
  674. f.titleOffset[0]&&(U=f.titleOffset[0]),U+=f.margin[0]-f.spacing[0]||0;else if("middle"===D)if(M===J)U=0>M?d+void 0:d;else if(M||J)U=0>M||0>J?U-Math.min(M,J):d-a+NaN;b.group.translate(e.x,e.y+Math.floor(U));!1!==w&&(b.minInput.style.marginTop=b.group.translateY+"px",b.maxInput.style.marginTop=b.group.translateY+"px");b.rendered=!0}};a.prototype.getHeight=function(){var a=this.options,d=this.group,f=a.y,g=a.buttonPosition.y,k=a.inputPosition.y;if(a.height)return a.height;a=d?d.getBBox(!0).height+13+
  675. f:0;d=Math.min(k,g);if(0>k&&0>g||0<k&&0<g)a+=Math.abs(d);return a};a.prototype.titleCollision=function(a){return!(a.options.title.text||a.options.subtitle.text)};a.prototype.update=function(a){var b=this.chart;n(!0,b.options.rangeSelector,a);this.destroy();this.init(b);b.rangeSelector.render()};a.prototype.destroy=function(){var b=this,d=b.minInput,f=b.maxInput;b.unMouseDown();b.unResize();w(b.buttons);d&&(d.onfocus=d.onblur=d.onchange=null);f&&(f.onfocus=f.onblur=f.onchange=null);l(b,function(d,
  676. f){d&&"chart"!==f&&(d instanceof z?d.destroy():d instanceof window.HTMLElement&&J(d));d!==a.prototype[f]&&(b[f]=null)},this)};return a}();a.prototype.defaultButtons=[{type:"month",count:1,text:"1m"},{type:"month",count:3,text:"3m"},{type:"month",count:6,text:"6m"},{type:"ytd",text:"YTD"},{type:"year",count:1,text:"1y"},{type:"all",text:"All"}];r.prototype.minFromRange=function(){var a=this.range,b=a.type,d=this.max,f=this.chart.time,g=function(a,d){var c="year"===b?"FullYear":"Month",e=new f.Date(a),
  677. g=f.get(c,e);f.set(c,e,g+d);g===f.get(c,e)&&f.set("Date",e,0);return e.getTime()-a};if(m(a)){var l=d-a;var t=a}else l=d+g(d,-a.count),this.chart&&(this.chart.fixedRange=d-l);var n=h(this.dataMin,Number.MIN_VALUE);m(l)||(l=n);l<=n&&(l=n,"undefined"===typeof t&&(t=g(l,a.count)),this.newMax=Math.min(l+t,this.dataMax));m(d)||(l=void 0);return l};v.RangeSelector||(D(f,"afterGetContainer",function(){this.options.rangeSelector.enabled&&(this.rangeSelector=new a(this))}),D(f,"beforeRender",function(){var a=
  678. this.axes,b=this.rangeSelector;b&&(m(b.deferredYTDClick)&&(b.clickButton(b.deferredYTDClick),delete b.deferredYTDClick),a.forEach(function(a){a.updateNames();a.setScale()}),this.getAxisMargins(),b.render(),a=b.options.verticalAlign,b.options.floating||("bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=!0)))}),D(f,"update",function(d){var b=d.options.rangeSelector;d=this.rangeSelector;var f=this.extraBottomMargin,g=this.extraTopMargin;b&&b.enabled&&!I(d)&&(this.options.rangeSelector.enabled=
  679. !0,this.rangeSelector=new a(this));this.extraTopMargin=this.extraBottomMargin=!1;d&&(d.render(),b=b&&b.verticalAlign||d.options&&d.options.verticalAlign,d.options.floating||("bottom"===b?this.extraBottomMargin=!0:"middle"!==b&&(this.extraTopMargin=!0)),this.extraBottomMargin!==f||this.extraTopMargin!==g)&&(this.isDirtyBox=!0)}),D(f,"render",function(){var a=this.rangeSelector;a&&!a.options.floating&&(a.render(),a=a.options.verticalAlign,"bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=
  680. !0))}),D(f,"getMargins",function(){var a=this.rangeSelector;a&&(a=a.getHeight(),this.extraTopMargin&&(this.plotTop+=a),this.extraBottomMargin&&(this.marginBottom+=a))}),f.prototype.callbacks.push(function(a){function b(){d=a.xAxis[0].getExtremes();g=a.legend;k=null===f||void 0===f?void 0:f.options.verticalAlign;m(d.min)&&f.render(d.min,d.max);f&&g.display&&"top"===k&&k===g.options.verticalAlign&&(h=n(a.spacingBox),h.y="vertical"===g.options.layout?a.plotTop:h.y+f.getHeight(),g.group.placed=!1,g.align(h))}
  681. var d,f=a.rangeSelector,g,h,k;if(f){var l=D(a.xAxis[0],"afterSetExtremes",function(a){f.render(a.min,a.max)});var p=D(a,"redraw",b);b()}D(a,"destroy",function(){f&&(p(),l())})}),v.RangeSelector=a);return v.RangeSelector});M(v,"Core/Axis/NavigatorAxis.js",[v["Core/Globals.js"],v["Core/Utilities.js"]],function(r,f){var v=r.isTouchDevice,C=f.addEvent,z=f.correctFloat,B=f.defined,E=f.isNumber,D=f.pick,x=function(){function f(f){this.axis=f}f.prototype.destroy=function(){this.axis=void 0};f.prototype.toFixedRange=
  682. function(f,p,r,v){var u=this.axis,m=u.chart;m=m&&m.fixedRange;var n=(u.pointRange||0)/2;f=D(r,u.translate(f,!0,!u.horiz));p=D(v,u.translate(p,!0,!u.horiz));u=m&&(p-f)/m;B(r)||(f=z(f+n));B(v)||(p=z(p-n));.7<u&&1.3>u&&(v?f=p-m:p=f+m);E(f)&&E(p)||(f=p=void 0);return{min:f,max:p}};return f}();return function(){function f(){}f.compose=function(f){f.keepProps.push("navigatorAxis");C(f,"init",function(){this.navigatorAxis||(this.navigatorAxis=new x(this))});C(f,"zoom",function(f){var p=this.chart.options,
  683. r=p.navigator,u=this.navigatorAxis,m=p.chart.pinchType,n=p.rangeSelector;p=p.chart.zoomType;this.isXAxis&&(r&&r.enabled||n&&n.enabled)&&("y"===p?f.zoomed=!1:(!v&&"xy"===p||v&&"xy"===m)&&this.options.range&&(r=u.previousZoom,B(f.newMin)?u.previousZoom=[this.min,this.max]:r&&(f.newMin=r[0],f.newMax=r[1],u.previousZoom=void 0)));"undefined"!==typeof f.zoomed&&f.preventDefault()})};f.AdditionsClass=x;return f}()});M(v,"Core/Navigator.js",[v["Core/Axis/Axis.js"],v["Core/Chart/Chart.js"],v["Core/Color.js"],
  684. v["Core/Globals.js"],v["Core/Axis/NavigatorAxis.js"],v["Core/Options.js"],v["Core/Scrollbar.js"],v["Core/Utilities.js"]],function(r,f,v,C,z,B,E,D){v=v.parse;var x=B.defaultOptions,p=D.addEvent,I=D.clamp,w=D.correctFloat,J=D.defined,H=D.destroyObjectProperties,u=D.erase,m=D.extend,n=D.find,l=D.isArray,h=D.isNumber,d=D.merge,g=D.pick,a=D.removeEvent,k=D.splat,b=C.hasTouch,F=C.isTouchDevice;B=C.Series;var y=function(a){for(var b=[],d=1;d<arguments.length;d++)b[d-1]=arguments[d];b=[].filter.call(b,h);
  685. if(b.length)return Math[a].apply(0,b)};D="undefined"===typeof C.seriesTypes.areaspline?"line":"areaspline";m(x,{navigator:{height:40,margin:25,maskInside:!0,handles:{width:7,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:"#f2f2f2",borderColor:"#999999"},maskFill:v("#6685c2").setOpacity(.3).get(),outlineColor:"#cccccc",outlineWidth:1,series:{type:D,fillOpacity:.05,lineWidth:1,compare:null,dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,
  686. smoothed:!0,units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{overscroll:0,className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"#e6e6e6",gridLineWidth:1,tickPixelInterval:200,
  687. labels:{align:"left",style:{color:"#999999"},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},tickLength:0,tickWidth:0}}});C.Renderer.prototype.symbols["navigator-handle"]=function(a,b,d,f,g){a=(g&&g.width||0)/2;b=Math.round(a/3)+.5;g=g&&g.height||0;return[["M",-a-1,.5],["L",a,.5],["L",a,g+.5],["L",-a-1,g+.5],["L",-a-1,.5],["M",-b,4],["L",-b,g-3],["M",b-1,
  688. 4],["L",b-1,g-3]]};var G=function(){function f(a){this.zoomedMin=this.zoomedMax=this.yAxis=this.xAxis=this.top=this.size=this.shades=this.rendered=this.range=this.outlineHeight=this.outline=this.opposite=this.navigatorSize=this.navigatorSeries=this.navigatorOptions=this.navigatorGroup=this.navigatorEnabled=this.left=this.height=this.handles=this.chart=this.baseSeries=void 0;this.init(a)}f.prototype.drawHandle=function(a,b,d,f){var c=this.navigatorOptions.handles.height;this.handles[b][f](d?{translateX:Math.round(this.left+
  689. this.height/2),translateY:Math.round(this.top+parseInt(a,10)+.5-c)}:{translateX:Math.round(this.left+parseInt(a,10)),translateY:Math.round(this.top+this.height/2-c/2-1)})};f.prototype.drawOutline=function(a,b,d,f){var c=this.navigatorOptions.maskInside,e=this.outline.strokeWidth(),g=e/2,h=e%2/2;e=this.outlineHeight;var k=this.scrollbarHeight||0,l=this.size,m=this.left-k,t=this.top;d?(m-=g,d=t+b+h,b=t+a+h,h=[["M",m+e,t-k-h],["L",m+e,d],["L",m,d],["L",m,b],["L",m+e,b],["L",m+e,t+l+k]],c&&h.push(["M",
  690. m+e,d-g],["L",m+e,b+g])):(a+=m+k-h,b+=m+k-h,t+=g,h=[["M",m,t],["L",a,t],["L",a,t+e],["L",b,t+e],["L",b,t],["L",m+l+2*k,t]],c&&h.push(["M",a-g,t],["L",b+g,t]));this.outline[f]({d:h})};f.prototype.drawMasks=function(a,b,d,f){var c=this.left,e=this.top,g=this.height;if(d){var h=[c,c,c];var k=[e,e+a,e+b];var l=[g,g,g];var m=[a,b-a,this.size-b]}else h=[c,c+a,c+b],k=[e,e,e],l=[a,b-a,this.size-b],m=[g,g,g];this.shades.forEach(function(c,a){c[f]({x:h[a],y:k[a],width:l[a],height:m[a]})})};f.prototype.renderElements=
  691. function(){var a=this,b=a.navigatorOptions,d=b.maskInside,f=a.chart,c=f.renderer,e,g={cursor:f.inverted?"ns-resize":"ew-resize"};a.navigatorGroup=e=c.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();[!d,d,!d].forEach(function(d,h){a.shades[h]=c.rect().addClass("highcharts-navigator-mask"+(1===h?"-inside":"-outside")).add(e);f.styledMode||a.shades[h].attr({fill:d?b.maskFill:"rgba(0,0,0,0)"}).css(1===h&&g)});a.outline=c.path().addClass("highcharts-navigator-outline").add(e);f.styledMode||a.outline.attr({"stroke-width":b.outlineWidth,
  692. stroke:b.outlineColor});b.handles.enabled&&[0,1].forEach(function(d){b.handles.inverted=f.inverted;a.handles[d]=c.symbol(b.handles.symbols[d],-b.handles.width/2-1,0,b.handles.width,b.handles.height,b.handles);a.handles[d].attr({zIndex:7-d}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][d]).add(e);if(!f.styledMode){var h=b.handles;a.handles[d].attr({fill:h.backgroundColor,stroke:h.borderColor,"stroke-width":h.lineWidth}).css(g)}})};f.prototype.update=function(a){(this.series||
  693. []).forEach(function(a){a.baseSeries&&delete a.baseSeries.navigatorSeries});this.destroy();d(!0,this.chart.options.navigator,this.options,a);this.init(this.chart)};f.prototype.render=function(a,b,d,f){var c=this.chart,e=this.scrollbarHeight,k,l=this.xAxis,m=l.pointRange||0;var t=l.navigatorAxis.fake?c.xAxis[0]:l;var n=this.navigatorEnabled,p,r=this.rendered;var u=c.inverted;var v=c.xAxis[0].minRange,A=c.xAxis[0].options.maxRange;if(!this.hasDragged||J(d)){a=w(a-m/2);b=w(b+m/2);if(!h(a)||!h(b))if(r)d=
  694. 0,f=g(l.width,t.width);else return;this.left=g(l.left,c.plotLeft+e+(u?c.plotWidth:0));this.size=p=k=g(l.len,(u?c.plotHeight:c.plotWidth)-2*e);c=u?e:k+2*e;d=g(d,l.toPixels(a,!0));f=g(f,l.toPixels(b,!0));h(d)&&Infinity!==Math.abs(d)||(d=0,f=c);a=l.toValue(d,!0);b=l.toValue(f,!0);var x=Math.abs(w(b-a));x<v?this.grabbedLeft?d=l.toPixels(b-v-m,!0):this.grabbedRight&&(f=l.toPixels(a+v+m,!0)):J(A)&&w(x-m)>A&&(this.grabbedLeft?d=l.toPixels(b-A-m,!0):this.grabbedRight&&(f=l.toPixels(a+A+m,!0)));this.zoomedMax=
  695. I(Math.max(d,f),0,p);this.zoomedMin=I(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(d,f),0,p);this.range=this.zoomedMax-this.zoomedMin;p=Math.round(this.zoomedMax);d=Math.round(this.zoomedMin);n&&(this.navigatorGroup.attr({visibility:"visible"}),r=r&&!this.hasDragged?"animate":"attr",this.drawMasks(d,p,u,r),this.drawOutline(d,p,u,r),this.navigatorOptions.handles.enabled&&(this.drawHandle(d,0,u,r),this.drawHandle(p,1,u,r)));this.scrollbar&&(u?(u=this.top-e,t=this.left-e+(n||!t.opposite?0:
  696. (t.titleOffset||0)+t.axisTitleMargin),e=k+2*e):(u=this.top+(n?this.height:-e),t=this.left-e),this.scrollbar.position(t,u,c,e),this.scrollbar.setRange(this.zoomedMin/(k||1),this.zoomedMax/(k||1)));this.rendered=!0}};f.prototype.addMouseEvents=function(){var a=this,d=a.chart,f=d.container,g=[],c,e;a.mouseMoveHandler=c=function(c){a.onMouseMove(c)};a.mouseUpHandler=e=function(c){a.onMouseUp(c)};g=a.getPartsEvents("mousedown");g.push(p(d.renderTo,"mousemove",c),p(f.ownerDocument,"mouseup",e));b&&(g.push(p(d.renderTo,
  697. "touchmove",c),p(f.ownerDocument,"touchend",e)),g.concat(a.getPartsEvents("touchstart")));a.eventsToUnbind=g;a.series&&a.series[0]&&g.push(p(a.series[0].xAxis,"foundExtremes",function(){d.navigator.modifyNavigatorAxisExtremes()}))};f.prototype.getPartsEvents=function(a){var b=this,d=[];["shades","handles"].forEach(function(f){b[f].forEach(function(c,e){d.push(p(c.element,a,function(a){b[f+"Mousedown"](a,e)}))})});return d};f.prototype.shadesMousedown=function(a,b){a=this.chart.pointer.normalize(a);
  698. var d=this.chart,f=this.xAxis,c=this.zoomedMin,e=this.left,g=this.size,h=this.range,k=a.chartX;d.inverted&&(k=a.chartY,e=this.top);if(1===b)this.grabbedCenter=k,this.fixedWidth=h,this.dragOffset=k-c;else{a=k-e-h/2;if(0===b)a=Math.max(0,a);else if(2===b&&a+h>=g)if(a=g-h,this.reversedExtremes){a-=h;var l=this.getUnionExtremes().dataMin}else var m=this.getUnionExtremes().dataMax;a!==c&&(this.fixedWidth=h,b=f.navigatorAxis.toFixedRange(a,a+h,l,m),J(b.min)&&d.xAxis[0].setExtremes(Math.min(b.min,b.max),
  699. Math.max(b.min,b.max),!0,null,{trigger:"navigator"}))}};f.prototype.handlesMousedown=function(a,b){this.chart.pointer.normalize(a);a=this.chart;var d=a.xAxis[0],f=this.reversedExtremes;0===b?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=f?d.min:d.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=f?d.max:d.min);a.fixedRange=null};f.prototype.onMouseMove=function(a){var b=this,d=b.chart,f=b.left,c=b.navigatorSize,e=b.range,h=b.dragOffset,k=d.inverted;
  700. a.touches&&0===a.touches[0].pageX||(a=d.pointer.normalize(a),d=a.chartX,k&&(f=b.top,d=a.chartY),b.grabbedLeft?(b.hasDragged=!0,b.render(0,0,d-f,b.otherHandlePos)):b.grabbedRight?(b.hasDragged=!0,b.render(0,0,b.otherHandlePos,d-f)):b.grabbedCenter&&(b.hasDragged=!0,d<h?d=h:d>c+h-e&&(d=c+h-e),b.render(0,0,d-h,d-h+e)),b.hasDragged&&b.scrollbar&&g(b.scrollbar.options.liveRedraw,C.svg&&!F&&!this.chart.isBoosting)&&(a.DOMType=a.type,setTimeout(function(){b.onMouseUp(a)},0)))};f.prototype.onMouseUp=function(a){var b=
  701. this.chart,d=this.xAxis,f=this.scrollbar,c=a.DOMEvent||a,e=b.inverted,g=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!f||!f.hasDragged)||"scrollbar"===a.trigger){f=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var k=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var l=this.fixedExtreme;this.zoomedMax===this.size&&(l=this.reversedExtremes?f.dataMin:f.dataMax);0===this.zoomedMin&&(k=this.reversedExtremes?f.dataMax:f.dataMin);d=d.navigatorAxis.toFixedRange(this.zoomedMin,
  702. this.zoomedMax,k,l);J(d.min)&&b.xAxis[0].setExtremes(Math.min(d.min,d.max),Math.max(d.min,d.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:c})}"mousemove"!==a.DOMType&&"touchmove"!==a.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null);this.navigatorEnabled&&h(this.zoomedMin)&&h(this.zoomedMax)&&(b=Math.round(this.zoomedMin),a=Math.round(this.zoomedMax),
  703. this.shades&&this.drawMasks(b,a,e,g),this.outline&&this.drawOutline(b,a,e,g),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(b,0,e,g),this.drawHandle(a,1,e,g)))};f.prototype.removeEvents=function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};f.prototype.removeBaseSeriesEvents=function(){var b=this.baseSeries||[];this.navigatorEnabled&&b[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&
  704. b.forEach(function(b){a(b,"updatedData",this.updatedDataHandler)},this),b[0].xAxis&&a(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};f.prototype.init=function(a){var b=a.options,f=b.navigator,h=f.enabled,c=b.scrollbar,e=c.enabled;b=h?f.height:0;var k=e?c.height:0;this.handles=[];this.shades=[];this.chart=a;this.setBaseSeries();this.height=b;this.scrollbarHeight=k;this.scrollbarEnabled=e;this.navigatorEnabled=h;this.navigatorOptions=f;this.scrollbarOptions=c;this.outlineHeight=b+k;this.opposite=
  705. g(f.opposite,!(h||!a.inverted));var l=this;h=l.baseSeries;c=a.xAxis.length;e=a.yAxis.length;var m=h&&h[0]&&h[0].xAxis||a.xAxis[0]||{options:{}};a.isDirtyBox=!0;l.navigatorEnabled?(l.xAxis=new r(a,d({breaks:m.options.breaks,ordinal:m.options.ordinal},f.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:c,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},a.inverted?{offsets:[k,0,-k,0],width:b}:{offsets:[0,
  706. -k,0,k],height:b})),l.yAxis=new r(a,d(f.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:e,isInternal:!0,zoomEnabled:!1},a.inverted?{width:b}:{height:b})),h||f.series.data?l.updateNavigatorSeries(!1):0===a.series.length&&(l.unbindRedraw=p(a,"beforeRedraw",function(){0<a.series.length&&!l.series&&(l.setBaseSeries(),l.unbindRedraw())})),l.reversedExtremes=a.inverted&&!l.xAxis.reversed||!a.inverted&&l.xAxis.reversed,l.renderElements(),l.addMouseEvents()):(l.xAxis={chart:a,navigatorAxis:{fake:!0},
  707. translate:function(c,b){var d=a.xAxis[0],e=d.getExtremes(),f=d.len-2*k,g=y("min",d.options.min,e.dataMin);d=y("max",d.options.max,e.dataMax)-g;return b?c*d/f+g:f*(c-g)/d},toPixels:function(a){return this.translate(a)},toValue:function(a){return this.translate(a,!0)}},l.xAxis.navigatorAxis.axis=l.xAxis,l.xAxis.navigatorAxis.toFixedRange=z.AdditionsClass.prototype.toFixedRange.bind(l.xAxis.navigatorAxis));a.options.scrollbar.enabled&&(a.scrollbar=l.scrollbar=new E(a.renderer,d(a.options.scrollbar,{margin:l.navigatorEnabled?
  708. 0:10,vertical:a.inverted}),a),p(l.scrollbar,"changed",function(c){var b=l.size,d=b*this.to;b*=this.from;l.hasDragged=l.scrollbar.hasDragged;l.render(0,0,b,d);(a.options.scrollbar.liveRedraw||"mousemove"!==c.DOMType&&"touchmove"!==c.DOMType)&&setTimeout(function(){l.onMouseUp(c)})}));l.addBaseSeriesEvents();l.addChartEvents()};f.prototype.getUnionExtremes=function(a){var b=this.chart.xAxis[0],d=this.xAxis,f=d.options,c=b.options,e;a&&null===b.dataMin||(e={dataMin:g(f&&f.min,y("min",c.min,b.dataMin,
  709. d.dataMin,d.min)),dataMax:g(f&&f.max,y("max",c.max,b.dataMax,d.dataMax,d.max))});return e};f.prototype.setBaseSeries=function(a,b){var d=this.chart,f=this.baseSeries=[];a=a||d.options&&d.options.navigator.baseSeries||(d.series.length?n(d.series,function(a){return!a.options.isInternal}).index:0);(d.series||[]).forEach(function(c,b){c.options.isInternal||!c.options.showInNavigator&&(b!==a&&c.options.id!==a||!1===c.options.showInNavigator)||f.push(c)});this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,
  710. b)};f.prototype.updateNavigatorSeries=function(b,f){var h=this,n=h.chart,c=h.baseSeries,e,t,p=h.navigatorOptions.series,r,u={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:"navigator-x-axis",yAxis:"navigator-y-axis",showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},v=h.series=(h.series||[]).filter(function(b){var d=b.baseSeries;return 0>c.indexOf(d)?(d&&(a(d,"updatedData",h.updatedDataHandler),delete d.navigatorSeries),b.chart&&b.destroy(),
  711. !1):!0});c&&c.length&&c.forEach(function(a){var b=a.navigatorSeries,k=m({color:a.color,visible:a.visible},l(p)?x.navigator.series:p);b&&!1===h.navigatorOptions.adaptToUpdatedData||(u.name="Navigator "+c.length,e=a.options||{},r=e.navigatorOptions||{},t=d(e,u,k,r),t.pointRange=g(k.pointRange,r.pointRange,x.plotOptions[t.type||"line"].pointRange),k=r.data||k.data,h.hasNavigatorData=h.hasNavigatorData||!!k,t.data=k||e.data&&e.data.slice(0),b&&b.options?b.update(t,f):(a.navigatorSeries=n.initSeries(t),
  712. a.navigatorSeries.baseSeries=a,v.push(a.navigatorSeries)))});if(p.data&&(!c||!c.length)||l(p))h.hasNavigatorData=!1,p=k(p),p.forEach(function(a,c){u.name="Navigator "+(v.length+1);t=d(x.navigator.series,{color:n.series[c]&&!n.series[c].options.isInternal&&n.series[c].color||n.options.colors[c]||n.options.colors[0]},u,a);t.data=a.data;t.data&&(h.hasNavigatorData=!0,v.push(n.initSeries(t)))});b&&this.addBaseSeriesEvents()};f.prototype.addBaseSeriesEvents=function(){var a=this,b=a.baseSeries||[];b[0]&&
  713. b[0].xAxis&&p(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes);b.forEach(function(b){p(b,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)});p(b,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)});!1!==this.navigatorOptions.adaptToUpdatedData&&b.xAxis&&p(b,"updatedData",this.updatedDataHandler);p(b,"remove",function(){this.navigatorSeries&&(u(a.series,this.navigatorSeries),J(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),
  714. delete this.navigatorSeries)})},this)};f.prototype.getBaseSeriesMin=function(a){return this.baseSeries.reduce(function(a,b){return Math.min(a,b.xData?b.xData[0]:a)},a)};f.prototype.modifyNavigatorAxisExtremes=function(){var a=this.xAxis,b;"undefined"!==typeof a.getExtremes&&(!(b=this.getUnionExtremes(!0))||b.dataMin===a.min&&b.dataMax===a.max||(a.min=b.dataMin,a.max=b.dataMax))};f.prototype.modifyBaseAxisExtremes=function(){var a=this.chart.navigator,b=this.getExtremes(),d=b.dataMin,f=b.dataMax;b=
  715. b.max-b.min;var c=a.stickToMin,e=a.stickToMax,k=g(this.options.overscroll,0),l=a.series&&a.series[0],m=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(c){var n=d;var p=n+b}e&&(p=f+k,c||(n=Math.max(d,p-b,a.getBaseSeriesMin(l&&l.xData?l.xData[0]:-Number.MAX_VALUE))));m&&(c||e)&&h(n)&&(this.min=this.userMin=n,this.max=this.userMax=p)}a.stickToMin=a.stickToMax=null};f.prototype.updatedDataHandler=function(){var a=this.chart.navigator,b=this.navigatorSeries,d=
  716. a.getBaseSeriesMin(this.xData[0]);a.stickToMax=a.reversedExtremes?0===Math.round(a.zoomedMin):Math.round(a.zoomedMax)>=Math.round(a.size);a.stickToMin=h(this.xAxis.min)&&this.xAxis.min<=d&&(!this.chart.fixedRange||!a.stickToMax);b&&!a.hasNavigatorData&&(b.options.pointStart=this.xData[0],b.setData(this.options.data,!1,null,!1))};f.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(p(this.chart,"redraw",function(){var a=this.navigator,b=a&&(a.baseSeries&&
  717. a.baseSeries[0]&&a.baseSeries[0].xAxis||this.xAxis[0]);b&&a.render(b.min,b.max)}),p(this.chart,"getMargins",function(){var a=this.navigator,b=a.opposite?"plotTop":"marginBottom";this.inverted&&(b=a.opposite?"marginRight":"plotLeft");this[b]=(this[b]||0)+(a.navigatorEnabled||!this.inverted?a.outlineHeight:0)+a.navigatorOptions.margin}))};f.prototype.destroy=function(){this.removeEvents();this.xAxis&&(u(this.chart.xAxis,this.xAxis),u(this.chart.axes,this.xAxis));this.yAxis&&(u(this.chart.yAxis,this.yAxis),
  718. u(this.chart.axes,this.yAxis));(this.series||[]).forEach(function(a){a.destroy&&a.destroy()});"series xAxis yAxis shades outline scrollbarTrack scrollbarRifles scrollbarGroup scrollbar navigatorGroup rendered".split(" ").forEach(function(a){this[a]&&this[a].destroy&&this[a].destroy();this[a]=null},this);[this.handles].forEach(function(a){H(a)},this)};return f}();C.Navigator||(C.Navigator=G,z.compose(r),p(f,"beforeShowResetZoom",function(){var a=this.options,b=a.navigator,d=a.rangeSelector;if((b&&
  719. b.enabled||d&&d.enabled)&&(!F&&"x"===a.chart.zoomType||F&&"x"===a.chart.pinchType))return!1}),p(f,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new G(this)}),p(f,"afterSetChartSize",function(){var a=this.legend,b=this.navigator;if(b){var d=a&&a.options;var f=b.xAxis;var h=b.yAxis;var c=b.scrollbarHeight;this.inverted?(b.left=b.opposite?this.chartWidth-c-b.height:this.spacing[3]+c,b.top=this.plotTop+c):(b.left=this.plotLeft+c,
  720. b.top=b.navigatorOptions.top||this.chartHeight-b.height-c-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(d&&"bottom"===d.verticalAlign&&"proximate"!==d.layout&&d.enabled&&!d.floating?a.legendHeight+g(d.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0));f&&h&&(this.inverted?f.options.left=h.options.left=b.left:f.options.top=h.options.top=b.top,f.setAxisSize(),h.setAxisSize())}}),p(f,"update",function(a){var b=a.options.navigator||{},f=a.options.scrollbar||
  721. {};this.navigator||this.scroller||!b.enabled&&!f.enabled||(d(!0,this.options.navigator,b),d(!0,this.options.scrollbar,f),delete a.options.navigator,delete a.options.scrollbar)}),p(f,"afterUpdate",function(a){this.navigator||this.scroller||!this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new G(this),g(a.redraw,!0)&&this.redraw(a.animation))}),p(f,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),p(B,"afterUpdate",function(){this.chart.navigator&&
  722. !this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),f.prototype.callbacks.push(function(a){var b=a.navigator;b&&a.xAxis[0]&&(a=a.xAxis[0].getExtremes(),b.render(a.min,a.max))}));C.Navigator=G;return C.Navigator});M(v,"masters/modules/gantt.src.js",[],function(){});M(v,"masters/highcharts-gantt.src.js",[v["masters/highcharts.src.js"]],function(r){r.product="Highcharts Gantt";return r});v["masters/highcharts-gantt.src.js"]._modules=v;return v["masters/highcharts-gantt.src.js"]});
  723. //# sourceMappingURL=highcharts-gantt.js.map