highcharts
Version:
JavaScript charting framework
2 lines • 314 kB
JavaScript
!function(t,e){"object"==typeof exports&&"object"==typeof module?(t._Highcharts=e(),module.exports=t._Highcharts):"function"==typeof define&&define.amd?define("highcharts/highcharts",[],e):"object"==typeof exports?(t._Highcharts=e(),exports.highcharts=t._Highcharts):(t.Highcharts&&t.Highcharts.error(16,!0),t.Highcharts=e())}("undefined"==typeof window?this:window,()=>(()=>{"use strict";let t,e,i;var s,r,o,a,n,h,l,d,c,p,g,u,f,m,x,y,b,v,k,M={};M.d=(t,e)=>{for(var i in e)M.o(e,i)&&!M.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},M.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var w={};M.d(w,{default:()=>dK}),function(t){t.SVG_NS="http://www.w3.org/2000/svg",t.product="Highcharts",t.version="12.2.0",t.win="undefined"!=typeof window?window:{},t.doc=t.win.document,t.svg=!!t.doc?.createElementNS?.(t.SVG_NS,"svg")?.createSVGRect,t.pageLang=t.doc?.documentElement?.closest("[lang]")?.lang,t.userAgent=t.win.navigator?.userAgent||"",t.isChrome=t.win.chrome,t.isFirefox=-1!==t.userAgent.indexOf("Firefox"),t.isMS=/(edge|msie|trident)/i.test(t.userAgent)&&!t.win.opera,t.isSafari=!t.isChrome&&-1!==t.userAgent.indexOf("Safari"),t.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(t.userAgent),t.isWebKit=-1!==t.userAgent.indexOf("AppleWebKit"),t.deg2rad=2*Math.PI/360,t.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],t.noop=function(){},t.supportsPassiveEvents=function(){let e=!1;if(!t.isMS){let i=Object.defineProperty({},"passive",{get:function(){e=!0}});t.win.addEventListener&&t.win.removeEventListener&&(t.win.addEventListener("testPassive",t.noop,i),t.win.removeEventListener("testPassive",t.noop,i))}return e}(),t.charts=[],t.composed=[],t.dateFormats={},t.seriesTypes={},t.symbolSizes={},t.chartCount=0}(s||(s={}));let S=s,{charts:A,doc:T,win:C}=S;function O(t,e,i,s){let r=e?"Highcharts error":"Highcharts warning";32===t&&(t=`${r}: Deprecated member`);let o=z(t),a=o?`${r} #${t}: www.highcharts.com/errors/${t}/`:t.toString();if(void 0!==s){let t="";o&&(a+="?"),U(s,function(e,i){t+=`
- ${i}: ${e}`,o&&(a+=encodeURI(i)+"="+encodeURI(e))}),a+=t}$(S,"displayError",{chart:i,code:t,message:a,params:s},function(){if(e)throw Error(a);C.console&&-1===O.messages.indexOf(a)&&console.warn(a)}),O.messages.push(a)}function P(t,e){return parseInt(t,e||10)}function E(t){return"string"==typeof t}function L(t){let e=Object.prototype.toString.call(t);return"[object Array]"===e||"[object Array Iterator]"===e}function D(t,e){return!!t&&"object"==typeof t&&(!e||!L(t))}function I(t){return D(t)&&"number"==typeof t.nodeType}function B(t){let e=t?.constructor;return!!(D(t,!0)&&!I(t)&&e?.name&&"Object"!==e.name)}function z(t){return"number"==typeof t&&!isNaN(t)&&t<1/0&&t>-1/0}function N(t){return null!=t}function R(t,e,i){let s,r=E(e)&&!N(i),o=(e,i)=>{N(e)?t.setAttribute(i,e):r?(s=t.getAttribute(i))||"class"!==i||(s=t.getAttribute(i+"Name")):t.removeAttribute(i)};return E(e)?o(i,e):U(e,o),s}function W(t){return L(t)?t:[t]}function H(t,e){let i;for(i in t||(t={}),e)t[i]=e[i];return t}function X(){let t=arguments,e=t.length;for(let i=0;i<e;i++){let e=t[i];if(null!=e)return e}}function F(t,e){H(t.style,e)}function G(t){return Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function Y(t,e){return t>1e14?t:parseFloat(t.toPrecision(e||14))}(O||(O={})).messages=[],Math.easeInOutSine=function(t){return -.5*(Math.cos(Math.PI*t)-1)};let j=Array.prototype.find?function(t,e){return t.find(e)}:function(t,e){let i,s=t.length;for(i=0;i<s;i++)if(e(t[i],i))return t[i]};function U(t,e,i){for(let s in t)Object.hasOwnProperty.call(t,s)&&e.call(i||t[s],t[s],s,t)}function V(t,e,i){function s(e,i){let s=t.removeEventListener;s&&s.call(t,e,i,!1)}function r(i){let r,o;t.nodeName&&(e?(r={})[e]=!0:r=i,U(r,function(t,e){if(i[e])for(o=i[e].length;o--;)s(e,i[e][o].fn)}))}let o="function"==typeof t&&t.prototype||t;if(Object.hasOwnProperty.call(o,"hcEvents")){let t=o.hcEvents;if(e){let o=t[e]||[];i?(t[e]=o.filter(function(t){return i!==t.fn}),s(e,i)):(r(t),t[e]=[])}else r(t),delete o.hcEvents}}function $(t,e,i,s){if(i=i||{},T?.createEvent&&(t.dispatchEvent||t.fireEvent&&t!==S)){let s=T.createEvent("Events");s.initEvent(e,!0,!0),i=H(s,i),t.dispatchEvent?t.dispatchEvent(i):t.fireEvent(e,i)}else if(t.hcEvents){i.target||H(i,{preventDefault:function(){i.defaultPrevented=!0},target:t,type:e});let s=[],r=t,o=!1;for(;r.hcEvents;)Object.hasOwnProperty.call(r,"hcEvents")&&r.hcEvents[e]&&(s.length&&(o=!0),s.unshift.apply(s,r.hcEvents[e])),r=Object.getPrototypeOf(r);o&&s.sort((t,e)=>t.order-e.order),s.forEach(e=>{!1===e.fn.call(t,i)&&i.preventDefault()})}s&&!i.defaultPrevented&&s.call(t,i)}let Z=function(){let e=Math.random().toString(36).substring(2,9)+"-",i=0;return function(){return"highcharts-"+(t?"":e)+i++}}();C.jQuery&&(C.jQuery.fn.highcharts=function(){let t=[].slice.call(arguments);if(this[0])return t[0]?(new S[E(t[0])?t.shift():"Chart"](this[0],t[0],t[1]),this):A[R(this[0],"data-highcharts-chart")]});let _={addEvent:function(t,e,i,s={}){let r="function"==typeof t&&t.prototype||t;Object.hasOwnProperty.call(r,"hcEvents")||(r.hcEvents={});let o=r.hcEvents;S.Point&&t instanceof S.Point&&t.series&&t.series.chart&&(t.series.chart.runTrackerClick=!0);let a=t.addEventListener;a&&a.call(t,e,i,!!S.supportsPassiveEvents&&{passive:void 0===s.passive?-1!==e.indexOf("touch"):s.passive,capture:!1}),o[e]||(o[e]=[]);let n={fn:i,order:"number"==typeof s.order?s.order:1/0};return o[e].push(n),o[e].sort((t,e)=>t.order-e.order),function(){V(t,e,i)}},arrayMax:function(t){let e=t.length,i=t[0];for(;e--;)t[e]>i&&(i=t[e]);return i},arrayMin:function(t){let e=t.length,i=t[0];for(;e--;)t[e]<i&&(i=t[e]);return i},attr:R,clamp:function(t,e,i){return t>e?t<i?t:i:e},clearTimeout:function(t){N(t)&&clearTimeout(t)},correctFloat:Y,createElement:function(t,e,i,s,r){let o=T.createElement(t);return e&&H(o,e),r&&F(o,{padding:"0",border:"none",margin:"0"}),i&&F(o,i),s&&s.appendChild(o),o},crisp:function(t,e=0,i){let s=e%2/2,r=i?-1:1;return(Math.round(t*r-s)+s)*r},css:F,defined:N,destroyObjectProperties:function(t,e,i){U(t,function(s,r){s!==e&&s?.destroy&&s.destroy(),(s?.destroy||!i)&&delete t[r]})},diffObjects:function(t,e,i,s){let r={};return!function t(e,r,o,a){let n=i?r:e;U(e,function(i,h){if(!a&&s&&s.indexOf(h)>-1&&r[h]){i=W(i),o[h]=[];for(let e=0;e<Math.max(i.length,r[h].length);e++)r[h][e]&&(void 0===i[e]?o[h][e]=r[h][e]:(o[h][e]={},t(i[e],r[h][e],o[h][e],a+1)))}else D(i,!0)&&!i.nodeType?(o[h]=L(i)?[]:{},t(i,r[h]||{},o[h],a+1),0===Object.keys(o[h]).length&&("colorAxis"!==h||0!==a)&&delete o[h]):(e[h]!==r[h]||h in e&&!(h in r))&&"__proto__"!==h&&"constructor"!==h&&(o[h]=n[h])})}(t,e,r,0),r},discardElement:function(t){t?.parentElement?.removeChild(t)},erase:function(t,e){let i=t.length;for(;i--;)if(t[i]===e){t.splice(i,1);break}},error:O,extend:H,extendClass:function(t,e){let i=function(){};return i.prototype=new t,H(i.prototype,e),i},find:j,fireEvent:$,getAlignFactor:(t="")=>({center:.5,right:1,middle:.5,bottom:1})[t]||0,getClosestDistance:function(t,e){let i,s,r,o,a=!e;return t.forEach(t=>{if(t.length>1)for(o=s=t.length-1;o>0;o--)(r=t[o]-t[o-1])<0&&!a?(e?.(),e=void 0):r&&(void 0===i||r<i)&&(i=r)}),i},getMagnitude:G,getNestedProperty:function(t,e){let i=t.split(".");for(;i.length&&N(e);){let t=i.shift();if(void 0===t||"__proto__"===t)return;if("this"===t){let t;return D(e)&&(t=e["@this"]),t??e}let s=e[t.replace(/[\\'"]/g,"")];if(!N(s)||"function"==typeof s||"number"==typeof s.nodeType||s===C)return;e=s}return e},getStyle:function t(e,i,s){let r;if("width"===i){let i=Math.min(e.offsetWidth,e.scrollWidth),s=e.getBoundingClientRect?.().width;return s<i&&s>=i-1&&(i=Math.floor(s)),Math.max(0,i-(t(e,"padding-left",!0)||0)-(t(e,"padding-right",!0)||0))}if("height"===i)return Math.max(0,Math.min(e.offsetHeight,e.scrollHeight)-(t(e,"padding-top",!0)||0)-(t(e,"padding-bottom",!0)||0));let o=C.getComputedStyle(e,void 0);return o&&(r=o.getPropertyValue(i),X(s,"opacity"!==i)&&(r=P(r))),r},insertItem:function(t,e){let i,s=t.options.index,r=e.length;for(i=t.options.isInternal?r:0;i<r+1;i++)if(!e[i]||z(s)&&s<X(e[i].options.index,e[i]._i)||e[i].options.isInternal){e.splice(i,0,t);break}return i},isArray:L,isClass:B,isDOMElement:I,isFunction:function(t){return"function"==typeof t},isNumber:z,isObject:D,isString:E,merge:function(t,...e){let i,s=[t,...e],r={},o=function(t,e){return"object"!=typeof t&&(t={}),U(e,function(i,s){"__proto__"!==s&&"constructor"!==s&&(!D(i,!0)||B(i)||I(i)?t[s]=e[s]:t[s]=o(t[s]||{},i))}),t};!0===t&&(r=s[1],s=Array.prototype.slice.call(s,2));let a=s.length;for(i=0;i<a;i++)r=o(r,s[i]);return r},normalizeTickInterval:function(t,e,i,s,r){let o,a=t;i=X(i,G(t));let n=t/i;for(!e&&(e=r?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===s&&(1===i?e=e.filter(function(t){return t%1==0}):i<=.1&&(e=[1/i]))),o=0;o<e.length&&(a=e[o],(!r||!(a*i>=t))&&(r||!(n<=(e[o]+(e[o+1]||e[o]))/2)));o++);return Y(a*i,-Math.round(Math.log(.001)/Math.LN10))},objectEach:U,offset:function(t){let e=T.documentElement,i=t.parentElement||t.parentNode?t.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:i.top+(C.pageYOffset||e.scrollTop)-(e.clientTop||0),left:i.left+(C.pageXOffset||e.scrollLeft)-(e.clientLeft||0),width:i.width,height:i.height}},pad:function(t,e,i){return Array((e||2)+1-String(t).replace("-","").length).join(i||"0")+t},pick:X,pInt:P,pushUnique:function(t,e){return 0>t.indexOf(e)&&!!t.push(e)},relativeLength:function(t,e,i){return/%$/.test(t)?e*parseFloat(t)/100+(i||0):parseFloat(t)},removeEvent:V,replaceNested:function(t,...e){let i,s;do for(s of(i=t,e))t=t.replace(s[0],s[1]);while(t!==i);return t},splat:W,stableSort:function(t,e){let i,s,r=t.length;for(s=0;s<r;s++)t[s].safeI=s;for(t.sort(function(t,s){return 0===(i=e(t,s))?t.safeI-s.safeI:i}),s=0;s<r;s++)delete t[s].safeI},syncTimeout:function(t,e,i){return e>0?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},ucfirst:function(t){return E(t)?t.substring(0,1).toUpperCase()+t.substring(1):String(t)},uniqueKey:Z,useSerialIds:function(e){return t=X(e,t)},wrap:function(t,e,i){let s=t[e];t[e]=function(){let t=arguments,e=this;return i.apply(this,[function(){return s.apply(e,arguments.length?arguments:t)}].concat([].slice.call(arguments)))}}},{pageLang:q,win:K}=S,{defined:J,error:Q,extend:tt,isNumber:te,isObject:ti,isString:ts,merge:tr,objectEach:to,pad:ta,splat:tn,timeUnits:th,ucfirst:tl}=_,td=S.isSafari&&K.Intl&&!K.Intl.DateTimeFormat.prototype.formatRange,tc=t=>void 0===t.main,tp=class{constructor(t,e){this.options={timezone:"UTC"},this.variableTimezone=!1,this.Date=K.Date,this.update(t),this.lang=e}update(t={}){this.dTLCache={},this.options=t=tr(!0,this.options,t);let{timezoneOffset:e,useUTC:i}=t;this.Date=t.Date||K.Date||Date;let s=t.timezone;J(i)&&(s=i?"UTC":void 0),e&&e%60==0&&(s="Etc/GMT"+(e>0?"+":"")+e/60),this.variableTimezone="UTC"!==s&&s?.indexOf("Etc/GMT")!==0,this.timezone=s,["months","shortMonths","weekdays","shortWeekdays"].forEach(t=>{let e=/months/i.test(t),i=/short/.test(t),s={timeZone:"UTC"};s[e?"month":"weekday"]=i?"short":"long",this[t]=(e?[0,1,2,3,4,5,6,7,8,9,10,11]:[3,4,5,6,7,8,9]).map(t=>this.dateFormat(s,(e?31:1)*24*36e5*t))})}toParts(t){let[e,i,s,r,o,a,n]=this.dateTimeFormat({weekday:"narrow",day:"numeric",month:"numeric",year:"numeric",hour:"numeric",minute:"numeric",second:"numeric"},t,"es").split(/(?:, | |\/|:)/g);return[r,+s-1,i,o,a,n,Math.floor(Number(t)||0)%1e3,"DLMXJVS".indexOf(e)].map(Number)}dateTimeFormat(t,e,i=this.options.locale||q){let s=JSON.stringify(t)+i;ts(t)&&(t=this.str2dtf(t));let r=this.dTLCache[s];if(!r){t.timeZone??(t.timeZone=this.timezone);try{r=new Intl.DateTimeFormat(i,t)}catch(e){/Invalid time zone/i.test(e.message)?(Q(34),t.timeZone="UTC",r=new Intl.DateTimeFormat(i,t)):Q(e.message,!1)}}return this.dTLCache[s]=r,r?.format(e)||""}str2dtf(t,e={}){let i={L:{fractionalSecondDigits:3},S:{second:"2-digit"},M:{minute:"numeric"},H:{hour:"2-digit"},k:{hour:"numeric"},E:{weekday:"narrow"},a:{weekday:"short"},A:{weekday:"long"},d:{day:"2-digit"},e:{day:"numeric"},b:{month:"short"},B:{month:"long"},m:{month:"2-digit"},o:{month:"numeric"},y:{year:"2-digit"},Y:{year:"numeric"}};return Object.keys(i).forEach(s=>{-1!==t.indexOf(s)&&tt(e,i[s])}),e}makeTime(t,e,i=1,s=0,r,o,a){let n=this.Date.UTC(t,e,i,s,r||0,o||0,a||0);if("UTC"!==this.timezone){let t=this.getTimezoneOffset(n);if(n+=t,-1!==[2,3,8,9,10,11].indexOf(e)&&(s<5||s>20)){let e=this.getTimezoneOffset(n);t!==e?n+=e-t:t-36e5!==this.getTimezoneOffset(n-36e5)||td||(n-=36e5)}}return n}parse(t){if(!ts(t))return t??void 0;let e=(t=t.replace(/\//g,"-").replace(/(GMT|UTC)/,"")).indexOf("Z")>-1||/([+-][0-9]{2}):?[0-9]{2}$/.test(t),i=/^[0-9]{4}-[0-9]{2}(-[0-9]{2}|)$/.test(t);e||i||(t+="Z");let s=Date.parse(t);if(te(s))return s+(!e||i?this.getTimezoneOffset(s):0)}getTimezoneOffset(t){if("UTC"!==this.timezone){let[e,i,s,r,o=0]=this.dateTimeFormat({timeZoneName:"shortOffset"},t,"en").split(/(GMT|:)/).map(Number),a=-(36e5*(s+o/60));if(te(a))return a}return 0}dateFormat(t,e,i){let s=this.lang;if(!J(e)||isNaN(e))return s?.invalidDate||"";if(ts(t=t??"%Y-%m-%d %H:%M:%S")){let i,r=/%\[([a-zA-Z]+)\]/g;for(;i=r.exec(t);)t=t.replace(i[0],this.dateTimeFormat(i[1],e,s?.locale))}if(ts(t)&&-1!==t.indexOf("%")){let i=this,[r,o,a,n,h,l,d,c]=this.toParts(e),p=s?.weekdays||this.weekdays,g=s?.shortWeekdays||this.shortWeekdays,u=s?.months||this.months,f=s?.shortMonths||this.shortMonths;to(tt({a:g?g[c]:p[c].substr(0,3),A:p[c],d:ta(a),e:ta(a,2," "),w:c,v:s?.weekFrom??"",b:f[o],B:u[o],m:ta(o+1),o:o+1,y:r.toString().substr(2,2),Y:r,H:ta(n),k:n,I:ta(n%12||12),l:n%12||12,M:ta(h),p:n<12?"AM":"PM",P:n<12?"am":"pm",S:ta(l),L:ta(d,3)},S.dateFormats),function(s,r){if(ts(t))for(;-1!==t.indexOf("%"+r);)t=t.replace("%"+r,"function"==typeof s?s.call(i,e):s)})}else if(ti(t)){let i=(this.getTimezoneOffset(e)||0)/36e5,s=this.timezone||"Etc/GMT"+(i>=0?"+":"")+i,{prefix:r="",suffix:o=""}=t;t=r+this.dateTimeFormat(tt({timeZone:s},t),e)+o}return i?tl(t):t}resolveDTLFormat(t){return ti(t,!0)?ti(t,!0)&&tc(t)?{main:t}:t:{main:(t=tn(t))[0],from:t[1],to:t[2]}}getDateFormat(t,e,i,s){let r=this.dateFormat("%m-%d %H:%M:%S.%L",e),o="01-01 00:00:00.000",a={millisecond:15,second:12,minute:9,hour:6,day:3},n="millisecond",h=n;for(n in th){if(t&&t===th.week&&+this.dateFormat("%w",e)===i&&r.substr(6)===o.substr(6)){n="week";break}if(t&&th[n]>t){n=h;break}if(a[n]&&r.substr(a[n])!==o.substr(a[n]))break;"week"!==n&&(h=n)}return this.resolveDTLFormat(s[n]).main}},{defined:tg,extend:tu,timeUnits:tf}=_,tm=class extends tp{getTimeTicks(t,e,i,s){let r=this,o=[],a={},{count:n=1,unitRange:h}=t,[l,d,c,p,g,u]=r.toParts(e),f=(e||0)%1e3,m;if(s??(s=1),tg(e)){if(f=h>=tf.second?0:n*Math.floor(f/n),h>=tf.second&&(u=h>=tf.minute?0:n*Math.floor(u/n)),h>=tf.minute&&(g=h>=tf.hour?0:n*Math.floor(g/n)),h>=tf.hour&&(p=h>=tf.day?0:n*Math.floor(p/n)),h>=tf.day&&(c=h>=tf.month?1:Math.max(1,n*Math.floor(c/n))),h>=tf.month&&(d=h>=tf.year?0:n*Math.floor(d/n)),h>=tf.year&&(l-=l%n),h===tf.week){n&&(e=r.makeTime(l,d,c,p,g,u,f));let t=this.dateTimeFormat({timeZone:this.timezone,weekday:"narrow"},e,"es"),i="DLMXJVS".indexOf(t);c+=-i+s+(i<s?-7:0)}e=r.makeTime(l,d,c,p,g,u,f),r.variableTimezone&&tg(i)&&(m=i-e>4*tf.month||r.getTimezoneOffset(e)!==r.getTimezoneOffset(i));let t=e,x=1;for(;t<i;)o.push(t),h===tf.year?t=r.makeTime(l+x*n,0):h===tf.month?t=r.makeTime(l,d+x*n):m&&(h===tf.day||h===tf.week)?t=r.makeTime(l,d,c+x*n*(h===tf.day?1:7)):m&&h===tf.hour&&n>1?t=r.makeTime(l,d,c,p+x*n):t+=h*n,x++;o.push(t),h<=tf.hour&&o.length<1e4&&o.forEach(t=>{t%18e5==0&&"000000000"===r.dateFormat("%H%M%S%L",t)&&(a[t]="day")})}return o.info=tu(t,{higherRanks:a,totalRange:h*n}),o}},{isTouchDevice:tx}=S,{fireEvent:ty,merge:tb}=_,tv={colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"],symbols:["circle","diamond","square","triangle","triangle-down"],lang:{weekFrom:"week from",chartTitle:"Chart title",locale:void 0,loading:"Loading...",months:void 0,seriesName:"Series {add index 1}",shortMonths:void 0,weekdays:void 0,numericSymbols:["k","M","G","T","P","E"],pieSliceName:"Slice",resetZoom:"Reset zoom",yAxisTitle:"Values",resetZoomTitle:"Reset zoom level 1:1"},global:{buttonTheme:{fill:"#f7f7f7",padding:8,r:2,stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontSize:"0.8em",fontWeight:"normal"},states:{hover:{fill:"#e6e6e6"},select:{fill:"#e6e9ff",style:{color:"#000000",fontWeight:"bold"}},disabled:{style:{color:"#cccccc"}}}}},time:{Date:void 0,timezone:"UTC",timezoneOffset:0,useUTC:void 0},chart:{alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{},position:{}},reflow:!0,type:"line",zooming:{singleTouch:!1,resetButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}}},width:null,height:null,borderColor:"#334eff",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"},title:{style:{color:"#333333",fontWeight:"bold"},text:"Chart title",margin:15,minScale:.67},subtitle:{style:{color:"#666666",fontSize:"0.8em"},text:""},caption:{margin:15,style:{color:"#666666",fontSize:"0.8em"},text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",events:{},layout:"horizontal",itemMarginBottom:2,itemMarginTop:2,labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{style:{fontSize:"0.8em"},activeColor:"#0022ff",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"0.8em",textDecoration:"none",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#666666",textDecoration:"line-through"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontSize:"0.8em",fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:{duration:300,easing:t=>Math.sqrt(1-Math.pow(t-1,2))},borderRadius:3,dateTimeLabelFormats:{millisecond:"%[AebHMSL]",second:"%[AebHMS]",minute:"%[AebHM]",hour:"%[AebHM]",day:"%[AebY]",week:"%v %[AebY]",month:"%[BY]",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,position:{x:0,y:3},shared:!1,snap:tx?25:10,headerFormat:'<span style="font-size: 0.8em">{ucfirst point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">●</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:"#ffffff",borderWidth:void 0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"0.8em"},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:"0.6em"},text:"Highcharts.com"}},tk=new tm(tv.time,tv.lang),tM={defaultOptions:tv,defaultTime:tk,getOptions:function(){return tv},setOptions:function(t){return ty(S,"setOptions",{options:t}),tb(!0,tv,t),t.time&&tk.update(tv.time),t.lang&&"locale"in t.lang&&tk.update({locale:t.lang.locale}),t.lang?.chartTitle&&(tv.title={...tv.title,text:t.lang.chartTitle}),tv}},{win:tw}=S,{isNumber:tS,isString:tA,merge:tT,pInt:tC,defined:tO}=_,tP=(t,e,i)=>`color-mix(in srgb,${t},${e} ${100*i}%)`,tE=t=>tA(t)&&!!t&&"none"!==t;class tL{static parse(t){return t?new tL(t):tL.None}constructor(t){let e,i,s,r;this.rgba=[NaN,NaN,NaN,NaN],this.input=t;let o=S.Color;if(o&&o!==tL)return new o(t);if("object"==typeof t&&void 0!==t.stops)this.stops=t.stops.map(t=>new tL(t[1]));else if("string"==typeof t)for(this.input=t=tL.names[t.toLowerCase()]||t,s=tL.parsers.length;s--&&!i;)(e=(r=tL.parsers[s]).regex.exec(t))&&(i=r.parse(e));i&&(this.rgba=i)}get(t){let e=this.input,i=this.rgba;if(this.output)return this.output;if("object"==typeof e&&void 0!==this.stops){let i=tT(e);return i.stops=[].slice.call(i.stops),this.stops.forEach((e,s)=>{i.stops[s]=[i.stops[s][0],e.get(t)]}),i}return i&&tS(i[0])?"rgb"!==t&&(t||1!==i[3])?"a"===t?`${i[3]}`:"rgba("+i.join(",")+")":"rgb("+i[0]+","+i[1]+","+i[2]+")":e}brighten(t){let e=this.rgba;if(this.stops)this.stops.forEach(function(e){e.brighten(t)});else if(tS(t)&&0!==t){if(tS(e[0]))for(let i=0;i<3;i++)e[i]+=tC(255*t),e[i]<0&&(e[i]=0),e[i]>255&&(e[i]=255);else tL.useColorMix&&tE(this.input)&&(this.output=tP(this.input,t>0?"white":"black",Math.abs(t)))}return this}setOpacity(t){return this.rgba[3]=t,this}tweenTo(t,e){let i=this.rgba,s=t.rgba;if(!tS(i[0])||!tS(s[0]))return tL.useColorMix&&tE(this.input)&&tE(t.input)&&e<.99?tP(this.input,t.input,e):t.input||"none";let r=1!==s[3]||1!==i[3],o=(t,s)=>t+(i[s]-t)*(1-e),a=s.slice(0,3).map(o).map(Math.round);return r&&a.push(o(s[3],3)),(r?"rgba(":"rgb(")+a.join(",")+")"}}tL.names={white:"#ffffff",black:"#000000"},tL.parsers=[{regex:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?(?:\.\d+)?)\s*\)/,parse:function(t){return[tC(t[1]),tC(t[2]),tC(t[3]),parseFloat(t[4],10)]}},{regex:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)/,parse:function(t){return[tC(t[1]),tC(t[2]),tC(t[3]),1]}},{regex:/^#([a-f0-9])([a-f0-9])([a-f0-9])([a-f0-9])?$/i,parse:function(t){return[tC(t[1]+t[1],16),tC(t[2]+t[2],16),tC(t[3]+t[3],16),tO(t[4])?tC(t[4]+t[4],16)/255:1]}},{regex:/^#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})?$/i,parse:function(t){return[tC(t[1],16),tC(t[2],16),tC(t[3],16),tO(t[4])?tC(t[4],16)/255:1]}}],tL.useColorMix=tw.CSS?.supports("color","color-mix(in srgb,red,blue 9%)"),tL.None=new tL("");let{parse:tD}=tL,{win:tI}=S,{isNumber:tB,objectEach:tz}=_;class tN{constructor(t,e,i){this.pos=NaN,this.options=e,this.elem=t,this.prop=i}dSetter(){let t=this.paths,e=t?.[0],i=t?.[1],s=this.now||0,r=[];if(1!==s&&e&&i){if(e.length===i.length&&s<1)for(let t=0;t<i.length;t++){let o=e[t],a=i[t],n=[];for(let t=0;t<a.length;t++){let e=o[t],i=a[t];tB(e)&&tB(i)&&("A"!==a[0]||4!==t&&5!==t)?n[t]=e+s*(i-e):n[t]=i}r.push(n)}else r=i}else r=this.toD||[];this.elem.attr("d",r,void 0,!0)}update(){let t=this.elem,e=this.prop,i=this.now,s=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,s&&s.call(t,i,this)}run(t,e,i){let s=this,r=s.options,o=function(t){return!o.stopped&&s.step(t)},a=tI.requestAnimationFrame||function(t){setTimeout(t,13)},n=function(){for(let t=0;t<tN.timers.length;t++)tN.timers[t]()||tN.timers.splice(t--,1);tN.timers.length&&a(n)};t!==e||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=t,this.end=e,this.unit=i,this.now=this.start,this.pos=0,o.elem=this.elem,o.prop=this.prop,o()&&1===tN.timers.push(o)&&a(n)):(delete r.curAnim[this.prop],r.complete&&0===Object.keys(r.curAnim).length&&r.complete.call(this.elem))}step(t){let e,i,s=+new Date,r=this.options,o=this.elem,a=r.complete,n=r.duration,h=r.curAnim;return o.attr&&!o.element?e=!1:t||s>=n+this.startTime?(this.now=this.end,this.pos=1,this.update(),h[this.prop]=!0,i=!0,tz(h,function(t){!0!==t&&(i=!1)}),i&&a&&a.call(o),e=!1):(this.pos=r.easing((s-this.startTime)/n),this.now=this.start+(this.end-this.start)*this.pos,this.update(),e=!0),e}initPath(t,e,i){let s=t.startX,r=t.endX,o=i.slice(),a=t.isArea,n=a?2:1,h=e&&i.length>e.length&&i.hasStackedCliffs,l,d,c,p,g=e?.slice();if(!g||h)return[o,o];function u(t,e){for(;t.length<d;){let i=t[0],s=e[d-t.length];if(s&&"M"===i[0]&&("C"===s[0]?t[0]=["C",i[1],i[2],i[1],i[2],i[1],i[2]]:t[0]=["L",i[1],i[2]]),t.unshift(i),a){let e=t.pop();t.push(t[t.length-1],e)}}}function f(t){for(;t.length<d;){let e=t[Math.floor(t.length/n)-1].slice();if("C"===e[0]&&(e[1]=e[5],e[2]=e[6]),a){let i=t[Math.floor(t.length/n)].slice();t.splice(t.length/2,0,e,i)}else t.push(e)}}if(s&&r&&r.length){for(c=0;c<s.length;c++){if(s[c]===r[0]){l=c;break}if(s[0]===r[r.length-s.length+c]){l=c,p=!0;break}if(s[s.length-1]===r[r.length-s.length+c]){l=s.length-c;break}}void 0===l&&(g=[])}return g.length&&tB(l)&&(d=o.length+l*n,p?(u(g,o),f(o)):(u(o,g),f(g))),[g,o]}fillSetter(){tN.prototype.strokeSetter.apply(this,arguments)}strokeSetter(){this.elem.attr(this.prop,tD(this.start).tweenTo(tD(this.end),this.pos),void 0,!0)}}tN.timers=[];let{defined:tR,getStyle:tW,isArray:tH,isNumber:tX,isObject:tF,merge:tG,objectEach:tY,pick:tj}=_;function tU(t){return tF(t)?tG({duration:500,defer:0},t):{duration:500*!!t,defer:0}}function tV(t,e){let i=tN.timers.length;for(;i--;)tN.timers[i].elem!==t||e&&e!==tN.timers[i].prop||(tN.timers[i].stopped=!0)}let t$={animate:function(t,e,i){let s,r="",o,a,n;tF(i)||(n=arguments,i={duration:n[2],easing:n[3],complete:n[4]}),tX(i.duration)||(i.duration=400),i.easing="function"==typeof i.easing?i.easing:Math[i.easing]||Math.easeInOutSine,i.curAnim=tG(e),tY(e,function(n,h){tV(t,h),a=new tN(t,i,h),o=void 0,"d"===h&&tH(e.d)?(a.paths=a.initPath(t,t.pathArray,e.d),a.toD=e.d,s=0,o=1):t.attr?s=t.attr(h):(s=parseFloat(tW(t,h))||0,"opacity"!==h&&(r="px")),o||(o=n),"string"==typeof o&&o.match("px")&&(o=o.replace(/px/g,"")),a.run(s,o,r)})},animObject:tU,getDeferredAnimation:function(t,e,i){let s=tU(e),r=i?[i]:t.series,o=0,a=0;return r.forEach(t=>{let i=tU(t.options.animation);o=tF(e)&&tR(e.defer)?s.defer:Math.max(o,i.duration+i.defer),a=Math.min(s.duration,i.duration)}),t.renderer.forExport&&(o=0),{defer:Math.max(0,o-a),duration:Math.min(o,a)}},setAnimation:function(t,e){e.renderer.globalAnimation=tj(t,e.options.chart.animation,!0)},stop:tV},{SVG_NS:tZ,win:t_}=S,{attr:tq,createElement:tK,css:tJ,error:tQ,isFunction:t0,isString:t1,objectEach:t2,splat:t3}=_,{trustedTypes:t5}=t_,t6=t5&&t0(t5.createPolicy)&&t5.createPolicy("highcharts",{createHTML:t=>t}),t9=t6?t6.createHTML(""):"";class t4{static filterUserAttributes(t){return t2(t,(e,i)=>{let s=!0;-1===t4.allowedAttributes.indexOf(i)&&(s=!1),-1!==["background","dynsrc","href","lowsrc","src"].indexOf(i)&&(s=t1(e)&&t4.allowedReferences.some(t=>0===e.indexOf(t))),s||(tQ(33,!1,void 0,{"Invalid attribute in config":`${i}`}),delete t[i]),t1(e)&&t[i]&&(t[i]=e.replace(/</g,"<"))}),t}static parseStyle(t){return t.split(";").reduce((t,e)=>{let i=e.split(":").map(t=>t.trim()),s=i.shift();return s&&i.length&&(t[s.replace(/-([a-z])/g,t=>t[1].toUpperCase())]=i.join(":")),t},{})}static setElementHTML(t,e){t.innerHTML=t4.emptyHTML,e&&new t4(e).addToDOM(t)}constructor(t){this.nodes="string"==typeof t?this.parseMarkup(t):t}addToDOM(t){return function t(e,i){let s;return t3(e).forEach(function(e){let r,o=e.tagName,a=e.textContent?S.doc.createTextNode(e.textContent):void 0,n=t4.bypassHTMLFiltering;if(o){if("#text"===o)r=a;else if(-1!==t4.allowedTags.indexOf(o)||n){let s="svg"===o?tZ:i.namespaceURI||tZ,h=S.doc.createElementNS(s,o),l=e.attributes||{};t2(e,function(t,e){"tagName"!==e&&"attributes"!==e&&"children"!==e&&"style"!==e&&"textContent"!==e&&(l[e]=t)}),tq(h,n?l:t4.filterUserAttributes(l)),e.style&&tJ(h,e.style),a&&h.appendChild(a),t(e.children||[],h),r=h}else tQ(33,!1,void 0,{"Invalid tagName in config":o})}r&&i.appendChild(r),s=r}),s}(this.nodes,t)}parseMarkup(t){let e,i=[];t=t.trim().replace(/ style=(["'])/g," data-style=$1");try{e=new DOMParser().parseFromString(t6?t6.createHTML(t):t,"text/html")}catch(t){}if(!e){let i=tK("div");i.innerHTML=t,e={body:i}}let s=(t,e)=>{let i=t.nodeName.toLowerCase(),r={tagName:i};"#text"===i&&(r.textContent=t.textContent||"");let o=t.attributes;if(o){let t={};[].forEach.call(o,e=>{"data-style"===e.name?r.style=t4.parseStyle(e.value):t[e.name]=e.value}),r.attributes=t}if(t.childNodes.length){let e=[];[].forEach.call(t.childNodes,t=>{s(t,e)}),e.length&&(r.children=e)}e.push(r)};return[].forEach.call(e.body.childNodes,t=>s(t,i)),i}}t4.allowedAttributes=["alt","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","filterUnits","flood-color","flood-opacity","height","href","id","in","in2","markerHeight","markerWidth","offset","opacity","operator","orient","padding","paddingLeft","paddingRight","patternUnits","r","radius","refX","refY","role","scope","slope","src","startOffset","stdDeviation","stroke","stroke-linecap","stroke-width","style","tableValues","result","rowspan","summary","target","tabindex","text-align","text-anchor","textAnchor","textLength","title","type","valign","width","x","x1","x2","xlink:href","y","y1","y2","zIndex"],t4.allowedReferences=["https://","http://","mailto:","/","../","./","#"],t4.allowedTags=["a","abbr","b","br","button","caption","circle","clipPath","code","dd","defs","div","dl","dt","em","feComponentTransfer","feComposite","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMorphology","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","textPath","thead","title","tbody","tspan","td","th","tr","u","ul","#text"],t4.emptyHTML=t9,t4.bypassHTMLFiltering=!1;let{defaultOptions:t8,defaultTime:t7}=tM,{pageLang:et}=S,{extend:ee,getNestedProperty:ei,isArray:es,isNumber:er,isObject:eo,isString:ea,pick:en,ucfirst:eh}=_,el={add:(t,e)=>t+e,divide:(t,e)=>0!==e?t/e:"",eq:(t,e)=>t==e,each:function(t){let e=arguments[arguments.length-1];return!!es(t)&&t.map((i,s)=>ep(e.body,ee(eo(i)?i:{"@this":i},{"@index":s,"@first":0===s,"@last":s===t.length-1}))).join("")},ge:(t,e)=>t>=e,gt:(t,e)=>t>e,if:t=>!!t,le:(t,e)=>t<=e,lt:(t,e)=>t<e,multiply:(t,e)=>t*e,ne:(t,e)=>t!=e,subtract:(t,e)=>t-e,ucfirst:eh,unless:t=>!t},ed={},ec=t=>/^["'].+["']$/.test(t);function ep(t="",e,i){let s=/\{([a-zA-Z\u00C0-\u017F\d:\.,;\-\/<>\[\]%_@+"'’= #\(\)]+)\}/g,r=/\(([a-zA-Z\u00C0-\u017F\d:\.,;\-\/<>\[\]%_@+"'= ]+)\)/g,o=[],a=/f$/,n=/\.(\d)/,h=i?.options?.lang||t8.lang,l=i?.time||t7,d=i?.numberFormatter||eg,c=(t="")=>{let i;return"true"===t||"false"!==t&&((i=Number(t)).toString()===t?i:ec(t)?t.slice(1,-1):ei(t,e))},p,g,u=0,f;for(;null!==(p=s.exec(t));){let i=p,s=r.exec(p[1]);s&&(p=s,f=!0),g?.isBlock||(g={ctx:e,expression:p[1],find:p[0],isBlock:"#"===p[1].charAt(0),start:p.index,startInner:p.index+p[0].length,length:p[0].length});let a=(g.isBlock?i:p)[1].split(" ")[0].replace("#","");el[a]&&(g.isBlock&&a===g.fn&&u++,g.fn||(g.fn=a));let n="else"===p[1];if(g.isBlock&&g.fn&&(p[1]===`/${g.fn}`||n)){if(u)!n&&u--;else{let e=g.startInner,i=t.substr(e,p.index-e);void 0===g.body?(g.body=i,g.startInner=p.index+p[0].length):g.elseBody=i,g.find+=i+p[0],n||(o.push(g),g=void 0)}}else g.isBlock||o.push(g);if(s&&!g?.isBlock)break}return o.forEach(s=>{let o,p,{body:g,elseBody:u,expression:f,fn:m}=s;if(m){let t=[s],r=[],a=f.length,n=0,h;for(p=0;p<=a;p++){let t=f.charAt(p);h||'"'!==t&&"'"!==t?h===t&&(h=""):h=t,h||" "!==t&&p!==a||(r.push(f.substr(n,p-n)),n=p+1)}for(p=el[m].length;p--;)t.unshift(c(r[p+1]));o=el[m].apply(e,t),s.isBlock&&"boolean"==typeof o&&(o=ep(o?g:u,e,i))}else{let t=ec(f)?[f]:f.split(":");if(o=c(t.shift()||""),t.length&&"number"==typeof o){let e=t.join(":");if(a.test(e)){let t=parseInt((e.match(n)||["","-1"])[1],10);null!==o&&(o=d(o,t,h.decimalPoint,e.indexOf(",")>-1?h.thousandsSep:""))}else o=l.dateFormat(e,o)}r.lastIndex=0,r.test(s.find)&&ea(o)&&(o=`"${o}"`)}t=t.replace(s.find,en(o,""))}),f?ep(t,e,i):t}function eg(t,e,i,s){e*=1;let r,o,[a,n]=(t=+t||0).toString().split("e").map(Number),h=this?.options?.lang||t8.lang,l=(t.toString().split(".")[1]||"").split("e")[0].length,d=e,c={};i??(i=h.decimalPoint),s??(s=h.thousandsSep),-1===e?e=Math.min(l,20):er(e)?e&&n<0&&((o=e+n)>=0?(a=+a.toExponential(o).split("e")[0],e=o):(a=Math.floor(a),t=e<20?+(a*Math.pow(10,n)).toFixed(e):0,n=0)):e=2,n&&(e??(e=2),t=a),er(e)&&e>=0&&(c.minimumFractionDigits=e,c.maximumFractionDigits=e),""===s&&(c.useGrouping=!1);let p=s||i,g=p?"en":this?.locale||h.locale||et,u=JSON.stringify(c)+g;return r=(ed[u]??(ed[u]=new Intl.NumberFormat(g,c))).format(t),p&&(r=r.replace(/([,\.])/g,"_$1").replace(/_\,/g,s??",").replace("_.",i??".")),(e||0!=+r)&&(!(n<0)||d)||(r="0"),n&&0!=+r&&(r+="e"+(n<0?"":"+")+n),r}let eu={dateFormat:function(t,e,i){return t7.dateFormat(t,e,i)},format:ep,helpers:el,numberFormat:eg};!function(t){let e;t.rendererTypes={},t.getRendererType=function(i=e){return t.rendererTypes[i]||t.rendererTypes[e]},t.registerRendererType=function(i,s,r){t.rendererTypes[i]=s,(!e||r)&&(e=i,S.Renderer=s)}}(r||(r={}));let ef=r,{clamp:em,pick:ex,pushUnique:ey,stableSort:eb}=_;(o||(o={})).distribute=function t(e,i,s){let r=e,o=r.reducedLen||i,a=(t,e)=>t.target-e.target,n=[],h=e.length,l=[],d=n.push,c,p,g,u=!0,f,m,x=0,y;for(c=h;c--;)x+=e[c].size;if(x>o){for(eb(e,(t,e)=>(e.rank||0)-(t.rank||0)),g=(y=e[0].rank===e[e.length-1].rank)?h/2:-1,p=y?g:h-1;g&&x>o;)f=e[c=Math.floor(p)],ey(l,c)&&(x-=f.size),p+=g,y&&p>=e.length&&(g/=2,p=g);l.sort((t,e)=>e-t).forEach(t=>d.apply(n,e.splice(t,1)))}for(eb(e,a),e=e.map(t=>({size:t.size,targets:[t.target],align:ex(t.align,.5)}));u;){for(c=e.length;c--;)f=e[c],m=(Math.min.apply(0,f.targets)+Math.max.apply(0,f.targets))/2,f.pos=em(m-f.size*f.align,0,i-f.size);for(c=e.length,u=!1;c--;)c>0&&e[c-1].pos+e[c-1].size>e[c].pos&&(e[c-1].size+=e[c].size,e[c-1].targets=e[c-1].targets.concat(e[c].targets),e[c-1].align=.5,e[c-1].pos+e[c-1].size>i&&(e[c-1].pos=i-e[c-1].size),e.splice(c,1),u=!0)}return d.apply(r,n),c=0,e.some(e=>{let o=0;return(e.targets||[]).some(()=>(r[c].pos=e.pos+o,void 0!==s&&Math.abs(r[c].pos-r[c].target)>s)?(r.slice(0,c+1).forEach(t=>delete t.pos),r.reducedLen=(r.reducedLen||i)-.1*i,r.reducedLen>.1*i&&t(r,i,s),!0):(o+=r[c].size,c++,!1))}),eb(r,a),r};let ev=o,{animate:ek,animObject:eM,stop:ew}=t$,{deg2rad:eS,doc:eA,svg:eT,SVG_NS:eC,win:eO,isFirefox:eP}=S,{addEvent:eE,attr:eL,createElement:eD,crisp:eI,css:eB,defined:ez,erase:eN,extend:eR,fireEvent:eW,getAlignFactor:eH,isArray:eX,isFunction:eF,isNumber:eG,isObject:eY,isString:ej,merge:eU,objectEach:eV,pick:e$,pInt:eZ,pushUnique:e_,replaceNested:eq,syncTimeout:eK,uniqueKey:eJ}=_;class eQ{_defaultGetter(t){let e=e$(this[t+"Value"],this[t],this.element?this.element.getAttribute(t):null,0);return/^-?[\d\.]+$/.test(e)&&(e=parseFloat(e)),e}_defaultSetter(t,e,i){i.setAttribute(e,t)}add(t){let e,i=this.renderer,s=this.element;return t&&(this.parentGroup=t),void 0!==this.textStr&&"text"===this.element.nodeName&&i.buildText(this),this.added=!0,(!t||t.handleZ||this.zIndex)&&(e=this.zIndexSetter()),e||(t?t.element:i.box).appendChild(s),this.onAdd&&this.onAdd(),this}addClass(t,e){let 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}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(t,e,i,s=!0){let r=this.renderer,o=r.alignedObjects,a=!!t;t?(this.alignOptions=t,this.alignByTranslate=e,this.alignTo=i):(t=this.alignOptions||{},e=this.alignByTranslate,i=this.alignTo);let n=!i||ej(i)?i||"renderer":void 0;n&&(a&&e_(o,this),i=void 0);let h=e$(i,r[n],r),l=(h.x||0)+(t.x||0)+((h.width||0)-(t.width||0))*eH(t.align),d=(h.y||0)+(t.y||0)+((h.height||0)-(t.height||0))*eH(t.verticalAlign),c={"text-align":t?.align};return c[e?"translateX":"x"]=Math.round(l),c[e?"translateY":"y"]=Math.round(d),s&&(this[this.placed?"animate":"attr"](c),this.placed=!0),this.alignAttr=c,this}alignSetter(t){let e={left:"start",center:"middle",right:"end"};e[t]&&(this.alignValue=t,this.element.setAttribute("text-anchor",e[t]))}animate(t,e,i){let s=eM(e$(e,this.renderer.globalAnimation,!0)),r=s.defer;return eA.hidden&&(s.duration=0),0!==s.duration?(i&&(s.complete=i),eK(()=>{this.element&&ek(this,t,s)},r)):(this.attr(t,void 0,i||s.complete),eV(t,function(t,e){s.step&&s.step.call(this,t,{prop:e,pos:1,elem:this})},this)),this}applyTextOutline(t){let e=this.element;-1!==t.indexOf("contrast")&&(t=t.replace(/contrast/g,this.renderer.getContrast(e.style.fill)));let i=t.indexOf(" "),s=t.substring(i+1),r=t.substring(0,i);if(r&&"none"!==r&&S.svg){this.fakeTS=!0,r=r.replace(/(^[\d\.]+)(.*?)$/g,function(t,e,i){return 2*Number(e)+i}),this.removeTextOutline();let t=eA.createElementNS(eC,"tspan");eL(t,{class:"highcharts-text-outline",fill:s,stroke:s,"stroke-width":r,"stroke-linejoin":"round"});let i=e.querySelector("textPath")||e;[].forEach.call(i.childNodes,e=>{let i=e.cloneNode(!0);i.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(t=>i.removeAttribute(t)),t.appendChild(i)});let o=0;[].forEach.call(i.querySelectorAll("text tspan"),t=>{o+=Number(t.getAttribute("dy"))});let a=eA.createElementNS(eC,"tspan");a.textContent="",eL(a,{x:Number(e.getAttribute("x")),dy:-o}),t.appendChild(a),i.insertBefore(t,i.firstChild)}}attr(t,e,i,s){let{element:r}=this,o=eQ.symbolCustomAttribs,a,n,h=this,l;return"string"==typeof t&&void 0!==e&&(a=t,(t={})[a]=e),"string"==typeof t?h=(this[t+"Getter"]||this._defaultGetter).call(this,t,r):(eV(t,function(e,i){l=!1,s||ew(this,i),this.symbolName&&-1!==o.indexOf(i)&&(n||(this.symbolAttr(t),n=!0),l=!0),this.rotation&&("x"===i||"y"===i)&&(this.doTransform=!0),l||(this[i+"Setter"]||this._defaultSetter).call(this,e,i,r)},this),this.afterSetters()),i&&i.call(this),h}clip(t){if(t&&!t.clipPath){let e=eJ()+"-",i=this.renderer.createElement("clipPath").attr({id:e}).add(this.renderer.defs);eR(t,{clipPath:i,id:e,count:0}),t.add(i)}return this.attr("clip-path",t?`url(${this.renderer.url}#${t.id})`:"none")}crisp(t,e){e=Math.round(e||t.strokeWidth||0);let i=t.x||this.x||0,s=t.y||this.y||0,r=(t.width||this.width||0)+i,o=(t.height||this.height||0)+s,a=eI(i,e),n=eI(s,e);return eR(t,{x:a,y:n,width:eI(r,e)-a,height:eI(o,e)-n}),ez(t.strokeWidth)&&(t.strokeWidth=e),t}complexColor(t,e,i){let s=this.renderer,r,o,a,n,h,l,d,c,p,g,u=[],f;eW(this.renderer,"complexColor",{args:arguments},function(){if(t.radialGradient?o="radialGradient":t.linearGradient&&(o="linearGradient"),o){if(a=t[o],h=s.gradients,l=t.stops,p=i.radialReference,eX(a)&&(t[o]=a={x1:a[0],y1:a[1],x2:a[2],y2:a[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===o&&p&&!ez(a.gradientUnits)&&(n=a,a=eU(a,s.getRadialAttr(p,n),{gradientUnits:"userSpaceOnUse"})),eV(a,function(t,e){"id"!==e&&u.push(e,t)}),eV(l,function(t){u.push(t)}),h[u=u.join(",")])g=h[u].attr("id");else{a.id=g=eJ();let t=h[u]=s.createElement(o).attr(a).add(s.defs);t.radAttr=n,t.stops=[],l.forEach(function(e){0===e[1].indexOf("rgba")?(d=(r=tL.parse(e[1])).get("rgb"),c=r.get("a")):(d=e[1],c=1);let i=s.createElement("stop").attr({offset:e[0],"stop-color":d,"stop-opacity":c}).add(t);t.stops.push(i)})}f="url("+s.url+"#"+g+")",i.setAttribute(e,f),i.gradient=u,t.toString=function(){return f}}})}css(t){let e=this.styles,i={},s=this.element,r,o=!e;if(e&&eV(t,function(t,s){e&&e[s]!==t&&(i[s]=t,o=!0)}),o){e&&(t=eR(e,i)),null===t.width||"auto"===t.width?delete this.textWidth:"text"===s.nodeName.toLowerCase()&&t.width&&(r=this.textWidth=eZ(t.width)),eR(this.styles,t),r&&!eT&&this.renderer.forExport&&delete t.width;let o=eP&&t.fontSize||null;o&&(eG(o)||/^\d+$/.test(o))&&(t.fontSize+="px");let a=eU(t);s.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","whiteSpace","width"].forEach(t=>a&&delete a[t]),a.color&&(a.fill=a.color,delete a.color)),eB(s,a)}return this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),t.textOutline&&this.applyTextOutline(t.textOutline)),this}dashstyleSetter(t){let e,i=this["stroke-width"];if("inherit"===i&&(i=1),t){let s=(t=t.toLowerCase()).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(e=s.length;e--;)s[e]=""+eZ(s[e])*e$(i,NaN);t=s.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",t)}}destroy(){let t=this,e=t.element||{},i=t.renderer,s=e.ownerSVGElement,r="SPAN"===e.nodeName&&t.parentGroup||void 0,o,a;if(e.onclick=e.onmouseout=e.onmouseover=e.onmousemove=e.point=null,ew(t),t.clipPath&&s){let e=t.clipPath;[].forEach.call(s.querySelectorAll("[clip-path],[CLIP-PATH]"),function(t){t.getAttribute("clip-path").indexOf(e.element.id)>-1&&t.removeAttribute("clip-path")}),t.clipPath=e.destroy()}if(t.stops){for(a=0;a<t.stops.length;a++)t.stops[a].destroy();t.stops.length=0,t.stops=void 0}for(t.safeRemoveChild(e);r?.div&&0===r.div.childNodes.length;)o=r.parentGroup,t.safeRemoveChild(r.div),delete r.div,r=o;t.alignOptions&&eN(i.alignedObjects,t),eV(t,(e,i)=>{(t[i]?.parentGroup===t||-1!==["connector","foreignObject"].indexOf(i))&&t[i]?.destroy?.(),delete t[i]})}dSetter(t,e,i){eX(t)&&("string"==typeof t[0]&&(t=this.renderer.pathToSegments(t)),this.pathArray=t,t=t.reduce((t,e,i)=>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)}fillSetter(t,e,i){"string"==typeof t?i.setAttribute(e,t):t&&this.complexColor(t,e,i)}hrefSetter(t,e,i){i.setAttributeNS("http://www.w3.org/1999/xlink",e,t)}getBBox(t,e){let i,s,r,o,{alignValue:a,element:n,renderer:h,styles:l,textStr:d}=this,{cache:c,cacheKeys:p}=h,g=n.namespaceURI===this.SVG_NS,u=e$(e,this.rotation,0),f=h.styledMode?n&&eQ.prototype.getStyle.call(n,"font-size"):l.fontSize;if(ez(d)&&(-1===(o=d.toString()).indexOf("<")&&(o=o.replace(/\d/g,"0")),o+=["",h.rootFontSize,f,u,this.textWidth,a,l.lineClamp,l.textOverflow,l.fontWeight].join(",")),o&&!t&&(i=c[o]),!i||i.polygon){if(g||h.forExport){try{r=this.fakeTS&&function(t){let e=n.querySelector(".highcharts-text-outline");e&&eB(e,{display:t})},eF(r)&&r("none"),i=n.getBBox?eR({},n.getBBox()):{width:n.offsetWidth,height:n.offsetHeight,x:0,y:0},eF(r)&&r("")}catch(t){}(!i||i.width<0)&&(i={x:0,y:0,width:0,height:0})}else i=this.htmlGetBBox();s=i.height,g&&(i.height=s=({"11px,17":14,"13px,20":16})[`${f||""},${Math.round(s)}`]||s),u&&(i=this.getRotatedBox(i,u));let t={bBox:i};eW(this,"afterGetBBox",t),i=t.bBox}if(o&&(""===d||i.height>0)){for(;p.length>250;)delete c[p.shift()];c[o]||p.push(o),c[o]=i}return i}getRotatedBox(t,e){let{x:i,y:s,width:r,height:o}=t,{alignValue:a,translateY:n,rotationOriginX:h=0,rotationOriginY:l=0}=this,d=eH(a),c=Number(this.element.getAttribute("y")||0)-(n?0:s),p=e*eS,g=(e-90)*eS,u=Math.cos(p),f=Math.sin(p),m=r*u,x=r*f,y=Math.cos(g),b=Math.sin(g),[[v,k],[M,w]]=[h,l].map(t=>[t-t*u,t*f]),S=i+d*(r-m)+v+w+c*y,A=S+m,T=A-o*y,C=T-m,O=s+c-d*x-k+M+c*b,P=O+x,E=P-o*b,L=E-x,D=Math.min(S,A,T,C),I=Math.min(O,P,E,L),B=Math.max(S,A,T,C)-D,z=Math.max(O,P,E,L)-I;return{x:D,y:I,width:B,height:z,polygon:[[S,O],[A,P],[T,E],[C,L]]}}getStyle(t){return eO.getComputedStyle(this.element||this,"").getPropertyValue(t)}hasClass(t){return -1!==(""+this.attr("class")).split(" ").indexOf(t)}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(t,e){this.onEvents={},this.opacity=1,this.SVG_NS=eC,this.element="span"===e||"body"===e?eD(e):eA.createElementNS(this.SVG_NS,e),this.renderer=t,this.styles={},eW(this,"afterInit")}on(t,e){let{onEvents:i}=this;return i[t]&&i[t](),i[t]=eE(this.element,t,e),this}opacitySetter(t,e,i){let s=Number(Number(t).toFixed(3));this.opacity=s,i.setAttribute(e,s)}reAlign(){this.alignOptions?.width&&"left"!==this.alignOptions.align&&(this.alignOptions.width=this.getBBox().width,this.placed=!1,this.align())}removeClass(t){return this.attr("class",(""+this.attr("class")).replace(ej(t)?RegExp(`(^| )${t}( |$)`):t," ").replace(/ +/g," ").trim())}removeTextOutline(){let t=this.element.querySelector("tspan.highcharts-text-outline");t&&this.safeRemoveChild(t)}safeRemoveChild(t){let e=t.parentNode;e&&e.removeChild(t)}setRadialReference(t){let e=this.element.gradient&&this.renderer.gradients[this.element.gradient]||void 0;return this.element.radialReference=t,e?.radAttr&&e.animate(this.renderer.getRadialAttr(t,e.radAttr)),this}shadow(t){let{renderer:e}=this,i=eU(this.parentGroup?.rotation===90?{offsetX:-1,offsetY:-1}:{},eY(t)?t:{}),s=e.shadowDefinition(i);return this.attr({filter:t?`url(${e.url}#${s})`:"none"})}show(t=!0){return this.attr({visibility:t?"inherit":"visible"})}"stroke-widthSetter"(t,e,i){this[e]=t,i.setAttribute(e,t)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let t=this.getStyle("stroke-width"),e=0,i;return/px$/.test(t)?e=eZ(t):""!==t&&(eL(i=eA.createElementNS(eC,"rect"),{width:t,"stroke-width":0}),this.element.parentNode.appendChild(i),e=i.getBBox().width,i.parentNode.removeChild(i)),e}symbolAttr(t){let e=this;eQ.symbolCustomAttribs.forEach(function(i){e[i]=e$(t[i],e[i])}),e.attr({d:e.renderer.symbols[e.symbolName](e.x,e.y,e.width,e.height,e)})}textSetter(t){t!==this.textStr&&(delete this.textPxLength,this.textStr=t,this.added&&this.renderer.buildText(this),this.reAlign())}titleSetter(t){let e=this.element,i=e.getElementsByTagName("title")[0]||eA.createElementNS(this.SVG_NS,"title");e.insertBefore?e.insertBefore(i,e.firstChild):e.appendChild(i),i.textContent=eq(e$(t,""),[/<[^>]*>/g,""]).replace(/</g,"<").replace(/>/g,">")}toFront(){let t=this.element;return t.parentNode.appendChild(t),this}translate(t,e){return this.attr({translateX:t,translateY:e})}updateTransform(t="transform"){let{element:e,foreignObject:i,matrix:s,padding:r,rotation:o=0,rotationOriginX:a,rotationOriginY:n,scaleX:h,scaleY:l,text:d,translateX:c=0,translateY:p=0}=this,g=["translate("+c+","+p+")"];ez(s)&&g.push("matrix("+s.join(",")+")"),o&&(g.push("rotate("+o+" "+(a??e.getAttribute("x")??this.x??0)+" "+(n??e.getAttribute("y")??this.y??0)+")"),d?.element.tagName!=="SPAN"||d?.foreignObject||d.attr({rotation:o,rotationOriginX:(a||0)-r,rotationOriginY:(n||0)-r})),(ez(h)||ez(l))&&g.push("scale("+e$(h,1)+" "+e$(l,1)+")"),g.length&&!(d||this).textPath&&(i?.element||e).setAttribute(t,g.join(" "))}visibilitySetter(t,e,i){"inherit"===t?i.removeAttribute(e):this[e]!==t&&i.setAttribute(e,t),this[e]=t}xGetter(t){return"circle"===this.element.nodeName&&("x"===t?t="cx":"y"===t&&(t="cy")),this._defaultGetter(t)}zIndexSetter(t,e){let i=this.renderer,s=this.parentGroup,r=(s||i).element||i.box,o=this.element,a=r===i.box,n,h,l,d=!1,c,p=this.added,g;if(ez(t)?(o.setAttribute("data-z-index",t),t*=1,this[e]===t&&(p=!1)):ez(this[e])&&o.removeAttribute("data-z-index"),this[e]=t,p){for((t=this.zIndex)&&s&&(s.handleZ=!0),g=(n=r.childNodes).length-1;g>=0&&!d;g--)c=!ez(l=(h=n[g]).getAttribute("data-z-index")),h!==o&&(t<0&&c&&!a&&!g?(r.insertBefore(o,n[g]),d=!0):(eZ(l)<=t||c&&(!ez(t)||t>=0))&&(r.insertBefore(o,n[g+1]),d=!0));d||(r.insertBefore(o,n[3*!!a]),d=!0)}return d}}eQ.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],eQ.prototype.strokeSetter=eQ.prototype.fillSetter,eQ.prototype.yGetter=eQ.prototype.xGetter,eQ.prototype.matrixSetter=eQ.prototype.rotationOriginXSetter=eQ.prototype.rotationOriginYSetter=eQ.prototype.rotationSetter=eQ.prototype.scaleXSetter=eQ.prototype.scaleYSetter=eQ.prototype.translateXSetter=eQ.prototype.translateYSetter=eQ.prototype.verticalAlignSetter=function(t,e){this[e]=t,this.doTransform=!0};let e0=eQ,{defined:e1,extend:e2,getAlignFactor:e3,isNumber:e5,merge:e6,pick:e9,removeEvent:e4}=_;class e8 extends e0{constructor(t,e,i,s,r,o,a,n,h,l){let d;super(t,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=e,this.x=i,this.y=s,this.anchorX=o,this.anchorY=a,this.baseline=h,this.className=l,this.addClass("button"===l?"highcharts-no-tooltip":"highcharts-label"),l&&this.addClass("highcharts-"+l),this.text=t.text(void 0,0,0,n).attr({zIndex:1}),"string"==typeof r&&((d=/^url\((.*?)\)$/.test(r))||this.renderer.symbols[r])&&(this.symbolKey=r),this.bBox=e8.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=t.styledMode||d,this.deferredAttr={},this.alignFactor=0}alignSetter(t){let e=e3(t);this.textAlign=t,e!==this.alignFactor&&(this.alignFactor=e,this.bBox&&e5(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(t,e){this.anchorX=t,this.boxAttr(e,Math.round(t)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(t,e){this.anchorY=t,this.boxAttr(e,t-this.ySetting)}boxAttr(t,e){this.box?this.box.attr(t,e):this.deferredAttr[t]=e}css(t){if(t){let e={};t=e6(t),e8.textProps.forEach(i=>{void 0!==t[i]&&(e[i]=t[i],delete t[i])}),this.text.css(e),"fontSize"in e||"fontWeight"in e?this.updateTextPadding():("width"in e||"textOverflow"in e)&&this.updateBoxSize()}return e0.prototype.css.call(this,t)}destroy(){e4(this.element,"mouseenter"),e4(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),e0.prototype.destroy.call(this)}fillSetter(t,e){t&&(this.needsBox=!0),this.fill=t,this.boxAttr(e,t)}getBBox(t,e){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();let{padding:i,height:s=0,translateX:r=0,translateY:o=0,width:a=0}=this,n=e9(this.paddingLeft,i),h=e??(this.rotation||0),l={width:a,height:s,x:r+this.bBox.x-n,y:o+this.bBox.y-i+this.baselineOffset};return h&&(l=this.getRotatedBox(l,h)),l}getCrispAdjust(){return(this.renderer.styledMode&&this.box?this.box.strokeWidth():this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(t){this.heightSetting=t,this.doUpdate=!0}afterSetters(){super.afterSetters(),this.doUpdate&&(this.updateBoxSize(),this.doUpdate=!1)}onAdd(){this.text.add(this),this.attr({text:e9(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&e1(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(t,e){e5(t)?t!==this[e]&&(this[e]=t,this.updateTextPadding()):this[e]=void 0}rSetter(t,e){this.boxAttr(e,t)}strokeSetter(t,e){this.stroke=t,this.boxAttr(e,t)}"stroke-widthSetter"(t,e){t&&(this.needsBox=!0),this["stroke-width"]=t,this.boxAttr(e,t)}"text-alignSetter"(t){this.textAlign=this["text-align"]=t,this.updateTextPadding()}textSetter(t){void 0!==t&&this.text.attr({text