Your Name
2022-09-29 6f954f70f54e492157b97db314eaaaeb12192580
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
(this.webpackJsonp=this.webpackJsonp||[]).push([["chunk-7e6e"],{TQsD:function(t,e,i){var o,s;
/**
 * @license Highcharts JS v10.1.0 (2022-04-29)
 *
 * Exporting module
 *
 * (c) 2010-2021 Torstein Honsi
 *
 * License: www.highcharts.com/license
 */
/**
 * @license Highcharts JS v10.1.0 (2022-04-29)
 *
 * Exporting module
 *
 * (c) 2010-2021 Torstein Honsi
 *
 * License: www.highcharts.com/license
 */
!function(r){"object"==typeof t&&t.exports?(r.default=r,t.exports=r):(o=[i("BjTr"),i("qjQK")],void 0===(s=function(t){return r(t),r.Highcharts=t,r}.apply(e,o))||(t.exports=s))}(function(t){"use strict";var e=t?t._modules:{};function i(t,e,i,o){t.hasOwnProperty(e)||(t[e]=o.apply(null,i),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}i(e,"Extensions/DownloadURL.js",[e["Core/Globals.js"]],function(t){var e=t.isSafari,i=t.win,o=i.document,s=i.URL||i.webkitURL||i,r=t.dataURLtoBlob=function(t){var e=t.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([0-9A-Za-z+/]+)/);if(e&&e.length>3&&i.atob&&i.ArrayBuffer&&i.Uint8Array&&i.Blob&&s.createObjectURL){for(var o=i.atob(e[3]),r=new i.ArrayBuffer(o.length),n=new i.Uint8Array(r),a=0;a<n.length;++a)n[a]=o.charCodeAt(a);var h=new i.Blob([n],{type:e[1]});return s.createObjectURL(h)}},n=t.downloadURL=function(t,s){var n=i.navigator,a=o.createElement("a");if("string"==typeof t||t instanceof String||!n.msSaveOrOpenBlob){t=""+t;var h=/Edge\/\d+/.test(n.userAgent);if((e&&"string"==typeof t&&0===t.indexOf("data:application/pdf")||h||t.length>2e6)&&!(t=r(t)||""))throw new Error("Failed to convert to blob");if(void 0!==a.download)a.href=t,a.download=s,o.body.appendChild(a),a.click(),o.body.removeChild(a);else try{var l=i.open(t,"chart");if(void 0===l||null===l)throw new Error("Failed to open window")}catch(e){i.location.href=t}}else n.msSaveOrOpenBlob(t,s)};return{dataURLtoBlob:r,downloadURL:n}}),i(e,"Extensions/ExportData.js",[e["Core/Axis/Axis.js"],e["Core/Chart/Chart.js"],e["Core/Renderer/HTML/AST.js"],e["Core/Globals.js"],e["Core/DefaultOptions.js"],e["Core/Utilities.js"],e["Extensions/DownloadURL.js"]],function(t,e,i,o,s,r,n){var a=o.doc,h=o.seriesTypes,l=o.win,c=s.getOptions,p=s.setOptions,d=r.addEvent,u=r.defined,f=r.extend,g=r.find,m=r.fireEvent,x=r.isNumber,y=r.pick,v=n.downloadURL;function b(t,e){var i=l.navigator,o=i.userAgent.indexOf("WebKit")>-1&&i.userAgent.indexOf("Chrome")<0,s=l.URL||l.webkitURL||l;try{if(i.msSaveOrOpenBlob&&l.MSBlobBuilder){var r=new l.MSBlobBuilder;return r.append(t),r.getBlob("image/svg+xml")}if(!o)return s.createObjectURL(new l.Blob(["\ufeff"+t],{type:e}))}catch(t){}}p({exporting:{csv:{annotations:{itemDelimiter:"; ",join:!1},columnHeaderFormatter:null,dateFormat:"%Y-%m-%d %H:%M:%S",decimalPoint:null,itemDelimiter:null,lineDelimiter:"\n"},showTable:!1,useMultiLevelHeaders:!0,useRowspanHeaders:!0},lang:{downloadCSV:"Download CSV",downloadXLS:"Download XLS",exportData:{annotationHeader:"Annotations",categoryHeader:"Category",categoryDatetimeHeader:"DateTime"},viewData:"View data table",hideData:"Hide data table"}}),d(e,"render",function(){this.options&&this.options.exporting&&this.options.exporting.showTable&&!this.options.chart.forExport&&this.viewData()}),e.prototype.setUpKeyToAxis=function(){h.arearange&&(h.arearange.prototype.keyToAxis={low:"y",high:"y"}),h.gantt&&(h.gantt.prototype.keyToAxis={start:"x",end:"x"})},e.prototype.getDataRows=function(e){var i,o,s,r,n,a,h,l,c=this.hasParallelCoordinates,p=this.time,d=this.options.exporting&&this.options.exporting.csv||{},f=this.xAxis,v={},b=[],S=[],M=[],k=this.options.lang.exportData,w=k.categoryHeader,C=k.categoryDatetimeHeader,A=function(i,o,s){if(d.columnHeaderFormatter){var r=d.columnHeaderFormatter(i,o,s);if(!1!==r)return r}return i?i instanceof t?i.options.title&&i.options.title.text||(i.dateTime?C:w):e?{columnTitle:s>1?o:i.name,topLevelColumnTitle:i.name}:i.name+(s>1?" ("+o+")":""):w},P=function(t,e,i){var o={},s={};return e.forEach(function(e){var r=(t.keyToAxis&&t.keyToAxis[e]||e)+"Axis",n=x(i)?t.chart[r][i]:t[r];o[e]=n&&n.categories||[],s[e]=n&&n.dateTime}),{categoryMap:o,dateTimeValueAxisMap:s}},T=[];for(n in r=0,this.setUpKeyToAxis(),this.series.forEach(function(t){var i,o,n=t.options.keys,a=t.xAxis,h=n||function(t,e){if(t.data.filter(function(t){return void 0!==t.y&&t.name}).length&&e&&!e.categories&&!t.keyToAxis)return t.pointArrayMap&&t.pointArrayMap.filter(function(t){return"x"===t}).length?(t.pointArrayMap.unshift("x"),t.pointArrayMap):["x","y"];return t.pointArrayMap||["y"]}(t,a),l=h.length,u=!t.requireSorting&&{},m=f.indexOf(a),x=P(t,h);if(!1!==t.options.includeInDataExport&&!t.options.isInternal&&!1!==t.visible){for(g(T,function(t){return t[0]===m})||T.push([m,r]),o=0;o<l;)s=A(t,h[o],h.length),M.push(s.columnTitle||s),e&&S.push(s.topLevelColumnTitle||s),o++;i={chart:t.chart,autoIncrement:t.autoIncrement,options:t.options,pointArrayMap:t.pointArrayMap},t.options.data.forEach(function(e,s){var n,f,g,b,S;for(c&&(x=P(t,h,s)),S={series:i},t.pointClass.prototype.applyOptions.apply(S,[e]),n=S.x,b=t.data[s]&&t.data[s].name,o=0,(!a||"name"===t.exportKey||!c&&a&&a.hasNames&&b)&&(n=b),u&&(u[n]&&(n+="|"+s),u[n]=!0),v[n]||(v[n]=[],v[n].xValues=[]),v[n].x=S.x,v[n].name=b,v[n].xValues[m]=S.x;o<l;)g=S[f=h[o]],v[n][r+o]=y(x.categoryMap[f][g],x.dateTimeValueAxisMap[f]?p.dateFormat(d.dateFormat,g):null,g),o++}),r+=o}}),v)Object.hasOwnProperty.call(v,n)&&b.push(v[n]);for(o=e?[S,M]:[M],r=T.length;r--;)h=T[r][0],l=T[r][1],i=f[h],b.sort(function(t,e){return t.xValues[h]-e.xValues[h]}),a=A(i),o[0].splice(l,0,a),e&&o[1]&&o[1].splice(l,0,a),b.forEach(function(t){var e=t.name;i&&!u(e)&&(i.dateTime?(t.x instanceof Date&&(t.x=t.x.getTime()),e=p.dateFormat(d.dateFormat,t.x)):e=i.categories?y(i.names[t.x],i.categories[t.x],t.x):t.x),t.splice(l,0,e)});return o=o.concat(b),m(this,"exportData",{dataRows:o}),o},e.prototype.getCSV=function(t){var e="",i=this.getDataRows(),o=this.options.exporting.csv,s=y(o.decimalPoint,","!==o.itemDelimiter&&t?1.1.toLocaleString()[1]:"."),r=y(o.itemDelimiter,","===s?";":","),n=o.lineDelimiter;return i.forEach(function(t,o){for(var a="",h=t.length;h--;)"string"==typeof(a=t[h])&&(a='"'+a+'"'),"number"==typeof a&&"."!==s&&(a=a.toString().replace(".",s)),t[h]=a;e+=t.join(r),o<i.length-1&&(e+=n)}),e},e.prototype.getTable=function(t){var e=function(t){if(!t.tagName||"#text"===t.tagName)return t.textContent||"";var i=t.attributes,o="<"+t.tagName;return i&&Object.keys(i).forEach(function(t){var e=i[t];o+=" "+t+'="'+e+'"'}),o+=">",o+=t.textContent||"",(t.children||[]).forEach(function(t){o+=e(t)}),o+="</"+t.tagName+">"},i=this.getTableAST(t);return e(i)},e.prototype.getTableAST=function(t){var e=0,i=[],o=this.options,s=t?1.1.toLocaleString()[1]:".",r=y(o.exporting.useMultiLevelHeaders,!0),n=this.getDataRows(r),a=r?n.shift():null,h=n.shift(),l=function(t,e,i,o){var r=y(o,""),n="text"+(e?" "+e:"");return"number"==typeof r?(r=r.toString(),","===s&&(r=r.replace(".",s)),n="number"):o||(n="empty"),{tagName:t,attributes:i=f({class:n},i),textContent:r}};!1!==o.exporting.tableCaption&&i.push({tagName:"caption",attributes:{class:"highcharts-table-caption"},textContent:y(o.exporting.tableCaption,o.title.text?o.title.text:"Chart")});for(var c=0,p=n.length;c<p;++c)n[c].length>e&&(e=n[c].length);i.push(function(t,e,i){var s,n,a=[],h=0,c=i||e&&e.length,p=0;if(r&&t&&e&&!function(t,e){var i=t.length;if(e.length!==i)return!1;for(;i--;)if(t[i]!==e[i])return!1;return!0}(t,e)){for(var d=[];h<c;++h)if((s=t[h])===t[h+1])++p;else if(p)d.push(l("th","highcharts-table-topheading",{scope:"col",colspan:p+1},s)),p=0;else{s===e[h]?o.exporting.useRowspanHeaders?(n=2,delete e[h]):(n=1,e[h]=""):n=1;var u=l("th","highcharts-table-topheading",{scope:"col"},s);n>1&&u.attributes&&(u.attributes.valign="top",u.attributes.rowspan=n),d.push(u)}a.push({tagName:"tr",children:d})}if(e){for(d=[],h=0,c=e.length;h<c;++h)void 0!==e[h]&&d.push(l("th",null,{scope:"col"},e[h]));a.push({tagName:"tr",children:d})}return{tagName:"thead",children:a}}(a,h,Math.max(e,h.length)));var d=[];n.forEach(function(t){for(var i=[],o=0;o<e;o++)i.push(l(o?"td":"th",null,o?{}:{scope:"row"},t[o]));d.push({tagName:"tr",children:i})}),i.push({tagName:"tbody",children:d});var u={tree:{tagName:"table",id:"highcharts-data-table-"+this.index,children:i}};return m(this,"aftergetTableAST",u),u.tree},e.prototype.downloadCSV=function(){var t=this.getCSV(!0);v(b(t,"text/csv")||"data:text/csv,\ufeff"+encodeURIComponent(t),this.getFilename()+".csv")},e.prototype.downloadXLS=function(){var t='<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head>\x3c!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>Ark1</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--\x3e<style>td{border:none;font-family: Calibri, sans-serif;} .number{mso-number-format:"0.00";} .text{ mso-number-format:"@";}</style><meta name=ProgId content=Excel.Sheet><meta charset=UTF-8></head><body>'+this.getTable(!0)+"</body></html>";v(b(t,"application/vnd.ms-excel")||"data:application/vnd.ms-excel;base64,"+function(t){return l.btoa(unescape(encodeURIComponent(t)))}(t),this.getFilename()+".xls")},e.prototype.viewData=function(){this.toggleDataTable(!0)},e.prototype.hideData=function(){this.toggleDataTable(!1)},e.prototype.toggleDataTable=function(t){((t=y(t,!this.isDataTableVisible))&&!this.dataTableDiv&&(this.dataTableDiv=a.createElement("div"),this.dataTableDiv.className="highcharts-data-table",this.renderTo.parentNode.insertBefore(this.dataTableDiv,this.renderTo.nextSibling)),this.dataTableDiv)&&(this.dataTableDiv.style.display=t?"block":"none",t&&(this.dataTableDiv.innerHTML=i.emptyHTML,new i([this.getTableAST()]).addToDOM(this.dataTableDiv),m(this,"afterViewData",this.dataTableDiv)));this.isDataTableVisible=t;var e=this.exportDivElements,o=this.options.exporting,s=o&&o.buttons&&o.buttons.contextButton.menuItems,r=this.options.lang;if(S&&S.menuItemDefinitions&&r&&r.viewData&&r.hideData&&s&&e){var n=e[s.indexOf("viewData")];n&&i.setElementHTML(n,this.isDataTableVisible?r.hideData:r.viewData)}};var S=c().exporting;S&&(f(S.menuItemDefinitions,{downloadCSV:{textKey:"downloadCSV",onclick:function(){this.downloadCSV()}},downloadXLS:{textKey:"downloadXLS",onclick:function(){this.downloadXLS()}},viewData:{textKey:"viewData",onclick:function(){this.toggleDataTable()}}}),S.buttons&&S.buttons.contextButton.menuItems.push("separator","downloadCSV","downloadXLS","viewData")),h.map&&(h.map.prototype.exportKey="name"),h.mapbubble&&(h.mapbubble.prototype.exportKey="name"),h.treemap&&(h.treemap.prototype.exportKey="name")}),i(e,"masters/modules/export-data.src.js",[],function(){})})},b0cF:function(t,e,i){var o;!function(s,r){"object"==typeof t&&t.exports?(r.default=r,t.exports=s.document?r(s):r):void 0===(o=function(){return r(s)}.call(e,i,e,t))||(t.exports=o)}("undefined"!=typeof window?window:this,function(t){function e(e,i,o,s){e.hasOwnProperty(i)||(e[i]=s.apply(null,o),"function"==typeof CustomEvent&&t.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:i,module:e[i]}})))}var i={};return e(i,"Core/Globals.js",[],function(){var e;return function(e){e.SVG_NS="http://www.w3.org/2000/svg",e.product="Highcharts",e.version="10.1.0",e.win=void 0!==t?t:{},e.doc=e.win.document,e.svg=e.doc&&e.doc.createElementNS&&!!e.doc.createElementNS(e.SVG_NS,"svg").createSVGRect,e.userAgent=e.win.navigator&&e.win.navigator.userAgent||"",e.isChrome=-1!==e.userAgent.indexOf("Chrome"),e.isFirefox=-1!==e.userAgent.indexOf("Firefox"),e.isMS=/(edge|msie|trident)/i.test(e.userAgent)&&!e.win.opera,e.isSafari=!e.isChrome&&-1!==e.userAgent.indexOf("Safari"),e.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(e.userAgent),e.isWebKit=-1!==e.userAgent.indexOf("AppleWebKit"),e.deg2rad=2*Math.PI/360,e.hasBidiBug=e.isFirefox&&4>parseInt(e.userAgent.split("Firefox/")[1],10),e.hasTouch=!!e.win.TouchEvent,e.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],e.noop=function(){},e.supportsPassiveEvents=function(){var t=!1;if(!e.isMS){var i=Object.defineProperty({},"passive",{get:function(){t=!0}});e.win.addEventListener&&e.win.removeEventListener&&(e.win.addEventListener("testPassive",e.noop,i),e.win.removeEventListener("testPassive",e.noop,i))}return t}(),e.charts=[],e.dateFormats={},e.seriesTypes={},e.symbolSizes={},e.chartCount=0}(e||(e={})),e}),e(i,"Core/Utilities.js",[i["Core/Globals.js"]],function(t){function e(i,o,s,r){var n=o?"Highcharts error":"Highcharts warning";32===i&&(i=n+": Deprecated member");var a=h(i),l=a?n+" #"+i+": www.highcharts.com/errors/"+i+"/":i.toString();if(void 0!==r){var c="";a&&(l+="?"),m(r,function(t,e){c+="\n - "+e+": "+t,a&&(l+=encodeURI(e)+"="+encodeURI(t))}),l+=c}y(t,"displayError",{chart:s,code:i,message:l,params:r},function(){if(o)throw Error(l);S.console&&-1===e.messages.indexOf(l)&&console.warn(l)}),e.messages.push(l)}function i(t,e){return parseInt(t,e||10)}function o(t){return"string"==typeof t}function s(t){return"[object Array]"===(t=Object.prototype.toString.call(t))||"[object Array Iterator]"===t}function r(t,e){return!(!t||"object"!=typeof t||e&&s(t))}function n(t){return r(t)&&"number"==typeof t.nodeType}function a(t){var e=t&&t.constructor;return!(!r(t,!0)||n(t)||!e||!e.name||"Object"===e.name)}function h(t){return"number"==typeof t&&!isNaN(t)&&1/0>t&&-1/0<t}function l(t){return void 0!==t&&null!==t}function c(t,e,i){var s,r=o(e)&&!l(i),n=function(e,i){l(e)?t.setAttribute(i,e):r?(s=t.getAttribute(i))||"class"!==i||(s=t.getAttribute(i+"Name")):t.removeAttribute(i)};return o(e)?n(i,e):m(e,n),s}function p(t,e){var i;for(i in t||(t={}),e)t[i]=e[i];return t}function d(){for(var t=arguments,e=t.length,i=0;i<e;i++){var o=t[i];if(void 0!==o&&null!==o)return o}}function u(e,i){t.isMS&&!t.svg&&i&&l(i.opacity)&&(i.filter="alpha(opacity="+100*i.opacity+")"),p(e.style,i)}function f(t){return Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function g(t,e){return 1e14<t?t:parseFloat(t.toPrecision(e||14))}function m(t,e,i){for(var o in t)Object.hasOwnProperty.call(t,o)&&e.call(i||t[o],t[o],o,t)}function x(e,i,o){function s(i,o){var s=e.removeEventListener||t.removeEventListenerPolyfill;s&&s.call(e,i,o,!1)}function r(t){var o;if(e.nodeName){if(i){var r={};r[i]=!0}else r=t;m(r,function(e,i){if(t[i])for(o=t[i].length;o--;)s(i,t[i][o].fn)})}}var n="function"==typeof e&&e.prototype||e;if(Object.hasOwnProperty.call(n,"hcEvents")){var a=n.hcEvents;i?(n=a[i]||[],o?(a[i]=n.filter(function(t){return o!==t.fn}),s(i,o)):(r(a),a[i]=[])):(r(a),delete n.hcEvents)}}function y(e,i,o,s){if(o=o||{},b.createEvent&&(e.dispatchEvent||e.fireEvent&&e!==t)){var r=b.createEvent("Events");r.initEvent(i,!0,!0),o=p(r,o),e.dispatchEvent?e.dispatchEvent(o):e.fireEvent(i,o)}else if(e.hcEvents){o.target||p(o,{preventDefault:function(){o.defaultPrevented=!0},target:e,type:i}),r=[];for(var n=e,a=!1;n.hcEvents;)Object.hasOwnProperty.call(n,"hcEvents")&&n.hcEvents[i]&&(r.length&&(a=!0),r.unshift.apply(r,n.hcEvents[i])),n=Object.getPrototypeOf(n);a&&r.sort(function(t,e){return t.order-e.order}),r.forEach(function(t){!1===t.fn.call(e,o)&&o.preventDefault()})}s&&!o.defaultPrevented&&s.call(e,o)}var v=t.charts,b=t.doc,S=t.win;(e||(e={})).messages=[],Math.easeInOutSine=function(t){return-.5*(Math.cos(Math.PI*t)-1)};var M=Array.prototype.find?function(t,e){return t.find(e)}:function(t,e){var i,o=t.length;for(i=0;i<o;i++)if(e(t[i],i))return t[i]};m({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(i,o){t[o]=function(t){var s;return e(32,!1,void 0,((s={})["Highcharts."+o]="use Array."+i,s)),Array.prototype[i].apply(t,[].slice.call(arguments,1))}});var k,w=function(){var t=Math.random().toString(36).substring(2,9)+"-",e=0;return function(){return"highcharts-"+(k?"":t)+e++}}();return S.jQuery&&(S.jQuery.fn.highcharts=function(){var e=[].slice.call(arguments);if(this[0])return e[0]?(new(t[o(e[0])?e.shift():"Chart"])(this[0],e[0],e[1]),this):v[c(this[0],"data-highcharts-chart")]}),M={addEvent:function(e,i,o,s){void 0===s&&(s={});var r="function"==typeof e&&e.prototype||e;Object.hasOwnProperty.call(r,"hcEvents")||(r.hcEvents={}),r=r.hcEvents,t.Point&&e instanceof t.Point&&e.series&&e.series.chart&&(e.series.chart.runTrackerClick=!0);var n=e.addEventListener||t.addEventListenerPolyfill;return n&&n.call(e,i,o,!!t.supportsPassiveEvents&&{passive:void 0===s.passive?-1!==i.indexOf("touch"):s.passive,capture:!1}),r[i]||(r[i]=[]),r[i].push({fn:o,order:"number"==typeof s.order?s.order:1/0}),r[i].sort(function(t,e){return t.order-e.order}),function(){x(e,i,o)}},arrayMax:function(t){for(var e=t.length,i=t[0];e--;)t[e]>i&&(i=t[e]);return i},arrayMin:function(t){for(var e=t.length,i=t[0];e--;)t[e]<i&&(i=t[e]);return i},attr:c,clamp:function(t,e,i){return t>e?t<i?t:i:e},cleanRecursively:function t(e,i){var o={};return m(e,function(s,n){r(e[n],!0)&&!e.nodeType&&i[n]?(s=t(e[n],i[n]),Object.keys(s).length&&(o[n]=s)):(r(e[n])||e[n]!==i[n]||n in e&&!(n in i))&&(o[n]=e[n])}),o},clearTimeout:function(t){l(t)&&clearTimeout(t)},correctFloat:g,createElement:function(t,e,i,o,s){return t=b.createElement(t),e&&p(t,e),s&&u(t,{padding:"0",border:"none",margin:"0"}),i&&u(t,i),o&&o.appendChild(t),t},css:u,defined:l,destroyObjectProperties:function(t,e){m(t,function(i,o){i&&i!==e&&i.destroy&&i.destroy(),delete t[o]})},discardElement:function(t){t&&t.parentElement&&t.parentElement.removeChild(t)},erase:function(t,e){for(var i=t.length;i--;)if(t[i]===e){t.splice(i,1);break}},error:e,extend:p,extendClass:function(t,e){var i=function(){};return p(i.prototype=new t,e),i},find:M,fireEvent:y,getMagnitude:f,getNestedProperty:function(t,e){for(t=t.split(".");t.length&&l(e);){var i=t.shift();if(void 0===i||"__proto__"===i)return;if(!l(e=e[i])||"function"==typeof e||"number"==typeof e.nodeType||e===S)return}return e},getStyle:function o(s,r,n){var a=t.getStyle||o;if("width"===r)return r=Math.min(s.offsetWidth,s.scrollWidth),(n=s.getBoundingClientRect&&s.getBoundingClientRect().width)<r&&n>=r-1&&(r=Math.floor(n)),Math.max(0,r-(a(s,"padding-left",!0)||0)-(a(s,"padding-right",!0)||0));if("height"===r)return Math.max(0,Math.min(s.offsetHeight,s.scrollHeight)-(a(s,"padding-top",!0)||0)-(a(s,"padding-bottom",!0)||0));if(S.getComputedStyle||e(27,!0),s=S.getComputedStyle(s,void 0)){var h=s.getPropertyValue(r);d(n,"opacity"!==r)&&(h=i(h))}return h},inArray:function(t,i,o){return e(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),i.indexOf(t,o)},isArray:s,isClass:a,isDOMElement:n,isFunction:function(t){return"function"==typeof t},isNumber:h,isObject:r,isString:o,keys:function(t){return e(32,!1,void 0,{"Highcharts.keys":"use Object.keys"}),Object.keys(t)},merge:function(){var t,e=arguments,i={},o=function(t,e){return"object"!=typeof t&&(t={}),m(e,function(i,s){"__proto__"!==s&&"constructor"!==s&&(!r(i,!0)||a(i)||n(i)?t[s]=e[s]:t[s]=o(t[s]||{},i))}),t};!0===e[0]&&(i=e[1],e=Array.prototype.slice.call(e,2));var s=e.length;for(t=0;t<s;t++)i=o(i,e[t]);return i},normalizeTickInterval:function(t,e,i,o,s){var r=t,n=t/(i=d(i,f(t)));for(e||(e=s?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===o&&(1===i?e=e.filter(function(t){return 0==t%1}):.1>=i&&(e=[1/i]))),o=0;o<e.length&&(r=e[o],!(s&&r*i>=t||!s&&n<=(e[o]+(e[o+1]||e[o]))/2));o++);return g(r*i,-Math.round(Math.log(.001)/Math.LN10))},objectEach:m,offset:function(t){var e=b.documentElement;return{top:(t=t.parentElement||t.parentNode?t.getBoundingClientRect():{top:0,left:0,width:0,height:0}).top+(S.pageYOffset||e.scrollTop)-(e.clientTop||0),left:t.left+(S.pageXOffset||e.scrollLeft)-(e.clientLeft||0),width:t.width,height:t.height}},pad:function(t,e,i){return Array((e||2)+1-String(t).replace("-","").length).join(i||"0")+t},pick:d,pInt:i,relativeLength:function(t,e,i){return/%$/.test(t)?e*parseFloat(t)/100+(i||0):parseFloat(t)},removeEvent:x,splat:function(t){return s(t)?t:[t]},stableSort:function(t,e){var i,o,s=t.length;for(o=0;o<s;o++)t[o].safeI=o;for(t.sort(function(t,o){return 0===(i=e(t,o))?t.safeI-o.safeI:i}),o=0;o<s;o++)delete t[o].safeI},syncTimeout:function(t,e,i){return 0<e?setTimeout(t,e,i):(t.call(0,i),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:w,useSerialIds:function(t){return k=d(t,k)},wrap:function(t,e,i){var o=t[e];t[e]=function(){var t=Array.prototype.slice.call(arguments),e=arguments,s=this;return s.proceed=function(){o.apply(s,arguments.length?arguments:e)},t.unshift(o),t=i.apply(this,t),s.proceed=null,t}}}}),e(i,"Core/Chart/ChartDefaults.js",[],function(){return{alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}},zoomBySingleTouch:!1,width:null,height:null,borderColor:"#335cad",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"}}),e(i,"Core/Color/Color.js",[i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e){var i=e.isNumber,o=e.merge,s=e.pInt;return e=function(){function e(i){this.rgba=[NaN,NaN,NaN,NaN],this.input=i;var o=t.Color;return o&&o!==e?new o(i):this instanceof e?void this.init(i):new e(i)}return e.parse=function(t){return t?new e(t):e.None},e.prototype.init=function(t){var i;if("object"==typeof t&&void 0!==t.stops)this.stops=t.stops.map(function(t){return new e(t[1])});else if("string"==typeof t){if(this.input=t=e.names[t.toLowerCase()]||t,"#"===t.charAt(0)){var o=t.length,s=parseInt(t.substr(1),16);7===o?i=[(16711680&s)>>16,(65280&s)>>8,255&s,1]:4===o&&(i=[(3840&s)>>4|(3840&s)>>8,(240&s)>>4|240&s,(15&s)<<4|15&s,1])}if(!i)for(s=e.parsers.length;s--&&!i;){var r=e.parsers[s];(o=r.regex.exec(t))&&(i=r.parse(o))}}i&&(this.rgba=i)},e.prototype.get=function(t){var e=this.input,s=this.rgba;if("object"==typeof e&&void 0!==this.stops){var r=o(e);return r.stops=[].slice.call(r.stops),this.stops.forEach(function(e,i){r.stops[i]=[r.stops[i][0],e.get(t)]}),r}return s&&i(s[0])?"rgb"===t||!t&&1===s[3]?"rgb("+s[0]+","+s[1]+","+s[2]+")":"a"===t?""+s[3]:"rgba("+s.join(",")+")":e},e.prototype.brighten=function(t){var e=this.rgba;if(this.stops)this.stops.forEach(function(e){e.brighten(t)});else if(i(t)&&0!==t)for(var o=0;3>o;o++)e[o]+=s(255*t),0>e[o]&&(e[o]=0),255<e[o]&&(e[o]=255);return this},e.prototype.setOpacity=function(t){return this.rgba[3]=t,this},e.prototype.tweenTo=function(t,e){var o=this.rgba,s=t.rgba;return i(o[0])&&i(s[0])?((t=1!==s[3]||1!==o[3])?"rgba(":"rgb(")+Math.round(s[0]+(o[0]-s[0])*(1-e))+","+Math.round(s[1]+(o[1]-s[1])*(1-e))+","+Math.round(s[2]+(o[2]-s[2])*(1-e))+(t?","+(s[3]+(o[3]-s[3])*(1-e)):"")+")":t.input||"none"},e.names={white:"#ffffff",black:"#000000"},e.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(t){return[s(t[1]),s(t[2]),s(t[3]),parseFloat(t[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(t){return[s(t[1]),s(t[2]),s(t[3]),1]}}],e.None=new e(""),e}()}),e(i,"Core/Color/Palettes.js",[],function(){return{colors:"#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1".split(" ")}}),e(i,"Core/Time.js",[i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e){var i=t.win,o=e.defined,s=e.error,r=e.extend,n=e.isObject,a=e.merge,h=e.objectEach,l=e.pad,c=e.pick,p=e.splat,d=e.timeUnits,u=t.isSafari&&i.Intl&&i.Intl.DateTimeFormat.prototype.formatRange,f=t.isSafari&&i.Intl&&!i.Intl.DateTimeFormat.prototype.formatRange;return e=function(){function e(t){this.options={},this.variableTimezone=this.useUTC=!1,this.Date=i.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(t)}return e.prototype.get=function(t,e){if(this.variableTimezone||this.timezoneOffset){var i=e.getTime(),o=i-this.getTimezoneOffset(e);return e.setTime(o),t=e["getUTC"+t](),e.setTime(i),t}return this.useUTC?e["getUTC"+t]():e["get"+t]()},e.prototype.set=function(t,e,i){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===t||"Seconds"===t||"Minutes"===t&&0==this.getTimezoneOffset(e)%36e5)return e["setUTC"+t](i);var o=this.getTimezoneOffset(e);return o=e.getTime()-o,e.setTime(o),e["setUTC"+t](i),t=this.getTimezoneOffset(e),o=e.getTime()+t,e.setTime(o)}return this.useUTC||u&&"FullYear"===t?e["setUTC"+t](i):e["set"+t](i)},e.prototype.update=function(t){var e=c(t&&t.useUTC,!0);this.options=t=a(!0,this.options||{},t),this.Date=t.Date||i.Date||Date,this.timezoneOffset=(this.useUTC=e)&&t.timezoneOffset,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=e&&!(!t.getTimezoneOffset&&!t.timezone)},e.prototype.makeTime=function(t,e,i,o,s,r){if(this.useUTC){var n=this.Date.UTC.apply(0,arguments),a=this.getTimezoneOffset(n);n+=a;var h=this.getTimezoneOffset(n);a!==h?n+=h-a:a-36e5!==this.getTimezoneOffset(n-36e5)||f||(n-=36e5)}else n=new this.Date(t,e,c(i,1),c(o,0),c(s,0),c(r,0)).getTime();return n},e.prototype.timezoneOffsetFunction=function(){var t=this,e=this.options,o=e.getTimezoneOffset,r=e.moment||i.moment;if(!this.useUTC)return function(t){return 6e4*new Date(t.toString()).getTimezoneOffset()};if(e.timezone){if(r)return function(t){return 6e4*-r.tz(t,e.timezone).utcOffset()};s(25)}return this.useUTC&&o?function(t){return 6e4*o(t.valueOf())}:function(){return 6e4*(t.timezoneOffset||0)}},e.prototype.dateFormat=function(e,i,s){if(!o(i)||isNaN(i))return t.defaultOptions.lang&&t.defaultOptions.lang.invalidDate||"";e=c(e,"%Y-%m-%d %H:%M:%S");var n=this,a=new this.Date(i),p=this.get("Hours",a),d=this.get("Day",a),u=this.get("Date",a),f=this.get("Month",a),g=this.get("FullYear",a),m=t.defaultOptions.lang,x=m&&m.weekdays,y=m&&m.shortWeekdays;return a=r({a:y?y[d]:x[d].substr(0,3),A:x[d],d:l(u),e:l(u,2," "),w:d,b:m.shortMonths[f],B:m.months[f],m:l(f+1),o:f+1,y:g.toString().substr(2,2),Y:g,H:l(p),k:p,I:l(p%12||12),l:p%12||12,M:l(this.get("Minutes",a)),p:12>p?"AM":"PM",P:12>p?"am":"pm",S:l(a.getSeconds()),L:l(Math.floor(i%1e3),3)},t.dateFormats),h(a,function(t,o){for(;-1!==e.indexOf("%"+o);)e=e.replace("%"+o,"function"==typeof t?t.call(n,i):t)}),s?e.substr(0,1).toUpperCase()+e.substr(1):e},e.prototype.resolveDTLFormat=function(t){return n(t,!0)?t:{main:(t=p(t))[0],from:t[1],to:t[2]}},e.prototype.getTimeTicks=function(t,e,i,s){var n,a=this,h=[],l={},p=new a.Date(e),u=t.unitRange,f=t.count||1;if(s=c(s,1),o(e)){if(a.set("Milliseconds",p,u>=d.second?0:f*Math.floor(a.get("Milliseconds",p)/f)),u>=d.second&&a.set("Seconds",p,u>=d.minute?0:f*Math.floor(a.get("Seconds",p)/f)),u>=d.minute&&a.set("Minutes",p,u>=d.hour?0:f*Math.floor(a.get("Minutes",p)/f)),u>=d.hour&&a.set("Hours",p,u>=d.day?0:f*Math.floor(a.get("Hours",p)/f)),u>=d.day&&a.set("Date",p,u>=d.month?1:Math.max(1,f*Math.floor(a.get("Date",p)/f))),u>=d.month){a.set("Month",p,u>=d.year?0:f*Math.floor(a.get("Month",p)/f));var g=a.get("FullYear",p)}u>=d.year&&a.set("FullYear",p,g-g%f),u===d.week&&(g=a.get("Day",p),a.set("Date",p,a.get("Date",p)-g+s+(g<s?-7:0))),g=a.get("FullYear",p),s=a.get("Month",p);var m=a.get("Date",p),x=a.get("Hours",p);for(e=p.getTime(),!a.variableTimezone&&a.useUTC||!o(i)||(n=i-e>4*d.month||a.getTimezoneOffset(e)!==a.getTimezoneOffset(i)),e=p.getTime(),p=1;e<i;)h.push(e),e=u===d.year?a.makeTime(g+p*f,0):u===d.month?a.makeTime(g,s+p*f):!n||u!==d.day&&u!==d.week?n&&u===d.hour&&1<f?a.makeTime(g,s,m,x+p*f):e+u*f:a.makeTime(g,s,m+p*f*(u===d.day?1:7)),p++;h.push(e),u<=d.hour&&1e4>h.length&&h.forEach(function(t){0==t%18e5&&"000000000"===a.dateFormat("%H%M%S%L",t)&&(l[t]="day")})}return h.info=r(t,{higherRanks:l,totalRange:u*f}),h},e.prototype.getDateFormat=function(t,e,i,o){var s=this.dateFormat("%m-%d %H:%M:%S.%L",e),r={millisecond:15,second:12,minute:9,hour:6,day:3},n="millisecond";for(a in d){if(t===d.week&&+this.dateFormat("%w",e)===i&&"00:00:00.000"===s.substr(6)){var a="week";break}if(d[a]>t){a=n;break}if(r[a]&&s.substr(r[a])!=="01-01 00:00:00.000".substr(r[a]))break;"week"!==a&&(n=a)}if(a)var h=this.resolveDTLFormat(o[a]).main;return h},e}()}),e(i,"Core/DefaultOptions.js",[i["Core/Chart/ChartDefaults.js"],i["Core/Color/Color.js"],i["Core/Globals.js"],i["Core/Color/Palettes.js"],i["Core/Time.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r){e=e.parse;var n=r.merge,a={colors:o.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),decimalPoint:".",numericSymbols:"kMGTPE".split(""),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:t,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,className:"highcharts-no-tooltip",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{activeColor:"#003399",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"12px",fontWeight:"bold",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#cccccc"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:i.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:"",headerShape:"callout",hideDelay:500,padding:8,shape:"callout",shared:!1,snap:i.isTouchDevice?25:10,headerFormat:'<span style="font-size: 10px">{point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">●</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:e("#f7f7f7").setOpacity(.85).get(),borderWidth:1,shadow:!0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"12px",whiteSpace:"nowrap"},useHTML:!1},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"}};a.chart.styledMode=!1;var h=new s(n(a.global,a.time));return t={defaultOptions:a,defaultTime:h,getOptions:function(){return a},setOptions:function(t){return n(!0,a,t),(t.time||t.global)&&(i.time?i.time.update(n(a.global,a.time,t.global,t.time)):i.time=h),a}}}),e(i,"Core/Animation/Fx.js",[i["Core/Color/Color.js"],i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e,i){var o=t.parse,s=e.win,r=i.isNumber,n=i.objectEach;return function(){function t(t,e,i){this.pos=NaN,this.options=e,this.elem=t,this.prop=i}return t.prototype.dSetter=function(){var t=this.paths,e=t&&t[0];t=t&&t[1];var i=this.now||0,o=[];if(1!==i&&e&&t)if(e.length===t.length&&1>i)for(var s=0;s<t.length;s++){for(var n=e[s],a=t[s],h=[],l=0;l<a.length;l++){var c=n[l],p=a[l];r(c)&&r(p)&&("A"!==a[0]||4!==l&&5!==l)?h[l]=c+i*(p-c):h[l]=p}o.push(h)}else o=t;else o=this.toD||[];this.elem.attr("d",o,void 0,!0)},t.prototype.update=function(){var t=this.elem,e=this.prop,i=this.now,o=this.options.step;this[e+"Setter"]?this[e+"Setter"]():t.attr?t.element&&t.attr(e,i,null,!0):t.style[e]=i+this.unit,o&&o.call(t,i,this)},t.prototype.run=function(e,i,o){var r=this,n=r.options,a=function(t){return!a.stopped&&r.step(t)},h=s.requestAnimationFrame||function(t){setTimeout(t,13)},l=function(){for(var e=0;e<t.timers.length;e++)t.timers[e]()||t.timers.splice(e--,1);t.timers.length&&h(l)};e!==i||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=e,this.end=i,this.unit=o,this.now=this.start,this.pos=0,a.elem=this.elem,a.prop=this.prop,a()&&1===t.timers.push(a)&&h(l)):(delete n.curAnim[this.prop],n.complete&&0===Object.keys(n.curAnim).length&&n.complete.call(this.elem))},t.prototype.step=function(t){var e=+new Date,i=this.options,o=this.elem,s=i.complete,r=i.duration,a=i.curAnim;if(o.attr&&!o.element)t=!1;else if(t||e>=r+this.startTime){this.now=this.end,this.pos=1,this.update();var h=a[this.prop]=!0;n(a,function(t){!0!==t&&(h=!1)}),h&&s&&s.call(o),t=!1}else this.pos=i.easing((e-this.startTime)/r),this.now=this.start+(this.end-this.start)*this.pos,this.update(),t=!0;return t},t.prototype.initPath=function(t,e,i){function o(t,e){for(;t.length<d;){var i=t[0],o=e[d-t.length];o&&"M"===i[0]&&(t[0]="C"===o[0]?["C",i[1],i[2],i[1],i[2],i[1],i[2]]:["L",i[1],i[2]]),t.unshift(i),h&&(i=t.pop(),t.push(t[t.length-1],i))}}function s(t,e){for(;t.length<d;)if("C"===(e=t[Math.floor(t.length/l)-1].slice())[0]&&(e[1]=e[5],e[2]=e[6]),h){var i=t[Math.floor(t.length/l)].slice();t.splice(t.length/2,0,e,i)}else t.push(e)}var n=t.startX,a=t.endX;i=i.slice();var h=t.isArea,l=h?2:1;if(!(e=e&&e.slice()))return[i,i];if(n&&a&&a.length){for(t=0;t<n.length;t++){if(n[t]===a[0]){var c=t;break}if(n[0]===a[a.length-n.length+t]){c=t;var p=!0;break}if(n[n.length-1]===a[a.length-n.length+t]){c=n.length-t;break}}void 0===c&&(e=[])}if(e.length&&r(c)){var d=i.length+c*l;p?(o(e,i),s(i,e)):(o(i,e),s(e,i))}return[e,i]},t.prototype.fillSetter=function(){t.prototype.strokeSetter.apply(this,arguments)},t.prototype.strokeSetter=function(){this.elem.attr(this.prop,o(this.start).tweenTo(o(this.end),this.pos),void 0,!0)},t.timers=[],t}()}),e(i,"Core/Animation/AnimationUtilities.js",[i["Core/Animation/Fx.js"],i["Core/Utilities.js"]],function(t,e){function i(t){return h(t)?l({duration:500,defer:0},t):{duration:t?500:0,defer:0}}function o(e,i){for(var o=t.timers.length;o--;)t.timers[o].elem!==e||i&&i!==t.timers[o].prop||(t.timers[o].stopped=!0)}var s=e.defined,r=e.getStyle,n=e.isArray,a=e.isNumber,h=e.isObject,l=e.merge,c=e.objectEach,p=e.pick;return{animate:function(e,i,s){var p,d,u,f="";if(!h(s)){var g=arguments;s={duration:g[2],easing:g[3],complete:g[4]}}a(s.duration)||(s.duration=400),s.easing="function"==typeof s.easing?s.easing:Math[s.easing]||Math.easeInOutSine,s.curAnim=l(i),c(i,function(a,h){o(e,h),u=new t(e,s,h),d=void 0,"d"===h&&n(i.d)?(u.paths=u.initPath(e,e.pathArray,i.d),u.toD=i.d,p=0,d=1):e.attr?p=e.attr(h):(p=parseFloat(r(e,h))||0,"opacity"!==h&&(f="px")),d||(d=a),"string"==typeof d&&d.match("px")&&(d=d.replace(/px/g,"")),u.run(p,d,f)})},animObject:i,getDeferredAnimation:function(t,e,o){var r=i(e),n=0,a=0;return(o?[o]:t.series).forEach(function(t){t=i(t.options.animation),n=e&&s(e.defer)?r.defer:Math.max(n,t.duration+t.defer),a=Math.min(r.duration,t.duration)}),t.renderer.forExport&&(n=0),{defer:Math.max(0,n-a),duration:Math.min(n,a)}},setAnimation:function(t,e){e.renderer.globalAnimation=p(t,e.options.chart.animation,!0)},stop:o}}),e(i,"Core/Renderer/HTML/AST.js",[i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e){var i=t.SVG_NS,o=e.attr,s=e.createElement,r=e.css,n=e.error,a=e.isFunction,h=e.isString,l=e.objectEach,c=e.splat,p=(e=t.win.trustedTypes)&&a(e.createPolicy)&&e.createPolicy("highcharts",{createHTML:function(t){return t}}),d=p?p.createHTML(""):"";try{var u=!!(new DOMParser).parseFromString(d,"text/html")}catch(t){u=!1}return a=function(){function e(t){this.nodes="string"==typeof t?this.parseMarkup(t):t}return e.filterUserAttributes=function(t){return l(t,function(i,o){var s=!0;-1===e.allowedAttributes.indexOf(o)&&(s=!1),-1!==["background","dynsrc","href","lowsrc","src"].indexOf(o)&&(s=h(i)&&e.allowedReferences.some(function(t){return 0===i.indexOf(t)})),s||(n(33,!1,void 0,{"Invalid attribute in config":""+o}),delete t[o])}),t},e.parseStyle=function(t){return t.split(";").reduce(function(t,e){var i=(e=e.split(":").map(function(t){return t.trim()})).shift();return i&&e.length&&(t[i.replace(/-([a-z])/g,function(t){return t[1].toUpperCase()})]=e.join(":")),t},{})},e.setElementHTML=function(t,i){t.innerHTML=e.emptyHTML,i&&new e(i).addToDOM(t)},e.prototype.addToDOM=function(s){return function s(a,h){var p;return c(a).forEach(function(a){var c=a.tagName,d=a.textContent?t.doc.createTextNode(a.textContent):void 0,u=e.bypassHTMLFiltering;if(c)if("#text"===c)var f=d;else if(-1!==e.allowedTags.indexOf(c)||u){c=t.doc.createElementNS("svg"===c?i:h.namespaceURI||i,c);var g=a.attributes||{};l(a,function(t,e){"tagName"!==e&&"attributes"!==e&&"children"!==e&&"style"!==e&&"textContent"!==e&&(g[e]=t)}),o(c,u?g:e.filterUserAttributes(g)),a.style&&r(c,a.style),d&&c.appendChild(d),s(a.children||[],c),f=c}else n(33,!1,void 0,{"Invalid tagName in config":c});f&&h.appendChild(f),p=f}),p}(this.nodes,s)},e.prototype.parseMarkup=function(t){var i=[];if(t=t.trim().replace(/ style="/g,' data-style="'),u)t=(new DOMParser).parseFromString(p?p.createHTML(t):t,"text/html");else{var o=s("div");o.innerHTML=t,t={body:o}}var r=function(t,i){var o=t.nodeName.toLowerCase(),s={tagName:o};if("#text"===o&&(s.textContent=t.textContent||""),o=t.attributes){var n={};[].forEach.call(o,function(t){"data-style"===t.name?s.style=e.parseStyle(t.value):n[t.name]=t.value}),s.attributes=n}if(t.childNodes.length){var a=[];[].forEach.call(t.childNodes,function(t){r(t,a)}),a.length&&(s.children=a)}i.push(s)};return[].forEach.call(t.body.childNodes,function(t){return r(t,i)}),i},e.allowedAttributes="aria-controls aria-describedby aria-expanded aria-haspopup aria-hidden aria-label aria-labelledby aria-live aria-pressed aria-readonly aria-roledescription aria-selected class clip-path color colspan cx cy d dx dy disabled fill height href id in markerHeight markerWidth offset opacity orient padding paddingLeft paddingRight patternUnits r refX refY role scope slope src startOffset stdDeviation stroke stroke-linecap stroke-width style tableValues result rowspan summary target tabindex text-align textAnchor textLength title type valign width x x1 x2 y y1 y2 zIndex".split(" "),e.allowedReferences="https:// http:// mailto: / ../ ./ #".split(" "),e.allowedTags="a abbr b br button caption circle clipPath code dd defs div dl dt em feComponentTransfer feFuncA feFuncB feFuncG feFuncR feGaussianBlur feOffset feMerge feMergeNode filter h1 h2 h3 h4 h5 h6 hr i img li linearGradient marker ol p path pattern pre rect small span stop strong style sub sup svg table text thead tbody tspan td th tr u ul #text".split(" "),e.emptyHTML=d,e.bypassHTMLFiltering=!1,e}()}),e(i,"Core/FormatUtilities.js",[i["Core/DefaultOptions.js"],i["Core/Utilities.js"]],function(t,e){function i(t,e,i,s){t=+t||0,e=+e;var r=o.lang,l=(t.toString().split(".")[1]||"").split("e")[0].length,c=t.toString().split("e"),p=e;if(-1===e)e=Math.min(l,20);else if(n(e)){if(e&&c[1]&&0>c[1]){var d=e+ +c[1];0<=d?(c[0]=(+c[0]).toExponential(d).split("e")[0],e=d):(c[0]=c[0].split(".")[0]||0,t=20>e?(c[0]*Math.pow(10,c[1])).toFixed(e):0,c[1]=0)}}else e=2;d=(Math.abs(c[1]?c[0]:t)+Math.pow(10,-Math.max(e,l)-1)).toFixed(e);var u=3<(l=String(h(d))).length?l.length%3:0;return i=a(i,r.decimalPoint),s=a(s,r.thousandsSep),t=(0>t?"-":"")+(u?l.substr(0,u)+s:""),t=0>+c[1]&&!p?"0":t+l.substr(u).replace(/(\d{3})(?=\d)/g,"$1"+s),e&&(t+=i+d.slice(-e)),c[1]&&0!=+t&&(t+="e"+c[1]),t}var o=t.defaultOptions,s=t.defaultTime,r=e.getNestedProperty,n=e.isNumber,a=e.pick,h=e.pInt;return{dateFormat:function(t,e,i){return s.dateFormat(t,e,i)},format:function(t,e,n){var a="{",h=!1,l=/f$/,c=/\.([0-9])/,p=o.lang,d=n&&n.time||s;n=n&&n.numberFormatter||i;for(var u=[];t;){var f=t.indexOf(a);if(-1===f)break;var g=t.slice(0,f);if(h){if(g=g.split(":"),a=r(g.shift()||"",e),g.length&&"number"==typeof a)if(g=g.join(":"),l.test(g)){var m=parseInt((g.match(c)||["","-1"])[1],10);null!==a&&(a=n(a,m,p.decimalPoint,-1<g.indexOf(",")?p.thousandsSep:""))}else a=d.dateFormat(g,a);u.push(a)}else u.push(g);t=t.slice(f+1),a=(h=!h)?"}":"{"}return u.push(t),u.join("")},numberFormat:i}}),e(i,"Core/Renderer/RendererUtilities.js",[i["Core/Utilities.js"]],function(t){var e,i=t.clamp,o=t.pick,s=t.stableSort;return function(t){(e||(e={})).distribute=function t(e,r,n){var a,h=e,l=h.reducedLen||r,c=function(t,e){return(e.rank||0)-(t.rank||0)},p=function(t,e){return t.target-e.target},d=!0,u=[],f=0;for(a=e.length;a--;)f+=e[a].size;if(f>l){for(s(e,c),f=a=0;f<=l;)f+=e[a].size,a++;u=e.splice(a-1,e.length)}for(s(e,p),e=e.map(function(t){return{size:t.size,targets:[t.target],align:o(t.align,.5)}});d;){for(a=e.length;a--;)l=e[a],c=(Math.min.apply(0,l.targets)+Math.max.apply(0,l.targets))/2,l.pos=i(c-l.size*l.align,0,r-l.size);for(a=e.length,d=!1;a--;)0<a&&e[a-1].pos+e[a-1].size>e[a].pos&&(e[a-1].size+=e[a].size,e[a-1].targets=e[a-1].targets.concat(e[a].targets),e[a-1].align=.5,e[a-1].pos+e[a-1].size>r&&(e[a-1].pos=r-e[a-1].size),e.splice(a,1),d=!0)}return h.push.apply(h,u),a=0,e.some(function(e){var i=0;return(e.targets||[]).some(function(){return h[a].pos=e.pos+i,void 0!==n&&Math.abs(h[a].pos-h[a].target)>n?(h.slice(0,a+1).forEach(function(t){return delete t.pos}),h.reducedLen=(h.reducedLen||r)-.1*r,h.reducedLen>.1*r&&t(h,r,n),!0):(i+=h[a].size,a++,!1)})}),s(h,p),h}}(),e}),e(i,"Core/Renderer/SVG/SVGElement.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Renderer/HTML/AST.js"],i["Core/Color/Color.js"],i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e,i,o,s){var r=t.animate,n=t.animObject,a=t.stop,h=o.deg2rad,l=o.doc,c=o.noop,p=o.svg,d=o.SVG_NS,u=o.win,f=s.addEvent,g=s.attr,m=s.createElement,x=s.css,y=s.defined,v=s.erase,b=s.extend,S=s.fireEvent,M=s.isArray,k=s.isFunction,w=s.isNumber,C=s.isString,A=s.merge,P=s.objectEach,T=s.pick,O=s.pInt,E=s.syncTimeout,L=s.uniqueKey;return(t=function(){function t(){this.element=void 0,this.onEvents={},this.opacity=1,this.renderer=void 0,this.SVG_NS=d,this.symbolCustomAttribs="x y width height r start end innerR anchorX anchorY rounded".split(" ")}return t.prototype._defaultGetter=function(t){return t=T(this[t+"Value"],this[t],this.element?this.element.getAttribute(t):null,0),/^[\-0-9\.]+$/.test(t)&&(t=parseFloat(t)),t},t.prototype._defaultSetter=function(t,e,i){i.setAttribute(e,t)},t.prototype.add=function(t){var e=this.renderer,i=this.element;if(t&&(this.parentGroup=t),this.parentInverted=t&&t.inverted,void 0!==this.textStr&&"text"===this.element.nodeName&&e.buildText(this),this.added=!0,!t||t.handleZ||this.zIndex)var o=this.zIndexSetter();return o||(t?t.element:e.box).appendChild(i),this.onAdd&&this.onAdd(),this},t.prototype.addClass=function(t,e){var i=e?"":this.attr("class")||"";return(t=(t||"").split(/ /g).reduce(function(t,e){return-1===i.indexOf(e)&&t.push(e),t},i?[i]:[]).join(" "))!==i&&this.attr("class",t),this},t.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)},t.prototype.align=function(t,e,i){var o,s,r,n={},a=this.renderer,h=a.alignedObjects;t?(this.alignOptions=t,this.alignByTranslate=e,(!i||C(i))&&(this.alignTo=o=i||"renderer",v(h,this),h.push(this),i=void 0)):(t=this.alignOptions,e=this.alignByTranslate,o=this.alignTo),i=T(i,a[o],"scrollablePlotBox"===o?a.plotBox:void 0,a),o=t.align;var l=t.verticalAlign;return a=(i.x||0)+(t.x||0),h=(i.y||0)+(t.y||0),"right"===o?s=1:"center"===o&&(s=2),s&&(a+=(i.width-(t.width||0))/s),n[e?"translateX":"x"]=Math.round(a),"bottom"===l?r=1:"middle"===l&&(r=2),r&&(h+=(i.height-(t.height||0))/r),n[e?"translateY":"y"]=Math.round(h),this[this.placed?"animate":"attr"](n),this.placed=!0,this.alignAttr=n,this},t.prototype.alignSetter=function(t){var e={left:"start",center:"middle",right:"end"};e[t]&&(this.alignValue=t,this.element.setAttribute("text-anchor",e[t]))},t.prototype.animate=function(t,e,i){var o=this,s=n(T(e,this.renderer.globalAnimation,!0));return e=s.defer,T(l.hidden,l.msHidden,l.webkitHidden,!1)&&(s.duration=0),0!==s.duration?(i&&(s.complete=i),E(function(){o.element&&r(o,t,s)},e)):(this.attr(t,void 0,i||s.complete),P(t,function(t,e){s.step&&s.step.call(this,t,{prop:e,pos:1,elem:this})},this)),this},t.prototype.applyTextOutline=function(t){var e=this.element;-1!==t.indexOf("contrast")&&(t=t.replace(/contrast/g,this.renderer.getContrast(e.style.fill)));var i=t.split(" ");if(t=i[i.length-1],(i=i[0])&&"none"!==i&&o.svg){this.fakeTS=!0,this.ySetter=this.xSetter,i=i.replace(/(^[\d\.]+)(.*?)$/g,function(t,e,i){return 2*Number(e)+i}),this.removeTextOutline();var s=l.createElementNS(d,"tspan");g(s,{class:"highcharts-text-outline",fill:t,stroke:t,"stroke-width":i,"stroke-linejoin":"round"}),[].forEach.call(e.childNodes,function(t){var e=t.cloneNode(!0);e.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(function(t){return e.removeAttribute(t)}),s.appendChild(e)});var r=l.createElementNS(d,"tspan");r.textContent="​",["x","y"].forEach(function(t){var i=e.getAttribute(t);i&&r.setAttribute(t,i)}),s.appendChild(r),e.insertBefore(s,e.firstChild)}},t.prototype.attr=function(t,e,i,o){var s,r,n,h=this.element,l=this.symbolCustomAttribs,c=this;if("string"==typeof t&&void 0!==e){var p=t;(t={})[p]=e}return"string"==typeof t?c=(this[t+"Getter"]||this._defaultGetter).call(this,t,h):(P(t,function(e,i){r=!1,o||a(this,i),this.symbolName&&-1!==l.indexOf(i)&&(s||(this.symbolAttr(t),s=!0),r=!0),!this.rotation||"x"!==i&&"y"!==i||(this.doTransform=!0),r||((n=this[i+"Setter"]||this._defaultSetter).call(this,e,i,h),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(i)&&this.updateShadows(i,e,n))},this),this.afterSetters()),i&&i.call(this),c},t.prototype.clip=function(t){return this.attr("clip-path",t?"url("+this.renderer.url+"#"+t.id+")":"none")},t.prototype.crisp=function(t,e){e=e||t.strokeWidth||0;var i=Math.round(e)%2/2;return t.x=Math.floor(t.x||this.x||0)+i,t.y=Math.floor(t.y||this.y||0)+i,t.width=Math.floor((t.width||this.width||0)-2*i),t.height=Math.floor((t.height||this.height||0)-2*i),y(t.strokeWidth)&&(t.strokeWidth=e),t},t.prototype.complexColor=function(t,e,o){var s,r,n,a,h,l,c,p,d,u,f,g=this.renderer,m=[];S(this.renderer,"complexColor",{args:arguments},function(){if(t.radialGradient?r="radialGradient":t.linearGradient&&(r="linearGradient"),r){if(n=t[r],h=g.gradients,l=t.stops,d=o.radialReference,M(n)&&(t[r]=n={x1:n[0],y1:n[1],x2:n[2],y2:n[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===r&&d&&!y(n.gradientUnits)&&(a=n,n=A(n,g.getRadialAttr(d,a),{gradientUnits:"userSpaceOnUse"})),P(n,function(t,e){"id"!==e&&m.push(e,t)}),P(l,function(t){m.push(t)}),m=m.join(","),h[m])u=h[m].attr("id");else{n.id=u=L();var x=h[m]=g.createElement(r).attr(n).add(g.defs);x.radAttr=a,x.stops=[],l.forEach(function(t){0===t[1].indexOf("rgba")?(s=i.parse(t[1]),c=s.get("rgb"),p=s.get("a")):(c=t[1],p=1),t=g.createElement("stop").attr({offset:t[0],"stop-color":c,"stop-opacity":p}).add(x),x.stops.push(t)})}f="url("+g.url+"#"+u+")",o.setAttribute(e,f),o.gradient=m,t.toString=function(){return f}}})},t.prototype.css=function(t){var e=this.styles,i={},o=this.element,s=!e;if(t.color&&(t.fill=t.color),e&&P(t,function(t,o){e&&e[o]!==t&&(i[o]=t,s=!0)}),s){if(e&&(t=b(e,i)),null===t.width||"auto"===t.width)delete this.textWidth;else if("text"===o.nodeName.toLowerCase()&&t.width)var r=this.textWidth=O(t.width);this.styles=t,r&&!p&&this.renderer.forExport&&delete t.width;var n=A(t);o.namespaceURI===this.SVG_NS&&["textOutline","textOverflow","width"].forEach(function(t){return n&&delete n[t]}),x(o,n),this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),t.textOutline&&this.applyTextOutline(t.textOutline))}return this},t.prototype.dashstyleSetter=function(t){var e=this["stroke-width"];if("inherit"===e&&(e=1),t=t&&t.toLowerCase()){var i=t.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(t=i.length;t--;)i[t]=""+O(i[t])*T(e,NaN);t=i.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",t)}},t.prototype.destroy=function(){var t=this,e=t.element||{},i=t.renderer,o=e.ownerSVGElement,s=i.isSVG&&"SPAN"===e.nodeName&&t.parentGroup||void 0;if(e.onclick=e.onmouseout=e.onmouseover=e.onmousemove=e.point=null,a(t),t.clipPath&&o){var r=t.clipPath;[].forEach.call(o.querySelectorAll("[clip-path],[CLIP-PATH]"),function(t){-1<t.getAttribute("clip-path").indexOf(r.element.id)&&t.removeAttribute("clip-path")}),t.clipPath=r.destroy()}if(t.stops){for(o=0;o<t.stops.length;o++)t.stops[o].destroy();t.stops.length=0,t.stops=void 0}for(t.safeRemoveChild(e),i.styledMode||t.destroyShadows();s&&s.div&&0===s.div.childNodes.length;)e=s.parentGroup,t.safeRemoveChild(s.div),delete s.div,s=e;t.alignTo&&v(i.alignedObjects,t),P(t,function(e,i){t[i]&&t[i].parentGroup===t&&t[i].destroy&&t[i].destroy(),delete t[i]})},t.prototype.destroyShadows=function(){(this.shadows||[]).forEach(function(t){this.safeRemoveChild(t)},this),this.shadows=void 0},t.prototype.destroyTextPath=function(t,e){var i=t.getElementsByTagName("text")[0];if(i){if(i.removeAttribute("dx"),i.removeAttribute("dy"),e.element.setAttribute("id",""),this.textPathWrapper&&i.getElementsByTagName("textPath").length){for(t=this.textPathWrapper.element.childNodes;t.length;)i.appendChild(t[0]);i.removeChild(this.textPathWrapper.element)}}else(t.getAttribute("dx")||t.getAttribute("dy"))&&(t.removeAttribute("dx"),t.removeAttribute("dy"));this.textPathWrapper&&(this.textPathWrapper=this.textPathWrapper.destroy())},t.prototype.dSetter=function(t,e,i){M(t)&&("string"==typeof t[0]&&(t=this.renderer.pathToSegments(t)),this.pathArray=t,t=t.reduce(function(t,e,i){return e&&e.join?(i?t+" ":"")+e.join(" "):(e||"").toString()},"")),/(NaN| {2}|^$)/.test(t)&&(t="M 0 0"),this[e]!==t&&(i.setAttribute(e,t),this[e]=t)},t.prototype.fadeOut=function(t){var e=this;e.animate({opacity:0},{duration:T(t,150),complete:function(){e.attr({y:-9999}).hide()}})},t.prototype.fillSetter=function(t,e,i){"string"==typeof t?i.setAttribute(e,t):t&&this.complexColor(t,e,i)},t.prototype.getBBox=function(e,i){var o=this.alignValue,s=this.element,r=this.renderer,n=this.styles,a=this.textStr,l=r.cache,c=r.cacheKeys,p=s.namespaceURI===this.SVG_NS;i=T(i,this.rotation,0);var d,u=r.styledMode?s&&t.prototype.getStyle.call(s,"font-size"):n&&n.fontSize;if(y(a)){var f=a.toString();-1===f.indexOf("<")&&(f=f.replace(/[0-9]/g,"0")),f+=["",i,u,this.textWidth,o,n&&n.textOverflow,n&&n.fontWeight].join()}if(f&&!e&&(d=l[f]),!d){if(p||r.forExport){try{var g=this.fakeTS&&function(t){var e=s.querySelector(".highcharts-text-outline");e&&x(e,{display:t})};k(g)&&g("none"),d=s.getBBox?b({},s.getBBox()):{width:s.offsetWidth,height:s.offsetHeight},k(g)&&g("")}catch(t){}(!d||0>d.width)&&(d={x:0,y:0,width:0,height:0})}else d=this.htmlGetBBox();if(r.isSVG&&(r=d.width,e=d.height,p&&(d.height=e={"11px,17":14,"13px,20":16}[(u||"")+","+Math.round(e)]||e),i)){p=Number(s.getAttribute("y")||0)-d.y,o={right:1,center:.5}[o||0]||0,n=i*h,u=(i-90)*h;var m=r*Math.cos(n);i=r*Math.sin(n),g=Math.cos(u),n=Math.sin(u),m=(g=(u=(r=d.x+o*(r-m)+p*g)+m)-e*g)-m,i=(e=(o=(p=d.y+p-o*i+p*n)+i)-e*n)-i,d.x=Math.min(r,u,g,m),d.y=Math.min(p,o,e,i),d.width=Math.max(r,u,g,m)-d.x,d.height=Math.max(p,o,e,i)-d.y}if(f&&(""===a||0<d.height)){for(;250<c.length;)delete l[c.shift()];l[f]||c.push(f),l[f]=d}}return d},t.prototype.getStyle=function(t){return u.getComputedStyle(this.element||this,"").getPropertyValue(t)},t.prototype.hasClass=function(t){return-1!==(""+this.attr("class")).split(" ").indexOf(t)},t.prototype.hide=function(){return this.attr({visibility:"hidden"})},t.prototype.htmlGetBBox=function(){return{height:0,width:0,x:0,y:0}},t.prototype.init=function(t,e){this.element="span"===e?m(e):l.createElementNS(this.SVG_NS,e),this.renderer=t,S(this,"afterInit")},t.prototype.invert=function(t){return this.inverted=t,this.updateTransform(),this},t.prototype.on=function(t,e){var i=this.onEvents;return i[t]&&i[t](),i[t]=f(this.element,t,e),this},t.prototype.opacitySetter=function(t,e,i){this.opacity=t=Number(Number(t).toFixed(3)),i.setAttribute(e,t)},t.prototype.removeClass=function(t){return this.attr("class",(""+this.attr("class")).replace(C(t)?new RegExp("(^| )"+t+"( |$)"):t," ").replace(/ +/g," ").trim())},t.prototype.removeTextOutline=function(){var t=this.element.querySelector("tspan.highcharts-text-outline");t&&this.safeRemoveChild(t)},t.prototype.safeRemoveChild=function(t){var e=t.parentNode;e&&e.removeChild(t)},t.prototype.setRadialReference=function(t){var e=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=t,e&&e.radAttr&&e.animate(this.renderer.getRadialAttr(t,e.radAttr)),this},t.prototype.setTextPath=function(t,i){var o=this.element,s=this.text?this.text.element:o,r={textAnchor:"text-anchor"},n=!1,a=this.textPathWrapper,h=!a;i=A(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},i);var l=e.filterUserAttributes(i.attributes);if(t&&i&&i.enabled){a&&null===a.element.parentNode?(h=!0,a=a.destroy()):a&&this.removeTextOutline.call(a.parentGroup),this.options&&this.options.padding&&(l.dx=-this.options.padding),a||(this.textPathWrapper=a=this.renderer.createElement("textPath"),n=!0);var p=a.element;if((i=t.element.getAttribute("id"))||t.element.setAttribute("id",i=L()),h)for(s.setAttribute("y",0),w(l.dx)&&s.setAttribute("x",-l.dx),t=[].slice.call(s.childNodes),h=0;h<t.length;h++){var d=t[h];d.nodeType!==u.Node.TEXT_NODE&&"tspan"!==d.nodeName||p.appendChild(d)}n&&a&&a.add({element:s}),p.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+i),y(l.dy)&&(p.parentNode.setAttribute("dy",l.dy),delete l.dy),y(l.dx)&&(p.parentNode.setAttribute("dx",l.dx),delete l.dx),P(l,function(t,e){p.setAttribute(r[e]||e,t)}),o.removeAttribute("transform"),this.removeTextOutline.call(a),this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0}),this.applyTextOutline=this.updateTransform=c}else a&&(delete this.updateTransform,delete this.applyTextOutline,this.destroyTextPath(o,t),this.updateTransform(),this.options&&this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this},t.prototype.shadow=function(t,e,i){var o,s=[],r=this.element,n=this.oldShadowOptions,a={color:"#000000",offsetX:this.parentInverted?-1:1,offsetY:this.parentInverted?-1:1,opacity:.15,width:3},h=!1;if(!0===t?o=a:"object"==typeof t&&(o=b(a,t)),o&&(o&&n&&P(o,function(t,e){t!==n[e]&&(h=!0)}),h&&this.destroyShadows(),this.oldShadowOptions=o),o){if(!this.shadows){var l=o.opacity/o.width,c=this.parentInverted?"translate("+o.offsetY+", "+o.offsetX+")":"translate("+o.offsetX+", "+o.offsetY+")";for(a=1;a<=o.width;a++){var p=r.cloneNode(!1),d=2*o.width+1-2*a;g(p,{stroke:t.color||"#000000","stroke-opacity":l*a,"stroke-width":d,transform:c,fill:"none"}),p.setAttribute("class",(p.getAttribute("class")||"")+" highcharts-shadow"),i&&(g(p,"height",Math.max(g(p,"height")-d,0)),p.cutHeight=d),e?e.element.appendChild(p):r.parentNode&&r.parentNode.insertBefore(p,r),s.push(p)}this.shadows=s}}else this.destroyShadows();return this},t.prototype.show=function(t){return void 0===t&&(t=!0),this.attr({visibility:t?"inherit":"visible"})},t.prototype.strokeSetter=function(e,i,o){this[i]=e,this.stroke&&this["stroke-width"]?(t.prototype.fillSetter.call(this,this.stroke,"stroke",o),o.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===i&&0===e&&this.hasStroke?(o.removeAttribute("stroke"),this.hasStroke=!1):this.renderer.styledMode&&this["stroke-width"]&&(o.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)},t.prototype.strokeWidth=function(){if(!this.renderer.styledMode)return this["stroke-width"]||0;var t=this.getStyle("stroke-width"),e=0;if(t.indexOf("px")===t.length-2)e=O(t);else if(""!==t){var i=l.createElementNS(d,"rect");g(i,{width:t,"stroke-width":0}),this.element.parentNode.appendChild(i),e=i.getBBox().width,i.parentNode.removeChild(i)}return e},t.prototype.symbolAttr=function(t){var e=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(i){e[i]=T(t[i],e[i])}),e.attr({d:e.renderer.symbols[e.symbolName](e.x,e.y,e.width,e.height,e)})},t.prototype.textSetter=function(t){t!==this.textStr&&(delete this.textPxLength,this.textStr=t,this.added&&this.renderer.buildText(this))},t.prototype.titleSetter=function(t){var e=this.element,i=e.getElementsByTagName("title")[0]||l.createElementNS(this.SVG_NS,"title");e.insertBefore?e.insertBefore(i,e.firstChild):e.appendChild(i),i.textContent=String(T(t,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")},t.prototype.toFront=function(){var t=this.element;return t.parentNode.appendChild(t),this},t.prototype.translate=function(t,e){return this.attr({translateX:t,translateY:e})},t.prototype.updateShadows=function(t,e,i){var o=this.shadows;if(o)for(var s=o.length;s--;)i.call(o[s],"height"===t?Math.max(e-(o[s].cutHeight||0),0):"d"===t?this.d:e,t,o[s])},t.prototype.updateTransform=function(){var t=this.scaleX,e=this.scaleY,i=this.inverted,o=this.rotation,s=this.matrix,r=this.element,n=this.translateX||0,a=this.translateY||0;i&&(n+=this.width,a+=this.height),n=["translate("+n+","+a+")"],y(s)&&n.push("matrix("+s.join(",")+")"),i?n.push("rotate(90) scale(-1,1)"):o&&n.push("rotate("+o+" "+T(this.rotationOriginX,r.getAttribute("x"),0)+" "+T(this.rotationOriginY,r.getAttribute("y")||0)+")"),(y(t)||y(e))&&n.push("scale("+T(t,1)+" "+T(e,1)+")"),n.length&&r.setAttribute("transform",n.join(" "))},t.prototype.visibilitySetter=function(t,e,i){"inherit"===t?i.removeAttribute(e):this[e]!==t&&i.setAttribute(e,t),this[e]=t},t.prototype.xGetter=function(t){return"circle"===this.element.nodeName&&("x"===t?t="cx":"y"===t&&(t="cy")),this._defaultGetter(t)},t.prototype.zIndexSetter=function(t,e){var i=this.renderer,o=this.parentGroup,s=(o||i).element||i.box,r=this.element;i=s===i.box;var n,a=!1,h=this.added;if(y(t)?(r.setAttribute("data-z-index",t),t=+t,this[e]===t&&(h=!1)):y(this[e])&&r.removeAttribute("data-z-index"),this[e]=t,h){for((t=this.zIndex)&&o&&(o.handleZ=!0),n=(e=s.childNodes).length-1;0<=n&&!a;n--){h=(o=e[n]).getAttribute("data-z-index");var l=!y(h);o!==r&&(0>t&&l&&!i&&!n?(s.insertBefore(r,e[n]),a=!0):(O(h)<=t||l&&(!y(t)||0<=t))&&(s.insertBefore(r,e[n+1]||null),a=!0))}a||(s.insertBefore(r,e[i?3:0]||null),a=!0)}return a},t}()).prototype["stroke-widthSetter"]=t.prototype.strokeSetter,t.prototype.yGetter=t.prototype.xGetter,t.prototype.matrixSetter=t.prototype.rotationOriginXSetter=t.prototype.rotationOriginYSetter=t.prototype.rotationSetter=t.prototype.scaleXSetter=t.prototype.scaleYSetter=t.prototype.translateXSetter=t.prototype.translateYSetter=t.prototype.verticalAlignSetter=function(t,e){this[e]=t,this.doTransform=!0},t}),e(i,"Core/Renderer/RendererRegistry.js",[i["Core/Globals.js"]],function(t){var e;return function(e){var i;e.rendererTypes={},e.getRendererType=function(t){return void 0===t&&(t=i),e.rendererTypes[t]||e.rendererTypes[i]},e.registerRendererType=function(o,s,r){e.rendererTypes[o]=s,i&&!r||(i=o,t.Renderer=s)}}(e||(e={})),e}),e(i,"Core/Renderer/SVG/SVGLabel.js",[i["Core/Renderer/SVG/SVGElement.js"],i["Core/Utilities.js"]],function(t,e){var i=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),o=e.defined,s=e.extend,r=e.isNumber,n=e.merge,a=e.pick,h=e.removeEvent;return function(e){function l(t,i,o,s,r,n,a,h,c,p){var d,u=e.call(this)||this;return u.paddingLeftSetter=u.paddingSetter,u.paddingRightSetter=u.paddingSetter,u.init(t,"g"),u.textStr=i,u.x=o,u.y=s,u.anchorX=n,u.anchorY=a,u.baseline=c,u.className=p,u.addClass("button"===p?"highcharts-no-tooltip":"highcharts-label"),p&&u.addClass("highcharts-"+p),u.text=t.text(void 0,0,0,h).attr({zIndex:1}),"string"==typeof r&&((d=/^url\((.*?)\)$/.test(r))||u.renderer.symbols[r])&&(u.symbolKey=r),u.bBox=l.emptyBBox,u.padding=3,u.baselineOffset=0,u.needsBox=t.styledMode||d,u.deferredAttr={},u.alignFactor=0,u}return i(l,e),l.prototype.alignSetter=function(t){(t={left:0,center:.5,right:1}[t])!==this.alignFactor&&(this.alignFactor=t,this.bBox&&r(this.xSetting)&&this.attr({x:this.xSetting}))},l.prototype.anchorXSetter=function(t,e){this.anchorX=t,this.boxAttr(e,Math.round(t)-this.getCrispAdjust()-this.xSetting)},l.prototype.anchorYSetter=function(t,e){this.anchorY=t,this.boxAttr(e,t-this.ySetting)},l.prototype.boxAttr=function(t,e){this.box?this.box.attr(t,e):this.deferredAttr[t]=e},l.prototype.css=function(e){if(e){var i={};e=n(e),l.textProps.forEach(function(t){void 0!==e[t]&&(i[t]=e[t],delete e[t])}),this.text.css(i);var o="width"in i;"fontSize"in i||"fontWeight"in i?this.updateTextPadding():o&&this.updateBoxSize()}return t.prototype.css.call(this,e)},l.prototype.destroy=function(){h(this.element,"mouseenter"),h(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),t.prototype.destroy.call(this)},l.prototype.fillSetter=function(t,e){t&&(this.needsBox=!0),this.fill=t,this.boxAttr(e,t)},l.prototype.getBBox=function(){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();var t=this.padding,e=a(this.paddingLeft,t);return{width:this.width,height:this.height,x:this.bBox.x-e,y:this.bBox.y-t}},l.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},l.prototype.heightSetter=function(t){this.heightSetting=t},l.prototype.onAdd=function(){var t=this.textStr;this.text.add(this),this.attr({text:o(t)?t:"",x:this.x,y:this.y}),this.box&&o(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})},l.prototype.paddingSetter=function(t,e){r(t)?t!==this[e]&&(this[e]=t,this.updateTextPadding()):this[e]=void 0},l.prototype.rSetter=function(t,e){this.boxAttr(e,t)},l.prototype.shadow=function(t){return t&&!this.renderer.styledMode&&(this.updateBoxSize(),this.box&&this.box.shadow(t)),this},l.prototype.strokeSetter=function(t,e){this.stroke=t,this.boxAttr(e,t)},l.prototype["stroke-widthSetter"]=function(t,e){t&&(this.needsBox=!0),this["stroke-width"]=t,this.boxAttr(e,t)},l.prototype["text-alignSetter"]=function(t){this.textAlign=t},l.prototype.textSetter=function(t){void 0!==t&&this.text.attr({text:t}),this.updateTextPadding()},l.prototype.updateBoxSize=function(){var t=this.text.element.style,e={},i=this.padding,n=this.bBox=r(this.widthSetting)&&r(this.heightSetting)&&!this.textAlign||!o(this.text.textStr)?l.emptyBBox:this.text.getBBox();this.width=this.getPaddedWidth(),this.height=(this.heightSetting||n.height||0)+2*i,t=this.renderer.fontMetrics(t&&t.fontSize,this.text),this.baselineOffset=i+Math.min((this.text.firstLineMetrics||t).b,n.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-t.h)/2),this.needsBox&&(this.box||((i=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect()).addClass(("button"===this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),i.add(this)),i=this.getCrispAdjust(),e.x=i,e.y=(this.baseline?-this.baselineOffset:0)+i,e.width=Math.round(this.width),e.height=Math.round(this.height),this.box.attr(s(e,this.deferredAttr)),this.deferredAttr={})},l.prototype.updateTextPadding=function(){var t=this.text;this.updateBoxSize();var e=this.baseline?0:this.baselineOffset,i=a(this.paddingLeft,this.padding);o(this.widthSetting)&&this.bBox&&("center"===this.textAlign||"right"===this.textAlign)&&(i+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),i===t.x&&e===t.y||(t.attr("x",i),t.hasBoxWidthChanged&&(this.bBox=t.getBBox(!0)),void 0!==e&&t.attr("y",e)),t.x=i,t.y=e},l.prototype.widthSetter=function(t){this.widthSetting=r(t)?t:void 0},l.prototype.getPaddedWidth=function(){var t=this.padding,e=a(this.paddingLeft,t);return t=a(this.paddingRight,t),(this.widthSetting||this.bBox.width||0)+e+t},l.prototype.xSetter=function(t){this.x=t,this.alignFactor&&(t-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(t),this.attr("translateX",this.xSetting)},l.prototype.ySetter=function(t){this.ySetting=this.y=Math.round(t),this.attr("translateY",this.ySetting)},l.emptyBBox={width:0,height:0,x:0,y:0},l.textProps="color direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" "),l}(t)}),e(i,"Core/Renderer/SVG/Symbols.js",[i["Core/Utilities.js"]],function(t){function e(t,e,i,o,r){var a=[];if(r){var h=r.start||0,l=n(r.r,i);i=n(r.r,o||i);var c=(r.end||0)-.001;o=r.innerR;var p=n(r.open,.001>Math.abs((r.end||0)-h-2*Math.PI)),d=Math.cos(h),u=Math.sin(h),f=Math.cos(c),g=Math.sin(c);h=n(r.longArc,.001>c-h-Math.PI?0:1),a.push(["M",t+l*d,e+i*u],["A",l,i,0,h,n(r.clockwise,1),t+l*f,e+i*g]),s(o)&&a.push(p?["M",t+o*f,e+o*g]:["L",t+o*f,e+o*g],["A",o,o,0,h,s(r.clockwise)?1-r.clockwise:0,t+o*d,e+o*u]),p||a.push(["Z"])}return a}function i(t,e,i,s,r){return r&&r.r?o(t,e,i,s,r):[["M",t,e],["L",t+i,e],["L",t+i,e+s],["L",t,e+s],["Z"]]}function o(t,e,i,o,s){return[["M",t+(s=s&&s.r||0),e],["L",t+i-s,e],["C",t+i,e,t+i,e,t+i,e+s],["L",t+i,e+o-s],["C",t+i,e+o,t+i,e+o,t+i-s,e+o],["L",t+s,e+o],["C",t,e+o,t,e+o,t,e+o-s],["L",t,e+s],["C",t,e,t,e,t+s,e]]}var s=t.defined,r=t.isNumber,n=t.pick;return{arc:e,callout:function(t,e,i,s,n){var a=Math.min(n&&n.r||0,i,s),h=a+6,l=n&&n.anchorX;n=n&&n.anchorY||0;var c=o(t,e,i,s,{r:a});return r(l)?(t+l>=i?n>e+h&&n<e+s-h?c.splice(3,1,["L",t+i,n-6],["L",t+i+6,n],["L",t+i,n+6],["L",t+i,e+s-a]):c.splice(3,1,["L",t+i,s/2],["L",l,n],["L",t+i,s/2],["L",t+i,e+s-a]):0>=t+l?n>e+h&&n<e+s-h?c.splice(7,1,["L",t,n+6],["L",t-6,n],["L",t,n-6],["L",t,e+a]):c.splice(7,1,["L",t,s/2],["L",l,n],["L",t,s/2],["L",t,e+a]):n&&n>s&&l>t+h&&l<t+i-h?c.splice(5,1,["L",l+6,e+s],["L",l,e+s+6],["L",l-6,e+s],["L",t+a,e+s]):n&&0>n&&l>t+h&&l<t+i-h&&c.splice(1,1,["L",l-6,e],["L",l,e-6],["L",l+6,e],["L",i-a,e]),c):c},circle:function(t,i,o,s){return e(t+o/2,i+s/2,o/2,s/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(t,e,i,o){return[["M",t+i/2,e],["L",t+i,e+o/2],["L",t+i/2,e+o],["L",t,e+o/2],["Z"]]},rect:i,roundedRect:o,square:i,triangle:function(t,e,i,o){return[["M",t+i/2,e],["L",t+i,e+o],["L",t,e+o],["Z"]]},"triangle-down":function(t,e,i,o){return[["M",t,e],["L",t+i,e],["L",t+i/2,e+o],["Z"]]}}}),e(i,"Core/Renderer/SVG/TextBuilder.js",[i["Core/Renderer/HTML/AST.js"],i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e,i){var o=e.doc,s=e.SVG_NS,r=e.win,n=i.attr,a=i.extend,h=i.isString,l=i.objectEach,c=i.pick;return function(){function e(t){var e=t.styles;this.renderer=t.renderer,this.svgElement=t,this.width=t.textWidth,this.textLineHeight=e&&e.lineHeight,this.textOutline=e&&e.textOutline,this.ellipsis=!(!e||"ellipsis"!==e.textOverflow),this.noWrap=!(!e||"nowrap"!==e.whiteSpace),this.fontSize=e&&e.fontSize}return e.prototype.buildSVG=function(){var e=this.svgElement,i=e.element,s=e.renderer,r=c(e.textStr,"").toString(),n=-1!==r.indexOf("<"),a=i.childNodes;s=this.width&&!e.added&&s.box;var l=[r,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,this.fontSize,this.width].join();if(l!==e.textCache){for(e.textCache=l,delete e.actualWidth,l=a.length;l--;)i.removeChild(a[l]);n||this.ellipsis||this.width||-1!==r.indexOf(" ")&&(!this.noWrap||/<br.*?>/g.test(r))?""!==r&&(s&&s.appendChild(i),r=new t(r),this.modifyTree(r.nodes),r.addToDOM(e.element),this.modifyDOM(),this.ellipsis&&-1!==(i.textContent||"").indexOf("…")&&e.attr("title",this.unescapeEntities(e.textStr||"",["&lt;","&gt;"])),s&&s.removeChild(i)):i.appendChild(o.createTextNode(this.unescapeEntities(r))),h(this.textOutline)&&e.applyTextOutline&&e.applyTextOutline(this.textOutline)}},e.prototype.modifyDOM=function(){var t,e=this,i=this.svgElement,a=n(i.element,"x");for(i.firstLineMetrics=void 0;(t=i.element.firstChild)&&/^[\s\u200B]*$/.test(t.textContent||" ");)i.element.removeChild(t);[].forEach.call(i.element.querySelectorAll("tspan.highcharts-br"),function(t,o){t.nextSibling&&t.previousSibling&&(0===o&&1===t.previousSibling.nodeType&&(i.firstLineMetrics=i.renderer.fontMetrics(void 0,t.previousSibling)),n(t,{dy:e.getLineHeight(t.nextSibling),x:a}))});var h=this.width||0;if(h){var l=function(t,r){var l=t.textContent||"",c=l.replace(/([^\^])-/g,"$1- ").split(" "),p=!e.noWrap&&(1<c.length||1<i.element.childNodes.length),d=e.getLineHeight(r),u=0,f=i.actualWidth;if(e.ellipsis)l&&e.truncate(t,l,void 0,0,Math.max(0,h-parseInt(e.fontSize||12,10)),function(t,e){return t.substring(0,e)+"…"});else if(p){for(l=[],p=[];r.firstChild&&r.firstChild!==t;)p.push(r.firstChild),r.removeChild(r.firstChild);for(;c.length;)c.length&&!e.noWrap&&0<u&&(l.push(t.textContent||""),t.textContent=c.join(" ").replace(/- /g,"-")),e.truncate(t,void 0,c,0===u&&f||0,h,function(t,e){return c.slice(0,e).join(" ").replace(/- /g,"-")}),f=i.actualWidth,u++;p.forEach(function(e){r.insertBefore(e,t)}),l.forEach(function(e){r.insertBefore(o.createTextNode(e),t),(e=o.createElementNS(s,"tspan")).textContent="​",n(e,{dy:d,x:a}),r.insertBefore(e,t)})}},c=function(t){[].slice.call(t.childNodes).forEach(function(e){e.nodeType===r.Node.TEXT_NODE?l(e,t):(-1!==e.className.baseVal.indexOf("highcharts-br")&&(i.actualWidth=0),c(e))})};c(i.element)}},e.prototype.getLineHeight=function(t){var e;return t=t.nodeType===r.Node.TEXT_NODE?t.parentElement:t,this.renderer.styledMode||(e=t&&/(px|em)$/.test(t.style.fontSize)?t.style.fontSize:this.fontSize||this.renderer.style.fontSize||12),this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(e,t||this.svgElement.element).h},e.prototype.modifyTree=function(t){var e=this,i=function(o,s){var r=o.attributes;r=void 0===r?{}:r;var n=o.children,h=o.style;h=void 0===h?{}:h;var l=o.tagName,c=e.renderer.styledMode;"b"===l||"strong"===l?c?r.class="highcharts-strong":h.fontWeight="bold":"i"!==l&&"em"!==l||(c?r.class="highcharts-emphasized":h.fontStyle="italic"),h&&h.color&&(h.fill=h.color),"br"===l?(r.class="highcharts-br",o.textContent="​",(s=t[s+1])&&s.textContent&&(s.textContent=s.textContent.replace(/^ +/gm,""))):"a"===l&&n&&n.some(function(t){return"#text"===t.tagName})&&(o.children=[{children:n,tagName:"tspan"}]),"#text"!==l&&"a"!==l&&(o.tagName="tspan"),a(o,{attributes:r,style:h}),n&&n.filter(function(t){return"#text"!==t.tagName}).forEach(i)};t.forEach(i)},e.prototype.truncate=function(t,e,i,o,s,r){var n,a=this.svgElement,h=a.renderer,l=a.rotation,c=[],p=i?1:0,d=(e||i||"").length,u=d,f=function(s,n){n=n||s;var l=t.parentNode;if(l&&void 0===c[n])if(l.getSubStringLength)try{c[n]=o+l.getSubStringLength(0,i?n+1:n)}catch(t){}else h.getSpanWidth&&(t.textContent=r(e||i,s),c[n]=o+h.getSpanWidth(a,t));return c[n]};a.rotation=0;var g=f(t.textContent.length);if(o+g>s){for(;p<=d;)u=Math.ceil((p+d)/2),i&&(n=r(i,u)),g=f(u,n&&n.length-1),p===d?p=d+1:g>s?d=u-1:p=u;0===d?t.textContent="":e&&d===e.length-1||(t.textContent=n||r(e||i,u))}i&&i.splice(0,u),a.actualWidth=g,a.rotation=l},e.prototype.unescapeEntities=function(t,e){return l(this.renderer.escapes,function(i,o){e&&-1!==e.indexOf(i)||(t=t.toString().replace(new RegExp(i,"g"),o))}),t},e}()}),e(i,"Core/Renderer/SVG/SVGRenderer.js",[i["Core/Renderer/HTML/AST.js"],i["Core/Color/Color.js"],i["Core/Globals.js"],i["Core/Renderer/RendererRegistry.js"],i["Core/Renderer/SVG/SVGElement.js"],i["Core/Renderer/SVG/SVGLabel.js"],i["Core/Renderer/SVG/Symbols.js"],i["Core/Renderer/SVG/TextBuilder.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a,h){var l,c=i.charts,p=i.deg2rad,d=i.doc,u=i.isFirefox,f=i.isMS,g=i.isWebKit,m=i.noop,x=i.SVG_NS,y=i.symbolSizes,v=i.win,b=h.addEvent,S=h.attr,M=h.createElement,k=h.css,w=h.defined,C=h.destroyObjectProperties,A=h.extend,P=h.isArray,T=h.isNumber,O=h.isObject,E=h.isString,L=h.merge,D=h.pick,z=h.pInt,j=h.uniqueKey;return i=function(){function i(t,e,i,o,s,r,n){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(t,e,i,o,s,r,n)}return i.prototype.init=function(t,e,i,o,s,r,n){var a,h=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),l=h.element;n||h.css(this.getStyle(o)),t.appendChild(l),S(t,"dir","ltr"),-1===t.innerHTML.indexOf("xmlns")&&S(l,"xmlns",this.SVG_NS),this.isSVG=!0,this.box=l,this.boxWrapper=h,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(d.createTextNode("Created with Highcharts 10.1.0")),this.defs=this.createElement("defs").add(),this.allowHTML=r,this.forExport=s,this.styledMode=n,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.setSize(e,i,!1),u&&t.getBoundingClientRect&&((e=function(){k(t,{left:0,top:0}),a=t.getBoundingClientRect(),k(t,{left:Math.ceil(a.left)-a.left+"px",top:Math.ceil(a.top)-a.top+"px"})})(),this.unSubPixelFix=b(v,"resize",e))},i.prototype.definition=function(e){return new t([e]).addToDOM(this.defs.element)},i.prototype.getReferenceURL=function(){if((u||g)&&d.getElementsByTagName("base").length){if(!w(l)){var e=j();e=new t([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:e},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":"url(#"+e+")",fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(d.body),k(e,{position:"fixed",top:0,left:0,zIndex:9e5});var i=d.elementFromPoint(6,6);l="hitme"===(i&&i.id),d.body.removeChild(e)}if(l)return v.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20")}return""},i.prototype.getStyle=function(t){return this.style=A({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},t)},i.prototype.setStyle=function(t){this.boxWrapper.css(this.getStyle(t))},i.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width},i.prototype.destroy=function(){var t=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),C(this.gradients||{}),this.gradients=null,t&&(this.defs=t.destroy()),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null},i.prototype.createElement=function(t){var e=new this.Element;return e.init(this,t),e},i.prototype.getRadialAttr=function(t,e){return{cx:t[0]-t[2]/2+(e.cx||0)*t[2],cy:t[1]-t[2]/2+(e.cy||0)*t[2],r:(e.r||0)*t[2]}},i.prototype.buildText=function(t){new a(t).buildSVG()},i.prototype.getContrast=function(t){return(t=e.parse(t).rgba)[0]*=1,t[1]*=1.2,t[2]*=.5,459<t[0]+t[1]+t[2]?"#000000":"#FFFFFF"},i.prototype.button=function(e,i,o,s,r,n,a,h,l,c){var p=this.label(e,i,o,l,void 0,void 0,c,void 0,"button"),d=this.styledMode;e=r&&r.states||{},r&&delete r.states;var u=0,g=r?L(r):{},m=L({color:"#333333",cursor:"pointer",fontWeight:"normal"},g.style);if(delete g.style,g=t.filterUserAttributes(g),p.attr(L({padding:8,r:2},g)),!d){g=L({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1},g);var x=(n=L(g,{fill:"#e6e6e6"},t.filterUserAttributes(n||e.hover||{}))).style;delete n.style;var y=(a=L(g,{fill:"#e6ebf5",style:{color:"#000000",fontWeight:"bold"}},t.filterUserAttributes(a||e.select||{}))).style;delete a.style;var v=(h=L(g,{style:{color:"#cccccc"}},t.filterUserAttributes(h||e.disabled||{}))).style;delete h.style}return b(p.element,f?"mouseover":"mouseenter",function(){3!==u&&p.setState(1)}),b(p.element,f?"mouseout":"mouseleave",function(){3!==u&&p.setState(u)}),p.setState=function(t){1!==t&&(p.state=u=t),p.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][t||0]),d||(p.attr([g,n,a,h][t||0]),O(t=[m,x,y,v][t||0])&&p.css(t))},d||p.attr(g).css(A({cursor:"default"},m)),p.on("touchstart",function(t){return t.stopPropagation()}).on("click",function(t){3!==u&&s.call(p,t)})},i.prototype.crispLine=function(t,e,i){void 0===i&&(i="round");var o=t[0],s=t[1];return w(o[1])&&o[1]===s[1]&&(o[1]=s[1]=Math[i](o[1])-e%2/2),w(o[2])&&o[2]===s[2]&&(o[2]=s[2]=Math[i](o[2])+e%2/2),t},i.prototype.path=function(t){var e=this.styledMode?{}:{fill:"none"};return P(t)?e.d=t:O(t)&&A(e,t),this.createElement("path").attr(e)},i.prototype.circle=function(t,e,i){return t=O(t)?t:void 0===t?{}:{x:t,y:e,r:i},(e=this.createElement("circle")).xSetter=e.ySetter=function(t,e,i){i.setAttribute("c"+e,t)},e.attr(t)},i.prototype.arc=function(t,e,i,o,s,r){return O(t)?(e=(o=t).y,i=o.r,t=o.x):o={innerR:o,start:s,end:r},(t=this.symbol("arc",t,e,i,i,o)).r=i,t},i.prototype.rect=function(t,e,i,o,s,r){s=O(t)?t.r:s;var n=this.createElement("rect");return t=O(t)?t:void 0===t?{}:{x:t,y:e,width:Math.max(i,0),height:Math.max(o,0)},this.styledMode||(void 0!==r&&(t["stroke-width"]=r,t=n.crisp(t)),t.fill="none"),s&&(t.r=s),n.rSetter=function(t,e,i){n.r=t,S(i,{rx:t,ry:t})},n.rGetter=function(){return n.r||0},n.attr(t)},i.prototype.setSize=function(t,e,i){this.width=t,this.height=e,this.boxWrapper.animate({width:t,height:e},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:D(i,!0)?void 0:0}),this.alignElements()},i.prototype.g=function(t){var e=this.createElement("g");return t?e.attr({class:"highcharts-"+t}):e},i.prototype.image=function(t,e,i,o,s,r){var n={preserveAspectRatio:"none"},a=function(t,e){t.setAttributeNS?t.setAttributeNS("http://www.w3.org/1999/xlink","href",e):t.setAttribute("hc-svg-href",e)};T(e)&&(n.x=e),T(i)&&(n.y=i),T(o)&&(n.width=o),T(s)&&(n.height=s);var h=this.createElement("image").attr(n);return e=function(e){a(h.element,t),r.call(h,e)},r?(a(h.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),i=new v.Image,b(i,"load",e),i.src=t,i.complete&&e({})):a(h.element,t),h},i.prototype.symbol=function(t,e,i,o,s,r){var n,a=this,h=/^url\((.*?)\)$/,l=h.test(t),p=!l&&(this.symbols[t]?t:"circle"),u=p&&this.symbols[p];if(u){"number"==typeof e&&(n=u.call(this.symbols,Math.round(e||0),Math.round(i||0),o||0,s||0,r));var f=this.path(n);a.styledMode||f.attr("fill","none"),A(f,{symbolName:p||void 0,x:e,y:i,width:o,height:s}),r&&A(f,r)}else if(l){var g=t.match(h)[1],m=f=this.image(g);m.imgwidth=D(y[g]&&y[g].width,r&&r.width),m.imgheight=D(y[g]&&y[g].height,r&&r.height);var x=function(t){return t.attr({width:t.width,height:t.height})};["width","height"].forEach(function(t){m[t+"Setter"]=function(t,e){var i=this["img"+e];this[e]=t,w(i)&&(r&&"within"===r.backgroundSize&&this.width&&this.height&&(i=Math.round(i*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(e,i),this.alignByTranslate||(t=((this[e]||0)-i)/2,this.attr("width"===e?{translateX:t}:{translateY:t})))}}),w(e)&&m.attr({x:e,y:i}),m.isImg=!0,w(m.imgwidth)&&w(m.imgheight)?x(m):(m.attr({width:0,height:0}),M("img",{onload:function(){var t=c[a.chartIndex];0===this.width&&(k(this,{position:"absolute",top:"-999em"}),d.body.appendChild(this)),y[g]={width:this.width,height:this.height},m.imgwidth=this.width,m.imgheight=this.height,m.element&&x(m),this.parentNode&&this.parentNode.removeChild(this),a.imgCount--,a.imgCount||!t||t.hasLoaded||t.onload()},src:g}),this.imgCount++)}return f},i.prototype.clipRect=function(t,e,i,o){var s=j()+"-",r=this.createElement("clipPath").attr({id:s}).add(this.defs);return(t=this.rect(t,e,i,o,0).add(r)).id=s,t.clipPath=r,t.count=0,t},i.prototype.text=function(t,e,i,o){var s={};return!o||!this.allowHTML&&this.forExport?(s.x=Math.round(e||0),i&&(s.y=Math.round(i)),w(t)&&(s.text=t),t=this.createElement("text").attr(s),(!o||this.forExport&&!this.allowHTML)&&(t.xSetter=function(t,e,i){for(var o,s=i.getElementsByTagName("tspan"),r=i.getAttribute(e),n=0;n<s.length;n++)(o=s[n]).getAttribute(e)===r&&o.setAttribute(e,t);i.setAttribute(e,t)}),t):this.html(t,e,i)},i.prototype.fontMetrics=function(t,e){return t=!this.styledMode&&/px/.test(t)||!v.getComputedStyle?t||e&&e.style&&e.style.fontSize||this.style&&this.style.fontSize:e&&s.prototype.getStyle.call(e,"font-size"),{h:e=24>(t=/px/.test(t)?z(t):12)?t+3:Math.round(1.2*t),b:Math.round(.8*e),f:t}},i.prototype.rotCorr=function(t,e,i){var o=t;return e&&i&&(o=Math.max(o*Math.cos(e*p),4)),{x:-t/3*Math.sin(e*p),y:o}},i.prototype.pathToSegments=function(t){for(var e=[],i=[],o={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},s=0;s<t.length;s++)E(i[0])&&T(t[s])&&i.length===o[i[0].toUpperCase()]&&t.splice(s,0,i[0].replace("M","L").replace("m","l")),"string"==typeof t[s]&&(i.length&&e.push(i.slice(0)),i.length=0),i.push(t[s]);return e.push(i.slice(0)),e},i.prototype.label=function(t,e,i,o,s,n,a,h,l){return new r(this,t,e,i,o,s,n,a,h,l)},i.prototype.alignElements=function(){this.alignedObjects.forEach(function(t){return t.align()})},i}(),A(i.prototype,{Element:s,SVG_NS:x,escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},symbols:n,draw:m}),o.registerRendererType("svg",i,!0),i}),e(i,"Core/Renderer/HTML/HTMLElement.js",[i["Core/Globals.js"],i["Core/Renderer/SVG/SVGElement.js"],i["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=t.isFirefox,r=t.isMS,n=t.isWebKit,a=t.win,h=i.css,l=i.defined,c=i.extend,p=i.pick,d=i.pInt;return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.compose=function(t){if(-1===e.composedClasses.indexOf(t)){e.composedClasses.push(t);var i=e.prototype,o=t.prototype;o.getSpanCorrection=i.getSpanCorrection,o.htmlCss=i.htmlCss,o.htmlGetBBox=i.htmlGetBBox,o.htmlUpdateTransform=i.htmlUpdateTransform,o.setSpanRotation=i.setSpanRotation}return t},e.prototype.getSpanCorrection=function(t,e,i){this.xCorr=-t*i,this.yCorr=-e},e.prototype.htmlCss=function(t){var e="SPAN"===this.element.tagName&&t&&"width"in t,i=p(e&&t.width,void 0);if(e){delete t.width,this.textWidth=i;var o=!0}return t&&"ellipsis"===t.textOverflow&&(t.whiteSpace="nowrap",t.overflow="hidden"),this.styles=c(this.styles,t),h(this.element,t),o&&this.htmlUpdateTransform(),this},e.prototype.htmlGetBBox=function(){var t=this.element;return{x:t.offsetLeft,y:t.offsetTop,width:t.offsetWidth,height:t.offsetHeight}},e.prototype.htmlUpdateTransform=function(){if(this.added){var t=this.renderer,e=this.element,i=this.translateX||0,o=this.translateY||0,s=this.x||0,r=this.y||0,n=this.textAlign||"left",a={left:0,center:.5,right:1}[n],c=this.styles;if(c=c&&c.whiteSpace,h(e,{marginLeft:i,marginTop:o}),!t.styledMode&&this.shadows&&this.shadows.forEach(function(t){h(t,{marginLeft:i+1,marginTop:o+1})}),this.inverted&&[].forEach.call(e.childNodes,function(i){t.invertChild(i,e)}),"SPAN"===e.tagName){var p=this.rotation,u=this.textWidth&&d(this.textWidth),f=[p,n,e.innerHTML,this.textWidth,this.textAlign].join(),g=void 0;if(g=!1,u!==this.oldTextWidth){if(this.textPxLength)var m=this.textPxLength;else h(e,{width:"",whiteSpace:c||"nowrap"}),m=e.offsetWidth;(u>this.oldTextWidth||m>u)&&(/[ \-]/.test(e.textContent||e.innerText)||"ellipsis"===e.style.textOverflow)&&(h(e,{width:m>u||p?u+"px":"auto",display:"block",whiteSpace:c||"normal"}),this.oldTextWidth=u,g=!0)}this.hasBoxWidthChanged=g,f!==this.cTT&&(g=t.fontMetrics(e.style.fontSize,e).b,!l(p)||p===(this.oldRotation||0)&&n===this.oldAlign||this.setSpanRotation(p,a,g),this.getSpanCorrection(!l(p)&&this.textPxLength||e.offsetWidth,g,a,p,n)),h(e,{left:s+(this.xCorr||0)+"px",top:r+(this.yCorr||0)+"px"}),this.cTT=f,this.oldRotation=p,this.oldAlign=n}}else this.alignOnAdd=!0},e.prototype.setSpanRotation=function(t,e,i){var o={},l=r&&!/Edge/.test(a.navigator.userAgent)?"-ms-transform":n?"-webkit-transform":s?"MozTransform":a.opera?"-o-transform":void 0;l&&(o[l]=o.transform="rotate("+t+"deg)",o[l+(s?"Origin":"-origin")]=o.transformOrigin=100*e+"% "+i+"px",h(this.element,o))},e.composedClasses=[],e}(e)}),e(i,"Core/Renderer/HTML/HTMLRenderer.js",[i["Core/Renderer/HTML/AST.js"],i["Core/Renderer/SVG/SVGElement.js"],i["Core/Renderer/SVG/SVGRenderer.js"],i["Core/Utilities.js"]],function(t,e,i,o){var s=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),r=o.attr,n=o.createElement,a=o.extend,h=o.pick;return function(i){function o(){return null!==i&&i.apply(this,arguments)||this}return s(o,i),o.compose=function(t){return-1===o.composedClasses.indexOf(t)&&(o.composedClasses.push(t),t.prototype.html=o.prototype.html),t},o.prototype.html=function(i,o,s){var l=this.createElement("span"),c=l.element,p=l.renderer,d=p.isSVG,u=function(t,i){["opacity","visibility"].forEach(function(o){t[o+"Setter"]=function(s,r,n){var a=t.div?t.div.style:i;e.prototype[o+"Setter"].call(this,s,r,n),a&&(a[r]=s)}}),t.addedSetters=!0};return l.textSetter=function(e){e!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,t.setElementHTML(this.element,h(e,"")),this.textStr=e,l.doTransform=!0)},d&&u(l,l.element.style),l.xSetter=l.ySetter=l.alignSetter=l.rotationSetter=function(t,e){"align"===e?l.alignValue=l.textAlign=t:l[e]=t,l.doTransform=!0},l.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)},l.attr({text:i,x:Math.round(o),y:Math.round(s)}).css({position:"absolute"}),p.styledMode||l.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),c.style.whiteSpace="nowrap",l.css=l.htmlCss,d&&(l.add=function(t){var e=p.box.parentNode,i=[];if(this.parentGroup=t){var o=t.div;if(!o){for(;t;)i.push(t),t=t.parentGroup;i.reverse().forEach(function(t){function s(e,i){t[i]=e,"translateX"===i?p.left=e+"px":p.top=e+"px",t.doTransform=!0}var h=r(t.element,"class"),c=t.styles||{},p=(o=t.div=t.div||n("div",h?{className:h}:void 0,{position:"absolute",left:(t.translateX||0)+"px",top:(t.translateY||0)+"px",display:t.display,opacity:t.opacity,cursor:c.cursor,pointerEvents:c.pointerEvents,visibility:t.visibility},o||e)).style;a(t,{classSetter:function(t){return function(e){this.element.setAttribute("class",e),t.className=e}}(o),on:function(){return i[0].div&&l.on.apply({element:i[0].div,onEvents:t.onEvents},arguments),t},translateXSetter:s,translateYSetter:s}),t.addedSetters||u(t)})}}else o=e;return o.appendChild(c),l.added=!0,l.alignOnAdd&&l.htmlUpdateTransform(),l}),l},o.composedClasses=[],o}(i)}),e(i,"Core/Axis/AxisDefaults.js",[],function(){var t;return function(t){t.defaultXAxisOptions={alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e. %b"},week:{main:"%e. %b"},month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,gridLineDashStyle:"Solid",gridZIndex:1,labels:{autoRotation:void 0,autoRotationLimit:80,distance:void 0,enabled:!0,indentation:10,overflow:"justify",padding:5,reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,x:0,zIndex:7,style:{color:"#666666",cursor:"default",fontSize:"11px"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minPadding:.01,offset:void 0,opposite:!1,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",rotation:0,useHTML:!1,x:0,y:0,style:{color:"#666666"}},type:"linear",uniqueNames:!0,visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#ccd6eb",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#ccd6eb"},t.defaultYAxisOptions={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){return(0,this.axis.chart.numberFormatter)(this.total,-1)},style:{color:"#000000",fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},t.defaultLeftAxisOptions={labels:{x:-15},title:{rotation:270}},t.defaultRightAxisOptions={labels:{x:15},title:{rotation:90}},t.defaultBottomAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},t.defaultTopAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}}}(t||(t={})),t}),e(i,"Core/Foundation.js",[i["Core/Utilities.js"]],function(t){var e,i=t.addEvent,o=t.isFunction,s=t.objectEach,r=t.removeEvent;return(e||(e={})).registerEventOptions=function(t,e){t.eventOptions=t.eventOptions||{},s(e.events,function(e,s){t.eventOptions[s]!==e&&(t.eventOptions[s]&&(r(t,s,t.eventOptions[s]),delete t.eventOptions[s]),o(e)&&(t.eventOptions[s]=e,i(t,s,e)))})},e}),e(i,"Core/Axis/Tick.js",[i["Core/FormatUtilities.js"],i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e,i){var o=e.deg2rad,s=i.clamp,r=i.correctFloat,n=i.defined,a=i.destroyObjectProperties,h=i.extend,l=i.fireEvent,c=i.isNumber,p=i.merge,d=i.objectEach,u=i.pick;return e=function(){function e(t,e,i,o,s){this.isNewLabel=this.isNew=!0,this.axis=t,this.pos=e,this.type=i||"",this.parameters=s||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,l(this,"init"),i||o||this.addLabel()}return e.prototype.addLabel=function(){var e=this,i=e.axis,o=i.options,s=i.chart,a=i.categories,p=i.logarithmic,d=i.names,f=e.pos,g=u(e.options&&e.options.labels,o.labels),m=i.tickPositions,x=f===m[0],y=f===m[m.length-1],v=(!g.step||1===g.step)&&1===i.tickInterval;m=m.info;var b,S=e.label;if(a=this.parameters.category||(a?u(a[f],d[f],f):f),p&&c(a)&&(a=r(p.lin2log(a))),i.dateTime)if(m)var M=s.time.resolveDTLFormat(o.dateTimeLabelFormats[!o.grid&&m.higherRanks[f]||m.unitName]),k=M.main;else c(a)&&(k=i.dateTime.getXDateFormat(a,o.dateTimeLabelFormats||{}));e.isFirst=x,e.isLast=y;var w={axis:i,chart:s,dateTimeLabelFormat:k,isFirst:x,isLast:y,pos:f,tick:e,tickPositionInfo:m,value:a};l(this,"labelFormat",w);var C=function(e){return g.formatter?g.formatter.call(e,e):g.format?(e.text=i.defaultLabelFormatter.call(e),t.format(g.format,e,s)):i.defaultLabelFormatter.call(e,e)};o=C.call(w,w);var A=M&&M.list;e.shortenLabel=A?function(){for(b=0;b<A.length;b++)if(h(w,{dateTimeLabelFormat:A[b]}),S.attr({text:C.call(w,w)}),S.getBBox().width<i.getSlotWidth(e)-2*g.padding)return;S.attr({text:""})}:void 0,v&&i._addedPlotLB&&e.moveLabel(o,g),n(S)||e.movedLabel?S&&S.textStr!==o&&!v&&(!S.textWidth||g.style.width||S.styles.width||S.css({width:null}),S.attr({text:o}),S.textPxLength=S.getBBox().width):(e.label=S=e.createLabel({x:0,y:0},o,g),e.rotation=0)},e.prototype.createLabel=function(t,e,i){var o=this.axis,s=o.chart;return(t=n(e)&&i.enabled?s.renderer.text(e,t.x,t.y,i.useHTML).add(o.labelGroup):null)&&(s.styledMode||t.css(p(i.style)),t.textPxLength=t.getBBox().width),t},e.prototype.destroy=function(){a(this,this.axis)},e.prototype.getPosition=function(t,e,i,o){var n=this.axis,a=n.chart,h=o&&a.oldChartHeight||a.chartHeight;return(t={x:t?r(n.translate(e+i,null,null,o)+n.transB):n.left+n.offset+(n.opposite?(o&&a.oldChartWidth||a.chartWidth)-n.right-n.left:0),y:t?h-n.bottom+n.offset-(n.opposite?n.height:0):r(h-n.translate(e+i,null,null,o)-n.transB)}).y=s(t.y,-1e5,1e5),l(this,"afterGetPosition",{pos:t}),t},e.prototype.getLabelPosition=function(t,e,i,s,r,a,h,c){var p=this.axis,d=p.transA,u=p.isLinked&&p.linkedParent?p.linkedParent.reversed:p.reversed,f=p.staggerLines,g=p.tickRotCorr||{x:0,y:0},m=s||p.reserveSpaceDefault?0:-p.labelOffset*("center"===p.labelAlign?.5:1),x={},y=r.y;return n(y)||(y=0===p.side?i.rotation?-8:-i.getBBox().height:2===p.side?g.y+8:Math.cos(i.rotation*o)*(g.y-i.getBBox(!1,0).height/2)),t=t+r.x+m+g.x-(a&&s?a*d*(u?-1:1):0),e=e+y-(a&&!s?a*d*(u?1:-1):0),f&&(i=h/(c||1)%f,p.opposite&&(i=f-i-1),e+=p.labelOffset/f*i),x.x=t,x.y=Math.round(e),l(this,"afterGetLabelPosition",{pos:x,tickmarkOffset:a,index:h}),x},e.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},e.prototype.getMarkPath=function(t,e,i,o,s,r){return r.crispLine([["M",t,e],["L",t+(s?0:-i),e+(s?i:0)]],o)},e.prototype.handleOverflow=function(t){var e=this.axis,i=e.options.labels,s=t.x,r=e.chart.chartWidth,n=e.chart.spacing,a=u(e.labelLeft,Math.min(e.pos,n[3]));n=u(e.labelRight,Math.max(e.isRadial?0:e.pos+e.len,r-n[1]));var h,l=this.label,c=this.rotation,p={left:0,center:.5,right:1}[e.labelAlign||l.attr("align")],d=l.getBBox().width,f=e.getSlotWidth(this),g={},m=f,x=1;c||"justify"!==i.overflow?0>c&&s-p*d<a?h=Math.round(s/Math.cos(c*o)-a):0<c&&s+p*d>n&&(h=Math.round((r-s)/Math.cos(c*o))):(r=s+(1-p)*d,s-p*d<a?m=t.x+m*(1-p)-a:r>n&&(m=n-t.x+m*p,x=-1),(m=Math.min(f,m))<f&&"center"===e.labelAlign&&(t.x+=x*(f-m-p*(f-Math.min(d,m)))),(d>m||e.autoRotation&&(l.styles||{}).width)&&(h=m)),h&&(this.shortenLabel?this.shortenLabel():(g.width=Math.floor(h)+"px",(i.style||{}).textOverflow||(g.textOverflow="ellipsis"),l.css(g)))},e.prototype.moveLabel=function(t,e){var i=this,o=i.label,s=i.axis,r=s.reversed,n=!1;if(o&&o.textStr===t?(i.movedLabel=o,n=!0,delete i.label):d(s.ticks,function(e){n||e.isNew||e===i||!e.label||e.label.textStr!==t||(i.movedLabel=e.label,n=!0,e.labelPos=i.movedLabel.xy,delete e.label)}),!n&&(i.labelPos||o)){var a=i.labelPos||o.xy;o=s.horiz?r?0:s.width+s.left:a.x,s=s.horiz?a.y:r?s.width+s.left:0,i.movedLabel=i.createLabel({x:o,y:s},t,e),i.movedLabel&&i.movedLabel.attr({opacity:0})}},e.prototype.render=function(t,e,i){var o=this.axis,s=o.horiz,r=this.pos,n=u(this.tickmarkOffset,o.tickmarkOffset);n=(r=this.getPosition(s,r,n,e)).x;var a=r.y;o=s&&n===o.pos+o.len||!s&&a===o.pos?-1:1,s=u(i,this.label&&this.label.newOpacity,1),i=u(i,1),this.isActive=!0,this.renderGridLine(e,i,o),this.renderMark(r,i,o),this.renderLabel(r,e,s,t),this.isNew=!1,l(this,"afterRender")},e.prototype.renderGridLine=function(t,e,i){var o=this.axis,s=o.options,r={},n=this.pos,a=this.type,h=u(this.tickmarkOffset,o.tickmarkOffset),l=o.chart.renderer,c=this.gridLine,p=s.gridLineWidth,d=s.gridLineColor,f=s.gridLineDashStyle;"minor"===this.type&&(p=s.minorGridLineWidth,d=s.minorGridLineColor,f=s.minorGridLineDashStyle),c||(o.chart.styledMode||(r.stroke=d,r["stroke-width"]=p||0,r.dashstyle=f),a||(r.zIndex=1),t&&(e=0),this.gridLine=c=l.path().attr(r).addClass("highcharts-"+(a?a+"-":"")+"grid-line").add(o.gridGroup)),c&&(i=o.getPlotLinePath({value:n+h,lineWidth:c.strokeWidth()*i,force:"pass",old:t}))&&c[t||this.isNew?"attr":"animate"]({d:i,opacity:e})},e.prototype.renderMark=function(t,e,i){var o=this.axis,s=o.options,r=o.chart.renderer,n=this.type,a=o.tickSize(n?n+"Tick":"tick"),h=t.x;t=t.y;var l=u(s["minor"!==n?"tickWidth":"minorTickWidth"],!n&&o.isXAxis?1:0);s=s["minor"!==n?"tickColor":"minorTickColor"];var c=this.mark,p=!c;a&&(o.opposite&&(a[0]=-a[0]),c||(this.mark=c=r.path().addClass("highcharts-"+(n?n+"-":"")+"tick").add(o.axisGroup),o.chart.styledMode||c.attr({stroke:s,"stroke-width":l})),c[p?"attr":"animate"]({d:this.getMarkPath(h,t,a[0],c.strokeWidth()*i,o.horiz,r),opacity:e}))},e.prototype.renderLabel=function(t,e,i,o){var s=this.axis,r=s.horiz,n=s.options,a=this.label,h=n.labels,l=h.step;s=u(this.tickmarkOffset,s.tickmarkOffset);var p=t.x;t=t.y;var d=!0;a&&c(p)&&(a.xy=t=this.getLabelPosition(p,t,a,r,h,s,o,l),this.isFirst&&!this.isLast&&!n.showFirstLabel||this.isLast&&!this.isFirst&&!n.showLastLabel?d=!1:!r||h.step||h.rotation||e||0===i||this.handleOverflow(t),l&&o%l&&(d=!1),d&&c(t.y)?(t.opacity=i,a[this.isNewLabel?"attr":"animate"](t).show(!0),this.isNewLabel=!1):(a.hide(),this.isNewLabel=!0))},e.prototype.replaceMovedLabel=function(){var t=this.label,e=this.axis,i=e.reversed;if(t&&!this.isNew){var o=e.horiz?i?e.left:e.width+e.left:t.xy.x;i=e.horiz?t.xy.y:i?e.width+e.top:e.top,t.animate({x:o,y:i,opacity:0},void 0,t.destroy),delete this.label}e.isDirty=!0,this.label=this.movedLabel,delete this.movedLabel},e}()}),e(i,"Core/Axis/Axis.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Axis/AxisDefaults.js"],i["Core/Color/Color.js"],i["Core/DefaultOptions.js"],i["Core/Foundation.js"],i["Core/Globals.js"],i["Core/Axis/Tick.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a){var h=t.animObject,l=o.defaultOptions,c=s.registerEventOptions,p=r.deg2rad,d=a.arrayMax,u=a.arrayMin,f=a.clamp,g=a.correctFloat,m=a.defined,x=a.destroyObjectProperties,y=a.erase,v=a.error,b=a.extend,S=a.fireEvent,M=a.isArray,k=a.isNumber,w=a.isString,C=a.merge,A=a.normalizeTickInterval,P=a.objectEach,T=a.pick,O=a.relativeLength,E=a.removeEvent,L=a.splat,D=a.syncTimeout,z=function(t,e){return A(e,void 0,void 0,T(t.options.allowDecimals,.5>e||void 0!==t.tickAmount),!!t.tickAmount)};return t=function(){function t(t,e){this.zoomEnabled=this.width=this.visible=this.userOptions=this.translationSlope=this.transB=this.transA=this.top=this.ticks=this.tickRotCorr=this.tickPositions=this.tickmarkOffset=this.tickInterval=this.tickAmount=this.side=this.series=this.right=this.positiveValuesOnly=this.pos=this.pointRangePadding=this.pointRange=this.plotLinesAndBandsGroups=this.plotLinesAndBands=this.paddedTicks=this.overlap=this.options=this.offset=this.names=this.minPixelPadding=this.minorTicks=this.minorTickInterval=this.min=this.maxLabelLength=this.max=this.len=this.left=this.labelFormatter=this.labelEdge=this.isLinked=this.height=this.hasVisibleSeries=this.hasNames=this.eventOptions=this.coll=this.closestPointRange=this.chart=this.bottom=this.alternateBands=void 0,this.init(t,e)}return t.prototype.init=function(t,e){var i=e.isX;this.chart=t,this.horiz=t.inverted&&!this.isZAxis?!i:i,this.isXAxis=i,this.coll=this.coll||(i?"xAxis":"yAxis"),S(this,"init",{userOptions:e}),this.opposite=T(e.opposite,this.opposite),this.side=T(e.side,this.side,this.horiz?this.opposite?0:2:this.opposite?1:3),this.setOptions(e);var o=this.options,s=o.labels,r=o.type;this.userOptions=e,this.minPixelPadding=0,this.reversed=T(o.reversed,this.reversed),this.visible=o.visible,this.zoomEnabled=o.zoomEnabled,this.hasNames="category"===r||!0===o.categories,this.categories=o.categories||(this.hasNames?[]:void 0),this.names||(this.names=[],this.names.keys={}),this.plotLinesAndBandsGroups={},this.positiveValuesOnly=!!this.logarithmic,this.isLinked=m(o.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},this.len=0,this.minRange=this.userMinRange=o.minRange||o.maxZoom,this.range=o.range,this.offset=o.offset||0,this.min=this.max=null,e=T(o.crosshair,L(t.options.tooltip.crosshairs)[i?0:1]),this.crosshair=!0===e?{}:e,-1===t.axes.indexOf(this)&&(i?t.axes.splice(t.xAxis.length,0,this):t.axes.push(this),t[this.coll].push(this)),this.series=this.series||[],t.inverted&&!this.isZAxis&&i&&void 0===this.reversed&&(this.reversed=!0),this.labelRotation=k(s.rotation)?s.rotation:void 0,c(this,o),S(this,"afterInit")},t.prototype.setOptions=function(t){this.options=C(e.defaultXAxisOptions,"yAxis"===this.coll&&e.defaultYAxisOptions,[e.defaultTopAxisOptions,e.defaultRightAxisOptions,e.defaultBottomAxisOptions,e.defaultLeftAxisOptions][this.side],C(l[this.coll],t)),S(this,"afterSetOptions",{userOptions:t})},t.prototype.defaultLabelFormatter=function(t){var e=this.axis;t=this.chart.numberFormatter;var i=k(this.value)?this.value:NaN,o=e.chart.time,s=this.dateTimeLabelFormat,r=l.lang,n=r.numericSymbols;r=r.numericSymbolMagnitude||1e3;var a=e.logarithmic?Math.abs(i):e.tickInterval,h=n&&n.length;if(e.categories)var c=""+this.value;else if(s)c=o.dateFormat(s,i);else if(h&&1e3<=a)for(;h--&&void 0===c;)a>=(e=Math.pow(r,h+1))&&0==10*i%e&&null!==n[h]&&0!==i&&(c=t(i/e,-1)+n[h]);return void 0===c&&(c=1e4<=Math.abs(i)?t(i,-1):t(i,-1,void 0,"")),c},t.prototype.getSeriesExtremes=function(){var t,e=this,i=e.chart;S(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(o){if(o.visible||!i.options.chart.ignoreHiddenSeries){var s=o.options,r=s.threshold;if(e.hasVisibleSeries=!0,e.positiveValuesOnly&&0>=r&&(r=null),e.isXAxis){if((s=o.xData).length){s=e.logarithmic?s.filter(e.validatePositiveValue):s;var n=(t=o.getXExtremes(s)).min,a=t.max;k(n)||n instanceof Date||(s=s.filter(k),n=(t=o.getXExtremes(s)).min,a=t.max),s.length&&(e.dataMin=Math.min(T(e.dataMin,n),n),e.dataMax=Math.max(T(e.dataMax,a),a))}}else o=o.applyExtremes(),k(o.dataMin)&&(n=o.dataMin,e.dataMin=Math.min(T(e.dataMin,n),n)),k(o.dataMax)&&(a=o.dataMax,e.dataMax=Math.max(T(e.dataMax,a),a)),m(r)&&(e.threshold=r),(!s.softThreshold||e.positiveValuesOnly)&&(e.softThreshold=!1)}})}),S(this,"afterGetSeriesExtremes")},t.prototype.translate=function(t,e,i,o,s,r){var n=this.linkedParent||this,a=o&&n.old?n.old.min:n.min,h=n.minPixelPadding;s=(n.isOrdinal||n.brokenAxis&&n.brokenAxis.hasBreaks||n.logarithmic&&s)&&n.lin2val;var l=1,c=0;return(o=o&&n.old?n.old.transA:n.transA)||(o=n.transA),i&&(l*=-1,c=n.len),n.reversed&&(c-=(l*=-1)*(n.sector||n.len)),e?(r=(t*l+c-h)/o+a,s&&(r=n.lin2val(r))):(s&&(t=n.val2lin(t)),t=l*(t-a)*o,r=k(a)?(n.isRadial?t:g(t))+c+l*h+(k(r)?o*r:0):void 0),r},t.prototype.toPixels=function(t,e){return this.translate(t,!1,!this.horiz,null,!0)+(e?0:this.pos)},t.prototype.toValue=function(t,e){return this.translate(t-(e?0:this.pos),!0,!this.horiz,null,!0)},t.prototype.getPlotLinePath=function(t){function e(t,e,i){return("pass"!==v&&t<e||t>i)&&(v?t=f(t,e,i):n=!0),t}var i,o,s,r,n,a=this,h=a.chart,l=a.left,c=a.top,p=t.old,d=t.value,u=t.lineWidth,g=p&&h.oldChartHeight||h.chartHeight,m=p&&h.oldChartWidth||h.chartWidth,x=a.transB,y=t.translatedValue,v=t.force;return t={value:d,lineWidth:u,old:p,force:v,acrossPanes:t.acrossPanes,translatedValue:y},S(this,"getPlotLinePath",t,function(t){y=T(y,a.translate(d,null,null,p)),y=f(y,-1e5,1e5),i=s=Math.round(y+x),o=r=Math.round(g-y-x),k(y)?a.horiz?(o=c,r=g-a.bottom,i=s=e(i,l,l+a.width)):(i=l,s=m-a.right,o=r=e(o,c,c+a.height)):(n=!0,v=!1),t.path=n&&!v?null:h.renderer.crispLine([["M",i,o],["L",s,r]],u||1)}),t.path},t.prototype.getLinearTickPositions=function(t,e,i){var o=g(Math.floor(e/t)*t);i=g(Math.ceil(i/t)*t);var s,r=[];if(g(o+t)===o&&(s=20),this.single)return[e];for(e=o;e<=i&&(r.push(e),(e=g(e+t,s))!==n);)var n=e;return r},t.prototype.getMinorTickInterval=function(){var t=this.options;return!0===t.minorTicks?T(t.minorTickInterval,"auto"):!1===t.minorTicks?null:t.minorTickInterval},t.prototype.getMinorTickPositions=function(){var t=this.options,e=this.tickPositions,i=this.minorTickInterval,o=this.pointRangePadding||0,s=this.min-o,r=(o=this.max+o)-s,n=[];if(r&&r/i<this.len/3){var a=this.logarithmic;if(a)this.paddedTicks.forEach(function(t,e,o){e&&n.push.apply(n,a.getLogTickPositions(i,o[e-1],o[e],!0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())n=n.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(i),s,o,t.startOfWeek));else for(t=s+(e[0]-s)%i;t<=o&&t!==n[0];t+=i)n.push(t)}return 0!==n.length&&this.trimTicks(n),n},t.prototype.adjustForMinRange=function(){var t,e,i,o,s=this.options,r=this.logarithmic,n=this.min,a=this.max,h=0;if(this.isXAxis&&void 0===this.minRange&&!r&&(m(s.min)||m(s.max)||m(s.floor)||m(s.ceiling)?this.minRange=null:(this.series.forEach(function(s){if(i=s.xData,o=s.xIncrement?1:i.length-1,1<i.length)for(t=o;0<t;t--)e=i[t]-i[t-1],(!h||e<h)&&(h=e)}),this.minRange=Math.min(5*h,this.dataMax-this.dataMin))),a-n<this.minRange){var l=this.dataMax-this.dataMin>=this.minRange,c=this.minRange,p=(c-a+n)/2;p=[n-p,T(s.min,n-p)],l&&(p[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin),a=[(n=d(p))+c,T(s.max,n+c)],l&&(a[2]=r?r.log2lin(this.dataMax):this.dataMax),(a=u(a))-n<c&&(p[0]=a-c,p[1]=T(s.min,a-c),n=d(p))}this.min=n,this.max=a},t.prototype.getClosest=function(){var t;return this.categories?t=1:this.series.forEach(function(e){var i=e.closestPointRange,o=e.visible||!e.chart.options.chart.ignoreHiddenSeries;!e.noSharedTooltip&&m(i)&&o&&(t=m(t)?Math.min(t,i):i)}),t},t.prototype.nameToX=function(t){var e=M(this.options.categories),i=e?this.categories:this.names,o=t.options.x;if(t.series.requireSorting=!1,m(o)||(o=this.options.uniqueNames&&i?e?i.indexOf(t.name):T(i.keys[t.name],-1):t.series.autoIncrement()),-1===o){if(!e&&i)var s=i.length}else s=o;return void 0!==s&&(this.names[s]=t.name,this.names.keys[t.name]=s),s},t.prototype.updateNames=function(){var t=this,e=this.names;0<e.length&&(Object.keys(e.keys).forEach(function(t){delete e.keys[t]}),e.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(e){e.xIncrement=null,e.points&&!e.isDirtyData||(t.max=Math.max(t.max,e.xData.length-1),e.processData(),e.generatePoints()),e.data.forEach(function(i,o){if(i&&i.options&&void 0!==i.name){var s=t.nameToX(i);void 0!==s&&s!==i.x&&(i.x=s,e.xData[o]=s)}})}))},t.prototype.setAxisTranslation=function(){var t=this,e=t.max-t.min,i=t.linkedParent,o=!!t.categories,s=t.isXAxis,r=t.axisPointRange||0,n=0,a=0,h=t.transA;if(s||o||r){var l=t.getClosest();i?(n=i.minPointOffset,a=i.pointRangePadding):t.series.forEach(function(e){var i=o?1:s?T(e.options.pointRange,l,0):t.axisPointRange||0,h=e.options.pointPlacement;r=Math.max(r,i),t.single&&!o||(e=e.is("xrange")?!s:s,n=Math.max(n,e&&w(h)?0:i/2),a=Math.max(a,e&&"on"===h?0:i))}),i=t.ordinal&&t.ordinal.slope&&l?t.ordinal.slope/l:1,t.minPointOffset=n*=i,t.pointRangePadding=a*=i,t.pointRange=Math.min(r,t.single&&o?1:e),s&&(t.closestPointRange=l)}t.translationSlope=t.transA=h=t.staticScale||t.len/(e+a||1),t.transB=t.horiz?t.left:t.bottom,t.minPixelPadding=h*n,S(this,"afterSetAxisTranslation")},t.prototype.minFromRange=function(){return this.max-this.range},t.prototype.setTickInterval=function(t){var e=this.chart,i=this.logarithmic,o=this.options,s=this.isXAxis,r=this.isLinked,n=o.tickPixelInterval,a=this.categories,h=this.softThreshold,l=o.maxPadding,c=o.minPadding,p=k(o.tickInterval)&&0<=o.tickInterval?o.tickInterval:void 0,d=k(this.threshold)?this.threshold:null;this.dateTime||a||r||this.getTickAmount();var u=T(this.userMin,o.min),f=T(this.userMax,o.max);if(r){this.linkedParent=e[this.coll][o.linkedTo];var x=this.linkedParent.getExtremes();this.min=T(x.min,x.dataMin),this.max=T(x.max,x.dataMax),o.type!==this.linkedParent.options.type&&v(11,1,e)}else{if(h&&m(d))if(this.dataMin>=d)x=d,c=0;else if(this.dataMax<=d){var y=d;l=0}this.min=T(u,x,this.dataMin),this.max=T(f,y,this.dataMax)}if(i&&(this.positiveValuesOnly&&!t&&0>=Math.min(this.min,T(this.dataMin,this.min))&&v(10,1,e),this.min=g(i.log2lin(this.min),16),this.max=g(i.log2lin(this.max),16)),this.range&&m(this.max)&&(this.userMin=this.min=u=Math.max(this.dataMin,this.minFromRange()),this.userMax=f=this.max,this.range=null),S(this,"foundExtremes"),this.beforePadding&&this.beforePadding(),this.adjustForMinRange(),!(a||this.axisPointRange||this.stacking&&this.stacking.usePercentage||r)&&m(this.min)&&m(this.max)&&(e=this.max-this.min)&&(!m(u)&&c&&(this.min-=e*c),!m(f)&&l&&(this.max+=e*l)),k(this.userMin)||(k(o.softMin)&&o.softMin<this.min&&(this.min=u=o.softMin),k(o.floor)&&(this.min=Math.max(this.min,o.floor))),k(this.userMax)||(k(o.softMax)&&o.softMax>this.max&&(this.max=f=o.softMax),k(o.ceiling)&&(this.max=Math.min(this.max,o.ceiling))),h&&m(this.dataMin)&&(d=d||0,!m(u)&&this.min<d&&this.dataMin>=d?this.min=this.options.minRange?Math.min(d,this.max-this.minRange):d:!m(f)&&this.max>d&&this.dataMax<=d&&(this.max=this.options.minRange?Math.max(d,this.min+this.minRange):d)),k(this.min)&&k(this.max)&&!this.chart.polar&&this.min>this.max&&(m(this.options.min)?this.max=this.min:m(this.options.max)&&(this.min=this.max)),this.tickInterval=this.min===this.max||void 0===this.min||void 0===this.max?1:r&&this.linkedParent&&!p&&n===this.linkedParent.options.tickPixelInterval?p=this.linkedParent.tickInterval:T(p,this.tickAmount?(this.max-this.min)/Math.max(this.tickAmount-1,1):void 0,a?1:(this.max-this.min)*n/Math.max(this.len,n)),s&&!t){var b=this.min!==(this.old&&this.old.min)||this.max!==(this.old&&this.old.max);this.series.forEach(function(t){t.forceCrop=t.forceCropping&&t.forceCropping(),t.processData(b)}),S(this,"postProcessData",{hasExtemesChanged:b})}this.setAxisTranslation(),S(this,"initialAxisTranslation"),this.pointRange&&!p&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval)),t=T(o.minTickInterval,this.dateTime&&!this.series.some(function(t){return t.noSharedTooltip})?this.closestPointRange:0),!p&&this.tickInterval<t&&(this.tickInterval=t),this.dateTime||this.logarithmic||p||(this.tickInterval=z(this,this.tickInterval)),this.tickAmount||(this.tickInterval=this.unsquish()),this.setTickPositions()},t.prototype.setTickPositions=function(){var t=this.options,e=t.tickPositions,i=this.getMinorTickInterval(),o=this.hasVerticalPanning(),s="colorAxis"===this.coll,r=(s||!o)&&t.startOnTick;if(o=(s||!o)&&t.endOnTick,s=t.tickPositioner,this.tickmarkOffset=this.categories&&"between"===t.tickmarkPlacement&&1===this.tickInterval?.5:0,this.minorTickInterval="auto"===i&&this.tickInterval?this.tickInterval/5:i,this.single=this.min===this.max&&m(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==t.allowDecimals),this.tickPositions=i=e&&e.slice(),!i){if(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200)))if(this.dateTime)i=this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,t.units),this.min,this.max,t.startOfWeek,this.ordinal&&this.ordinal.positions,this.closestPointRange,!0);else if(this.logarithmic)i=this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else for(var n=t=this.tickInterval;n<=2*t&&(i=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&&i.length>this.tickAmount);)this.tickInterval=z(this,n*=1.1);else i=[this.min,this.max],v(19,!1,this.chart);i.length>this.len&&((i=[i[0],i.pop()])[0]===i[1]&&(i.length=1)),this.tickPositions=i,s&&(s=s.apply(this,[this.min,this.max]))&&(this.tickPositions=i=s)}this.paddedTicks=i.slice(0),this.trimTicks(i,r,o),this.isLinked||(this.single&&2>i.length&&!this.categories&&!this.series.some(function(t){return t.is("heatmap")&&"between"===t.options.pointPlacement})&&(this.min-=.5,this.max+=.5),e||s||this.adjustTickAmount()),S(this,"afterSetTickPositions")},t.prototype.trimTicks=function(t,e,i){var o=t[0],s=t[t.length-1],r=!this.isOrdinal&&this.minPointOffset||0;if(S(this,"trimTicks"),!this.isLinked){if(e&&-1/0!==o)this.min=o;else for(;this.min-r>t[0];)t.shift();if(i)this.max=s;else for(;this.max+r<t[t.length-1];)t.pop();0===t.length&&m(o)&&!this.options.tickPositions&&t.push((s+o)/2)}},t.prototype.alignToOthers=function(){var t,e=this,i=[this],o=e.options,s="yAxis"===this.coll&&this.chart.options.chart.alignThresholds,r=[];if(e.thresholdAlignment=void 0,(!1!==this.chart.options.chart.alignTicks&&o.alignTicks||s)&&!1!==o.startOnTick&&!1!==o.endOnTick&&!e.logarithmic){var n=function(t){var e=t.options;return[t.horiz?e.left:e.top,e.width,e.height,e.pane].join()},a=n(this);this.chart[this.coll].forEach(function(o){var s=o.series;s.length&&s.some(function(t){return t.visible})&&o!==e&&n(o)===a&&(t=!0,i.push(o))})}if(t&&s){i.forEach(function(t){t=t.getThresholdAlignment(e),k(t)&&r.push(t)});var h=1<r.length?r.reduce(function(t,e){return t+e},0)/r.length:void 0;i.forEach(function(t){t.thresholdAlignment=h})}return t},t.prototype.getThresholdAlignment=function(t){if((!k(this.dataMin)||this!==t&&this.series.some(function(t){return t.isDirty||t.isDirtyData}))&&this.getSeriesExtremes(),k(this.threshold))return t=f((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1),this.options.reversed&&(t=1-t),t},t.prototype.getTickAmount=function(){var t=this.options,e=t.tickPixelInterval,i=t.tickAmount;!m(t.tickInterval)&&!i&&this.len<e&&!this.isRadial&&!this.logarithmic&&t.startOnTick&&t.endOnTick&&(i=2),!i&&this.alignToOthers()&&(i=Math.ceil(this.len/e)+1),4>i&&(this.finalTickAmt=i,i=5),this.tickAmount=i},t.prototype.adjustTickAmount=function(){var t=this,e=t.finalTickAmt,i=t.max,o=t.min,s=t.options,r=t.tickPositions,n=t.tickAmount,a=t.thresholdAlignment,h=r&&r.length,l=T(t.threshold,t.softThreshold?0:null),c=t.tickInterval;if(k(a)){var p=.5>a?Math.ceil(a*(n-1)):Math.floor(a*(n-1));s.reversed&&(p=n-1-p)}if(t.hasData()&&k(o)&&k(i)){if(a=function(){t.transA*=(h-1)/(n-1),t.min=s.startOnTick?r[0]:Math.min(o,r[0]),t.max=s.endOnTick?r[r.length-1]:Math.max(i,r[r.length-1])},k(p)&&k(t.threshold)){for(;r[p]!==l||r.length!==n||r[0]>o||r[r.length-1]<i;){for(r.length=0,r.push(t.threshold);r.length<n;)void 0===r[p]||r[p]>t.threshold?r.unshift(g(r[0]-c)):r.push(g(r[r.length-1]+c));if(c>8*t.tickInterval)break;c*=2}a()}else if(h<n){for(;r.length<n;)r.length%2||o===l?r.push(g(r[r.length-1]+c)):r.unshift(g(r[0]-c));a()}if(m(e)){for(c=l=r.length;c--;)(3===e&&1==c%2||2>=e&&0<c&&c<l-1)&&r.splice(c,1);t.finalTickAmt=void 0}}},t.prototype.setScale=function(){var t=!1,e=!1;this.series.forEach(function(i){t=t||i.isDirtyData||i.isDirty,e=e||i.xAxis&&i.xAxis.isDirty||!1}),this.setAxisSize();var i=this.len!==(this.old&&this.old.len);i||t||e||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||this.alignToOthers()?(this.stacking&&this.stacking.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.isDirty||(this.isDirty=i||this.min!==(this.old&&this.old.min)||this.max!==(this.old&&this.old.max))):this.stacking&&this.stacking.cleanStacks(),t&&this.panningState&&(this.panningState.isDirty=!0),S(this,"afterSetScale")},t.prototype.setExtremes=function(t,e,i,o,s){var r=this,n=r.chart;i=T(i,!0),r.series.forEach(function(t){delete t.kdTree}),s=b(s,{min:t,max:e}),S(r,"setExtremes",s,function(){r.userMin=t,r.userMax=e,r.eventArgs=s,i&&n.redraw(o)})},t.prototype.zoom=function(t,e){var i=this,o=this.dataMin,s=this.dataMax,r=this.options,n=Math.min(o,T(r.min,o)),a=Math.max(s,T(r.max,s));return S(this,"zoom",t={newMin:t,newMax:e},function(t){var e=t.newMin,r=t.newMax;e===i.min&&r===i.max||(i.allowZoomOutside||(m(o)&&(e<n&&(e=n),e>a&&(e=a)),m(s)&&(r<n&&(r=n),r>a&&(r=a))),i.displayBtn=void 0!==e||void 0!==r,i.setExtremes(e,r,!1,void 0,{trigger:"zoom"})),t.zoomed=!0}),t.zoomed},t.prototype.setAxisSize=function(){var t=this.chart,e=this.options,i=e.offsets||[0,0,0,0],o=this.horiz,s=this.width=Math.round(O(T(e.width,t.plotWidth-i[3]+i[1]),t.plotWidth)),r=this.height=Math.round(O(T(e.height,t.plotHeight-i[0]+i[2]),t.plotHeight)),n=this.top=Math.round(O(T(e.top,t.plotTop+i[0]),t.plotHeight,t.plotTop));e=this.left=Math.round(O(T(e.left,t.plotLeft+i[3]),t.plotWidth,t.plotLeft)),this.bottom=t.chartHeight-r-n,this.right=t.chartWidth-s-e,this.len=Math.max(o?s:r,0),this.pos=o?e:n},t.prototype.getExtremes=function(){var t=this.logarithmic;return{min:t?g(t.lin2log(this.min)):this.min,max:t?g(t.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},t.prototype.getThreshold=function(t){var e=this.logarithmic,i=e?e.lin2log(this.min):this.min;return e=e?e.lin2log(this.max):this.max,null===t||-1/0===t?t=i:1/0===t?t=e:i>t?t=i:e<t&&(t=e),this.translate(t,0,1,0,1)},t.prototype.autoLabelAlign=function(t){var e=(T(t,0)-90*this.side+720)%360;return S(this,"autoLabelAlign",t={align:"center"},function(t){15<e&&165>e?t.align="right":195<e&&345>e&&(t.align="left")}),t.align},t.prototype.tickSize=function(t){var e=this.options,i=T(e["tick"===t?"tickWidth":"minorTickWidth"],"tick"===t&&this.isXAxis&&!this.categories?1:0),o=e["tick"===t?"tickLength":"minorTickLength"];if(i&&o){"inside"===e[t+"Position"]&&(o=-o);var s=[o,i]}return S(this,"afterTickSize",t={tickSize:s}),t.tickSize},t.prototype.labelMetrics=function(){var t=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style.fontSize,this.ticks[t]&&this.ticks[t].label)},t.prototype.unsquish=function(){var t,e,i=this.options.labels,o=this.horiz,s=this.tickInterval,r=this.len/(((this.categories?1:0)+this.max-this.min)/s),n=i.rotation,a=this.labelMetrics(),h=Math.max(this.max-this.min,0),l=function(t){var e=t/(r||1);return(e=1<e?Math.ceil(e):1)*s>h&&1/0!==t&&1/0!==r&&h&&(e=Math.ceil(h/s)),g(e*s)},c=s,d=Number.MAX_VALUE;if(o){if(!i.staggerLines&&!i.step)if(k(n))var u=[n];else r<i.autoRotationLimit&&(u=i.autoRotation);u&&u.forEach(function(i){if(i===n||i&&-90<=i&&90>=i){var o=(e=l(Math.abs(a.h/Math.sin(p*i))))+Math.abs(i/360);o<d&&(d=o,t=i,c=e)}})}else i.step||(c=l(a.h));return this.autoRotation=u,this.labelRotation=T(t,k(n)?n:0),c},t.prototype.getSlotWidth=function(t){var e=this.chart,i=this.horiz,o=this.options.labels,s=Math.max(this.tickPositions.length-(this.categories?0:1),1),r=e.margin[3];if(t&&k(t.slotWidth))return t.slotWidth;if(i&&2>o.step)return o.rotation?0:(this.staggerLines||1)*this.len/s;if(!i){if(void 0!==(t=o.style.width))return parseInt(String(t),10);if(r)return r-e.spacing[3]}return.33*e.chartWidth},t.prototype.renderUnsquish=function(){var t=this.chart,e=t.renderer,i=this.tickPositions,o=this.ticks,s=this.options.labels,r=s.style,n=this.horiz,a=this.getSlotWidth(),h=Math.max(1,Math.round(a-2*s.padding)),l={},c=this.labelMetrics(),p=r.textOverflow,d=0;if(w(s.rotation)||(l.rotation=s.rotation||0),i.forEach(function(t){(t=o[t]).movedLabel&&t.replaceMovedLabel(),t&&t.label&&t.label.textPxLength>d&&(d=t.label.textPxLength)}),this.maxLabelLength=d,this.autoRotation)d>h&&d>c.h?l.rotation=this.labelRotation:this.labelRotation=0;else if(a){var u=h;if(!p){var f="clip";for(h=i.length;!n&&h--;){var g=i[h];(g=o[g].label)&&(g.styles&&"ellipsis"===g.styles.textOverflow?g.css({textOverflow:"clip"}):g.textPxLength>a&&g.css({width:a+"px"}),g.getBBox().height>this.len/i.length-(c.h-c.f)&&(g.specificTextOverflow="ellipsis"))}}}l.rotation&&(u=d>.5*t.chartHeight?.33*t.chartHeight:d,p||(f="ellipsis")),(this.labelAlign=s.align||this.autoLabelAlign(this.labelRotation))&&(l.align=this.labelAlign),i.forEach(function(t){var e=(t=o[t])&&t.label,i=r.width,s={};e&&(e.attr(l),t.shortenLabel?t.shortenLabel():u&&!i&&"nowrap"!==r.whiteSpace&&(u<e.textPxLength||"SPAN"===e.element.tagName)?(s.width=u+"px",p||(s.textOverflow=e.specificTextOverflow||f),e.css(s)):e.styles&&e.styles.width&&!s.width&&!i&&e.css({width:null}),delete e.specificTextOverflow,t.rotation=l.rotation)},this),this.tickRotCorr=e.rotCorr(c.b,this.labelRotation||0,0!==this.side)},t.prototype.hasData=function(){return this.series.some(function(t){return t.hasData()})||this.options.showEmpty&&m(this.min)&&m(this.max)},t.prototype.addTitle=function(t){var e,i=this.chart.renderer,o=this.horiz,s=this.opposite,r=this.options.title,n=this.chart.styledMode;this.axisTitle||((e=r.textAlign)||(e=(o?{low:"left",middle:"center",high:"right"}:{low:s?"right":"left",middle:"center",high:s?"left":"right"})[r.align]),this.axisTitle=i.text(r.text||"",0,0,r.useHTML).attr({zIndex:7,rotation:r.rotation,align:e}).addClass("highcharts-axis-title"),n||this.axisTitle.css(C(r.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0),n||r.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"}),this.axisTitle[t?"show":"hide"](t)},t.prototype.generateTick=function(t){var e=this.ticks;e[t]?e[t].addLabel():e[t]=new n(this,t)},t.prototype.getOffset=function(){var t=this,e=this,i=e.chart,o=e.horiz,s=e.options,r=e.side,n=e.ticks,a=e.tickPositions,h=e.coll,l=e.axisParent,c=i.renderer,p=i.inverted&&!e.isZAxis?[1,0,3,2][r]:r,d=e.hasData(),u=s.title,f=s.labels,g=i.axisOffset;i=i.clipOffset;var x,y=[-1,1,1,-1][r],v=s.className,b=0,M=0,k=0;if(e.showAxis=x=d||s.showEmpty,e.staggerLines=e.horiz&&f.staggerLines||void 0,!e.axisGroup){var w=function(e,i,o){return c.g(e).attr({zIndex:o}).addClass("highcharts-"+h.toLowerCase()+i+" "+(t.isRadial?"highcharts-radial-axis"+i+" ":"")+(v||"")).add(l)};e.gridGroup=w("grid","-grid",s.gridZIndex),e.axisGroup=w("axis","",s.zIndex),e.labelGroup=w("axis-labels","-labels",f.zIndex)}if(d||e.isLinked?(a.forEach(function(t){e.generateTick(t)}),e.renderUnsquish(),e.reserveSpaceDefault=0===r||2===r||{1:"left",3:"right"}[r]===e.labelAlign,T(f.reserveSpace,"center"===e.labelAlign||null,e.reserveSpaceDefault)&&a.forEach(function(t){k=Math.max(n[t].getLabelSize(),k)}),e.staggerLines&&(k*=e.staggerLines),e.labelOffset=k*(e.opposite?-1:1)):P(n,function(t,e){t.destroy(),delete n[e]}),u&&u.text&&!1!==u.enabled&&(e.addTitle(x),x&&!1!==u.reserveSpace)){e.titleOffset=b=e.axisTitle.getBBox()[o?"height":"width"];var C=u.offset;M=m(C)?0:T(u.margin,o?5:10)}e.renderLine(),e.offset=y*T(s.offset,g[r]?g[r]+(s.margin||0):0),e.tickRotCorr=e.tickRotCorr||{x:0,y:0},u=0===r?-e.labelMetrics().h:2===r?e.tickRotCorr.y:0,d=Math.abs(k)+M,k&&(d=d-u+y*(o?T(f.y,e.tickRotCorr.y+8*y):f.x)),e.axisTitleMargin=T(C,d),e.getMaxLabelDimensions&&(e.maxLabelDimensions=e.getMaxLabelDimensions(n,a)),"colorAxis"!==h&&(o=this.tickSize("tick"),g[r]=Math.max(g[r],(e.axisTitleMargin||0)+b+y*e.offset,d,a&&a.length&&o?o[0]+y*e.offset:0),s=!e.axisLine||s.offset?0:2*Math.floor(e.axisLine.strokeWidth()/2),i[p]=Math.max(i[p],s)),S(this,"afterGetOffset")},t.prototype.getLinePath=function(t){var e=this.chart,i=this.opposite,o=this.offset,s=this.horiz,r=this.left+(i?this.width:0)+o;return o=e.chartHeight-this.bottom-(i?this.height:0)+o,i&&(t*=-1),e.renderer.crispLine([["M",s?this.left:r,s?o:this.top],["L",s?e.chartWidth-this.right:r,s?o:e.chartHeight-this.bottom]],t)},t.prototype.renderLine=function(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))},t.prototype.getTitlePosition=function(){var t=this.horiz,e=this.left,i=this.top,o=this.len,s=this.options.title,r=t?e:i,n=this.opposite,a=this.offset,h=s.x,l=s.y,c=this.axisTitle,p=this.chart.renderer.fontMetrics(s.style.fontSize,c);return c=c?Math.max(c.getBBox(!1,0).height-p.h-1,0):0,o={low:r+(t?0:o),middle:r+o/2,high:r+(t?o:0)}[s.align],e=(t?i+this.height:e)+(t?1:-1)*(n?-1:1)*(this.axisTitleMargin||0)+[-c,c,p.f,-c][this.side],t={x:t?o+h:e+(n?this.width:0)+a+h,y:t?e+l-(n?this.height:0)+a:o+l},S(this,"afterGetTitlePosition",{titlePosition:t}),t},t.prototype.renderMinorTick=function(t,e){var i=this.minorTicks;i[t]||(i[t]=new n(this,t,"minor")),e&&i[t].isNew&&i[t].render(null,!0),i[t].render(null,!1,1)},t.prototype.renderTick=function(t,e,i){var o=this.ticks;(!this.isLinked||t>=this.min&&t<=this.max||this.grid&&this.grid.isColumn)&&(o[t]||(o[t]=new n(this,t)),i&&o[t].isNew&&o[t].render(e,!0,-1),o[t].render(e))},t.prototype.render=function(){var t,e,i=this,o=i.chart,s=i.logarithmic,a=i.options,l=i.isLinked,c=i.tickPositions,p=i.axisTitle,d=i.ticks,u=i.minorTicks,f=i.alternateBands,g=a.stackLabels,m=a.alternateGridColor,x=i.tickmarkOffset,y=i.axisLine,v=i.showAxis,b=h(o.renderer.globalAnimation);if(i.labelEdge.length=0,i.overlap=!1,[d,u,f].forEach(function(t){P(t,function(t){t.isActive=!1})}),i.hasData()||l){var M=i.chart.hasRendered&&i.old&&k(i.old.min);i.minorTickInterval&&!i.categories&&i.getMinorTickPositions().forEach(function(t){i.renderMinorTick(t,M)}),c.length&&(c.forEach(function(t,e){i.renderTick(t,e,M)}),x&&(0===i.min||i.single)&&(d[-1]||(d[-1]=new n(i,-1,null,!0)),d[-1].render(-1))),m&&c.forEach(function(n,a){e=void 0!==c[a+1]?c[a+1]+x:i.max-x,0==a%2&&n<i.max&&e<=i.max+(o.polar?-x:x)&&(f[n]||(f[n]=new r.PlotLineOrBand(i)),t=n+x,f[n].options={from:s?s.lin2log(t):t,to:s?s.lin2log(e):e,color:m,className:"highcharts-alternate-grid"},f[n].render(),f[n].isActive=!0)}),i._addedPlotLB||(i._addedPlotLB=!0,(a.plotLines||[]).concat(a.plotBands||[]).forEach(function(t){i.addPlotBandOrLine(t)}))}[d,u,f].forEach(function(t){var e=[],i=b.duration;P(t,function(t,i){t.isActive||(t.render(i,!1,0),t.isActive=!1,e.push(i))}),D(function(){for(var i=e.length;i--;)t[e[i]]&&!t[e[i]].isActive&&(t[e[i]].destroy(),delete t[e[i]])},t!==f&&o.hasRendered&&i?i:0)}),y&&(y[y.isPlaced?"animate":"attr"]({d:this.getLinePath(y.strokeWidth())}),y.isPlaced=!0,y[v?"show":"hide"](v)),p&&v&&(a=i.getTitlePosition(),p[p.isNew?"attr":"animate"](a),p.isNew=!1),g&&g.enabled&&i.stacking&&i.stacking.renderStackTotals(),i.old={len:i.len,max:i.max,min:i.min,transA:i.transA,userMax:i.userMax,userMin:i.userMin},i.isDirty=!1,S(this,"afterRender")},t.prototype.redraw=function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(t){t.render()})),this.series.forEach(function(t){t.isDirty=!0})},t.prototype.getKeepProps=function(){return this.keepProps||t.keepProps},t.prototype.destroy=function(t){var e=this,i=e.plotLinesAndBands,o=this.eventOptions;if(S(this,"destroy",{keepEvents:t}),t||E(e),[e.ticks,e.minorTicks,e.alternateBands].forEach(function(t){x(t)}),i)for(t=i.length;t--;)i[t].destroy();for(var s in"axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(t){e[t]&&(e[t]=e[t].destroy())}),e.plotLinesAndBandsGroups)e.plotLinesAndBandsGroups[s]=e.plotLinesAndBandsGroups[s].destroy();P(e,function(t,i){-1===e.getKeepProps().indexOf(i)&&delete e[i]}),this.eventOptions=o},t.prototype.drawCrosshair=function(t,e){var o,s=this.crosshair,r=T(s&&s.snap,!0),n=this.chart,a=this.cross;if(S(this,"drawCrosshair",{e:t,point:e}),t||(t=this.cross&&this.cross.e),s&&!1!==(m(e)||!r)){if(r?m(e)&&(o=T("colorAxis"!==this.coll?e.crosshairPos:null,this.isXAxis?e.plotX:this.len-e.plotY)):o=t&&(this.horiz?t.chartX-this.pos:this.len-t.chartY+this.pos),m(o)){var h={value:e&&(this.isXAxis?e.x:T(e.stackY,e.y)),translatedValue:o};n.polar&&b(h,{isCrosshair:!0,chartX:t&&t.chartX,chartY:t&&t.chartY,point:e}),h=this.getPlotLinePath(h)||null}if(!m(h))return void this.hideCrosshair();r=this.categories&&!this.isRadial,a||(this.cross=a=n.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(r?"category ":"thin ")+(s.className||"")).attr({zIndex:T(s.zIndex,2)}).add(),n.styledMode||(a.attr({stroke:s.color||(r?i.parse("#ccd6eb").setOpacity(.25).get():"#cccccc"),"stroke-width":T(s.width,1)}).css({"pointer-events":"none"}),s.dashStyle&&a.attr({dashstyle:s.dashStyle}))),a.show().attr({d:h}),r&&!s.width&&a.attr({"stroke-width":this.transA}),this.cross.e=t}else this.hideCrosshair();S(this,"afterDrawCrosshair",{e:t,point:e})},t.prototype.hideCrosshair=function(){this.cross&&this.cross.hide(),S(this,"afterHideCrosshair")},t.prototype.hasVerticalPanning=function(){var t=this.chart.options.chart.panning;return!!(t&&t.enabled&&/y/.test(t.type))},t.prototype.validatePositiveValue=function(t){return k(t)&&0<t},t.prototype.update=function(t,e){var i=this.chart;t=C(this.userOptions,t),this.destroy(!0),this.init(i,t),i.isDirtyBox=!0,T(e,!0)&&i.redraw()},t.prototype.remove=function(t){for(var e=this.chart,i=this.coll,o=this.series,s=o.length;s--;)o[s]&&o[s].remove(!1);y(e.axes,this),y(e[i],this),e[i].forEach(function(t,e){t.options.index=t.userOptions.index=e}),this.destroy(),e.isDirtyBox=!0,T(t,!0)&&e.redraw()},t.prototype.setTitle=function(t,e){this.update({title:t},e)},t.prototype.setCategories=function(t,e){this.update({categories:t},e)},t.defaultOptions=e.defaultXAxisOptions,t.keepProps="extKey hcEvents names series userMax userMin".split(" "),t}()}),e(i,"Core/Axis/DateTimeAxis.js",[i["Core/Utilities.js"]],function(t){var e,i=t.addEvent,o=t.getMagnitude,s=t.normalizeTickInterval,r=t.timeUnits;return function(t){function e(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function n(t){"datetime"!==t.userOptions.type?this.dateTime=void 0:this.dateTime||(this.dateTime=new h(this))}var a=[];t.compose=function(t){return-1===a.indexOf(t)&&(a.push(t),t.keepProps.push("dateTime"),t.prototype.getTimeTicks=e,i(t,"init",n)),t};var h=function(){function t(t){this.axis=t}return t.prototype.normalizeTimeTickInterval=function(t,e){var i=e||[["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]];e=i[i.length-1];var n,a=r[e[0]],h=e[1];for(n=0;n<i.length&&(e=i[n],a=r[e[0]],h=e[1],!(i[n+1]&&t<=(a*h[h.length-1]+r[i[n+1][0]])/2));n++);return a===r.year&&t<5*a&&(h=[1,2,5]),{unitRange:a,count:t=s(t/a,h,"year"===e[0]?Math.max(o(t/a),1):1),unitName:e[0]}},t.prototype.getXDateFormat=function(t,e){var i=this.axis;return i.closestPointRange?i.chart.time.getDateFormat(i.closestPointRange,t,i.options.startOfWeek,e)||e.year:e.day},t}();t.Additions=h}(e||(e={})),e}),e(i,"Core/Axis/LogarithmicAxis.js",[i["Core/Utilities.js"]],function(t){var e,i=t.addEvent,o=t.normalizeTickInterval,s=t.pick;return function(t){function e(t){var e=this.logarithmic;"logarithmic"!==t.userOptions.type?this.logarithmic=void 0:e||(this.logarithmic=new a(this))}function r(){var t=this.logarithmic;t&&(this.lin2val=function(e){return t.lin2log(e)},this.val2lin=function(e){return t.log2lin(e)})}var n=[];t.compose=function(t){return-1===n.indexOf(t)&&(n.push(t),t.keepProps.push("logarithmic"),i(t,"init",e),i(t,"afterInit",r)),t};var a=function(){function t(t){this.axis=t}return t.prototype.getLogTickPositions=function(t,e,i,r){var n=this.axis,a=n.len,h=n.options,l=[];if(r||(this.minorAutoInterval=void 0),.5<=t)t=Math.round(t),l=n.getLinearTickPositions(t,e,i);else if(.08<=t){var c,p=Math.floor(e),d=h=void 0;for(a=.3<t?[1,2,4]:.15<t?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];p<i+1&&!d;p++){var u=a.length;for(c=0;c<u&&!d;c++){var f=this.log2lin(this.lin2log(p)*a[c]);f>e&&(!r||h<=i)&&void 0!==h&&l.push(h),h>i&&(d=!0),h=f}}}else e=this.lin2log(e),i=this.lin2log(i),t=r?n.getMinorTickInterval():h.tickInterval,t=s("auto"===t?null:t,this.minorAutoInterval,h.tickPixelInterval/(r?5:1)*(i-e)/((r?a/n.tickPositions.length:a)||1)),t=o(t),l=n.getLinearTickPositions(t,e,i).map(this.log2lin),r||(this.minorAutoInterval=t/5);return r||(n.tickInterval=t),l},t.prototype.lin2log=function(t){return Math.pow(10,t)},t.prototype.log2lin=function(t){return Math.log(t)/Math.LN10},t}();t.Additions=a}(e||(e={})),e}),e(i,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[i["Core/Utilities.js"]],function(t){var e,i=t.erase,o=t.extend,s=t.isNumber;return function(t){var e,r=[];t.compose=function(t,i){return e||(e=t),-1===r.indexOf(i)&&(r.push(i),o(i.prototype,n.prototype)),i};var n=function(){function t(){}return t.prototype.getPlotBandPath=function(t,e,i){void 0===i&&(i=this.options);var o=this.getPlotLinePath({value:e,force:!0,acrossPanes:i.acrossPanes}),r=[],n=this.horiz;if(e=!s(this.min)||!s(this.max)||t<this.min&&e<this.min||t>this.max&&e>this.max,t=this.getPlotLinePath({value:t,force:!0,acrossPanes:i.acrossPanes}),i=1,t&&o){if(e){var a=t.toString()===o.toString();i=0}for(e=0;e<t.length;e+=2){var h=t[e],l=t[e+1],c=o[e],p=o[e+1];"M"!==h[0]&&"L"!==h[0]||"M"!==l[0]&&"L"!==l[0]||"M"!==c[0]&&"L"!==c[0]||"M"!==p[0]&&"L"!==p[0]||(n&&c[1]===h[1]?(c[1]+=i,p[1]+=i):n||c[2]!==h[2]||(c[2]+=i,p[2]+=i),r.push(["M",h[1],h[2]],["L",l[1],l[2]],["L",p[1],p[2]],["L",c[1],c[2]],["Z"])),r.isFlat=a}}return r},t.prototype.addPlotBand=function(t){return this.addPlotBandOrLine(t,"plotBands")},t.prototype.addPlotLine=function(t){return this.addPlotBandOrLine(t,"plotLines")},t.prototype.addPlotBandOrLine=function(t,i){var o=this,s=this.userOptions,r=new e(this,t);if(this.visible&&(r=r.render()),r){if(this._addedPlotLB||(this._addedPlotLB=!0,(s.plotLines||[]).concat(s.plotBands||[]).forEach(function(t){o.addPlotBandOrLine(t)})),i){var n=s[i]||[];n.push(t),s[i]=n}this.plotLinesAndBands.push(r)}return r},t.prototype.removePlotBandOrLine=function(t){var e=this.plotLinesAndBands,o=this.options,s=this.userOptions;if(e){for(var r=e.length;r--;)e[r].id===t&&e[r].destroy();[o.plotLines||[],s.plotLines||[],o.plotBands||[],s.plotBands||[]].forEach(function(e){for(r=e.length;r--;)(e[r]||{}).id===t&&i(e,e[r])})}},t.prototype.removePlotBand=function(t){this.removePlotBandOrLine(t)},t.prototype.removePlotLine=function(t){this.removePlotBandOrLine(t)},t}()}(e||(e={})),e}),e(i,"Core/Axis/PlotLineOrBand/PlotLineOrBand.js",[i["Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js"],i["Core/Utilities.js"]],function(t,e){var i=e.arrayMax,o=e.arrayMin,s=e.defined,r=e.destroyObjectProperties,n=e.erase,a=e.fireEvent,h=e.merge,l=e.objectEach,c=e.pick;return e=function(){function e(t,e){this.axis=t,e&&(this.options=e,this.id=e.id)}return e.compose=function(i){return t.compose(e,i)},e.prototype.render=function(){a(this,"render");var t=this,e=t.axis,i=e.horiz,o=e.logarithmic,r=t.options,n=r.color,p=c(r.zIndex,0),d=r.events,u={},f=e.chart.renderer,g=r.label,m=t.label,x=r.to,y=r.from,v=r.value,b=t.svgElem,S=[],M=s(y)&&s(x);S=s(v);var k=!b,w={class:"highcharts-plot-"+(M?"band ":"line ")+(r.className||"")},C=M?"bands":"lines";if(o&&(y=o.log2lin(y),x=o.log2lin(x),v=o.log2lin(v)),e.chart.styledMode||(S?(w.stroke=n||"#999999",w["stroke-width"]=c(r.width,1),r.dashStyle&&(w.dashstyle=r.dashStyle)):M&&(w.fill=n||"#e6ebf5",r.borderWidth&&(w.stroke=r.borderColor,w["stroke-width"]=r.borderWidth))),u.zIndex=p,C+="-"+p,(o=e.plotLinesAndBandsGroups[C])||(e.plotLinesAndBandsGroups[C]=o=f.g("plot-"+C).attr(u).add()),k&&(t.svgElem=b=f.path().attr(w).add(o)),S)S=e.getPlotLinePath({value:v,lineWidth:b.strokeWidth(),acrossPanes:r.acrossPanes});else{if(!M)return;S=e.getPlotBandPath(y,x,r)}return!t.eventsAdded&&d&&(l(d,function(e,i){b.on(i,function(e){d[i].apply(t,[e])})}),t.eventsAdded=!0),(k||!b.d)&&S&&S.length?b.attr({d:S}):b&&(S?(b.show(),b.animate({d:S})):b.d&&(b.hide(),m&&(t.label=m=m.destroy()))),g&&(s(g.text)||s(g.formatter))&&S&&S.length&&0<e.width&&0<e.height&&!S.isFlat?(g=h({align:i&&M&&"center",x:i?!M&&4:10,verticalAlign:!i&&M&&"middle",y:i?M?16:10:M?6:-4,rotation:i&&!M&&90},g),this.renderLabel(g,S,M,p)):m&&m.hide(),t},e.prototype.renderLabel=function(t,e,s,r){var n=this.axis,a=n.chart.renderer,l=this.label;l||(this.label=l=a.text(this.getLabelText(t),0,0,t.useHTML).attr({align:t.textAlign||t.align,rotation:t.rotation,class:"highcharts-plot-"+(s?"band":"line")+"-label "+(t.className||""),zIndex:r}).add(),n.chart.styledMode||l.css(h({textOverflow:"ellipsis"},t.style))),r=e.xBounds||[e[0][1],e[1][1],s?e[2][1]:e[0][1]],e=e.yBounds||[e[0][2],e[1][2],s?e[2][2]:e[0][2]],s=o(r),a=o(e),l.align(t,!1,{x:s,y:a,width:i(r)-s,height:i(e)-a}),l.alignValue&&"left"!==l.alignValue||l.css({width:(90===l.rotation?n.height-(l.alignAttr.y-n.top):n.width-(l.alignAttr.x-n.left))+"px"}),l.show(!0)},e.prototype.getLabelText=function(t){return s(t.formatter)?t.formatter.call(this):t.text},e.prototype.destroy=function(){n(this.axis.plotLinesAndBands,this),delete this.axis,r(this)},e}()}),e(i,"Core/Tooltip.js",[i["Core/FormatUtilities.js"],i["Core/Globals.js"],i["Core/Renderer/RendererUtilities.js"],i["Core/Renderer/RendererRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o,s){var r=t.format,n=e.doc,a=i.distribute,h=s.addEvent,l=s.clamp,c=s.css,p=s.defined,d=s.discardElement,u=s.extend,f=s.fireEvent,g=s.isArray,m=s.isNumber,x=s.isString,y=s.merge,v=s.pick,b=s.splat,S=s.syncTimeout;return t=function(){function t(t,e){this.allowShared=!0,this.container=void 0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.now={},this.options={},this.outside=!1,this.chart=t,this.init(t,e)}return t.prototype.applyFilter=function(){var t=this.chart;t.renderer.definition({tagName:"filter",attributes:{id:"drop-shadow-"+t.index,opacity:.5},children:[{tagName:"feGaussianBlur",attributes:{in:"SourceAlpha",stdDeviation:1}},{tagName:"feOffset",attributes:{dx:1,dy:1}},{tagName:"feComponentTransfer",children:[{tagName:"feFuncA",attributes:{type:"linear",slope:.3}}]},{tagName:"feMerge",children:[{tagName:"feMergeNode"},{tagName:"feMergeNode",attributes:{in:"SourceGraphic"}}]}]})},t.prototype.bodyFormatter=function(t){return t.map(function(t){var e=t.series.tooltipOptions;return(e[(t.point.formatPrefix||"point")+"Formatter"]||t.point.tooltipFormatter).call(t.point,e[(t.point.formatPrefix||"point")+"Format"]||"")})},t.prototype.cleanSplit=function(t){this.chart.series.forEach(function(e){var i=e&&e.tt;i&&(!i.isActive||t?e.tt=i.destroy():i.isActive=!1)})},t.prototype.defaultFormatter=function(t){var e=this.points||b(this),i=[t.tooltipFooterHeaderFormatter(e[0])];return(i=i.concat(t.bodyFormatter(e))).push(t.tooltipFooterHeaderFormatter(e[0],!0)),i},t.prototype.destroy=function(){this.label&&(this.label=this.label.destroy()),this.split&&this.tt&&(this.cleanSplit(!0),this.tt=this.tt.destroy()),this.renderer&&(this.renderer=this.renderer.destroy(),d(this.container)),s.clearTimeout(this.hideTimer),s.clearTimeout(this.tooltipTimeout)},t.prototype.getAnchor=function(t,e){var i,o,s=this.chart,r=s.pointer,n=s.inverted,a=s.plotTop,h=s.plotLeft,l=0,c=0;return t=b(t),this.followPointer&&e?(void 0===e.chartX&&(e=r.normalize(e)),r=[e.chartX-h,e.chartY-a]):t[0].tooltipPos?r=t[0].tooltipPos:(t.forEach(function(t){i=t.series.yAxis,o=t.series.xAxis,l+=t.plotX||0,c+=t.plotLow?(t.plotLow+(t.plotHigh||0))/2:t.plotY||0,o&&i&&(n?(l+=a+s.plotHeight-o.len-o.pos,c+=h+s.plotWidth-i.len-i.pos):(l+=o.pos-h,c+=i.pos-a))}),l/=t.length,c/=t.length,r=[n?s.plotWidth-c:l,n?s.plotHeight-l:c],this.shared&&1<t.length&&e&&(n?r[0]=e.chartX-h:r[1]=e.chartY-a)),r.map(Math.round)},t.prototype.getLabel=function(){var t,i=this,s=this.chart.styledMode,r=this.options,n=this.split&&this.allowShared,a="tooltip"+(p(r.className)?" "+r.className:""),l=r.style.pointerEvents||(!this.followPointer&&r.stickOnContact?"auto":"none"),d=function(){i.inContact=!0},u=function(t){var e=i.chart.hoverSeries;i.inContact=i.shouldStickOnContact()&&i.chart.pointer.inClass(t.relatedTarget,"highcharts-tooltip"),!i.inContact&&e&&e.onMouseOut&&e.onMouseOut()},f=this.chart.renderer;if(i.label){var g=!i.label.hasClass("highcharts-label");(n&&!g||!n&&g)&&i.destroy()}if(!this.label){if(this.outside){g=this.chart.options.chart.style;var m=o.getRendererType();this.container=t=e.doc.createElement("div"),t.className="highcharts-tooltip-container",c(t,{position:"absolute",top:"1px",pointerEvents:l,zIndex:Math.max(this.options.style.zIndex||0,(g&&g.zIndex||0)+3)}),h(t,"mouseenter",d),h(t,"mouseleave",u),e.doc.body.appendChild(t),this.renderer=f=new m(t,0,0,g,void 0,void 0,f.styledMode)}if(n?this.label=f.g(a):(this.label=f.label("",0,0,r.shape,void 0,void 0,r.useHTML,void 0,a).attr({padding:r.padding,r:r.borderRadius}),s||this.label.attr({fill:r.backgroundColor,"stroke-width":r.borderWidth}).css(r.style).css({pointerEvents:l}).shadow(r.shadow)),s&&r.shadow&&(this.applyFilter(),this.label.attr({filter:"url(#drop-shadow-"+this.chart.index+")"})),i.outside&&!i.split){var x=this.label,y=x.xSetter,v=x.ySetter;x.xSetter=function(e){y.call(x,i.distance),t.style.left=e+"px"},x.ySetter=function(e){v.call(x,i.distance),t.style.top=e+"px"}}this.label.on("mouseenter",d).on("mouseleave",u).attr({zIndex:8}).add()}return this.label},t.prototype.getPosition=function(t,e,i){var o,s=this.chart,r=this.distance,a={},h=s.inverted&&i.h||0,l=this.outside,c=l?n.documentElement.clientWidth-2*r:s.chartWidth,p=l?Math.max(n.body.scrollHeight,n.documentElement.scrollHeight,n.body.offsetHeight,n.documentElement.offsetHeight,n.documentElement.clientHeight):s.chartHeight,d=s.pointer.getChartPosition(),u=function(o){var n="x"===o;return[o,n?c:p,n?t:e].concat(l?[n?t*d.scaleX:e*d.scaleY,n?d.left-r+(i.plotX+s.plotLeft)*d.scaleX:d.top-r+(i.plotY+s.plotTop)*d.scaleY,0,n?c:p]:[n?t:e,n?i.plotX+s.plotLeft:i.plotY+s.plotTop,n?s.plotLeft:s.plotTop,n?s.plotLeft+s.plotWidth:s.plotTop+s.plotHeight])},f=u("y"),g=u("x");u=!!i.negative,!s.polar&&s.hoverSeries&&s.hoverSeries.yAxis&&s.hoverSeries.yAxis.reversed&&(u=!u);var m=!this.followPointer&&v(i.ttBelow,!s.inverted===u),x=function(t){var e=f;f=g,g=e,o=t},y=function(){!1!==function(t,e,i,o,s,n,c){var p=l?"y"===t?r*d.scaleY:r*d.scaleX:r,u=(i-o)/2,f=o<s-r,g=s+r+o<e,x=s-p-i+u;if(s=s+p-u,m&&g)a[t]=s;else if(!m&&f)a[t]=x;else if(f)a[t]=Math.min(c-o,0>x-h?x:x-h);else{if(!g)return!1;a[t]=Math.max(n,s+h+i>e?s:s+h)}}.apply(0,f)?!1!==function(t,e,i,o,s){var n;return s<r||s>e-r?n=!1:a[t]=s<i/2?1:s>e-o/2?e-o-2:s-i/2,n}.apply(0,g)||o||(x(!0),y()):o?a.x=a.y=0:(x(!0),y())};return(s.inverted||1<this.len)&&x(),y(),a},t.prototype.hide=function(t){var e=this;s.clearTimeout(this.hideTimer),t=v(t,this.options.hideDelay),this.isHidden||(this.hideTimer=S(function(){e.getLabel().fadeOut(t?void 0:t),e.isHidden=!0},t))},t.prototype.init=function(t,e){this.chart=t,this.options=e,this.crosshairs=[],this.now={x:0,y:0},this.isHidden=!0,this.split=e.split&&!t.inverted&&!t.polar,this.shared=e.shared||this.split,this.outside=v(e.outside,!(!t.scrollablePixelsX&&!t.scrollablePixelsY))},t.prototype.shouldStickOnContact=function(){return!(this.followPointer||!this.options.stickOnContact)},t.prototype.isStickyOnContact=function(){return!(!this.shouldStickOnContact()||!this.inContact)},t.prototype.move=function(t,e,i,o){var r=this,n=r.now,a=!1!==r.options.animation&&!r.isHidden&&(1<Math.abs(t-n.x)||1<Math.abs(e-n.y)),h=r.followPointer||1<r.len;u(n,{x:a?(2*n.x+t)/3:t,y:a?(n.y+e)/2:e,anchorX:h?void 0:a?(2*n.anchorX+i)/3:i,anchorY:h?void 0:a?(n.anchorY+o)/2:o}),r.getLabel().attr(n),r.drawTracker(),a&&(s.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){r&&r.move(t,e,i,o)},32))},t.prototype.refresh=function(t,e){var i=this.chart,o=this.options,r=b(t),n=r[0],a=[],h=o.formatter||this.defaultFormatter,l=this.shared,c=i.styledMode,p={};if(o.enabled&&n.series){s.clearTimeout(this.hideTimer),this.allowShared=!(!g(t)&&t.series&&t.series.noSharedTooltip),this.followPointer=!this.split&&n.series.tooltipOptions.followPointer;var d=(t=this.getAnchor(t,e))[0],u=t[1];if(l&&this.allowShared?(i.pointer.applyInactiveState(r),r.forEach(function(t){t.setState("hover"),a.push(t.getLabelConfig())}),(p={x:n.category,y:n.y}).points=a):p=n.getLabelConfig(),this.len=a.length,h=h.call(p,this),l=n.series,this.distance=v(l.tooltipOptions.distance,16),!1===h)this.hide();else{if(this.split&&this.allowShared)this.renderSplit(h,r);else{var m=d,x=u;if(e&&i.pointer.isDirectTouch&&(m=e.chartX-i.plotLeft,x=e.chartY-i.plotTop),!i.polar&&!1!==l.options.clip&&!r.some(function(t){return t.series.shouldShowTooltip(m,x)}))return void this.hide();e=this.getLabel(),o.style.width&&!c||e.css({width:this.chart.spacingBox.width+"px"}),e.attr({text:h&&h.join?h.join(""):h}),e.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+v(n.colorIndex,l.colorIndex)),c||e.attr({stroke:o.borderColor||n.color||l.color||"#666666"}),this.updatePosition({plotX:d,plotY:u,negative:n.negative,ttBelow:n.ttBelow,h:t[2]||0})}this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1}f(this,"refresh")}},t.prototype.renderSplit=function(t,e){function i(t,e,i,s,r){return void 0===r&&(r=!0),i?(e=O?0:z,t=l(t-s/2,A.left,A.right-s-(o.outside?E:0))):(e-=L,t=l(t=r?t-s-k:t+k,r?t:A.left,A.right)),{x:t,y:e}}var o=this,s=o.chart,r=o.chart,h=r.chartWidth,c=r.chartHeight,p=r.plotHeight,d=r.plotLeft,f=r.plotTop,g=r.pointer,m=r.scrollablePixelsY;m=void 0===m?0:m;var y=r.scrollablePixelsX,b=r.scrollingContainer,S=(b=void 0===b?{scrollLeft:0,scrollTop:0}:b).scrollLeft;b=b.scrollTop;var M=r.styledMode,k=o.distance,w=o.options,C=o.options.positioner,A=o.outside&&"number"!=typeof y?n.documentElement.getBoundingClientRect():{left:S,right:S+h,top:b,bottom:b+c},P=o.getLabel(),T=this.renderer||s.renderer,O=!(!s.xAxis[0]||!s.xAxis[0].opposite),E=(s=g.getChartPosition()).left;s=s.top;var L=f+b,D=0,z=p-m;x(t)&&(t=[!1,t]),t=t.slice(0,e.length+1).reduce(function(t,s,r){if(!1!==s&&""!==s){var n=(r=e[r-1]||{isHeader:!0,plotX:e[0].plotX,plotY:p,series:{}}).isHeader,a=n?o:r.series;s=s.toString();var h=a.tt,c=r.isHeader,u=r.series,g="highcharts-color-"+v(r.colorIndex,u.colorIndex,"none");if(h||(h={padding:w.padding,r:w.borderRadius},M||(h.fill=w.backgroundColor,h["stroke-width"]=w.borderWidth),h=T.label("",0,0,w[c?"headerShape":"shape"],void 0,void 0,w.useHTML).addClass((c?"highcharts-tooltip-header ":"")+"highcharts-tooltip-box "+g).attr(h).add(P)),h.isActive=!0,h.attr({text:s}),M||h.css(w.style).shadow(w.shadow).attr({stroke:w.borderColor||r.color||u.color||"#333333"}),s=(c=(a=a.tt=h).getBBox()).width+a.strokeWidth(),n&&(D=c.height,z+=D,O&&(L-=D)),u=void 0===(u=r.plotX)?0:u,g=void 0===(g=r.plotY)?0:g,h=r.series,r.isHeader){u=d+u;var m=f+p/2}else{var x=h.xAxis,y=h.yAxis;u=x.pos+l(u,-k,x.len+k),h.shouldShowTooltip(0,y.pos-f+g,{ignoreX:!0})&&(m=y.pos+g)}u=l(u,A.left-k,A.right+k),"number"==typeof m?(c=c.height+1,g=C?C.call(o,s,c,r):i(u,m,n,s),t.push({align:C?0:void 0,anchorX:u,anchorY:m,boxWidth:s,point:r,rank:v(g.rank,n?1:0),size:c,target:g.y,tt:a,x:g.x})):a.isActive=!1}return t},[]),!C&&t.some(function(t){var e=(o.outside?E:0)+t.anchorX;return e<A.left&&e+t.boxWidth<A.right||e<E-A.left+t.boxWidth&&A.right-e>e})&&(t=t.map(function(t){var e=i(t.anchorX,t.anchorY,t.point.isHeader,t.boxWidth,!1);return u(t,{target:e.y,x:e.x})})),o.cleanSplit(),a(t,z);var j=E,I=E;t.forEach(function(t){var e=t.x,i=t.boxWidth;(t=t.isHeader)||(o.outside&&E+e<j&&(j=E+e),!t&&o.outside&&j+i>I&&(I=E+e))}),t.forEach(function(t){var e=t.x,i=t.anchorX,s=t.pos,r=t.point.isHeader;if(s={visibility:void 0===s?"hidden":"inherit",x:e,y:s+L,anchorX:i,anchorY:t.anchorY},o.outside&&e<i){var n=E-j;0<n&&(r||(s.x=e+n,s.anchorX=i+n),r&&(s.x=(I-j)/2,s.anchorX=i+n))}t.tt.attr(s)}),t=o.container,m=o.renderer,o.outside&&t&&m&&(r=P.getBBox(),m.setSize(r.width+r.x,r.height+r.y,!1),t.style.left=j+"px",t.style.top=s+"px")},t.prototype.drawTracker=function(){if(this.followPointer||!this.options.stickOnContact)this.tracker&&this.tracker.destroy();else{var t=this.chart,e=this.label,i=this.shared?t.hoverPoints:t.hoverPoint;if(e&&i){var o={x:0,y:0,width:0,height:0};i=this.getAnchor(i);var s=e.getBBox();i[0]+=t.plotLeft-e.translateX,i[1]+=t.plotTop-e.translateY,o.x=Math.min(0,i[0]),o.y=Math.min(0,i[1]),o.width=0>i[0]?Math.max(Math.abs(i[0]),s.width-i[0]):Math.max(Math.abs(i[0]),s.width),o.height=0>i[1]?Math.max(Math.abs(i[1]),s.height-Math.abs(i[1])):Math.max(Math.abs(i[1]),s.height),this.tracker?this.tracker.attr(o):(this.tracker=e.renderer.rect(o).addClass("highcharts-tracker").add(e),t.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}}},t.prototype.styledModeFormat=function(t){return t.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex}"')},t.prototype.tooltipFooterHeaderFormatter=function(t,e){var i=t.series,o=i.tooltipOptions,s=i.xAxis,n=s&&s.dateTime;s={isFooter:e,labelConfig:t};var a=o.xDateFormat,h=o[e?"footerFormat":"headerFormat"];return f(this,"headerFormatter",s,function(e){n&&!a&&m(t.key)&&(a=n.getXDateFormat(t.key,o.dateTimeLabelFormats)),n&&a&&(t.point&&t.point.tooltipDateKeys||["key"]).forEach(function(t){h=h.replace("{point."+t+"}","{point."+t+":"+a+"}")}),i.chart.styledMode&&(h=this.styledModeFormat(h)),e.text=r(h,{point:t,series:i},this.chart)}),s.text},t.prototype.update=function(t){this.destroy(),y(!0,this.chart.options.tooltip.userOptions,t),this.init(this.chart,y(!0,this.options,t))},t.prototype.updatePosition=function(t){var e=this.chart,i=this.options,o=e.pointer,s=this.getLabel();o=o.getChartPosition();var r=(i.positioner||this.getPosition).call(this,s.width,s.height,t),n=t.plotX+e.plotLeft;t=t.plotY+e.plotTop,this.outside&&(i=i.borderWidth+2*this.distance,this.renderer.setSize(s.width+i,s.height+i,!1),1===o.scaleX&&1===o.scaleY||(c(this.container,{transform:"scale("+o.scaleX+", "+o.scaleY+")"}),n*=o.scaleX,t*=o.scaleY),n+=o.left-r.x,t+=o.top-r.y),this.move(Math.round(r.x),Math.round(r.y||0),n,t)},t}()}),e(i,"Core/Series/Point.js",[i["Core/Renderer/HTML/AST.js"],i["Core/Animation/AnimationUtilities.js"],i["Core/DefaultOptions.js"],i["Core/FormatUtilities.js"],i["Core/Utilities.js"]],function(t,e,i,o,s){var r=e.animObject,n=i.defaultOptions,a=o.format,h=s.addEvent,l=s.defined,c=s.erase,p=s.extend,d=s.fireEvent,u=s.getNestedProperty,f=s.isArray,g=s.isFunction,m=s.isNumber,x=s.isObject,y=s.merge,v=s.objectEach,b=s.pick,S=s.syncTimeout,M=s.removeEvent,k=s.uniqueKey;return e=function(){function e(){this.colorIndex=this.category=void 0,this.formatPrefix="point",this.id=void 0,this.isNull=!1,this.percentage=this.options=this.name=void 0,this.selected=!1,this.total=this.series=void 0,this.visible=!0,this.x=void 0}return e.prototype.animateBeforeDestroy=function(){var t=this,e={x:t.startXPos,opacity:0},i=t.getGraphicalProps();i.singular.forEach(function(i){t[i]=t[i].animate("dataLabel"===i?{x:t[i].startXPos,y:t[i].startYPos,opacity:0}:e)}),i.plural.forEach(function(e){t[e].forEach(function(e){e.element&&e.animate(p({x:t.startXPos},e.startYPos?{x:e.startXPos,y:e.startYPos}:{}))})})},e.prototype.applyOptions=function(t,i){var o=this.series,s=o.options.pointValKey||o.pointValKey;return t=e.prototype.optionsToObject.call(this,t),p(this,t),this.options=this.options?p(this.options,t):t,t.group&&delete this.group,t.dataLabels&&delete this.dataLabels,s&&(this.y=e.prototype.getNestedProperty.call(this,s)),this.formatPrefix=(this.isNull=b(this.isValid&&!this.isValid(),null===this.x||!m(this.y)))?"null":"point",this.selected&&(this.state="select"),"name"in this&&void 0===i&&o.xAxis&&o.xAxis.hasNames&&(this.x=o.xAxis.nameToX(this)),void 0===this.x&&o?this.x=void 0===i?o.autoIncrement():i:m(t.x)&&o.options.relativeXValue&&(this.x=o.autoIncrement(t.x)),this},e.prototype.destroy=function(){function t(){for(s in(e.graphic||e.dataLabel||e.dataLabels)&&(M(e),e.destroyElements()),e)e[s]=null}var e=this,i=e.series,o=i.chart;i=i.options.dataSorting;var s,n=o.hoverPoints,a=r(e.series.chart.renderer.globalAnimation);e.legendItem&&o.legend.destroyItem(e),n&&(e.setState(),c(n,e),n.length||(o.hoverPoints=null)),e===o.hoverPoint&&e.onMouseOut(),i&&i.enabled?(this.animateBeforeDestroy(),S(t,a.duration)):t(),o.pointCount--},e.prototype.destroyElements=function(t){var e=this;(t=e.getGraphicalProps(t)).singular.forEach(function(t){e[t]=e[t].destroy()}),t.plural.forEach(function(t){e[t].forEach(function(t){t.element&&t.destroy()}),delete e[t]})},e.prototype.firePointEvent=function(t,e,i){var o=this,s=this.series.options;(s.point.events[t]||o.options&&o.options.events&&o.options.events[t])&&o.importEvents(),"click"===t&&s.allowPointSelect&&(i=function(t){o.select&&o.select(null,t.ctrlKey||t.metaKey||t.shiftKey)}),d(o,t,e,i)},e.prototype.getClassName=function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(void 0!==this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")},e.prototype.getGraphicalProps=function(t){var e,i=this,o=[],s={singular:[],plural:[]};for((t=t||{graphic:1,dataLabel:1}).graphic&&o.push("graphic","upperGraphic","shadowGroup"),t.dataLabel&&o.push("dataLabel","dataLabelUpper","connector"),e=o.length;e--;){var r=o[e];i[r]&&s.singular.push(r)}return["dataLabel","connector"].forEach(function(e){var o=e+"s";t[e]&&i[o]&&s.plural.push(o)}),s},e.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}},e.prototype.getNestedProperty=function(t){if(t)return 0===t.indexOf("custom.")?u(t,this.options):this[t]},e.prototype.getZone=function(){var t=this.series,e=t.zones;t=t.zoneAxis||"y";var i,o=0;for(i=e[o];this[t]>=i.value;)i=e[++o];return this.nonZonedColor||(this.nonZonedColor=this.color),this.color=i&&i.color&&!this.options.color?i.color:this.nonZonedColor,i},e.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType},e.prototype.init=function(t,e,i){return this.series=t,this.applyOptions(e,i),this.id=l(this.id)?this.id:k(),this.resolveColor(),t.chart.pointCount++,d(this,"afterInit"),this},e.prototype.optionsToObject=function(t){var i=this.series,o=i.options.keys,s=o||i.pointArrayMap||["y"],r=s.length,n={},a=0,h=0;if(m(t)||null===t)n[s[0]]=t;else if(f(t))for(!o&&t.length>r&&("string"===(i=typeof t[0])?n.name=t[0]:"number"===i&&(n.x=t[0]),a++);h<r;)o&&void 0===t[a]||(0<s[h].indexOf(".")?e.prototype.setNestedProperty(n,t[a],s[h]):n[s[h]]=t[a]),a++,h++;else"object"==typeof t&&(n=t,t.dataLabels&&(i._hasPointLabels=!0),t.marker&&(i._hasPointMarkers=!0));return n},e.prototype.resolveColor=function(){var t=this.series,e=t.chart.styledMode,i=t.chart.options.chart.colorCount;if(delete this.nonZonedColor,t.options.colorByPoint){if(!e){var o=(i=t.options.colors||t.chart.options.colors)[t.colorCounter];i=i.length}e=t.colorCounter,t.colorCounter++,t.colorCounter===i&&(t.colorCounter=0)}else e||(o=t.color),e=t.colorIndex;this.colorIndex=b(this.options.colorIndex,e),this.color=b(this.options.color,o)},e.prototype.setNestedProperty=function(t,e,i){return i.split(".").reduce(function(t,i,o,s){return t[i]=s.length-1===o?e:x(t[i],!0)?t[i]:{},t[i]},t),t},e.prototype.tooltipFormatter=function(t){var e=this.series,i=e.tooltipOptions,o=b(i.valueDecimals,""),s=i.valuePrefix||"",r=i.valueSuffix||"";return e.chart.styledMode&&(t=e.chart.tooltip.styledModeFormat(t)),(e.pointArrayMap||["y"]).forEach(function(e){e="{point."+e,(s||r)&&(t=t.replace(RegExp(e+"}","g"),s+e+"}"+r)),t=t.replace(RegExp(e+"}","g"),e+":,."+o+"f}")}),a(t,{point:this,series:this.series},e.chart)},e.prototype.update=function(t,e,i,o){function s(){n.applyOptions(t);var o=h&&n.hasDummyGraphic;o=null===n.y?!o:o,h&&o&&(n.graphic=h.destroy(),delete n.hasDummyGraphic),x(t,!0)&&(h&&h.element&&t&&t.marker&&void 0!==t.marker.symbol&&(n.graphic=h.destroy()),t&&t.dataLabels&&n.dataLabel&&(n.dataLabel=n.dataLabel.destroy()),n.connector&&(n.connector=n.connector.destroy())),r=n.index,a.updateParallelArrays(n,r),c.data[r]=x(c.data[r],!0)||x(t,!0)?n.options:b(t,c.data[r]),a.isDirty=a.isDirtyData=!0,!a.fixedBox&&a.hasCartesianSeries&&(l.isDirtyBox=!0),"point"===c.legendType&&(l.isDirtyLegend=!0),e&&l.redraw(i)}var r,n=this,a=n.series,h=n.graphic,l=a.chart,c=a.options;e=b(e,!0),!1===o?s():n.firePointEvent("update",{options:t},s)},e.prototype.remove=function(t,e){this.series.removePoint(this.series.data.indexOf(this),t,e)},e.prototype.select=function(t,e){var i=this,o=i.series,s=o.chart;this.selectedStaging=t=b(t,!i.selected),i.firePointEvent(t?"select":"unselect",{accumulate:e},function(){i.selected=i.options.selected=t,o.options.data[o.data.indexOf(i)]=i.options,i.setState(t&&"select"),e||s.getSelectedPoints().forEach(function(t){var e=t.series;t.selected&&t!==i&&(t.selected=t.options.selected=!1,e.options.data[e.data.indexOf(t)]=t.options,t.setState(s.hoverPoints&&e.options.inactiveOtherPoints?"inactive":""),t.firePointEvent("unselect"))})}),delete this.selectedStaging},e.prototype.onMouseOver=function(t){var e=this.series.chart,i=e.pointer;t=t?i.normalize(t):i.getChartCoordinatesFromPoint(this,e.inverted),i.runPointActions(t,this)},e.prototype.onMouseOut=function(){var t=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(t.hoverPoints||[]).forEach(function(t){t.setState()}),t.hoverPoints=t.hoverPoint=null},e.prototype.importEvents=function(){if(!this.hasImportedEvents){var t=this,e=y(t.series.options.point,t.options).events;t.events=e,v(e,function(e,i){g(e)&&h(t,i,e)}),this.hasImportedEvents=!0}},e.prototype.setState=function(e,i){var o,s=this.series,r=this.state,a=s.options.states[e||"normal"]||{},h=n.plotOptions[s.type].marker&&s.options.marker,l=h&&!1===h.enabled,c=h&&h.states&&h.states[e||"normal"]||{},u=!1===c.enabled,f=this.marker||{},g=s.chart,x=h&&s.markerAttribs,y=s.halo,v=s.stateMarkerGraphic;if(!((e=e||"")===this.state&&!i||this.selected&&"select"!==e||!1===a.enabled||e&&(u||l&&!1===c.enabled)||e&&f.states&&f.states[e]&&!1===f.states[e].enabled)){if(this.state=e,x&&(o=s.markerAttribs(this,e)),this.graphic&&!this.hasDummyGraphic){if(r&&this.graphic.removeClass("highcharts-point-"+r),e&&this.graphic.addClass("highcharts-point-"+e),!g.styledMode){var S=s.pointAttribs(this,e),M=b(g.options.chart.animation,a.animation);s.options.inactiveOtherPoints&&m(S.opacity)&&((this.dataLabels||[]).forEach(function(t){t&&t.animate({opacity:S.opacity},M)}),this.connector&&this.connector.animate({opacity:S.opacity},M)),this.graphic.animate(S,M)}o&&this.graphic.animate(o,b(g.options.chart.animation,c.animation,h.animation)),v&&v.hide()}else e&&c&&(r=f.symbol||s.symbol,v&&v.currentSymbol!==r&&(v=v.destroy()),o&&(v?v[i?"animate":"attr"]({x:o.x,y:o.y}):r&&(s.stateMarkerGraphic=v=g.renderer.symbol(r,o.x,o.y,o.width,o.height).add(s.markerGroup),v.currentSymbol=r)),!g.styledMode&&v&&"inactive"!==this.state&&v.attr(s.pointAttribs(this,e))),v&&(v[e&&this.isInside?"show":"hide"](),v.element.point=this,v.addClass(this.getClassName(),!0));a=a.halo,o=(v=this.graphic||v)&&v.visibility||"inherit",a&&a.size&&v&&"hidden"!==o&&!this.isCluster?(y||(s.halo=y=g.renderer.path().add(v.parentGroup)),y.show()[i?"animate":"attr"]({d:this.haloPath(a.size)}),y.attr({class:"highcharts-halo highcharts-color-"+b(this.colorIndex,s.colorIndex)+(this.className?" "+this.className:""),visibility:o,zIndex:-1}),y.point=this,g.styledMode||y.attr(p({fill:this.color||s.color,"fill-opacity":a.opacity},t.filterUserAttributes(a.attributes||{})))):y&&y.point&&y.point.haloPath&&y.animate({d:y.point.haloPath(0)},null,y.hide),d(this,"afterSetState",{state:e})}},e.prototype.haloPath=function(t){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-t,this.plotY-t,2*t,2*t)},e}()}),e(i,"Core/Pointer.js",[i["Core/Color/Color.js"],i["Core/Globals.js"],i["Core/Tooltip.js"],i["Core/Utilities.js"]],function(t,e,i,o){var s=t.parse,r=e.charts,n=e.noop,a=o.addEvent,h=o.attr,l=o.css,c=o.defined,p=o.extend,d=o.find,u=o.fireEvent,f=o.isNumber,g=o.isObject,m=o.objectEach,x=o.offset,y=o.pick,v=o.splat;return t=function(){function t(t,e){this.lastValidTouch={},this.pinchDown=[],this.runChartClick=!1,this.eventsToUnbind=[],this.chart=t,this.hasDragged=!1,this.options=e,this.init(t,e)}return t.prototype.applyInactiveState=function(t){var e,i=[];(t||[]).forEach(function(t){e=t.series,i.push(e),e.linkedParent&&i.push(e.linkedParent),e.linkedSeries&&(i=i.concat(e.linkedSeries)),e.navigatorSeries&&i.push(e.navigatorSeries)}),this.chart.series.forEach(function(t){-1===i.indexOf(t)?t.setState("inactive",!0):t.options.inactiveOtherPoints&&t.setAllPointsToState("inactive")})},t.prototype.destroy=function(){var i=this;this.eventsToUnbind.forEach(function(t){return t()}),this.eventsToUnbind=[],e.chartCount||(t.unbindDocumentMouseUp&&(t.unbindDocumentMouseUp=t.unbindDocumentMouseUp()),t.unbindDocumentTouchEnd&&(t.unbindDocumentTouchEnd=t.unbindDocumentTouchEnd())),clearInterval(i.tooltipTimeout),m(i,function(t,e){i[e]=void 0})},t.prototype.drag=function(t){var e=this.chart,i=e.options.chart,o=this.zoomHor,r=this.zoomVert,n=e.plotLeft,a=e.plotTop,h=e.plotWidth,l=e.plotHeight,c=this.mouseDownX||0,p=this.mouseDownY||0,d=g(i.panning)?i.panning&&i.panning.enabled:i.panning,u=i.panKey&&t[i.panKey+"Key"],f=t.chartX,m=t.chartY,x=this.selectionMarker;if((!x||!x.touch)&&(f<n?f=n:f>n+h&&(f=n+h),m<a?m=a:m>a+l&&(m=a+l),this.hasDragged=Math.sqrt(Math.pow(c-f,2)+Math.pow(p-m,2)),10<this.hasDragged)){var y=e.isInsidePlot(c-n,p-a,{visiblePlotOnly:!0});!e.hasCartesianSeries&&!e.mapView||!this.zoomX&&!this.zoomY||!y||u||x||(this.selectionMarker=x=e.renderer.rect(n,a,o?1:h,r?1:l,0).attr({class:"highcharts-selection-marker",zIndex:7}).add(),e.styledMode||x.attr({fill:i.selectionMarkerFill||s("#335cad").setOpacity(.25).get()})),x&&o&&(o=f-c,x.attr({width:Math.abs(o),x:(0<o?0:o)+c})),x&&r&&(o=m-p,x.attr({height:Math.abs(o),y:(0<o?0:o)+p})),y&&!x&&d&&e.pan(t,i.panning)}},t.prototype.dragStart=function(t){var e=this.chart;e.mouseIsDown=t.type,e.cancelClick=!1,e.mouseDownX=this.mouseDownX=t.chartX,e.mouseDownY=this.mouseDownY=t.chartY},t.prototype.drop=function(t){var e=this,i=this.chart,o=this.hasPinched;if(this.selectionMarker){var s=this.selectionMarker,r=s.attr?s.attr("x"):s.x,n=s.attr?s.attr("y"):s.y,a=s.attr?s.attr("width"):s.width,h=s.attr?s.attr("height"):s.height,d={originalEvent:t,xAxis:[],yAxis:[],x:r,y:n,width:a,height:h},g=!!i.mapView;(this.hasDragged||o)&&(i.axes.forEach(function(i){if(i.zoomEnabled&&c(i.min)&&(o||e[{xAxis:"zoomX",yAxis:"zoomY"}[i.coll]])&&f(r)&&f(n)){var s=i.horiz,l="touchend"===t.type?i.minPixelPadding:0,p=i.toValue((s?r:n)+l);s=i.toValue((s?r+a:n+h)-l),d[i.coll].push({axis:i,min:Math.min(p,s),max:Math.max(p,s)}),g=!0}}),g&&u(i,"selection",d,function(t){i.zoom(p(t,o?{animation:!1}:null))})),f(i.index)&&(this.selectionMarker=this.selectionMarker.destroy()),o&&this.scaleGroups()}i&&f(i.index)&&(l(i.container,{cursor:i._cursor}),i.cancelClick=10<this.hasDragged,i.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},t.prototype.findNearestKDPoint=function(t,e,i){var o,s=this.chart,r=s.hoverPoint;return s=s.tooltip,r&&s&&s.isStickyOnContact()?r:(t.forEach(function(t){var s=!(t.noSharedTooltip&&e)&&0>t.options.findNearestPointBy.indexOf("y");if(t=t.searchPoint(i,s),(s=g(t,!0)&&t.series)&&!(s=!g(o,!0))){s=o.distX-t.distX;var r=o.dist-t.dist,n=(t.series.group&&t.series.group.zIndex)-(o.series.group&&o.series.group.zIndex);s=0<(0!==s&&e?s:0!==r?r:0!==n?n:o.series.index>t.series.index?-1:1)}s&&(o=t)}),o)},t.prototype.getChartCoordinatesFromPoint=function(t,e){var i=t.series,o=i.xAxis;i=i.yAxis;var s=t.shapeArgs;if(o&&i){var r=y(t.clientX,t.plotX),n=t.plotY||0;return t.isNode&&s&&f(s.x)&&f(s.y)&&(r=s.x,n=s.y),e?{chartX:i.len+i.pos-n,chartY:o.len+o.pos-r}:{chartX:r+o.pos,chartY:n+i.pos}}if(s&&s.x&&s.y)return{chartX:s.x,chartY:s.y}},t.prototype.getChartPosition=function(){if(this.chartPosition)return this.chartPosition;var t=this.chart.container,e=x(t);this.chartPosition={left:e.left,top:e.top,scaleX:1,scaleY:1};var i=t.offsetWidth;return t=t.offsetHeight,2<i&&2<t&&(this.chartPosition.scaleX=e.width/i,this.chartPosition.scaleY=e.height/t),this.chartPosition},t.prototype.getCoordinates=function(t){var e={xAxis:[],yAxis:[]};return this.chart.axes.forEach(function(i){e[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(t[i.horiz?"chartX":"chartY"])})}),e},t.prototype.getHoverData=function(t,e,i,o,s,r){var n=[];o=!(!o||!t);var a={chartX:r?r.chartX:void 0,chartY:r?r.chartY:void 0,shared:s};u(this,"beforeGetHoverData",a);var h=e&&!e.stickyTracking?[e]:i.filter(function(t){return a.filter?a.filter(t):t.visible&&!(!s&&t.directTouch)&&y(t.options.enableMouseTracking,!0)&&t.stickyTracking}),l=o||!r?t:this.findNearestKDPoint(h,s,r);return e=l&&l.series,l&&(s&&!e.noSharedTooltip?(h=i.filter(function(t){return a.filter?a.filter(t):t.visible&&!(!s&&t.directTouch)&&y(t.options.enableMouseTracking,!0)&&!t.noSharedTooltip})).forEach(function(t){var e=d(t.points,function(t){return t.x===l.x&&!t.isNull});g(e)&&(t.chart.isBoosting&&(e=t.getPoint(e)),n.push(e))}):n.push(l)),u(this,"afterGetHoverData",a={hoverPoint:l}),{hoverPoint:a.hoverPoint,hoverSeries:e,hoverPoints:n}},t.prototype.getPointFromEvent=function(t){t=t.target;for(var e;t&&!e;)e=t.point,t=t.parentNode;return e},t.prototype.onTrackerMouseOut=function(t){t=t.relatedTarget||t.toElement;var e=this.chart.hoverSeries;this.isDirectTouch=!1,!e||!t||e.stickyTracking||this.inClass(t,"highcharts-tooltip")||this.inClass(t,"highcharts-series-"+e.index)&&this.inClass(t,"highcharts-tracker")||e.onMouseOut()},t.prototype.inClass=function(t,e){for(var i;t;){if(i=h(t,"class")){if(-1!==i.indexOf(e))return!0;if(-1!==i.indexOf("highcharts-container"))return!1}t=t.parentElement}},t.prototype.init=function(t,e){this.options=e,this.chart=t,this.runChartClick=!(!e.chart.events||!e.chart.events.click),this.pinchDown=[],this.lastValidTouch={},i&&(t.tooltip=new i(t,e.tooltip),this.followTouchMove=y(e.tooltip.followTouchMove,!0)),this.setDOMEvents()},t.prototype.normalize=function(t,e){var i=t.touches,o=i?i.length?i.item(0):y(i.changedTouches,t.changedTouches)[0]:t;return e||(e=this.getChartPosition()),i=o.pageX-e.left,o=o.pageY-e.top,i/=e.scaleX,o/=e.scaleY,p(t,{chartX:Math.round(i),chartY:Math.round(o)})},t.prototype.onContainerClick=function(t){var e=this.chart,i=e.hoverPoint;t=this.normalize(t);var o=e.plotLeft,s=e.plotTop;e.cancelClick||(i&&this.inClass(t.target,"highcharts-tracker")?(u(i.series,"click",p(t,{point:i})),e.hoverPoint&&i.firePointEvent("click",t)):(p(t,this.getCoordinates(t)),e.isInsidePlot(t.chartX-o,t.chartY-s,{visiblePlotOnly:!0})&&u(e,"click",t)))},t.prototype.onContainerMouseDown=function(t){var i=1==(1&(t.buttons||t.button));t=this.normalize(t),e.isFirefox&&0!==t.button&&this.onContainerMouseMove(t),(void 0===t.button||i)&&(this.zoomOption(t),i&&t.preventDefault&&t.preventDefault(),this.dragStart(t))},t.prototype.onContainerMouseLeave=function(e){var i=r[y(t.hoverChartIndex,-1)],o=this.chart.tooltip;o&&o.shouldStickOnContact()&&this.inClass(e.relatedTarget,"highcharts-tooltip-container")||(e=this.normalize(e),i&&(e.relatedTarget||e.toElement)&&(i.pointer.reset(),i.pointer.chartPosition=void 0),o&&!o.isHidden&&this.reset())},t.prototype.onContainerMouseEnter=function(t){delete this.chartPosition},t.prototype.onContainerMouseMove=function(t){var e=this.chart;t=this.normalize(t),this.setHoverChartIndex(),t.preventDefault||(t.returnValue=!1),("mousedown"===e.mouseIsDown||this.touchSelect(t))&&this.drag(t),e.openMenu||!this.inClass(t.target,"highcharts-tracker")&&!e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop,{visiblePlotOnly:!0})||(this.inClass(t.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(t))},t.prototype.onDocumentTouchEnd=function(e){var i=r[y(t.hoverChartIndex,-1)];i&&i.pointer.drop(e)},t.prototype.onContainerTouchMove=function(t){this.touchSelect(t)?this.onContainerMouseMove(t):this.touch(t)},t.prototype.onContainerTouchStart=function(t){this.touchSelect(t)?this.onContainerMouseDown(t):(this.zoomOption(t),this.touch(t,!0))},t.prototype.onDocumentMouseMove=function(t){var e=this.chart,i=this.chartPosition;t=this.normalize(t,i);var o=e.tooltip;!i||o&&o.isStickyOnContact()||e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop,{visiblePlotOnly:!0})||this.inClass(t.target,"highcharts-tracker")||this.reset()},t.prototype.onDocumentMouseUp=function(e){var i=r[y(t.hoverChartIndex,-1)];i&&i.pointer.drop(e)},t.prototype.pinch=function(t){var e=this,i=e.chart,o=e.pinchDown,s=t.touches||[],r=s.length,a=e.lastValidTouch,h=e.hasZoom,l={},c=1===r&&(e.inClass(t.target,"highcharts-tracker")&&i.runTrackerClick||e.runChartClick),d={},f=e.selectionMarker;1<r?e.initiated=!0:1===r&&this.followTouchMove&&(e.initiated=!1),h&&e.initiated&&!c&&!1!==t.cancelable&&t.preventDefault(),[].map.call(s,function(t){return e.normalize(t)}),"touchstart"===t.type?([].forEach.call(s,function(t,e){o[e]={chartX:t.chartX,chartY:t.chartY}}),a.x=[o[0].chartX,o[1]&&o[1].chartX],a.y=[o[0].chartY,o[1]&&o[1].chartY],i.axes.forEach(function(t){if(t.zoomEnabled){var e=i.bounds[t.horiz?"h":"v"],o=t.minPixelPadding,s=t.toPixels(Math.min(y(t.options.min,t.dataMin),t.dataMin)),r=t.toPixels(Math.max(y(t.options.max,t.dataMax),t.dataMax)),n=Math.max(s,r);e.min=Math.min(t.pos,Math.min(s,r)-o),e.max=Math.max(t.pos+t.len,n+o)}}),e.res=!0):e.followTouchMove&&1===r?this.runPointActions(e.normalize(t)):o.length&&(u(i,"touchpan",{originalEvent:t},function(){f||(e.selectionMarker=f=p({destroy:n,touch:!0},i.plotBox)),e.pinchTranslate(o,s,l,f,d,a),e.hasPinched=h,e.scaleGroups(l,d)}),e.res&&(e.res=!1,this.reset(!1,0)))},t.prototype.pinchTranslate=function(t,e,i,o,s,r){this.zoomHor&&this.pinchTranslateDirection(!0,t,e,i,o,s,r),this.zoomVert&&this.pinchTranslateDirection(!1,t,e,i,o,s,r)},t.prototype.pinchTranslateDirection=function(t,e,i,o,s,r,n,a){var h=this.chart,l=t?"x":"y",c=t?"X":"Y",p="chart"+c,d=t?"width":"height",u=h["plot"+(t?"Left":"Top")],f=h.inverted,g=h.bounds[t?"h":"v"],m=1===e.length,x=e[0][p],y=!m&&e[1][p];e=function(){"number"==typeof k&&20<Math.abs(x-y)&&(S=a||Math.abs(M-k)/Math.abs(x-y)),b=(u-M)/S+x,v=h["plot"+(t?"Width":"Height")]/S};var v,b,S=a||1,M=i[0][p],k=!m&&i[1][p];if(e(),(i=b)<g.min){i=g.min;var w=!0}else i+v>g.max&&(i=g.max-v,w=!0);w?(M-=.8*(M-n[l][0]),"number"==typeof k&&(k-=.8*(k-n[l][1])),e()):n[l]=[M,k],f||(r[l]=b-u,r[d]=v),r=f?1/S:S,s[d]=v,s[l]=i,o[f?t?"scaleY":"scaleX":"scale"+c]=S,o["translate"+c]=r*u+(M-r*x)},t.prototype.reset=function(t,e){var i=this.chart,o=i.hoverSeries,s=i.hoverPoint,r=i.hoverPoints,n=i.tooltip,a=n&&n.shared?r:s;t&&a&&v(a).forEach(function(e){e.series.isCartesian&&void 0===e.plotX&&(t=!1)}),t?n&&a&&v(a).length&&(n.refresh(a),n.shared&&r?r.forEach(function(t){t.setState(t.state,!0),t.series.isCartesian&&(t.series.xAxis.crosshair&&t.series.xAxis.drawCrosshair(null,t),t.series.yAxis.crosshair&&t.series.yAxis.drawCrosshair(null,t))}):s&&(s.setState(s.state,!0),i.axes.forEach(function(t){t.crosshair&&s.series[t.coll]===t&&t.drawCrosshair(null,s)}))):(s&&s.onMouseOut(),r&&r.forEach(function(t){t.setState()}),o&&o.onMouseOut(),n&&n.hide(e),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),i.axes.forEach(function(t){t.hideCrosshair()}),this.hoverX=i.hoverPoints=i.hoverPoint=null)},t.prototype.runPointActions=function(e,i){var o=this.chart,s=o.tooltip&&o.tooltip.options.enabled?o.tooltip:void 0,n=!!s&&s.shared,h=i||o.hoverPoint,l=h&&h.series||o.hoverSeries;i=this.getHoverData(h,l,o.series,(!e||"touchmove"!==e.type)&&(!!i||l&&l.directTouch&&this.isDirectTouch),n,e),h=i.hoverPoint,l=i.hoverSeries;var c=i.hoverPoints;i=l&&l.tooltipOptions.followPointer&&!l.tooltipOptions.split;var p=n&&l&&!l.noSharedTooltip;if(h&&(h!==o.hoverPoint||s&&s.isHidden)){if((o.hoverPoints||[]).forEach(function(t){-1===c.indexOf(t)&&t.setState()}),o.hoverSeries!==l&&l.onMouseOver(),this.applyInactiveState(c),(c||[]).forEach(function(t){t.setState("hover")}),o.hoverPoint&&o.hoverPoint.firePointEvent("mouseOut"),!h.series)return;o.hoverPoints=c,o.hoverPoint=h,h.firePointEvent("mouseOver",void 0,function(){s&&h&&s.refresh(p?c:h,e)})}else i&&s&&!s.isHidden&&(n=s.getAnchor([{}],e),o.isInsidePlot(n[0],n[1],{visiblePlotOnly:!0})&&s.updatePosition({plotX:n[0],plotY:n[1]}));this.unDocMouseMove||(this.unDocMouseMove=a(o.container.ownerDocument,"mousemove",function(e){var i=r[t.hoverChartIndex];i&&i.pointer.onDocumentMouseMove(e)}),this.eventsToUnbind.push(this.unDocMouseMove)),o.axes.forEach(function(t){var i,s=y((t.crosshair||{}).snap,!0);s&&((i=o.hoverPoint)&&i.series[t.coll]===t||(i=d(c,function(e){return e.series&&e.series[t.coll]===t}))),i||!s?t.drawCrosshair(e,i):t.hideCrosshair()})},t.prototype.scaleGroups=function(t,e){var i=this.chart;i.series.forEach(function(o){var s=t||o.getPlotBox();o.group&&(o.xAxis&&o.xAxis.zoomEnabled||i.mapView)&&(o.group.attr(s),o.markerGroup&&(o.markerGroup.attr(s),o.markerGroup.clip(e?i.clipRect:null)),o.dataLabelsGroup&&o.dataLabelsGroup.attr(s))}),i.clipRect.attr(e||i.clipBox)},t.prototype.setDOMEvents=function(){var i=this,o=this.chart.container,s=o.ownerDocument;o.onmousedown=this.onContainerMouseDown.bind(this),o.onmousemove=this.onContainerMouseMove.bind(this),o.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(a(o,"mouseenter",this.onContainerMouseEnter.bind(this))),this.eventsToUnbind.push(a(o,"mouseleave",this.onContainerMouseLeave.bind(this))),t.unbindDocumentMouseUp||(t.unbindDocumentMouseUp=a(s,"mouseup",this.onDocumentMouseUp.bind(this)));for(var r=this.chart.renderTo.parentElement;r&&"BODY"!==r.tagName;)this.eventsToUnbind.push(a(r,"scroll",function(){delete i.chartPosition})),r=r.parentElement;e.hasTouch&&(this.eventsToUnbind.push(a(o,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1})),this.eventsToUnbind.push(a(o,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),t.unbindDocumentTouchEnd||(t.unbindDocumentTouchEnd=a(s,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})))},t.prototype.setHoverChartIndex=function(){var i=this.chart,o=e.charts[y(t.hoverChartIndex,-1)];o&&o!==i&&o.pointer.onContainerMouseLeave({relatedTarget:i.container}),o&&o.mouseIsDown||(t.hoverChartIndex=i.index)},t.prototype.touch=function(t,e){var i=this.chart;if(this.setHoverChartIndex(),1===t.touches.length)if(t=this.normalize(t),i.isInsidePlot(t.chartX-i.plotLeft,t.chartY-i.plotTop,{visiblePlotOnly:!0})&&!i.openMenu){if(e&&this.runPointActions(t),"touchmove"===t.type)var o=!!(e=this.pinchDown)[0]&&4<=Math.sqrt(Math.pow(e[0].chartX-t.chartX,2)+Math.pow(e[0].chartY-t.chartY,2));y(o,!0)&&this.pinch(t)}else e&&this.reset();else 2===t.touches.length&&this.pinch(t)},t.prototype.touchSelect=function(t){return!(!this.chart.options.chart.zoomBySingleTouch||!t.touches||1!==t.touches.length)},t.prototype.zoomOption=function(t){var e=this.chart,i=e.options.chart;e=e.inverted;var o=i.zoomType||"";/touch/.test(t.type)&&(o=y(i.pinchType,o)),this.zoomX=t=/x/.test(o),this.zoomY=i=/y/.test(o),this.zoomHor=t&&!e||i&&e,this.zoomVert=i&&!e||t&&e,this.hasZoom=t||i},t}()}),e(i,"Core/MSPointer.js",[i["Core/Globals.js"],i["Core/Pointer.js"],i["Core/Utilities.js"]],function(t,e,i){function o(){var t=[];return t.item=function(t){return this[t]},d(f,function(e){t.push({pageX:e.pageX,pageY:e.pageY,target:e.target})}),t}function s(t,i,s,r){var a=n[e.hoverChartIndex||NaN];"touch"!==t.pointerType&&t.pointerType!==t.MSPOINTER_TYPE_TOUCH||!a||(a=a.pointer,r(t),a[i]({type:s,target:t.currentTarget,preventDefault:h,touches:o()}))}var r=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),n=t.charts,a=t.doc,h=t.noop,l=t.win,c=i.addEvent,p=i.css,d=i.objectEach,u=i.removeEvent,f={},g=!!l.PointerEvent;return function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return r(i,e),i.isRequired=function(){return!(t.hasTouch||!l.PointerEvent&&!l.MSPointerEvent)},i.prototype.batchMSEvents=function(t){t(this.chart.container,g?"pointerdown":"MSPointerDown",this.onContainerPointerDown),t(this.chart.container,g?"pointermove":"MSPointerMove",this.onContainerPointerMove),t(a,g?"pointerup":"MSPointerUp",this.onDocumentPointerUp)},i.prototype.destroy=function(){this.batchMSEvents(u),e.prototype.destroy.call(this)},i.prototype.init=function(t,i){e.prototype.init.call(this,t,i),this.hasZoom&&p(t.container,{"-ms-touch-action":"none","touch-action":"none"})},i.prototype.onContainerPointerDown=function(t){s(t,"onContainerTouchStart","touchstart",function(t){f[t.pointerId]={pageX:t.pageX,pageY:t.pageY,target:t.currentTarget}})},i.prototype.onContainerPointerMove=function(t){s(t,"onContainerTouchMove","touchmove",function(t){f[t.pointerId]={pageX:t.pageX,pageY:t.pageY},f[t.pointerId].target||(f[t.pointerId].target=t.currentTarget)})},i.prototype.onDocumentPointerUp=function(t){s(t,"onDocumentTouchEnd","touchend",function(t){delete f[t.pointerId]})},i.prototype.setDOMEvents=function(){e.prototype.setDOMEvents.call(this),(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(c)},i}(e)}),e(i,"Core/Legend/Legend.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/FormatUtilities.js"],i["Core/Globals.js"],i["Core/Series/Point.js"],i["Core/Renderer/RendererUtilities.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r){var n=t.animObject,a=t.setAnimation,h=e.format;t=i.isFirefox;var l=i.marginNames;i=i.win;var c=s.distribute,p=r.addEvent,d=r.createElement,u=r.css,f=r.defined,g=r.discardElement,m=r.find,x=r.fireEvent,y=r.isNumber,v=r.merge,b=r.pick,S=r.relativeLength,M=r.stableSort,k=r.syncTimeout;return s=r.wrap,r=function(){function t(t,e){this.allItems=[],this.contentGroup=this.box=void 0,this.display=!1,this.group=void 0,this.offsetWidth=this.maxLegendWidth=this.maxItemWidth=this.legendWidth=this.legendHeight=this.lastLineHeight=this.lastItemY=this.itemY=this.itemX=this.itemMarginTop=this.itemMarginBottom=this.itemHeight=this.initialItemY=0,this.options=void 0,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=t,this.init(t,e)}return t.prototype.init=function(t,e){this.chart=t,this.setOptions(e),e.enabled&&(this.render(),p(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=p(this.chart,"render",function(){this.legend.proximatePositions(),this.legend.positionItems()}):this.unchartrender&&this.unchartrender())},t.prototype.setOptions=function(t){var e=b(t.padding,8);this.options=t,this.chart.styledMode||(this.itemStyle=t.itemStyle,this.itemHiddenStyle=v(this.itemStyle,t.itemHiddenStyle)),this.itemMarginTop=t.itemMarginTop||0,this.itemMarginBottom=t.itemMarginBottom||0,this.padding=e,this.initialItemY=e-5,this.symbolWidth=b(t.symbolWidth,16),this.pages=[],this.proximate="proximate"===t.layout&&!this.chart.inverted,this.baseline=void 0},t.prototype.update=function(t,e){var i=this.chart;this.setOptions(v(!0,this.options,t)),this.destroy(),i.isDirtyLegend=i.isDirtyBox=!0,b(e,!0)&&i.redraw(),x(this,"afterUpdate")},t.prototype.colorizeItem=function(t,e){if(t.legendGroup[e?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){var i=this.options,o=t.legendItem,s=t.legendLine,r=t.legendSymbol,n=this.itemHiddenStyle.color;i=e?i.itemStyle.color:n;var a=e&&t.color||n,h=t.options&&t.options.marker,l={fill:a};o&&o.css({fill:i,color:i}),s&&s.attr({stroke:a}),r&&(h&&r.isMarker&&(l=t.pointAttribs(),e||(l.stroke=l.fill=n)),r.attr(l))}x(this,"afterColorizeItem",{item:t,visible:e})},t.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()},t.prototype.positionItem=function(t){var e=this,i=this.options,o=i.symbolPadding,s=!i.rtl,r=t._legendItemPos;i=r[0],r=r[1];var n=t.checkbox,a=t.legendGroup;a&&a.element&&(o={translateX:s?i:this.legendWidth-i-2*o-4,translateY:r},s=function(){x(e,"afterPositionItem",{item:t})},f(a.translateY)?a.animate(o,void 0,s):(a.attr(o),s())),n&&(n.x=i,n.y=r)},t.prototype.destroyItem=function(t){var e=t.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(e){t[e]&&(t[e]=t[e].destroy())}),e&&g(t.checkbox)},t.prototype.destroy=function(){function t(t){this[t]&&(this[t]=this[t].destroy())}this.getAllItems().forEach(function(e){["legendItem","legendGroup"].forEach(t,e)}),"clipRect up down pager nav box title group".split(" ").forEach(t,this),this.display=null},t.prototype.positionCheckboxes=function(){var t=this.group&&this.group.alignAttr,e=this.clipHeight||this.legendHeight,i=this.titleHeight;if(t){var o=t.translateY;this.allItems.forEach(function(s){var r=s.checkbox;if(r){var n=o+i+r.y+(this.scrollOffset||0)+3;u(r,{left:t.translateX+s.checkboxOffset+r.x-20+"px",top:n+"px",display:this.proximate||n>o-6&&n<o+e-6?"":"none"})}},this)}},t.prototype.renderTitle=function(){var t=this.options,e=this.padding,i=t.title,o=0;i.text&&(this.title||(this.title=this.chart.renderer.label(i.text,e-3,e-4,void 0,void 0,void 0,t.useHTML,void 0,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(i.style),this.title.add(this.group)),i.width||this.title.css({width:this.maxLegendWidth+"px"}),o=(t=this.title.getBBox()).height,this.offsetWidth=t.width,this.contentGroup.attr({translateY:o})),this.titleHeight=o},t.prototype.setText=function(t){var e=this.options;t.legendItem.attr({text:e.labelFormat?h(e.labelFormat,t,this.chart):e.labelFormatter.call(t)})},t.prototype.renderItem=function(t){var e=this.chart,i=e.renderer,o=this.options,s=this.symbolWidth,r=o.symbolPadding||0,n=this.itemStyle,a=this.itemHiddenStyle,h="horizontal"===o.layout?b(o.itemDistance,20):0,l=!o.rtl,c=!t.series,p=!c&&t.series.drawLegendSymbol?t.series:t,d=p.options,u=this.createCheckboxForItem&&d&&d.showCheckbox,f=o.useHTML,g=t.options.className,m=t.legendItem;d=s+r+h+(u?20:0),m||(t.legendGroup=i.g("legend-item").addClass("highcharts-"+p.type+"-series highcharts-color-"+t.colorIndex+(g?" "+g:"")+(c?" highcharts-series-"+t.index:"")).attr({zIndex:1}).add(this.scrollGroup),t.legendItem=m=i.text("",l?s+r:-r,this.baseline||0,f),e.styledMode||m.css(v(t.visible?n:a)),m.attr({align:l?"left":"right",zIndex:2}).add(t.legendGroup),this.baseline||(this.fontMetrics=i.fontMetrics(e.styledMode?12:n.fontSize,m),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,m.attr("y",this.baseline),this.symbolHeight=o.symbolHeight||this.fontMetrics.f,o.squareSymbol&&(this.symbolWidth=b(o.symbolWidth,Math.max(this.symbolHeight,16)),d=this.symbolWidth+r+h+(u?20:0),l&&m.attr("x",this.symbolWidth+r))),p.drawLegendSymbol(this,t),this.setItemEvents&&this.setItemEvents(t,m,f)),u&&!t.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(t),this.colorizeItem(t,t.visible),!e.styledMode&&n.width||m.css({width:(o.itemWidth||this.widthOption||e.spacingBox.width)-d+"px"}),this.setText(t),e=m.getBBox(),i=this.fontMetrics&&this.fontMetrics.h||0,t.itemWidth=t.checkboxOffset=o.itemWidth||t.legendItemWidth||e.width+d,this.maxItemWidth=Math.max(this.maxItemWidth,t.itemWidth),this.totalItemWidth+=t.itemWidth,this.itemHeight=t.itemHeight=Math.round(t.legendItemHeight||(e.height>1.5*i?e.height:i))},t.prototype.layoutItem=function(t){var e=this.options,i=this.padding,o="horizontal"===e.layout,s=t.itemHeight,r=this.itemMarginBottom,n=this.itemMarginTop,a=o?b(e.itemDistance,20):0,h=this.maxLegendWidth;e=e.alignColumns&&this.totalItemWidth>h?this.maxItemWidth:t.itemWidth,o&&this.itemX-i+e>h&&(this.itemX=i,this.lastLineHeight&&(this.itemY+=n+this.lastLineHeight+r),this.lastLineHeight=0),this.lastItemY=n+this.itemY+r,this.lastLineHeight=Math.max(s,this.lastLineHeight),t._legendItemPos=[this.itemX,this.itemY],o?this.itemX+=e:(this.itemY+=n+s+r,this.lastLineHeight=s),this.offsetWidth=this.widthOption||Math.max((o?this.itemX-i-(t.checkbox?0:a):e)+i,this.offsetWidth)},t.prototype.getAllItems=function(){var t=[];return this.chart.series.forEach(function(e){var i=e&&e.options;e&&b(i.showInLegend,!f(i.linkedTo)&&void 0,!0)&&(t=t.concat(e.legendItems||("point"===i.legendType?e.data:e)))}),x(this,"afterGetAllItems",{allItems:t}),t},t.prototype.getAlignment=function(){var t=this.options;return this.proximate?t.align.charAt(0)+"tv":t.floating?"":t.align.charAt(0)+t.verticalAlign.charAt(0)+t.layout.charAt(0)},t.prototype.adjustMargins=function(t,e){var i=this.chart,o=this.options,s=this.getAlignment();s&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(r,n){r.test(s)&&!f(t[n])&&(i[l[n]]=Math.max(i[l[n]],i.legend[(n+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][n]*o[n%2?"x":"y"]+b(o.margin,12)+e[n]+(i.titleOffset[n]||0)))})},t.prototype.proximatePositions=function(){var t=this.chart,e=[],i="left"===this.options.align;this.allItems.forEach(function(o){var s,r=i;if(o.yAxis){o.xAxis.options.reversed&&(r=!r),o.points&&(s=m(r?o.points:o.points.slice(0).reverse(),function(t){return y(t.plotY)})),r=this.itemMarginTop+o.legendItem.getBBox().height+this.itemMarginBottom;var n=o.yAxis.top-t.plotTop;o.visible?(s=s?s.plotY:o.yAxis.height,s+=n-.3*r):s=n+o.yAxis.height,e.push({target:s,size:r,item:o})}},this),c(e,t.plotHeight).forEach(function(e){e.item._legendItemPos&&(e.item._legendItemPos[1]=t.plotTop-t.spacing[0]+e.pos)})},t.prototype.render=function(){var t=this.chart,e=t.renderer,i=this.options,o=this.padding,s=this.getAllItems(),r=this.group,n=this.box;this.itemX=o,this.itemY=this.initialItemY,this.lastItemY=this.offsetWidth=0,this.widthOption=S(i.width,t.spacingBox.width-o);var a=t.spacingBox.width-2*o-i.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(a/=2),this.maxLegendWidth=this.widthOption||a,r||(this.group=r=e.g("legend").addClass(i.className||"").attr({zIndex:7}).add(),this.contentGroup=e.g().attr({zIndex:1}).add(r),this.scrollGroup=e.g().add(this.contentGroup)),this.renderTitle(),M(s,function(t,e){return(t.options&&t.options.legendIndex||0)-(e.options&&e.options.legendIndex||0)}),i.reversed&&s.reverse(),this.allItems=s,this.display=a=!!s.length,this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0,s.forEach(this.renderItem,this),s.forEach(this.layoutItem,this),s=(this.widthOption||this.offsetWidth)+o;var h=this.lastItemY+this.lastLineHeight+this.titleHeight;h=this.handleOverflow(h),h+=o,n||(this.box=n=e.rect().addClass("highcharts-legend-box").attr({r:i.borderRadius}).add(r)),t.styledMode||n.attr({stroke:i.borderColor,"stroke-width":i.borderWidth||0,fill:i.backgroundColor||"none"}).shadow(i.shadow),0<s&&0<h&&n[n.placed?"animate":"attr"](n.crisp.call({},{x:0,y:0,width:s,height:h},n.strokeWidth())),n[a?"show":"hide"](),t.styledMode&&"none"===r.getStyle("display")&&(s=h=0),this.legendWidth=s,this.legendHeight=h,a&&this.align(),this.proximate||this.positionItems(),x(this,"afterRender")},t.prototype.align=function(t){void 0===t&&(t=this.chart.spacingBox);var e=this.chart,i=this.options,o=t.y;/(lth|ct|rth)/.test(this.getAlignment())&&0<e.titleOffset[0]?o+=e.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<e.titleOffset[2]&&(o-=e.titleOffset[2]),o!==t.y&&(t=v(t,{y:o})),e.hasRendered||(this.group.placed=!1),this.group.align(v(i,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":i.verticalAlign}),!0,t)},t.prototype.handleOverflow=function(t){var e,i,o=this,s=this.chart,r=s.renderer,n=this.options,a=n.y,h="top"===n.verticalAlign,l=this.padding,c=n.maxHeight,p=n.navigation,d=b(p.animation,!0),u=p.arrowSize||12,f=this.pages,g=this.allItems,m=function(t){"number"==typeof t?v.attr({height:t}):v&&(o.clipRect=v.destroy(),o.contentGroup.clip()),o.contentGroup.div&&(o.contentGroup.div.style.clip=t?"rect("+l+"px,9999px,"+(l+t)+"px,0)":"auto")},x=function(t){return o[t]=r.circle(0,0,1.3*u).translate(u/2,u/2).add(y),s.styledMode||o[t].attr("fill","rgba(0,0,0,0.0001)"),o[t]};a=s.spacingBox.height+(h?-a:a)-l;var y=this.nav,v=this.clipRect;return"horizontal"!==n.layout||"middle"===n.verticalAlign||n.floating||(a/=2),c&&(a=Math.min(a,c)),f.length=0,t&&0<a&&t>a&&!1!==p.enabled?(this.clipHeight=e=Math.max(a-20-this.titleHeight-l,0),this.currentPage=b(this.currentPage,1),this.fullHeight=t,g.forEach(function(t,o){var s=t._legendItemPos[1],r=Math.round(t.legendItem.getBBox().height),n=f.length;(!n||s-f[n-1]>e&&(i||s)!==f[n-1])&&(f.push(i||s),n++),t.pageIx=n-1,i&&(g[o-1].pageIx=n-1),o===g.length-1&&s+r-f[n-1]>e&&r<=e&&(f.push(s),t.pageIx=n),s!==i&&(i=s)}),v||(v=o.clipRect=r.clipRect(0,l,9999,0),o.contentGroup.clip(v)),m(e),y||(this.nav=y=r.g().attr({zIndex:1}).add(this.group),this.up=r.symbol("triangle",0,0,u,u).add(y),x("upTracker").on("click",function(){o.scroll(-1,d)}),this.pager=r.text("",15,10).addClass("highcharts-legend-navigation"),!s.styledMode&&p.style&&this.pager.css(p.style),this.pager.add(y),this.down=r.symbol("triangle-down",0,0,u,u).add(y),x("downTracker").on("click",function(){o.scroll(1,d)})),o.scroll(0),t=a):y&&(m(),this.nav=y.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),t},t.prototype.scroll=function(t,e){var i=this,o=this.chart,s=this.pages,r=s.length,h=this.clipHeight,l=this.options.navigation,c=this.pager,p=this.padding,d=this.currentPage+t;d>r&&(d=r),0<d&&(void 0!==e&&a(e,o),this.nav.attr({translateX:p,translateY:h+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(t){t.attr({class:1===d?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),c.attr({text:d+"/"+r}),[this.down,this.downTracker].forEach(function(t){t.attr({x:18+this.pager.getBBox().width,class:d===r?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),o.styledMode||(this.up.attr({fill:1===d?l.inactiveColor:l.activeColor}),this.upTracker.css({cursor:1===d?"default":"pointer"}),this.down.attr({fill:d===r?l.inactiveColor:l.activeColor}),this.downTracker.css({cursor:d===r?"default":"pointer"})),this.scrollOffset=-s[d-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=d,this.positionCheckboxes(),t=n(b(e,o.renderer.globalAnimation,!0)),k(function(){x(i,"afterScroll",{currentPage:d})},t.duration))},t.prototype.setItemEvents=function(t,e,i){var s=this,r=s.chart.renderer.boxWrapper,n=t instanceof o,a="highcharts-legend-"+(n?"point":"series")+"-active",h=s.chart.styledMode,l=function(e){s.allItems.forEach(function(i){t!==i&&[i].concat(i.linkedSeries||[]).forEach(function(t){t.setState(e,!n)})})};(i?[e,t.legendSymbol]:[t.legendGroup]).forEach(function(i){i&&i.on("mouseover",function(){t.visible&&l("inactive"),t.setState("hover"),t.visible&&r.addClass(a),h||e.css(s.options.itemHoverStyle)}).on("mouseout",function(){s.chart.styledMode||e.css(v(t.visible?s.itemStyle:s.itemHiddenStyle)),l(""),r.removeClass(a),t.setState()}).on("click",function(e){var i=function(){t.setVisible&&t.setVisible(),l(t.visible?"inactive":"")};r.removeClass(a),e={browserEvent:e},t.firePointEvent?t.firePointEvent("legendItemClick",e,i):x(t,"legendItemClick",e,i)})})},t.prototype.createCheckboxForItem=function(t){t.checkbox=d("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:t.selected,defaultChecked:t.selected},this.options.itemCheckboxStyle,this.chart.container),p(t.checkbox,"click",function(e){x(t.series||t,"checkboxClick",{checked:e.target.checked,item:t},function(){t.select()})})},t}(),(/Trident\/7\.0/.test(i.navigator&&i.navigator.userAgent)||t)&&s(r.prototype,"positionItem",function(t,e){var i=this,o=function(){e._legendItemPos&&t.call(i,e)};o(),i.bubbleLegend||setTimeout(o)}),r}),e(i,"Core/Series/SeriesRegistry.js",[i["Core/Globals.js"],i["Core/DefaultOptions.js"],i["Core/Series/Point.js"],i["Core/Utilities.js"]],function(t,e,i,o){var s,r=e.defaultOptions,n=o.error,a=o.extendClass,h=o.merge;return function(e){function o(t,o){var s=r.plotOptions||{},n=o.defaultOptions;o.prototype.pointClass||(o.prototype.pointClass=i),o.prototype.type=t,n&&(s[t]=n),e.seriesTypes[t]=o}e.seriesTypes=t.seriesTypes,e.getSeries=function(t,i){void 0===i&&(i={});var o=t.options.chart;o=i.type||o.type||o.defaultSeriesType||"";var s=e.seriesTypes[o];return e||n(17,!0,t,{missingModuleFor:o}),"function"==typeof(o=new s).init&&o.init(t,i),o},e.registerSeriesType=o,e.seriesType=function(t,s,n,l,c){var p=r.plotOptions||{};return s=s||"",p[t]=h(p[s],n),o(t,a(e.seriesTypes[s]||function(){},l)),e.seriesTypes[t].prototype.type=t,c&&(e.seriesTypes[t].prototype.pointClass=a(i,c)),e.seriesTypes[t]}}(s||(s={})),s}),e(i,"Core/Chart/Chart.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Axis/Axis.js"],i["Core/FormatUtilities.js"],i["Core/Foundation.js"],i["Core/Globals.js"],i["Core/Legend/Legend.js"],i["Core/MSPointer.js"],i["Core/DefaultOptions.js"],i["Core/Pointer.js"],i["Core/Renderer/RendererRegistry.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Renderer/SVG/SVGRenderer.js"],i["Core/Time.js"],i["Core/Utilities.js"],i["Core/Renderer/HTML/AST.js"]],function(t,e,i,o,s,r,n,a,h,l,c,p,d,u,f){var g=t.animate,m=t.animObject,x=t.setAnimation,y=i.numberFormat,v=o.registerEventOptions,b=s.charts,S=s.doc,M=s.marginNames,k=s.svg,w=s.win,C=a.defaultOptions,A=a.defaultTime,P=c.seriesTypes,T=u.addEvent,O=u.attr,E=u.cleanRecursively,L=u.createElement,D=u.css,z=u.defined,j=u.discardElement,I=u.erase,B=u.error,R=u.extend,G=u.find,N=u.fireEvent,W=u.getStyle,H=u.isArray,X=u.isNumber,_=u.isObject,F=u.isString,Y=u.merge,U=u.objectEach,V=u.pick,Z=u.pInt,K=u.relativeLength,q=u.removeEvent,$=u.splat,J=u.syncTimeout,Q=u.uniqueKey;return t=function(){function t(t,e,i){this.series=this.renderTo=this.renderer=this.pointer=this.pointCount=this.plotWidth=this.plotTop=this.plotLeft=this.plotHeight=this.plotBox=this.options=this.numberFormatter=this.margin=this.legend=this.labelCollectors=this.isResizing=this.index=this.eventOptions=this.container=this.colorCounter=this.clipBox=this.chartWidth=this.chartHeight=this.bounds=this.axisOffset=this.axes=void 0,this.sharedClips={},this.yAxis=this.xAxis=this.userOptions=this.titleOffset=this.time=this.symbolCounter=this.spacingBox=this.spacing=void 0,this.getArgs(t,e,i)}return t.chart=function(e,i,o){return new t(e,i,o)},t.prototype.getArgs=function(t,e,i){F(t)||t.nodeName?(this.renderTo=t,this.init(e,i)):this.init(t,e)},t.prototype.init=function(t,e){var i=t.plotOptions||{};N(this,"init",{args:arguments},function(){var o=Y(C,t),r=o.chart;U(o.plotOptions,function(t,e){_(t)&&(t.tooltip=i[e]&&Y(i[e].tooltip)||void 0)}),o.tooltip.userOptions=t.chart&&t.chart.forExport&&t.tooltip.userOptions||t.tooltip,this.userOptions=t,this.margin=[],this.spacing=[],this.bounds={h:{},v:{}},this.labelCollectors=[],this.callback=e,this.isResizing=0,this.options=o,this.axes=[],this.series=[],this.time=t.time&&Object.keys(t.time).length?new d(t.time):s.time,this.numberFormatter=r.numberFormatter||y,this.styledMode=r.styledMode,this.hasCartesianSeries=r.showAxes,this.index=b.length,b.push(this),s.chartCount++,v(this,r),this.xAxis=[],this.yAxis=[],this.pointCount=this.colorCounter=this.symbolCounter=0,N(this,"afterInit"),this.firstRender()})},t.prototype.initSeries=function(t){var e=this.options.chart;e=t.type||e.type||e.defaultSeriesType;var i=P[e];return i||B(17,!0,this,{missingModuleFor:e}),"function"==typeof(e=new i).init&&e.init(this,t),e},t.prototype.setSeriesData=function(){this.getSeriesOrderByLinks().forEach(function(t){t.points||t.data||!t.enabledDataSorting||t.setData(t.options.data,!1)})},t.prototype.getSeriesOrderByLinks=function(){return this.series.concat().sort(function(t,e){return t.linkedSeries.length||e.linkedSeries.length?e.linkedSeries.length-t.linkedSeries.length:0})},t.prototype.orderSeries=function(t){var e=this.series;t=t||0;for(var i=e.length;t<i;++t)e[t]&&(e[t].index=t,e[t].name=e[t].getName())},t.prototype.isInsidePlot=function(t,e,i){void 0===i&&(i={});var o=this.inverted,s=this.plotBox,r=this.plotLeft,n=this.plotTop,a=this.scrollablePlotBox,h=0,l=0;i.visiblePlotOnly&&this.scrollingContainer&&(h=(l=this.scrollingContainer).scrollLeft,l=l.scrollTop);var c=i.series;if(s=i.visiblePlotOnly&&a||s,t={x:a=i.inverted?e:t,y:e=i.inverted?t:e,isInsidePlot:!0},!i.ignoreX){var p=c&&(o?c.yAxis:c.xAxis)||{pos:r,len:1/0};(a=i.paneCoordinates?p.pos+a:r+a)>=Math.max(h+r,p.pos)&&a<=Math.min(h+r+s.width,p.pos+p.len)||(t.isInsidePlot=!1)}return!i.ignoreY&&t.isInsidePlot&&(o=c&&(o?c.xAxis:c.yAxis)||{pos:n,len:1/0},(i=i.paneCoordinates?o.pos+e:n+e)>=Math.max(l+n,o.pos)&&i<=Math.min(l+n+s.height,o.pos+o.len)||(t.isInsidePlot=!1)),N(this,"afterIsInsidePlot",t),t.isInsidePlot},t.prototype.redraw=function(t){N(this,"beforeRedraw");var e=this.hasCartesianSeries?this.axes:this.colorAxis||[],i=this.series,o=this.pointer,s=this.legend,r=this.userOptions.legend,n=this.renderer,a=n.isHidden(),h=[],l=this.isDirtyBox,c=this.isDirtyLegend;for(this.setResponsive&&this.setResponsive(!1),x(!!this.hasRendered&&t,this),a&&this.temporaryDisplay(),this.layOutTitles(),t=i.length;t--;){var p=i[t];if(p.options.stacking||p.options.centerInCategory){var d=!0;if(p.isDirty){var u=!0;break}}}if(u)for(t=i.length;t--;)(p=i[t]).options.stacking&&(p.isDirty=!0);i.forEach(function(t){t.isDirty&&("point"===t.options.legendType?("function"==typeof t.updateTotals&&t.updateTotals(),c=!0):r&&(r.labelFormatter||r.labelFormat)&&(c=!0)),t.isDirtyData&&N(t,"updatedData")}),c&&s&&s.options.enabled&&(s.render(),this.isDirtyLegend=!1),d&&this.getStacks(),e.forEach(function(t){t.updateNames(),t.setScale()}),this.getMargins(),e.forEach(function(t){t.isDirty&&(l=!0)}),e.forEach(function(t){var e=t.min+","+t.max;t.extKey!==e&&(t.extKey=e,h.push(function(){N(t,"afterSetExtremes",R(t.eventArgs,t.getExtremes())),delete t.eventArgs})),(l||d)&&t.redraw()}),l&&this.drawChartBox(),N(this,"predraw"),i.forEach(function(t){(l||t.isDirty)&&t.visible&&t.redraw(),t.isDirtyData=!1}),o&&o.reset(!0),n.draw(),N(this,"redraw"),N(this,"render"),a&&this.temporaryDisplay(!0),h.forEach(function(t){t.call()})},t.prototype.get=function(t){function e(e){return e.id===t||e.options&&e.options.id===t}for(var i=this.series,o=G(this.axes,e)||G(this.series,e),s=0;!o&&s<i.length;s++)o=G(i[s].points||[],e);return o},t.prototype.getAxes=function(){var t=this,i=this.options,o=i.xAxis=$(i.xAxis||{});i=i.yAxis=$(i.yAxis||{}),N(this,"getAxes"),o.forEach(function(t,e){t.index=e,t.isX=!0}),i.forEach(function(t,e){t.index=e}),o.concat(i).forEach(function(i){new e(t,i)}),N(this,"afterGetAxes")},t.prototype.getSelectedPoints=function(){return this.series.reduce(function(t,e){return e.getPointsCollection().forEach(function(e){V(e.selectedStaging,e.selected)&&t.push(e)}),t},[])},t.prototype.getSelectedSeries=function(){return this.series.filter(function(t){return t.selected})},t.prototype.setTitle=function(t,e,i){this.applyDescription("title",t),this.applyDescription("subtitle",e),this.applyDescription("caption",void 0),this.layOutTitles(i)},t.prototype.applyDescription=function(t,e){var i=this,o="title"===t?{color:"#333333",fontSize:this.options.isStock?"16px":"18px"}:{color:"#666666"};o=this.options[t]=Y(!this.styledMode&&{style:o},this.options[t],e);var s=this[t];s&&e&&(this[t]=s=s.destroy()),o&&!s&&((s=this.renderer.text(o.text,0,0,o.useHTML).attr({align:o.align,class:"highcharts-"+t,zIndex:o.zIndex||4}).add()).update=function(e){i[{title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"}[t]](e)},this.styledMode||s.css(o.style),this[t]=s)},t.prototype.layOutTitles=function(t){var e=[0,0,0],i=this.renderer,o=this.spacingBox;["title","subtitle","caption"].forEach(function(t){var s,r=this[t],n=this.options[t],a=n.verticalAlign||"top";if(t="title"===t?"top"===a?-3:0:"top"===a?e[0]+2:0,r){this.styledMode||(s=n.style&&n.style.fontSize),s=i.fontMetrics(s,r).b,r.css({width:(n.width||o.width+(n.widthAdjust||0))+"px"});var h=Math.round(r.getBBox(n.useHTML).height);r.align(R({y:"bottom"===a?s:t+s,height:h},n),!1,"spacingBox"),n.floating||("top"===a?e[0]=Math.ceil(e[0]+h):"bottom"===a&&(e[2]=Math.ceil(e[2]+h)))}},this),e[0]&&"top"===(this.options.title.verticalAlign||"top")&&(e[0]+=this.options.title.margin),e[2]&&"bottom"===this.options.caption.verticalAlign&&(e[2]+=this.options.caption.margin);var s=!this.titleOffset||this.titleOffset.join(",")!==e.join(",");this.titleOffset=e,N(this,"afterLayOutTitles"),!this.isDirtyBox&&s&&(this.isDirtyBox=this.isDirtyLegend=s,this.hasRendered&&V(t,!0)&&this.isDirtyBox&&this.redraw())},t.prototype.getChartSize=function(){var t=this.options.chart,e=t.width;t=t.height;var i=this.renderTo;z(e)||(this.containerWidth=W(i,"width")),z(t)||(this.containerHeight=W(i,"height")),this.chartWidth=Math.max(0,e||this.containerWidth||600),this.chartHeight=Math.max(0,K(t,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))},t.prototype.temporaryDisplay=function(t){var e=this.renderTo;if(t)for(;e&&e.style;)e.hcOrigStyle&&(D(e,e.hcOrigStyle),delete e.hcOrigStyle),e.hcOrigDetached&&(S.body.removeChild(e),e.hcOrigDetached=!1),e=e.parentNode;else for(;e&&e.style&&(S.body.contains(e)||e.parentNode||(e.hcOrigDetached=!0,S.body.appendChild(e)),("none"===W(e,"display",!1)||e.hcOricDetached)&&(e.hcOrigStyle={display:e.style.display,height:e.style.height,overflow:e.style.overflow},t={display:"block",overflow:"hidden"},e!==this.renderTo&&(t.height=0),D(e,t),e.offsetWidth||e.style.setProperty("display","block","important")),(e=e.parentNode)!==S.body););},t.prototype.setClassName=function(t){this.container.className="highcharts-container "+(t||"")},t.prototype.getContainer=function(){var t,e=this.options,i=e.chart,o=Q(),s=this.renderTo;s||(this.renderTo=s=i.renderTo),F(s)&&(this.renderTo=s=S.getElementById(s)),s||B(13,!0,this);var r=Z(O(s,"data-highcharts-chart"));X(r)&&b[r]&&b[r].hasRendered&&b[r].destroy(),O(s,"data-highcharts-chart",this.index),s.innerHTML=f.emptyHTML,i.skipClone||s.offsetWidth||this.temporaryDisplay(),this.getChartSize(),r=this.chartWidth;var n=this.chartHeight;if(D(s,{overflow:"hidden"}),this.styledMode||(t=R({position:"relative",overflow:"hidden",width:r+"px",height:n+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none"},i.style||{})),this.container=o=L("div",{id:o},t,s),this._cursor=o.style.cursor,this.renderer=new(i.renderer||!k?l.getRendererType(i.renderer):p)(o,r,n,void 0,i.forExport,e.exporting&&e.exporting.allowHTML,this.styledMode),x(void 0,this),this.setClassName(i.className),this.styledMode)for(var a in e.defs)this.renderer.definition(e.defs[a]);else this.renderer.setStyle(i.style);this.renderer.chartIndex=this.index,N(this,"afterGetContainer")},t.prototype.getMargins=function(t){var e=this.spacing,i=this.margin,o=this.titleOffset;this.resetMargins(),o[0]&&!z(i[0])&&(this.plotTop=Math.max(this.plotTop,o[0]+e[0])),o[2]&&!z(i[2])&&(this.marginBottom=Math.max(this.marginBottom,o[2]+e[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(i,e),N(this,"getMargins"),t||this.getAxisMargins()},t.prototype.getAxisMargins=function(){var t=this,e=t.axisOffset=[0,0,0,0],i=t.colorAxis,o=t.margin,s=function(t){t.forEach(function(t){t.visible&&t.getOffset()})};t.hasCartesianSeries?s(t.axes):i&&i.length&&s(i),M.forEach(function(i,s){z(o[s])||(t[i]+=e[s])}),t.setChartSize()},t.prototype.reflow=function(t){var e=this,i=e.options.chart,o=e.renderTo,s=z(i.width)&&z(i.height),r=i.width||W(o,"width");i=i.height||W(o,"height"),o=t?t.target:w,delete e.pointer.chartPosition,s||e.isPrinting||!r||!i||o!==w&&o!==S||(r===e.containerWidth&&i===e.containerHeight||(u.clearTimeout(e.reflowTimeout),e.reflowTimeout=J(function(){e.container&&e.setSize(void 0,void 0,!1)},t?100:0)),e.containerWidth=r,e.containerHeight=i)},t.prototype.setReflow=function(t){var e=this;!1===t||this.unbindReflow?!1===t&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=T(w,"resize",function(t){e.options&&e.reflow(t)}),T(this,"destroy",this.unbindReflow))},t.prototype.setSize=function(t,e,i){var o=this,s=o.renderer;o.isResizing+=1,x(i,o),i=s.globalAnimation,o.oldChartHeight=o.chartHeight,o.oldChartWidth=o.chartWidth,void 0!==t&&(o.options.chart.width=t),void 0!==e&&(o.options.chart.height=e),o.getChartSize(),o.styledMode||(i?g:D)(o.container,{width:o.chartWidth+"px",height:o.chartHeight+"px"},i),o.setChartSize(!0),s.setSize(o.chartWidth,o.chartHeight,i),o.axes.forEach(function(t){t.isDirty=!0,t.setScale()}),o.isDirtyLegend=!0,o.isDirtyBox=!0,o.layOutTitles(),o.getMargins(),o.redraw(i),o.oldChartHeight=null,N(o,"resize"),J(function(){o&&N(o,"endResize",null,function(){--o.isResizing})},m(i).duration)},t.prototype.setChartSize=function(t){var e,i,o,s,r=this.inverted,n=this.renderer,a=this.chartWidth,h=this.chartHeight,l=this.options.chart,c=this.spacing,p=this.clipOffset;this.plotLeft=e=Math.round(this.plotLeft),this.plotTop=i=Math.round(this.plotTop),this.plotWidth=o=Math.max(0,Math.round(a-e-this.marginRight)),this.plotHeight=s=Math.max(0,Math.round(h-i-this.marginBottom)),this.plotSizeX=r?s:o,this.plotSizeY=r?o:s,this.plotBorderWidth=l.plotBorderWidth||0,this.spacingBox=n.spacingBox={x:c[3],y:c[0],width:a-c[3]-c[1],height:h-c[0]-c[2]},this.plotBox=n.plotBox={x:e,y:i,width:o,height:s},r=2*Math.floor(this.plotBorderWidth/2),a=Math.ceil(Math.max(r,p[3])/2),h=Math.ceil(Math.max(r,p[0])/2),this.clipBox={x:a,y:h,width:Math.floor(this.plotSizeX-Math.max(r,p[1])/2-a),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(r,p[2])/2-h))},t||(this.axes.forEach(function(t){t.setAxisSize(),t.setAxisTranslation()}),n.alignElements()),N(this,"afterSetChartSize",{skipAxes:t})},t.prototype.resetMargins=function(){N(this,"resetMargins");var t=this,e=t.options.chart;["margin","spacing"].forEach(function(i){var o=e[i],s=_(o)?o:[o,o,o,o];["Top","Right","Bottom","Left"].forEach(function(o,r){t[i][r]=V(e[i+o],s[r])})}),M.forEach(function(e,i){t[e]=V(t.margin[i],t.spacing[i])}),t.axisOffset=[0,0,0,0],t.clipOffset=[0,0,0,0]},t.prototype.drawChartBox=function(){var t,e=this.options.chart,i=this.renderer,o=this.chartWidth,s=this.chartHeight,r=this.styledMode,n=this.plotBGImage,a=e.backgroundColor,h=e.plotBackgroundColor,l=e.plotBackgroundImage,c=this.plotLeft,p=this.plotTop,d=this.plotWidth,u=this.plotHeight,f=this.plotBox,g=this.clipRect,m=this.clipBox,x=this.chartBackground,y=this.plotBackground,v=this.plotBorder,b="animate";if(x||(this.chartBackground=x=i.rect().addClass("highcharts-background").add(),b="attr"),r)var S=t=x.strokeWidth();else t=(S=e.borderWidth||0)+(e.shadow?8:0),a={fill:a||"none"},(S||x["stroke-width"])&&(a.stroke=e.borderColor,a["stroke-width"]=S),x.attr(a).shadow(e.shadow);x[b]({x:t/2,y:t/2,width:o-t-S%2,height:s-t-S%2,r:e.borderRadius}),b="animate",y||(b="attr",this.plotBackground=y=i.rect().addClass("highcharts-plot-background").add()),y[b](f),r||(y.attr({fill:h||"none"}).shadow(e.plotShadow),l&&(n?(l!==n.attr("href")&&n.attr("href",l),n.animate(f)):this.plotBGImage=i.image(l,c,p,d,u).add())),g?g.animate({width:m.width,height:m.height}):this.clipRect=i.clipRect(m),b="animate",v||(b="attr",this.plotBorder=v=i.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),r||v.attr({stroke:e.plotBorderColor,"stroke-width":e.plotBorderWidth||0,fill:"none"}),v[b](v.crisp({x:c,y:p,width:d,height:u},-v.strokeWidth())),this.isDirtyBox=!1,N(this,"afterDrawChartBox")},t.prototype.propFromSeries=function(){var t,e,i,o=this,s=o.options.chart,r=o.options.series;["inverted","angular","polar"].forEach(function(n){for(e=P[s.type||s.defaultSeriesType],i=s[n]||e&&e.prototype[n],t=r&&r.length;!i&&t--;)(e=P[r[t].type])&&e.prototype[n]&&(i=!0);o[n]=i})},t.prototype.linkSeries=function(){var t=this,e=t.series;e.forEach(function(t){t.linkedSeries.length=0}),e.forEach(function(e){var i=e.options.linkedTo;F(i)&&(i=":previous"===i?t.series[e.index-1]:t.get(i))&&i.linkedParent!==e&&(i.linkedSeries.push(e),e.linkedParent=i,i.enabledDataSorting&&e.setDataSortingOptions(),e.visible=V(e.options.visible,i.options.visible,e.visible))}),N(this,"afterLinkSeries")},t.prototype.renderSeries=function(){this.series.forEach(function(t){t.translate(),t.render()})},t.prototype.renderLabels=function(){var t=this,e=t.options.labels;e.items&&e.items.forEach(function(i){var o=R(e.style,i.style),s=Z(o.left)+t.plotLeft,r=Z(o.top)+t.plotTop+12;delete o.left,delete o.top,t.renderer.text(i.html,s,r).attr({zIndex:2}).css(o).add()})},t.prototype.render=function(){var t=this.axes,e=this.colorAxis,i=this.renderer,o=this.options,s=function(t){t.forEach(function(t){t.visible&&t.render()})},n=0;this.setTitle(),this.legend=new r(this,o.legend),this.getStacks&&this.getStacks(),this.getMargins(!0),this.setChartSize(),o=this.plotWidth,t.some(function(t){if(t.horiz&&t.visible&&t.options.labels.enabled&&t.series.length)return n=21,!0});var a=this.plotHeight=Math.max(this.plotHeight-n,0);t.forEach(function(t){t.setScale()}),this.getAxisMargins();var h=1.1<o/this.plotWidth,l=1.05<a/this.plotHeight;(h||l)&&(t.forEach(function(t){(t.horiz&&h||!t.horiz&&l)&&t.setTickInterval(!0)}),this.getMargins()),this.drawChartBox(),this.hasCartesianSeries?s(t):e&&e.length&&s(e),this.seriesGroup||(this.seriesGroup=i.g("series-group").attr({zIndex:3}).add()),this.renderSeries(),this.renderLabels(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.hasRendered=!0},t.prototype.addCredits=function(t){var e=this,i=Y(!0,this.options.credits,t);i.enabled&&!this.credits&&(this.credits=this.renderer.text(i.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){i.href&&(w.location.href=i.href)}).attr({align:i.position.align,zIndex:8}),e.styledMode||this.credits.css(i.style),this.credits.add().align(i.position),this.credits.update=function(t){e.credits=e.credits.destroy(),e.addCredits(t)})},t.prototype.destroy=function(){var t,e=this,i=e.axes,o=e.series,r=e.container,n=r&&r.parentNode;for(N(e,"destroy"),e.renderer.forExport?I(b,e):b[e.index]=void 0,s.chartCount--,e.renderTo.removeAttribute("data-highcharts-chart"),q(e),t=i.length;t--;)i[t]=i[t].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),t=o.length;t--;)o[t]=o[t].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(t){var i=e[t];i&&i.destroy&&(e[t]=i.destroy())}),r&&(r.innerHTML=f.emptyHTML,q(r),n&&j(r)),U(e,function(t,i){delete e[i]})},t.prototype.firstRender=function(){var t=this,e=t.options;t.isReadyToRender&&!t.isReadyToRender()||(t.getContainer(),t.resetMargins(),t.setChartSize(),t.propFromSeries(),t.getAxes(),(H(e.series)?e.series:[]).forEach(function(e){t.initSeries(e)}),t.linkSeries(),t.setSeriesData(),N(t,"beforeRender"),h&&(n.isRequired()?t.pointer=new n(t,e):t.pointer=new h(t,e)),t.render(),t.pointer.getChartPosition(),t.renderer.imgCount||t.hasLoaded||t.onload(),t.temporaryDisplay(!0))},t.prototype.onload=function(){this.callbacks.concat([this.callback]).forEach(function(t){t&&void 0!==this.index&&t.apply(this,[this])},this),N(this,"load"),N(this,"render"),z(this.index)&&this.setReflow(this.options.chart.reflow),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0},t.prototype.warnIfA11yModuleNotLoaded=function(){var t=this;setTimeout(function(){var e=t&&t.options;!e||t.accessibility||e.accessibility&&!1===e.accessibility.enabled||B('Highcharts warning: Consider including the "accessibility.js" module to make your chart more usable for people with disabilities. Set the "accessibility.enabled" option to false to remove this warning. See https://www.highcharts.com/docs/accessibility/accessibility-module.',!1,t)},100)},t.prototype.addSeries=function(t,e,i){var o,s=this;return t&&(e=V(e,!0),N(s,"addSeries",{options:t},function(){o=s.initSeries(t),s.isDirtyLegend=!0,s.linkSeries(),o.enabledDataSorting&&o.setData(t.data,!1),N(s,"afterAddSeries",{series:o}),e&&s.redraw(i)})),o},t.prototype.addAxis=function(t,e,i,o){return this.createAxis(e?"xAxis":"yAxis",{axis:t,redraw:i,animation:o})},t.prototype.addColorAxis=function(t,e,i){return this.createAxis("colorAxis",{axis:t,redraw:e,animation:i})},t.prototype.createAxis=function(t,i){return t=new e(this,Y(i.axis,{index:this[t].length,isX:"xAxis"===t})),V(i.redraw,!0)&&this.redraw(i.animation),t},t.prototype.showLoading=function(t){var e=this,i=e.options,o=i.loading,s=function(){r&&D(r,{left:e.plotLeft+"px",top:e.plotTop+"px",width:e.plotWidth+"px",height:e.plotHeight+"px"})},r=e.loadingDiv,n=e.loadingSpan;r||(e.loadingDiv=r=L("div",{className:"highcharts-loading highcharts-loading-hidden"},null,e.container)),n||(e.loadingSpan=n=L("span",{className:"highcharts-loading-inner"},null,r),T(e,"redraw",s)),r.className="highcharts-loading",f.setElementHTML(n,V(t,i.lang.loading,"")),e.styledMode||(D(r,R(o.style,{zIndex:10})),D(n,o.labelStyle),e.loadingShown||(D(r,{opacity:0,display:""}),g(r,{opacity:o.style.opacity||.5},{duration:o.showDuration||0}))),e.loadingShown=!0,s()},t.prototype.hideLoading=function(){var t=this.options,e=this.loadingDiv;e&&(e.className="highcharts-loading highcharts-loading-hidden",this.styledMode||g(e,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){D(e,{display:"none"})}})),this.loadingShown=!1},t.prototype.update=function(t,e,i,o){var s,r,n=this,a={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},h=t.isResponsiveOptions,l=[];N(n,"update",{options:t}),h||n.setResponsive(!1,!0),t=E(t,n.options),n.userOptions=Y(n.userOptions,t);var c=t.chart;if(c){if(Y(!0,n.options.chart,c),"className"in c&&n.setClassName(c.className),"reflow"in c&&n.setReflow(c.reflow),"inverted"in c||"polar"in c||"type"in c){n.propFromSeries();var p=!0}"alignTicks"in c&&(p=!0),"events"in c&&v(this,c),U(c,function(t,e){-1!==n.propsRequireUpdateSeries.indexOf("chart."+e)&&(s=!0),-1!==n.propsRequireDirtyBox.indexOf(e)&&(n.isDirtyBox=!0),-1!==n.propsRequireReflow.indexOf(e)&&(h?n.isDirtyBox=!0:r=!0)}),!n.styledMode&&c.style&&n.renderer.setStyle(n.options.chart.style||{})}!n.styledMode&&t.colors&&(this.options.colors=t.colors),t.time&&(this.time===A&&(this.time=new d(t.time)),Y(!0,n.options.time,t.time)),U(t,function(e,i){n[i]&&"function"==typeof n[i].update?n[i].update(e,!1):"function"==typeof n[a[i]]?n[a[i]](e):"colors"!==i&&-1===n.collectionsWithUpdate.indexOf(i)&&Y(!0,n.options[i],t[i]),"chart"!==i&&-1!==n.propsRequireUpdateSeries.indexOf(i)&&(s=!0)}),this.collectionsWithUpdate.forEach(function(e){if(t[e]){var o=[];n[e].forEach(function(t,e){t.options.isInternal||o.push(V(t.options.index,e))}),$(t[e]).forEach(function(t,s){var r,a=z(t.id);a&&(r=n.get(t.id)),!r&&n[e]&&(r=n[e][o?o[s]:s])&&a&&z(r.options.id)&&(r=void 0),r&&r.coll===e&&(r.update(t,!1),i&&(r.touched=!0)),!r&&i&&n.collectionsWithInit[e]&&(n.collectionsWithInit[e][0].apply(n,[t].concat(n.collectionsWithInit[e][1]||[]).concat([!1])).touched=!0)}),i&&n[e].forEach(function(t){t.touched||t.options.isInternal?delete t.touched:l.push(t)})}}),l.forEach(function(t){t.chart&&t.remove&&t.remove(!1)}),p&&n.axes.forEach(function(t){t.update({},!1)}),s&&n.getSeriesOrderByLinks().forEach(function(t){t.chart&&t.update({},!1)},this),p=c&&c.width,c=c&&(F(c.height)?K(c.height,p||n.chartWidth):c.height),r||X(p)&&p!==n.chartWidth||X(c)&&c!==n.chartHeight?n.setSize(p,c,o):V(e,!0)&&n.redraw(o),N(n,"afterUpdate",{options:t,redraw:e,animation:o})},t.prototype.setSubtitle=function(t,e){this.applyDescription("subtitle",t),this.layOutTitles(e)},t.prototype.setCaption=function(t,e){this.applyDescription("caption",t),this.layOutTitles(e)},t.prototype.showResetZoom=function(){function t(){e.zoomOut()}var e=this,i=C.lang,o=e.options.chart.resetZoomButton,s=o.theme,r="chart"===o.relativeTo||"spacingBox"===o.relativeTo?null:"scrollablePlotBox";N(this,"beforeShowResetZoom",null,function(){e.resetZoomButton=e.renderer.button(i.resetZoom,null,null,t,s).attr({align:o.position.align,title:i.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(o.position,!1,r)}),N(this,"afterShowResetZoom")},t.prototype.zoomOut=function(){N(this,"selection",{resetSelection:!0},this.zoom)},t.prototype.zoom=function(t){var e,i=this,o=i.pointer,s=i.inverted?o.mouseDownX:o.mouseDownY,r=!1;!t||t.resetSelection?(i.axes.forEach(function(t){e=t.zoom()}),o.initiated=!1):t.xAxis.concat(t.yAxis).forEach(function(t){var n=t.axis,a=i.inverted?n.left:n.top,h=i.inverted?a+n.width:a+n.height,l=n.isXAxis,c=!1;(!l&&s>=a&&s<=h||l||!z(s))&&(c=!0),o[l?"zoomX":"zoomY"]&&c&&(e=n.zoom(t.min,t.max),n.displayBtn&&(r=!0))});var n=i.resetZoomButton;r&&!n?i.showResetZoom():!r&&_(n)&&(i.resetZoomButton=n.destroy()),e&&i.redraw(V(i.options.chart.animation,t&&t.animation,100>i.pointCount))},t.prototype.pan=function(t,e){var i=this,o=i.hoverPoints;e="object"==typeof e?e:{enabled:e,type:"x"};var s=i.options.chart,r=i.options.mapNavigation&&i.options.mapNavigation.enabled;s&&s.panning&&(s.panning=e);var n,a=e.type;N(this,"pan",{originalEvent:t},function(){o&&o.forEach(function(t){t.setState()});var e=i.xAxis;"xy"===a?e=e.concat(i.yAxis):"y"===a&&(e=i.yAxis);var s={};e.forEach(function(e){if(e.options.panningEnabled&&!e.options.isInternal){var o=e.horiz,h=t[o?"chartX":"chartY"],l=i[o=o?"mouseDownX":"mouseDownY"],c=e.minPointOffset||0,p=e.reversed&&!i.inverted||!e.reversed&&i.inverted?-1:1,d=e.getExtremes(),u=e.toValue(l-h,!0)+c*p,f=e.toValue(l+e.len-h,!0)-(c*p||e.isXAxis&&e.pointRangePadding||0),g=f<u;p=e.hasVerticalPanning(),l=g?f:u,u=g?u:f;var m=e.panningState;!p||e.isXAxis||m&&!m.isDirty||e.series.forEach(function(t){var e=t.getProcessedData(!0);e=t.getExtremes(e.yData,!0),m||(m={startMin:Number.MAX_VALUE,startMax:-Number.MAX_VALUE}),X(e.dataMin)&&X(e.dataMax)&&(m.startMin=Math.min(V(t.options.threshold,1/0),e.dataMin,m.startMin),m.startMax=Math.max(V(t.options.threshold,-1/0),e.dataMax,m.startMax))}),p=Math.min(V(m&&m.startMin,d.dataMin),c?d.min:e.toValue(e.toPixels(d.min)-e.minPixelPadding)),f=Math.max(V(m&&m.startMax,d.dataMax),c?d.max:e.toValue(e.toPixels(d.max)+e.minPixelPadding)),e.panningState=m,e.isOrdinal||(0<(c=p-l)&&(u+=c,l=p),0<(c=u-f)&&(u=f,l-=c),e.series.length&&l!==d.min&&u!==d.max&&l>=p&&u<=f&&(e.setExtremes(l,u,!1,!1,{trigger:"pan"}),i.resetZoomButton||r||l===p||u===f||!a.match("y")||(i.showResetZoom(),e.displayBtn=!1),n=!0),s[o]=h)}}),U(s,function(t,e){i[e]=t}),n&&i.redraw(!1),D(i.container,{cursor:"move"})})},t}(),R(t.prototype,{callbacks:[],collectionsWithInit:{xAxis:[t.prototype.addAxis,[!0]],yAxis:[t.prototype.addAxis,[!1]],series:[t.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:"backgroundColor borderColor borderWidth borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow".split(" "),propsRequireReflow:"margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft".split(" "),propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip".split(" ")}),t}),e(i,"Core/Legend/LegendSymbol.js",[i["Core/Utilities.js"]],function(t){var e,i=t.merge,o=t.pick;return function(t){t.drawLineMarker=function(t){var e=this.options,s=t.symbolWidth,r=t.symbolHeight,n=r/2,a=this.chart.renderer,h=this.legendGroup;t=t.baseline-Math.round(.3*t.fontMetrics.b);var l={},c=e.marker;this.chart.styledMode||(l={"stroke-width":e.lineWidth||0},e.dashStyle&&(l.dashstyle=e.dashStyle)),this.legendLine=a.path([["M",0,t],["L",s,t]]).addClass("highcharts-graph").attr(l).add(h),c&&!1!==c.enabled&&s&&(e=Math.min(o(c.radius,n),n),0===this.symbol.indexOf("url")&&(c=i(c,{width:r,height:r}),e=0),this.legendSymbol=s=a.symbol(this.symbol,s/2-e,t-e,2*e,2*e,c).addClass("highcharts-point").add(h),s.isMarker=!0)},t.drawRectangle=function(t,e){var i=t.symbolHeight,s=t.options.squareSymbol;e.legendSymbol=this.chart.renderer.rect(s?(t.symbolWidth-i)/2:0,t.baseline-i+1,s?i:t.symbolWidth,i,o(t.options.symbolRadius,i/2)).addClass("highcharts-point").attr({zIndex:3}).add(e.legendGroup)}}(e||(e={})),e}),e(i,"Core/Series/SeriesDefaults.js",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",defer:!0,formatter:function(){var t=this.series.chart.numberFormatter;return"number"!=typeof this.y?"":t(this.y,-1)},padding:5,style:{fontSize:"11px",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:50},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"}}),e(i,"Core/Series/Series.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/DefaultOptions.js"],i["Core/Foundation.js"],i["Core/Globals.js"],i["Core/Legend/LegendSymbol.js"],i["Core/Series/Point.js"],i["Core/Series/SeriesDefaults.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Renderer/SVG/SVGElement.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a,h,l){var c=t.animObject,p=t.setAnimation,d=e.defaultOptions,u=i.registerEventOptions,f=o.hasTouch,g=o.svg,m=o.win,x=a.seriesTypes,y=l.addEvent,v=l.arrayMax,b=l.arrayMin,S=l.clamp,M=l.cleanRecursively,k=l.correctFloat,w=l.defined,C=l.erase,A=l.error,P=l.extend,T=l.find,O=l.fireEvent,E=l.getNestedProperty,L=l.isArray,D=l.isNumber,z=l.isString,j=l.merge,I=l.objectEach,B=l.pick,R=l.removeEvent,G=l.splat,N=l.syncTimeout;return t=function(){function t(){this.zones=this.yAxis=this.xAxis=this.userOptions=this.tooltipOptions=this.processedYData=this.processedXData=this.points=this.options=this.linkedSeries=this.index=this.eventsToUnbind=this.eventOptions=this.data=this.chart=this._i=void 0}return t.prototype.init=function(t,e){O(this,"init",{options:e});var i=this,o=t.series;this.eventsToUnbind=[],i.chart=t,i.options=i.setOptions(e),e=i.options,i.linkedSeries=[],i.bindAxes(),P(i,{name:e.name,state:"",visible:!1!==e.visible,selected:!0===e.selected}),u(this,e);var s,r=e.events;(r&&r.click||e.point&&e.point.events&&e.point.events.click||e.allowPointSelect)&&(t.runTrackerClick=!0),i.getColor(),i.getSymbol(),i.parallelArrays.forEach(function(t){i[t+"Data"]||(i[t+"Data"]=[])}),i.isCartesian&&(t.hasCartesianSeries=!0),o.length&&(s=o[o.length-1]),i._i=B(s&&s._i,-1)+1,i.opacity=i.options.opacity,t.orderSeries(this.insert(o)),e.dataSorting&&e.dataSorting.enabled?i.setDataSortingOptions():i.points||i.data||i.setData(e.data,!1),O(this,"afterInit")},t.prototype.is=function(t){return x[t]&&this instanceof x[t]},t.prototype.insert=function(t){var e,i=this.options.index;if(D(i)){for(e=t.length;e--;)if(i>=B(t[e].options.index,t[e]._i)){t.splice(e+1,0,this);break}-1===e&&t.unshift(this),e+=1}else t.push(this);return B(e,t.length-1)},t.prototype.bindAxes=function(){var t,e=this,i=e.options,o=e.chart;O(this,"bindAxes",null,function(){(e.axisTypes||[]).forEach(function(s){var r=0;o[s].forEach(function(o){t=o.options,(i[s]===r&&!t.isInternal||void 0!==i[s]&&i[s]===t.id||void 0===i[s]&&0===t.index)&&(e.insert(o.series),e[s]=o,o.isDirty=!0),t.isInternal||r++}),e[s]||e.optionalAxis===s||A(18,!0,o)})}),O(this,"afterBindAxes")},t.prototype.updateParallelArrays=function(t,e){var i=t.series,o=arguments,s=D(e)?function(o){var s="y"===o&&i.toYData?i.toYData(t):t[o];i[o+"Data"][e]=s}:function(t){Array.prototype[e].apply(i[t+"Data"],Array.prototype.slice.call(o,2))};i.parallelArrays.forEach(s)},t.prototype.hasData=function(){return this.visible&&void 0!==this.dataMax&&void 0!==this.dataMin||this.visible&&this.yData&&0<this.yData.length},t.prototype.autoIncrement=function(t){var e,i=this.options,o=i.pointIntervalUnit,s=i.relativeXValue,r=this.chart.time,n=this.xIncrement;return n=B(n,i.pointStart,0),this.pointInterval=e=B(this.pointInterval,i.pointInterval,1),s&&D(t)&&(e*=t),o&&(i=new r.Date(n),"day"===o?r.set("Date",i,r.get("Date",i)+e):"month"===o?r.set("Month",i,r.get("Month",i)+e):"year"===o&&r.set("FullYear",i,r.get("FullYear",i)+e),e=i.getTime()-n),s&&D(t)?n+e:(this.xIncrement=n+e,n)},t.prototype.setDataSortingOptions=function(){var t=this.options;P(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),w(t.pointRange)||(t.pointRange=1)},t.prototype.setOptions=function(t){var e=this.chart,i=e.options,o=i.plotOptions,s=e.userOptions||{};t=j(t),e=e.styledMode;var r={plotOptions:o,userOptions:t};O(this,"setOptions",r);var n=r.plotOptions[this.type],a=s.plotOptions||{};return this.userOptions=r.userOptions,s=j(n,o.series,s.plotOptions&&s.plotOptions[this.type],t),this.tooltipOptions=j(d.tooltip,d.plotOptions.series&&d.plotOptions.series.tooltip,d.plotOptions[this.type].tooltip,i.tooltip.userOptions,o.series&&o.series.tooltip,o[this.type].tooltip,t.tooltip),this.stickyTracking=B(t.stickyTracking,a[this.type]&&a[this.type].stickyTracking,a.series&&a.series.stickyTracking,!(!this.tooltipOptions.shared||this.noSharedTooltip)||s.stickyTracking),null===n.marker&&delete s.marker,this.zoneAxis=s.zoneAxis,o=this.zones=(s.zones||[]).slice(),!s.negativeColor&&!s.negativeFillColor||s.zones||(i={value:s[this.zoneAxis+"Threshold"]||s.threshold||0,className:"highcharts-negative"},e||(i.color=s.negativeColor,i.fillColor=s.negativeFillColor),o.push(i)),o.length&&w(o[o.length-1].value)&&o.push(e?{}:{color:this.color,fillColor:this.fillColor}),O(this,"afterSetOptions",{options:s}),s},t.prototype.getName=function(){return B(this.options.name,"Series "+(this.index+1))},t.prototype.getCyclic=function(t,e,i){var o=this.chart,s=this.userOptions,r=t+"Index",n=t+"Counter",a=i?i.length:B(o.options.chart[t+"Count"],o[t+"Count"]);if(!e){var h=B(s[r],s["_"+r]);w(h)||(o.series.length||(o[n]=0),s["_"+r]=h=o[n]%a,o[n]+=1),i&&(e=i[h])}void 0!==h&&(this[r]=h),this[t]=e},t.prototype.getColor=function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||d.plotOptions[this.type].color,this.chart.options.colors)},t.prototype.getPointsCollection=function(){return(this.hasGroupedData?this.points:this.data)||[]},t.prototype.getSymbol=function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},t.prototype.findPointIndex=function(t,e){var i,o,s=t.id,n=t.x,a=this.points,h=this.options.dataSorting;if(s)(h=this.chart.get(s))instanceof r&&(i=h);else if((this.linkedParent||this.enabledDataSorting||this.options.relativeXValue)&&(i=function(e){return!e.touched&&e.index===t.index},h&&h.matchByName?i=function(e){return!e.touched&&e.name===t.name}:this.options.relativeXValue&&(i=function(e){return!e.touched&&e.options.x===t.x}),!(i=T(a,i))))return;if(i){var l=i&&i.index;void 0!==l&&(o=!0)}return void 0===l&&D(n)&&(l=this.xData.indexOf(n,e)),-1!==l&&void 0!==l&&this.cropped&&(l=l>=this.cropStart?l-this.cropStart:l),!o&&D(l)&&a[l]&&a[l].touched&&(l=void 0),l},t.prototype.updateData=function(t,e){var i,o,s,r=this.options,n=r.dataSorting,a=this.points,h=[],l=this.requireSorting,c=t.length===a.length,p=!0;if(this.xIncrement=null,t.forEach(function(t,e){var o=w(t)&&this.pointClass.prototype.optionsToObject.call({series:this},t)||{},p=o.x;o.id||D(p)?(-1===(o=this.findPointIndex(o,s))||void 0===o?h.push(t):a[o]&&t!==r.data[o]?(a[o].update(t,!1,null,!1),a[o].touched=!0,l&&(s=o+1)):a[o]&&(a[o].touched=!0),(!c||e!==o||n&&n.enabled||this.hasDerivedData)&&(i=!0)):h.push(t)},this),i)for(t=a.length;t--;)(o=a[t])&&!o.touched&&o.remove&&o.remove(!1,e);else!c||n&&n.enabled?p=!1:(t.forEach(function(t,e){t!==a[e].y&&a[e].update&&a[e].update(t,!1,null,!1)}),h.length=0);return a.forEach(function(t){t&&(t.touched=!1)}),!!p&&(h.forEach(function(t){this.addPoint(t,!1,null,null,!1)},this),null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=v(this.xData),this.autoIncrement()),!0)},t.prototype.setData=function(t,e,i,o){var s=this,r=s.points,n=r&&r.length||0,a=s.options,h=s.chart,l=a.dataSorting,c=s.xAxis,p=a.turboThreshold,d=this.xData,u=this.yData,f=s.pointArrayMap;f=f&&f.length;var g,m=a.keys,x=0,y=1,v=null;if(!h.options.chart.allowMutatingData){a.data&&delete s.options.data,s.userOptions.data&&delete s.userOptions.data;var b=j(!0,t)}if(b=(t=b||t||[]).length,e=B(e,!0),l&&l.enabled&&(t=this.sortData(t)),h.options.chart.allowMutatingData&&!1!==o&&b&&n&&!s.cropped&&!s.hasGroupedData&&s.visible&&!s.isSeriesBoosting&&(g=this.updateData(t,i)),!g){if(s.xIncrement=null,s.colorCounter=0,this.parallelArrays.forEach(function(t){s[t+"Data"].length=0}),p&&b>p)if(v=s.getFirstValidPoint(t),D(v))for(i=0;i<b;i++)d[i]=this.autoIncrement(),u[i]=t[i];else if(L(v))if(f)if(v.length===f)for(i=0;i<b;i++)d[i]=this.autoIncrement(),u[i]=t[i];else for(i=0;i<b;i++)o=t[i],d[i]=o[0],u[i]=o.slice(1,f+1);else if(m&&(x=m.indexOf("x"),y=m.indexOf("y"),x=0<=x?x:0,y=0<=y?y:1),1===v.length&&(y=0),x===y)for(i=0;i<b;i++)d[i]=this.autoIncrement(),u[i]=t[i][y];else for(i=0;i<b;i++)o=t[i],d[i]=o[x],u[i]=o[y];else A(12,!1,h);else for(i=0;i<b;i++)void 0!==t[i]&&(o={series:s},s.pointClass.prototype.applyOptions.apply(o,[t[i]]),s.updateParallelArrays(o,i));for(u&&z(u[0])&&A(14,!0,h),s.data=[],s.options.data=s.userOptions.data=t,i=n;i--;)r[i]&&r[i].destroy&&r[i].destroy();c&&(c.minRange=c.userMinRange),s.isDirty=h.isDirtyBox=!0,s.isDirtyData=!!r,i=!1}"point"===a.legendType&&(this.processData(),this.generatePoints()),e&&h.redraw(i)},t.prototype.sortData=function(t){var e=this,i=e.options.dataSorting.sortKey||"y",o=function(t,e){return w(e)&&t.pointClass.prototype.optionsToObject.call({series:t},e)||{}};return t.forEach(function(i,s){t[s]=o(e,i),t[s].index=s},this),t.concat().sort(function(t,e){return t=E(i,t),(e=E(i,e))<t?-1:e>t?1:0}).forEach(function(t,e){t.x=e},this),e.linkedSeries&&e.linkedSeries.forEach(function(e){var i=e.options,s=i.data;i.dataSorting&&i.dataSorting.enabled||!s||(s.forEach(function(i,r){s[r]=o(e,i),t[r]&&(s[r].x=t[r].x,s[r].index=r)}),e.setData(s,!1))}),t},t.prototype.getProcessedData=function(t){var e=this.xAxis,i=this.options,o=i.cropThreshold,s=t||this.getExtremesFromAll||i.getExtremesFromAll,r=this.isCartesian;t=e&&e.val2lin,i=!(!e||!e.logarithmic);var n=0,a=this.xData,h=this.yData,l=this.requireSorting,c=!1,p=a.length;if(e){var d=(c=e.getExtremes()).min,u=c.max;c=!(!e.categories||e.names.length)}if(r&&this.sorted&&!s&&(!o||p>o||this.forceCrop))if(a[p-1]<d||a[0]>u)a=[],h=[];else if(this.yData&&(a[0]<d||a[p-1]>u)){var f=this.cropData(this.xData,this.yData,d,u);a=f.xData,h=f.yData,n=f.start,f=!0}for(o=a.length||1;--o;)if(0<(e=i?t(a[o])-t(a[o-1]):a[o]-a[o-1])&&(void 0===g||e<g))var g=e;else 0>e&&l&&!c&&(A(15,!1,this.chart),l=!1);return{xData:a,yData:h,cropped:f,cropStart:n,closestPointRange:g}},t.prototype.processData=function(t){var e=this.xAxis;if(this.isCartesian&&!this.isDirty&&!e.isDirty&&!this.yAxis.isDirty&&!t)return!1;t=this.getProcessedData(),this.cropped=t.cropped,this.cropStart=t.cropStart,this.processedXData=t.xData,this.processedYData=t.yData,this.closestPointRange=this.basePointRange=t.closestPointRange,O(this,"afterProcessData")},t.prototype.cropData=function(t,e,i,o,s){var r,n=t.length,a=0,h=n;for(s=B(s,this.cropShoulder),r=0;r<n;r++)if(t[r]>=i){a=Math.max(0,r-s);break}for(i=r;i<n;i++)if(t[i]>o){h=i+s;break}return{xData:t.slice(a,h),yData:e.slice(a,h),start:a,end:h}},t.prototype.generatePoints=function(){var t=this.options,e=this.processedData||t.data,i=this.processedXData,o=this.processedYData,s=this.pointClass,r=i.length,n=this.cropStart||0,a=this.hasGroupedData,h=t.keys,l=[];t=t.dataGrouping&&t.dataGrouping.groupAll?n:0;var c,p,d=this.data;if(!d&&!a){var u=[];u.length=e.length,d=this.data=u}for(h&&a&&(this.options.keys=!1),p=0;p<r;p++){if(u=n+p,a){var f=(new s).init(this,[i[p]].concat(G(o[p])));f.dataGroup=this.groupMap[t+p],f.dataGroup.options&&(f.options=f.dataGroup.options,P(f,f.dataGroup.options),delete f.dataLabels)}else(f=d[u])||void 0===e[u]||(d[u]=f=(new s).init(this,e[u],i[p]));f&&(f.index=a?t+p:u,l[p]=f)}if(this.options.keys=h,d&&(r!==(c=d.length)||a))for(p=0;p<c;p++)p!==n||a||(p+=r),d[p]&&(d[p].destroyElements(),d[p].plotX=void 0);this.data=d,this.points=l,O(this,"afterGeneratePoints")},t.prototype.getXExtremes=function(t){return{min:b(t),max:v(t)}},t.prototype.getExtremes=function(t,e){var i=this.xAxis,o=this.yAxis,s=this.processedXData||this.xData,r=[],n=this.requireSorting?this.cropShoulder:0;o=!!o&&o.positiveValuesOnly;var a,h=0,l=0,c=0,p=(t=t||this.stackedYData||this.processedYData||[]).length;if(i){var d=i.getExtremes();h=d.min,l=d.max}for(a=0;a<p;a++){var u=s[a];d=t[a];var f=(D(d)||L(d))&&(d.length||0<d||!o);if(u=e||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!i||(s[a+n]||u)>=h&&(s[a-n]||u)<=l,f&&u)if(f=d.length)for(;f--;)D(d[f])&&(r[c++]=d[f]);else r[c++]=d}return t={activeYData:r,dataMin:b(r),dataMax:v(r)},O(this,"afterGetExtremes",{dataExtremes:t}),t},t.prototype.applyExtremes=function(){var t=this.getExtremes();return this.dataMin=t.dataMin,this.dataMax=t.dataMax,t},t.prototype.getFirstValidPoint=function(t){for(var e=t.length,i=0,o=null;null===o&&i<e;)o=t[i],i++;return o},t.prototype.translate=function(){this.processedXData||this.processData(),this.generatePoints();var t,e,i=this.options,o=i.stacking,s=this.xAxis,r=s.categories,n=this.enabledDataSorting,a=this.yAxis,h=this.points,l=h.length,c=this.pointPlacementToXValue(),p=!!c,d=i.threshold,u=i.startFromThreshold?d:0,f=this.zoneAxis||"y",g=Number.MAX_VALUE;for(t=0;t<l;t++){var m=h[t],x=m.x,y=void 0,v=void 0,b=m.y,M=m.low,C=o&&a.stacking&&a.stacking.stacks[(this.negStacks&&b<(u?0:d)?"-":"")+this.stackKey];if((a.positiveValuesOnly&&!a.validatePositiveValue(b)||s.positiveValuesOnly&&!s.validatePositiveValue(x))&&(m.isNull=!0),m.plotX=e=k(S(s.translate(x,0,0,0,1,c,"flags"===this.type),-1e5,1e5)),o&&this.visible&&C&&C[x]){var A=this.getStackIndicator(A,x,this.index);m.isNull||(v=(y=C[x]).points[A.key])}if(L(v)&&(M=v[0],b=v[1],M===u&&A.key===C[x].base&&(M=B(D(d)&&d,a.min)),a.positiveValuesOnly&&0>=M&&(M=null),m.total=m.stackTotal=y.total,m.percentage=y.total&&m.y/y.total*100,m.stackY=b,this.irregularWidths||y.setOffset(this.pointXOffset||0,this.barW||0)),m.yBottom=w(M)?S(a.translate(M,0,1,0,1),-1e5,1e5):null,this.dataModify&&(b=this.dataModify.modifyValue(b,t)),m.plotY=void 0,D(b)&&(void 0!==(y=a.translate(b,!1,!0,!1,!0))&&(m.plotY=S(y,-1e5,1e5))),m.isInside=this.isPointInside(m),m.clientX=p?k(s.translate(x,0,0,0,1,c)):e,m.negative=m[f]<(i[f+"Threshold"]||d||0),m.category=B(r&&r[m.x],m.x),!m.isNull&&!1!==m.visible){void 0!==P&&(g=Math.min(g,Math.abs(e-P)));var P=e}m.zone=this.zones.length?m.getZone():void 0,!m.graphic&&this.group&&n&&(m.isNew=!0)}this.closestPointRangePx=g,O(this,"afterTranslate")},t.prototype.getValidPoints=function(t,e,i){var o=this.chart;return(t||this.points||[]).filter(function(t){return!(e&&!o.isInsidePlot(t.plotX,t.plotY,{inverted:o.inverted}))&&(!1!==t.visible&&(i||!t.isNull))})},t.prototype.getClipBox=function(){var t=this.chart,e=this.xAxis,i=this.yAxis,o=j(t.clipBox);return e&&e.len!==t.plotSizeX&&(o.width=e.len),i&&i.len!==t.plotSizeY&&(o.height=i.len),o},t.prototype.getSharedClipKey=function(){return this.sharedClipKey=(this.options.xAxis||0)+","+(this.options.yAxis||0)},t.prototype.setClip=function(){var t=this.chart,e=this.group,i=this.markerGroup,o=t.sharedClips;t=t.renderer;var s=this.getClipBox(),r=this.getSharedClipKey(),n=o[r];n?n.animate(s):o[r]=n=t.clipRect(s),e&&e.clip(!1===this.options.clip?void 0:n),i&&i.clip()},t.prototype.animate=function(t){var e=this.chart,i=this.group,o=this.markerGroup,s=e.inverted,r=c(this.options.animation),n=[this.getSharedClipKey(),r.duration,r.easing,r.defer].join(),a=e.sharedClips[n],h=e.sharedClips[n+"m"];if(t&&i)r=this.getClipBox(),a?a.attr("height",r.height):(r.width=0,s&&(r.x=e.plotHeight),a=e.renderer.clipRect(r),e.sharedClips[n]=a,h=e.renderer.clipRect({x:s?(e.plotSizeX||0)+99:-99,y:s?-e.plotLeft:-e.plotTop,width:99,height:s?e.chartWidth:e.chartHeight}),e.sharedClips[n+"m"]=h),i.clip(a),o&&o.clip(h);else if(a&&!a.hasClass("highcharts-animating")){e=this.getClipBox();var l=r.step;o&&o.element.childNodes.length&&(r.step=function(t,e){l&&l.apply(e,arguments),h&&h.element&&h.attr(e.prop,"width"===e.prop?t+99:t)}),a.addClass("highcharts-animating").animate(e,r)}},t.prototype.afterAnimate=function(){var t=this;this.setClip(),I(this.chart.sharedClips,function(e,i,o){e&&!t.chart.container.querySelector('[clip-path="url(#'+e.id+')"]')&&(e.destroy(),delete o[i])}),this.finishedAnimating=!0,O(this,"afterAnimate")},t.prototype.drawPoints=function(){var t,e,i=this.points,o=this.chart,s=this.options.marker,r=this[this.specialGroup]||this.markerGroup,n=this.xAxis,a=B(s.enabled,!(n&&!n.isRadial)||null,this.closestPointRangePx>=s.enabledThreshold*s.radius);if(!1!==s.enabled||this._hasPointMarkers)for(t=0;t<i.length;t++){var h=i[t],l=(e=h.graphic)?"animate":"attr",c=h.marker||{},p=!!h.marker;if((a&&void 0===c.enabled||c.enabled)&&!h.isNull&&!1!==h.visible){var d=B(c.symbol,this.symbol,"rect"),u=this.markerAttribs(h,h.selected&&"select");this.enabledDataSorting&&(h.startXPos=n.reversed?-(u.width||0):n.width);var f=!1!==h.isInside;e?e[f?"show":"hide"](f).animate(u):f&&(0<(u.width||0)||h.hasImage)&&(h.graphic=e=o.renderer.symbol(d,u.x,u.y,u.width,u.height,p?c:s).add(r),this.enabledDataSorting&&o.hasRendered&&(e.attr({x:h.startXPos}),l="animate")),e&&"animate"===l&&e[f?"show":"hide"](f).animate(u),e&&!o.styledMode&&e[l](this.pointAttribs(h,h.selected&&"select")),e&&e.addClass(h.getClassName(),!0)}else e&&(h.graphic=e.destroy())}},t.prototype.markerAttribs=function(t,e){var i=this.options,o=i.marker,s=t.marker||{},r=s.symbol||o.symbol,n=B(s.radius,o&&o.radius);return e&&(o=o.states[e],e=s.states&&s.states[e],n=B(e&&e.radius,o&&o.radius,n&&n+(o&&o.radiusPlus||0))),t.hasImage=r&&0===r.indexOf("url"),t.hasImage&&(n=0),t=D(n)?{x:i.crisp?Math.floor(t.plotX-n):t.plotX-n,y:t.plotY-n}:{},n&&(t.width=t.height=2*n),t},t.prototype.pointAttribs=function(t,e){var i=this.options.marker,o=t&&t.options,s=o&&o.marker||{},r=o&&o.color,n=t&&t.color,a=t&&t.zone&&t.zone.color,h=this.color;return t=B(s.lineWidth,i.lineWidth),o=1,h=r||a||n||h,r=s.fillColor||i.fillColor||h,n=s.lineColor||i.lineColor||h,e=e||"normal",i=i.states[e]||{},e=s.states&&s.states[e]||{},t=B(e.lineWidth,i.lineWidth,t+B(e.lineWidthPlus,i.lineWidthPlus,0)),r=e.fillColor||i.fillColor||r,{stroke:n=e.lineColor||i.lineColor||n,"stroke-width":t,fill:r,opacity:o=B(e.opacity,i.opacity,o)}},t.prototype.destroy=function(t){var e,i,o,s=this,r=s.chart,n=/AppleWebKit\/533/.test(m.navigator.userAgent),a=s.data||[];for(O(s,"destroy",{keepEventsForUpdate:t}),this.removeEvents(t),(s.axisTypes||[]).forEach(function(t){(o=s[t])&&o.series&&(C(o.series,s),o.isDirty=o.forceRedraw=!0)}),s.legendItem&&s.chart.legend.destroyItem(s),e=a.length;e--;)(i=a[e])&&i.destroy&&i.destroy();s.clips&&s.clips.forEach(function(t){return t.destroy()}),l.clearTimeout(s.animationTimeout),I(s,function(t,e){t instanceof h&&!t.survive&&t[n&&"group"===e?"hide":"destroy"]()}),r.hoverSeries===s&&(r.hoverSeries=void 0),C(r.series,s),r.orderSeries(),I(s,function(e,i){t&&"hcEvents"===i||delete s[i]})},t.prototype.applyZones=function(){var t,e,i,o,s,r,n,a,h=this,l=this.chart,c=l.renderer,p=this.zones,d=this.clips||[],u=this.graph,f=this.area,g=Math.max(l.chartWidth,l.chartHeight),m=this[(this.zoneAxis||"y")+"Axis"],x=l.inverted,y=!1;if(p.length&&(u||f)&&m&&void 0!==m.min){var v=m.reversed,b=m.horiz;u&&!this.showLine&&u.hide(),f&&f.hide();var M=m.getExtremes();p.forEach(function(p,k){t=v?b?l.plotWidth:0:b?0:m.toPixels(M.min)||0,t=S(B(e,t),0,g),e=S(Math.round(m.toPixels(B(p.value,M.max),!0)||0),0,g),y&&(t=e=m.toPixels(M.max)),o=Math.abs(t-e),s=Math.min(t,e),r=Math.max(t,e),m.isXAxis?(i={x:x?r:s,y:0,width:o,height:g},b||(i.x=l.plotHeight-i.x)):(i={x:0,y:x?r:s,width:g,height:o},b&&(i.y=l.plotWidth-i.y)),x&&c.isVML&&(i=m.isXAxis?{x:0,y:v?s:r,height:i.width,width:l.chartWidth}:{x:i.y-l.plotLeft-l.spacingBox.x,y:0,width:i.height,height:l.chartHeight}),d[k]?d[k].animate(i):d[k]=c.clipRect(i),n=h["zone-area-"+k],a=h["zone-graph-"+k],u&&a&&a.clip(d[k]),f&&n&&n.clip(d[k]),y=p.value>M.max,h.resetZones&&0===e&&(e=void 0)}),this.clips=d}else h.visible&&(u&&u.show(),f&&f.show())},t.prototype.invertGroups=function(t){function e(){["group","markerGroup"].forEach(function(e){i[e]&&(o.renderer.isVML&&i[e].attr({width:i.yAxis.len,height:i.xAxis.len}),i[e].width=i.yAxis.len,i[e].height=i.xAxis.len,i[e].invert(!i.isRadialSeries&&t))})}var i=this,o=i.chart;i.xAxis&&(i.eventsToUnbind.push(y(o,"resize",e)),e(),i.invertGroups=e)},t.prototype.plotGroup=function(t,e,i,o,s){var r=this[t],n=!r;return i={visibility:i,zIndex:o||.1},void 0===this.opacity||this.chart.styledMode||"inactive"===this.state||(i.opacity=this.opacity),n&&(this[t]=r=this.chart.renderer.g().add(s)),r.addClass("highcharts-"+e+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(w(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(r.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),r.attr(i)[n?"attr":"animate"](this.getPlotBox()),r},t.prototype.getPlotBox=function(){var t=this.chart,e=this.xAxis,i=this.yAxis;return t.inverted&&(e=i,i=this.xAxis),{translateX:e?e.left:t.plotLeft,translateY:i?i.top:t.plotTop,scaleX:1,scaleY:1}},t.prototype.removeEvents=function(t){t||R(this),this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(t){t()}),this.eventsToUnbind.length=0)},t.prototype.render=function(){var t=this,e=t.chart,i=t.options,o=c(i.animation),s=t.visible?"inherit":"hidden",r=i.zIndex,n=t.hasRendered,a=e.seriesGroup,h=e.inverted;e=!t.finishedAnimating&&e.renderer.isSVG?o.duration:0,O(this,"render");var l=t.plotGroup("group","series",s,r,a);t.markerGroup=t.plotGroup("markerGroup","markers",s,r,a),!1!==i.clip&&t.setClip(),t.animate&&e&&t.animate(!0),l.inverted=!!B(t.invertible,t.isCartesian)&&h,t.drawGraph&&(t.drawGraph(),t.applyZones()),t.visible&&t.drawPoints(),t.drawDataLabels&&t.drawDataLabels(),t.redrawPoints&&t.redrawPoints(),t.drawTracker&&!1!==t.options.enableMouseTracking&&t.drawTracker(),t.invertGroups(h),t.animate&&e&&t.animate(),n||(e&&o.defer&&(e+=o.defer),t.animationTimeout=N(function(){t.afterAnimate()},e||0)),t.isDirty=!1,t.hasRendered=!0,O(t,"afterRender")},t.prototype.redraw=function(){var t=this.chart,e=this.isDirty||this.isDirtyData,i=this.group,o=this.xAxis,s=this.yAxis;i&&(t.inverted&&i.attr({width:t.plotWidth,height:t.plotHeight}),i.animate({translateX:B(o&&o.left,t.plotLeft),translateY:B(s&&s.top,t.plotTop)})),this.translate(),this.render(),e&&delete this.kdTree},t.prototype.searchPoint=function(t,e){var i=this.xAxis,o=this.yAxis,s=this.chart.inverted;return this.searchKDTree({clientX:s?i.len-t.chartY+i.pos:t.chartX-i.pos,plotY:s?o.len-t.chartX+o.pos:t.chartY-o.pos},e,t)},t.prototype.buildKDTree=function(t){this.buildingKdTree=!0;var e=this,i=-1<e.options.findNearestPointBy.indexOf("y")?2:1;delete e.kdTree,N(function(){e.kdTree=function t(i,o,s){var r=i&&i.length;if(r){var n=e.kdAxisArray[o%s];return i.sort(function(t,e){return t[n]-e[n]}),{point:i[r=Math.floor(r/2)],left:t(i.slice(0,r),o+1,s),right:t(i.slice(r+1),o+1,s)}}}(e.getValidPoints(null,!e.directTouch),i,i),e.buildingKdTree=!1},e.options.kdNow||t&&"touchstart"===t.type?0:1)},t.prototype.searchKDTree=function(t,e,i){var o=this,s=this.kdAxisArray[0],r=this.kdAxisArray[1],n=e?"distX":"dist";if(e=-1<o.options.findNearestPointBy.indexOf("y")?2:1,this.kdTree||this.buildingKdTree||this.buildKDTree(i),this.kdTree)return function t(e,i,a,h){var l=i.point,c=o.kdAxisArray[a%h],p=l,d=w(e[s])&&w(l[s])?Math.pow(e[s]-l[s],2):null,u=w(e[r])&&w(l[r])?Math.pow(e[r]-l[r],2):null;return u=(d||0)+(u||0),l.dist=w(u)?Math.sqrt(u):Number.MAX_VALUE,l.distX=w(d)?Math.sqrt(d):Number.MAX_VALUE,u=0>(c=e[c]-l[c])?"left":"right",d=0>c?"right":"left",i[u]&&(p=(u=t(e,i[u],a+1,h))[n]<p[n]?u:l),i[d]&&Math.sqrt(c*c)<p[n]&&(p=(e=t(e,i[d],a+1,h))[n]<p[n]?e:p),p}(t,this.kdTree,e,e)},t.prototype.pointPlacementToXValue=function(){var t=this.options,e=t.pointRange,i=this.xAxis;return"between"===(t=t.pointPlacement)&&(t=i.reversed?-.5:.5),D(t)?t*(e||i.pointRange):0},t.prototype.isPointInside=function(t){var e=this.chart,i=this.xAxis,o=this.yAxis;return void 0!==t.plotY&&void 0!==t.plotX&&0<=t.plotY&&t.plotY<=(o?o.len:e.plotHeight)&&0<=t.plotX&&t.plotX<=(i?i.len:e.plotWidth)},t.prototype.drawTracker=function(){var t=this,e=t.options,i=e.trackByArea,o=[].concat(i?t.areaPath:t.graphPath),s=t.chart,r=s.pointer,n=s.renderer,a=s.options.tooltip.snap,h=t.tracker,l=function(e){s.hoverSeries!==t&&t.onMouseOver()},c="rgba(192,192,192,"+(g?1e-4:.002)+")";h?h.attr({d:o}):t.graph&&(t.tracker=n.path(o).attr({visibility:t.visible?"inherit":"hidden",zIndex:2}).addClass(i?"highcharts-tracker-area":"highcharts-tracker-line").add(t.group),s.styledMode||t.tracker.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:c,fill:i?c:"none","stroke-width":t.graph.strokeWidth()+(i?0:2*a)}),[t.tracker,t.markerGroup,t.dataLabelsGroup].forEach(function(t){t&&(t.addClass("highcharts-tracker").on("mouseover",l).on("mouseout",function(t){r.onTrackerMouseOut(t)}),e.cursor&&!s.styledMode&&t.css({cursor:e.cursor}),f)&&t.on("touchstart",l)})),O(this,"afterDrawTracker")},t.prototype.addPoint=function(t,e,i,o,s){var r=this.options,n=this.data,a=this.chart,h=this.xAxis;h=h&&h.hasNames&&h.names;var l,c=r.data,p=this.xData;e=B(e,!0);var d={series:this};this.pointClass.prototype.applyOptions.apply(d,[t]);var u=d.x,f=p.length;if(this.requireSorting&&u<p[f-1])for(l=!0;f&&p[f-1]>u;)f--;this.updateParallelArrays(d,"splice",f,0,0),this.updateParallelArrays(d,f),h&&d.name&&(h[u]=d.name),c.splice(f,0,t),(l||this.processedData)&&(this.data.splice(f,0,null),this.processData()),"point"===r.legendType&&this.generatePoints(),i&&(n[0]&&n[0].remove?n[0].remove(!1):(n.shift(),this.updateParallelArrays(d,"shift"),c.shift())),!1!==s&&O(this,"addPoint",{point:d}),this.isDirtyData=this.isDirty=!0,e&&a.redraw(o)},t.prototype.removePoint=function(t,e,i){var o=this,s=o.data,r=s[t],n=o.points,a=o.chart,h=function(){n&&n.length===s.length&&n.splice(t,1),s.splice(t,1),o.options.data.splice(t,1),o.updateParallelArrays(r||{series:o},"splice",t,1),r&&r.destroy(),o.isDirty=!0,o.isDirtyData=!0,e&&a.redraw()};p(i,a),e=B(e,!0),r?r.firePointEvent("remove",null,h):h()},t.prototype.remove=function(t,e,i,o){function s(){r.destroy(o),n.isDirtyLegend=n.isDirtyBox=!0,n.linkSeries(),B(t,!0)&&n.redraw(e)}var r=this,n=r.chart;!1!==i?O(r,"remove",null,s):s()},t.prototype.update=function(t,e){t=M(t,this.userOptions),O(this,"update",{options:t});var i,o=this,s=o.chart,r=o.userOptions,n=o.initialType||o.type,a=s.options.plotOptions,h=x[n].prototype,l=o.finishedAnimating&&{animation:!1},c={},p=["eventOptions","navigatorSeries","baseSeries"],d=t.type||r.type||s.options.chart.type,u=!(this.hasDerivedData||d&&d!==this.type||void 0!==t.pointStart||void 0!==t.pointInterval||void 0!==t.relativeXValue||t.joinBy||t.mapData||o.hasOptionChanged("dataGrouping")||o.hasOptionChanged("pointStart")||o.hasOptionChanged("pointInterval")||o.hasOptionChanged("pointIntervalUnit")||o.hasOptionChanged("keys"));if(d=d||n,u&&(p.push("data","isDirtyData","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","_hasPointLabels","clips","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX"),!1!==t.visible&&p.push("area","graph"),o.parallelArrays.forEach(function(t){p.push(t+"Data")}),t.data&&(t.dataSorting&&P(o.options.dataSorting,t.dataSorting),this.setData(t.data,!1))),t=j(r,l,{index:void 0===r.index?o.index:r.index,pointStart:B(a&&a.series&&a.series.pointStart,r.pointStart,o.xData[0])},!u&&{data:o.options.data},t),u&&t.data&&(t.data=o.options.data),(p=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(p)).forEach(function(t){p[t]=o[t],delete o[t]}),a=!1,x[d]){if(a=d!==o.type,o.remove(!1,!1,!1,!0),a)if(Object.setPrototypeOf)Object.setPrototypeOf(o,x[d].prototype);else{for(i in l=Object.hasOwnProperty.call(o,"hcEvents")&&o.hcEvents,h)o[i]=void 0;P(o,x[d].prototype),l?o.hcEvents=l:delete o.hcEvents}}else A(17,!0,s,{missingModuleFor:d});if(p.forEach(function(t){o[t]=p[t]}),o.init(s,t),u&&this.points){var f=o.options;!1===f.visible?(c.graphic=1,c.dataLabel=1):o._hasPointLabels||(t=f.marker,h=f.dataLabels,!t||!1!==t.enabled&&(r.marker&&r.marker.symbol)===t.symbol||(c.graphic=1),h&&!1===h.enabled&&(c.dataLabel=1)),this.points.forEach(function(t){t&&t.series&&(t.resolveColor(),Object.keys(c).length&&t.destroyElements(c),!1===f.showInLegend&&t.legendItem&&s.legend.destroyItem(t))},this)}o.initialType=n,s.linkSeries(),a&&o.linkedSeries.length&&(o.isDirtyData=!0),O(this,"afterUpdate"),B(e,!0)&&s.redraw(!!u&&void 0)},t.prototype.setName=function(t){this.name=this.options.name=this.userOptions.name=t,this.chart.isDirtyLegend=!0},t.prototype.hasOptionChanged=function(t){var e=this.options[t],i=this.chart.options.plotOptions,o=this.userOptions[t];return o?e!==o:e!==B(i&&i[this.type]&&i[this.type][t],i&&i.series&&i.series[t],e)},t.prototype.onMouseOver=function(){var t=this.chart,e=t.hoverSeries;t.pointer.setHoverChartIndex(),e&&e!==this&&e.onMouseOut(),this.options.events.mouseOver&&O(this,"mouseOver"),this.setState("hover"),t.hoverSeries=this},t.prototype.onMouseOut=function(){var t=this.options,e=this.chart,i=e.tooltip,o=e.hoverPoint;e.hoverSeries=null,o&&o.onMouseOut(),this&&t.events.mouseOut&&O(this,"mouseOut"),!i||this.stickyTracking||i.shared&&!this.noSharedTooltip||i.hide(),e.series.forEach(function(t){t.setState("",!0)})},t.prototype.setState=function(t,e){var i=this,o=i.options,s=i.graph,r=o.inactiveOtherPoints,n=o.states,a=B(n[t||"normal"]&&n[t||"normal"].animation,i.chart.options.chart.animation),h=o.lineWidth,l=0,c=o.opacity;if(t=t||"",i.state!==t&&([i.group,i.markerGroup,i.dataLabelsGroup].forEach(function(e){e&&(i.state&&e.removeClass("highcharts-series-"+i.state),t&&e.addClass("highcharts-series-"+t))}),i.state=t,!i.chart.styledMode)){if(n[t]&&!1===n[t].enabled)return;if(t&&(h=n[t].lineWidth||h+(n[t].lineWidthPlus||0),c=B(n[t].opacity,c)),s&&!s.dashstyle)for(o={"stroke-width":h},s.animate(o,a);i["zone-graph-"+l];)i["zone-graph-"+l].animate(o,a),l+=1;r||[i.group,i.markerGroup,i.dataLabelsGroup,i.labelBySeries].forEach(function(t){t&&t.animate({opacity:c},a)})}e&&r&&i.points&&i.setAllPointsToState(t||void 0)},t.prototype.setAllPointsToState=function(t){this.points.forEach(function(e){e.setState&&e.setState(t)})},t.prototype.setVisible=function(t,e){var i=this,o=i.chart,s=i.legendItem,r=o.options.chart.ignoreHiddenSeries,n=i.visible,a=(i.visible=t=i.options.visible=i.userOptions.visible=void 0===t?!n:t)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(t){i[t]&&i[t][a]()}),o.hoverSeries!==i&&(o.hoverPoint&&o.hoverPoint.series)!==i||i.onMouseOut(),s&&o.legend.colorizeItem(i,t),i.isDirty=!0,i.options.stacking&&o.series.forEach(function(t){t.options.stacking&&t.visible&&(t.isDirty=!0)}),i.linkedSeries.forEach(function(e){e.setVisible(t,!1)}),r&&(o.isDirtyBox=!0),O(i,a),!1!==e&&o.redraw()},t.prototype.show=function(){this.setVisible(!0)},t.prototype.hide=function(){this.setVisible(!1)},t.prototype.select=function(t){this.selected=t=this.options.selected=void 0===t?!this.selected:t,this.checkbox&&(this.checkbox.checked=t),O(this,t?"select":"unselect")},t.prototype.shouldShowTooltip=function(t,e,i){return void 0===i&&(i={}),i.series=this,i.visiblePlotOnly=!0,this.chart.isInsidePlot(t,e,i)},t.defaultOptions=n,t}(),P(t.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,drawLegendSymbol:s.drawLineMarker,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:r,requireSorting:!0,sorted:!0}),a.series=t,t}),e(i,"Extensions/ScrollablePlotArea.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Axis/Axis.js"],i["Core/Chart/Chart.js"],i["Core/Series/Series.js"],i["Core/Renderer/RendererRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r){var n=t.stop,a=r.addEvent,h=r.createElement,l=r.merge,c=r.pick;a(i,"afterSetChartSize",function(t){var i=this.options.chart.scrollablePlotArea,o=i&&i.minWidth;if(i=i&&i.minHeight,!this.renderer.forExport){if(o){if(this.scrollablePixelsX=o=Math.max(0,o-this.chartWidth)){this.scrollablePlotBox=this.renderer.scrollablePlotBox=l(this.plotBox),this.plotBox.width=this.plotWidth+=o,this.inverted?this.clipBox.height+=o:this.clipBox.width+=o;var s={1:{name:"right",value:o}}}}else i&&(this.scrollablePixelsY=o=Math.max(0,i-this.chartHeight))&&(this.scrollablePlotBox=this.renderer.scrollablePlotBox=l(this.plotBox),this.plotBox.height=this.plotHeight+=o,this.inverted?this.clipBox.width+=o:this.clipBox.height+=o,s={2:{name:"bottom",value:o}});s&&!t.skipAxes&&this.axes.forEach(function(t){s[t.side]?t.getPlotLinePath=function(){var i=s[t.side].name,o=this[i];this[i]=o-s[t.side].value;var r=e.prototype.getPlotLinePath.apply(this,arguments);return this[i]=o,r}:(t.setAxisSize(),t.setAxisTranslation())})}}),a(i,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()}),i.prototype.setUpScrolling=function(){var t=this,e={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(e.overflowX="auto"),this.scrollablePixelsY&&(e.overflowY="auto"),this.scrollingParent=h("div",{className:"highcharts-scrolling-parent"},{position:"relative"},this.renderTo),this.scrollingContainer=h("div",{className:"highcharts-scrolling"},e,this.scrollingParent),a(this.scrollingContainer,"scroll",function(){t.pointer&&delete t.pointer.chartPosition}),this.innerContainer=h("div",{className:"highcharts-inner-container"},null,this.scrollingContainer),this.innerContainer.appendChild(this.container),this.setUpScrolling=null},i.prototype.moveFixedElements=function(){var t,e=this.container,i=this.fixedRenderer,o=".highcharts-contextbutton .highcharts-credits .highcharts-legend .highcharts-legend-checkbox .highcharts-navigator-series .highcharts-navigator-xaxis .highcharts-navigator-yaxis .highcharts-navigator .highcharts-reset-zoom .highcharts-drillup-button .highcharts-scrollbar .highcharts-subtitle .highcharts-title".split(" ");this.scrollablePixelsX&&!this.inverted?t=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?t=".highcharts-xaxis":this.scrollablePixelsY&&!this.inverted?t=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(t=".highcharts-yaxis"),t&&o.push(t+":not(.highcharts-radial-axis)",t+"-labels:not(.highcharts-radial-axis-labels)"),o.forEach(function(t){[].forEach.call(e.querySelectorAll(t),function(t){(t.namespaceURI===i.SVG_NS?i.box:i.box.parentNode).appendChild(t),t.style.pointerEvents="auto"})})},i.prototype.applyFixed=function(){var t=!this.fixedDiv,e=this.options.chart,i=e.scrollablePlotArea,o=s.getRendererType();t?(this.fixedDiv=h("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(e.style&&e.style.zIndex||0)+2,top:0},null,!0),this.scrollingContainer&&this.scrollingContainer.parentNode.insertBefore(this.fixedDiv,this.scrollingContainer),this.renderTo.style.overflow="visible",this.fixedRenderer=e=new o(this.fixedDiv,this.chartWidth,this.chartHeight,this.options.chart.style),this.scrollableMask=e.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":c(i.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),a(this,"afterShowResetZoom",this.moveFixedElements),a(this,"afterApplyDrilldown",this.moveFixedElements),a(this,"afterLayOutTitles",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight),(this.scrollableDirty||t)&&(this.scrollableDirty=!1,this.moveFixedElements()),e=this.chartWidth+(this.scrollablePixelsX||0),o=this.chartHeight+(this.scrollablePixelsY||0),n(this.container),this.container.style.width=e+"px",this.container.style.height=o+"px",this.renderer.boxWrapper.attr({width:e,height:o,viewBox:[0,0,e,o].join(" ")}),this.chartBackground.attr({width:e,height:o}),this.scrollingContainer.style.height=this.chartHeight+"px",t&&(i.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*i.scrollPositionX),i.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*i.scrollPositionY)),o=this.axisOffset,t=this.plotTop-o[0]-1,i=this.plotLeft-o[3]-1,e=this.plotTop+this.plotHeight+o[2]+1,o=this.plotLeft+this.plotWidth+o[1]+1;var r=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),l=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);t=this.scrollablePixelsX?[["M",0,t],["L",this.plotLeft-1,t],["L",this.plotLeft-1,e],["L",0,e],["Z"],["M",r,t],["L",this.chartWidth,t],["L",this.chartWidth,e],["L",r,e],["Z"]]:this.scrollablePixelsY?[["M",i,0],["L",i,this.plotTop-1],["L",o,this.plotTop-1],["L",o,0],["Z"],["M",i,l],["L",i,this.chartHeight],["L",o,this.chartHeight],["L",o,l],["Z"]]:[["M",0,0]],"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:t})},a(e,"afterInit",function(){this.chart.scrollableDirty=!0}),a(o,"show",function(){this.chart.scrollableDirty=!0})}),e(i,"Core/Axis/StackingAxis.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Axis/Axis.js"],i["Core/Utilities.js"]],function(t,e,i){var o,s=t.getDeferredAnimation,r=i.addEvent,n=i.destroyObjectProperties,a=i.fireEvent,h=i.isNumber,l=i.objectEach;return function(t){function e(){var t=this.stacking;if(t){var e=t.stacks;l(e,function(t,i){n(t),e[i]=null}),t&&t.stackTotalGroup&&t.stackTotalGroup.destroy()}}function i(){this.stacking||(this.stacking=new c(this))}var o=[];t.compose=function(t){return-1===o.indexOf(t)&&(o.push(t),r(t,"init",i),r(t,"destroy",e)),t};var c=function(){function t(t){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=t}return t.prototype.buildStacks=function(){var t,e=this.axis,i=e.series,o=e.options.reversedStacks,s=i.length;if(!e.isXAxis){for(this.usePercentage=!1,t=s;t--;){var r=i[o?t:s-t-1];r.setStackedPoints(),r.setGroupedPoints()}for(t=0;t<s;t++)i[t].modifyStacks();a(e,"afterBuildStacks")}},t.prototype.cleanStacks=function(){if(!this.axis.isXAxis){if(this.oldStacks)var t=this.stacks=this.oldStacks;l(t,function(t){l(t,function(t){t.cumulative=t.total})})}},t.prototype.resetStacks=function(){var t=this,e=t.stacks;t.axis.isXAxis||l(e,function(e){l(e,function(i,o){h(i.touched)&&i.touched<t.stacksTouched?(i.destroy(),delete e[o]):(i.total=null,i.cumulative=null)})})},t.prototype.renderStackTotals=function(){var t=this.axis,e=t.chart,i=e.renderer,o=this.stacks;t=s(e,t.options.stackLabels&&t.options.stackLabels.animation||!1);var r=this.stackTotalGroup=this.stackTotalGroup||i.g("stack-labels").attr({zIndex:6,opacity:0}).add();r.translate(e.plotLeft,e.plotTop),l(o,function(t){l(t,function(t){t.render(r)})}),r.animate({opacity:1},t)},t}();t.Additions=c}(o||(o={})),o}),e(i,"Extensions/Stacking.js",[i["Core/Axis/Axis.js"],i["Core/Chart/Chart.js"],i["Core/FormatUtilities.js"],i["Core/Globals.js"],i["Core/Series/Series.js"],i["Core/Axis/StackingAxis.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n){var a=i.format,h=n.correctFloat,l=n.defined,c=n.destroyObjectProperties,p=n.isArray,d=n.isNumber,u=n.objectEach,f=n.pick,g=function(){function t(t,e,i,o,s){var r=t.chart.inverted;this.axis=t,this.isNegative=i,this.options=e=e||{},this.x=o,this.total=null,this.points={},this.hasValidPoints=!1,this.stack=s,this.rightCliff=this.leftCliff=0,this.alignOptions={align:e.align||(r?i?"left":"right":"center"),verticalAlign:e.verticalAlign||(r?"middle":i?"bottom":"top"),y:e.y,x:e.x},this.textAlign=e.textAlign||(r?i?"right":"left":"center")}return t.prototype.destroy=function(){c(this,this.axis)},t.prototype.render=function(t){var e=this.axis.chart,i=this.options,o=i.format;o=o?a(o,this,e):i.formatter.call(this),this.label?this.label.attr({text:o,visibility:"hidden"}):(this.label=e.renderer.label(o,null,null,i.shape,null,null,i.useHTML,!1,"stack-labels"),o={r:i.borderRadius||0,text:o,rotation:i.rotation,padding:f(i.padding,5),visibility:"hidden"},e.styledMode||(o.fill=i.backgroundColor,o.stroke=i.borderColor,o["stroke-width"]=i.borderWidth,this.label.css(i.style)),this.label.attr(o),this.label.added||this.label.add(t)),this.label.labelrank=e.plotSizeY},t.prototype.setOffset=function(t,e,i,o,r){var n=this.axis,a=n.chart;o=n.translate(n.stacking.usePercentage?100:o||this.total,0,0,0,1),i=n.translate(i||0),i=l(o)&&Math.abs(o-i),t=f(r,a.xAxis[0].translate(this.x))+t,n=l(o)&&this.getStackBox(a,this,t,o,e,i,n),e=this.label,i=this.isNegative,t="justify"===f(this.options.overflow,"justify");var h=this.textAlign;e&&n&&(r=e.getBBox(),o=e.padding,h="left"===h?a.inverted?-o:o:"right"===h?r.width:a.inverted&&"center"===h?r.width/2:a.inverted?i?r.width+o:-o:r.width/2,i=a.inverted?r.height/2:i?-o:r.height,this.alignOptions.x=f(this.options.x,0),this.alignOptions.y=f(this.options.y,0),n.x-=h,n.y-=i,e.align(this.alignOptions,null,n),a.isInsidePlot(e.alignAttr.x+h-this.alignOptions.x,e.alignAttr.y+i-this.alignOptions.y)?e.show():(e.hide(),t=!1),t&&s.prototype.justifyDataLabel.call(this.axis,e,this.alignOptions,e.alignAttr,r,n),e.attr({x:e.alignAttr.x,y:e.alignAttr.y}),f(!t&&this.options.crop,!0)&&((a=d(e.x)&&d(e.y)&&a.isInsidePlot(e.x-o+e.width,e.y)&&a.isInsidePlot(e.x+o,e.y))||e.hide()))},t.prototype.getStackBox=function(t,e,i,o,s,r,n){var a=e.axis.reversed,h=t.inverted,l=n.height+n.pos-(h?t.plotLeft:t.plotTop);return e=e.isNegative&&!a||!e.isNegative&&a,{x:h?e?o-n.right:o-r+n.pos-t.plotLeft:i+t.xAxis[0].transB-t.plotLeft,y:h?n.height-i-s:e?l-o-r:l-o,width:h?r:s,height:h?s:r}},t}();return e.prototype.getStacks=function(){var t=this,e=t.inverted;t.yAxis.forEach(function(t){t.stacking&&t.stacking.stacks&&t.hasVisibleSeries&&(t.stacking.oldStacks=t.stacking.stacks)}),t.series.forEach(function(i){var o=i.xAxis&&i.xAxis.options||{};!i.options.stacking||!0!==i.visible&&!1!==t.options.chart.ignoreHiddenSeries||(i.stackKey=[i.type,f(i.options.stack,""),e?o.top:o.left,e?o.height:o.width].join())})},r.compose(t),s.prototype.setGroupedPoints=function(){var t=this.yAxis.stacking;this.options.centerInCategory&&(this.is("column")||this.is("columnrange"))&&!this.options.stacking&&1<this.chart.series.length?s.prototype.setStackedPoints.call(this,"group"):t&&u(t.stacks,function(e,i){"group"===i.slice(-5)&&(u(e,function(t){return t.destroy()}),delete t.stacks[i])})},s.prototype.setStackedPoints=function(t){var e=t||this.options.stacking;if(e&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var i=this.processedXData,o=this.processedYData,s=[],r=o.length,n=this.options,a=n.threshold,c=f(n.startFromThreshold&&a,0);n=n.stack;var d,u,m="-"+(t=t?this.type+","+e:this.stackKey),x=this.negStacks,y=this.yAxis,v=y.stacking.stacks,b=y.stacking.oldStacks;for(y.stacking.stacksTouched+=1,u=0;u<r;u++){var S=i[u],M=o[u],k=this.getStackIndicator(k,S,this.index),w=k.key,C=(d=x&&M<(c?0:a))?m:t;v[C]||(v[C]={}),v[C][S]||(b[C]&&b[C][S]?(v[C][S]=b[C][S],v[C][S].total=null):v[C][S]=new g(y,y.options.stackLabels,d,S,n)),C=v[C][S],null!==M?(C.points[w]=C.points[this.index]=[f(C.cumulative,c)],l(C.cumulative)||(C.base=w),C.touched=y.stacking.stacksTouched,0<k.index&&!1===this.singleStacks&&(C.points[w][0]=C.points[this.index+","+S+",0"][0])):C.points[w]=C.points[this.index]=null,"percent"===e?(d=d?t:m,x&&v[d]&&v[d][S]?(d=v[d][S],C.total=d.total=Math.max(d.total,C.total)+Math.abs(M)||0):C.total=h(C.total+(Math.abs(M)||0))):"group"===e?(p(M)&&(M=M[0]),null!==M&&(C.total=(C.total||0)+1)):C.total=h(C.total+(M||0)),C.cumulative="group"===e?(C.total||1)-1:f(C.cumulative,c)+(M||0),null!==M&&(C.points[w].push(C.cumulative),s[u]=C.cumulative,C.hasValidPoints=!0)}"percent"===e&&(y.stacking.usePercentage=!0),"group"!==e&&(this.stackedYData=s),y.stacking.oldStacks={}}},s.prototype.modifyStacks=function(){var t,e=this,i=e.stackKey,o=e.yAxis.stacking.stacks,s=e.processedXData,r=e.options.stacking;e[r+"Stacker"]&&[i,"-"+i].forEach(function(i){for(var n,a,h=s.length;h--;)n=s[h],t=e.getStackIndicator(t,n,e.index,i),(a=(n=o[i]&&o[i][n])&&n.points[t.key])&&e[r+"Stacker"](a,n,h)})},s.prototype.percentStacker=function(t,e,i){e=e.total?100/e.total:0,t[0]=h(t[0]*e),t[1]=h(t[1]*e),this.stackedYData[i]=t[1]},s.prototype.getStackIndicator=function(t,e,i,o){return!l(t)||t.x!==e||o&&t.stackKey!==o?t={x:e,index:0,key:o,stackKey:o}:t.index++,t.key=[i,e,t.index].join(),t},o.StackItem=g,o.StackItem}),e(i,"Series/Line/LineSeries.js",[i["Core/Series/Series.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=i.defined,r=i.merge;return i=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.data=void 0,t.options=void 0,t.points=void 0,t}return o(i,e),i.prototype.drawGraph=function(){var t=this,e=this.options,i=(this.gappedPath||this.getGraphPath).call(this),o=this.chart.styledMode,s=[["graph","highcharts-graph"]];o||s[0].push(e.lineColor||this.color||"#cccccc",e.dashStyle),(s=t.getZonesGraphs(s)).forEach(function(s,r){var n=s[0],a=t[n],h=a?"animate":"attr";a?(a.endX=t.preventGraphAnimation?null:i.xMap,a.animate({d:i})):i.length&&(t[n]=a=t.chart.renderer.path(i).addClass(s[1]).attr({zIndex:1}).add(t.group)),a&&!o&&(n={stroke:s[2],"stroke-width":e.lineWidth,fill:t.fillGraph&&t.color||"none"},s[3]?n.dashstyle=s[3]:"square"!==e.linecap&&(n["stroke-linecap"]=n["stroke-linejoin"]="round"),a[h](n).shadow(2>r&&e.shadow)),a&&(a.startX=i.xMap,a.isArea=i.isArea)})},i.prototype.getGraphPath=function(t,e,i){var o,r=this,n=r.options,a=[],h=[],l=n.step,c=(t=t||r.points).reversed;return c&&t.reverse(),(l={right:1,center:2}[l]||l&&3)&&c&&(l=4-l),(t=this.getValidPoints(t,!1,!(n.connectNulls&&!e&&!i))).forEach(function(c,p){var d=c.plotX,u=c.plotY,f=t[p-1];(c.leftCliff||f&&f.rightCliff)&&!i&&(o=!0),c.isNull&&!s(e)&&0<p?o=!n.connectNulls:c.isNull&&!e?o=!0:(0===p||o?p=[["M",c.plotX,c.plotY]]:r.getPointSpline?p=[r.getPointSpline(t,c,p)]:l?(p=1===l?[["L",f.plotX,u]]:2===l?[["L",(f.plotX+d)/2,f.plotY],["L",(f.plotX+d)/2,u]]:[["L",d,f.plotY]]).push(["L",d,u]):p=[["L",d,u]],h.push(c.x),l&&(h.push(c.x),2===l&&h.push(c.x)),a.push.apply(a,p),o=!1)}),a.xMap=h,r.graphPath=a},i.prototype.getZonesGraphs=function(t){return this.zones.forEach(function(e,i){i=["zone-graph-"+i,"highcharts-graph highcharts-zone-graph-"+i+" "+(e.className||"")],this.chart.styledMode||i.push(e.color||this.color,e.dashStyle||this.options.dashStyle),t.push(i)},this),t},i.defaultOptions=r(t.defaultOptions,{}),i}(t),e.registerSeriesType("line",i),i}),e(i,"Series/Area/AreaSeries.js",[i["Core/Color/Color.js"],i["Core/Legend/LegendSymbol.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o){var s=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),r=t.parse,n=i.seriesTypes.line;t=o.extend;var a=o.merge,h=o.objectEach,l=o.pick;return o=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e}return s(e,t),e.prototype.drawGraph=function(){this.areaPath=[],t.prototype.drawGraph.apply(this);var e=this,i=this.areaPath,o=this.options,s=[["area","highcharts-area",this.color,o.fillColor]];this.zones.forEach(function(t,i){s.push(["zone-area-"+i,"highcharts-area highcharts-zone-area-"+i+" "+t.className,t.color||e.color,t.fillColor||o.fillColor])}),s.forEach(function(t){var s=t[0],n=e[s],a=n?"animate":"attr",h={};n?(n.endX=e.preventGraphAnimation?null:i.xMap,n.animate({d:i})):(h.zIndex=0,(n=e[s]=e.chart.renderer.path(i).addClass(t[1]).add(e.group)).isArea=!0),e.chart.styledMode||(h.fill=l(t[3],r(t[2]).setOpacity(l(o.fillOpacity,.75)).get())),n[a](h),n.startX=i.xMap,n.shiftUnit=o.step?2:1})},e.prototype.getGraphPath=function(t){var e,i=n.prototype.getGraphPath,o=this.options,s=o.stacking,r=this.yAxis,a=[],h=[],c=this.index,p=r.stacking.stacks[this.stackKey],d=o.threshold,u=Math.round(r.getThreshold(o.threshold));o=l(o.connectNulls,"percent"===s);var f=function(e,i,o){var n=t[e];e=s&&p[n.x].points[c];var l=n[o+"Null"]||0;if(o=n[o+"Cliff"]||0,n=!0,o||l){var f=(l?e[0]:e[1])+o,g=e[0]+o;n=!!l}else!s&&t[i]&&t[i].isNull&&(f=g=d);void 0!==f&&(h.push({plotX:m,plotY:null===f?u:r.getThreshold(f),isNull:n,isCliff:!0}),a.push({plotX:m,plotY:null===g?u:r.getThreshold(g),doCurve:!1}))};for(t=t||this.points,s&&(t=this.getStackPoints(t)),e=0;e<t.length;e++){s||(t[e].leftCliff=t[e].rightCliff=t[e].leftNull=t[e].rightNull=void 0);var g=t[e].isNull,m=l(t[e].rectPlotX,t[e].plotX),x=s?l(t[e].yBottom,u):u;g&&!o||(o||f(e,e-1,"left"),g&&!s&&o||(h.push(t[e]),a.push({x:e,plotX:m,plotY:x})),o||f(e,e+1,"right"))}return e=i.call(this,h,!0,!0),a.reversed=!0,(x=(g=i.call(this,a,!0,!0))[0])&&"M"===x[0]&&(g[0]=["L",x[1],x[2]]),(g=e.concat(g)).length&&g.push(["Z"]),i=i.call(this,h,!1,o),g.xMap=e.xMap,this.areaPath=g,i},e.prototype.getStackPoints=function(t){var e=this,i=[],o=[],s=this.xAxis,r=this.yAxis,n=r.stacking.stacks[this.stackKey],a={},c=r.series,p=c.length,d=r.options.reversedStacks?1:-1,u=c.indexOf(e);if(t=t||this.points,this.options.stacking){for(var f=0;f<t.length;f++)t[f].leftNull=t[f].rightNull=void 0,a[t[f].x]=t[f];h(n,function(t,e){null!==t.total&&o.push(e)}),o.sort(function(t,e){return t-e});var g=c.map(function(t){return t.visible});o.forEach(function(t,h){var f,m,x=0;if(a[t]&&!a[t].isNull)i.push(a[t]),[-1,1].forEach(function(i){var s=1===i?"rightNull":"leftNull",r=0,l=n[o[h+i]];if(l)for(var x=u;0<=x&&x<p;){var y=c[x].index;(f=l.points[y])||(y===e.index?a[t][s]=!0:g[x]&&(m=n[t].points[y])&&(r-=m[1]-m[0])),x+=d}a[t][1===i?"rightCliff":"leftCliff"]=r});else{for(var y=u;0<=y&&y<p;){if(f=n[t].points[c[y].index]){x=f[1];break}y+=d}x=l(x,0),x=r.translate(x,0,1,0,1),i.push({isNull:!0,plotX:s.translate(t,0,0,0,1),x:t,plotY:x,yBottom:x})}})}return i},e.defaultOptions=a(n.defaultOptions,{threshold:0}),e}(n),t(o.prototype,{singleStacks:!1,drawLegendSymbol:e.drawRectangle}),i.registerSeriesType("area",o),o}),e(i,"Series/Spline/SplineSeries.js",[i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e){var i=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),o=t.seriesTypes.line,s=e.merge,r=e.pick;return e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e}return i(e,t),e.prototype.getPointSpline=function(t,e,i){var o=e.plotX||0,s=e.plotY||0,n=t[i-1];if(i=t[i+1],n&&!n.isNull&&!1!==n.doCurve&&!e.isCliff&&i&&!i.isNull&&!1!==i.doCurve&&!e.isCliff){t=n.plotY||0;var a=i.plotX||0;i=i.plotY||0;var h=0,l=(1.5*o+(n.plotX||0))/2.5,c=(1.5*s+t)/2.5,p=(1.5*s+i)/2.5;(a=(1.5*o+a)/2.5)!==l&&(h=(p-c)*(a-o)/(a-l)+s-p),p+=h,(c+=h)>t&&c>s?p=2*s-(c=Math.max(t,s)):c<t&&c<s&&(p=2*s-(c=Math.min(t,s))),p>i&&p>s?c=2*s-(p=Math.max(i,s)):p<i&&p<s&&(c=2*s-(p=Math.min(i,s))),e.rightContX=a,e.rightContY=p}return e=["C",r(n.rightContX,n.plotX,0),r(n.rightContY,n.plotY,0),r(l,o,0),r(c,s,0),o,s],n.rightContX=n.rightContY=void 0,e},e.defaultOptions=s(o.defaultOptions),e}(o),t.registerSeriesType("spline",e),e}),e(i,"Series/AreaSpline/AreaSplineSeries.js",[i["Series/Area/AreaSeries.js"],i["Series/Spline/SplineSeries.js"],i["Core/Legend/LegendSymbol.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o,s){var r=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),n=t.prototype,a=s.extend,h=s.merge;return a((s=function(i){function o(){var t=null!==i&&i.apply(this,arguments)||this;return t.data=void 0,t.points=void 0,t.options=void 0,t}return r(o,i),o.defaultOptions=h(e.defaultOptions,t.defaultOptions),o}(e)).prototype,{getGraphPath:n.getGraphPath,getStackPoints:n.getStackPoints,drawGraph:n.drawGraph,drawLegendSymbol:i.drawRectangle}),o.registerSeriesType("areaspline",s),s}),e(i,"Series/Column/ColumnSeries.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Color/Color.js"],i["Core/Globals.js"],i["Core/Legend/LegendSymbol.js"],i["Core/Series/Series.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n){var a=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),h=t.animObject,l=e.parse,c=i.hasTouch;t=i.noop;var p=n.clamp,d=n.css,u=n.defined,f=n.extend,g=n.fireEvent,m=n.isArray,x=n.isNumber,y=n.merge,v=n.pick,b=n.objectEach;return n=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.borderWidth=void 0,e.data=void 0,e.group=void 0,e.options=void 0,e.points=void 0,e}return a(e,t),e.prototype.animate=function(t){var e=this,i=this.yAxis,o=e.options,s=this.chart.inverted,r={},n=s?"translateX":"translateY";if(t)r.scaleY=.001,t=p(i.toPixels(o.threshold),i.pos,i.pos+i.len),s?r.translateX=t-i.len:r.translateY=t,e.clipBox&&e.setClip(),e.group.attr(r);else{var a=Number(e.group.attr(n));e.group.animate({scaleY:1},f(h(e.options.animation),{step:function(t,o){e.group&&(r[n]=a+o.pos*(i.pos-a),e.group.attr(r))}}))}},e.prototype.init=function(e,i){t.prototype.init.apply(this,arguments);var o=this;(e=o.chart).hasRendered&&e.series.forEach(function(t){t.type===o.type&&(t.isDirty=!0)})},e.prototype.getColumnMetrics=function(){var t=this,e=t.options,i=t.xAxis,o=t.yAxis,s=i.options.reversedStacks;s=i.reversed&&!s||!i.reversed&&s;var r,n={},a=0;!1===e.grouping?a=1:t.chart.series.forEach(function(e){var i=e.yAxis,s=e.options;if(e.type===t.type&&(e.visible||!t.chart.options.chart.ignoreHiddenSeries)&&o.len===i.len&&o.pos===i.pos){if(s.stacking&&"group"!==s.stacking){r=e.stackKey,void 0===n[r]&&(n[r]=a++);var h=n[r]}else!1!==s.grouping&&(h=a++);e.columnIndex=h}});var h=Math.min(Math.abs(i.transA)*(i.ordinal&&i.ordinal.slope||e.pointRange||i.closestPointRange||i.tickInterval||1),i.len),l=h*e.groupPadding,c=(h-2*l)/(a||1);return e=Math.min(e.maxPointWidth||i.len,v(e.pointWidth,c*(1-2*e.pointPadding))),t.columnMetrics={width:e,offset:(c-e)/2+(l+((t.columnIndex||0)+(s?1:0))*c-h/2)*(s?-1:1),paddedWidth:c,columnCount:a},t.columnMetrics},e.prototype.crispCol=function(t,e,i,o){var s=this.chart,r=this.borderWidth,n=-(r%2?.5:0);return r=r%2?.5:1,s.inverted&&s.renderer.isVML&&(r+=1),this.options.crisp&&(i=Math.round(t+i)+n,i-=t=Math.round(t)+n),o=Math.round(e+o)+r,n=.5>=Math.abs(e)&&.5<o,o-=e=Math.round(e)+r,n&&o&&(--e,o+=1),{x:t,y:e,width:i,height:o}},e.prototype.adjustForMissingColumns=function(t,e,i,o){var s=this,r=this.options.stacking;if(!i.isNull&&1<o.columnCount){var n=this.yAxis.options.reversedStacks,a=0,h=n?0:-o.columnCount;b(this.yAxis.stacking&&this.yAxis.stacking.stacks,function(t){if("number"==typeof i.x&&(t=t[i.x.toString()])){var e=t.points[s.index],o=t.total;r?(e&&(a=h),t.hasValidPoints&&(n?h++:h--)):m(e)&&(a=e[1],h=o||0)}}),t=(i.plotX||0)+((h-1)*o.paddedWidth+e)/2-e-a*o.paddedWidth}return t},e.prototype.translate=function(){var t=this,e=t.chart,i=t.options,o=t.dense=2>t.closestPointRange*t.xAxis.transA;o=t.borderWidth=v(i.borderWidth,o?0:1);var r=t.xAxis,n=t.yAxis,a=i.threshold,h=t.translatedThreshold=n.getThreshold(a),l=v(i.minPointLength,5),c=t.getColumnMetrics(),d=c.width,f=t.pointXOffset=c.offset,g=t.dataMin,m=t.dataMax,y=t.barW=Math.max(d,1+2*o);e.inverted&&(h-=.5),i.pointPadding&&(y=Math.ceil(y)),s.prototype.translate.apply(t),t.points.forEach(function(o){var s=v(o.yBottom,h),b=999+Math.abs(s),S=o.plotX||0;b=p(o.plotY,-b,n.len+b);var M=Math.min(b,s),k=Math.max(b,s)-M,w=d,C=S+f,A=y;l&&Math.abs(k)<l&&(k=l,S=!n.reversed&&!o.negative||n.reversed&&o.negative,x(a)&&x(m)&&o.y===a&&m<=a&&(n.min||0)<a&&(g!==m||(n.max||0)<=a)&&(S=!S),M=Math.abs(M-h)>l?s-l:h-(S?l:0)),u(o.options.pointWidth)&&(w=A=Math.ceil(o.options.pointWidth),C-=Math.round((w-d)/2)),i.centerInCategory&&(C=t.adjustForMissingColumns(C,w,o,c)),o.barX=C,o.pointWidth=w,o.tooltipPos=e.inverted?[p(n.len+n.pos-e.plotLeft-b,n.pos-e.plotLeft,n.len+n.pos-e.plotLeft),r.len+r.pos-e.plotTop-C-A/2,k]:[r.left-e.plotLeft+C+A/2,p(b+n.pos-e.plotTop,n.pos-e.plotTop,n.len+n.pos-e.plotTop),k],o.shapeType=t.pointClass.prototype.shapeType||"rect",o.shapeArgs=t.crispCol.apply(t,o.isNull?[C,h,A,0]:[C,M,A,k])})},e.prototype.drawGraph=function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},e.prototype.pointAttribs=function(t,e){var i=this.options,o=this.pointAttrToOptions||{},s=o.stroke||"borderColor",r=o["stroke-width"]||"borderWidth",n=t&&t.color||this.color,a=t&&t[s]||i[s]||n;o=t&&t.options.dashStyle||i.dashStyle;var h=t&&t[r]||i[r]||this[r]||0,c=v(t&&t.opacity,i.opacity,1);if(t&&this.zones.length){var p=t.getZone();n=t.options.color||p&&(p.color||t.nonZonedColor)||this.color,p&&(a=p.borderColor||a,o=p.dashStyle||o,h=p.borderWidth||h)}return e&&t&&(e=(t=y(i.states[e],t.options.states&&t.options.states[e]||{})).brightness,n=t.color||void 0!==e&&l(n).brighten(t.brightness).get()||n,a=t[s]||a,h=t[r]||h,o=t.dashStyle||o,c=v(t.opacity,c)),s={fill:n,stroke:a,"stroke-width":h,opacity:c},o&&(s.dashstyle=o),s},e.prototype.drawPoints=function(){var t,e=this,i=this.chart,o=e.options,s=i.renderer,r=o.animationLimit||250;e.points.forEach(function(n){var a=n.graphic,h=!!a,l=a&&i.pointCount<r?"animate":"attr";x(n.plotY)&&null!==n.y?(t=n.shapeArgs,a&&n.hasNewShapeType()&&(a=a.destroy()),e.enabledDataSorting&&(n.startXPos=e.xAxis.reversed?-(t&&t.width||0):e.xAxis.width),a||(n.graphic=a=s[n.shapeType](t).add(n.group||e.group))&&e.enabledDataSorting&&i.hasRendered&&i.pointCount<r&&(a.attr({x:n.startXPos}),h=!0,l="animate"),a&&h&&a[l](y(t)),o.borderRadius&&a[l]({r:o.borderRadius}),i.styledMode||a[l](e.pointAttribs(n,n.selected&&"select")).shadow(!1!==n.allowShadow&&o.shadow,null,o.stacking&&!o.borderRadius),a&&(a.addClass(n.getClassName(),!0),a.attr({visibility:n.visible?"inherit":"hidden"}))):a&&(n.graphic=a.destroy())})},e.prototype.drawTracker=function(){var t,e=this,i=e.chart,o=i.pointer,s=function(t){var e=o.getPointFromEvent(t);void 0!==e&&(o.isDirectTouch=!0,e.onMouseOver(t))};e.points.forEach(function(e){t=m(e.dataLabels)?e.dataLabels:e.dataLabel?[e.dataLabel]:[],e.graphic&&(e.graphic.element.point=e),t.forEach(function(t){t.div?t.div.point=e:t.element.point=e})}),e._hasTracking||(e.trackerGroups.forEach(function(t){e[t]&&(e[t].addClass("highcharts-tracker").on("mouseover",s).on("mouseout",function(t){o.onTrackerMouseOut(t)}),c&&e[t].on("touchstart",s),!i.styledMode&&e.options.cursor&&e[t].css(d).css({cursor:e.options.cursor}))}),e._hasTracking=!0),g(this,"afterDrawTracker")},e.prototype.remove=function(){var t=this,e=t.chart;e.hasRendered&&e.series.forEach(function(e){e.type===t.type&&(e.isDirty=!0)}),s.prototype.remove.apply(t,arguments)},e.defaultOptions=y(s.defaultOptions,{borderRadius:0,centerInCategory:!1,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},select:{color:"#cccccc",borderColor:"#000000"}},dataLabels:{align:void 0,verticalAlign:void 0,y:void 0},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:"#ffffff"}),e}(s),f(n.prototype,{cropShoulder:0,directTouch:!0,drawLegendSymbol:o.drawRectangle,getSymbol:t,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]}),r.registerSeriesType("column",n),n}),e(i,"Core/Series/DataLabel.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/FormatUtilities.js"],i["Core/Utilities.js"]],function(t,e,i){var o,s=t.getDeferredAnimation,r=e.format,n=i.defined,a=i.extend,h=i.fireEvent,l=i.isArray,c=i.merge,p=i.objectEach,d=i.pick,u=i.splat;return function(t){function e(t,e,i,o,s){var r=this,h=this.chart,l=this.isCartesian&&h.inverted,c=this.enabledDataSorting,p=d(t.dlBox&&t.dlBox.centerX,t.plotX),u=t.plotY,f=i.rotation,g=i.align,m=n(p)&&n(u)&&h.isInsidePlot(p,Math.round(u),{inverted:l,paneCoordinates:!0,series:r}),x=function(i){c&&r.xAxis&&!y&&r.setDataLabelStartPos(t,e,s,m,i)},y="justify"===d(i.overflow,c?"none":"justify"),v=this.visible&&!1!==t.visible&&(t.series.forceDL||c&&!y||m||d(i.inside,!!this.options.stacking)&&o&&h.isInsidePlot(p,l?o.x+1:o.y+o.height-1,{inverted:l,paneCoordinates:!0,series:r}));if(v&&n(p)&&n(u)){f&&e.attr({align:g}),g=e.getBBox(!0);var b=[0,0],S=h.renderer.fontMetrics(h.styledMode?void 0:i.style.fontSize,e).b;o=a({x:l?this.yAxis.len-u:p,y:Math.round(l?this.xAxis.len-p:u),width:0,height:0},o),a(i,{width:g.width,height:g.height}),f?(y=!1,b=h.renderer.rotCorr(S,f),p={x:o.x+(i.x||0)+o.width/2+b.x,y:o.y+(i.y||0)+{top:0,middle:.5,bottom:1}[i.verticalAlign]*o.height},b=[g.x-Number(e.attr("x")),g.y-Number(e.attr("y"))],x(p),e[s?"attr":"animate"](p)):(x(o),e.align(i,void 0,o),p=e.alignAttr),y&&0<=o.height?this.justifyDataLabel(e,i,p,g,o,s):d(i.crop,!0)&&(o=p.x,x=p.y,o+=b[0],x+=b[1],v=h.isInsidePlot(o,x,{paneCoordinates:!0,series:r})&&h.isInsidePlot(o+g.width,x+g.height,{paneCoordinates:!0,series:r})),i.shape&&!f&&e[s?"attr":"animate"]({anchorX:l?h.plotWidth-t.plotY:t.plotX,anchorY:l?h.plotHeight-t.plotX:t.plotY})}s&&c&&(e.placed=!1),v||c&&!y?e.show():(e.hide(),e.placed=!1)}function i(){var t=this,e=t.chart,i=t.options,o=t.points,a=t.hasRendered||0,c=e.renderer,g=i.dataLabels,m=g.animation;if(m=g.defer?s(e,m,t):{defer:0,duration:0},g=f(f(e.options.plotOptions&&e.options.plotOptions.series&&e.options.plotOptions.series.dataLabels,e.options.plotOptions&&e.options.plotOptions[t.type]&&e.options.plotOptions[t.type].dataLabels),g),h(this,"drawDataLabels"),l(g)||g.enabled||t._hasPointLabels){var x=t.plotGroup("dataLabelsGroup","data-labels",a?"inherit":"hidden",g.zIndex||6);x.attr({opacity:+a}),!a&&(a=t.dataLabelsGroup)&&(t.visible&&x.show(),a[i.animation?"animate":"attr"]({opacity:1},m)),o.forEach(function(o){u(f(g,o.dlOptions||o.options&&o.options.dataLabels)).forEach(function(s,a){var h=s.enabled&&(!o.isNull||o.dataLabelOnNull)&&function(t,e){var i=e.filter;return!i||(e=i.operator,t=t[i.property],i=i.value,">"===e&&t>i||"<"===e&&t<i||">="===e&&t>=i||"<="===e&&t<=i||"=="===e&&t==i||"==="===e&&t===i)}(o,s),l=o.connectors?o.connectors[a]:o.connector,u=o.dataLabels?o.dataLabels[a]:o.dataLabel,f=!u,g=d(s.distance,o.labelDistance);if(h){var m=o.getLabelConfig(),y=d(s[o.formatPrefix+"Format"],s.format);m=n(y)?r(y,m,e):(s[o.formatPrefix+"Formatter"]||s.formatter).call(m,s),y=s.style;var v=s.rotation;e.styledMode||(y.color=d(s.color,y.color,t.color,"#000000"),"contrast"===y.color?(o.contrastColor=c.getContrast(o.color||t.color),y.color=!n(g)&&s.inside||0>g||i.stacking?o.contrastColor:"#000000"):delete o.contrastColor,i.cursor&&(y.cursor=i.cursor));var b={r:s.borderRadius||0,rotation:v,padding:s.padding,zIndex:1};e.styledMode||(b.fill=s.backgroundColor,b.stroke=s.borderColor,b["stroke-width"]=s.borderWidth),p(b,function(t,e){void 0===t&&delete b[e]})}!u||h&&n(m)&&!!u.div==!!s.useHTML&&(u.rotation&&s.rotation||u.rotation===s.rotation)||(f=!0,o.dataLabel=u=o.dataLabel&&o.dataLabel.destroy(),o.dataLabels&&(1===o.dataLabels.length?delete o.dataLabels:delete o.dataLabels[a]),a||delete o.dataLabel,l&&(o.connector=o.connector.destroy(),o.connectors&&(1===o.connectors.length?delete o.connectors:delete o.connectors[a]))),h&&n(m)?(u?b.text=m:(o.dataLabels=o.dataLabels||[],u=o.dataLabels[a]=v?c.text(m,0,0,s.useHTML).addClass("highcharts-data-label"):c.label(m,0,0,s.shape,null,null,s.useHTML,null,"data-label"),a||(o.dataLabel=u),u.addClass(" highcharts-data-label-color-"+o.colorIndex+" "+(s.className||"")+(s.useHTML?" highcharts-tracker":""))),u.options=s,u.attr(b),e.styledMode||u.css(y).shadow(s.shadow),u.added||u.add(x),s.textPath&&!s.useHTML&&(u.setTextPath(o.getDataLabelPath&&o.getDataLabelPath(u)||o.graphic,s.textPath),o.dataLabelPath&&!s.textPath.enabled&&(o.dataLabelPath=o.dataLabelPath.destroy())),t.alignDataLabel(o,u,s,null,f)):u&&u.hide()})})}h(this,"afterDrawDataLabels")}function o(t,e,i,o,s,r){var n=this.chart,a=e.align,h=e.verticalAlign,l=t.box?0:t.padding||0,c=e.x;c=void 0===c?0:c;var p=e.y;p=void 0===p?0:p;var d=(i.x||0)+l;if(0>d){"right"===a&&0<=c?(e.align="left",e.inside=!0):c-=d;var u=!0}return(d=(i.x||0)+o.width-l)>n.plotWidth&&("left"===a&&0>=c?(e.align="right",e.inside=!0):c+=n.plotWidth-d,u=!0),0>(d=i.y+l)&&("bottom"===h&&0<=p?(e.verticalAlign="top",e.inside=!0):p-=d,u=!0),(d=(i.y||0)+o.height-l)>n.plotHeight&&("top"===h&&0>=p?(e.verticalAlign="bottom",e.inside=!0):p+=n.plotHeight-d,u=!0),u&&(e.x=c,e.y=p,t.placed=!r,t.align(e,void 0,s)),u}function f(t,e){var i,o=[];if(l(t)&&!l(e))o=t.map(function(t){return c(t,e)});else if(l(e)&&!l(t))o=e.map(function(e){return c(t,e)});else if(l(t)||l(e))for(i=Math.max(t.length,e.length);i--;)o[i]=c(t[i],e[i]);else o=c(t,e);return o}function g(t,e,i,o,s){var r=this.chart,n=r.inverted,a=this.xAxis,h=a.reversed,l=n?e.height/2:e.width/2;t=(t=t.pointWidth)?t/2:0,e.startXPos=n?s.x:h?-l-t:a.width-l+t,e.startYPos=n?h?this.yAxis.height-l+t:-l-t:s.y,o?"hidden"===e.visibility&&(e.show(),e.attr({opacity:0}).animate({opacity:1})):e.attr({opacity:1}).animate({opacity:0},void 0,e.hide),r.hasRendered&&(i&&e.attr({x:e.startXPos,y:e.startYPos}),e.placed=!0)}var m=[];t.compose=function(t){if(-1===m.indexOf(t)){var s=t.prototype;m.push(t),s.alignDataLabel=e,s.drawDataLabels=i,s.justifyDataLabel=o,s.setDataLabelStartPos=g}}}(o||(o={})),o}),e(i,"Series/Column/ColumnDataLabel.js",[i["Core/Series/DataLabel.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i){var o,s=e.series,r=i.merge,n=i.pick;return function(e){function i(t,e,i,o,a){var h=this.chart.inverted,l=t.series,c=(l.xAxis?l.xAxis.len:this.chart.plotSizeX)||0;l=(l.yAxis?l.yAxis.len:this.chart.plotSizeY)||0;var p=t.dlBox||t.shapeArgs,d=n(t.below,t.plotY>n(this.translatedThreshold,l)),u=n(i.inside,!!this.options.stacking);p&&(0>(o=r(p)).y&&(o.height+=o.y,o.y=0),0<(p=o.y+o.height-l)&&p<o.height&&(o.height-=p),h&&(o={x:l-o.y-o.height,y:c-o.x-o.width,width:o.height,height:o.width}),u||(h?(o.x+=d?0:o.width,o.width=0):(o.y+=d?o.height:0,o.height=0))),i.align=n(i.align,!h||u?"center":d?"right":"left"),i.verticalAlign=n(i.verticalAlign,h||u?"middle":d?"top":"bottom"),s.prototype.alignDataLabel.call(this,t,e,i,o,a),i.inside&&t.contrastColor&&e.css({color:t.contrastColor})}var a=[];(o||(o={})).compose=function(e){t.compose(s),-1===a.indexOf(e)&&(a.push(e),e.prototype.alignDataLabel=i)}}(),o}),e(i,"Series/Bar/BarSeries.js",[i["Series/Column/ColumnSeries.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=i.extend,r=i.merge;return i=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.data=void 0,t.options=void 0,t.points=void 0,t}return o(i,e),i.defaultOptions=r(t.defaultOptions,{}),i}(t),s(i.prototype,{inverted:!0}),e.registerSeriesType("bar",i),i}),e(i,"Series/Scatter/ScatterSeries.js",[i["Series/Column/ColumnSeries.js"],i["Series/Line/LineSeries.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o){var s=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),r=o.addEvent,n=o.extend,a=o.merge;return n((o=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e}return s(i,t),i.prototype.applyJitter=function(){var t=this,e=this.options.jitter,i=this.points.length;e&&this.points.forEach(function(o,s){["x","y"].forEach(function(r,n){var a="plot"+r.toUpperCase();if(e[r]&&!o.isNull){var h=t[r+"Axis"],l=e[r]*h.transA;if(h&&!h.isLog){var c=Math.max(0,o[a]-l);h=Math.min(h.len,o[a]+l),n=1e4*Math.sin(s+n*i),o[a]=c+(h-c)*(n-Math.floor(n)),"x"===r&&(o.clientX=o.plotX)}}})})},i.prototype.drawGraph=function(){this.options.lineWidth?t.prototype.drawGraph.call(this):this.graph&&(this.graph=this.graph.destroy())},i.defaultOptions=a(e.defaultOptions,{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">●</span> <span style="font-size: 10px"> {series.name}</span><br/>',pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}}),i}(e)).prototype,{drawTracker:t.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1}),r(o,"afterTranslate",function(){this.applyJitter()}),i.registerSeriesType("scatter",o),o}),e(i,"Series/CenteredUtilities.js",[i["Core/Globals.js"],i["Core/Series/Series.js"],i["Core/Utilities.js"]],function(t,e,i){var o,s=t.deg2rad,r=i.isNumber,n=i.pick,a=i.relativeLength;return function(t){t.getCenter=function(){var t=this.options,i=this.chart,o=2*(t.slicedOffset||0),s=i.plotWidth-2*o,h=i.plotHeight-2*o,l=t.center,c=Math.min(s,h),p=t.thickness,d=t.size,u=t.innerSize||0;for("string"==typeof d&&(d=parseFloat(d)),"string"==typeof u&&(u=parseFloat(u)),t=[n(l[0],"50%"),n(l[1],"50%"),n(d&&0>d?void 0:t.size,"100%"),n(u&&0>u?void 0:t.innerSize||0,"0%")],!i.angular||this instanceof e||(t[3]=0),l=0;4>l;++l)d=t[l],i=2>l||2===l&&/%$/.test(d),t[l]=a(d,[s,h,c,t[2]][l])+(i?o:0);return t[3]>t[2]&&(t[3]=t[2]),r(p)&&2*p<t[2]&&0<p&&(t[3]=t[2]-2*p),t},t.getStartAndEndRadians=function(t,e){return t=r(t)?t:0,e=r(e)&&e>t&&360>e-t?e:t+360,{start:s*(t+-90),end:s*(e+-90)}}}(o||(o={})),o}),e(i,"Series/Pie/PiePoint.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Series/Point.js"],i["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=t.setAnimation,r=i.addEvent,n=i.defined;t=i.extend;var a=i.isNumber,h=i.pick,l=i.relativeLength;return e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.labelDistance=void 0,e.options=void 0,e.series=void 0,e}return o(e,t),e.prototype.getConnectorPath=function(){var t=this.labelPosition,e=this.series.options.dataLabels,i=this.connectorShapes,o=e.connectorShape;return i[o]&&(o=i[o]),o.call(this,{x:t.final.x,y:t.final.y,alignment:t.alignment},t.connectorPosition,e)},e.prototype.getTranslate=function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}},e.prototype.haloPath=function(t){var e=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(e.x,e.y,e.r+t,e.r+t,{innerR:e.r-1,start:e.start,end:e.end})},e.prototype.init=function(){var e=this;t.prototype.init.apply(this,arguments),this.name=h(this.name,"Slice");var i=function(t){e.slice("select"===t.type)};return r(this,"select",i),r(this,"unselect",i),this},e.prototype.isValid=function(){return a(this.y)&&0<=this.y},e.prototype.setVisible=function(t,e){var i=this,o=this.series,s=o.chart,r=o.options.ignoreHiddenPoint;e=h(e,r),t!==this.visible&&(this.visible=this.options.visible=t=void 0===t?!this.visible:t,o.options.data[o.data.indexOf(this)]=this.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(e){i[e]&&i[e][t?"show":"hide"](t)}),this.legendItem&&s.legend.colorizeItem(this,t),t||"hover"!==this.state||this.setState(""),r&&(o.isDirty=!0),e&&s.redraw())},e.prototype.slice=function(t,e,i){var o=this.series;s(i,o.chart),h(e,!0),this.sliced=this.options.sliced=n(t)?t:!this.sliced,o.options.data[o.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate()),this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())},e}(e),t(e.prototype,{connectorShapes:{fixedOffset:function(t,e,i){var o=e.breakAt;return e=e.touchingSliceAt,[["M",t.x,t.y],i.softConnector?["C",t.x+("left"===t.alignment?-5:5),t.y,2*o.x-e.x,2*o.y-e.y,o.x,o.y]:["L",o.x,o.y],["L",e.x,e.y]]},straight:function(t,e){return e=e.touchingSliceAt,[["M",t.x,t.y],["L",e.x,e.y]]},crookedLine:function(t,e,i){e=e.touchingSliceAt;var o=this.series,s=o.center[0],r=o.chart.plotWidth,n=o.chart.plotLeft;o=t.alignment;var a=this.shapeArgs.r;return i=l(i.crookDistance,1),i=["L",r="left"===o?s+a+(r+n-s-a)*(1-i):n+(s-a)*i,t.y],s=!0,("left"===o?r>t.x||r<e.x:r<t.x||r>e.x)&&(s=!1),t=[["M",t.x,t.y]],s&&t.push(i),t.push(["L",e.x,e.y]),t}}}),e}),e(i,"Series/Pie/PieSeries.js",[i["Series/CenteredUtilities.js"],i["Series/Column/ColumnSeries.js"],i["Core/Globals.js"],i["Core/Legend/LegendSymbol.js"],i["Series/Pie/PiePoint.js"],i["Core/Series/Series.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Renderer/SVG/Symbols.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a,h){var l=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),c=t.getStartAndEndRadians;i=i.noop;var p=h.clamp,d=h.extend,u=h.fireEvent,f=h.merge,g=h.pick,m=h.relativeLength;return h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.center=void 0,e.data=void 0,e.maxLabelDistance=void 0,e.options=void 0,e.points=void 0,e}return l(e,t),e.prototype.animate=function(t){var e=this,i=e.points,o=e.startAngleRad;t||i.forEach(function(t){var i=t.graphic,s=t.shapeArgs;i&&s&&(i.attr({r:g(t.startR,e.center&&e.center[3]/2),start:o,end:o}),i.animate({r:s.r,start:s.start,end:s.end},e.options.animation))})},e.prototype.drawEmpty=function(){var t=this.startAngleRad,e=this.endAngleRad,i=this.options;if(0===this.total&&this.center){var o=this.center[0],s=this.center[1];this.graph||(this.graph=this.chart.renderer.arc(o,s,this.center[1]/2,0,t,e).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:a.arc(o,s,this.center[2]/2,0,{start:t,end:e,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":i.borderWidth,fill:i.fillColor||"none",stroke:i.color||"#cccccc"})}else this.graph&&(this.graph=this.graph.destroy())},e.prototype.drawPoints=function(){var t=this.chart.renderer;this.points.forEach(function(e){e.graphic&&e.hasNewShapeType()&&(e.graphic=e.graphic.destroy()),e.graphic||(e.graphic=t[e.shapeType](e.shapeArgs).add(e.series.group),e.delayedRendering=!0)})},e.prototype.generatePoints=function(){t.prototype.generatePoints.call(this),this.updateTotals()},e.prototype.getX=function(t,e,i){var o=this.center,s=this.radii?this.radii[i.index]||0:o[2]/2;return t=Math.asin(p((t-o[1])/(s+i.labelDistance),-1,1)),o[0]+(e?-1:1)*Math.cos(t)*(s+i.labelDistance)+(0<i.labelDistance?(e?-1:1)*this.options.dataLabels.padding:0)},e.prototype.hasData=function(){return!!this.processedXData.length},e.prototype.redrawPoints=function(){var t,e,i,o,s=this,r=s.chart,n=r.renderer,a=s.options.shadow;this.drawEmpty(),!a||s.shadowGroup||r.styledMode||(s.shadowGroup=n.g("shadow").attr({zIndex:-1}).add(s.group)),s.points.forEach(function(h){var l={};if(e=h.graphic,!h.isNull&&e){var c=void 0;o=h.shapeArgs,t=h.getTranslate(),r.styledMode||(c=h.shadowGroup,a&&!c&&(c=h.shadowGroup=n.g("shadow").add(s.shadowGroup)),c&&c.attr(t),i=s.pointAttribs(h,h.selected&&"select")),h.delayedRendering?(e.setRadialReference(s.center).attr(o).attr(t),r.styledMode||e.attr(i).attr({"stroke-linejoin":"round"}).shadow(a,c),h.delayedRendering=!1):(e.setRadialReference(s.center),r.styledMode||f(!0,l,i),f(!0,l,o,t),e.animate(l)),e.attr({visibility:h.visible?"inherit":"hidden"}),e.addClass(h.getClassName(),!0)}else e&&(h.graphic=e.destroy())})},e.prototype.sortByAngle=function(t,e){t.sort(function(t,i){return void 0!==t.angle&&(i.angle-t.angle)*e})},e.prototype.translate=function(t){this.generatePoints();var e=this.options,i=e.slicedOffset,o=i+(e.borderWidth||0),s=c(e.startAngle,e.endAngle),r=this.startAngleRad=s.start;s=(this.endAngleRad=s.end)-r;var n=this.points,a=e.dataLabels.distance;e=e.ignoreHiddenPoint;var h,l=n.length,p=0;for(t||(this.center=t=this.getCenter()),h=0;h<l;h++){var d=n[h],f=r+p*s;!d.isValid()||e&&!d.visible||(p+=d.percentage/100);var x=r+p*s,y={x:t[0],y:t[1],r:t[2]/2,innerR:t[3]/2,start:Math.round(1e3*f)/1e3,end:Math.round(1e3*x)/1e3};d.shapeType="arc",d.shapeArgs=y,d.labelDistance=g(d.options.dataLabels&&d.options.dataLabels.distance,a),d.labelDistance=m(d.labelDistance,y.r),this.maxLabelDistance=Math.max(this.maxLabelDistance||0,d.labelDistance),(x=(x+f)/2)>1.5*Math.PI?x-=2*Math.PI:x<-Math.PI/2&&(x+=2*Math.PI),d.slicedTranslation={translateX:Math.round(Math.cos(x)*i),translateY:Math.round(Math.sin(x)*i)},y=Math.cos(x)*t[2]/2;var v=Math.sin(x)*t[2]/2;d.tooltipPos=[t[0]+.7*y,t[1]+.7*v],d.half=x<-Math.PI/2||x>Math.PI/2?1:0,d.angle=x,f=Math.min(o,d.labelDistance/5),d.labelPosition={natural:{x:t[0]+y+Math.cos(x)*d.labelDistance,y:t[1]+v+Math.sin(x)*d.labelDistance},final:{},alignment:0>d.labelDistance?"center":d.half?"right":"left",connectorPosition:{breakAt:{x:t[0]+y+Math.cos(x)*f,y:t[1]+v+Math.sin(x)*f},touchingSliceAt:{x:t[0]+y,y:t[1]+v}}}}u(this,"afterTranslate")},e.prototype.updateTotals=function(){var t,e=this.points,i=e.length,o=this.options.ignoreHiddenPoint,s=0;for(t=0;t<i;t++){var r=e[t];!r.isValid()||o&&!r.visible||(s+=r.y)}for(this.total=s,t=0;t<i;t++)(r=e[t]).percentage=0<s&&(r.visible||!o)?r.y/s*100:0,r.total=s},e.defaultOptions=f(r.defaultOptions,{center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{allowOverlap:!0,connectorPadding:5,connectorShape:"fixedOffset",crookDistance:"70%",distance:30,enabled:!0,formatter:function(){return this.point.isNull?void 0:this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}}),e}(r),d(h.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawLegendSymbol:o.drawRectangle,drawTracker:e.prototype.drawTracker,getCenter:t.getCenter,getSymbol:i,isCartesian:!1,noSharedTooltip:!0,pointAttribs:e.prototype.pointAttribs,pointClass:s,requireSorting:!1,searchPoint:i,trackerGroups:["group","dataLabelsGroup"]}),n.registerSeriesType("pie",h),h}),e(i,"Series/Pie/PieDataLabel.js",[i["Core/Series/DataLabel.js"],i["Core/Globals.js"],i["Core/Renderer/RendererUtilities.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o,s){var r,n=e.noop,a=i.distribute,h=o.series,l=s.arrayMax,c=s.clamp,p=s.defined,d=s.merge,u=s.pick,f=s.relativeLength;return function(e){function i(){var t,e,i,o,s,r,n,c,f,g,m,x,y=this,v=y.data,b=y.chart,S=y.options.dataLabels||{},M=S.connectorPadding,k=b.plotWidth,w=b.plotHeight,C=b.plotLeft,A=Math.round(b.chartWidth/3),P=y.center,T=P[2]/2,O=P[1],E=[[],[]],L=[0,0,0,0],D=y.dataLabelPositioners;y.visible&&(S.enabled||y._hasPointLabels)&&(v.forEach(function(t){t.dataLabel&&t.visible&&t.dataLabel.shortened&&(t.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),t.dataLabel.shortened=!1)}),h.prototype.drawDataLabels.apply(y),v.forEach(function(t){t.dataLabel&&(t.visible?(E[t.half].push(t),t.dataLabel._pos=null,!p(S.style.width)&&!p(t.options.dataLabels&&t.options.dataLabels.style&&t.options.dataLabels.style.width)&&t.dataLabel.getBBox().width>A&&(t.dataLabel.css({width:Math.round(.7*A)+"px"}),t.dataLabel.shortened=!0)):(t.dataLabel=t.dataLabel.destroy(),t.dataLabels&&1===t.dataLabels.length&&delete t.dataLabels))}),E.forEach(function(e,i){var h,l=e.length,d=[];if(l){if(y.sortByAngle(e,i-.5),0<y.maxLabelDistance){var v=Math.max(0,O-T-y.maxLabelDistance),A=Math.min(O+T+y.maxLabelDistance,b.plotHeight);e.forEach(function(t){0<t.labelDistance&&t.dataLabel&&(t.top=Math.max(0,O-T-t.labelDistance),t.bottom=Math.min(O+T+t.labelDistance,b.plotHeight),h=t.dataLabel.getBBox().height||21,t.distributeBox={target:t.labelPosition.natural.y-t.top+h/2,size:h,rank:t.y},d.push(t.distributeBox))}),a(d,v=A+h-v,v/5)}for(m=0;m<l;m++){if(t=e[m],r=t.labelPosition,o=t.dataLabel,g=!1===t.visible?"hidden":"inherit",f=v=r.natural.y,d&&p(t.distributeBox)&&(void 0===t.distributeBox.pos?g="hidden":(n=t.distributeBox.size,f=D.radialDistributionY(t))),delete t.positionIndex,S.justify)c=D.justify(t,T,P);else switch(S.alignTo){case"connectors":c=D.alignToConnectors(e,i,k,C);break;case"plotEdges":c=D.alignToPlotEdges(o,i,k,C);break;default:c=D.radialDistributionX(y,t,f,v)}o._attr={visibility:g,align:r.alignment},x=t.options.dataLabels||{},o._pos={x:c+u(x.x,S.x)+({left:M,right:-M}[r.alignment]||0),y:f+u(x.y,S.y)-10},r.final.x=c,r.final.y=f,u(S.crop,!0)&&(s=o.getBBox().width,v=null,c-s<M&&1===i?(v=Math.round(s-c+M),L[3]=Math.max(v,L[3])):c+s>k-M&&0===i&&(v=Math.round(c+s-k+M),L[1]=Math.max(v,L[1])),0>f-n/2?L[0]=Math.max(Math.round(n/2-f),L[0]):f+n/2>w&&(L[2]=Math.max(Math.round(f+n/2-w),L[2])),o.sideOverflow=v)}}}),0===l(L)||this.verifyDataLabelOverflow(L))&&(this.placeDataLabels(),this.points.forEach(function(t){var s;(x=d(S,t.options.dataLabels),e=u(x.connectorWidth,1))&&(i=t.connector,(o=t.dataLabel)&&o._pos&&t.visible&&0<t.labelDistance?(g=o._attr.visibility,(s=!i)&&(t.connector=i=b.renderer.path().addClass("highcharts-data-label-connector  highcharts-color-"+t.colorIndex+(t.className?" "+t.className:"")).add(y.dataLabelsGroup),b.styledMode||i.attr({"stroke-width":e,stroke:x.connectorColor||t.color||"#666666"})),i[s?"attr":"animate"]({d:t.getConnectorPath()}),i.attr("visibility",g)):i&&(t.connector=i.destroy()))}))}function o(){this.points.forEach(function(t){var e,i=t.dataLabel;i&&t.visible&&((e=i._pos)?(i.sideOverflow&&(i._attr.width=Math.max(i.getBBox().width-i.sideOverflow,0),i.css({width:i._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),i.shortened=!0),i.attr(i._attr),i[i.moved?"animate":"attr"](e),i.moved=!0):i&&i.attr({y:-9999})),delete t.distributeBox},this)}function s(t){var e=this.center,i=this.options,o=i.center,s=i.minSize||80,r=null!==i.size;if(!r){if(null!==o[0])var n=Math.max(e[2]-Math.max(t[1],t[3]),s);else n=Math.max(e[2]-t[1]-t[3],s),e[0]+=(t[3]-t[1])/2;null!==o[1]?n=c(n,s,e[2]-Math.max(t[0],t[2])):(n=c(n,s,e[2]-t[0]-t[2]),e[1]+=(t[0]-t[2])/2),n<e[2]?(e[2]=n,e[3]=Math.min(i.thickness?Math.max(0,n-2*i.thickness):Math.max(0,f(i.innerSize||0,n)),n),this.translate(e),this.drawDataLabels&&this.drawDataLabels()):r=!0}return r}var r=[],g={radialDistributionY:function(t){return t.top+t.distributeBox.pos},radialDistributionX:function(t,e,i,o){return t.getX(i<e.top+2||i>e.bottom-2?o:i,e.half,e)},justify:function(t,e,i){return i[0]+(t.half?-1:1)*(e+t.labelDistance)},alignToPlotEdges:function(t,e,i,o){return t=t.getBBox().width,e?t+o:i-t-o},alignToConnectors:function(t,e,i,o){var s,r=0;return t.forEach(function(t){(s=t.dataLabel.getBBox().width)>r&&(r=s)}),e?r+o:i-r-o}};e.compose=function(e){t.compose(h),-1===r.indexOf(e)&&(r.push(e),(e=e.prototype).dataLabelPositioners=g,e.alignDataLabel=n,e.drawDataLabels=i,e.placeDataLabels=o,e.verifyDataLabelOverflow=s)}}(r||(r={})),r}),e(i,"Extensions/OverlappingDataLabels.js",[i["Core/Chart/Chart.js"],i["Core/Utilities.js"]],function(t,e){function i(t,e){var i=!1;if(t){var o=t.newOpacity;t.oldOpacity!==o&&(t.alignAttr&&t.placed?(t[o?"removeClass":"addClass"]("highcharts-data-label-hidden"),i=!0,t.alignAttr.opacity=o,t[t.isOld?"animate":"attr"](t.alignAttr,null,function(){e.styledMode||t.css({pointerEvents:o?"auto":"none"})}),s(e,"afterHideOverlappingLabel")):t.attr({opacity:o})),t.isOld=!0}return i}var o=e.addEvent,s=e.fireEvent,r=e.isArray,n=e.isNumber,a=e.objectEach,h=e.pick;o(t,"render",function(){var t=this,e=[];(this.labelCollectors||[]).forEach(function(t){e=e.concat(t())}),(this.yAxis||[]).forEach(function(t){t.stacking&&t.options.stackLabels&&!t.options.stackLabels.allowOverlap&&a(t.stacking.stacks,function(t){a(t,function(t){t.label&&e.push(t.label)})})}),(this.series||[]).forEach(function(o){var s=o.options.dataLabels;o.visible&&(!1!==s.enabled||o._hasPointLabels)&&((s=function(o){return o.forEach(function(o){o.visible&&(r(o.dataLabels)?o.dataLabels:o.dataLabel?[o.dataLabel]:[]).forEach(function(s){var r=s.options;s.labelrank=h(r.labelrank,o.labelrank,o.shapeArgs&&o.shapeArgs.height),r.allowOverlap?(s.oldOpacity=s.opacity,s.newOpacity=1,i(s,t)):e.push(s)})})})(o.nodes||[]),s(o.points))}),this.hideOverlappingLabels(e)}),t.prototype.hideOverlappingLabels=function(t){var e,o,r,a=this,h=t.length,l=a.renderer,c=!1,p=function(t){var e,i,o=t.box?0:t.padding||0,s=e=0;if(t&&(!t.alignAttr||t.placed)){var r=t.alignAttr||{x:t.attr("x"),y:t.attr("y")},a=t.parentGroup;t.width||(e=t.getBBox(),t.width=e.width,t.height=e.height,e=l.fontMetrics(null,t.element).h);var h=t.width-2*o;return(i={left:"0",center:"0.5",right:"1"}[t.alignValue])?s=+i*h:n(t.x)&&Math.round(t.x)!==t.translateX&&(s=t.x-t.translateX),{x:r.x+(a.translateX||0)+o-(s||0),y:r.y+(a.translateY||0)+o-e,width:t.width-2*o,height:t.height-2*o}}};for(o=0;o<h;o++)(e=t[o])&&(e.oldOpacity=e.opacity,e.newOpacity=1,e.absoluteBox=p(e));for(t.sort(function(t,e){return(e.labelrank||0)-(t.labelrank||0)}),o=0;o<h;o++){var d=(p=t[o])&&p.absoluteBox;for(e=o+1;e<h;++e){var u=(r=t[e])&&r.absoluteBox;!d||!u||p===r||0===p.newOpacity||0===r.newOpacity||"hidden"===p.visibility||"hidden"===r.visibility||u.x>=d.x+d.width||u.x+u.width<=d.x||u.y>=d.y+d.height||u.y+u.height<=d.y||((p.labelrank<r.labelrank?p:r).newOpacity=0)}}t.forEach(function(t){i(t,a)&&(c=!0)}),c&&s(a,"afterHideAllOverlappingLabels")}}),e(i,"Core/Responsive.js",[i["Core/Utilities.js"]],function(t){var e,i=t.extend,o=t.find,s=t.isArray,r=t.isObject,n=t.merge,a=t.objectEach,h=t.pick,l=t.splat,c=t.uniqueKey;return function(t){var p=[];(e||(e={})).compose=function(t){return-1===p.indexOf(t)&&(p.push(t),i(t.prototype,d.prototype)),t};var d=function(){function t(){}return t.prototype.currentOptions=function(t){var e=this,i={};return function t(i,o,n,h){var c;a(i,function(i,a){if(!h&&-1<e.collectionsWithUpdate.indexOf(a)&&o[a])for(i=l(i),n[a]=[],c=0;c<Math.max(i.length,o[a].length);c++)o[a][c]&&(void 0===i[c]?n[a][c]=o[a][c]:(n[a][c]={},t(i[c],o[a][c],n[a][c],h+1)));else r(i)?(n[a]=s(i)?[]:{},t(i,o[a]||{},n[a],h+1)):n[a]=void 0===o[a]?null:o[a]})}(t,this.options,i,0),i},t.prototype.matchResponsiveRule=function(t,e){var i=t.condition;(i.callback||function(){return this.chartWidth<=h(i.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=h(i.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=h(i.minWidth,0)&&this.chartHeight>=h(i.minHeight,0)}).call(this)&&e.push(t._id)},t.prototype.setResponsive=function(t,e){var i=this,s=this.options.responsive,r=this.currentResponsive,a=[];!e&&s&&s.rules&&s.rules.forEach(function(t){void 0===t._id&&(t._id=c()),i.matchResponsiveRule(t,a)},this),(e=n.apply(void 0,a.map(function(t){return o((s||{}).rules||[],function(e){return e._id===t})}).map(function(t){return t&&t.chartOptions}))).isResponsiveOptions=!0,(a=a.toString()||void 0)!==(r&&r.ruleIds)&&(r&&this.update(r.undoOptions,t,!0),a?((r=this.currentOptions(e)).isResponsiveOptions=!0,this.currentResponsive={ruleIds:a,mergedOptions:e,undoOptions:r},this.update(e,t,!0)):this.currentResponsive=void 0)},t}()}(),e}),e(i,"masters/highcharts.src.js",[i["Core/Globals.js"],i["Core/Utilities.js"],i["Core/DefaultOptions.js"],i["Core/Animation/Fx.js"],i["Core/Animation/AnimationUtilities.js"],i["Core/Renderer/HTML/AST.js"],i["Core/FormatUtilities.js"],i["Core/Renderer/RendererUtilities.js"],i["Core/Renderer/SVG/SVGElement.js"],i["Core/Renderer/SVG/SVGRenderer.js"],i["Core/Renderer/HTML/HTMLElement.js"],i["Core/Renderer/HTML/HTMLRenderer.js"],i["Core/Axis/Axis.js"],i["Core/Axis/DateTimeAxis.js"],i["Core/Axis/LogarithmicAxis.js"],i["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],i["Core/Axis/Tick.js"],i["Core/Tooltip.js"],i["Core/Series/Point.js"],i["Core/Pointer.js"],i["Core/MSPointer.js"],i["Core/Legend/Legend.js"],i["Core/Chart/Chart.js"],i["Core/Series/Series.js"],i["Core/Series/SeriesRegistry.js"],i["Series/Column/ColumnSeries.js"],i["Series/Column/ColumnDataLabel.js"],i["Series/Pie/PieSeries.js"],i["Series/Pie/PieDataLabel.js"],i["Core/Series/DataLabel.js"],i["Core/Responsive.js"],i["Core/Color/Color.js"],i["Core/Time.js"]],function(t,e,i,o,s,r,n,a,h,l,c,p,d,u,f,g,m,x,y,v,b,S,M,k,w,C,A,P,T,O,E,L,D){return t.animate=s.animate,t.animObject=s.animObject,t.getDeferredAnimation=s.getDeferredAnimation,t.setAnimation=s.setAnimation,t.stop=s.stop,t.timers=o.timers,t.AST=r,t.Axis=d,t.Chart=M,t.chart=M.chart,t.Fx=o,t.Legend=S,t.PlotLineOrBand=g,t.Point=y,t.Pointer=b.isRequired()?b:v,t.Series=k,t.SVGElement=h,t.SVGRenderer=l,t.Tick=m,t.Time=D,t.Tooltip=x,t.Color=L,t.color=L.parse,p.compose(l),c.compose(h),t.defaultOptions=i.defaultOptions,t.getOptions=i.getOptions,t.time=i.defaultTime,t.setOptions=i.setOptions,t.dateFormat=n.dateFormat,t.format=n.format,t.numberFormat=n.numberFormat,t.addEvent=e.addEvent,t.arrayMax=e.arrayMax,t.arrayMin=e.arrayMin,t.attr=e.attr,t.clearTimeout=e.clearTimeout,t.correctFloat=e.correctFloat,t.createElement=e.createElement,t.css=e.css,t.defined=e.defined,t.destroyObjectProperties=e.destroyObjectProperties,t.discardElement=e.discardElement,t.distribute=a.distribute,t.erase=e.erase,t.error=e.error,t.extend=e.extend,t.extendClass=e.extendClass,t.find=e.find,t.fireEvent=e.fireEvent,t.getMagnitude=e.getMagnitude,t.getStyle=e.getStyle,t.inArray=e.inArray,t.isArray=e.isArray,t.isClass=e.isClass,t.isDOMElement=e.isDOMElement,t.isFunction=e.isFunction,t.isNumber=e.isNumber,t.isObject=e.isObject,t.isString=e.isString,t.keys=e.keys,t.merge=e.merge,t.normalizeTickInterval=e.normalizeTickInterval,t.objectEach=e.objectEach,t.offset=e.offset,t.pad=e.pad,t.pick=e.pick,t.pInt=e.pInt,t.relativeLength=e.relativeLength,t.removeEvent=e.removeEvent,t.seriesType=w.seriesType,t.splat=e.splat,t.stableSort=e.stableSort,t.syncTimeout=e.syncTimeout,t.timeUnits=e.timeUnits,t.uniqueKey=e.uniqueKey,t.useSerialIds=e.useSerialIds,t.wrap=e.wrap,A.compose(C),O.compose(k),u.compose(d),f.compose(d),T.compose(P),g.compose(d),E.compose(M),t}),e(i,"Core/Axis/OrdinalAxis.js",[i["Core/Axis/Axis.js"],i["Core/Globals.js"],i["Core/Series/Series.js"],i["Core/Utilities.js"]],function(t,e,i,o){var s,r=o.addEvent,n=o.correctFloat,a=o.css,h=o.defined,l=o.error,c=o.pick,p=o.timeUnits,d=[];return function(t){function o(t,e,i,o,s,r,n){void 0===s&&(s=[]),void 0===r&&(r=0);var a,c,d={},u=this.options.tickPixelInterval,f=this.chart.time,g=[],m=0,x=[],y=-Number.MAX_VALUE;if(!this.options.ordinal&&!this.options.breaks||!s||3>s.length||void 0===e)return f.getTimeTicks.apply(f,arguments);var v=s.length;for(a=0;a<v;a++){var b=a&&s[a-1]>i;if(s[a]<e&&(m=a),a===v-1||s[a+1]-s[a]>5*r||b){if(s[a]>y){for(c=f.getTimeTicks(t,s[m],s[a],o);c.length&&c[0]<=y;)c.shift();c.length&&(y=c[c.length-1]),g.push(x.length),x=x.concat(c)}m=a+1}if(b)break}if(c){if(c=c.info,n&&c.unitRange<=p.hour){for(a=x.length-1,m=1;m<a;m++)if(f.dateFormat("%d",x[m])!==f.dateFormat("%d",x[m-1])){d[x[m]]="day";var S=!0}S&&(d[x[0]]="day"),c.higherRanks=d}c.segmentStarts=g,x.info=c}else l(12,!1,this.chart);if(n&&h(u)){for(f=[],m=[],a=void 0,S=c=x.length;S--;)g=this.translate(x[S]),a&&(m[S]=a-g),f[S]=a=g;for(m.sort(),(m=m[Math.floor(m.length/2)])<.6*u&&(m=null),S=x[c-1]>i?c-1:c,a=void 0;S--;)g=f[S],c=Math.abs(a-g),a&&c<.8*u&&(null===m||c<.8*m)?(d[x[S]]&&!d[x[S+1]]?(c=S+1,a=g):c=S,x.splice(c,1)):a=g}return x}function s(t){var e=this.ordinal.positions;if(!e)return t;var i=e.length-1;if(0>t)t=e[0];else if(t>i)t=e[i];else var o=t-(i=Math.floor(t));return void 0!==o&&void 0!==e[i]?e[i]+(o?o*(e[i+1]-e[i]):0):t}function u(t){var e=this.ordinal,i=e.positions;if(!i)return t;var o=(t-(this.old?this.old.min:this.min))*(this.old?this.old.transA:this.transA)+this.minPixelPadding;if(0<o&&o<this.left+this.len||(e.extendedOrdinalPositions||(e.extendedOrdinalPositions=e.getExtendedPositions()),i=e.extendedOrdinalPositions),i&&i.length){if(t=e.getIndexOfPoint(o,i),e=n(t%1),0<=t&&t<i.length-1)return i[Math.floor(t)]+e*(i[Math.ceil(t)]-i[Math.floor(t)]);e=i.length,o=i[0];var s=((i=i[e-1])-o)/(e-1);return 0>t?o+s*t:i+s*(t-e)}return t}function f(e,i){var o=t.Additions.findIndexOf(e,i,!0);return e[o]===i?o:o+(i-e[o])/(e[o+1]-e[o])}function g(){this.ordinal||(this.ordinal=new t.Additions(this))}function m(){this.isXAxis&&h(this.options.overscroll)&&this.max===this.dataMax&&(!this.chart.mouseIsDown||this.isInternal)&&(!this.eventArgs||this.eventArgs&&"navigator"!==this.eventArgs.trigger)&&(this.max+=this.options.overscroll,!this.isInternal&&h(this.userMin)&&(this.min+=this.options.overscroll))}function x(){this.horiz&&!this.isDirty&&(this.isDirty=this.isOrdinal&&this.chart.navigator&&!this.chart.navigator.adaptToUpdatedData)}function y(){this.ordinal&&(this.ordinal.beforeSetTickPositions(),this.tickInterval=this.ordinal.postProcessTickInterval(this.tickInterval))}function v(t){var e=this.xAxis[0],i=e.options.overscroll,o=t.originalEvent.chartX,s=this.options.chart.panning,r=!1;if(s&&"y"!==s.type&&e.options.ordinal&&e.series.length){var n=this.mouseDownX,h=e.getExtremes(),l=h.dataMax,c=h.min,p=h.max,d=this.hoverPoints,u=e.closestPointRange||e.ordinal&&e.ordinal.overscrollPointsRange;n=(n-o)/(e.translationSlope*(e.ordinal.slope||u)),u={ordinal:{positions:u=e.ordinal.getExtendedPositions(),extendedOrdinalPositions:u}};var f=e.index2val,g=e.val2lin,m=void 0,x=m=void 0,y=void 0;u.ordinal.positions?1<Math.abs(n)&&(d&&d.forEach(function(t){t.setState()}),0>n?(x=u,y=e.ordinal.positions?e:u):(x=e.ordinal.positions?e:u,y=u),l>(m=y.ordinal.positions)[m.length-1]&&m.push(l),this.fixedRange=p-c,(m=e.navigatorAxis.toFixedRange(void 0,void 0,f.apply(x,[g.apply(x,[c,!0])+n]),f.apply(y,[g.apply(y,[p,!0])+n]))).min>=Math.min(h.dataMin,c)&&m.max<=Math.max(l,p)+i&&e.setExtremes(m.min,m.max,!0,!1,{trigger:"pan"}),this.mouseDownX=o,a(this.container,{cursor:"move"})):r=!0}else r=!0;r||s&&/y/.test(s.type)?i&&(e.max=e.dataMax+i):t.preventDefault()}function b(){var t=this.xAxis;t&&t.options.ordinal&&(delete t.ordinal.index,delete t.ordinal.extendedOrdinalPositions)}function S(t,e){var i=this.ordinal,o=i.positions,s=i.slope,r=i.extendedOrdinalPositions;if(!o)return t;var n=o.length;if(o[0]<=t&&o[n-1]>=t)t=f(o,t);else{if(r||(r=i.getExtendedPositions&&i.getExtendedPositions(),i.extendedOrdinalPositions=r),!r||!r.length)return t;n=r.length,s||(s=(r[n-1]-r[0])/n),o=f(r,o[0]),t>=r[0]&&t<=r[n-1]?t=f(r,t)-o:t<r[0]?t=-o-(t=r[0]-t)/s:t=(t-=r[n-1])/s+n-o}return e?t:s*(t||0)+i.offset}t.compose=function(t,e,i){if(-1===d.indexOf(t)){d.push(t);var n=t.prototype;n.getTimeTicks=o,n.index2val=s,n.lin2val=u,n.val2lin=S,n.ordinal2lin=n.val2lin,r(t,"afterInit",g),r(t,"foundExtremes",m),r(t,"afterSetScale",x),r(t,"initialAxisTranslation",y)}return-1===d.indexOf(i)&&(d.push(i),r(i,"pan",v)),-1===d.indexOf(e)&&(d.push(e),r(e,"updatedData",b)),t};var M=function(){function t(t){this.index={},this.axis=t}return t.prototype.beforeSetTickPositions=function(){var t=this.axis,e=t.ordinal,i=t.getExtremes(),o=i.min,s=i.max,r=t.isXAxis&&!!t.options.breaks;i=t.options.ordinal;var n,a,h=t.chart.options.chart.ignoreHiddenSeries,l=[],p=Number.MAX_VALUE,d=!1;if(i||r){t.series.forEach(function(t,e){if(n=[],!(h&&!1===t.visible||!1===t.takeOrdinalPosition&&!r)&&(l=l.concat(t.processedXData),u=l.length,l.sort(function(t,e){return t-e}),p=Math.min(p,c(t.closestPointRange,p)),u)){for(e=0;e<u-1;)l[e]!==l[e+1]&&n.push(l[e+1]),e++;n[0]!==l[0]&&n.unshift(l[0]),l=n}});var u=l.length;if(2<u){var f=l[1]-l[0];for(a=u-1;a--&&!d;)l[a+1]-l[a]!==f&&(d=!0);!t.options.keepOrdinalPadding&&(l[0]-o>f||s-l[l.length-1]>f)&&(d=!0)}else t.options.overscroll&&(2===u?p=l[1]-l[0]:1===u?(p=t.options.overscroll,l=[l[0],l[0]+p]):p=e.overscrollPointsRange);d||t.forceOrdinal?(t.options.overscroll&&(e.overscrollPointsRange=p,l=l.concat(e.getOverscrollPositions())),e.positions=l,f=t.ordinal2lin(Math.max(o,l[0]),!0),a=Math.max(t.ordinal2lin(Math.min(s,l[l.length-1]),!0),1),e.slope=s=(s-o)/(a-f),e.offset=o-f*s):(e.overscrollPointsRange=c(t.closestPointRange,e.overscrollPointsRange),e.positions=t.ordinal.slope=e.offset=void 0)}t.isOrdinal=i&&d,e.groupIntervalFactor=null},t.findIndexOf=function(t,e,i){for(var o,s=0,r=t.length-1;s<r;)t[o=Math.ceil((s+r)/2)]<=e?s=o:r=o-1;return t[s]===e?s:i?s:-1},t.prototype.getExtendedPositions=function(){var t=this,o=t.axis,s=o.constructor.prototype,r=o.chart,n=o.series[0].currentDataGrouping,a=n?n.count+n.unitName:"raw",h=o.options.overscroll,l=o.getExtremes(),c=void 0,p=t.index;if(p||(p=t.index={}),!p[a]){var d={series:[],chart:r,forceOrdinal:!1,getExtremes:function(){return{min:l.dataMin,max:l.dataMax+h}},getGroupPixelWidth:s.getGroupPixelWidth,getTimeTicks:s.getTimeTicks,options:{ordinal:!0},ordinal:{getGroupIntervalFactor:this.getGroupIntervalFactor},ordinal2lin:s.ordinal2lin,getIndexOfPoint:s.getIndexOfPoint,val2lin:s.val2lin};d.ordinal.axis=d,o.series.forEach(function(o){(c={xAxis:d,xData:o.xData.slice(),chart:r,destroyGroupedData:e.noop,getProcessedData:i.prototype.getProcessedData,applyGrouping:i.prototype.applyGrouping}).xData=c.xData.concat(t.getOverscrollPositions()),c.options={dataGrouping:n?{firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",enabled:!0,forced:!0,approximation:"open",units:[[n.unitName,[n.count]]]}:{enabled:!1}},d.series.push(c),o.processData.apply(c)}),c.closestPointRange!==c.basePointRange&&c.currentDataGrouping&&(d.forceOrdinal=!0),o.ordinal.beforeSetTickPositions.apply({axis:d}),p[a]=d.ordinal.positions}return p[a]},t.prototype.getGroupIntervalFactor=function(t,e,i){var o=(i=i.processedXData).length,s=[],r=this.groupIntervalFactor;if(!r){for(r=0;r<o-1;r++)s[r]=i[r+1]-i[r];s.sort(function(t,e){return t-e}),s=s[Math.floor(o/2)],t=Math.max(t,i[0]),e=Math.min(e,i[o-1]),this.groupIntervalFactor=r=o*s/(e-t)}return r},t.prototype.getIndexOfPoint=function(e,i){var o=this.axis,s=this.positions?this.positions[0]:0,r=o.series[0].points&&o.series[0].points[0]&&o.series[0].points[0].plotX||o.minPixelPadding;return 1<o.series.length&&o.series.forEach(function(t){t.points&&h(t.points[0])&&h(t.points[0].plotX)&&t.points[0].plotX<r&&(r=t.points[0].plotX)}),e=(e-r)/(o.translationSlope*(this.slope||o.closestPointRange||this.overscrollPointsRange)),t.findIndexOf(i,s)+e},t.prototype.getOverscrollPositions=function(){var t=this.axis,e=t.options.overscroll,i=this.overscrollPointsRange,o=[],s=t.dataMax;if(h(i))for(;s<=t.dataMax+e;)s+=i,o.push(s);return o},t.prototype.postProcessTickInterval=function(t){var e=this.axis,i=this.slope;return i?e.options.breaks?e.closestPointRange||t:t/(i/e.closestPointRange):t},t}();t.Additions=M}(s||(s={})),s}),e(i,"Series/DataModifyComposition.js",[i["Core/Axis/Axis.js"],i["Core/Series/Point.js"],i["Core/Series/Series.js"],i["Core/Utilities.js"]],function(t,e,i,o){var s,r=e.prototype.tooltipFormatter,n=o.addEvent,a=o.arrayMax,h=o.arrayMin,l=o.correctFloat,c=o.defined,p=o.isArray,d=o.isNumber,u=o.isString,f=o.pick;return function(t){function e(t,e,i){this.isXAxis||(this.series.forEach(function(i){"compare"===t&&"boolean"!=typeof e?i.setCompare(e,!1):"cumulative"!==t||u(e)||i.setCumulative(e,!1)}),f(i,!0)&&this.chart.redraw())}function i(t){var e=this,i=e.series.chart.numberFormatter,o=function(o){t=t.replace("{point."+o+"}",(0<e[o]&&"change"===o?"+":"")+i(e[o],f(e.series.tooltipOptions.changeDecimals,2)))};return c(e.change)&&o("change"),c(e.cumulativeSum)&&o("cumulativeSum"),r.apply(this,[t])}function o(){var t=this.options.compare;if("percent"===t||"value"===t||this.options.cumulative){var e=new S(this);"percent"===t||"value"===t?e.initCompare(t):e.initCumulative()}this.dataModify=e}function s(t){var e=(t=t.dataExtremes).activeYData;if(this.dataModify&&t){var i=void 0;this.options.compare?i=[this.dataModify.modifyValue(t.dataMin),this.dataModify.modifyValue(t.dataMax)]:this.options.cumulative&&p(e)&&2<=e.length&&(i=S.getCumulativeExtremes(e)),i&&(t.dataMin=h(i),t.dataMax=a(i))}}function g(t,e){this.options.compare=this.userOptions.compare=t,this.update({},f(e,!0)),!this.dataModify||"value"!==t&&"percent"!==t?this.points.forEach(function(t){delete t.change}):this.dataModify.initCompare(t)}function m(){if(this.xAxis&&this.processedYData&&this.dataModify){var t,e=this.processedXData,i=this.processedYData,o=i.length,s=!0===this.options.compareStart?0:1,r=-1;for(this.pointArrayMap&&(r=this.pointArrayMap.indexOf(this.options.pointValKey||this.pointValKey||"y")),t=0;t<o-s;t++){var n=i[t]&&-1<r?i[t][r]:i[t];if(d(n)&&0!==n&&e[t+s]>=(this.xAxis.min||0)){this.dataModify.compareValue=n;break}}}}function x(t,e){this.setModifier("compare",t,e)}function y(t,e){t=f(t,!1),this.options.cumulative=this.userOptions.cumulative=t,this.update({},f(e,!0)),this.dataModify?this.dataModify.initCumulative():this.points.forEach(function(t){delete t.cumulativeSum})}function v(t,e){this.setModifier("cumulative",t,e)}var b=[];t.compose=function(t,r,a){if(-1===b.indexOf(t)){b.push(t);var h=t.prototype;h.setCompare=g,h.setCumulative=y,n(t,"afterInit",o),n(t,"afterGetExtremes",s),n(t,"afterProcessData",m)}return-1===b.indexOf(r)&&(b.push(r),(r=r.prototype).setCompare=x,r.setModifier=e,r.setCumulative=v),-1===b.indexOf(a)&&(b.push(a),a.prototype.tooltipFormatter=i),t};var S=function(){function t(t){this.series=t}return t.prototype.modifyValue=function(){return 0},t.getCumulativeExtremes=function(t){var e=1/0,i=-1/0;return t.reduce(function(t,o){return o=t+o,e=Math.min(e,o,t),i=Math.max(i,o,t),o}),[e,i]},t.prototype.initCompare=function(t){this.modifyValue=function(e,i){null===e&&(e=0);var o=this.compareValue;return void 0!==e&&void 0!==o?(e="value"===t?e-o:e/o*100-(100===this.series.options.compareBase?0:100),void 0!==i&&(i=this.series.points[i])&&(i.change=e),e):0}},t.prototype.initCumulative=function(){this.modifyValue=function(t,e){if(null===t&&(t=0),void 0!==t&&void 0!==e){var i=0<e?this.series.points[e-1]:null;return i&&i.cumulativeSum&&(t=l(i.cumulativeSum+t)),(e=this.series.points[e])&&(e.cumulativeSum=t),t}return 0}},t}();t.Additions=S}(s||(s={})),s}),e(i,"Core/Axis/BrokenAxis.js",[i["Extensions/Stacking.js"],i["Core/Utilities.js"]],function(t,e){var i,o=e.addEvent,s=e.find,r=e.fireEvent,n=e.isArray,a=e.isNumber,h=e.pick;return function(e){function i(){void 0!==this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)}function l(){this.brokenAxis&&this.brokenAxis.hasBreaks&&(this.options.ordinal=!1)}function c(){var t=this.brokenAxis;if(t&&t.hasBreaks){for(var e=this.tickPositions,i=this.tickPositions.info,o=[],s=0;s<e.length;s++)t.isInAnyBreak(e[s])||o.push(e[s]);this.tickPositions=o,this.tickPositions.info=i}}function p(){this.brokenAxis||(this.brokenAxis=new x(this))}function d(){var t=this.options.connectNulls,e=this.points,i=this.xAxis,o=this.yAxis;if(this.isDirty)for(var s=e.length;s--;){var r=e[s],n=!(null===r.y&&!1===t)&&(i&&i.brokenAxis&&i.brokenAxis.isInAnyBreak(r.x,!0)||o&&o.brokenAxis&&o.brokenAxis.isInAnyBreak(r.y,!0));r.visible=!n&&!1!==r.options.visible}}function u(){this.drawBreaks(this.xAxis,["x"]),this.drawBreaks(this.yAxis,h(this.pointArrayMap,["y"]))}function f(t,e){var i,o,s,n,l=this,c=l.points;if(t&&t.brokenAxis&&t.brokenAxis.hasBreaks){var p=t.brokenAxis;e.forEach(function(e){i=p&&p.breakArray||[],o=t.isXAxis?t.min:h(l.options.threshold,t.min),c.forEach(function(l){n=h(l["stack"+e.toUpperCase()],l[e]),i.forEach(function(e){a(o)&&a(n)&&(s=!1,o<e.from&&n>e.to||o>e.from&&n<e.from?s="pointBreak":(o<e.from&&n>e.from&&n<e.to||o>e.from&&n>e.to&&n<e.from)&&(s="pointInBreak"),s&&r(t,s,{point:l,brk:e}))})})})}}function g(){var e=this.currentDataGrouping,i=e&&e.gapSize;e=this.points.slice();var o,s=this.yAxis,r=this.options.gapSize,n=e.length-1;if(r&&0<n)for("value"!==this.options.gapUnit&&(r*=this.basePointRange),i&&i>r&&i>=this.basePointRange&&(r=i),o=void 0;n--;)o&&!1!==o.visible||(o=e[n+1]),i=e[n],!1!==o.visible&&!1!==i.visible&&(o.x-i.x>r&&(o=(i.x+o.x)/2,e.splice(n+1,0,{isNull:!0,x:o}),s.stacking&&this.options.stacking&&((o=s.stacking.stacks[this.stackKey][o]=new t(s,s.options.stackLabels,!1,o,this.stack)).total=0)),o=i);return this.getGraphPath(e)}var m=[];e.compose=function(t,e){if(-1===m.indexOf(t)&&(m.push(t),t.keepProps.push("brokenAxis"),o(t,"init",p),o(t,"afterInit",i),o(t,"afterSetTickPositions",c),o(t,"afterSetOptions",l)),-1===m.indexOf(e)){m.push(e);var s=e.prototype;s.drawBreaks=f,s.gappedPath=g,o(e,"afterGeneratePoints",d),o(e,"afterRender",u)}return t};var x=function(){function t(t){this.hasBreaks=!1,this.axis=t}return t.isInBreak=function(t,e){var i=t.repeat||1/0,o=t.from,s=t.to-t.from;return e=e>=o?(e-o)%i:i-(o-e)%i,t.inclusive?e<=s:e<s&&0!==e},t.lin2Val=function(e){var i,o=this.brokenAxis;if(!(o=o&&o.breakArray)||!a(e))return e;for(i=0;i<o.length;i++){var s=o[i];if(s.from>=e)break;s.to<e?e+=s.len:t.isInBreak(s,e)&&(e+=s.len)}return e},t.val2Lin=function(e){var i=this.brokenAxis;if(!(i=i&&i.breakArray)||!a(e))return e;var o,s=e;for(o=0;o<i.length;o++){var r=i[o];if(r.to<=e)s-=r.len;else{if(r.from>=e)break;if(t.isInBreak(r,e)){s-=e-r.from;break}}}return s},t.prototype.findBreakAt=function(t,e){return s(e,function(e){return e.from<t&&t<e.to})},t.prototype.isInAnyBreak=function(e,i){var o,s=this.axis,r=s.options.breaks||[],n=r.length;if(n&&a(e)){for(;n--;)if(t.isInBreak(r[n],e)){var l=!0;o||(o=h(r[n].showPoints,!s.isXAxis))}var c=l&&i?l&&!o:l}return c},t.prototype.setBreaks=function(e,i){var o=this,s=o.axis,l=n(e)&&!!e.length;s.isDirty=o.hasBreaks!==l,o.hasBreaks=l,s.options.breaks=s.userOptions.breaks=e,s.forceRedraw=!0,s.series.forEach(function(t){t.isDirty=!0}),l||s.val2lin!==t.val2Lin||(delete s.val2lin,delete s.lin2val),l&&(s.userOptions.ordinal=!1,s.lin2val=t.lin2Val,s.val2lin=t.val2Lin,s.setExtremes=function(t,e,i,r,n){if(o.hasBreaks){for(var a,h=this.options.breaks||[];a=o.findBreakAt(t,h);)t=a.to;for(;a=o.findBreakAt(e,h);)e=a.from;e<t&&(e=t)}s.constructor.prototype.setExtremes.call(this,t,e,i,r,n)},s.setAxisTranslation=function(){if(s.constructor.prototype.setAxisTranslation.call(this),o.unitLength=void 0,o.hasBreaks){var e,i,n=s.options.breaks||[],l=[],c=[],p=h(s.pointRangePadding,0),d=0,u=s.userMin||s.min,f=s.userMax||s.max;n.forEach(function(i){e=i.repeat||1/0,a(u)&&a(f)&&(t.isInBreak(i,u)&&(u+=i.to%e-u%e),t.isInBreak(i,f)&&(f-=f%e-i.from%e))}),n.forEach(function(t){if(m=t.from,e=t.repeat||1/0,a(u)&&a(f)){for(;m-e>u;)m-=e;for(;m<u;)m+=e;for(i=m;i<f;i+=e)l.push({value:i,move:"in"}),l.push({value:i+t.to-t.from,move:"out",size:t.breakSize})}}),l.sort(function(t,e){return t.value===e.value?("in"===t.move?0:1)-("in"===e.move?0:1):t.value-e.value});var g=0,m=u;l.forEach(function(t){1===(g+="in"===t.move?1:-1)&&"in"===t.move&&(m=t.value),0===g&&a(m)&&(c.push({from:m,to:t.value,len:t.value-m-(t.size||0)}),d+=t.value-m-(t.size||0))}),o.breakArray=c,a(u)&&a(f)&&a(s.min)&&(o.unitLength=f-u-d+p,r(s,"afterBreaks"),s.staticScale?s.transA=s.staticScale:o.unitLength&&(s.transA*=(f-s.min+p)/o.unitLength),p&&(s.minPixelPadding=s.transA*(s.minPointOffset||0)),s.min=u,s.max=f)}}),h(i,!0)&&s.chart.redraw()},t}();e.Additions=x}(i||(i={})),i}),e(i,"masters/modules/broken-axis.src.js",[i["Core/Globals.js"],i["Core/Axis/BrokenAxis.js"]],function(t,e){e.compose(t.Axis,t.Series)}),e(i,"Extensions/DataGrouping.js",[i["Core/Axis/Axis.js"],i["Core/Axis/DateTimeAxis.js"],i["Core/FormatUtilities.js"],i["Core/Globals.js"],i["Core/Series/Point.js"],i["Core/Series/Series.js"],i["Core/Tooltip.js"],i["Core/DefaultOptions.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a,h){var l=i.format,c=r.prototype;i=h.addEvent;var p=h.arrayMax,d=h.arrayMin,u=h.correctFloat,f=h.defined,g=h.error,m=h.extend,x=h.isNumber,y=h.merge,v=h.pick,b=o.approximations={sum:function(t){var e=t.length;if(!e&&t.hasNulls)var i=null;else if(e)for(i=0;e--;)i+=t[e];return i},average:function(t){var e=t.length;return t=b.sum(t),x(t)&&e&&(t=u(t/e)),t},averages:function(){var t=[];return[].forEach.call(arguments,function(e){t.push(b.average(e))}),void 0===t[0]?void 0:t},open:function(t){return t.length?t[0]:t.hasNulls?null:void 0},high:function(t){return t.length?p(t):t.hasNulls?null:void 0},low:function(t){return t.length?d(t):t.hasNulls?null:void 0},close:function(t){return t.length?t[t.length-1]:t.hasNulls?null:void 0},hlc:function(t,e,i){if(t=b.high(t),e=b.low(e),i=b.close(i),x(t)||x(e)||x(i))return[t,e,i]},ohlc:function(t,e,i,o){if(t=b.open(t),e=b.high(e),i=b.low(i),o=b.close(o),x(t)||x(e)||x(i)||x(o))return[t,e,i,o]},range:function(t,e){return t=b.low(t),e=b.high(e),x(t)||x(e)?[t,e]:null===t&&null===e?null:void 0}},S={approximations:b,groupData:h=function(t,e,i,o){var s,r=this,n=r.data,a=r.options&&r.options.data,h=[],l=[],c=[],p=t.length,d=!!e,u=[],g=r.pointArrayMap,m=g&&g.length,v=["x"].concat(g||["y"]),S=this.options.dataGrouping&&this.options.dataGrouping.groupAll,M=0,k=0;o="function"==typeof o?o:b[o]?b[o]:b[r.getDGApproximation&&r.getDGApproximation()||"average"],m?g.forEach(function(){u.push([])}):u.push([]);var w=m||1;for(s=0;s<=p&&!(t[s]>=i[0]);s++);for(;s<=p;s++){for(;void 0!==i[M+1]&&t[s]>=i[M+1]||s===p;){var C=i[M];r.dataGroupInfo={start:S?k:r.cropStart+k,length:u[0].length};var A=o.apply(r,u);for(r.pointClass&&!f(r.dataGroupInfo.options)&&(r.dataGroupInfo.options=y(r.pointClass.prototype.optionsToObject.call({series:r},r.options.data[r.cropStart+k])),v.forEach(function(t){delete r.dataGroupInfo.options[t]})),void 0!==A&&(h.push(C),l.push(A),c.push(r.dataGroupInfo)),k=s,C=0;C<w;C++)u[C].length=0,u[C].hasNulls=!1;if(M+=1,s===p)break}if(s===p)break;if(g){C=r.options.dataGrouping&&r.options.dataGrouping.groupAll?s:r.cropStart+s,A=n&&n[C]||r.pointClass.prototype.applyOptions.apply({series:r},[a[C]]);var P=void 0;for(C=0;C<m;C++)P=A[g[C]],x(P)?u[C].push(P):null===P&&(u[C].hasNulls=!0)}else C=d?e[s]:null,x(C)?u[0].push(C):null===C&&(u[0].hasNulls=!0)}return{groupedXData:h,groupedYData:l,groupMap:c}}},M=c.generatePoints,k={groupPixelWidth:2,dateTimeLabelFormats:{millisecond:["%A, %b %e, %H:%M:%S.%L","%A, %b %e, %H:%M:%S.%L","-%H:%M:%S.%L"],second:["%A, %b %e, %H:%M:%S","%A, %b %e, %H:%M:%S","-%H:%M:%S"],minute:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],hour:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],day:["%A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],week:["Week from %A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],month:["%B %Y","%B","-%B %Y"],year:["%Y","%Y","-%Y"]}},w={line:{},spline:{},area:{},areaspline:{},arearange:{},column:{groupPixelWidth:10},columnrange:{groupPixelWidth:10},candlestick:{groupPixelWidth:10},ohlc:{groupPixelWidth:5},hlc:{groupPixelWidth:5},heikinashi:{groupPixelWidth:10}},C=o.defaultDataGroupingUnits=[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1]],["week",[1]],["month",[1,3,6]],["year",null]];return c.getDGApproximation=function(){return this.is("arearange")?"range":this.is("ohlc")?"ohlc":this.is("hlc")?"hlc":this.is("column")?"sum":"average"},c.groupData=h,c.applyGrouping=function(t){var i,o=this.chart,s=this.options.dataGrouping,r=!1!==this.allowDG&&s&&v(s.enabled,o.options.isStock),n=this.visible||!o.options.chart.ignoreHiddenSeries,a=this.currentDataGrouping,h=!1;if(r&&!this.requireSorting&&(this.requireSorting=h=!0),t=!1==!(this.isCartesian&&!this.isDirty&&!this.xAxis.isDirty&&!this.yAxis.isDirty&&!t)||!r,h&&(this.requireSorting=!1),!t){this.destroyGroupedData(),r=s.groupAll?this.xData:this.processedXData;var l=s.groupAll?this.yData:this.processedYData;t=o.plotSizeX;var p=(h=this.xAxis).options.ordinal,d=this.groupPixelWidth;if(d&&r&&r.length){this.isDirty=i=!0,this.points=null;var u=h.getExtremes(),m=u.min;u=u.max,p=p&&h.ordinal&&h.ordinal.getGroupIntervalFactor(m,u,this)||1,t=h.getTimeTicks(e.Additions.prototype.normalizeTimeTickInterval(d*(u-m)/t*p,s.units||C),Math.min(m,r[0]),Math.max(u,r[r.length-1]),h.options.startOfWeek,r,this.closestPointRange),r=(d=c.groupData.apply(this,[r,l,t,s.approximation])).groupedXData,l=d.groupedYData,p=0,s&&s.smoothed&&r.length&&(s.firstAnchor="firstPoint",s.anchor="middle",s.lastAnchor="lastPoint",g(32,!1,o,{"dataGrouping.smoothed":"use dataGrouping.anchor"})),o=r;var y=this.options.dataGrouping;if(m=this.currentDataGrouping&&this.currentDataGrouping.gapSize,y&&this.xData&&m&&this.groupMap){var b=o.length-1,S=y.anchor,M=v(y.firstAnchor,S);if(y=v(y.lastAnchor,S),S&&"start"!==S){var k=m*{middle:.5,end:1}[S];for(S=o.length-1;S--&&0<S;)o[S]+=k}if(M&&"start"!==M&&this.xData[0]>=o[0]){S=this.groupMap[0].start,k=this.groupMap[0].length;var w=void 0;x(S)&&x(k)&&(w=S+(k-1)),o[0]={middle:o[0]+.5*m,end:o[0]+m,firstPoint:this.xData[0],lastPoint:w&&this.xData[w]}[M]}y&&"start"!==y&&m&&o[b]>=u-m&&(u=this.groupMap[this.groupMap.length-1].start,o[b]={middle:o[b]+.5*m,end:o[b]+m,firstPoint:u&&this.xData[u],lastPoint:this.xData[this.xData.length-1]}[y])}for(u=1;u<t.length;u++)t.info.segmentStarts&&-1!==t.info.segmentStarts.indexOf(u)||(p=Math.max(t[u]-t[u-1],p));(u=t.info).gapSize=p,this.closestPointRange=t.info.totalRange,this.groupMap=d.groupMap,n&&(f((n=r)[0])&&x(h.min)&&x(h.dataMin)&&n[0]<h.min&&((!f(h.options.min)&&h.min<=h.dataMin||h.min===h.dataMin)&&(h.min=Math.min(n[0],h.min)),h.dataMin=Math.min(n[0],h.dataMin)),f(n[n.length-1])&&x(h.max)&&x(h.dataMax)&&n[n.length-1]>h.max&&((!f(h.options.max)&&x(h.dataMax)&&h.max>=h.dataMax||h.max===h.dataMax)&&(h.max=Math.max(n[n.length-1],h.max)),h.dataMax=Math.max(n[n.length-1],h.dataMax))),s.groupAll&&(this.allGroupedData=l,r=(s=this.cropData(r,l,h.min,h.max,1)).xData,l=s.yData,this.cropStart=s.start),this.processedXData=r,this.processedYData=l}else this.groupMap=null;this.hasGroupedData=i,this.currentDataGrouping=u,this.preventGraphAnimation=(a&&a.totalRange)!==(u&&u.totalRange)}},c.destroyGroupedData=function(){this.groupedData&&(this.groupedData.forEach(function(t,e){t&&(this.groupedData[e]=t.destroy?t.destroy():null)},this),this.groupedData.length=0)},c.generatePoints=function(){M.apply(this),this.destroyGroupedData(),this.groupedData=this.hasGroupedData?this.points:null},t.prototype.applyGrouping=function(t){var e=this,i=e.series;i.forEach(function(t){t.groupPixelWidth=void 0}),i.forEach(function(i){i.groupPixelWidth=e.getGroupPixelWidth&&e.getGroupPixelWidth(),i.groupPixelWidth&&(i.hasProcessed=!0),i.applyGrouping(!!t.hasExtemesChanged)})},t.prototype.getGroupPixelWidth=function(){var t,e,i=this.series,o=i.length,s=0,r=!1;for(t=o;t--;)(e=i[t].options.dataGrouping)&&(s=Math.max(s,v(e.groupPixelWidth,k.groupPixelWidth)));for(t=o;t--;)(e=i[t].options.dataGrouping)&&(o=(i[t].processedXData||i[t].data).length,(i[t].groupPixelWidth||o>this.chart.plotSizeX/s||o&&e.forced)&&(r=!0));return r?s:0},t.prototype.setDataGrouping=function(e,i){var o;if(i=v(i,!0),e||(e={forced:!1,units:null}),this instanceof t)for(o=this.series.length;o--;)this.series[o].update({dataGrouping:e},!1);else this.chart.options.series.forEach(function(t){t.dataGrouping="boolean"==typeof e?e:y(e,t.dataGrouping)});this.ordinal&&(this.ordinal.slope=void 0),i&&this.chart.redraw()},i(t,"postProcessData",t.prototype.applyGrouping),i(s,"update",function(){if(this.dataGroup)return g(24,!1,this.series.chart),!1}),i(n,"headerFormatter",function(t){var e=this.chart,i=e.time,o=t.labelConfig,s=o.series,r=s.tooltipOptions,n=s.options.dataGrouping,a=r.xDateFormat,h=s.xAxis,c=r[t.isFooter?"footerFormat":"headerFormat"];if(h&&"datetime"===h.options.type&&n&&x(o.key)){var p=s.currentDataGrouping;if(n=n.dateTimeLabelFormats||k.dateTimeLabelFormats,p)if(r=n[p.unitName],1===p.count)a=r[0];else{a=r[1];var d=r[2]}else!a&&n&&h.dateTime&&(a=h.dateTime.getXDateFormat(o.x,r.dateTimeLabelFormats));a=i.dateFormat(a,o.key),d&&(a+=i.dateFormat(d,o.key+p.totalRange-1)),s.chart.styledMode&&(c=this.styledModeFormat(c)),t.text=l(c,{point:m(o.point,{key:a}),series:s},e),t.preventDefault()}}),i(r,"destroy",c.destroyGroupedData),i(r,"afterSetOptions",function(t){t=t.options;var e=this.type,i=this.chart.options.plotOptions,o=a.defaultOptions.plotOptions[e].dataGrouping,s=this.useCommonDataGrouping&&k;if(i&&(w[e]||s)){o||(o=y(k,w[e]));var r=this.chart.rangeSelector;t.dataGrouping=y(s,o,i.series&&i.series.dataGrouping,i[e].dataGrouping,this.userOptions.dataGrouping,!t.isInternal&&r&&x(r.selected)&&r.buttonOptions[r.selected].dataGrouping)}}),i(t,"afterSetScale",function(){this.series.forEach(function(t){t.hasProcessed=!1})}),o.dataGrouping=S,S}),e(i,"Series/HLC/HLCPoint.js",[i["Core/Series/SeriesRegistry.js"]],function(t){var e=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}();return function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.close=void 0,e.high=void 0,e.low=void 0,e.options=void 0,e.plotClose=void 0,e.series=void 0,e}return e(i,t),i}(t.seriesTypes.column.prototype.pointClass)}),e(i,"Series/HLC/HLCSeries.js",[i["Series/HLC/HLCPoint.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=e.seriesTypes.column,r=i.extend,n=i.merge;return r((i=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e.yData=void 0,e}return o(e,t),e.prototype.extendStem=function(t,e,i){var o=t[0];t=t[1],"number"==typeof o[2]&&(o[2]=Math.max(i+e,o[2])),"number"==typeof t[2]&&(t[2]=Math.min(i-e,t[2]))},e.prototype.getPointPath=function(t,e){e=e.strokeWidth();var i=t.series,o=e%2/2,s=Math.round(t.plotX)-o,r=Math.round(t.shapeArgs.width/2),n=[["M",s,Math.round(t.yBottom)],["L",s,Math.round(t.plotHigh)]];return null!==t.close&&(t=Math.round(t.plotClose)+o,n.push(["M",s,t],["L",s+r,t]),i.extendStem(n,e/2,t)),n},e.prototype.drawSinglePoint=function(t){var e=t.series,i=e.chart,o=t.graphic,s=!o;void 0!==t.plotY&&(o||(t.graphic=o=i.renderer.path().add(e.group)),i.styledMode||o.attr(e.pointAttribs(t,t.selected&&"select")),e=e.getPointPath(t,o),o[s?"attr":"animate"]({d:e}).addClass(t.getClassName(),!0))},e.prototype.drawPoints=function(){this.points.forEach(this.drawSinglePoint)},e.prototype.init=function(){t.prototype.init.apply(this,arguments),this.options.stacking=void 0},e.prototype.pointAttribs=function(e,i){return delete(e=t.prototype.pointAttribs.call(this,e,i)).fill,e},e.prototype.toYData=function(t){return[t.high,t.low,t.close]},e.prototype.translate=function(){var e=this,i=e.yAxis,o=this.pointArrayMap&&this.pointArrayMap.slice()||[],s=o.map(function(t){return"plot"+(t.charAt(0).toUpperCase()+t.slice(1))});s.push("yBottom"),o.push("low"),t.prototype.translate.apply(e),e.points.forEach(function(t){o.forEach(function(o,r){null!==(o=t[o])&&(e.dataModify&&(o=e.dataModify.modifyValue(o)),t[s[r]]=i.toPixels(o,!0))}),t.tooltipPos[1]=t.plotHigh+i.pos-e.chart.plotTop})},e.defaultOptions=n(s.defaultOptions,{lineWidth:1,tooltip:{pointFormat:'<span style="color:{point.color}">●</span> <b> {series.name}</b><br/>High: {point.high}<br/>Low: {point.low}<br/>Close: {point.close}<br/>'},threshold:null,states:{hover:{lineWidth:3}},stickyTracking:!0}),e}(s)).prototype,{animate:null,directTouch:!1,pointArrayMap:["high","low","close"],pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},pointValKey:"close"}),i.prototype.pointClass=t,e.registerSeriesType("hlc",i),i}),e(i,"Series/OHLC/OHLCPoint.js",[i["Core/Series/SeriesRegistry.js"]],function(t){var e=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}();return function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.open=void 0,e.options=void 0,e.plotOpen=void 0,e.series=void 0,e}return e(i,t),i.prototype.getClassName=function(){return t.prototype.getClassName.call(this)+(this.open<this.close?" highcharts-point-up":" highcharts-point-down")},i.prototype.resolveUpColor=function(){this.open<this.close&&!this.options.color&&this.series.options.upColor&&(this.color=this.series.options.upColor)},i.prototype.resolveColor=function(){t.prototype.resolveColor.call(this),this.resolveUpColor()},i.prototype.getZone=function(){var e=t.prototype.getZone.call(this);return this.resolveUpColor(),e},i.prototype.applyOptions=function(){return t.prototype.applyOptions.apply(this,arguments),this.resolveColor&&this.resolveColor(),this},i}(t.seriesTypes.hlc.prototype.pointClass)}),e(i,"Series/OHLC/OHLCSeries.js",[i["Series/OHLC/OHLCPoint.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=e.series,r=e.seriesTypes.hlc,n=i.addEvent,a=i.extend,h=i.merge,l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e}return o(e,t),e.prototype.getPointPath=function(e,i){var o=t.prototype.getPointPath.call(this,e,i),s=(i=i.strokeWidth())%2/2,r=Math.round(e.plotX)-s,n=Math.round(e.shapeArgs.width/2);return null!==e.open&&(e=Math.round(e.plotOpen)+s,o.push(["M",r,e],["L",r-n,e]),t.prototype.extendStem.call(this,o,i/2,e)),o},e.prototype.pointAttribs=function(e,i){i=t.prototype.pointAttribs.call(this,e,i);var o=this.options;return delete i.fill,!e.options.color&&o.upColor&&e.open<e.close&&(i.stroke=o.upColor),i},e.prototype.toYData=function(t){return[t.open,t.high,t.low,t.close]},e.defaultOptions=h(r.defaultOptions,{tooltip:{pointFormat:'<span style="color:{point.color}">●</span> <b> {series.name}</b><br/>Open: {point.open}<br/>High: {point.high}<br/>Low: {point.low}<br/>Close: {point.close}<br/>'}}),e}(r);return a(l.prototype,{pointArrayMap:["open","high","low","close"]}),l.prototype.pointClass=t,e.registerSeriesType("ohlc",l),n(s,"init",function(t){(t=t.options).useOhlcData&&"highcharts-navigator-series"!==t.id&&a(this,{pointValKey:l.prototype.pointValKey,pointArrayMap:l.prototype.pointArrayMap,toYData:l.prototype.toYData})}),n(s,"afterSetOptions",function(t){var e=(t=t.options).dataGrouping;e&&t.useOhlcData&&"highcharts-navigator-series"!==t.id&&(e.approximation="ohlc")}),l}),e(i,"Series/Candlestick/CandlestickSeries.js",[i["Core/DefaultOptions.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=t.defaultOptions,r=(t=e.seriesTypes).column,n=t.ohlc,a=i.merge;return i=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e}return o(e,t),e.prototype.pointAttribs=function(t,e){var i=r.prototype.pointAttribs.call(this,t,e),o=this.options,s=t.open<t.close,n=o.lineColor||this.color,a=t.color||this.color;return i["stroke-width"]=o.lineWidth,i.fill=t.options.color||s&&o.upColor||a,i.stroke=t.options.lineColor||s&&o.upLineColor||n,e&&(t=o.states[e],i.fill=t.color||i.fill,i.stroke=t.lineColor||i.stroke,i["stroke-width"]=t.lineWidth||i["stroke-width"]),i},e.prototype.drawPoints=function(){var t=this,e=t.chart,i=t.yAxis.reversed;t.points.forEach(function(o){var s=o.graphic,r=!s;if(void 0!==o.plotY){s||(o.graphic=s=e.renderer.path().add(t.group)),t.chart.styledMode||s.attr(t.pointAttribs(o,o.selected&&"select")).shadow(t.options.shadow);var n=s.strokeWidth()%2/2,a=Math.round(o.plotX)-n,h=o.plotOpen,l=o.plotClose,c=Math.min(h,l);h=Math.max(h,l);var p=Math.round(o.shapeArgs.width/2);l=i?h!==o.yBottom:Math.round(c)!==Math.round(o.plotHigh);var d=i?Math.round(c)!==Math.round(o.plotHigh):h!==o.yBottom;c=Math.round(c)+n,h=Math.round(h)+n,(n=[]).push(["M",a-p,h],["L",a-p,c],["L",a+p,c],["L",a+p,h],["Z"],["M",a,c],["L",a,l?Math.round(i?o.yBottom:o.plotHigh):c],["M",a,h],["L",a,d?Math.round(i?o.plotHigh:o.yBottom):h]),s[r?"attr":"animate"]({d:n}).addClass(o.getClassName(),!0)}})},e.defaultOptions=a(n.defaultOptions,s.plotOptions,{states:{hover:{lineWidth:2}},tooltip:s.plotOptions.ohlc.tooltip,threshold:null,lineColor:"#000000",lineWidth:1,upColor:"#ffffff",stickyTracking:!0}),e}(n),e.registerSeriesType("candlestick",i),i}),e(i,"Series/Flags/FlagsPoint.js",[i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e){var i=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),o=e.isNumber;return function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.options=void 0,e.series=void 0,e}return i(e,t),e.prototype.isValid=function(){return o(this.y)||void 0===this.y},e.prototype.hasNewShapeType=function(){var t=this.options.shape||this.series.options.shape;return this.graphic&&t&&t!==this.graphic.symbolKey},e}(t.seriesTypes.column.prototype.pointClass)}),e(i,"Series/OnSeriesComposition.js",[i["Series/Column/ColumnSeries.js"],i["Core/Series/Series.js"],i["Core/Utilities.js"]],function(t,e,i){var o,s=t.prototype,r=e.prototype,n=i.defined,a=i.stableSort;return function(t){function e(){return r.getPlotBox.call(this.options.onSeries&&this.chart.get(this.options.onSeries)||this)}function i(){s.translate.apply(this);var t,e=this,i=e.options,o=e.chart,r=e.points,h=i.onSeries,l=(h=h&&o.get(h))&&h.options.step,c=h&&h.points,p=o.inverted,d=e.xAxis,u=e.yAxis;o=r.length-1,i=i.onKey||"y";var f,g=c&&c.length,m=0;if(h&&h.visible&&g){m=(h.pointXOffset||0)+(h.barW||0)/2;var x=h.currentDataGrouping,y=c[g-1].x+(x?x.totalRange:0);for(a(r,function(t,e){return t.x-e.x}),i="plot"+i[0].toUpperCase()+i.substr(1);g--&&r[o];){var v=c[g];if((x=r[o]).y=v.y,v.x<=x.x&&void 0!==v[i]){if(x.x<=y&&(x.plotY=v[i],v.x<x.x&&!l&&(f=c[g+1])&&void 0!==f[i])){var b=(x.x-v.x)/(f.x-v.x);x.plotY+=b*(f[i]-v[i]),x.y+=b*(f.y-v.y)}if(g++,0>--o)break}}}r.forEach(function(i,o){if(i.plotX+=m,(void 0===i.plotY||p)&&(0<=i.plotX&&i.plotX<=d.len?p?(i.plotY=d.translate(i.x,0,1,0,1),i.plotX=n(i.y)?u.translate(i.y,0,0,0,1):0):i.plotY=(d.opposite?0:e.yAxis.len)+d.offset:i.shapeArgs={}),(t=r[o-1])&&t.plotX===i.plotX){void 0===t.stackIndex&&(t.stackIndex=0);var s=t.stackIndex+1}i.stackIndex=s}),this.onSeries=h}var o=[];t.compose=function(t){if(-1===o.indexOf(t)){o.push(t);var s=t.prototype;s.getPlotBox=e,s.translate=i}return t},t.getPlotBox=e,t.translate=i}(o||(o={})),o}),e(i,"Series/Flags/FlagsSymbols.js",[i["Core/Renderer/RendererRegistry.js"],i["Core/Renderer/SVG/SVGRenderer.js"]],function(t,e){function i(t){o[t+"pin"]=function(e,i,s,r,n){var a=n&&n.anchorX;n=n&&n.anchorY,"circle"===t&&r>s&&(e-=Math.round((r-s)/2),s=r);var h=o[t](e,i,s,r);if(a&&n){var l=a;"circle"===t?l=e+s/2:(e=h[0],s=h[1],"M"===e[0]&&"L"===s[0]&&(l=(e[1]+s[1])/2)),h.push(["M",l,i>n?i:i+r],["L",a,n]),h=h.concat(o.circle(a-1,n-1,2,2))}return h}}var o=e.prototype.symbols;return o.flag=function(t,e,i,s,r){var n=r&&r.anchorX||t;r=r&&r.anchorY||e;var a=o.circle(n-1,r-1,2,2);return a.push(["M",n,r],["L",t,e+s],["L",t,e],["L",t+i,e],["L",t+i,e+s],["L",t,e+s],["Z"]),a},i("circle"),i("square"),(t=t.getRendererType())!==e&&(t.prototype.symbols.circlepin=o.circlepin,t.prototype.symbols.flag=o.flag,t.prototype.symbols.squarepin=o.squarepin),o}),e(i,"Series/Flags/FlagsSeries.js",[i["Series/Flags/FlagsPoint.js"],i["Core/Globals.js"],i["Series/OnSeriesComposition.js"],i["Core/Renderer/RendererUtilities.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Renderer/SVG/SVGElement.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n){var a=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}();e=e.noop;var h=o.distribute,l=s.series,c=s.seriesTypes.column,p=n.addEvent,d=n.defined;o=n.extend;var u=n.merge,f=n.objectEach,g=n.wrap;return n=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e}return a(e,t),e.prototype.animate=function(t){t&&this.setClip()},e.prototype.drawPoints=function(){var t,e=this.points,i=this.chart,o=i.renderer,s=i.inverted,n=this.options,a=n.y,l=this.yAxis,c={},p=[];for(t=e.length;t--;){var m=e[t],x=(s?m.plotY:m.plotX)>this.xAxis.len,y=m.plotX,v=m.stackIndex,b=m.options.shape||n.shape,S=m.plotY;void 0!==S&&(S=m.plotY+a-(void 0!==v&&v*n.stackDistance)),m.anchorX=v?void 0:m.plotX;var M=v?void 0:m.plotY,k="flag"!==b;v=m.graphic,void 0!==S&&0<=y&&!x?(v&&m.hasNewShapeType()&&(v=v.destroy()),v||(v=m.graphic=o.label("",null,null,b,null,null,n.useHTML).addClass("highcharts-point").add(this.markerGroup),m.graphic.div&&(m.graphic.div.point=m),v.isNew=!0),v.attr({align:k?"center":"left",width:n.width,height:n.height,"text-align":n.textAlign}),i.styledMode||v.attr(this.pointAttribs(m)).css(u(n.style,m.style)).shadow(n.shadow),0<y&&(y-=v.strokeWidth()%2),b={y:S,anchorY:M},n.allowOverlapX&&(b.x=y,b.anchorX=m.anchorX),v.attr({text:m.options.title||n.title||"A"})[v.isNew?"attr":"animate"](b),n.allowOverlapX||(c[m.plotX]?c[m.plotX].size=Math.max(c[m.plotX].size,v.width):c[m.plotX]={align:k?.5:0,size:v.width,target:y,anchorX:y}),m.tooltipPos=[y,S+l.pos-i.plotTop]):v&&(m.graphic=v.destroy())}if(!n.allowOverlapX){var w=100;f(c,function(t){t.plotX=t.anchorX,p.push(t),w=Math.max(t.size,w)}),h(p,s?l.len:this.xAxis.len,w),e.forEach(function(t){var e=t.plotX,i=t.graphic;(e=i&&c[e])&&i&&(d(e.pos)?i[i.isNew?"attr":"animate"]({x:e.pos+(e.align||0)*e.size,anchorX:t.anchorX}).show().isNew=!1:i.hide().isNew=!0)})}n.useHTML&&g(this.markerGroup,"on",function(t){return r.prototype.on.apply(t.apply(this,[].slice.call(arguments,1)),[].slice.call(arguments,1))})},e.prototype.drawTracker=function(){var e=this.points;t.prototype.drawTracker.call(this),e.forEach(function(t){var i=t.graphic;i&&(t.unbindMouseOver&&t.unbindMouseOver(),t.unbindMouseOver=p(i.element,"mouseover",function(){0<t.stackIndex&&!t.raised&&(t._y=i.y,i.attr({y:t._y-8}),t.raised=!0),e.forEach(function(e){e!==t&&e.raised&&e.graphic&&(e.graphic.attr({y:e._y}),e.raised=!1)})}))})},e.prototype.pointAttribs=function(t,e){var i=this.options,o=t&&t.color||this.color,s=i.lineColor,r=t&&t.lineWidth;return t=t&&t.fillColor||i.fillColor,e&&(t=i.states[e].fillColor,s=i.states[e].lineColor,r=i.states[e].lineWidth),{fill:t||o,stroke:s||o,"stroke-width":r||i.lineWidth||0}},e.prototype.setClip=function(){l.prototype.setClip.apply(this,arguments),!1!==this.options.clip&&this.sharedClipKey&&this.markerGroup&&this.markerGroup.clip(this.chart.sharedClips[this.sharedClipKey])},e.defaultOptions=u(c.defaultOptions,{pointRange:0,allowOverlapX:!1,shape:"flag",stackDistance:12,textAlign:"center",tooltip:{pointFormat:"{point.text}"},threshold:null,y:-30,fillColor:"#ffffff",lineWidth:1,states:{hover:{lineColor:"#000000",fillColor:"#ccd6eb"}},style:{fontSize:"11px",fontWeight:"bold"}}),e}(c),i.compose(n),o(n.prototype,{allowDG:!1,forceCrop:!0,invertible:!1,noSharedTooltip:!0,pointClass:t,sorted:!1,takeOrdinalPosition:!1,trackerGroups:["markerGroup"],buildKDTree:e,init:l.prototype.init,invertGroups:e}),s.registerSeriesType("flags",n),n}),e(i,"Core/Axis/ScrollbarAxis.js",[i["Core/Utilities.js"]],function(t){var e=t.addEvent,i=t.defined,o=t.pick;return function(){function t(){}return t.compose=function(s,r){if(-1!==t.composed.indexOf(s))return s;t.composed.push(s);var n=function(t){var e=o(t.options&&t.options.min,t.min),s=o(t.options&&t.options.max,t.max);return{axisMin:e,axisMax:s,scrollMin:i(t.dataMin)?Math.min(e,t.min,t.dataMin,o(t.threshold,1/0)):e,scrollMax:i(t.dataMax)?Math.max(s,t.max,t.dataMax,o(t.threshold,-1/0)):s}};return e(s,"afterInit",function(){var t=this;t.options&&t.options.scrollbar&&t.options.scrollbar.enabled&&(t.options.scrollbar.vertical=!t.horiz,t.options.startOnTick=t.options.endOnTick=!1,t.scrollbar=new r(t.chart.renderer,t.options.scrollbar,t.chart),e(t.scrollbar,"changed",function(e){var o=n(t),s=o.axisMax,r=o.scrollMin,a=o.scrollMax-r;i(o.axisMin)&&i(s)&&(t.horiz&&!t.reversed||!t.horiz&&t.reversed?(o=r+a*this.to,r+=a*this.from):(o=r+a*(1-this.from),r+=a*(1-this.to)),this.shouldUpdateExtremes(e.DOMType)?t.setExtremes(r,o,!0,"mousemove"!==e.DOMType&&"touchmove"!==e.DOMType,e):this.setRange(this.from,this.to))}))}),e(s,"afterRender",function(){var t=n(this),e=t.scrollMin,o=t.scrollMax;t=this.scrollbar;var s=this.axisTitleMargin+(this.titleOffset||0),r=this.chart.scrollbarsOffsets,a=this.options.margin||0;t&&(this.horiz?(this.opposite||(r[1]+=s),t.position(this.left,this.top+this.height+2+r[1]-(this.opposite?a:0),this.width,this.height),this.opposite||(r[1]+=a),s=1):(this.opposite&&(r[0]+=s),t.position(t.options.opposite?this.left+this.width+2+r[0]-(this.opposite?0:a):this.opposite?0:a,this.top,this.width,this.height),this.opposite&&(r[0]+=a),s=0),r[s]+=t.size+t.options.margin,isNaN(e)||isNaN(o)||!i(this.min)||!i(this.max)||this.min===this.max?t.setRange(0,1):(r=(this.min-e)/(o-e),e=(this.max-e)/(o-e),this.horiz&&!this.reversed||!this.horiz&&this.reversed?t.setRange(r,e):t.setRange(1-e,1-r)))}),e(s,"afterGetOffset",function(){var t=this.scrollbar&&!this.scrollbar.options.opposite;t=this.horiz?2:t?3:1;var e=this.scrollbar;e&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[t]+=e.size+e.options.margin)}),s},t.composed=[],t}()}),e(i,"Core/ScrollbarDefaults.js",[i["Core/Globals.js"]],function(t){return{height:t.isTouchDevice?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,margin:10,minWidth:6,opposite:!0,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}}),e(i,"Core/Scrollbar.js",[i["Core/DefaultOptions.js"],i["Core/Globals.js"],i["Core/Axis/ScrollbarAxis.js"],i["Core/ScrollbarDefaults.js"],i["Core/Utilities.js"]],function(t,e,i,o,s){var r=t.defaultOptions,n=s.addEvent,a=s.correctFloat,h=s.defined,l=s.destroyObjectProperties,c=s.fireEvent,p=s.merge,d=s.pick,u=s.removeEvent;return t=function(){function t(t,e,i){this._events=[],this.chart=void 0,this.from=this.chartY=this.chartX=0,this.scrollbar=this.renderer=this.options=this.group=void 0,this.scrollbarButtons=[],this.scrollbarGroup=void 0,this.scrollbarLeft=0,this.scrollbarRifles=void 0,this.scrollbarStrokeWidth=1,this.to=this.size=this.scrollbarTop=0,this.track=void 0,this.trackBorderWidth=1,this.userOptions=void 0,this.y=this.x=0,this.init(t,e,i)}return t.compose=function(e){i.compose(e,t)},t.swapXY=function(t,e){return e&&t.forEach(function(t){for(var e,i=t.length,o=0;o<i;o+=2)"number"==typeof(e=t[o+1])&&(t[o+1]=t[o+2],t[o+2]=e)}),t},t.prototype.addEvents=function(){var t=this.options.inverted?[1,0]:[0,1],i=this.scrollbarButtons,o=this.scrollbarGroup.element,s=this.track.element,r=this.mouseDownHandler.bind(this),a=this.mouseMoveHandler.bind(this),h=this.mouseUpHandler.bind(this);t=[[i[t[0]].element,"click",this.buttonToMinClick.bind(this)],[i[t[1]].element,"click",this.buttonToMaxClick.bind(this)],[s,"click",this.trackClick.bind(this)],[o,"mousedown",r],[o.ownerDocument,"mousemove",a],[o.ownerDocument,"mouseup",h]],e.hasTouch&&t.push([o,"touchstart",r],[o.ownerDocument,"touchmove",a],[o.ownerDocument,"touchend",h]),t.forEach(function(t){n.apply(null,t)}),this._events=t},t.prototype.buttonToMaxClick=function(t){var e=(this.to-this.from)*d(this.options.step,.2);this.updatePosition(this.from+e,this.to+e),c(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})},t.prototype.buttonToMinClick=function(t){var e=a(this.to-this.from)*d(this.options.step,.2);this.updatePosition(a(this.from-e),a(this.to-e)),c(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})},t.prototype.cursorToScrollbarPosition=function(t){var e=this.options;return e=e.minWidth>this.calculatedWidth?e.minWidth:0,{chartX:(t.chartX-this.x-this.xOffset)/(this.barWidth-e),chartY:(t.chartY-this.y-this.yOffset)/(this.barWidth-e)}},t.prototype.destroy=function(){var t=this,e=t.chart.scroller;t.removeEvents(),["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(e){t[e]&&t[e].destroy&&(t[e]=t[e].destroy())}),e&&t===e.scrollbar&&(e.scrollbar=null,l(e.scrollbarButtons))},t.prototype.drawScrollbarButton=function(e){var i=this.renderer,o=this.scrollbarButtons,s=this.options,r=this.size,n=i.g().add(this.group);o.push(n),n=i.rect().addClass("highcharts-scrollbar-button").add(n),this.chart.styledMode||n.attr({stroke:s.buttonBorderColor,"stroke-width":s.buttonBorderWidth,fill:s.buttonBackgroundColor}),n.attr(n.crisp({x:-.5,y:-.5,width:r+1,height:r+1,r:s.buttonBorderRadius},n.strokeWidth())),n=i.path(t.swapXY([["M",r/2+(e?-1:1),r/2-3],["L",r/2+(e?-1:1),r/2+3],["L",r/2+(e?2:-2),r/2]],s.vertical)).addClass("highcharts-scrollbar-arrow").add(o[e]),this.chart.styledMode||n.attr({fill:s.buttonArrowColor})},t.prototype.init=function(t,e,i){this.scrollbarButtons=[],this.renderer=t,this.userOptions=e,this.options=p(o,r.scrollbar,e),this.chart=i,this.size=d(this.options.size,this.options.height),e.enabled&&(this.render(),this.addEvents())},t.prototype.mouseDownHandler=function(t){t=this.chart.pointer.normalize(t),t=this.cursorToScrollbarPosition(t),this.chartX=t.chartX,this.chartY=t.chartY,this.initPositions=[this.from,this.to],this.grabbedCenter=!0},t.prototype.mouseMoveHandler=function(t){var e=this.chart.pointer.normalize(t),i=this.options.vertical?"chartY":"chartX",o=this.initPositions||[];!this.grabbedCenter||t.touches&&0===t.touches[0][i]||(i=(e=this.cursorToScrollbarPosition(e)[i])-(i=this[i]),this.hasDragged=!0,this.updatePosition(o[0]+i,o[1]+i),this.hasDragged&&c(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:t.type,DOMEvent:t}))},t.prototype.mouseUpHandler=function(t){this.hasDragged&&c(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:t.type,DOMEvent:t}),this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null},t.prototype.position=function(t,e,i,o){var s=this.options.vertical,r=this.rendered?"animate":"attr",n=o,a=0;this.group.show(),this.x=t,this.y=e+this.trackBorderWidth,this.width=i,this.height=o,this.xOffset=n,this.yOffset=a,s?(this.width=this.yOffset=i=a=this.size,this.xOffset=n=0,this.barWidth=o-2*i,this.x=t+=this.options.margin):(this.height=this.xOffset=o=n=this.size,this.barWidth=i-2*o,this.y+=this.options.margin),this.group[r]({translateX:t,translateY:this.y}),this.track[r]({width:i,height:o}),this.scrollbarButtons[1][r]({translateX:s?0:i-n,translateY:s?o-a:0})},t.prototype.removeEvents=function(){this._events.forEach(function(t){u.apply(null,t)}),this._events.length=0},t.prototype.render=function(){var e=this.renderer,i=this.options,o=this.size,s=this.chart.styledMode,r=e.g("scrollbar").attr({zIndex:i.zIndex}).hide().add();this.group=r,this.track=e.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:i.trackBorderRadius||0,height:o,width:o}).add(r),s||this.track.attr({fill:i.trackBackgroundColor,stroke:i.trackBorderColor,"stroke-width":i.trackBorderWidth}),this.trackBorderWidth=this.track.strokeWidth(),this.track.attr({y:-this.trackBorderWidth%2/2}),this.scrollbarGroup=e.g().add(r),this.scrollbar=e.rect().addClass("highcharts-scrollbar-thumb").attr({height:o,width:o,r:i.barBorderRadius||0}).add(this.scrollbarGroup),this.scrollbarRifles=e.path(t.swapXY([["M",-3,o/4],["L",-3,2*o/3],["M",0,o/4],["L",0,2*o/3],["M",3,o/4],["L",3,2*o/3]],i.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup),s||(this.scrollbar.attr({fill:i.barBackgroundColor,stroke:i.barBorderColor,"stroke-width":i.barBorderWidth}),this.scrollbarRifles.attr({stroke:i.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)},t.prototype.setRange=function(t,e){var i=this.options,o=i.vertical,s=i.minWidth,r=this.barWidth,n=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(h(r)){var l=r*Math.min(e,1);t=Math.max(t,0);var c=Math.ceil(r*t);this.calculatedWidth=l=a(l-c),l<s&&(c=(r-s+l)*t,l=s),s=Math.floor(c+this.xOffset+this.yOffset),r=l/2-.5,this.from=t,this.to=e,o?(this.scrollbarGroup[n]({translateY:s}),this.scrollbar[n]({height:l}),this.scrollbarRifles[n]({translateY:r}),this.scrollbarTop=s,this.scrollbarLeft=0):(this.scrollbarGroup[n]({translateX:s}),this.scrollbar[n]({width:l}),this.scrollbarRifles[n]({translateX:r}),this.scrollbarLeft=s,this.scrollbarTop=0),12>=l?this.scrollbarRifles.hide():this.scrollbarRifles.show(),!1===i.showFull&&(0>=t&&1<=e?this.group.hide():this.group.show()),this.rendered=!0}},t.prototype.shouldUpdateExtremes=function(t){return d(this.options.liveRedraw,e.svg&&!e.isTouchDevice&&!this.chart.isBoosting)||"mouseup"===t||"touchend"===t||!h(t)},t.prototype.trackClick=function(t){var e=this.chart.pointer.normalize(t),i=this.to-this.from,o=this.y+this.scrollbarTop,s=this.x+this.scrollbarLeft;this.options.vertical&&e.chartY>o||!this.options.vertical&&e.chartX>s?this.updatePosition(this.from+i,this.to+i):this.updatePosition(this.from-i,this.to-i),c(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:t})},t.prototype.update=function(t){this.destroy(),this.init(this.chart.renderer,p(!0,this.options,t),this.chart)},t.prototype.updatePosition=function(t,e){1<e&&(t=a(1-a(e-t)),e=1),0>t&&(e=a(e-t),t=0),this.from=t,this.to=e},t.defaultOptions=o,t}(),r.scrollbar=p(!0,t.defaultOptions,r.scrollbar),t}),e(i,"Core/Axis/NavigatorAxis.js",[i["Core/Globals.js"],i["Core/Utilities.js"]],function(t,e){var i=t.isTouchDevice,o=e.addEvent,s=e.correctFloat,r=e.defined,n=e.isNumber,a=e.pick,h=function(){function t(t){this.axis=t}return t.prototype.destroy=function(){this.axis=void 0},t.prototype.toFixedRange=function(t,e,i,o){var h=this.axis,l=h.chart;l=l&&l.fixedRange;var c=(h.pointRange||0)/2;return t=a(i,h.translate(t,!0,!h.horiz)),e=a(o,h.translate(e,!0,!h.horiz)),h=l&&(e-t)/l,r(i)||(t=s(t+c)),r(o)||(e=s(e-c)),.7<h&&1.3>h&&(o?t=e-l:e=t+l),n(t)&&n(e)||(t=e=void 0),{min:t,max:e}},t}();return function(){function t(){}return t.compose=function(t){t.keepProps.push("navigatorAxis"),o(t,"init",function(){this.navigatorAxis||(this.navigatorAxis=new h(this))}),o(t,"zoom",function(t){var e=this.chart.options,o=e.navigator,s=this.navigatorAxis,n=e.chart.pinchType,a=e.rangeSelector;e=e.chart.zoomType,this.isXAxis&&(o&&o.enabled||a&&a.enabled)&&("y"===e?t.zoomed=!1:(!i&&"xy"===e||i&&"xy"===n)&&this.options.range&&(o=s.previousZoom,r(t.newMin)?s.previousZoom=[this.min,this.max]:o&&(t.newMin=o[0],t.newMax=o[1],s.previousZoom=void 0))),void 0!==t.zoomed&&t.preventDefault()})},t.AdditionsClass=h,t}()}),e(i,"Core/Navigator.js",[i["Core/Axis/Axis.js"],i["Core/Chart/Chart.js"],i["Core/Color/Color.js"],i["Core/Globals.js"],i["Core/Axis/NavigatorAxis.js"],i["Core/DefaultOptions.js"],i["Core/Renderer/RendererRegistry.js"],i["Core/Scrollbar.js"],i["Core/Series/Series.js"],i["Core/Series/SeriesRegistry.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a,h,l,c){i=i.parse;var p=o.hasTouch,d=o.isTouchDevice,u=r.defaultOptions,f=c.addEvent,g=c.clamp,m=c.correctFloat,x=c.defined,y=c.destroyObjectProperties,v=c.erase,b=c.extend,S=c.find,M=c.isArray,k=c.isNumber,w=c.merge,C=c.pick,A=c.removeEvent,P=c.splat,T=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];if((e=[].filter.call(e,k)).length)return Math[t].apply(0,e)};r=void 0===l.seriesTypes.areaspline?"line":"areaspline",b(u,{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:i("#6685c2").setOpacity(.3).get(),outlineColor:"#cccccc",outlineWidth:1,series:{type:r,fillOpacity:.05,lineWidth:1,compare:null,dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{overscroll:0,className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"#e6e6e6",gridLineWidth:1,tickPixelInterval:200,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}}}),n.getRendererType().prototype.symbols["navigator-handle"]=function(t,e,i,o,s){return t=(s&&s.width||0)/2,e=Math.round(t/3)+.5,[["M",-t-1,.5],["L",t,.5],["L",t,(s=s&&s.height||0)+.5],["L",-t-1,s+.5],["L",-t-1,.5],["M",-e,4],["L",-e,s-3],["M",e-1,4],["L",e-1,s-3]]};var O=function(){function e(t){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(t)}return e.prototype.drawHandle=function(t,e,i,o){var s=this.navigatorOptions.handles.height;this.handles[e][o](i?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(t,10)+.5-s)}:{translateX:Math.round(this.left+parseInt(t,10)),translateY:Math.round(this.top+this.height/2-s/2-1)})},e.prototype.drawOutline=function(t,e,i,o){var s=this.navigatorOptions.maskInside,r=this.outline.strokeWidth(),n=r/2,a=r%2/2;r=this.outlineHeight;var h=this.scrollbarHeight||0,l=this.size,c=this.left-h,p=this.top;i?(a=[["M",(c-=n)+r,p-h-a],["L",c+r,i=p+e+a],["L",c,i],["L",c,e=p+t+a],["L",c+r,e],["L",c+r,p+l+h]],s&&a.push(["M",c+r,i-n],["L",c+r,e+n])):(a=[["M",c,p+=n],["L",t+=c+h-a,p],["L",t,p+r],["L",e+=c+h-a,p+r],["L",e,p],["L",c+l+2*h,p]],s&&a.push(["M",t-n,p],["L",e+n,p])),this.outline[o]({d:a})},e.prototype.drawMasks=function(t,e,i,o){var s=this.left,r=this.top,n=this.height;if(i)var a=[s,s,s],h=[r,r+t,r+e],l=[n,n,n],c=[t,e-t,this.size-e];else a=[s,s+t,s+e],h=[r,r,r],l=[t,e-t,this.size-e],c=[n,n,n];this.shades.forEach(function(t,e){t[o]({x:a[e],y:h[e],width:l[e],height:c[e]})})},e.prototype.renderElements=function(){var t,e=this,i=e.navigatorOptions,o=i.maskInside,s=e.chart,r=s.renderer,n={cursor:s.inverted?"ns-resize":"ew-resize"};e.navigatorGroup=t=r.g("navigator").attr({zIndex:8,visibility:"hidden"}).add(),[!o,o,!o].forEach(function(o,a){var h=r.rect().addClass("highcharts-navigator-mask"+(1===a?"-inside":"-outside")).add(t);s.styledMode||(h.attr({fill:o?i.maskFill:"rgba(0,0,0,0)"}),1===a&&h.css(n)),e.shades[a]=h}),e.outline=r.path().addClass("highcharts-navigator-outline").add(t),s.styledMode||e.outline.attr({"stroke-width":i.outlineWidth,stroke:i.outlineColor}),i.handles.enabled&&[0,1].forEach(function(o){if(i.handles.inverted=s.inverted,e.handles[o]=r.symbol(i.handles.symbols[o],-i.handles.width/2-1,0,i.handles.width,i.handles.height,i.handles),e.handles[o].attr({zIndex:7-o}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][o]).add(t),!s.styledMode){var a=i.handles;e.handles[o].attr({fill:a.backgroundColor,stroke:a.borderColor,"stroke-width":a.lineWidth}).css(n)}})},e.prototype.update=function(t){(this.series||[]).forEach(function(t){t.baseSeries&&delete t.baseSeries.navigatorSeries}),this.destroy(),w(!0,this.chart.options.navigator,this.options,t),this.init(this.chart)},e.prototype.render=function(t,e,i,o){var s,r,n=this.chart,a=this.scrollbarHeight,h=this.xAxis,l=h.pointRange||0,c=h.navigatorAxis.fake?n.xAxis[0]:h,p=this.navigatorEnabled,d=this.rendered,u=n.inverted,f=n.xAxis[0].minRange,y=n.xAxis[0].options.maxRange;if(!this.hasDragged||x(i)){if(t=m(t-l/2),e=m(e+l/2),!k(t)||!k(e)){if(!d)return;i=0,o=C(h.width,c.width)}this.left=C(h.left,n.plotLeft+a+(u?n.plotWidth:0)),this.size=r=s=C(h.len,(u?n.plotHeight:n.plotWidth)-2*a),n=u?a:s+2*a,i=C(i,h.toPixels(t,!0)),o=C(o,h.toPixels(e,!0)),k(i)&&1/0!==Math.abs(i)||(i=0,o=n),t=h.toValue(i,!0),e=h.toValue(o,!0);var v=Math.abs(m(e-t));v<f?this.grabbedLeft?i=h.toPixels(e-f-l,!0):this.grabbedRight&&(o=h.toPixels(t+f+l,!0)):x(y)&&m(v-l)>y&&(this.grabbedLeft?i=h.toPixels(e-y-l,!0):this.grabbedRight&&(o=h.toPixels(t+y+l,!0))),this.zoomedMax=g(Math.max(i,o),0,r),this.zoomedMin=g(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(i,o),0,r),this.range=this.zoomedMax-this.zoomedMin,r=Math.round(this.zoomedMax),i=Math.round(this.zoomedMin),p&&(this.navigatorGroup.attr({visibility:"inherit"}),d=d&&!this.hasDragged?"animate":"attr",this.drawMasks(i,r,u,d),this.drawOutline(i,r,u,d),this.navigatorOptions.handles.enabled&&(this.drawHandle(i,0,u,d),this.drawHandle(r,1,u,d))),this.scrollbar&&(u?(u=this.top-a,c=this.left-a+(p||!c.opposite?0:(c.titleOffset||0)+c.axisTitleMargin),a=s+2*a):(u=this.top+(p?this.height:-a),c=this.left-a),this.scrollbar.position(c,u,n,a),this.scrollbar.setRange(this.zoomedMin/(s||1),this.zoomedMax/(s||1))),this.rendered=!0}},e.prototype.addMouseEvents=function(){var t,e,i=this,o=i.chart,s=o.container,r=[];i.mouseMoveHandler=t=function(t){i.onMouseMove(t)},i.mouseUpHandler=e=function(t){i.onMouseUp(t)},(r=i.getPartsEvents("mousedown")).push(f(o.renderTo,"mousemove",t),f(s.ownerDocument,"mouseup",e)),p&&(r.push(f(o.renderTo,"touchmove",t),f(s.ownerDocument,"touchend",e)),r.concat(i.getPartsEvents("touchstart"))),i.eventsToUnbind=r,i.series&&i.series[0]&&r.push(f(i.series[0].xAxis,"foundExtremes",function(){o.navigator.modifyNavigatorAxisExtremes()}))},e.prototype.getPartsEvents=function(t){var e=this,i=[];return["shades","handles"].forEach(function(o){e[o].forEach(function(s,r){i.push(f(s.element,t,function(t){e[o+"Mousedown"](t,r)}))})}),i},e.prototype.shadesMousedown=function(t,e){t=this.chart.pointer.normalize(t);var i=this.chart,o=this.xAxis,s=this.zoomedMin,r=this.left,n=this.size,a=this.range,h=t.chartX;if(i.inverted&&(h=t.chartY,r=this.top),1===e)this.grabbedCenter=h,this.fixedWidth=a,this.dragOffset=h-s;else{if(t=h-r-a/2,0===e)t=Math.max(0,t);else if(2===e&&t+a>=n)if(t=n-a,this.reversedExtremes){t-=a;var l=this.getUnionExtremes().dataMin}else var c=this.getUnionExtremes().dataMax;t!==s&&(this.fixedWidth=a,e=o.navigatorAxis.toFixedRange(t,t+a,l,c),x(e.min)&&i.xAxis[0].setExtremes(Math.min(e.min,e.max),Math.max(e.min,e.max),!0,null,{trigger:"navigator"}))}},e.prototype.handlesMousedown=function(t,e){this.chart.pointer.normalize(t);var i=(t=this.chart).xAxis[0],o=this.reversedExtremes;0===e?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=o?i.min:i.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=o?i.max:i.min),t.fixedRange=null},e.prototype.onMouseMove=function(t){var e=this,i=e.chart,s=e.left,r=e.navigatorSize,n=e.range,a=e.dragOffset,h=i.inverted;t.touches&&0===t.touches[0].pageX||(i=(t=i.pointer.normalize(t)).chartX,h&&(s=e.top,i=t.chartY),e.grabbedLeft?(e.hasDragged=!0,e.render(0,0,i-s,e.otherHandlePos)):e.grabbedRight?(e.hasDragged=!0,e.render(0,0,e.otherHandlePos,i-s)):e.grabbedCenter&&(e.hasDragged=!0,i<a?i=a:i>r+a-n&&(i=r+a-n),e.render(0,0,i-a,i-a+n)),e.hasDragged&&e.scrollbar&&C(e.scrollbar.options.liveRedraw,o.svg&&!d&&!this.chart.isBoosting)&&(t.DOMType=t.type,setTimeout(function(){e.onMouseUp(t)},0)))},e.prototype.onMouseUp=function(t){var e=this.chart,i=this.xAxis,o=this.scrollbar,s=t.DOMEvent||t,r=e.inverted,n=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!o||!o.hasDragged)||"scrollbar"===t.trigger){if(o=this.getUnionExtremes(),this.zoomedMin===this.otherHandlePos)var a=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var h=this.fixedExtreme;this.zoomedMax===this.size&&(h=this.reversedExtremes?o.dataMin:o.dataMax),0===this.zoomedMin&&(a=this.reversedExtremes?o.dataMax:o.dataMin),i=i.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,a,h),x(i.min)&&e.xAxis[0].setExtremes(Math.min(i.min,i.max),Math.max(i.min,i.max),!0,!this.hasDragged&&null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:s})}"mousemove"!==t.DOMType&&"touchmove"!==t.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null),this.navigatorEnabled&&k(this.zoomedMin)&&k(this.zoomedMax)&&(e=Math.round(this.zoomedMin),t=Math.round(this.zoomedMax),this.shades&&this.drawMasks(e,t,r,n),this.outline&&this.drawOutline(e,t,r,n),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(e,0,r,n),this.drawHandle(t,1,r,n)))},e.prototype.removeEvents=function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(t){t()}),this.eventsToUnbind=void 0),this.removeBaseSeriesEvents()},e.prototype.removeBaseSeriesEvents=function(){var t=this.baseSeries||[];this.navigatorEnabled&&t[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&t.forEach(function(t){A(t,"updatedData",this.updatedDataHandler)},this),t[0].xAxis&&A(t[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))},e.prototype.init=function(e){var i=e.options,o=i.navigator,r=o.enabled,n=i.scrollbar,h=n.enabled;i=r?o.height:0;var l=h?n.height:0;this.handles=[],this.shades=[],this.chart=e,this.setBaseSeries(),this.height=i,this.scrollbarHeight=l,this.scrollbarEnabled=h,this.navigatorEnabled=r,this.navigatorOptions=o,this.scrollbarOptions=n,this.outlineHeight=i+l,this.opposite=C(o.opposite,!(r||!e.inverted));var c=this;r=c.baseSeries,n=e.xAxis.length,h=e.yAxis.length;var p=r&&r[0]&&r[0].xAxis||e.xAxis[0]||{options:{}};e.isDirtyBox=!0,c.navigatorEnabled?(c.xAxis=new t(e,w({breaks:p.options.breaks,ordinal:p.options.ordinal},o.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:n,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},e.inverted?{offsets:[l,0,-l,0],width:i}:{offsets:[0,-l,0,l],height:i})),c.yAxis=new t(e,w(o.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:h,isInternal:!0,reversed:C(o.yAxis&&o.yAxis.reversed,e.yAxis[0]&&e.yAxis[0].reversed,!1),zoomEnabled:!1},e.inverted?{width:i}:{height:i})),r||o.series.data?c.updateNavigatorSeries(!1):0===e.series.length&&(c.unbindRedraw=f(e,"beforeRedraw",function(){0<e.series.length&&!c.series&&(c.setBaseSeries(),c.unbindRedraw())})),c.reversedExtremes=e.inverted&&!c.xAxis.reversed||!e.inverted&&c.xAxis.reversed,c.renderElements(),c.addMouseEvents()):(c.xAxis={chart:e,navigatorAxis:{fake:!0},translate:function(t,i){var o=e.xAxis[0],s=o.getExtremes(),r=o.len-2*l,n=T("min",o.options.min,s.dataMin);return o=T("max",o.options.max,s.dataMax)-n,i?t*o/r+n:r*(t-n)/o},toPixels:function(t){return this.translate(t)},toValue:function(t){return this.translate(t,!0)}},c.xAxis.navigatorAxis.axis=c.xAxis,c.xAxis.navigatorAxis.toFixedRange=s.AdditionsClass.prototype.toFixedRange.bind(c.xAxis.navigatorAxis)),e.options.scrollbar.enabled&&(e.scrollbar=c.scrollbar=new a(e.renderer,w(e.options.scrollbar,{margin:c.navigatorEnabled?0:10,vertical:e.inverted}),e),f(c.scrollbar,"changed",function(t){var e=c.size,i=e*this.to;e*=this.from,c.hasDragged=c.scrollbar.hasDragged,c.render(0,0,e,i),this.shouldUpdateExtremes(t.DOMType)&&setTimeout(function(){c.onMouseUp(t)})})),c.addBaseSeriesEvents(),c.addChartEvents()},e.prototype.getUnionExtremes=function(t){var e,i=this.chart.xAxis[0],o=this.xAxis,s=o.options,r=i.options;return t&&null===i.dataMin||(e={dataMin:C(s&&s.min,T("min",r.min,i.dataMin,o.dataMin,o.min)),dataMax:C(s&&s.max,T("max",r.max,i.dataMax,o.dataMax,o.max))}),e},e.prototype.setBaseSeries=function(t,e){var i=this.chart,o=this.baseSeries=[];t=t||i.options&&i.options.navigator.baseSeries||(i.series.length?S(i.series,function(t){return!t.options.isInternal}).index:0),(i.series||[]).forEach(function(e,i){e.options.isInternal||!e.options.showInNavigator&&(i!==t&&e.options.id!==t||!1===e.options.showInNavigator)||o.push(e)}),this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,e)},e.prototype.updateNavigatorSeries=function(t,e){var i,o,s,r=this,n=r.chart,a=r.baseSeries,h=r.navigatorOptions.series,l={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}}},c=r.series=(r.series||[]).filter(function(t){var e=t.baseSeries;return!(0>a.indexOf(e))||(e&&(A(e,"updatedData",r.updatedDataHandler),delete e.navigatorSeries),t.chart&&t.destroy(),!1)});a&&a.length&&a.forEach(function(t){var p=t.navigatorSeries,d=b({color:t.color,visible:t.visible},M(h)?u.navigator.series:h);p&&!1===r.navigatorOptions.adaptToUpdatedData||(l.name="Navigator "+a.length,i=t.options||{},s=i.navigatorOptions||{},d.dataLabels=P(d.dataLabels),(o=w(i,l,d,s)).pointRange=C(d.pointRange,s.pointRange,u.plotOptions[o.type||"line"].pointRange),d=s.data||d.data,r.hasNavigatorData=r.hasNavigatorData||!!d,o.data=d||i.data&&i.data.slice(0),p&&p.options?p.update(o,e):(t.navigatorSeries=n.initSeries(o),t.navigatorSeries.baseSeries=t,c.push(t.navigatorSeries)))}),(!h.data||a&&a.length)&&!M(h)||(r.hasNavigatorData=!1,(h=P(h)).forEach(function(t,e){l.name="Navigator "+(c.length+1),(o=w(u.navigator.series,{color:n.series[e]&&!n.series[e].options.isInternal&&n.series[e].color||n.options.colors[e]||n.options.colors[0]},l,t)).data=t.data,o.data&&(r.hasNavigatorData=!0,c.push(n.initSeries(o)))})),t&&this.addBaseSeriesEvents()},e.prototype.addBaseSeriesEvents=function(){var t=this,e=t.baseSeries||[];e[0]&&e[0].xAxis&&e[0].eventsToUnbind.push(f(e[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes)),e.forEach(function(e){e.eventsToUnbind.push(f(e,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)})),e.eventsToUnbind.push(f(e,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)})),!1!==this.navigatorOptions.adaptToUpdatedData&&e.xAxis&&e.eventsToUnbind.push(f(e,"updatedData",this.updatedDataHandler)),e.eventsToUnbind.push(f(e,"remove",function(){this.navigatorSeries&&(v(t.series,this.navigatorSeries),x(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))},this)},e.prototype.getBaseSeriesMin=function(t){return this.baseSeries.reduce(function(t,e){return Math.min(t,e.xData&&e.xData.length?e.xData[0]:t)},t)},e.prototype.modifyNavigatorAxisExtremes=function(){var t,e=this.xAxis;void 0!==e.getExtremes&&(!(t=this.getUnionExtremes(!0))||t.dataMin===e.min&&t.dataMax===e.max||(e.min=t.dataMin,e.max=t.dataMax))},e.prototype.modifyBaseAxisExtremes=function(){var t=this.chart.navigator,e=this.getExtremes(),i=e.dataMin,o=e.dataMax;e=e.max-e.min;var s=t.stickToMin,r=t.stickToMax,n=C(this.options.overscroll,0),a=t.series&&t.series[0],h=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(s)var l=i,c=i+e;r&&(c=o+n,s||(l=Math.max(i,c-e,t.getBaseSeriesMin(a&&a.xData?a.xData[0]:-Number.MAX_VALUE)))),h&&(s||r)&&k(l)&&(this.min=this.userMin=l,this.max=this.userMax=c)}t.stickToMin=t.stickToMax=null},e.prototype.updatedDataHandler=function(){var t=this.chart.navigator,e=this.navigatorSeries;t.stickToMax=t.reversedExtremes?0===Math.round(t.zoomedMin):Math.round(t.zoomedMax)>=Math.round(t.size),t.stickToMin=t.shouldStickToMin(this,t),e&&!t.hasNavigatorData&&(e.options.pointStart=this.xData[0],e.setData(this.options.data,!1,null,!1))},e.prototype.shouldStickToMin=function(t,e){e=e.getBaseSeriesMin(t.xData[0]);var i=t.xAxis;t=i.max;var o=i.min;return i=i.options.range,!(!k(t)||!k(o))&&(i&&0<t-e?t-e<i:o<=e)},e.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]),this.eventsToUnbind.push(f(this.chart,"redraw",function(){var t=this.navigator,e=t&&(t.baseSeries&&t.baseSeries[0]&&t.baseSeries[0].xAxis||this.xAxis[0]);e&&t.render(e.min,e.max)}),f(this.chart,"getMargins",function(){var t=this.navigator,e=t.opposite?"plotTop":"marginBottom";this.inverted&&(e=t.opposite?"marginRight":"plotLeft"),this[e]=(this[e]||0)+(t.navigatorEnabled||!this.inverted?t.outlineHeight:0)+t.navigatorOptions.margin}))},e.prototype.destroy=function(){this.removeEvents(),this.xAxis&&(v(this.chart.xAxis,this.xAxis),v(this.chart.axes,this.xAxis)),this.yAxis&&(v(this.chart.yAxis,this.yAxis),v(this.chart.axes,this.yAxis)),(this.series||[]).forEach(function(t){t.destroy&&t.destroy()}),"series xAxis yAxis shades outline scrollbarTrack scrollbarRifles scrollbarGroup scrollbar navigatorGroup rendered".split(" ").forEach(function(t){this[t]&&this[t].destroy&&this[t].destroy(),this[t]=null},this),[this.handles].forEach(function(t){y(t)},this)},e}();return o.Navigator||(o.Navigator=O,s.compose(t),f(e,"beforeShowResetZoom",function(){var t=this.options,e=t.navigator,i=t.rangeSelector;if((e&&e.enabled||i&&i.enabled)&&(!d&&"x"===t.chart.zoomType||d&&"x"===t.chart.pinchType))return!1}),f(e,"beforeRender",function(){var t=this.options;(t.navigator.enabled||t.scrollbar.enabled)&&(this.scroller=this.navigator=new O(this))}),f(e,"afterSetChartSize",function(){var t=this.legend,e=this.navigator;if(e){var i=t&&t.options,o=e.xAxis,s=e.yAxis,r=e.scrollbarHeight;this.inverted?(e.left=e.opposite?this.chartWidth-r-e.height:this.spacing[3]+r,e.top=this.plotTop+r):(e.left=C(o.left,this.plotLeft+r),e.top=e.navigatorOptions.top||this.chartHeight-e.height-r-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(i&&"bottom"===i.verticalAlign&&"proximate"!==i.layout&&i.enabled&&!i.floating?t.legendHeight+C(i.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0)),o&&s&&(this.inverted?o.options.left=s.options.left=e.left:o.options.top=s.options.top=e.top,o.setAxisSize(),s.setAxisSize())}}),f(e,"update",function(t){var e=t.options.navigator||{},i=t.options.scrollbar||{};this.navigator||this.scroller||!e.enabled&&!i.enabled||(w(!0,this.options.navigator,e),w(!0,this.options.scrollbar,i),delete t.options.navigator,delete t.options.scrollbar)}),f(e,"afterUpdate",function(t){this.navigator||this.scroller||!this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new O(this),C(t.redraw,!0)&&this.redraw(t.animation))}),f(e,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),f(h,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),e.prototype.callbacks.push(function(t){var e=t.navigator;e&&t.xAxis[0]&&(t=t.xAxis[0].getExtremes(),e.render(t.min,t.max))})),o.Navigator=O,o.Navigator}),e(i,"Extensions/RangeSelector.js",[i["Core/Axis/Axis.js"],i["Core/Chart/Chart.js"],i["Core/Globals.js"],i["Core/DefaultOptions.js"],i["Core/Renderer/SVG/SVGElement.js"],i["Core/Utilities.js"]],function(e,i,o,s,r,n){var a=s.defaultOptions,h=n.addEvent,l=n.createElement,c=n.css,p=n.defined,d=n.destroyObjectProperties,u=n.discardElement,f=n.extend,g=n.find,m=n.fireEvent,x=n.isNumber,y=n.merge,v=n.objectEach,b=n.pad,S=n.pick,M=n.pInt,k=n.splat;f(a,{rangeSelector:{allButtonsEnabled:!1,buttons:void 0,buttonSpacing:5,dropdown:"responsive",enabled:void 0,verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputBoxBorderColor:"none",inputBoxHeight:17,inputBoxWidth:void 0,inputDateFormat:"%b %e, %Y",inputDateParser:void 0,inputEditDateFormat:"%Y-%m-%d",inputEnabled:!0,inputPosition:{align:"right",x:0,y:0},inputSpacing:5,selected:void 0,buttonPosition:{align:"left",x:0,y:0},inputStyle:{color:"#335cad",cursor:"pointer"},labelStyle:{color:"#666666"}}}),f(a.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"→"});var w=function(){function i(t){this.buttons=void 0,this.buttonOptions=i.prototype.defaultButtons,this.initialButtonGroupWidth=0,this.options=void 0,this.chart=t,this.init(t)}return i.prototype.clickButton=function(t,i){var o=this.chart,s=this.buttonOptions[t],r=o.xAxis[0],n=o.scroller&&o.scroller.getUnionExtremes()||r||{},a=n.dataMin,l=n.dataMax,c=r&&Math.round(Math.min(r.max,S(l,r.max))),d=s.type;n=s._range;var u,f=s.dataGrouping;if(null!==a&&null!==l){if(o.fixedRange=n,this.setSelected(t),f&&(this.forcedDataGrouping=!0,e.prototype.setDataGrouping.call(r||{chart:this.chart},f,!1),this.frozenStates=s.preserveDataGrouping),"month"===d||"year"===d)if(r){d={range:s,max:c,chart:o,dataMin:a,dataMax:l};var g=r.minFromRange.call(d);x(d.newMax)&&(c=d.newMax)}else n=s;else if(n)g=Math.max(c-n,a),c=Math.min(g+n,l);else if("ytd"===d){if(!r)return void(this.deferredYTDClick=t);void 0===l&&(a=Number.MAX_VALUE,l=Number.MIN_VALUE,o.series.forEach(function(t){t=t.xData,a=Math.min(t[0],a),l=Math.max(t[t.length-1],l)}),i=!1),g=u=(c=this.getYTDExtremes(l,a,o.time.useUTC)).min,c=c.max}else"all"===d&&r&&(o.navigator&&o.navigator.baseSeries[0]&&(o.navigator.baseSeries[0].xAxis.options.range=void 0),g=a,c=l);if(p(g)&&(g+=s._offsetMin),p(c)&&(c+=s._offsetMax),this.dropdown&&(this.dropdown.selectedIndex=t+1),r)r.setExtremes(g,c,S(i,!0),void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:s});else{var y=k(o.options.xAxis)[0],v=y.range;y.range=n;var b=y.min;y.min=u,h(o,"load",function(){y.range=v,y.min=b})}m(this,"afterBtnClick")}},i.prototype.setSelected=function(t){this.selected=this.options.selected=t},i.prototype.init=function(t){var e=this,i=t.options.rangeSelector,o=i.buttons||e.defaultButtons.slice(),s=i.selected,r=function(){var t=e.minInput,i=e.maxInput;t&&t.blur&&m(t,"blur"),i&&i.blur&&m(i,"blur")};e.chart=t,e.options=i,e.buttons=[],e.buttonOptions=o,this.eventsToUnbind=[],this.eventsToUnbind.push(h(t.container,"mousedown",r)),this.eventsToUnbind.push(h(t,"resize",r)),o.forEach(e.computeButtonRange),void 0!==s&&o[s]&&this.clickButton(s,!1),this.eventsToUnbind.push(h(t,"load",function(){t.xAxis&&t.xAxis[0]&&h(t.xAxis[0],"setExtremes",function(i){this.max-this.min!==t.fixedRange&&"rangeSelectorButton"!==i.trigger&&"updatedData"!==i.trigger&&e.forcedDataGrouping&&!e.frozenStates&&this.setDataGrouping(!1,!1)})}))},i.prototype.updateButtonStates=function(){var t=this,e=this.chart,i=this.dropdown,o=e.xAxis[0],s=Math.round(o.max-o.min),r=!o.hasVisibleSeries,n=e.scroller&&e.scroller.getUnionExtremes()||o,a=n.dataMin,h=n.dataMax,l=(e=t.getYTDExtremes(h,a,e.time.useUTC)).min,c=e.max,p=t.selected,d=x(p),u=t.options.allButtonsEnabled,f=t.buttons;t.buttonOptions.forEach(function(e,n){var g=e._range,m=e.type,x=e.count||1,y=f[n],v=0,b=e._offsetMax-e._offsetMin;e=n===p;var S=g>h-a,M=g<o.minRange,k=!1,w=!1;g=g===s,("month"===m||"year"===m)&&s+36e5>=864e5*{month:28,year:365}[m]*x-b&&s-36e5<=864e5*{month:31,year:366}[m]*x+b?g=!0:"ytd"===m?(g=c-l+b===s,k=!e):"all"===m&&(g=o.max-o.min>=h-a,w=!e&&d&&g),m=!u&&(S||M||w||r),x=e&&g||g&&!d&&!k||e&&t.frozenStates,m?v=3:x&&(d=!0,v=2),y.state!==v&&(y.setState(v),i&&(i.options[n+1].disabled=m,2===v&&(i.selectedIndex=n+1)),0===v&&p===n&&t.setSelected())})},i.prototype.computeButtonRange=function(t){var e=t.type,i=t.count||1,o={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5};o[e]?t._range=o[e]*i:"month"!==e&&"year"!==e||(t._range=864e5*{month:30,year:365}[e]*i),t._offsetMin=S(t.offsetMin,0),t._offsetMax=S(t.offsetMax,0),t._range+=t._offsetMax-t._offsetMin},i.prototype.getInputValue=function(t){t="min"===t?this.minInput:this.maxInput;var e=this.chart.options.rangeSelector,i=this.chart.time;return t?("text"===t.type&&e.inputDateParser||this.defaultInputDateParser)(t.value,i.useUTC,i):0},i.prototype.setInputValue=function(t,e){var i=this.options,o=this.chart.time,s="min"===t?this.minInput:this.maxInput;if(t="min"===t?this.minDateBox:this.maxDateBox,s){var r=s.getAttribute("data-hc-time");r=p(r)?Number(r):void 0,p(e)&&(p(r)&&s.setAttribute("data-hc-time-previous",r),s.setAttribute("data-hc-time",e),r=e),s.value=o.dateFormat(this.inputTypeFormats[s.type]||i.inputEditDateFormat,r),t&&t.attr({text:o.dateFormat(i.inputDateFormat,r)})}},i.prototype.setInputExtremes=function(t,e,i){if(t="min"===t?this.minInput:this.maxInput){var o=this.inputTypeFormats[t.type],s=this.chart.time;o&&(e=s.dateFormat(o,e),t.min!==e&&(t.min=e),i=s.dateFormat(o,i),t.max!==i&&(t.max=i))}},i.prototype.showInput=function(t){var e="min"===t?this.minDateBox:this.maxDateBox;if((t="min"===t?this.minInput:this.maxInput)&&e&&this.inputGroup){var i="text"===t.type,o=this.inputGroup,s=o.translateX;o=o.translateY;var r=this.options.inputBoxWidth;c(t,{width:i?e.width+(r?-2:20)+"px":"auto",height:i?e.height-2+"px":"auto",border:"2px solid silver"}),c(t,i&&r?{left:s+e.x+"px",top:o+"px"}:{left:Math.min(Math.round(e.x+s-(t.offsetWidth-e.width)/2),this.chart.chartWidth-t.offsetWidth)+"px",top:o-(t.offsetHeight-e.height)/2+"px"})}},i.prototype.hideInput=function(t){(t="min"===t?this.minInput:this.maxInput)&&c(t,{top:"-9999em",border:0,width:"1px",height:"1px"})},i.prototype.defaultInputDateParser=function(t,e,i){var s,r=t.split("/").join("-").split(" ").join("T");(-1===r.indexOf("T")&&(r+="T00:00"),e)?r+="Z":((s=o.isSafari)&&(s=!(6<(s=r).length&&(s.lastIndexOf("-")===s.length-6||s.lastIndexOf("+")===s.length-6))),s&&(r+=0>=(s=new Date(r).getTimezoneOffset()/60)?"+"+b(-s)+":00":"-"+b(s)+":00"));return r=Date.parse(r),x(r)||(t=t.split("-"),r=Date.UTC(M(t[0]),M(t[1])-1,M(t[2]))),i&&e&&x(r)&&(r+=i.getTimezoneOffset(r)),r},i.prototype.drawInput=function(t){function e(){var e=n.getInputValue(t),o=i.xAxis[0],s=i.scroller&&i.scroller.xAxis?i.scroller.xAxis:o,r=s.dataMin;s=s.dataMax;var a=n.maxInput,h=n.minInput;e!==Number(m.getAttribute("data-hc-time-previous"))&&x(e)&&(m.setAttribute("data-hc-time-previous",e),u&&a&&x(r)?e>Number(a.getAttribute("data-hc-time"))?e=void 0:e<r&&(e=r):h&&x(s)&&(e<Number(h.getAttribute("data-hc-time"))?e=void 0:e>s&&(e=s)),void 0!==e&&o.setExtremes(u?e:o.min,u?o.max:e,void 0,void 0,{trigger:"rangeSelectorInput"}))}var i=this.chart,s=this.div,r=this.inputGroup,n=this,h=i.renderer.style||{},p=i.renderer,d=i.options.rangeSelector,u="min"===t,g=a.lang[u?"rangeSelectorFrom":"rangeSelectorTo"]||"";g=p.label(g,0).addClass("highcharts-range-label").attr({padding:g?2:0,height:g?d.inputBoxHeight:0}).add(r),p=p.label("",0).addClass("highcharts-range-input").attr({padding:2,width:d.inputBoxWidth,height:d.inputBoxHeight,"text-align":"center"}).on("click",function(){n.showInput(t),n[t+"Input"].focus()}),i.styledMode||p.attr({stroke:d.inputBoxBorderColor,"stroke-width":1}),p.add(r);var m=l("input",{name:t,className:"highcharts-range-selector"},void 0,s);m.setAttribute("type",function(t){if(-1!==t.indexOf("%L"))return"text";var e="aAdewbBmoyY".split("").some(function(e){return-1!==t.indexOf("%"+e)}),i="HkIlMS".split("").some(function(e){return-1!==t.indexOf("%"+e)});return e&&i?"datetime-local":e?"date":i?"time":"text"}(d.inputDateFormat||"%b %e, %Y")),i.styledMode||(g.css(y(h,d.labelStyle)),p.css(y({color:"#333333"},h,d.inputStyle)),c(m,f({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:h.fontSize,fontFamily:h.fontFamily,top:"-9999em"},d.inputStyle))),m.onfocus=function(){n.showInput(t)},m.onblur=function(){m===o.doc.activeElement&&e(),n.hideInput(t),n.setInputValue(t),m.blur()};var v=!1;return m.onchange=function(){v||(e(),n.hideInput(t),m.blur())},m.onkeypress=function(t){13===t.keyCode&&e()},m.onkeydown=function(t){v=!0,38!==t.keyCode&&40!==t.keyCode||e()},m.onkeyup=function(){v=!1},{dateBox:p,input:m,label:g}},i.prototype.getPosition=function(){var t=this.chart,e=t.options.rangeSelector;return{buttonTop:(t="top"===e.verticalAlign?t.plotTop-t.axisOffset[0]:0)+e.buttonPosition.y,inputTop:t+e.inputPosition.y-10}},i.prototype.getYTDExtremes=function(t,e,i){var o=this.chart.time,s=new o.Date(t),r=o.get("FullYear",s);return i=i?o.Date.UTC(r,0,1):+new o.Date(r,0,1),e=Math.max(e,i),s=s.getTime(),{max:Math.min(t||s,s),min:e}},i.prototype.render=function(t,e){var i=this.chart,o=i.renderer,s=i.container,r=i.options,n=r.rangeSelector,a=S(r.chart.style&&r.chart.style.zIndex,0)+1;if(r=n.inputEnabled,!1!==n.enabled){if(this.rendered||(this.group=o.g("range-selector-group").attr({zIndex:7}).add(),this.div=l("div",void 0,{position:"relative",height:0,zIndex:a}),this.buttonOptions.length&&this.renderButtons(),s.parentNode&&s.parentNode.insertBefore(this.div,s),r&&(this.inputGroup=o.g("input-group").add(this.group),o=this.drawInput("min"),this.minDateBox=o.dateBox,this.minLabel=o.label,this.minInput=o.input,o=this.drawInput("max"),this.maxDateBox=o.dateBox,this.maxLabel=o.label,this.maxInput=o.input)),r&&(this.setInputValue("min",t),this.setInputValue("max",e),t=i.scroller&&i.scroller.getUnionExtremes()||i.xAxis[0]||{},p(t.dataMin)&&p(t.dataMax)&&(i=i.xAxis[0].minRange||0,this.setInputExtremes("min",t.dataMin,Math.min(t.dataMax,this.getInputValue("max"))-i),this.setInputExtremes("max",Math.max(t.dataMin,this.getInputValue("min"))+i,t.dataMax)),this.inputGroup)){var h=0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(function(t){if(t){var e=t.getBBox().width;e&&(t.attr({x:h}),h+=e+n.inputSpacing)}})}this.alignElements(),this.rendered=!0}},i.prototype.renderButtons=function(){var t=this,e=this.buttons,i=this.options,s=a.lang,r=this.chart.renderer,n=y(i.buttonTheme),c=n&&n.states,p=n.width||28;delete n.width,delete n.states,this.buttonGroup=r.g("range-selector-buttons").add(this.group);var d=this.dropdown=l("select",void 0,{position:"absolute",width:"1px",height:"1px",padding:0,border:0,top:"-9999em",cursor:"pointer",opacity:1e-4},this.div);h(d,"touchstart",function(){d.style.fontSize="16px"}),[[o.isMS?"mouseover":"mouseenter"],[o.isMS?"mouseout":"mouseleave"],["change","click"]].forEach(function(i){var o=i[0],s=i[1];h(d,o,function(){var i=e[t.currentButtonIndex()];i&&m(i.element,s||o)})}),this.zoomText=r.label(s&&s.rangeSelectorZoom||"",0).attr({padding:i.buttonTheme.padding,height:i.buttonTheme.height,paddingLeft:0,paddingRight:0}).add(this.buttonGroup),this.chart.styledMode||(this.zoomText.css(i.labelStyle),n["stroke-width"]=S(n["stroke-width"],0)),l("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,d),this.buttonOptions.forEach(function(i,o){l("option",{textContent:i.title||i.text},void 0,d),e[o]=r.button(i.text,0,0,function(e){var s,r=i.events&&i.events.click;r&&(s=r.call(i,e)),!1!==s&&t.clickButton(o),t.isActive=!0},n,c&&c.hover,c&&c.select,c&&c.disabled).attr({"text-align":"center",width:p}).add(t.buttonGroup),i.title&&e[o].attr("title",i.title)})},i.prototype.alignElements=function(){var t=this,e=this.buttonGroup,i=this.buttons,o=this.chart,s=this.group,r=this.inputGroup,n=this.options,a=this.zoomText,h=o.options,l=h.exporting&&!1!==h.exporting.enabled&&h.navigation&&h.navigation.buttonOptions;h=n.buttonPosition;var c=n.inputPosition,p=n.verticalAlign,d=function(e,i){return l&&t.titleCollision(o)&&"top"===p&&"right"===i.align&&i.y-e.getBBox().height-12<(l.y||0)+(l.height||0)+o.spacing[0]?-40:0},u=o.plotLeft;if(s&&h&&c){var f=h.x-o.spacing[3];if(e){if(this.positionButtons(),!this.initialButtonGroupWidth){var g=0;a&&(g+=a.getBBox().width+5),i.forEach(function(t,e){g+=t.width,e!==i.length-1&&(g+=n.buttonSpacing)}),this.initialButtonGroupWidth=g}u-=o.spacing[3],this.updateButtonStates(),a=d(e,h),this.alignButtonGroup(a),s.placed=e.placed=o.hasLoaded}e=0,r&&(e=d(r,c),"left"===c.align?f=u:"right"===c.align&&(f=-Math.max(o.axisOffset[1],-e)),r.align({y:c.y,width:r.getBBox().width,align:c.align,x:c.x+f-2},!0,o.spacingBox),r.placed=o.hasLoaded),this.handleCollision(e),s.align({verticalAlign:p},!0,o.spacingBox),r=s.alignAttr.translateY,e=s.getBBox().height+20,d=0,"bottom"===p&&(d=r-(e=e+(d=(d=o.legend&&o.legend.options)&&"bottom"===d.verticalAlign&&d.enabled&&!d.floating?o.legend.legendHeight+S(d.margin,10):0)-20)-(n.floating?0:n.y)-(o.titleOffset?o.titleOffset[2]:0)-10),"top"===p?(n.floating&&(d=0),o.titleOffset&&o.titleOffset[0]&&(d=o.titleOffset[0]),d+=o.margin[0]-o.spacing[0]||0):"middle"===p&&(c.y===h.y?d=r:(c.y||h.y)&&(d=0>c.y||0>h.y?d-Math.min(c.y,h.y):r-e)),s.translate(n.x,n.y+Math.floor(d)),h=this.minInput,c=this.maxInput,r=this.dropdown,n.inputEnabled&&h&&c&&(h.style.marginTop=s.translateY+"px",c.style.marginTop=s.translateY+"px"),r&&(r.style.marginTop=s.translateY+"px")}},i.prototype.alignButtonGroup=function(t,e){var i=this.chart,o=this.buttonGroup,s=this.options.buttonPosition,r=i.plotLeft-i.spacing[3],n=s.x-i.spacing[3];"right"===s.align?n+=t-r:"center"===s.align&&(n-=r/2),o&&o.align({y:s.y,width:S(e,this.initialButtonGroupWidth),align:s.align,x:n},!0,i.spacingBox)},i.prototype.positionButtons=function(){var t=this.buttons,e=this.chart,i=this.options,o=this.zoomText,s=e.hasLoaded?"animate":"attr",r=i.buttonPosition,n=e.plotLeft,a=n;o&&"hidden"!==o.visibility&&(o[s]({x:S(n+r.x,n)}),a+=r.x+o.getBBox().width+5),this.buttonOptions.forEach(function(e,o){"hidden"!==t[o].visibility?(t[o][s]({x:a}),a+=t[o].width+i.buttonSpacing):t[o][s]({x:n})})},i.prototype.handleCollision=function(t){var e=this,i=this.chart,o=this.buttonGroup,s=this.inputGroup,r=this.options,n=r.buttonPosition,a=r.dropdown,h=r.inputPosition;r=function(){var t=0;return e.buttons.forEach(function(e){(e=e.getBBox()).width>t&&(t=e.width)}),t};var l=function(e){if(s&&o){var i=s.alignAttr.translateX+s.alignOptions.x-t+s.getBBox().x+2,r=s.alignOptions.width,a=o.alignAttr.translateX+o.getBBox().x;return a+e>i&&i+r>a&&n.y<h.y+s.getBBox().height}return!1},c=function(){s&&o&&s.attr({translateX:s.alignAttr.translateX+(i.axisOffset[1]>=-t?0:-t),translateY:s.alignAttr.translateY+o.getBBox().height+10})};if(o){if("always"===a)return this.collapseButtons(t),void(l(r())&&c());"never"===a&&this.expandButtons()}s&&o?h.align===n.align||l(this.initialButtonGroupWidth+20)?"responsive"===a?(this.collapseButtons(t),l(r())&&c()):c():"responsive"===a&&this.expandButtons():o&&"responsive"===a&&(this.initialButtonGroupWidth>i.plotWidth?this.collapseButtons(t):this.expandButtons())},i.prototype.collapseButtons=function(t){var e=this.buttons,i=this.buttonOptions,o=this.chart,s=this.dropdown,r=this.options,n=this.zoomText,a=o.userOptions.rangeSelector&&o.userOptions.rangeSelector.buttonTheme||{},h=function(t){return{text:t?t+" ▾":"▾",width:"auto",paddingLeft:S(r.buttonTheme.paddingLeft,a.padding,8),paddingRight:S(r.buttonTheme.paddingRight,a.padding,8)}};n&&n.hide();var l=!1;i.forEach(function(t,i){2!==(i=e[i]).state?i.hide():(i.show(),i.attr(h(t.text)),l=!0)}),l||(s&&(s.selectedIndex=0),e[0].show(),e[0].attr(h(this.zoomText&&this.zoomText.textStr))),i=r.buttonPosition.align,this.positionButtons(),"right"!==i&&"center"!==i||this.alignButtonGroup(t,e[this.currentButtonIndex()].getBBox().width),this.showDropdown()},i.prototype.expandButtons=function(){var t=this.buttons,e=this.buttonOptions,i=this.options,o=this.zoomText;this.hideDropdown(),o&&o.show(),e.forEach(function(e,o){(o=t[o]).show(),o.attr({text:e.text,width:i.buttonTheme.width||28,paddingLeft:S(i.buttonTheme.paddingLeft,"unset"),paddingRight:S(i.buttonTheme.paddingRight,"unset")}),2>o.state&&o.setState(0)}),this.positionButtons()},i.prototype.currentButtonIndex=function(){var t=this.dropdown;return t&&0<t.selectedIndex?t.selectedIndex-1:0},i.prototype.showDropdown=function(){var t=this.buttonGroup,e=this.buttons,i=this.chart,o=this.dropdown;if(t&&o){var s=t.translateX;t=t.translateY,e=e[this.currentButtonIndex()].getBBox(),c(o,{left:i.plotLeft+s+"px",top:t+.5+"px",width:e.width+"px",height:e.height+"px"}),this.hasVisibleDropdown=!0}},i.prototype.hideDropdown=function(){var t=this.dropdown;t&&(c(t,{top:"-9999em",width:"1px",height:"1px"}),this.hasVisibleDropdown=!1)},i.prototype.getHeight=function(){var t=this.options,e=this.group,i=t.y,o=t.buttonPosition.y,s=t.inputPosition.y;return t.height?t.height:(this.alignElements(),t=e?e.getBBox(!0).height+13+i:0,e=Math.min(s,o),(0>s&&0>o||0<s&&0<o)&&(t+=Math.abs(e)),t)},i.prototype.titleCollision=function(t){return!(t.options.title.text||t.options.subtitle.text)},i.prototype.update=function(t){var e=this.chart;y(!0,e.options.rangeSelector,t),this.destroy(),this.init(e),this.render()},i.prototype.destroy=function(){var e=this,o=e.minInput,s=e.maxInput;e.eventsToUnbind&&(e.eventsToUnbind.forEach(function(t){return t()}),e.eventsToUnbind=void 0),d(e.buttons),o&&(o.onfocus=o.onblur=o.onchange=null),s&&(s.onfocus=s.onblur=s.onchange=null),v(e,function(o,s){o&&"chart"!==s&&(o instanceof r?o.destroy():o instanceof t.HTMLElement&&u(o)),o!==i.prototype[s]&&(e[s]=null)},this)},i}();if(w.prototype.defaultButtons=[{type:"month",count:1,text:"1m",title:"View 1 month"},{type:"month",count:3,text:"3m",title:"View 3 months"},{type:"month",count:6,text:"6m",title:"View 6 months"},{type:"ytd",text:"YTD",title:"View year to date"},{type:"year",count:1,text:"1y",title:"View 1 year"},{type:"all",text:"All",title:"View all"}],w.prototype.inputTypeFormats={"datetime-local":"%Y-%m-%dT%H:%M:%S",date:"%Y-%m-%d",time:"%H:%M:%S"},e.prototype.minFromRange=function(){var t=this.range,e=t.type,i=this.max,o=this.chart.time,s=function(t,i){var s="year"===e?"FullYear":"Month",r=new o.Date(t),n=o.get(s,r);return o.set(s,r,n+i),n===o.get(s,r)&&o.set("Date",r,0),r.getTime()-t};if(x(t))var r=i-t,n=t;else r=i+s(i,-t.count),this.chart&&(this.chart.fixedRange=i-r);var a=S(this.dataMin,Number.MIN_VALUE);return x(r)||(r=a),r<=a&&(r=a,void 0===n&&(n=s(r,t.count)),this.newMax=Math.min(r+n,this.dataMax)),x(i)||(r=void 0),r},!o.RangeSelector){var C=[],A=function(t){function e(){n&&(i=t.xAxis[0].getExtremes(),o=t.legend,r=n&&n.options.verticalAlign,x(i.min)&&n.render(i.min,i.max),o.display&&"top"===r&&r===o.options.verticalAlign&&((s=y(t.spacingBox)).y="vertical"===o.options.layout?t.plotTop:s.y+n.getHeight(),o.group.placed=!1,o.align(s)))}var i,o,s,r,n=t.rangeSelector;n&&(g(C,function(e){return e[0]===t})||C.push([t,[h(t.xAxis[0],"afterSetExtremes",function(t){n&&n.render(t.min,t.max)}),h(t,"redraw",e)]]),e())};h(i,"afterGetContainer",function(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new w(this))}),h(i,"beforeRender",function(){var t=this.axes,e=this.rangeSelector;e&&(x(e.deferredYTDClick)&&(e.clickButton(e.deferredYTDClick),delete e.deferredYTDClick),t.forEach(function(t){t.updateNames(),t.setScale()}),this.getAxisMargins(),e.render(),t=e.options.verticalAlign,e.options.floating||("bottom"===t?this.extraBottomMargin=!0:"middle"!==t&&(this.extraTopMargin=!0)))}),h(i,"update",function(t){var e=t.options.rangeSelector;t=this.rangeSelector;var i=this.extraBottomMargin,o=this.extraTopMargin;e&&e.enabled&&!p(t)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=t=new w(this)),this.extraTopMargin=this.extraBottomMargin=!1,t&&(A(this),e=e&&e.verticalAlign||t.options&&t.options.verticalAlign,t.options.floating||("bottom"===e?this.extraBottomMargin=!0:"middle"!==e&&(this.extraTopMargin=!0)),this.extraBottomMargin!==i||this.extraTopMargin!==o)&&(this.isDirtyBox=!0)}),h(i,"render",function(){var t=this.rangeSelector;t&&!t.options.floating&&(t.render(),"bottom"===(t=t.options.verticalAlign)?this.extraBottomMargin=!0:"middle"!==t&&(this.extraTopMargin=!0))}),h(i,"getMargins",function(){var t=this.rangeSelector;t&&(t=t.getHeight(),this.extraTopMargin&&(this.plotTop+=t),this.extraBottomMargin&&(this.marginBottom+=t))}),i.prototype.callbacks.push(A),h(i,"destroy",function(){for(var t=0;t<C.length;t++){var e=C[t];if(e[0]===this){e[1].forEach(function(t){return t()}),C.splice(t,1);break}}}),o.RangeSelector=w}return w}),e(i,"Core/Chart/StockChart.js",[i["Core/Animation/AnimationUtilities.js"],i["Core/Axis/Axis.js"],i["Core/Chart/Chart.js"],i["Core/FormatUtilities.js"],i["Core/DefaultOptions.js"],i["Core/Series/Series.js"],i["Core/Renderer/SVG/SVGRenderer.js"],i["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a){function h(t,e){return"xAxis"===t?{minPadding:0,maxPadding:0,overscroll:0,ordinal:!0,title:{text:null},labels:{overflow:"justify"},showLastLabel:!0}:"yAxis"===t?{labels:{y:-2},opposite:b(e.opposite,!0),showLastLabel:!(!e.categories&&"category"!==e.type),title:{text:null}}:{}}function l(t,e){if("xAxis"===t){t=d();var i={type:"datetime",categories:void 0};return b(e.navigator&&e.navigator.enabled,t.navigator.enabled,!0)&&(i.startOnTick=!1,i.endOnTick=!1),i}return{}}var c=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),p=o.format,d=s.getOptions;t=a.addEvent;var u=a.clamp,f=a.defined,g=a.extend,m=a.find,x=a.isNumber,y=a.isString,v=a.merge,b=a.pick,S=a.splat;return function(t){t.stockChart=function(e,i,o){return new t(e,i,o)}}((a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return c(e,t),e.prototype.init=function(e,i){var o=d(),s=e.xAxis,r=e.yAxis,n=b(e.navigator&&e.navigator.enabled,o.navigator.enabled,!0);e.xAxis=e.yAxis=void 0,n=v({chart:{panning:{enabled:!0,type:"x"},pinchType:"x"},navigator:{enabled:n},scrollbar:{enabled:b(o.scrollbar&&o.scrollbar.enabled,!0)},rangeSelector:{enabled:b(o.rangeSelector.enabled,!0)},title:{text:null},tooltip:{split:b(o.tooltip.split,!0),crosshairs:!0},legend:{enabled:!1}},e,{isStock:!0}),e.xAxis=s,e.yAxis=r,n.xAxis=S(e.xAxis||{}).map(function(t,i){return v(h("xAxis",t),o.xAxis,o.xAxis&&o.xAxis[i],t,l("xAxis",e))}),n.yAxis=S(e.yAxis||{}).map(function(t,e){return v(h("yAxis",t),o.yAxis,o.yAxis&&o.yAxis[e],t)}),t.prototype.init.call(this,n,i)},e.prototype.createAxis=function(e,i){return i.axis=v(h(e,i.axis),i.axis,l(e,this.userOptions)),t.prototype.createAxis.call(this,e,i)},e}(i))||(a={})),t(r,"setOptions",function(t){var e;this.chart.options.isStock&&(this.is("column")||this.is("columnrange")?e={borderWidth:0,shadow:!1}:this.is("scatter")||this.is("sma")||(e={marker:{enabled:!1,radius:2}}),e&&(t.plotOptions[this.type]=v(t.plotOptions[this.type],e)))}),t(e,"autoLabelAlign",function(t){var e=this.chart,i=this.options;e=e._labelPanes=e._labelPanes||{};var o=this.options.labels;this.chart.options.isStock&&"yAxis"===this.coll&&(!e[i=i.top+","+i.height]&&o.enabled&&(15===o.x&&(o.x=0),void 0===o.align&&(o.align="right"),e[i]=this,t.align="right",t.preventDefault()))}),t(e,"destroy",function(){var t=this.chart,e=this.options&&this.options.top+","+this.options.height;e&&t._labelPanes&&t._labelPanes[e]===this&&delete t._labelPanes[e]}),t(e,"getPlotLinePath",function(t){var e,i,o,s,r=this,n=this.isLinked&&!this.series?this.linkedParent.series:this.series,a=r.chart,h=a.renderer,l=r.left,c=r.top,p=[],d=[],g=t.translatedValue,v=t.value,S=t.force;if(a.options.isStock&&!1!==t.acrossPanes&&"xAxis"===r.coll||"yAxis"===r.coll){t.preventDefault(),d=function(t){var e="xAxis"===t?"yAxis":"xAxis";return t=r.options[e],x(t)?[a[e][t]]:y(t)?[a.get(t)]:n.map(function(t){return t[e]})}(r.coll),(r.isXAxis?a.yAxis:a.xAxis).forEach(function(t){if(!f(t.options.id)||-1===t.options.id.indexOf("navigator")){var e=t.isXAxis?"yAxis":"xAxis";e=f(t.options[e])?a[e][t.options[e]]:a[e][0],r===e&&d.push(t)}});var M=d.length?[]:[r.isXAxis?a.yAxis[0]:a.xAxis[0]];d.forEach(function(t){-1!==M.indexOf(t)||m(M,function(e){return e.pos===t.pos&&e.len===t.len})||M.push(t)});var k=b(g,r.translate(v,null,null,t.old));x(k)&&(r.horiz?M.forEach(function(t){var n;i=t.pos,s=i+t.len,e=o=Math.round(k+r.transB),"pass"!==S&&(e<l||e>l+r.width)&&(S?e=o=u(e,l,l+r.width):n=!0),n||p.push(["M",e,i],["L",o,s])}):M.forEach(function(t){var n;e=t.pos,o=e+t.len,i=s=Math.round(c+r.height-k),"pass"!==S&&(i<c||i>c+r.height)&&(S?i=s=u(i,c,c+r.height):n=!0),n||p.push(["M",e,i],["L",o,s])})),t.path=0<p.length?h.crispPolyLine(p,t.lineWidth||1):null}}),n.prototype.crispPolyLine=function(t,e){for(var i=0;i<t.length;i+=2){var o=t[i],s=t[i+1];o[1]===s[1]&&(o[1]=s[1]=Math.round(o[1])-e%2/2),o[2]===s[2]&&(o[2]=s[2]=Math.round(o[2])+e%2/2)}return t},t(e,"afterHideCrosshair",function(){this.crossLabel&&(this.crossLabel=this.crossLabel.hide())}),t(e,"afterDrawCrosshair",function(t){var e,i;if(this.crosshair&&this.crosshair.label&&this.crosshair.label.enabled&&this.cross&&x(this.min)&&x(this.max)){var o=this.chart,s=this.logarithmic,r=this.crosshair.label,n=this.horiz,a=this.opposite,h=this.left,l=this.top,c=this.crossLabel,d=r.format,u="",f="inside"===this.options.tickPosition,m=!1!==this.crosshair.snap,y=0,v=t.e||this.cross&&this.cross.e;t=t.point;var S=this.min,M=this.max;s&&(S=s.lin2log(S),M=s.lin2log(M)),s=n?"center":a?"right"===this.labelAlign?"right":"left":"left"===this.labelAlign?"left":"center",c||(c=this.crossLabel=o.renderer.label("",0,void 0,r.shape||"callout").addClass("highcharts-crosshair-label highcharts-color-"+(t?t.series.colorIndex:this.series[0]&&this.series[0].colorIndex)).attr({align:r.align||s,padding:b(r.padding,8),r:b(r.borderRadius,3),zIndex:2}).add(this.labelGroup),o.styledMode||c.attr({fill:r.backgroundColor||t&&t.series&&t.series.color||"#666666",stroke:r.borderColor||"","stroke-width":r.borderWidth||0}).css(g({color:"#ffffff",fontWeight:"normal",fontSize:"11px",textAlign:"center"},r.style||{}))),n?(s=m?(t.plotX||0)+h:v.chartX,l+=a?0:this.height):(s=a?this.width+h:0,l=m?(t.plotY||0)+l:v.chartY),d||r.formatter||(this.dateTime&&(u="%b %d, %Y"),d="{value"+(u?":"+u:"")+"}"),u=m?this.isXAxis?t.x:t.y:this.toValue(n?v.chartX:v.chartY),m=t?t.series.isPointInside(t):x(u)&&u>S&&u<M,v="",d?v=p(d,{value:u},o):r.formatter&&x(u)&&(v=r.formatter.call(this,u)),c.attr({text:v,x:s,y:l,visibility:m?"inherit":"hidden"}),r=c.getBBox(),x(c.y)&&(n?(f&&!a||!f&&a)&&(l=c.y-r.height):l=c.y-r.height/2),n?(e=h-r.x,i=h+this.width-r.x):(e="left"===this.labelAlign?h:0,i="right"===this.labelAlign?h+this.width:o.chartWidth),c.translateX<e&&(y=e-c.translateX),c.translateX+r.width>=i&&(y=-(c.translateX+r.width-i)),c.attr({x:s+y,y:l,anchorX:n?s:this.opposite?0:o.chartWidth,anchorY:n?this.opposite?o.chartHeight:0:l+r.height/2})}}),r.prototype.forceCropping=function(){var t=this.chart,e=this.options.dataGrouping;return!1!==this.allowDG&&e&&b(e.enabled,t.options.isStock)},t(i,"update",function(t){"scrollbar"in(t=t.options)&&this.navigator&&(v(!0,this.options.scrollbar,t.scrollbar),this.navigator.update({},!1),delete t.scrollbar)}),a}),e(i,"masters/modules/stock.src.js",[i["Core/Globals.js"],i["Core/Axis/OrdinalAxis.js"],i["Series/DataModifyComposition.js"],i["Core/Scrollbar.js"],i["Core/Chart/StockChart.js"]],function(t,e,i,o,s){t.Scrollbar=o,t.StockChart=t.stockChart=s.stockChart,o.compose(t.Axis),e.compose(t.Axis,t.Series,t.Chart),i.compose(t.Series,t.Axis,t.Point)}),e(i,"masters/highstock.src.js",[i["masters/highcharts.src.js"]],function(t){return t.product="Highstock",t}),i["masters/highstock.src.js"]._modules=i,i["masters/highstock.src.js"]})},cBTA:function(t,e,i){var o,s;!function(r){"object"==typeof t&&t.exports?(r.default=r,t.exports=r):(o=[i("BjTr")],void 0===(s=function(t){return r(t),r.Highcharts=t,r}.apply(e,o))||(t.exports=s))}(function(t){function e(t,e,i,o){t.hasOwnProperty(e)||(t[e]=o.apply(null,i),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}e(t=t?t._modules:{},"Extensions/Math3D.js",[t["Core/Globals.js"],t["Core/Utilities.js"]],function(t,e){function i(t,e,i){return e=0<i&&i<Number.POSITIVE_INFINITY?i/(t.z+e.z+i):1,{x:t.x*e,y:t.y*e}}function o(t,e,o,s){var r=e.options.chart.options3d,n=a(s,!!o&&e.inverted),l={x:e.plotWidth/2,y:e.plotHeight/2,z:r.depth/2,vd:a(r.depth,1)*a(r.viewDistance,0)},c=e.scale3d||1;s=h*r.beta*(n?-1:1),r=h*r.alpha*(n?-1:1);var p=Math.cos(r),d=Math.cos(-s),u=Math.sin(r),f=Math.sin(-s);return o||(l.x+=e.plotLeft,l.y+=e.plotTop),t.map(function(t){var e=(n?t.y:t.x)-l.x,o=(n?t.x:t.y)-l.y;return t=(t.z||0)-l.z,(o=i(e={x:d*e-f*t,y:-u*f*e+p*o-d*u*t,z:p*f*e+u*o+p*d*t},l,l.vd)).x=o.x*c+l.x,o.y=o.y*c+l.y,o.z=e.z*c+l.z,{x:n?o.y:o.x,y:n?o.x:o.y,z:o.z}})}function s(t,e){var i=e.options.chart.options3d,o=e.plotWidth/2;return e=e.plotHeight/2,i=a(i.depth,1)*a(i.viewDistance,0)+i.depth,Math.sqrt(Math.pow(o-a(t.plotX,t.x),2)+Math.pow(e-a(t.plotY,t.y),2)+Math.pow(i-a(t.plotZ,t.z),2))}function r(t){var e,i=0;for(e=0;e<t.length;e++){var o=(e+1)%t.length;i+=t[e].x*t[o].y-t[o].x*t[e].y}return i/2}function n(t,e,i){return r(o(t,e,i))}var a=e.pick,h=t.deg2rad;return t.perspective3D=i,t.perspective=o,t.pointCameraDistance=s,t.shapeArea=r,t.shapeArea3d=n,{perspective:o,perspective3D:i,pointCameraDistance:s,shapeArea:r,shapeArea3D:n}}),e(t,"Core/Renderer/SVG/SVGElement3D.js",[t["Core/Color/Color.js"],t["Core/Renderer/SVG/SVGElement.js"],t["Core/Utilities.js"]],function(t,e,i){var o=t.parse,s=i.defined;t=i.merge;var r=i.objectEach,n=i.pick,a={base:{initArgs:function(t){var e=this,i=e.renderer,o=i[e.pathType+"Path"](t),s=o.zIndexes;e.parts.forEach(function(t){var r={class:"highcharts-3d-"+t,zIndex:s[t]||0};i.styledMode&&("top"===t?r.filter="url(#highcharts-brighter)":"side"===t&&(r.filter="url(#highcharts-darker)")),e[t]=i.path(o[t]).attr(r).add(e)}),e.attr({"stroke-linejoin":"round",zIndex:s.group}),e.originalDestroy=e.destroy,e.destroy=e.destroyParts,e.forcedSides=o.forcedSides},singleSetterForParts:function(t,e,i,o,s,n){var a={};o=[null,null,o||"attr",s,n];var h=i&&i.zIndexes;return i?(h&&h.group&&this.attr({zIndex:h.group}),r(i,function(e,o){a[o]={},a[o][t]=e,h&&(a[o].zIndex=i.zIndexes[o]||0)}),o[1]=a):(a[t]=e,o[0]=a),this.processParts.apply(this,o)},processParts:function(t,e,i,o,s){var r=this;return r.parts.forEach(function(a){e&&(t=n(e[a],!1)),!1!==t&&r[a][i](t,o,s)}),r},destroyParts:function(){return this.processParts(null,null,"destroy"),this.originalDestroy()}}};return a.cuboid=t(a.base,{parts:["front","top","side"],pathType:"cuboid",attr:function(t,i,o,r){if("string"==typeof t&&void 0!==i){var n=t;(t={})[n]=i}return t.shapeArgs||s(t.x)?this.singleSetterForParts("d",null,this.renderer[this.pathType+"Path"](t.shapeArgs||t)):e.prototype.attr.call(this,t,void 0,o,r)},animate:function(t,i,o){if(s(t.x)&&s(t.y)){var r=(t=this.renderer[this.pathType+"Path"](t)).forcedSides;this.singleSetterForParts("d",null,t,"animate",i,o),this.attr({zIndex:t.zIndexes.group}),r!==this.forcedSides&&(this.forcedSides=r,this.renderer.styledMode||a.cuboid.fillSetter.call(this,this.fill))}else e.prototype.animate.call(this,t,i,o);return this},fillSetter:function(t){return this.forcedSides=this.forcedSides||[],this.singleSetterForParts("fill",null,{front:t,top:o(t).brighten(0<=this.forcedSides.indexOf("top")?0:.1).get(),side:o(t).brighten(0<=this.forcedSides.indexOf("side")?0:-.1).get()}),this.color=this.fill=t,this}}),a}),e(t,"Core/Renderer/SVG/SVGRenderer3D.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Color/Color.js"],t["Core/Globals.js"],t["Extensions/Math3D.js"],t["Core/Renderer/SVG/SVGElement.js"],t["Core/Renderer/SVG/SVGElement3D.js"],t["Core/Renderer/SVG/SVGRenderer.js"],t["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a){var h=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),l=t.animObject,c=e.parse,p=i.charts,d=i.deg2rad,u=o.perspective,f=o.shapeArea,g=a.defined,m=a.extend,x=a.merge,y=a.pick,v=Math.cos,b=Math.sin,S=Math.PI,M=4*(Math.sqrt(2)-1)/3/(S/2);return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return h(e,t),e.compose=function(t){t=t.prototype;var i=e.prototype;t.elements3d=r,t.arc3d=i.arc3d,t.arc3dPath=i.arc3dPath,t.cuboid=i.cuboid,t.cuboidPath=i.cuboidPath,t.element3d=i.element3d,t.face3d=i.face3d,t.polyhedron=i.polyhedron,t.toLinePath=i.toLinePath,t.toLineSegments=i.toLineSegments},e.curveTo=function(t,e,i,o,s,r,n,a){var h=[],l=r-s;return r>s&&r-s>Math.PI/2+1e-4?h=(h=h.concat(this.curveTo(t,e,i,o,s,s+Math.PI/2,n,a))).concat(this.curveTo(t,e,i,o,s+Math.PI/2,r,n,a)):r<s&&s-r>Math.PI/2+1e-4?h=(h=h.concat(this.curveTo(t,e,i,o,s,s-Math.PI/2,n,a))).concat(this.curveTo(t,e,i,o,s-Math.PI/2,r,n,a)):[["C",t+i*Math.cos(s)-i*M*l*Math.sin(s)+n,e+o*Math.sin(s)+o*M*l*Math.cos(s)+a,t+i*Math.cos(r)+i*M*l*Math.sin(r)+n,e+o*Math.sin(r)-o*M*l*Math.cos(r)+a,t+i*Math.cos(r)+n,e+o*Math.sin(r)+a]]},e.prototype.toLinePath=function(t,e){var i=[];return t.forEach(function(t){i.push(["L",t.x,t.y])}),t.length&&(i[0][0]="M",e&&i.push(["Z"])),i},e.prototype.toLineSegments=function(t){var e=[],i=!0;return t.forEach(function(t){e.push(i?["M",t.x,t.y]:["L",t.x,t.y]),i=!i}),e},e.prototype.face3d=function(t){var e=this,i=this.createElement("path");return i.vertexes=[],i.insidePlotArea=!1,i.enabled=!0,i.attr=function(t){if("object"==typeof t&&(g(t.enabled)||g(t.vertexes)||g(t.insidePlotArea))){this.enabled=y(t.enabled,this.enabled),this.vertexes=y(t.vertexes,this.vertexes),this.insidePlotArea=y(t.insidePlotArea,this.insidePlotArea),delete t.enabled,delete t.vertexes,delete t.insidePlotArea;var i=u(this.vertexes,p[e.chartIndex],this.insidePlotArea),o=e.toLinePath(i,!0);i=f(i),t.d=o,t.visibility=this.enabled&&0<i?"inherit":"hidden"}return s.prototype.attr.apply(this,arguments)},i.animate=function(t){if("object"==typeof t&&(g(t.enabled)||g(t.vertexes)||g(t.insidePlotArea))){this.enabled=y(t.enabled,this.enabled),this.vertexes=y(t.vertexes,this.vertexes),this.insidePlotArea=y(t.insidePlotArea,this.insidePlotArea),delete t.enabled,delete t.vertexes,delete t.insidePlotArea;var i=u(this.vertexes,p[e.chartIndex],this.insidePlotArea),o=e.toLinePath(i,!0);i=f(i),i=this.enabled&&0<i?"visible":"hidden",t.d=o,this.attr("visibility",i)}return s.prototype.animate.apply(this,arguments)},i.attr(t)},e.prototype.polyhedron=function(t){var e=this,i=this.g(),o=i.destroy;return this.styledMode||i.attr({"stroke-linejoin":"round"}),i.faces=[],i.destroy=function(){for(var t=0;t<i.faces.length;t++)i.faces[t].destroy();return o.call(this)},i.attr=function(t,o,r,n){if("object"==typeof t&&g(t.faces)){for(;i.faces.length>t.faces.length;)i.faces.pop().destroy();for(;i.faces.length<t.faces.length;)i.faces.push(e.face3d().add(i));for(var a=0;a<t.faces.length;a++)e.styledMode&&delete t.faces[a].fill,i.faces[a].attr(t.faces[a],null,r,n);delete t.faces}return s.prototype.attr.apply(this,arguments)},i.animate=function(t,o,r){if(t&&t.faces){for(;i.faces.length>t.faces.length;)i.faces.pop().destroy();for(;i.faces.length<t.faces.length;)i.faces.push(e.face3d().add(i));for(var n=0;n<t.faces.length;n++)i.faces[n].animate(t.faces[n],o,r);delete t.faces}return s.prototype.animate.apply(this,arguments)},i.attr(t)},e.prototype.element3d=function(t,e){var i=this.g();return m(i,this.elements3d[t]),i.initArgs(e),i},e.prototype.cuboid=function(t){return this.element3d("cuboid",t)},e.prototype.cuboidPath=function(t){function e(t){return 0===n&&1<t&&6>t?{x:g[t].x,y:g[t].y+10,z:g[t].z}:g[0].x===g[7].x&&4<=t?{x:g[t].x+10,y:g[t].y,z:g[t].z}:0===h&&2>t||5<t?{x:g[t].x,y:g[t].y,z:g[t].z+10}:g[t]}function i(t){return g[t]}var o=t.x||0,s=t.y||0,r=t.z||0,n=t.height||0,a=t.width||0,h=t.depth||0,l=p[this.chartIndex],c=l.options.chart.options3d.alpha,d=0,g=[{x:o,y:s,z:r},{x:o+a,y:s,z:r},{x:o+a,y:s+n,z:r},{x:o,y:s+n,z:r},{x:o,y:s+n,z:r+h},{x:o+a,y:s+n,z:r+h},{x:o+a,y:s,z:r+h},{x:o,y:s,z:r+h}],m=[];g=u(g,l,t.insidePlotArea);var x=function(t,o,s){var r=[[],-1],n=t.map(i),a=o.map(i);return t=t.map(e),o=o.map(e),0>f(n)?r=[n,0]:0>f(a)?r=[a,1]:s&&(m.push(s),r=0>f(t)?[n,0]:0>f(o)?[a,1]:[n,0]),r},y=x([3,2,1,0],[7,6,5,4],"front");t=y[0];var v=y[1];a=(y=x([1,6,7,0],[4,5,2,3],"top"))[0];var b=y[1];return x=(y=x([1,2,5,6],[0,7,4,3],"side"))[0],1===(y=y[1])?d+=1e6*(l.plotWidth-o):y||(d+=1e6*o),d+=10*(!b||0<=c&&180>=c||360>c&&357.5<c?l.plotHeight-s:10+s),1===v?d+=100*r:v||(d+=100*(1e3-r)),{front:this.toLinePath(t,!0),top:this.toLinePath(a,!0),side:this.toLinePath(x,!0),zIndexes:{group:Math.round(d)},forcedSides:m,isFront:v,isTop:b}},e.prototype.arc3d=function(t){function e(t){var e,i=!1,o={};for(e in t=x(t))-1!==n.indexOf(e)&&(o[e]=t[e],delete t[e],i=!0);return!!i&&[o,t]}var o=this.g(),r=o.renderer,n="x y r innerR start end depth".split(" ");return(t=x(t)).alpha=(t.alpha||0)*d,t.beta=(t.beta||0)*d,o.top=r.path(),o.side1=r.path(),o.side2=r.path(),o.inn=r.path(),o.out=r.path(),o.onAdd=function(){var t=o.parentGroup,e=o.attr("class");o.top.add(o),["out","inn","side1","side2"].forEach(function(i){o[i].attr({class:e+" highcharts-3d-side"}).add(t)})},["addClass","removeClass"].forEach(function(t){o[t]=function(){var e=arguments;["top","out","inn","side1","side2"].forEach(function(i){o[i][t].apply(o[i],e)})}}),o.setPaths=function(t){var e=o.renderer.arc3dPath(t),i=100*e.zTop;o.attribs=t,o.top.attr({d:e.top,zIndex:e.zTop}),o.inn.attr({d:e.inn,zIndex:e.zInn}),o.out.attr({d:e.out,zIndex:e.zOut}),o.side1.attr({d:e.side1,zIndex:e.zSide1}),o.side2.attr({d:e.side2,zIndex:e.zSide2}),o.zIndex=i,o.attr({zIndex:i}),t.center&&(o.top.setRadialReference(t.center),delete t.center)},o.setPaths(t),o.fillSetter=function(t){var e=c(t).brighten(-.1).get();return this.fill=t,this.side1.attr({fill:e}),this.side2.attr({fill:e}),this.inn.attr({fill:e}),this.out.attr({fill:e}),this.top.attr({fill:t}),this},["opacity","translateX","translateY","visibility"].forEach(function(t){o[t+"Setter"]=function(t,e){o[e]=t,["out","inn","side1","side2","top"].forEach(function(i){o[i].attr(e,t)})}}),o.attr=function(t){var i;if("object"==typeof t&&(i=e(t))){var r=i[0];arguments[0]=i[1],m(o.attribs,r),o.setPaths(o.attribs)}return s.prototype.attr.apply(o,arguments)},o.animate=function(t,r,n){var a=this.attribs,h="data-"+Math.random().toString(26).substring(2,9);delete t.center,delete t.z,delete t.alpha,delete t.beta;var c=l(y(r,this.renderer.globalAnimation));if(c.duration){if(r=e(t),o[h]=0,t[h]=1,o[h+"Setter"]=i.noop,r){var p=r[0];c.step=function(t,e){function i(t){return a[t]+(y(p[t],a[t])-a[t])*e.pos}e.prop===h&&e.elem.setPaths(x(a,{x:i("x"),y:i("y"),r:i("r"),innerR:i("innerR"),start:i("start"),end:i("end"),depth:i("depth")}))}}r=c}return s.prototype.animate.call(this,t,r,n)},o.destroy=function(){return this.top.destroy(),this.out.destroy(),this.inn.destroy(),this.side1.destroy(),this.side2.destroy(),s.prototype.destroy.call(this)},o.hide=function(){this.top.hide(),this.out.hide(),this.inn.hide(),this.side1.hide(),this.side2.hide()},o.show=function(t){this.top.show(t),this.out.show(t),this.inn.show(t),this.side1.show(t),this.side2.show(t)},o},e.prototype.arc3dPath=function(t){function i(t){return(t%=2*Math.PI)>Math.PI&&(t=2*Math.PI-t),t}var o=t.x||0,s=t.y||0,r=t.start||0,n=(t.end||0)-1e-5,a=t.r||0,h=t.innerR||0,l=t.depth||0,c=t.alpha||0,p=t.beta||0,d=Math.cos(r),u=Math.sin(r);t=Math.cos(n);var f=Math.sin(n),g=a*Math.cos(p);a*=Math.cos(c);var m=h*Math.cos(p),x=h*Math.cos(c);h=l*Math.sin(p);var y=l*Math.sin(c);(l=(l=[["M",o+g*d,s+a*u]]).concat(e.curveTo(o,s,g,a,r,n,0,0))).push(["L",o+m*t,s+x*f]),(l=l.concat(e.curveTo(o,s,m,x,n,r,0,0))).push(["Z"]);var M=0<p?Math.PI/2:0;p=0<c?0:Math.PI/2,M=r>-M?r:n>-M?-M:r;var k=n<S-p?n:r<S-p?S-p:n,w=2*S-p;return c=(c=[["M",o+g*v(M),s+a*b(M)]]).concat(e.curveTo(o,s,g,a,M,k,0,0)),n>w&&r<w?(c.push(["L",o+g*v(k)+h,s+a*b(k)+y]),(c=c.concat(e.curveTo(o,s,g,a,k,w,h,y))).push(["L",o+g*v(w),s+a*b(w)]),(c=c.concat(e.curveTo(o,s,g,a,w,n,0,0))).push(["L",o+g*v(n)+h,s+a*b(n)+y]),(c=c.concat(e.curveTo(o,s,g,a,n,w,h,y))).push(["L",o+g*v(w),s+a*b(w)]),c=c.concat(e.curveTo(o,s,g,a,w,k,0,0))):n>S-p&&r<S-p&&(c.push(["L",o+g*Math.cos(k)+h,s+a*Math.sin(k)+y]),(c=c.concat(e.curveTo(o,s,g,a,k,n,h,y))).push(["L",o+g*Math.cos(n),s+a*Math.sin(n)]),c=c.concat(e.curveTo(o,s,g,a,n,k,0,0))),c.push(["L",o+g*Math.cos(k)+h,s+a*Math.sin(k)+y]),(c=c.concat(e.curveTo(o,s,g,a,k,M,h,y))).push(["Z"]),(p=(p=[["M",o+m*d,s+x*u]]).concat(e.curveTo(o,s,m,x,r,n,0,0))).push(["L",o+m*Math.cos(n)+h,s+x*Math.sin(n)+y]),(p=p.concat(e.curveTo(o,s,m,x,n,r,h,y))).push(["Z"]),d=[["M",o+g*d,s+a*u],["L",o+g*d+h,s+a*u+y],["L",o+m*d+h,s+x*u+y],["L",o+m*d,s+x*u],["Z"]],o=[["M",o+g*t,s+a*f],["L",o+g*t+h,s+a*f+y],["L",o+m*t+h,s+x*f+y],["L",o+m*t,s+x*f],["Z"]],f=Math.atan2(y,-h),s=Math.abs(n+f),t=Math.abs(r+f),r=Math.abs((r+n)/2+f),s=i(s),t=i(t),r=i(r),r*=1e5,n=1e5*t,s*=1e5,{top:l,zTop:1e5*Math.PI+1,out:c,zOut:Math.max(r,n,s),inn:p,zInn:Math.max(r,n,s),side1:d,zSide1:.99*s,side2:o,zSide2:.99*n}},e}(n)}),e(t,"Core/Chart/Chart3D.js",[t["Core/Color/Color.js"],t["Extensions/Math3D.js"],t["Core/DefaultOptions.js"],t["Core/Utilities.js"]],function(t,e,i,o){var s,r=t.parse,n=e.perspective,a=e.shapeArea3D,h=i.defaultOptions,l=o.addEvent,c=o.isArray,p=o.merge,d=o.pick,u=o.wrap;return function(t){function e(t){this.is3d()&&"scatter"===t.options.type&&(t.options.type="scatter3d")}function i(){if(this.chart3d&&this.is3d()){var t=this.renderer,e=this.options.chart.options3d,i=this.chart3d.get3dFrame(),o=this.plotLeft,s=this.plotLeft+this.plotWidth,n=this.plotTop,a=this.plotTop+this.plotHeight;e=e.depth;var h=o-(i.left.visible?i.left.size:0),l=s+(i.right.visible?i.right.size:0),c=n-(i.top.visible?i.top.size:0),p=a+(i.bottom.visible?i.bottom.size:0),d=0-(i.front.visible?i.front.size:0),u=e+(i.back.visible?i.back.size:0),f=this.hasRendered?"animate":"attr";this.chart3d.frame3d=i,this.frameShapes||(this.frameShapes={bottom:t.polyhedron().add(),top:t.polyhedron().add(),left:t.polyhedron().add(),right:t.polyhedron().add(),back:t.polyhedron().add(),front:t.polyhedron().add()}),this.frameShapes.bottom[f]({class:"highcharts-3d-frame highcharts-3d-frame-bottom",zIndex:i.bottom.frontFacing?-1e3:1e3,faces:[{fill:r(i.bottom.color).brighten(.1).get(),vertexes:[{x:h,y:p,z:d},{x:l,y:p,z:d},{x:l,y:p,z:u},{x:h,y:p,z:u}],enabled:i.bottom.visible},{fill:r(i.bottom.color).brighten(.1).get(),vertexes:[{x:o,y:a,z:e},{x:s,y:a,z:e},{x:s,y:a,z:0},{x:o,y:a,z:0}],enabled:i.bottom.visible},{fill:r(i.bottom.color).brighten(-.1).get(),vertexes:[{x:h,y:p,z:d},{x:h,y:p,z:u},{x:o,y:a,z:e},{x:o,y:a,z:0}],enabled:i.bottom.visible&&!i.left.visible},{fill:r(i.bottom.color).brighten(-.1).get(),vertexes:[{x:l,y:p,z:u},{x:l,y:p,z:d},{x:s,y:a,z:0},{x:s,y:a,z:e}],enabled:i.bottom.visible&&!i.right.visible},{fill:r(i.bottom.color).get(),vertexes:[{x:l,y:p,z:d},{x:h,y:p,z:d},{x:o,y:a,z:0},{x:s,y:a,z:0}],enabled:i.bottom.visible&&!i.front.visible},{fill:r(i.bottom.color).get(),vertexes:[{x:h,y:p,z:u},{x:l,y:p,z:u},{x:s,y:a,z:e},{x:o,y:a,z:e}],enabled:i.bottom.visible&&!i.back.visible}]}),this.frameShapes.top[f]({class:"highcharts-3d-frame highcharts-3d-frame-top",zIndex:i.top.frontFacing?-1e3:1e3,faces:[{fill:r(i.top.color).brighten(.1).get(),vertexes:[{x:h,y:c,z:u},{x:l,y:c,z:u},{x:l,y:c,z:d},{x:h,y:c,z:d}],enabled:i.top.visible},{fill:r(i.top.color).brighten(.1).get(),vertexes:[{x:o,y:n,z:0},{x:s,y:n,z:0},{x:s,y:n,z:e},{x:o,y:n,z:e}],enabled:i.top.visible},{fill:r(i.top.color).brighten(-.1).get(),vertexes:[{x:h,y:c,z:u},{x:h,y:c,z:d},{x:o,y:n,z:0},{x:o,y:n,z:e}],enabled:i.top.visible&&!i.left.visible},{fill:r(i.top.color).brighten(-.1).get(),vertexes:[{x:l,y:c,z:d},{x:l,y:c,z:u},{x:s,y:n,z:e},{x:s,y:n,z:0}],enabled:i.top.visible&&!i.right.visible},{fill:r(i.top.color).get(),vertexes:[{x:h,y:c,z:d},{x:l,y:c,z:d},{x:s,y:n,z:0},{x:o,y:n,z:0}],enabled:i.top.visible&&!i.front.visible},{fill:r(i.top.color).get(),vertexes:[{x:l,y:c,z:u},{x:h,y:c,z:u},{x:o,y:n,z:e},{x:s,y:n,z:e}],enabled:i.top.visible&&!i.back.visible}]}),this.frameShapes.left[f]({class:"highcharts-3d-frame highcharts-3d-frame-left",zIndex:i.left.frontFacing?-1e3:1e3,faces:[{fill:r(i.left.color).brighten(.1).get(),vertexes:[{x:h,y:p,z:d},{x:o,y:a,z:0},{x:o,y:a,z:e},{x:h,y:p,z:u}],enabled:i.left.visible&&!i.bottom.visible},{fill:r(i.left.color).brighten(.1).get(),vertexes:[{x:h,y:c,z:u},{x:o,y:n,z:e},{x:o,y:n,z:0},{x:h,y:c,z:d}],enabled:i.left.visible&&!i.top.visible},{fill:r(i.left.color).brighten(-.1).get(),vertexes:[{x:h,y:p,z:u},{x:h,y:c,z:u},{x:h,y:c,z:d},{x:h,y:p,z:d}],enabled:i.left.visible},{fill:r(i.left.color).brighten(-.1).get(),vertexes:[{x:o,y:n,z:e},{x:o,y:a,z:e},{x:o,y:a,z:0},{x:o,y:n,z:0}],enabled:i.left.visible},{fill:r(i.left.color).get(),vertexes:[{x:h,y:p,z:d},{x:h,y:c,z:d},{x:o,y:n,z:0},{x:o,y:a,z:0}],enabled:i.left.visible&&!i.front.visible},{fill:r(i.left.color).get(),vertexes:[{x:h,y:c,z:u},{x:h,y:p,z:u},{x:o,y:a,z:e},{x:o,y:n,z:e}],enabled:i.left.visible&&!i.back.visible}]}),this.frameShapes.right[f]({class:"highcharts-3d-frame highcharts-3d-frame-right",zIndex:i.right.frontFacing?-1e3:1e3,faces:[{fill:r(i.right.color).brighten(.1).get(),vertexes:[{x:l,y:p,z:u},{x:s,y:a,z:e},{x:s,y:a,z:0},{x:l,y:p,z:d}],enabled:i.right.visible&&!i.bottom.visible},{fill:r(i.right.color).brighten(.1).get(),vertexes:[{x:l,y:c,z:d},{x:s,y:n,z:0},{x:s,y:n,z:e},{x:l,y:c,z:u}],enabled:i.right.visible&&!i.top.visible},{fill:r(i.right.color).brighten(-.1).get(),vertexes:[{x:s,y:n,z:0},{x:s,y:a,z:0},{x:s,y:a,z:e},{x:s,y:n,z:e}],enabled:i.right.visible},{fill:r(i.right.color).brighten(-.1).get(),vertexes:[{x:l,y:p,z:d},{x:l,y:c,z:d},{x:l,y:c,z:u},{x:l,y:p,z:u}],enabled:i.right.visible},{fill:r(i.right.color).get(),vertexes:[{x:l,y:c,z:d},{x:l,y:p,z:d},{x:s,y:a,z:0},{x:s,y:n,z:0}],enabled:i.right.visible&&!i.front.visible},{fill:r(i.right.color).get(),vertexes:[{x:l,y:p,z:u},{x:l,y:c,z:u},{x:s,y:n,z:e},{x:s,y:a,z:e}],enabled:i.right.visible&&!i.back.visible}]}),this.frameShapes.back[f]({class:"highcharts-3d-frame highcharts-3d-frame-back",zIndex:i.back.frontFacing?-1e3:1e3,faces:[{fill:r(i.back.color).brighten(.1).get(),vertexes:[{x:l,y:p,z:u},{x:h,y:p,z:u},{x:o,y:a,z:e},{x:s,y:a,z:e}],enabled:i.back.visible&&!i.bottom.visible},{fill:r(i.back.color).brighten(.1).get(),vertexes:[{x:h,y:c,z:u},{x:l,y:c,z:u},{x:s,y:n,z:e},{x:o,y:n,z:e}],enabled:i.back.visible&&!i.top.visible},{fill:r(i.back.color).brighten(-.1).get(),vertexes:[{x:h,y:p,z:u},{x:h,y:c,z:u},{x:o,y:n,z:e},{x:o,y:a,z:e}],enabled:i.back.visible&&!i.left.visible},{fill:r(i.back.color).brighten(-.1).get(),vertexes:[{x:l,y:c,z:u},{x:l,y:p,z:u},{x:s,y:a,z:e},{x:s,y:n,z:e}],enabled:i.back.visible&&!i.right.visible},{fill:r(i.back.color).get(),vertexes:[{x:o,y:n,z:e},{x:s,y:n,z:e},{x:s,y:a,z:e},{x:o,y:a,z:e}],enabled:i.back.visible},{fill:r(i.back.color).get(),vertexes:[{x:h,y:p,z:u},{x:l,y:p,z:u},{x:l,y:c,z:u},{x:h,y:c,z:u}],enabled:i.back.visible}]}),this.frameShapes.front[f]({class:"highcharts-3d-frame highcharts-3d-frame-front",zIndex:i.front.frontFacing?-1e3:1e3,faces:[{fill:r(i.front.color).brighten(.1).get(),vertexes:[{x:h,y:p,z:d},{x:l,y:p,z:d},{x:s,y:a,z:0},{x:o,y:a,z:0}],enabled:i.front.visible&&!i.bottom.visible},{fill:r(i.front.color).brighten(.1).get(),vertexes:[{x:l,y:c,z:d},{x:h,y:c,z:d},{x:o,y:n,z:0},{x:s,y:n,z:0}],enabled:i.front.visible&&!i.top.visible},{fill:r(i.front.color).brighten(-.1).get(),vertexes:[{x:h,y:c,z:d},{x:h,y:p,z:d},{x:o,y:a,z:0},{x:o,y:n,z:0}],enabled:i.front.visible&&!i.left.visible},{fill:r(i.front.color).brighten(-.1).get(),vertexes:[{x:l,y:p,z:d},{x:l,y:c,z:d},{x:s,y:n,z:0},{x:s,y:a,z:0}],enabled:i.front.visible&&!i.right.visible},{fill:r(i.front.color).get(),vertexes:[{x:s,y:n,z:0},{x:o,y:n,z:0},{x:o,y:a,z:0},{x:s,y:a,z:0}],enabled:i.front.visible},{fill:r(i.front.color).get(),vertexes:[{x:l,y:p,z:d},{x:h,y:p,z:d},{x:h,y:c,z:d},{x:l,y:c,z:d}],enabled:i.front.visible}]})}}function o(){this.styledMode&&[{name:"darker",slope:.6},{name:"brighter",slope:1.4}].forEach(function(t){this.renderer.definition({tagName:"filter",attributes:{id:"highcharts-"+t.name},children:[{tagName:"feComponentTransfer",children:[{tagName:"feFuncR",attributes:{type:"linear",slope:t.slope}},{tagName:"feFuncG",attributes:{type:"linear",slope:t.slope}},{tagName:"feFuncB",attributes:{type:"linear",slope:t.slope}}]}]})},this)}function s(){var t=this.options;this.is3d()&&(t.series||[]).forEach(function(e){"scatter"===(e.type||t.chart.type||t.chart.defaultSeriesType)&&(e.type="scatter3d")})}function f(){var t=this.options.chart.options3d;if(this.chart3d&&this.is3d()){t&&(t.alpha=t.alpha%360+(0<=t.alpha?0:360),t.beta=t.beta%360+(0<=t.beta?0:360));var e=this.inverted,i=this.clipBox,o=this.margin;i[e?"y":"x"]=-(o[3]||0),i[e?"x":"y"]=-(o[0]||0),i[e?"height":"width"]=this.chartWidth+(o[3]||0)+(o[1]||0),i[e?"width":"height"]=this.chartHeight+(o[0]||0)+(o[2]||0),this.scale3d=1,!0===t.fitToPlot&&(this.scale3d=this.chart3d.getScale(t.depth)),this.chart3d.frame3d=this.chart3d.get3dFrame()}}function g(){this.is3d()&&(this.isDirtyBox=!0)}function m(){this.chart3d&&this.is3d()&&(this.chart3d.frame3d=this.chart3d.get3dFrame())}function x(){this.chart3d||(this.chart3d=new S(this))}function y(t){return this.is3d()||t.apply(this,[].slice.call(arguments,1))}function v(t){var e=this.series.length;if(this.is3d())for(;e--;)(t=this.series[e]).translate(),t.render();else t.call(this)}function b(t){t.apply(this,[].slice.call(arguments,1)),this.is3d()&&(this.container.className+=" highcharts-3d-chart")}var S=function(){function t(t){this.frame3d=void 0,this.chart=t}return t.prototype.get3dFrame=function(){var t=this.chart,e=t.options.chart.options3d,i=e.frame,o=t.plotLeft,s=t.plotLeft+t.plotWidth,r=t.plotTop,h=t.plotTop+t.plotHeight,l=e.depth,c=function(e){return.5<(e=a(e,t))?1:-.5>e?-1:0},p=c([{x:o,y:h,z:l},{x:s,y:h,z:l},{x:s,y:h,z:0},{x:o,y:h,z:0}]),u=c([{x:o,y:r,z:0},{x:s,y:r,z:0},{x:s,y:r,z:l},{x:o,y:r,z:l}]),f=c([{x:o,y:r,z:0},{x:o,y:r,z:l},{x:o,y:h,z:l},{x:o,y:h,z:0}]),g=c([{x:s,y:r,z:l},{x:s,y:r,z:0},{x:s,y:h,z:0},{x:s,y:h,z:l}]),m=c([{x:o,y:h,z:0},{x:s,y:h,z:0},{x:s,y:r,z:0},{x:o,y:r,z:0}]);c=c([{x:o,y:r,z:l},{x:s,y:r,z:l},{x:s,y:h,z:l},{x:o,y:h,z:l}]);var x=!1,y=!1,v=!1,b=!1;[].concat(t.xAxis,t.yAxis,t.zAxis).forEach(function(t){t&&(t.horiz?t.opposite?y=!0:x=!0:t.opposite?b=!0:v=!0)});var S=function(t,e,i){for(var o=["size","color","visible"],s={},r=0;r<o.length;r++)for(var n=o[r],a=0;a<t.length;a++)if("object"==typeof t[a]){var h=t[a][n];if(void 0!==h&&null!==h){s[n]=h;break}}return t=i,!0===s.visible||!1===s.visible?t=s.visible:"auto"===s.visible&&(t=0<e),{size:d(s.size,1),color:d(s.color,"none"),frontFacing:0<e,visible:t}};return i={axes:{},bottom:S([i.bottom,i.top,i],p,x),top:S([i.top,i.bottom,i],u,y),left:S([i.left,i.right,i.side,i],f,v),right:S([i.right,i.left,i.side,i],g,b),back:S([i.back,i.front,i],c,!0),front:S([i.front,i.back,i],m,!1)},"auto"===e.axisLabelPosition?(e=[],(g=function(t,e){return t.visible!==e.visible||t.visible&&e.visible&&t.frontFacing!==e.frontFacing})(i.left,i.front)&&e.push({y:(r+h)/2,x:o,z:0,xDir:{x:1,y:0,z:0}}),g(i.left,i.back)&&e.push({y:(r+h)/2,x:o,z:l,xDir:{x:0,y:0,z:-1}}),g(i.right,i.front)&&e.push({y:(r+h)/2,x:s,z:0,xDir:{x:0,y:0,z:1}}),g(i.right,i.back)&&e.push({y:(r+h)/2,x:s,z:l,xDir:{x:-1,y:0,z:0}}),p=[],g(i.bottom,i.front)&&p.push({x:(o+s)/2,y:h,z:0,xDir:{x:1,y:0,z:0}}),g(i.bottom,i.back)&&p.push({x:(o+s)/2,y:h,z:l,xDir:{x:-1,y:0,z:0}}),u=[],g(i.top,i.front)&&u.push({x:(o+s)/2,y:r,z:0,xDir:{x:1,y:0,z:0}}),g(i.top,i.back)&&u.push({x:(o+s)/2,y:r,z:l,xDir:{x:-1,y:0,z:0}}),f=[],g(i.bottom,i.left)&&f.push({z:(0+l)/2,y:h,x:o,xDir:{x:0,y:0,z:-1}}),g(i.bottom,i.right)&&f.push({z:(0+l)/2,y:h,x:s,xDir:{x:0,y:0,z:1}}),h=[],g(i.top,i.left)&&h.push({z:(0+l)/2,y:r,x:o,xDir:{x:0,y:0,z:-1}}),g(i.top,i.right)&&h.push({z:(0+l)/2,y:r,x:s,xDir:{x:0,y:0,z:1}}),o=function(e,i,o){if(0===e.length)return null;if(1===e.length)return e[0];for(var s=n(e,t,!1),r=0,a=1;a<s.length;a++)o*s[a][i]>o*s[r][i]?r=a:o*s[a][i]==o*s[r][i]&&s[a].z<s[r].z&&(r=a);return e[r]},i.axes={y:{left:o(e,"x",-1),right:o(e,"x",1)},x:{top:o(u,"y",-1),bottom:o(p,"y",1)},z:{top:o(h,"y",-1),bottom:o(f,"y",1)}}):i.axes={y:{left:{x:o,z:0,xDir:{x:1,y:0,z:0}},right:{x:s,z:0,xDir:{x:0,y:0,z:1}}},x:{top:{y:r,z:0,xDir:{x:1,y:0,z:0}},bottom:{y:h,z:0,xDir:{x:1,y:0,z:0}}},z:{top:{x:v?s:o,y:r,xDir:v?{x:0,y:0,z:1}:{x:0,y:0,z:-1}},bottom:{x:v?s:o,y:h,xDir:v?{x:0,y:0,z:1}:{x:0,y:0,z:-1}}}},i},t.prototype.getScale=function(t){var e=this.chart,i=e.plotLeft,o=e.plotWidth+i,s=e.plotTop,r=e.plotHeight+s,a=i+e.plotWidth/2,h=s+e.plotHeight/2,l=Number.MAX_VALUE,c=-Number.MAX_VALUE,p=Number.MAX_VALUE,d=-Number.MAX_VALUE,u=1,f=[{x:i,y:s,z:0},{x:i,y:s,z:t}];return[0,1].forEach(function(t){f.push({x:o,y:f[t].y,z:f[t].z})}),[0,1,2,3].forEach(function(t){f.push({x:f[t].x,y:r,z:f[t].z})}),(f=n(f,e,!1)).forEach(function(t){l=Math.min(l,t.x),c=Math.max(c,t.x),p=Math.min(p,t.y),d=Math.max(d,t.y)}),i>l&&(u=Math.min(u,1-Math.abs((i+a)/(l+a))%1)),o<c&&(u=Math.min(u,(o-a)/(c-a))),s>p&&(u=0>p?Math.min(u,(s+h)/(-p+s+h)):Math.min(u,1-(s+h)/(p+h)%1)),r<d&&(u=Math.min(u,Math.abs((r-h)/(d-h)))),u},t}();t.Composition=S,t.defaultOptions={chart:{options3d:{enabled:!1,alpha:0,beta:0,depth:100,fitToPlot:!0,viewDistance:25,axisLabelPosition:null,frame:{visible:"default",size:1,bottom:{},top:{},left:{},right:{},back:{},front:{}}}}},t.compose=function(r,n){var a=r.prototype;n=n.prototype,a.is3d=function(){return!(!this.options.chart.options3d||!this.options.chart.options3d.enabled)},a.propsRequireDirtyBox.push("chart.options3d"),a.propsRequireUpdateSeries.push("chart.options3d"),n.matrixSetter=function(){if(1>this.pos&&(c(this.start)||c(this.end)))for(var t=this.start||[1,0,0,1,0,0],e=this.end||[1,0,0,1,0,0],i=[],o=0;6>o;o++)i.push(this.pos*e[o]+(1-this.pos)*t[o]);else i=this.end;this.elem.attr(this.prop,i,null,!0)},p(!0,h,t.defaultOptions),l(r,"init",x),l(r,"addSeries",e),l(r,"afterDrawChartBox",i),l(r,"afterGetContainer",o),l(r,"afterInit",s),l(r,"afterSetChartSize",f),l(r,"beforeRedraw",g),l(r,"beforeRender",m),u(a,"isInsidePlot",y),u(r,"renderSeries",v),u(r,"setClassName",b)}}(s||(s={})),s}),e(t,"Core/Axis/ZAxis.js",[t["Core/Axis/Axis.js"],t["Core/Utilities.js"]],function(t,e){var i=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),o=e.addEvent,s=e.merge,r=e.pick,n=e.splat,a=function(){function t(){}return t.compose=function(e){o(e,"afterGetAxes",t.onAfterGetAxes),(e=e.prototype).addZAxis=t.wrapAddZAxis,e.collectionsWithInit.zAxis=[e.addZAxis],e.collectionsWithUpdate.push("zAxis")},t.onAfterGetAxes=function(){var t=this,e=this.options;e=e.zAxis=n(e.zAxis||{}),t.is3d()&&(t.zAxis=[],e.forEach(function(e,i){e.index=i,e.isX=!0,t.addZAxis(e).setScale()}))},t.wrapAddZAxis=function(t){return new h(this,t)},t}(),h=function(t){function e(e,i){return(e=t.call(this,e,i)||this).isZAxis=!0,e}return i(e,t),e.prototype.getSeriesExtremes=function(){var t=this,e=t.chart;t.hasVisibleSeries=!1,t.dataMin=t.dataMax=t.ignoreMinPadding=t.ignoreMaxPadding=void 0,t.stacking&&t.stacking.buildStacks(),t.series.forEach(function(i){!i.visible&&e.options.chart.ignoreHiddenSeries||(t.hasVisibleSeries=!0,(i=i.zData).length&&(t.dataMin=Math.min(r(t.dataMin,i[0]),Math.min.apply(null,i)),t.dataMax=Math.max(r(t.dataMax,i[0]),Math.max.apply(null,i))))})},e.prototype.setAxisSize=function(){var e=this.chart;t.prototype.setAxisSize.call(this),this.width=this.len=e.options.chart.options3d&&e.options.chart.options3d.depth||0,this.right=e.chartWidth-this.width-this.left},e.prototype.setOptions=function(e){e=s({offset:0,lineWidth:0},e),this.isZAxis=!0,t.prototype.setOptions.call(this,e),this.coll="zAxis"},e.ZChartComposition=a,e}(t);return h}),e(t,"Core/Axis/Tick3D.js",[t["Core/Utilities.js"]],function(t){var e=t.addEvent,i=t.extend,o=t.wrap;return function(){function t(){}return t.compose=function(i){e(i,"afterGetLabelPosition",t.onAfterGetLabelPosition),o(i.prototype,"getMarkPath",t.wrapGetMarkPath)},t.onAfterGetLabelPosition=function(t){var e=this.axis.axis3D;e&&i(t.pos,e.fix3dPosition(t.pos))},t.wrapGetMarkPath=function(t){var e=this.axis.axis3D,i=t.apply(this,[].slice.call(arguments,1));if(e){var o=i[0],s=i[1];if("M"===o[0]&&"L"===s[0])return e=[e.fix3dPosition({x:o[1],y:o[2],z:0}),e.fix3dPosition({x:s[1],y:s[2],z:0})],this.axis.chart.renderer.toLineSegments(e)}return i},t}()}),e(t,"Core/Axis/Axis3D.js",[t["Core/Globals.js"],t["Extensions/Math3D.js"],t["Core/Axis/Tick.js"],t["Core/Axis/Tick3D.js"],t["Core/Utilities.js"]],function(t,e,i,o,s){var r=t.deg2rad,n=e.perspective,a=e.perspective3D,h=e.shapeArea,l=s.addEvent,c=s.merge,p=s.pick,d=s.wrap,u=function(){function t(t){this.axis=t}return t.prototype.fix3dPosition=function(t,e){var i=this.axis,o=i.chart;if("colorAxis"===i.coll||!o.chart3d||!o.is3d())return t;var s=r*o.options.chart.options3d.alpha,a=r*o.options.chart.options3d.beta,l=p(e&&i.options.title.position3d,i.options.labels.position3d);e=p(e&&i.options.title.skew3d,i.options.labels.skew3d);var c=o.chart3d.frame3d,d=o.plotLeft,u=o.plotWidth+d,f=o.plotTop,g=o.plotHeight+f,m=o=0,x={x:0,y:1,z:0},y=!1;if(t=i.axis3D.swapZ({x:t.x,y:t.y,z:0}),i.isZAxis)if(i.opposite){if(null===c.axes.z.top)return{};m=t.y-f,t.x=c.axes.z.top.x,t.y=c.axes.z.top.y,d=c.axes.z.top.xDir,y=!c.top.frontFacing}else{if(null===c.axes.z.bottom)return{};m=t.y-g,t.x=c.axes.z.bottom.x,t.y=c.axes.z.bottom.y,d=c.axes.z.bottom.xDir,y=!c.bottom.frontFacing}else if(i.horiz)if(i.opposite){if(null===c.axes.x.top)return{};m=t.y-f,t.y=c.axes.x.top.y,t.z=c.axes.x.top.z,d=c.axes.x.top.xDir,y=!c.top.frontFacing}else{if(null===c.axes.x.bottom)return{};m=t.y-g,t.y=c.axes.x.bottom.y,t.z=c.axes.x.bottom.z,d=c.axes.x.bottom.xDir,y=!c.bottom.frontFacing}else if(i.opposite){if(null===c.axes.y.right)return{};o=t.x-u,t.x=c.axes.y.right.x,t.z=c.axes.y.right.z,d={x:(d=c.axes.y.right.xDir).z,y:d.y,z:-d.x}}else{if(null===c.axes.y.left)return{};o=t.x-d,t.x=c.axes.y.left.x,t.z=c.axes.y.left.z,d=c.axes.y.left.xDir}return"chart"!==l&&("flap"===l?i.horiz?(a=Math.sin(s),s=Math.cos(s),i.opposite&&(a=-a),y&&(a=-a),x={x:d.z*a,y:s,z:-d.x*a}):d={x:Math.cos(a),y:0,z:Math.sin(a)}:"ortho"===l?i.horiz?(x=Math.cos(s),l=Math.sin(a)*x,s=-Math.sin(s),a=-x*Math.cos(a),x={x:d.y*a-d.z*s,y:d.z*l-d.x*a,z:d.x*s-d.y*l},s=1/Math.sqrt(x.x*x.x+x.y*x.y+x.z*x.z),y&&(s=-s),x={x:s*x.x,y:s*x.y,z:s*x.z}):d={x:Math.cos(a),y:0,z:Math.sin(a)}:i.horiz?x={x:Math.sin(a)*Math.sin(s),y:Math.cos(s),z:-Math.cos(a)*Math.sin(s)}:d={x:Math.cos(a),y:0,z:Math.sin(a)}),t.x+=o*d.x+m*x.x,t.y+=o*d.y+m*x.y,t.z+=o*d.z+m*x.z,o=n([t],i.chart)[0],e&&(0>h(n([t,{x:t.x+d.x,y:t.y+d.y,z:t.z+d.z},{x:t.x+x.x,y:t.y+x.y,z:t.z+x.z}],i.chart))&&(d={x:-d.x,y:-d.y,z:-d.z}),t=n([{x:t.x,y:t.y,z:t.z},{x:t.x+d.x,y:t.y+d.y,z:t.z+d.z},{x:t.x+x.x,y:t.y+x.y,z:t.z+x.z}],i.chart),o.matrix=[t[1].x-t[0].x,t[1].y-t[0].y,t[2].x-t[0].x,t[2].y-t[0].y,o.x,o.y],o.matrix[4]-=o.x*o.matrix[0]+o.y*o.matrix[2],o.matrix[5]-=o.x*o.matrix[1]+o.y*o.matrix[3]),o},t.prototype.swapZ=function(t,e){var i=this.axis;return i.isZAxis?{x:(e=e?0:i.chart.plotLeft)+t.z,y:t.y,z:t.x-e}:t},t}();return function(){function t(){}return t.compose=function(e){c(!0,e.defaultOptions,t.defaultOptions),e.keepProps.push("axis3D"),l(e,"init",t.onInit),l(e,"afterSetOptions",t.onAfterSetOptions),l(e,"drawCrosshair",t.onDrawCrosshair),e=e.prototype,d(e,"getLinePath",t.wrapGetLinePath),d(e,"getPlotBandPath",t.wrapGetPlotBandPath),d(e,"getPlotLinePath",t.wrapGetPlotLinePath),d(e,"getSlotWidth",t.wrapGetSlotWidth),d(e,"getTitlePosition",t.wrapGetTitlePosition),o.compose(i)},t.onAfterSetOptions=function(){var t=this.chart,e=this.options;t.is3d&&t.is3d()&&"colorAxis"!==this.coll&&(e.tickWidth=p(e.tickWidth,0),e.gridLineWidth=p(e.gridLineWidth,1))},t.onDrawCrosshair=function(t){this.chart.is3d()&&"colorAxis"!==this.coll&&t.point&&(t.point.crosshairPos=this.isXAxis?t.point.axisXpos:this.len-t.point.axisYpos)},t.onInit=function(){this.axis3D||(this.axis3D=new u(this))},t.wrapGetLinePath=function(t){return this.chart.is3d()&&"colorAxis"!==this.coll?[]:t.apply(this,[].slice.call(arguments,1))},t.wrapGetPlotBandPath=function(t){if(!this.chart.is3d()||"colorAxis"===this.coll)return t.apply(this,[].slice.call(arguments,1));var e=arguments,i=e[2],o=[];if(e=this.getPlotLinePath({value:e[1]}),i=this.getPlotLinePath({value:i}),e&&i)for(var s=0;s<e.length;s+=2){var r=e[s],n=e[s+1],a=i[s],h=i[s+1];"M"===r[0]&&"L"===n[0]&&"M"===a[0]&&"L"===h[0]&&o.push(r,n,h,["L",a[1],a[2]],["Z"])}return o},t.wrapGetPlotLinePath=function(t){var e=this.axis3D,i=this.chart,o=t.apply(this,[].slice.call(arguments,1));if("colorAxis"===this.coll||!i.chart3d||!i.is3d()||null===o)return o;var s=i.options.chart.options3d,r=this.isZAxis?i.plotWidth:s.depth;s=i.chart3d.frame3d;var a=o[0],h=o[1];return o=[],"M"===a[0]&&"L"===h[0]&&(e=[e.swapZ({x:a[1],y:a[2],z:0}),e.swapZ({x:a[1],y:a[2],z:r}),e.swapZ({x:h[1],y:h[2],z:0}),e.swapZ({x:h[1],y:h[2],z:r})],this.horiz?(this.isZAxis?(s.left.visible&&o.push(e[0],e[2]),s.right.visible&&o.push(e[1],e[3])):(s.front.visible&&o.push(e[0],e[2]),s.back.visible&&o.push(e[1],e[3])),s.top.visible&&o.push(e[0],e[1]),s.bottom.visible&&o.push(e[2],e[3])):(s.front.visible&&o.push(e[0],e[2]),s.back.visible&&o.push(e[1],e[3]),s.left.visible&&o.push(e[0],e[1]),s.right.visible&&o.push(e[2],e[3])),o=n(o,this.chart,!1)),i.renderer.toLineSegments(o)},t.wrapGetSlotWidth=function(t,e){var i=this.chart,o=this.ticks,s=this.gridGroup;if(this.categories&&i.frameShapes&&i.is3d()&&s&&e&&e.label){s=s.element.childNodes[0].getBBox();var r=i.frameShapes.left.getBBox(),n=i.options.chart.options3d;i={x:i.plotWidth/2,y:i.plotHeight/2,z:n.depth/2,vd:p(n.depth,1)*p(n.viewDistance,0)};var h=o[(n=e.pos)-1],l=o[n+1],c=o=void 0;return 0!==n&&h&&h.label&&h.label.xy&&(o=a({x:h.label.xy.x,y:h.label.xy.y,z:null},i,i.vd)),l&&l.label&&l.label.xy&&(c=a({x:l.label.xy.x,y:l.label.xy.y,z:null},i,i.vd)),n={x:e.label.xy.x,y:e.label.xy.y,z:null},n=a(n,i,i.vd),Math.abs(o?n.x-o.x:c?c.x-n.x:s.x-r.x)}return t.apply(this,[].slice.call(arguments,1))},t.wrapGetTitlePosition=function(t){var e=t.apply(this,[].slice.call(arguments,1));return this.axis3D?this.axis3D.fix3dPosition(e,!0):e},t.defaultOptions={labels:{position3d:"offset",skew3d:!1},title:{position3d:null,skew3d:null}},t}()}),e(t,"Core/Series/Series3D.js",[t["Extensions/Math3D.js"],t["Core/Series/Series.js"],t["Core/Utilities.js"]],function(t,e,i){var o=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),s=t.perspective;t=i.addEvent;var r=i.extend,n=i.merge,a=i.pick,h=i.isNumber;return i=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return o(i,t),i.prototype.translate=function(){t.prototype.translate.apply(this,arguments),this.chart.is3d()&&this.translate3dPoints()},i.prototype.translate3dPoints=function(){var t,e=this.options,i=this.chart,o=a(this.zAxis,i.options.zAxis[0]),r=[],n=[];for(this.zPadding=(e.stacking?h(e.stack)?e.stack:0:this.index||0)*(e.depth||0+(e.groupZPadding||1)),t=0;t<this.data.length;t++){if(e=this.data[t],o&&o.translate){var l=o.logarithmic&&o.val2lin?o.val2lin(e.z):e.z;e.plotZ=o.translate(l),e.isInside=!!e.isInside&&(l>=o.min&&l<=o.max)}else e.plotZ=this.zPadding;e.axisXpos=e.plotX,e.axisYpos=e.plotY,e.axisZpos=e.plotZ,r.push({x:e.plotX,y:e.plotY,z:e.plotZ}),n.push(e.plotX||0)}for(this.rawPointsX=n,i=s(r,i,!0),t=0;t<this.data.length;t++)e=this.data[t],o=i[t],e.plotX=o.x,e.plotY=o.y,e.plotZ=o.z},i.defaultOptions=n(e.defaultOptions),i}(e),t(e,"afterTranslate",function(){this.chart.is3d()&&this.translate3dPoints()}),r(e.prototype,{translate3dPoints:i.prototype.translate3dPoints}),i}),e(t,"Series/Column3D/Column3DComposition.js",[t["Series/Column/ColumnSeries.js"],t["Core/Globals.js"],t["Core/Series/Series.js"],t["Extensions/Math3D.js"],t["Core/Series/SeriesRegistry.js"],t["Extensions/Stacking.js"],t["Core/Utilities.js"]],function(t,e,i,o,s,r,n){function a(t){var e=t.apply(this,[].slice.call(arguments,1));return this.chart.is3d&&this.chart.is3d()&&(e.stroke=this.options.edgeColor||e.fill,e["stroke-width"]=u(this.options.edgeWidth,1)),e}function h(t,e,i){var o=this.chart.is3d&&this.chart.is3d();o&&(this.options.inactiveOtherPoints=!0),t.call(this,e,i),o&&(this.options.inactiveOtherPoints=!1)}function l(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];return this.series.chart.is3d()?this.graphic&&"g"!==this.graphic.element.nodeName:t.apply(this,e)}var c=t.prototype,p=e.svg,d=o.perspective;e=n.addEvent;var u=n.pick;return(n=n.wrap)(c,"translate",function(t){t.apply(this,[].slice.call(arguments,1)),this.chart.is3d()&&this.translate3dShapes()}),n(i.prototype,"justifyDataLabel",function(t){return!arguments[2].outside3dPlot&&t.apply(this,[].slice.call(arguments,1))}),c.translate3dPoints=function(){},c.translate3dShapes=function(){var t,e=this,i=e.chart,o=e.options,s=o.depth,r=(o.stacking?o.stack||0:e.index)*(s+(o.groupZPadding||1)),n=e.borderWidth%2?.5:0;i.inverted&&!e.yAxis.reversed&&(n*=-1),!1!==o.grouping&&(r=0),r+=o.groupZPadding||1,e.data.forEach(function(o){if(o.outside3dPlot=null,null!==o.y){var a,h=o.shapeArgs,l=o.tooltipPos;[["x","width"],["y","height"]].forEach(function(t){if(0>(a=h[t[0]]-n)&&(h[t[1]]+=h[t[0]]+n,h[t[0]]=-n,a=0),a+h[t[1]]>e[t[0]+"Axis"].len&&0!==h[t[1]]&&(h[t[1]]=e[t[0]+"Axis"].len-h[t[0]]),0!==h[t[1]]&&(h[t[0]]>=e[t[0]+"Axis"].len||h[t[0]]+h[t[1]]<=n)){for(var i in h)h[i]="y"===i?-9999:0;o.outside3dPlot=!0}}),"rect"===o.shapeType&&(o.shapeType="cuboid"),h.z=r,h.depth=s,h.insidePlotArea=!0,t={x:h.x+h.width/2,y:h.y,z:r+s/2},i.inverted&&(t.x=h.height,t.y=o.clientX),o.plot3d=d([t],i,!0,!1)[0],l=d([{x:l[0],y:l[1],z:r+s/2}],i,!0,!1)[0],o.tooltipPos=[l.x,l.y]}}),e.z=r},n(c,"animate",function(t){if(this.chart.is3d()){var e=arguments[1],i=this.yAxis,o=this,s=this.yAxis.reversed;p&&(e?o.data.forEach(function(t){null!==t.y&&(t.height=t.shapeArgs.height,t.shapey=t.shapeArgs.y,t.shapeArgs.height=1,s||(t.shapeArgs.y=t.stackY?t.plotY+i.translate(t.stackY):t.plotY+(t.negative?-t.height:t.height)))}):(o.data.forEach(function(t){null!==t.y&&(t.shapeArgs.height=t.height,t.shapeArgs.y=t.shapey,t.graphic)&&t.graphic[t.outside3dPlot?"attr":"animate"](t.shapeArgs,o.options.animation)}),this.drawDataLabels()))}else t.apply(this,[].slice.call(arguments,1))}),n(c,"plotGroup",function(t,e,i,o,s,r){return"dataLabelsGroup"!==e&&this.chart.is3d()&&(this[e]&&delete this[e],r&&(this.chart.columnGroup||(this.chart.columnGroup=this.chart.renderer.g("columnGroup").add(r)),this[e]=this.chart.columnGroup,this.chart.columnGroup.attr(this.getPlotBox()),this[e].survive=!0,"group"===e||"markerGroup"===e))&&(arguments[3]="visible"),t.apply(this,Array.prototype.slice.call(arguments,1))}),n(c,"setVisible",function(t,e){var i=this;i.chart.is3d()&&i.data.forEach(function(t){t.visible=t.options.visible=e=void 0===e?!u(i.visible,t.visible):e,i.options.data[i.data.indexOf(t)]=t.options,t.graphic&&t.graphic.attr({visibility:e?"visible":"hidden"})}),t.apply(this,Array.prototype.slice.call(arguments,1))}),e(t,"afterInit",function(){if(this.chart.is3d()){var t=this.options,e=t.grouping,i=t.stacking,o=this.yAxis.options.reversedStacks,s=0;if(void 0===e||e){for(e=function(t,e){var i,o=t.series,s={totalStacks:0},r=1;return o.forEach(function(t){i=u(t.options.stack,e?0:o.length-1-t.index),s[i]?s[i].series.push(t):(s[i]={series:[t],position:r},r++)}),s.totalStacks=r+1,s}(this.chart,i),s=t.stack||0,i=0;i<e[s].series.length&&e[s].series[i]!==this;i++);s=10*(e.totalStacks-e[s].position)+(o?i:-i),this.xAxis.reversed||(s=10*e.totalStacks-s)}t.depth=t.depth||25,this.z=this.z||0,t.zIndex=s}}),n(c,"pointAttribs",a),n(c,"setState",h),n(c.pointClass.prototype,"hasNewShapeType",l),s.seriesTypes.columnRange&&(n(e=s.seriesTypes.columnrange.prototype,"pointAttribs",a),n(e,"setState",h),n(e.pointClass.prototype,"hasNewShapeType",l),e.plotGroup=c.plotGroup,e.setVisible=c.setVisible),n(i.prototype,"alignDataLabel",function(t,e,i,o,s){var r=this.chart;if(o.outside3dPlot=e.outside3dPlot,r.is3d()&&this.is("column")){var n=this.options,a=u(o.inside,!!this.options.stacking),h=r.options.chart.options3d,l=e.pointWidth/2||0;n={x:s.x+l,y:s.y,z:this.z+n.depth/2},r.inverted&&(a&&(s.width=0,n.x+=e.shapeArgs.height/2),90<=h.alpha&&270>=h.alpha&&(n.y+=e.shapeArgs.width)),n=d([n],r,!0,!1)[0],s.x=n.x-l,s.y=e.outside3dPlot?-9e9:n.y}t.apply(this,[].slice.call(arguments,1))}),n(r.prototype,"getStackBox",function(t,e,i,o,r,n,a,h){var l=t.apply(this,[].slice.call(arguments,1));if(e.is3d()&&i.base){var c=+i.base.split(",")[0],p=e.series[c];c=e.options.chart.options3d,p&&p instanceof s.seriesTypes.column&&(p={x:l.x+(e.inverted?a:n/2),y:l.y,z:p.options.depth/2},e.inverted&&(l.width=0,90<=c.alpha&&270>=c.alpha&&(p.y+=n)),p=d([p],e,!0,!1)[0],l.x=p.x-n/2,l.y=p.y)}return l}),t}),e(t,"Series/Pie3D/Pie3DPoint.js",[t["Core/Series/SeriesRegistry.js"]],function(t){var e=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),i=(t=t.seriesTypes.pie.prototype.pointClass).prototype.haloPath;return function(t){function o(){var e=null!==t&&t.apply(this,arguments)||this;return e.series=void 0,e}return e(o,t),o.prototype.haloPath=function(){return this.series.chart.is3d()?[]:i.apply(this,arguments)},o}(t)}),e(t,"Series/Pie3D/Pie3DSeries.js",[t["Core/Globals.js"],t["Series/Pie3D/Pie3DPoint.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(t,e,i,o){var s=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),r=t.deg2rad,n=t.svg;t=o.extend;var a=o.pick;return i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return s(e,t),e.prototype.addPoint=function(){t.prototype.addPoint.apply(this,arguments),this.chart.is3d()&&this.update(this.userOptions,!0)},e.prototype.animate=function(e){if(this.chart.is3d()){var i=this.options.animation,o=this.center,s=this.group,r=this.markerGroup;n&&(!0===i&&(i={}),e?(s.oldtranslateX=a(s.oldtranslateX,s.translateX),s.oldtranslateY=a(s.oldtranslateY,s.translateY),o={translateX:o[0],translateY:o[1],scaleX:.001,scaleY:.001},s.attr(o),r&&(r.attrSetters=s.attrSetters,r.attr(o))):(o={translateX:s.oldtranslateX,translateY:s.oldtranslateY,scaleX:1,scaleY:1},s.animate(o,i),r&&r.animate(o,i)))}else t.prototype.animate.apply(this,arguments)},e.prototype.drawDataLabels=function(){if(this.chart.is3d()){var e=this.chart.options.chart.options3d;this.data.forEach(function(t){var i=t.shapeArgs,o=i.r,s=(i.start+i.end)/2,n=(t=t.labelPosition).connectorPosition,a=-o*(1-Math.cos((i.alpha||e.alpha)*r))*Math.sin(s),h=o*(Math.cos((i.beta||e.beta)*r)-1)*Math.cos(s);[t.natural,n.breakAt,n.touchingSliceAt].forEach(function(t){t.x+=h,t.y+=a})})}t.prototype.drawDataLabels.apply(this,arguments)},e.prototype.pointAttribs=function(e){var i=t.prototype.pointAttribs.apply(this,arguments),o=this.options;return this.chart.is3d()&&!this.chart.styledMode&&(i.stroke=o.edgeColor||e.color||this.color,i["stroke-width"]=a(o.edgeWidth,1)),i},e.prototype.translate=function(){if(t.prototype.translate.apply(this,arguments),this.chart.is3d()){var e=this,i=e.options,o=i.depth||0,s=e.chart.options.chart.options3d,n=s.alpha,a=s.beta,h=i.stacking?(i.stack||0)*o:e._i*o;h+=o/2,!1!==i.grouping&&(h=0),e.data.forEach(function(t){var s=t.shapeArgs;t.shapeType="arc3d",s.z=h,s.depth=.75*o,s.alpha=n,s.beta=a,s.center=e.center,s=(s.end+s.start)/2,t.slicedTranslation={translateX:Math.round(Math.cos(s)*i.slicedOffset*Math.cos(n*r)),translateY:Math.round(Math.sin(s)*i.slicedOffset*Math.cos(n*r))}})}},e.prototype.drawTracker=function(){t.prototype.drawTracker.apply(this,arguments),this.chart.is3d()&&this.points.forEach(function(t){t.graphic&&["out","inn","side1","side2"].forEach(function(e){t.graphic&&(t.graphic[e].element.point=t)})})},e}(i.seriesTypes.pie),t(i.prototype,{pointClass:e}),i}),e(t,"Series/Pie3D/Pie3DComposition.js",[t["Series/Pie3D/Pie3DPoint.js"],t["Series/Pie3D/Pie3DSeries.js"],t["Core/Series/SeriesRegistry.js"]],function(t,e,i){i.seriesTypes.pie.prototype.pointClass.prototype.haloPath=t.prototype.haloPath,i.seriesTypes.pie=e}),e(t,"Series/Scatter3D/Scatter3DPoint.js",[t["Series/Scatter/ScatterSeries.js"],t["Core/Utilities.js"]],function(t,e){var i=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),o=e.defined;return function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.options=void 0,e.series=void 0,e}return i(e,t),e.prototype.applyOptions=function(){return t.prototype.applyOptions.apply(this,arguments),o(this.z)||(this.z=0),this},e}(t.prototype.pointClass)}),e(t,"Series/Scatter3D/Scatter3DSeries.js",[t["Extensions/Math3D.js"],t["Series/Scatter3D/Scatter3DPoint.js"],t["Series/Scatter/ScatterSeries.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(t,e,i,o,s){var r=this&&this.__extends||function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(e,i)};return function(e,i){function o(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(o.prototype=i.prototype,new o)}}(),n=t.pointCameraDistance;t=s.extend;var a=s.merge;return t((s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=void 0,e.options=void 0,e.points=void 0,e}return r(e,t),e.prototype.pointAttribs=function(e){var i=t.prototype.pointAttribs.apply(this,arguments);return this.chart.is3d()&&e&&(i.zIndex=n(e,this.chart)),i},e.defaultOptions=a(i.defaultOptions,{tooltip:{pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>z: <b>{point.z}</b><br/>"}}),e}(i)).prototype,{axisTypes:["xAxis","yAxis","zAxis"],directTouch:!0,parallelArrays:["x","y","z"],pointArrayMap:["x","y","z"],pointClass:e}),o.registerSeriesType("scatter3d",s),s}),e(t,"Series/Area3DSeries.js",[t["Extensions/Math3D.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(t,e,i){var o=t.perspective,s=(t=e.seriesTypes).line,r=i.pick;(i=i.wrap)(t.area.prototype,"getGraphPath",function(t){var e=t.apply(this,[].slice.call(arguments,1));if(!this.chart.is3d())return e;var i=s.prototype.getGraphPath,n=this.options,a=[],h=r(n.connectNulls,"percent"===n.stacking),l=Math.round(this.yAxis.getThreshold(n.threshold));if(this.rawPointsX)for(var c=0;c<this.points.length;c++)a.push({x:this.rawPointsX[c],y:n.stacking?this.points[c].yBottom:l,z:this.zPadding});return n=this.chart.options.chart.options3d,a=o(a,this.chart,!0).map(function(t){return{plotX:t.x,plotY:t.y,plotZ:t.z}}),this.group&&n&&n.depth&&n.beta&&(this.markerGroup&&(this.markerGroup.add(this.group),this.markerGroup.attr({translateX:0,translateY:0})),this.group.attr({zIndex:Math.max(1,270<n.beta||90>n.beta?n.depth-Math.round(this.zPadding||0):Math.round(this.zPadding||0))})),a.reversed=!0,(a=i.call(this,a,!0,!0))[0]&&"M"===a[0][0]&&(a[0]=["L",a[0][1],a[0][2]]),this.areaPath&&((a=this.areaPath.splice(0,this.areaPath.length/2).concat(a)).xMap=this.areaPath.xMap,this.areaPath=a,i.call(this,[],!1,h)),e})}),e(t,"masters/highcharts-3d.src.js",[t["Core/Globals.js"],t["Core/Renderer/SVG/SVGRenderer3D.js"],t["Core/Chart/Chart3D.js"],t["Core/Axis/ZAxis.js"],t["Core/Axis/Axis3D.js"]],function(t,e,i,o,s){e.compose(t.SVGRenderer),i.compose(t.Chart,t.Fx),o.ZChartComposition.compose(t.Chart),s.compose(t.Axis)})})},qjQK:function(t,e,i){var o,s;!function(r){"object"==typeof t&&t.exports?(r.default=r,t.exports=r):(o=[i("BjTr")],void 0===(s=function(t){return r(t),r.Highcharts=t,r}.apply(e,o))||(t.exports=s))}(function(t){function e(t,e,i,o){t.hasOwnProperty(e)||(t[e]=o.apply(null,i),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}e(t=t?t._modules:{},"Extensions/FullScreen.js",[t["Core/Chart/Chart.js"],t["Core/Globals.js"],t["Core/Renderer/HTML/AST.js"],t["Core/Utilities.js"]],function(t,e,i,o){var s=o.addEvent,r=o.fireEvent;return o=function(){function t(t){this.chart=t,this.isOpen=!1,t=t.renderTo,this.browserProps||("function"==typeof t.requestFullscreen?this.browserProps={fullscreenChange:"fullscreenchange",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen"}:t.mozRequestFullScreen?this.browserProps={fullscreenChange:"mozfullscreenchange",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen"}:t.webkitRequestFullScreen?this.browserProps={fullscreenChange:"webkitfullscreenchange",requestFullscreen:"webkitRequestFullScreen",exitFullscreen:"webkitExitFullscreen"}:t.msRequestFullscreen&&(this.browserProps={fullscreenChange:"MSFullscreenChange",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen"}))}return t.prototype.close=function(){var t=this,e=t.chart,i=e.options.chart;r(e,"fullscreenClose",null,function(){t.isOpen&&t.browserProps&&e.container.ownerDocument instanceof Document&&e.container.ownerDocument[t.browserProps.exitFullscreen](),t.unbindFullscreenEvent&&(t.unbindFullscreenEvent=t.unbindFullscreenEvent()),e.setSize(t.origWidth,t.origHeight,!1),t.origWidth=void 0,t.origHeight=void 0,i.width=t.origWidthOption,i.height=t.origHeightOption,t.origWidthOption=void 0,t.origHeightOption=void 0,t.isOpen=!1,t.setButtonText()})},t.prototype.open=function(){var t=this,e=t.chart,i=e.options.chart;r(e,"fullscreenOpen",null,function(){if(i&&(t.origWidthOption=i.width,t.origHeightOption=i.height),t.origWidth=e.chartWidth,t.origHeight=e.chartHeight,t.browserProps){var o=s(e.container.ownerDocument,t.browserProps.fullscreenChange,function(){t.isOpen?(t.isOpen=!1,t.close()):(e.setSize(null,null,!1),t.isOpen=!0,t.setButtonText())}),r=s(e,"destroy",o);t.unbindFullscreenEvent=function(){o(),r()};var n=e.renderTo[t.browserProps.requestFullscreen]();n&&n.catch(function(){alert("Full screen is not supported inside a frame.")})}})},t.prototype.setButtonText=function(){var t=this.chart,e=t.exportDivElements,o=t.options.exporting,s=o&&o.buttons&&o.buttons.contextButton.menuItems;t=t.options.lang,o&&o.menuItemDefinitions&&t&&t.exitFullscreen&&t.viewFullscreen&&s&&e&&(e=e[s.indexOf("viewFullscreen")])&&i.setElementHTML(e,this.isOpen?t.exitFullscreen:o.menuItemDefinitions.viewFullscreen.text||t.viewFullscreen)},t.prototype.toggle=function(){this.isOpen?this.close():this.open()},t}(),e.Fullscreen=o,s(t,"beforeRender",function(){this.fullscreen=new e.Fullscreen(this)}),e.Fullscreen}),e(t,"Core/Chart/ChartNavigationComposition.js",[],function(){var t;return function(t){t.compose=function(t){return t.navigation||(t.navigation=new e(t)),t};var e=function(){function t(t){this.updates=[],this.chart=t}return t.prototype.addUpdate=function(t){this.chart.navigation.updates.push(t)},t.prototype.update=function(t,e){var i=this;this.updates.forEach(function(o){o.call(i.chart,t,e)})},t}();t.Additions=e}(t||(t={})),t}),e(t,"Extensions/Exporting/ExportingDefaults.js",[t["Core/Globals.js"]],function(t){return{exporting:{type:"image/png",url:"https://export.highcharts.com/",pdfFont:{normal:void 0,bold:void 0,bolditalic:void 0,italic:void 0},printMaxWidth:780,scale:2,buttons:{contextButton:{className:"highcharts-contextbutton",menuClassName:"highcharts-contextmenu",symbol:"menu",titleKey:"contextButtonTitle",menuItems:"viewFullscreen printChart separator downloadPNG downloadJPEG downloadPDF downloadSVG".split(" ")}},menuItemDefinitions:{viewFullscreen:{textKey:"viewFullscreen",onclick:function(){this.fullscreen.toggle()}},printChart:{textKey:"printChart",onclick:function(){this.print()}},separator:{separator:!0},downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChart()}},downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},downloadSVG:{textKey:"downloadSVG",onclick:function(){this.exportChart({type:"image/svg+xml"})}}}},lang:{viewFullscreen:"View in full screen",exitFullscreen:"Exit from full screen",printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"},navigation:{buttonOptions:{symbolSize:14,symbolX:12.5,symbolY:10.5,align:"right",buttonSpacing:3,height:22,verticalAlign:"top",width:24,symbolFill:"#666666",symbolStroke:"#666666",symbolStrokeWidth:3,theme:{padding:5}},menuStyle:{border:"1px solid #999999",background:"#ffffff",padding:"5px 0"},menuItemStyle:{padding:"0.5em 1em",color:"#333333",background:"none",fontSize:t.isTouchDevice?"14px":"11px",transition:"background 250ms, color 250ms"},menuItemHoverStyle:{background:"#335cad",color:"#ffffff"}}}}),e(t,"Extensions/Exporting/ExportingSymbols.js",[],function(){var t;return function(t){function e(t,e,i,o){return[["M",t,e+2.5],["L",t+i,e+2.5],["M",t,e+o/2+.5],["L",t+i,e+o/2+.5],["M",t,e+o-1.5],["L",t+i,e+o-1.5]]}var i=[];t.compose=function(t){-1===i.indexOf(t)&&(i.push(t),(t=t.prototype.symbols).menu=e,t.menuball=function(t,e,i,o){return t=o/3-2,(o=[]).concat(this.circle(i-t,e,t,t),this.circle(i-t,e+t+4,t,t),this.circle(i-t,e+2*(t+4),t,t))}.bind(t))}}(t||(t={})),t}),e(t,"Core/HttpUtilities.js",[t["Core/Globals.js"],t["Core/Utilities.js"]],function(t,e){var i=t.doc,o=e.createElement,s=e.discardElement,r=e.merge,n=e.objectEach,a={ajax:function(t){var e=r(!0,{url:!1,type:"get",dataType:"json",success:!1,error:!1,data:!1,headers:{}},t);t={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"};var i=new XMLHttpRequest;if(!e.url)return!1;i.open(e.type.toUpperCase(),e.url,!0),e.headers["Content-Type"]||i.setRequestHeader("Content-Type",t[e.dataType]||t.text),n(e.headers,function(t,e){i.setRequestHeader(e,t)}),e.responseType&&(i.responseType=e.responseType),i.onreadystatechange=function(){if(4===i.readyState){if(200===i.status){if("blob"!==e.responseType){var t=i.responseText;if("json"===e.dataType)try{t=JSON.parse(t)}catch(t){return void(e.error&&e.error(i,t))}}return e.success&&e.success(t,i)}e.error&&e.error(i,i.responseText)}};try{e.data=JSON.stringify(e.data)}catch(t){}i.send(e.data||!0)},getJSON:function(t,e){a.ajax({url:t,success:e,dataType:"json",headers:{"Content-Type":"text/plain"}})},post:function(t,e,a){var h=o("form",r({method:"post",action:t,enctype:"multipart/form-data"},a),{display:"none"},i.body);n(e,function(t,e){o("input",{type:"hidden",name:e,value:t},null,h)}),h.submit(),s(h)}};return a}),e(t,"Extensions/Exporting/Exporting.js",[t["Core/Renderer/HTML/AST.js"],t["Core/Chart/Chart.js"],t["Core/Chart/ChartNavigationComposition.js"],t["Core/DefaultOptions.js"],t["Extensions/Exporting/ExportingDefaults.js"],t["Extensions/Exporting/ExportingSymbols.js"],t["Core/Globals.js"],t["Core/HttpUtilities.js"],t["Core/Utilities.js"]],function(t,e,i,o,s,r,n,a,h){e=o.defaultOptions;var l,c=n.doc,p=n.SVG_NS,d=n.win,u=h.addEvent,f=h.css,g=h.createElement,m=h.discardElement,x=h.extend,y=h.find,v=h.fireEvent,b=h.isObject,S=h.merge,M=h.objectEach,k=h.pick,w=h.removeEvent,C=h.uniqueKey;return function(e){function o(t){var e=this,i=e.renderer,o=S(e.options.navigation.buttonOptions,t),s=o.onclick,r=o.menuItems,n=o.symbolSize||12;if(e.btnCount||(e.btnCount=0),e.exportDivElements||(e.exportDivElements=[],e.exportSVGElements=[]),!1!==o.enabled&&o.theme){var a,h=o.theme;e.styledMode||(h.fill=k(h.fill,"#ffffff"),h.stroke=k(h.stroke,"none")),s?a=function(t){t&&t.stopPropagation(),s.call(e,t)}:r&&(a=function(t){t&&t.stopPropagation(),e.contextMenu(l.menuClassName,r,l.translateX,l.translateY,l.width,l.height,l),l.setState(2)}),o.text&&o.symbol?h.paddingLeft=k(h.paddingLeft,30):o.text||x(h,{width:o.width,height:o.height,padding:0}),e.styledMode||(h["stroke-linecap"]="round",h.fill=k(h.fill,"#ffffff"),h.stroke=k(h.stroke,"none"));var l=i.button(o.text,0,0,a,h).addClass(t.className).attr({title:k(e.options.lang[o._titleKey||o.titleKey],"")});if(l.menuClassName=t.menuClassName||"highcharts-menu-"+e.btnCount++,o.symbol){var c=i.symbol(o.symbol,o.symbolX-n/2,o.symbolY-n/2,n,n,{width:n,height:n}).addClass("highcharts-button-symbol").attr({zIndex:1}).add(l);e.styledMode||c.attr({stroke:o.symbolStroke,fill:o.symbolFill,"stroke-width":o.symbolStrokeWidth||1})}l.add(e.exportingGroup).align(x(o,{width:l.width,x:k(o.x,e.buttonOffset)}),!0,"spacingBox"),e.buttonOffset+=(l.width+o.buttonSpacing)*("right"===o.align?-1:1),e.exportSVGElements.push(l,c)}}function s(){if(this.printReverseInfo){var t=this.printReverseInfo,e=t.childNodes,i=t.origDisplay;t=t.resetParams,this.moveContainers(this.renderTo),[].forEach.call(e,function(t,e){1===t.nodeType&&(t.style.display=i[e]||"")}),this.isPrinting=!1,t&&this.setSize.apply(this,t),delete this.printReverseInfo,F=void 0,v(this,"afterPrint")}}function l(){var t=c.body,e=this.options.exporting.printMaxWidth,i={childNodes:t.childNodes,origDisplay:[],resetParams:void 0};this.isPrinting=!0,this.pointer.reset(null,0),v(this,"beforePrint"),e&&this.chartWidth>e&&(i.resetParams=[this.options.chart.width,void 0,!1],this.setSize(e,void 0,!1)),[].forEach.call(i.childNodes,function(t,e){1===t.nodeType&&(i.origDisplay[e]=t.style.display,t.style.display="none")}),this.moveContainers(t),this.printReverseInfo=i}function A(t){t.renderExporting(),u(t,"redraw",t.renderExporting),u(t,"destroy",t.destroyExport)}function P(e,i,o,s,r,n,a){var l=this,p=l.options.navigation,m=l.chartWidth,y=l.chartHeight,S="cache-"+e,M=Math.max(r,n),k=l[S];if(!k){l.exportContextMenu=l[S]=k=g("div",{className:e},{position:"absolute",zIndex:1e3,padding:M+"px",pointerEvents:"auto"},l.fixedDiv||l.container);var w=g("ul",{className:"highcharts-menu"},{listStyle:"none",margin:0,padding:0},k);l.styledMode||f(w,x({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},p.menuStyle)),k.hideMenu=function(){f(k,{display:"none"}),a&&a.setState(0),l.openMenu=!1,f(l.renderTo,{overflow:"hidden"}),f(l.container,{overflow:"hidden"}),h.clearTimeout(k.hideTimer),v(l,"exportMenuHidden")},l.exportEvents.push(u(k,"mouseleave",function(){k.hideTimer=d.setTimeout(k.hideMenu,500)}),u(k,"mouseenter",function(){h.clearTimeout(k.hideTimer)}),u(c,"mouseup",function(t){l.pointer.inClass(t.target,e)||k.hideMenu()}),u(k,"click",function(){l.openMenu&&k.hideMenu()})),i.forEach(function(e){if("string"==typeof e&&(e=l.options.exporting.menuItemDefinitions[e]),b(e,!0)){var i=void 0;e.separator?i=g("hr",void 0,void 0,w):("viewData"===e.textKey&&l.isDataTableVisible&&(e.textKey="hideData"),i=g("li",{className:"highcharts-menu-item",onclick:function(t){t&&t.stopPropagation(),k.hideMenu(),e.onclick&&e.onclick.apply(l,arguments)}},void 0,w),t.setElementHTML(i,e.text||l.options.lang[e.textKey]),l.styledMode||(i.onmouseover=function(){f(this,p.menuItemHoverStyle)},i.onmouseout=function(){f(this,p.menuItemStyle)},f(i,x({cursor:"pointer"},p.menuItemStyle||{})))),l.exportDivElements.push(i)}}),l.exportDivElements.push(w,k),l.exportMenuWidth=k.offsetWidth,l.exportMenuHeight=k.offsetHeight}i={display:"block"},o+l.exportMenuWidth>m?i.right=m-o-r-M+"px":i.left=o-M+"px",s+n+l.exportMenuHeight>y&&"top"!==a.alignOptions.verticalAlign?i.bottom=y-s-M+"px":i.top=s+n-M+"px",f(k,i),f(l.renderTo,{overflow:""}),f(l.container,{overflow:""}),l.openMenu=!0,v(l,"exportMenuShown")}function T(t){var e,i=t?t.target:this,o=i.exportSVGElements,s=i.exportDivElements;t=i.exportEvents,o&&(o.forEach(function(t,s){t&&(t.onclick=t.ontouchstart=null,e="cache-"+t.menuClassName,i[e]&&delete i[e],o[s]=t.destroy())}),o.length=0),i.exportingGroup&&(i.exportingGroup.destroy(),delete i.exportingGroup),s&&(s.forEach(function(t,e){t&&(h.clearTimeout(t.hideTimer),w(t,"mouseleave"),s[e]=t.onmouseout=t.onmouseover=t.ontouchstart=t.onclick=null,m(t))}),s.length=0),t&&(t.forEach(function(t){t()}),t.length=0)}function O(t,e){e=this.getSVGForExport(t,e),t=S(this.options.exporting,t),a.post(t.url,{filename:t.filename?t.filename.replace(/\//g,"-"):this.getFilename(),type:t.type,width:t.width||0,scale:t.scale,svg:e},t.formAttributes)}function E(){return this.styledMode&&this.inlineStyles(),this.container.innerHTML}function L(){var t=this.userOptions.title&&this.userOptions.title.text,e=this.options.exporting.filename;return e?e.replace(/\//g,"-"):("string"==typeof t&&(e=t.toLowerCase().replace(/<\/?[^>]+(>|$)/g,"").replace(/[\s_]+/g,"-").replace(/[^a-z0-9\-]/g,"").replace(/^[\-]+/g,"").replace(/[\-]+/g,"-").substr(0,24).replace(/[\-]+$/g,"")),(!e||5>e.length)&&(e="chart"),e)}function D(t){var e,i=S(this.options,t);i.plotOptions=S(this.userOptions.plotOptions,t&&t.plotOptions),i.time=S(this.userOptions.time,t&&t.time);var o=g("div",null,{position:"absolute",top:"-9999em",width:this.chartWidth+"px",height:this.chartHeight+"px"},c.body),s=this.renderTo.style.width,r=this.renderTo.style.height;s=i.exporting.sourceWidth||i.chart.width||/px$/.test(s)&&parseInt(s,10)||(i.isGantt?800:600),r=i.exporting.sourceHeight||i.chart.height||/px$/.test(r)&&parseInt(r,10)||400,x(i.chart,{animation:!1,renderTo:o,forExport:!0,renderer:"SVGRenderer",width:s,height:r}),i.exporting.enabled=!1,delete i.data,i.series=[],this.series.forEach(function(t){(e=S(t.userOptions,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:t.visible})).isInternal||i.series.push(e)});var n={};this.axes.forEach(function(t){t.userOptions.internalKey||(t.userOptions.internalKey=C()),t.options.isInternal||(n[t.coll]||(n[t.coll]=!0,i[t.coll]=[]),i[t.coll].push(S(t.userOptions,{visible:t.visible})))});var a=new this.constructor(i,this.callback);return t&&["xAxis","yAxis","series"].forEach(function(e){var i={};t[e]&&(i[e]=t[e],a.update(i))}),this.axes.forEach(function(t){var e=y(a.axes,function(e){return e.options.internalKey===t.userOptions.internalKey}),i=t.getExtremes(),o=i.userMin;i=i.userMax,e&&(void 0!==o&&o!==e.min||void 0!==i&&i!==e.max)&&e.setExtremes(o,i,!0,!1)}),r=a.getChartHTML(),v(this,"getSVG",{chartCopy:a}),r=this.sanitizeSVG(r,i),i=null,a.destroy(),m(o),r}function z(t,e){var i=this.options.exporting;return this.getSVG(S({chart:{borderRadius:0}},i.chartOptions,e,{exporting:{sourceWidth:t&&t.sourceWidth||i.sourceWidth,sourceHeight:t&&t.sourceHeight||i.sourceHeight}}))}function j(t){return t.replace(/([A-Z])/g,function(t,e){return"-"+e.toLowerCase()})}function I(){var t,i=X,o=e.inlineWhitelist,s={},r=c.createElement("iframe");f(r,{width:"1px",height:"1px",visibility:"hidden"}),c.body.appendChild(r);var a=r.contentWindow&&r.contentWindow.document;a&&a.body.appendChild(a.createElementNS(p,"svg")),function e(r){var h,l,c={};if(a&&1===r.nodeType&&-1===Y.indexOf(r.nodeName)){var p=d.getComputedStyle(r,null),u="svg"===r.nodeName?{}:d.getComputedStyle(r.parentNode,null);if(!s[r.nodeName]){t=a.getElementsByTagName("svg")[0];var g=a.createElementNS(r.namespaceURI,r.nodeName);t.appendChild(g),s[r.nodeName]=S(d.getComputedStyle(g,null)),"text"===r.nodeName&&delete s.text.fill,t.removeChild(g)}for(var m in p)if(n.isFirefox||n.isMS||n.isSafari||Object.hasOwnProperty.call(p,m)){var x=p[m],y=m;if(g=h=!1,o.length){for(l=o.length;l--&&!h;)h=o[l].test(y);g=!h}for("transform"===y&&"none"===x&&(g=!0),l=i.length;l--&&!g;)g=i[l].test(y)||"function"==typeof x;g||u[y]===x&&"svg"!==r.nodeName||s[r.nodeName][y]===x||(_&&-1===_.indexOf(y)?c[y]=x:x&&r.setAttribute(j(y),x))}f(r,c),"svg"===r.nodeName&&r.setAttribute("stroke-width","1px"),"text"!==r.nodeName&&[].forEach.call(r.children||r.childNodes,e)}}(this.container.querySelector("svg")),t.parentNode.removeChild(t),r.parentNode.removeChild(r)}function B(t){(this.fixedDiv?[this.fixedDiv,this.scrollingContainer]:[this.container]).forEach(function(e){t.appendChild(e)})}function R(){var t=this;t.exporting={update:function(e,i){t.isDirtyExporting=!0,S(!0,t.options.exporting,e),k(i,!0)&&t.redraw()}},i.compose(t).navigation.addUpdate(function(e,i){t.isDirtyExporting=!0,S(!0,t.options.navigation,e),k(i,!0)&&t.redraw()})}function G(){var t=this;t.isPrinting||(F=t,n.isSafari||t.beforePrint(),setTimeout(function(){d.focus(),d.print(),n.isSafari||setTimeout(function(){t.afterPrint()},1e3)},1))}function N(){var t=this,e=t.options.exporting,i=e.buttons,o=t.isDirtyExporting||!t.exportSVGElements;t.buttonOffset=0,t.isDirtyExporting&&t.destroyExport(),o&&!1!==e.enabled&&(t.exportEvents=[],t.exportingGroup=t.exportingGroup||t.renderer.g("exporting-group").attr({zIndex:3}).add(),M(i,function(e){t.addButton(e)}),t.isDirtyExporting=!1)}function W(t,e){var i=t.indexOf("</svg>")+6,o=t.substr(i);return t=t.substr(0,i),e&&e.exporting&&e.exporting.allowHTML&&o&&(o='<foreignObject x="0" y="0" width="'+e.chart.width+'" height="'+e.chart.height+'"><body xmlns="http://www.w3.org/1999/xhtml">'+o.replace(/(<(?:img|br).*?(?=>))>/g,"$1 />")+"</body></foreignObject>",t=t.replace("</svg>",o+"</svg>")),t=t.replace(/zIndex="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery[0-9]+="[^"]+"/g,"").replace(/url\(("|&quot;)(.*?)("|&quot;);?\)/g,"url($2)").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (|NS[0-9]+:)href=/g," xlink:href=").replace(/\n/," ").replace(/(fill|stroke)="rgba\(([ 0-9]+,[ 0-9]+,[ 0-9]+),([ 0-9\.]+)\)"/g,'$1="rgb($2)" $1-opacity="$3"').replace(/&nbsp;/g," ").replace(/&shy;/g,"­"),this.ieSanitizeSVG&&(t=this.ieSanitizeSVG(t)),t}var H=[],X=[/-/,/^(clipPath|cssText|d|height|width)$/,/^font$/,/[lL]ogical(Width|Height)$/,/perspective/,/TapHighlightColor/,/^transition/,/^length$/],_="fill stroke strokeLinecap strokeLinejoin strokeWidth textAnchor x y".split(" ");e.inlineWhitelist=[];var F,Y=["clipPath","defs","desc"];e.compose=function(t,e){r.compose(e),-1===H.indexOf(t)&&(H.push(t),(e=t.prototype).afterPrint=s,e.exportChart=O,e.inlineStyles=I,e.print=G,e.sanitizeSVG=W,e.getChartHTML=E,e.getSVG=D,e.getSVGForExport=z,e.getFilename=L,e.moveContainers=B,e.beforePrint=l,e.contextMenu=P,e.addButton=o,e.destroyExport=T,e.renderExporting=N,e.callbacks.push(A),u(t,"init",R),n.isSafari&&n.win.matchMedia("print").addListener(function(t){F&&(t.matches?F.beforePrint():F.afterPrint())}))}}(l||(l={})),e.exporting=S(s.exporting,e.exporting),e.lang=S(s.lang,e.lang),e.navigation=S(s.navigation,e.navigation),l}),e(t,"masters/modules/exporting.src.js",[t["Core/Globals.js"],t["Extensions/Exporting/Exporting.js"],t["Core/HttpUtilities.js"]],function(t,e,i){t.HttpUtilities=i,t.ajax=i.ajax,t.getJSON=i.getJSON,t.post=i.post,e.compose(t.Chart,t.Renderer)})})}}]);