dealpos 25.36.2 → 25.36.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/{chunk-UBFPWZKK.js → chunk-2BJ64H7R.js} +1 -1
- package/browser/{chunk-MIUDUL5O.js → chunk-2LKOMKF7.js} +1 -1
- package/browser/{chunk-6WVUJYF7.js → chunk-2P7A5QSW.js} +1 -1
- package/browser/{chunk-WN5WLSWK.js → chunk-2WELHORE.js} +12 -12
- package/browser/{chunk-HTXNZ5OH.js → chunk-36TT3WJZ.js} +2 -2
- package/browser/{chunk-RTD4PUTS.js → chunk-3AEZZSNR.js} +1 -1
- package/browser/{chunk-VCINTCFP.js → chunk-3K4NHIJV.js} +1 -1
- package/browser/{chunk-NFTUD5LZ.js → chunk-4KJQEYIR.js} +1 -1
- package/browser/{chunk-3BWRE4P6.js → chunk-4OMZQ5HK.js} +1 -1
- package/browser/{chunk-4WIPVW4V.js → chunk-64PRCTR2.js} +1 -1
- package/browser/{chunk-446SIVDN.js → chunk-6Z7ZGTB4.js} +1 -1
- package/browser/{chunk-SEJO3YK3.js → chunk-7F6H3VFX.js} +1 -1
- package/browser/{chunk-55VMNRO2.js → chunk-7FRXJGU7.js} +1 -1
- package/browser/{chunk-FTG6OSPJ.js → chunk-7HX2ZEHC.js} +1 -1
- package/browser/{chunk-WYTXXYFH.js → chunk-A3OULNF5.js} +1 -1
- package/browser/{chunk-KKQ3PBCF.js → chunk-A4K4RDXW.js} +1 -1
- package/browser/{chunk-FWSWIKNJ.js → chunk-AOAAVKWR.js} +1 -1
- package/browser/{chunk-7DIY4CBI.js → chunk-C7EZEQZQ.js} +1 -1
- package/browser/{chunk-NQEHGV4G.js → chunk-CURXE4WR.js} +1 -1
- package/browser/{chunk-JHNH2AF7.js → chunk-DJHIHS3W.js} +1 -1
- package/browser/{chunk-M5255JXQ.js → chunk-DQXE767S.js} +1 -1
- package/browser/{chunk-ZDEUKETL.js → chunk-EIHAMJHD.js} +1 -1
- package/browser/{chunk-KI3VDGWO.js → chunk-GHYJCSNA.js} +1 -1
- package/browser/{chunk-72CYGG3F.js → chunk-GM7AHKLZ.js} +1 -1
- package/browser/{chunk-RPHXTGV4.js → chunk-HID7MO2S.js} +1 -1
- package/browser/{chunk-445MKY7P.js → chunk-I3JXGYPZ.js} +1 -1
- package/browser/{chunk-236T5WSU.js → chunk-IB3KMJOZ.js} +1 -1
- package/browser/{chunk-K3CBCNVT.js → chunk-IBTIOJOZ.js} +1 -1
- package/browser/{chunk-LEGX56U6.js → chunk-IPI25TWA.js} +1 -1
- package/browser/{chunk-5YNQL2WY.js → chunk-ITSEL53X.js} +1 -1
- package/browser/{chunk-JST7PLQM.js → chunk-JM6WDW37.js} +1 -1
- package/browser/{chunk-NKWIQ32C.js → chunk-JYTOIAQL.js} +1 -1
- package/browser/{chunk-STXBDXCJ.js → chunk-KRC5LE5H.js} +1 -1
- package/browser/{chunk-P6XHDVFD.js → chunk-L2GLJO5X.js} +1 -1
- package/browser/{chunk-LET3RO6U.js → chunk-LP2Z5VKX.js} +2 -2
- package/browser/{chunk-HNUM6CZZ.js → chunk-LQTBKFXH.js} +1 -1
- package/browser/{chunk-24BK4GZ2.js → chunk-LRSTQA5B.js} +1 -1
- package/browser/{chunk-UGTEWCC7.js → chunk-LVK7ESIU.js} +2 -2
- package/browser/{chunk-TMQHZ27I.js → chunk-M5PTO2R2.js} +1 -1
- package/browser/{chunk-75OXW5FF.js → chunk-N4OAT3FW.js} +1 -1
- package/browser/{chunk-5XPT5NMN.js → chunk-N7T6HUYA.js} +1 -1
- package/browser/{chunk-GPNQBF7Z.js → chunk-NFBE3ZMT.js} +1 -1
- package/browser/{chunk-CAHMIN3M.js → chunk-NH3OND33.js} +1 -1
- package/browser/{chunk-YCDAVU5S.js → chunk-NQ25BYIN.js} +1 -1
- package/browser/{chunk-XH75PP4O.js → chunk-NR54XPL4.js} +1 -1
- package/browser/{chunk-GWRTBYUS.js → chunk-NRWF3XBS.js} +1 -1
- package/browser/chunk-OG4QEJCU.js +1 -0
- package/browser/{chunk-RU6ZFZ7D.js → chunk-OLSVR34W.js} +1 -1
- package/browser/{chunk-AQUIB7DB.js → chunk-PTXDA5BK.js} +1 -1
- package/browser/{chunk-VWY6NDHT.js → chunk-PY6BNBHP.js} +1 -1
- package/browser/{chunk-OZAJEAR6.js → chunk-Q23EKNIO.js} +1 -1
- package/browser/{chunk-ADO2SKYQ.js → chunk-Q7GVJZBF.js} +1 -1
- package/browser/{chunk-GOS6KCY4.js → chunk-QYXTSGSR.js} +1 -1
- package/browser/{chunk-X33IUA3S.js → chunk-R3JXU6L4.js} +1 -1
- package/browser/{chunk-WWHY6YW5.js → chunk-RKIIOMW3.js} +1 -1
- package/browser/{chunk-XLVCNQHR.js → chunk-RQLTUOIG.js} +1 -1
- package/browser/{chunk-ZWSIMORT.js → chunk-RWHRX53O.js} +1 -1
- package/browser/{chunk-RDKRZMFS.js → chunk-TFRMAVDX.js} +1 -1
- package/browser/{chunk-JUFO6GHQ.js → chunk-UG37H4GU.js} +1 -1
- package/browser/{chunk-ND4SQ7JK.js → chunk-UJUI5ETY.js} +1 -1
- package/browser/{chunk-IRINITYM.js → chunk-UV6PSJXI.js} +1 -1
- package/browser/{chunk-OONLQN47.js → chunk-VP36G4HT.js} +1 -1
- package/browser/{chunk-K2ZWKEBA.js → chunk-WD3MA4MA.js} +1 -1
- package/browser/{chunk-AZU6HW5D.js → chunk-WSJHXTI4.js} +1 -1
- package/browser/{chunk-4E2SGUYD.js → chunk-WW5AU5JJ.js} +1 -1
- package/browser/{chunk-5DXZCDDX.js → chunk-X6IMSSTG.js} +2 -2
- package/browser/{chunk-GX4LLL35.js → chunk-XGHFDJFY.js} +1 -1
- package/browser/{chunk-EDH67DEI.js → chunk-XSZLLHRW.js} +1 -1
- package/browser/{chunk-4NZA4IG2.js → chunk-Y545FJCR.js} +1 -1
- package/browser/{chunk-5PMSCBJJ.js → chunk-YJSNPROE.js} +1 -1
- package/browser/{chunk-GWPSMBLW.js → chunk-YKXNLBIB.js} +2 -2
- package/browser/{chunk-MW7RJQ7L.js → chunk-YPF7BMPI.js} +1 -1
- package/browser/{chunk-ATIZNVIC.js → chunk-YUGYXJ5G.js} +1 -1
- package/browser/{chunk-AC66NWU7.js → chunk-YVBFA7MT.js} +1 -1
- package/browser/{chunk-INVGSUVG.js → chunk-ZY2QH5WA.js} +1 -1
- package/browser/{chunk-QWHALQ42.js → chunk-ZYVROOL4.js} +1 -1
- package/browser/index.html +2 -2
- package/browser/{main-SYCMIOD6.js → main-LFZKZ6WQ.js} +2 -2
- package/package.json +1 -1
- package/browser/chunk-A7VZLQPZ.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as nh}from"./chunk-4NHG4RRM.js";import{a as ih}from"./chunk-YAFVFDTG.js";import{a as th,b as eh}from"./chunk-V7UEUV6F.js";import{a as ni}from"./chunk-IVP3GL2V.js";import{c as go}from"./chunk-HT35KHLT.js";import"./chunk-BYXBJQAS.js";import{b as mo}from"./chunk-WXF4SX6R.js";import{h as po,i as uo}from"./chunk-
|
|
1
|
+
import{a as nh}from"./chunk-4NHG4RRM.js";import{a as ih}from"./chunk-YAFVFDTG.js";import{a as th,b as eh}from"./chunk-V7UEUV6F.js";import{a as ni}from"./chunk-IVP3GL2V.js";import{c as go}from"./chunk-HT35KHLT.js";import"./chunk-BYXBJQAS.js";import{b as mo}from"./chunk-WXF4SX6R.js";import{h as po,i as uo}from"./chunk-WSJHXTI4.js";import"./chunk-OLSVR34W.js";import{a as co,b as fo}from"./chunk-YUGYXJ5G.js";import"./chunk-52EOLV7I.js";import"./chunk-5UL73W4S.js";import"./chunk-X6LIVARI.js";import{b as lo,c as ho}from"./chunk-CIBQBSM6.js";import{O as ii,P as Be}from"./chunk-5UCQBOD6.js";import"./chunk-ZT4RBJMM.js";import"./chunk-GIKR6Y2K.js";import"./chunk-VMY3JQDA.js";import"./chunk-D35OBUDE.js";import"./chunk-567HXZXC.js";import"./chunk-CGESXTHC.js";import"./chunk-2FWFPV5I.js";import"./chunk-TLOTIYIE.js";import{D as ao,h as so,o as oo}from"./chunk-P7HKWFZT.js";import"./chunk-N4OAT3FW.js";import"./chunk-IBTIOJOZ.js";import{a as nn,d as ei}from"./chunk-AHCRE4GP.js";import"./chunk-KRC5LE5H.js";import{$ as Ci,$a as k,Ac as ge,Bc as V,Eb as Js,Fa as Qi,Fc as mt,Gb as to,Hb as eo,Ib as w,Ja as Ji,Jb as P,Kb as yt,Lb as ht,Mb as ct,Nb as _t,Ob as ie,Qb as ae,Rb as H,Rd as Vt,Td as Gt,Wc as Wt,Y as Le,Yc as xe,Zc as Et,aa as _e,bd as ye,cd as io,db as Xt,dc as at,ec as A,ed as ti,fc as dt,gc as Q,gd as Nt,hc as tn,ja as Ks,jc as ir,jd as It,kb as Pt,kc as nr,lc as rr,na as Zs,o as qs,ob as Qs,pc as Je,qb as Z,qc as St,qd as no,rc as ut,sc as sr,t as qt,tc as en,td as ro,ua as me,va as Kt,vb as _,wa as Zt,wb as oe,zc as Y}from"./chunk-DZT5XHBQ.js";import{a as vt,b as zt,g as Zi}from"./chunk-7DCB7DB2.js";var or;(function(l){l.SVG_NS="http://www.w3.org/2000/svg",l.product="Highcharts",l.version="@product.version@",l.win=typeof window<"u"?window:{},l.doc=l.win.document,l.svg=l.doc&&l.doc.createElementNS&&!!l.doc.createElementNS(l.SVG_NS,"svg").createSVGRect,l.userAgent=l.win.navigator&&l.win.navigator.userAgent||"",l.isChrome=l.win.chrome,l.isFirefox=l.userAgent.indexOf("Firefox")!==-1,l.isMS=/(edge|msie|trident)/i.test(l.userAgent)&&!l.win.opera,l.isSafari=!l.isChrome&&l.userAgent.indexOf("Safari")!==-1,l.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(l.userAgent),l.isWebKit=l.userAgent.indexOf("AppleWebKit")!==-1,l.deg2rad=Math.PI*2/360,l.hasBidiBug=l.isFirefox&&parseInt(l.userAgent.split("Firefox/")[1],10)<4,l.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],l.noop=function(){},l.supportsPassiveEvents=function(){let e=!1;if(!l.isMS){let t=Object.defineProperty({},"passive",{get:function(){e=!0}});l.win.addEventListener&&l.win.removeEventListener&&(l.win.addEventListener("testPassive",l.noop,t),l.win.removeEventListener("testPassive",l.noop,t))}return e}(),l.charts=[],l.composed=[],l.dateFormats={},l.seriesTypes={},l.symbolSizes={},l.chartCount=0})(or||(or={}));var B=or;var{charts:rh,doc:rn,win:Re}=B;function be(l,e,t,i){let n=e?"Highcharts error":"Highcharts warning";l===32&&(l=`${n}: Deprecated member`);let r=cr(l),s=r?`${n} #${l}: www.highcharts.com/errors/${l}/`:l.toString(),o=function(){if(e)throw new Error(s);Re.console&&be.messages.indexOf(s)===-1&&console.warn(s)};if(typeof i<"u"){let a="";r&&(s+="?"),ve(i,function(h,c){a+=`
|
|
2
2
|
- ${c}: ${h}`,r&&(s+=encodeURI(c)+"="+encodeURI(h))}),s+=a}To(B,"displayError",{chart:t,code:l,message:s,params:i},o),be.messages.push(s)}(function(l){l.messages=[]})(be||(be={}));function sh(){let l,e=arguments,t={},i=function(r,s){return typeof r!="object"&&(r={}),ve(s,function(o,a){a==="__proto__"||a==="constructor"||(oi(o,!0)&&!yo(o)&&!hr(o)?r[a]=i(r[a]||{},o):r[a]=s[a])}),r};e[0]===!0&&(t=e[1],e=Array.prototype.slice.call(e,2));let n=e.length;for(l=0;l<n;l++)t=i(t,e[l]);return t}function oh(l,e,t){return l>e?l<t?l:t:e}var ah=(l,e=0,t)=>{let i=e%2/2,n=t?-1:1;return(Math.round(l*n-i)+i)*n};function lh(l,e,t,i){let n={};function r(s,o,a,h){let c=t?o:s;ve(s,function(p,d){if(!h&&i&&i.indexOf(d)>-1&&o[d]){p=vo(p),a[d]=[];for(let f=0;f<Math.max(p.length,o[d].length);f++)o[d][f]&&(p[f]===void 0?a[d][f]=o[d][f]:(a[d][f]={},r(p[f],o[d][f],a[d][f],h+1)))}else oi(p,!0)&&!p.nodeType?(a[d]=on(p)?[]:{},r(p,o[d]||{},a[d],h+1),Object.keys(a[d]).length===0&&!(d==="colorAxis"&&h===0)&&delete a[d]):(s[d]!==o[d]||d in s&&!(d in o))&&d!=="__proto__"&&d!=="constructor"&&(a[d]=c[d])})}return r(l,e,n,0),n}function xo(l,e){return parseInt(l,e||10)}function sn(l){return typeof l=="string"}function on(l){let e=Object.prototype.toString.call(l);return e==="[object Array]"||e==="[object Array Iterator]"}function oi(l,e){return!!l&&typeof l=="object"&&(!e||!on(l))}function hr(l){return oi(l)&&typeof l.nodeType=="number"}function yo(l){let e=l&&l.constructor;return!!(oi(l,!0)&&!hr(l)&&e&&e.name&&e.name!=="Object")}function cr(l){return typeof l=="number"&&!isNaN(l)&&l<1/0&&l>-1/0}function hh(l,e){let t=l.length;for(;t--;)if(l[t]===e){l.splice(t,1);break}}function ch(l,e){let t=l.options.index,i=e.length,n;for(n=l.options.isInternal?i:0;n<i+1;n++)if(!e[n]||cr(t)&&t<Ti(e[n].options.index,e[n]._i)||e[n].options.isInternal){e.splice(n,0,l);break}return n}function dh(l,e){return l.indexOf(e)<0&&!!l.push(e)}function ri(l){return typeof l<"u"&&l!==null}function bo(l,e,t){let i=sn(e)&&!ri(t),n,r=(s,o)=>{ri(s)?l.setAttribute(o,s):i?(n=l.getAttribute(o),!n&&o==="class"&&(n=l.getAttribute(o+"Name"))):l.removeAttribute(o)};return sn(e)?r(t,e):ve(e,r),n}function vo(l){return on(l)?l:[l]}function fh(l,e,t){return e>0?setTimeout(l,e,t):(l.call(0,t),-1)}function ph(l){ri(l)&&clearTimeout(l)}function si(l,e){let t;l||(l={});for(t in e)l[t]=e[t];return l}function Ti(){let l=arguments,e=l.length;for(let t=0;t<e;t++){let i=l[t];if(typeof i<"u"&&i!==null)return i}}function ar(l,e){si(l.style,e)}function uh(l,e,t,i,n){let r=rn.createElement(l);return e&&si(r,e),n&&ar(r,{padding:"0",border:"none",margin:"0"}),t&&ar(r,t),i&&i.appendChild(r),r}function mh(l,e){let t=function(){};return t.prototype=new l,si(t.prototype,e),t}function gh(l,e,t){return new Array((e||2)+1-String(l).replace("-","").length).join(t||"0")+l}function xh(l,e,t){return/%$/.test(l)?e*parseFloat(l)/100+(t||0):parseFloat(l)}function yh(l,...e){let t,i;do{t=l;for(i of e)l=l.replace(i[0],i[1])}while(l!==t);return l}function bh(l,e,t){let i=l[e];l[e]=function(){let n=arguments,r=this;return t.apply(this,[function(){return i.apply(r,arguments.length?arguments:n)}].concat([].slice.call(arguments)))}}function So(l){return Math.pow(10,Math.floor(Math.log(l)/Math.LN10))}function vh(l,e,t,i,n){let r,s=l;t=Ti(t,So(l));let o=l/t;for(e||(e=n?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],i===!1&&(t===1?e=e.filter(function(a){return a%1===0}):t<=.1&&(e=[1/t]))),r=0;r<e.length&&(s=e[r],!(n&&s*t>=l||!n&&o<=(e[r]+(e[r+1]||e[r]))/2));r++);return s=Co(s*t,-Math.round(Math.log(.001)/Math.LN10)),s}function Sh(l,e){let t=l.length,i,n;for(n=0;n<t;n++)l[n].safeI=n;for(l.sort(function(r,s){return i=e(r,s),i===0?r.safeI-s.safeI:i}),n=0;n<t;n++)delete l[n].safeI}function Ch(l){let e=l.length,t=l[0];for(;e--;)l[e]<t&&(t=l[e]);return t}function Dh(l){let e=l.length,t=l[0];for(;e--;)l[e]>t&&(t=l[e]);return t}function Th(l,e,t){ve(l,function(i,n){i!==e&&i?.destroy&&i.destroy(),(i?.destroy||!t)&&delete l[n]})}function wh(l){l&&l.parentElement&&l.parentElement.removeChild(l)}function Co(l,e){return l>1e14?l:parseFloat(l.toPrecision(e||14))}var Ph={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:24*36e5,week:7*24*36e5,month:28*24*36e5,year:364*24*36e5};Math.easeInOutSine=function(l){return-.5*(Math.cos(Math.PI*l)-1)};function Mh(l,e){let t=!e,i,n,r,s;return l.forEach(o=>{if(o.length>1)for(n=o.length-1,s=n;s>0;s--)r=o[s]-o[s-1],r<0&&!t?(e?.(),e=void 0):r&&(typeof i>"u"||r<i)&&(i=r)}),i}function kh(l,e){let t=l.split(".");for(;t.length&&ri(e);){let i=t.shift();if(typeof i>"u"||i==="__proto__")return;if(i==="this"){let r;return oi(e)&&(r=e["@this"]),r??e}let n=e[i];if(!ri(n)||typeof n=="function"||typeof n.nodeType=="number"||n===Re)return;e=n}return e}function Di(l,e,t){let i;if(e==="width"){let r=Math.min(l.offsetWidth,l.scrollWidth),s=l.getBoundingClientRect&&l.getBoundingClientRect().width;return s<r&&s>=r-1&&(r=Math.floor(s)),Math.max(0,r-(Di(l,"padding-left",!0)||0)-(Di(l,"padding-right",!0)||0))}if(e==="height")return Math.max(0,Math.min(l.offsetHeight,l.scrollHeight)-(Di(l,"padding-top",!0)||0)-(Di(l,"padding-bottom",!0)||0));let n=Re.getComputedStyle(l,void 0);return n&&(i=n.getPropertyValue(e),Ti(t,e!=="opacity")&&(i=xo(i))),i}function Oh(l,e,t){return be(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),e.indexOf(l,t)}var Ah=Array.prototype.find?function(l,e){return l.find(e)}:function(l,e){let t,i=l.length;for(t=0;t<i;t++)if(e(l[t],t))return l[t]};function Eh(l){return be(32,!1,void 0,{"Highcharts.keys":"use Object.keys"}),Object.keys(l)}function Ih(l){let e=rn.documentElement,t=l.parentElement||l.parentNode?l.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:t.top+(Re.pageYOffset||e.scrollTop)-(e.clientTop||0),left:t.left+(Re.pageXOffset||e.scrollLeft)-(e.clientLeft||0),width:t.width,height:t.height}}function ve(l,e,t){for(let i in l)Object.hasOwnProperty.call(l,i)&&e.call(t||l[i],l[i],i,l)}ve({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(l,e){B[e]=function(t){return be(32,!1,void 0,{[`Highcharts.${e}`]:`use Array.${l}`}),Array.prototype[l].apply(t,[].slice.call(arguments,1))}});function Lh(l,e,t,i={}){let n=typeof l=="function"&&l.prototype||l;Object.hasOwnProperty.call(n,"hcEvents")||(n.hcEvents={});let r=n.hcEvents;B.Point&&l instanceof B.Point&&l.series&&l.series.chart&&(l.series.chart.runTrackerClick=!0);let s=l.addEventListener;s&&s.call(l,e,t,B.supportsPassiveEvents?{passive:i.passive===void 0?e.indexOf("touch")!==-1:i.passive,capture:!1}:!1),r[e]||(r[e]=[]);let o={fn:t,order:typeof i.order=="number"?i.order:1/0};return r[e].push(o),r[e].sort((a,h)=>a.order-h.order),function(){Do(l,e,t)}}function Do(l,e,t){function i(s,o){let a=l.removeEventListener;a&&a.call(l,s,o,!1)}function n(s){let o,a;l.nodeName&&(e?(o={},o[e]=!0):o=s,ve(o,function(h,c){if(s[c])for(a=s[c].length;a--;)i(c,s[c][a].fn)}))}let r=typeof l=="function"&&l.prototype||l;if(Object.hasOwnProperty.call(r,"hcEvents")){let s=r.hcEvents;if(e){let o=s[e]||[];t?(s[e]=o.filter(function(a){return t!==a.fn}),i(e,t)):(n(s),s[e]=[])}else n(s),delete r.hcEvents}}function To(l,e,t,i){if(t=t||{},rn.createEvent&&(l.dispatchEvent||l.fireEvent&&l!==B)){let n=rn.createEvent("Events");n.initEvent(e,!0,!0),t=si(n,t),l.dispatchEvent?l.dispatchEvent(t):l.fireEvent(e,t)}else if(l.hcEvents){t.target||si(t,{preventDefault:function(){t.defaultPrevented=!0},target:l,type:e});let n=[],r=l,s=!1;for(;r.hcEvents;)Object.hasOwnProperty.call(r,"hcEvents")&&r.hcEvents[e]&&(n.length&&(s=!0),n.unshift.apply(n,r.hcEvents[e])),r=Object.getPrototypeOf(r);s&&n.sort((o,a)=>o.order-a.order),n.forEach(o=>{o.fn.call(l,t)===!1&&t.preventDefault()})}i&&!t.defaultPrevented&&i.call(l,t)}var lr,_h=function(){let l=Math.random().toString(36).substring(2,9)+"-",e=0;return function(){return"highcharts-"+(lr?"":l)+e++}}();function Bh(l){return lr=Ti(l,lr)}function Rh(l){return typeof l=="function"}Re.jQuery&&(Re.jQuery.fn.highcharts=function(){let l=[].slice.call(arguments);if(this[0])return l[0]?(new B[sn(l[0])?l.shift():"Chart"](this[0],l[0],l[1]),this):rh[bo(this[0],"data-highcharts-chart")]});var Wh={addEvent:Lh,arrayMax:Dh,arrayMin:Ch,attr:bo,clamp:oh,clearTimeout:ph,correctFloat:Co,createElement:uh,crisp:ah,css:ar,defined:ri,destroyObjectProperties:Th,diffObjects:lh,discardElement:wh,erase:hh,error:be,extend:si,extendClass:mh,find:Ah,fireEvent:To,getClosestDistance:Mh,getMagnitude:So,getNestedProperty:kh,getStyle:Di,inArray:Oh,insertItem:ch,isArray:on,isClass:yo,isDOMElement:hr,isFunction:Rh,isNumber:cr,isObject:oi,isString:sn,keys:Eh,merge:sh,normalizeTickInterval:vh,objectEach:ve,offset:Ih,pad:gh,pick:Ti,pInt:xo,pushUnique:dh,relativeLength:xh,removeEvent:Do,replaceNested:yh,splat:vo,stableSort:Sh,syncTimeout:fh,timeUnits:Ph,uniqueKey:_h,useSerialIds:Bh,wrap:bh},E=Wh;var Nh={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"},wo=Nh;var Fh={colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"]},Po=Fh;var{win:ai}=B,{defined:dr,error:Hh,extend:Mo,isNumber:zh,isObject:Yh,merge:Xh,objectEach:Vh,pad:Se,pick:We,splat:Gh,timeUnits:gt}=E,jh=B.isSafari&&ai.Intl&&ai.Intl.DateTimeFormat.prototype.formatRange,Uh=B.isSafari&&ai.Intl&&!ai.Intl.DateTimeFormat.prototype.formatRange,$h=(()=>{class l{constructor(t){this.options={},this.useUTC=!1,this.variableTimezone=!1,this.Date=ai.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(t)}get(t,i){if(this.variableTimezone||this.timezoneOffset){let n=i.getTime(),r=n-this.getTimezoneOffset(i);i.setTime(r);let s=i["getUTC"+t]();return i.setTime(n),s}return this.useUTC?i["getUTC"+t]():i["get"+t]()}set(t,i,n){if(this.variableTimezone||this.timezoneOffset){if(t==="Milliseconds"||t==="Seconds"||t==="Minutes"&&this.getTimezoneOffset(i)%36e5===0)return i["setUTC"+t](n);let r=this.getTimezoneOffset(i),s=i.getTime()-r;i.setTime(s),i["setUTC"+t](n);let o=this.getTimezoneOffset(i);return s=i.getTime()+o,i.setTime(s)}return this.useUTC||jh&&t==="FullYear"?i["setUTC"+t](n):i["set"+t](n)}update(t={}){let i=We(t.useUTC,!0);this.options=t=Xh(!0,this.options,t),this.Date=t.Date||ai.Date||Date,this.useUTC=i,this.timezoneOffset=i&&t.timezoneOffset||void 0,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=i&&!!(t.getTimezoneOffset||t.timezone)}makeTime(t,i,n,r,s,o){let a,h,c;return this.useUTC?(a=this.Date.UTC.apply(0,arguments),h=this.getTimezoneOffset(a),a+=h,c=this.getTimezoneOffset(a),h!==c?a+=c-h:h-36e5===this.getTimezoneOffset(a-36e5)&&!Uh&&(a-=36e5)):a=new this.Date(t,i,We(n,1),We(r,0),We(s,0),We(o,0)).getTime(),a}timezoneOffsetFunction(){let t=this,i=this.options,n=i.getTimezoneOffset;return this.useUTC?i.timezone?r=>{try{let s=`shortOffset,${i.timezone||""}`,o=l.formatCache[s]=l.formatCache[s]||Intl.DateTimeFormat("en",{timeZone:i.timezone,timeZoneName:"shortOffset"}),[a,h,c,p,d=0]=o.format(r).split(/(GMT|:)/).map(Number),f=-(c+d/60)*60*6e4;if(zh(f))return f}catch{Hh(34)}return 0}:this.useUTC&&n?r=>n(r.valueOf())*6e4:()=>(t.timezoneOffset||0)*6e4:r=>new Date(r.toString()).getTimezoneOffset()*6e4}dateFormat(t,i,n){if(!dr(i)||isNaN(i))return B.defaultOptions.lang&&B.defaultOptions.lang.invalidDate||"";t=We(t,"%Y-%m-%d %H:%M:%S");let r=this,s=new this.Date(i),o=this.get("Hours",s),a=this.get("Day",s),h=this.get("Date",s),c=this.get("Month",s),p=this.get("FullYear",s),d=B.defaultOptions.lang,f=d&&d.weekdays,u=d&&d.shortWeekdays,m=Mo({a:u?u[a]:f[a].substr(0,3),A:f[a],d:Se(h),e:Se(h,2," "),w:a,b:d.shortMonths[c],B:d.months[c],m:Se(c+1),o:c+1,y:p.toString().substr(2,2),Y:p,H:Se(o),k:o,I:Se(o%12||12),l:o%12||12,M:Se(this.get("Minutes",s)),p:o<12?"AM":"PM",P:o<12?"am":"pm",S:Se(this.get("Seconds",s)),L:Se(Math.floor(i%1e3),3)},B.dateFormats);return Vh(m,function(g,x){for(;t.indexOf("%"+x)!==-1;)t=t.replace("%"+x,typeof g=="function"?g.call(r,i):g)}),n?t.substr(0,1).toUpperCase()+t.substr(1):t}resolveDTLFormat(t){return Yh(t,!0)?t:(t=Gh(t),{main:t[0],from:t[1],to:t[2]})}getTimeTicks(t,i,n,r){let s=this,o=s.Date,a=[],h={},c=new o(i),p=t.unitRange,d=t.count||1,f,u,m,g;if(r=We(r,1),dr(i)){s.set("Milliseconds",c,p>=gt.second?0:d*Math.floor(s.get("Milliseconds",c)/d)),p>=gt.second&&s.set("Seconds",c,p>=gt.minute?0:d*Math.floor(s.get("Seconds",c)/d)),p>=gt.minute&&s.set("Minutes",c,p>=gt.hour?0:d*Math.floor(s.get("Minutes",c)/d)),p>=gt.hour&&s.set("Hours",c,p>=gt.day?0:d*Math.floor(s.get("Hours",c)/d)),p>=gt.day&&s.set("Date",c,p>=gt.month?1:Math.max(1,d*Math.floor(s.get("Date",c)/d))),p>=gt.month&&(s.set("Month",c,p>=gt.year?0:d*Math.floor(s.get("Month",c)/d)),u=s.get("FullYear",c)),p>=gt.year&&(u-=u%d,s.set("FullYear",c,u)),p===gt.week&&(g=s.get("Day",c),s.set("Date",c,s.get("Date",c)-g+r+(g<r?-7:0))),u=s.get("FullYear",c);let x=s.get("Month",c),y=s.get("Date",c),b=s.get("Hours",c);i=c.getTime(),(s.variableTimezone||!s.useUTC)&&dr(n)&&(m=n-i>4*gt.month||s.getTimezoneOffset(i)!==s.getTimezoneOffset(n));let v=c.getTime();for(f=1;v<n;)a.push(v),p===gt.year?v=s.makeTime(u+f*d,0):p===gt.month?v=s.makeTime(u,x+f*d):m&&(p===gt.day||p===gt.week)?v=s.makeTime(u,x,y+f*d*(p===gt.day?1:7)):m&&p===gt.hour&&d>1?v=s.makeTime(u,x,y,b+f*d):v+=p*d,f++;a.push(v),p<=gt.hour&&a.length<1e4&&a.forEach(function(S){S%18e5===0&&s.dateFormat("%H%M%S%L",S)==="000000000"&&(h[S]="day")})}return a.info=Mo(t,{higherRanks:h,totalRange:p*d}),a}getDateFormat(t,i,n,r){let s=this.dateFormat("%m-%d %H:%M:%S.%L",i),o="01-01 00:00:00.000",a={millisecond:15,second:12,minute:9,hour:6,day:3},h="millisecond",c=h;for(h in gt){if(t===gt.week&&+this.dateFormat("%w",i)===n&&s.substr(6)===o.substr(6)){h="week";break}if(gt[h]>t){h=c;break}if(a[h]&&s.substr(a[h])!==o.substr(a[h]))break;h!=="week"&&(c=h)}return this.resolveDTLFormat(r[h]).main}}return l.formatCache={},l})(),Ne=$h;var{isTouchDevice:qh}=B,{fireEvent:Kh,merge:ko}=E,le={colors:Po.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalPoint:".",numericSymbols:["k","M","G","T","P","E"],resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},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,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:wo,title:{style:{color:"#333333",fontWeight:"bold"},text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{style:{color:"#666666",fontSize:"0.8em"},text:"",align:"center",widthAdjust:-44},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:l=>Math.sqrt(1-Math.pow(l-1,2))},borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %e %b, %H:%M:%S.%L",second:"%A, %e %b, %H:%M:%S",minute:"%A, %e %b, %H:%M",hour:"%A, %e %b, %H:%M",day:"%A, %e %b %Y",week:"Week from %A, %e %b %Y",month:"%B %Y",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,shape:"callout",shared:!1,snap:qh?25:10,headerFormat:'<span style="font-size: 0.8em">{point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:"#ffffff",borderWidth:void 0,shadow:!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"}};le.chart.styledMode=!0;le.chart.styledMode=!1;var Oo=new Ne(le.time);function Zh(){return le}function Qh(l){return Kh(B,"setOptions",{options:l}),ko(!0,le,l),(l.time||l.global)&&(B.time?B.time.update(ko(le.global,le.time,l.global,l.time)):B.time=Oo),le}var Jh={defaultOptions:le,defaultTime:Oo,getOptions:Zh,setOptions:Qh},Ct=Jh;var{isNumber:an,merge:tc,pInt:Fe}=E,He=class l{static parse(e){return e?new l(e):l.None}constructor(e){this.rgba=[NaN,NaN,NaN,NaN],this.input=e;let t=B.Color;if(t&&t!==l)return new t(e);let i,n,r,s;if(typeof e=="object"&&typeof e.stops<"u")this.stops=e.stops.map(o=>new l(o[1]));else if(typeof e=="string"){if(this.input=e=l.names[e.toLowerCase()]||e,e.charAt(0)==="#"){let o=e.length,a=parseInt(e.substr(1),16);o===7?n=[(a&16711680)>>16,(a&65280)>>8,a&255,1]:o===4&&(n=[(a&3840)>>4|(a&3840)>>8,(a&240)>>4|a&240,(a&15)<<4|a&15,1])}if(!n)for(r=l.parsers.length;r--&&!n;)s=l.parsers[r],i=s.regex.exec(e),i&&(n=s.parse(i))}n&&(this.rgba=n)}get(e){let t=this.input,i=this.rgba;if(typeof t=="object"&&typeof this.stops<"u"){let n=tc(t);return n.stops=[].slice.call(n.stops),this.stops.forEach((r,s)=>{n.stops[s]=[n.stops[s][0],r.get(e)]}),n}return i&&an(i[0])?e==="rgb"||!e&&i[3]===1?"rgb("+i[0]+","+i[1]+","+i[2]+")":e==="a"?`${i[3]}`:"rgba("+i.join(",")+")":t}brighten(e){let t=this.rgba;if(this.stops)this.stops.forEach(function(i){i.brighten(e)});else if(an(e)&&e!==0)for(let i=0;i<3;i++)t[i]+=Fe(e*255),t[i]<0&&(t[i]=0),t[i]>255&&(t[i]=255);return this}setOpacity(e){return this.rgba[3]=e,this}tweenTo(e,t){let i=this.rgba,n=e.rgba;if(!an(i[0])||!an(n[0]))return e.input||"none";let r=n[3]!==1||i[3]!==1;return(r?"rgba(":"rgb(")+Math.round(n[0]+(i[0]-n[0])*(1-t))+","+Math.round(n[1]+(i[1]-n[1])*(1-t))+","+Math.round(n[2]+(i[2]-n[2])*(1-t))+(r?","+(n[3]+(i[3]-n[3])*(1-t)):"")+")"}};He.names={white:"#ffffff",black:"#000000"};He.parsers=[{regex:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?(?:\.\d+)?)\s*\)/,parse:function(l){return[Fe(l[1]),Fe(l[2]),Fe(l[3]),parseFloat(l[4],10)]}},{regex:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)/,parse:function(l){return[Fe(l[1]),Fe(l[2]),Fe(l[3]),1]}}];He.None=new He("");var Bt=He;var{parse:Ao}=Bt,{win:ec}=B,{isNumber:fr,objectEach:ic}=E,nc=(()=>{class l{constructor(t,i,n){this.pos=NaN,this.options=i,this.elem=t,this.prop=n}dSetter(){let t=this.paths,i=t&&t[0],n=t&&t[1],r=this.now||0,s=[];if(r===1||!i||!n)s=this.toD||[];else if(i.length===n.length&&r<1)for(let o=0;o<n.length;o++){let a=i[o],h=n[o],c=[];for(let p=0;p<h.length;p++){let d=a[p],f=h[p];fr(d)&&fr(f)&&!(h[0]==="A"&&(p===4||p===5))?c[p]=d+r*(f-d):c[p]=f}s.push(c)}else s=n;this.elem.attr("d",s,void 0,!0)}update(){let t=this.elem,i=this.prop,n=this.now,r=this.options.step;this[i+"Setter"]?this[i+"Setter"]():t.attr?t.element&&t.attr(i,n,null,!0):t.style[i]=n+this.unit,r&&r.call(t,n,this)}run(t,i,n){let r=this,s=r.options,o=function(c){return o.stopped?!1:r.step(c)},a=ec.requestAnimationFrame||function(c){setTimeout(c,13)},h=function(){for(let c=0;c<l.timers.length;c++)l.timers[c]()||l.timers.splice(c--,1);l.timers.length&&a(h)};t===i&&!this.elem["forceAnimate:"+this.prop]?(delete s.curAnim[this.prop],s.complete&&Object.keys(s.curAnim).length===0&&s.complete.call(this.elem)):(this.startTime=+new Date,this.start=t,this.end=i,this.unit=n,this.now=this.start,this.pos=0,o.elem=this.elem,o.prop=this.prop,o()&&l.timers.push(o)===1&&a(h))}step(t){let i=+new Date,n=this.options,r=this.elem,s=n.complete,o=n.duration,a=n.curAnim,h,c;return r.attr&&!r.element?h=!1:t||i>=o+this.startTime?(this.now=this.end,this.pos=1,this.update(),a[this.prop]=!0,c=!0,ic(a,function(p){p!==!0&&(c=!1)}),c&&s&&s.call(r),h=!1):(this.pos=n.easing((i-this.startTime)/o),this.now=this.start+(this.end-this.start)*this.pos,this.update(),h=!0),h}initPath(t,i,n){let r=t.startX,s=t.endX,o=n.slice(),a=t.isArea,h=a?2:1,c=i&&n.length>i.length&&n.hasStackedCliffs,p,d,f,u,m=i&&i.slice();if(!m||c)return[o,o];function g(y,b){for(;y.length<d;){let v=y[0],S=b[d-y.length];if(S&&v[0]==="M"&&(S[0]==="C"?y[0]=["C",v[1],v[2],v[1],v[2],v[1],v[2]]:y[0]=["L",v[1],v[2]]),y.unshift(v),a){let C=y.pop();y.push(y[y.length-1],C)}}}function x(y){for(;y.length<d;){let b=y[Math.floor(y.length/h)-1].slice();if(b[0]==="C"&&(b[1]=b[5],b[2]=b[6]),!a)y.push(b);else{let v=y[Math.floor(y.length/h)].slice();y.splice(y.length/2,0,b,v)}}}if(r&&s&&s.length){for(f=0;f<r.length;f++)if(r[f]===s[0]){p=f;break}else if(r[0]===s[s.length-r.length+f]){p=f,u=!0;break}else if(r[r.length-1]===s[s.length-r.length+f]){p=r.length-f;break}typeof p>"u"&&(m=[])}return m.length&&fr(p)&&(d=o.length+p*h,u?(g(m,o),x(o)):(g(o,m),x(m))),[m,o]}fillSetter(){l.prototype.strokeSetter.apply(this,arguments)}strokeSetter(){this.elem.attr(this.prop,Ao(this.start).tweenTo(Ao(this.end),this.pos),void 0,!0)}}return l.timers=[],l})(),he=nc;var{defined:rc,getStyle:sc,isArray:oc,isNumber:ac,isObject:ur,merge:Eo,objectEach:lc,pick:hc}=E;function cc(l,e){e.renderer.globalAnimation=hc(l,e.options.chart.animation,!0)}function pr(l){return ur(l)?Eo({duration:500,defer:0},l):{duration:l?500:0,defer:0}}function dc(l,e,t){let i=pr(e),n=t?[t]:l.series,r=0,s=0;return n.forEach(a=>{let h=pr(a.options.animation);r=ur(e)&&rc(e.defer)?i.defer:Math.max(r,h.duration+h.defer),s=Math.min(i.duration,h.duration)}),l.renderer.forExport&&(r=0),{defer:Math.max(0,r-s),duration:Math.min(r,s)}}function fc(l,e,t){let i,n="",r,s,o;ur(t)||(o=arguments,t={duration:o[2],easing:o[3],complete:o[4]}),ac(t.duration)||(t.duration=400),t.easing=typeof t.easing=="function"?t.easing:Math[t.easing]||Math.easeInOutSine,t.curAnim=Eo(e),lc(e,function(a,h){Io(l,h),s=new he(l,t,h),r=void 0,h==="d"&&oc(e.d)?(s.paths=s.initPath(l,l.pathArray,e.d),s.toD=e.d,i=0,r=1):l.attr?i=l.attr(h):(i=parseFloat(sc(l,h))||0,h!=="opacity"&&(n="px")),r||(r=a),typeof r=="string"&&r.match("px")&&(r=r.replace(/px/g,"")),s.run(i,r,n)})}function Io(l,e){let t=he.timers.length;for(;t--;)he.timers[t].elem===l&&(!e||e===he.timers[t].prop)&&(he.timers[t].stopped=!0)}var pc={animate:fc,animObject:pr,getDeferredAnimation:dc,setAnimation:cc,stop:Io},lt=pc;var{SVG_NS:Lo,win:uc}=B,{attr:mc,createElement:gc,css:xc,error:_o,isFunction:yc,isString:Bo,objectEach:Ro,splat:bc}=E,{trustedTypes:mr}=uc,ln=mr&&yc(mr.createPolicy)&&mr.createPolicy("highcharts",{createHTML:l=>l}),Wo=ln?ln.createHTML(""):"",vc=function(){try{return!!new DOMParser().parseFromString(Wo,"text/html")}catch{return!1}}(),Sc=(()=>{class l{static filterUserAttributes(t){return Ro(t,(i,n)=>{let r=!0;l.allowedAttributes.indexOf(n)===-1&&(r=!1),["background","dynsrc","href","lowsrc","src"].indexOf(n)!==-1&&(r=Bo(i)&&l.allowedReferences.some(s=>i.indexOf(s)===0)),r||(_o(33,!1,void 0,{"Invalid attribute in config":`${n}`}),delete t[n]),Bo(i)&&t[n]&&(t[n]=i.replace(/</g,"<"))}),t}static parseStyle(t){return t.split(";").reduce((i,n)=>{let r=n.split(":").map(o=>o.trim()),s=r.shift();return s&&r.length&&(i[s.replace(/-([a-z])/g,o=>o[1].toUpperCase())]=r.join(":")),i},{})}static setElementHTML(t,i){t.innerHTML=l.emptyHTML,i&&new l(i).addToDOM(t)}constructor(t){this.nodes=typeof t=="string"?this.parseMarkup(t):t}addToDOM(t){function i(n,r){let s;return bc(n).forEach(function(o){let a=o.tagName,h=o.textContent?B.doc.createTextNode(o.textContent):void 0,c=l.bypassHTMLFiltering,p;if(a)if(a==="#text")p=h;else if(l.allowedTags.indexOf(a)!==-1||c){let d=a==="svg"?Lo:r.namespaceURI||Lo,f=B.doc.createElementNS(d,a),u=o.attributes||{};Ro(o,function(m,g){g!=="tagName"&&g!=="attributes"&&g!=="children"&&g!=="style"&&g!=="textContent"&&(u[g]=m)}),mc(f,c?u:l.filterUserAttributes(u)),o.style&&xc(f,o.style),h&&f.appendChild(h),i(o.children||[],f),p=f}else _o(33,!1,void 0,{"Invalid tagName in config":a});p&&r.appendChild(p),s=p}),s}return i(this.nodes,t)}parseMarkup(t){let i=[];t=t.trim().replace(/ style=(["'])/g," data-style=$1");let n;if(vc)n=new DOMParser().parseFromString(ln?ln.createHTML(t):t,"text/html");else{let s=gc("div");s.innerHTML=t,n={body:s}}let r=(s,o)=>{let a=s.nodeName.toLowerCase(),h={tagName:a};a==="#text"&&(h.textContent=s.textContent||"");let c=s.attributes;if(c){let p={};[].forEach.call(c,d=>{d.name==="data-style"?h.style=l.parseStyle(d.value):p[d.name]=d.value}),h.attributes=p}if(s.childNodes.length){let p=[];[].forEach.call(s.childNodes,d=>{r(d,p)}),p.length&&(h.children=p)}o.push(h)};return[].forEach.call(n.body.childNodes,s=>r(s,i)),i}}return l.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"],l.allowedReferences=["https://","http://","mailto:","/","../","./","#"],l.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"],l.emptyHTML=Wo,l.bypassHTMLFiltering=!1,l})(),Mt=Sc;var{defaultOptions:No,defaultTime:Fo}=Ct,{extend:Cc,getNestedProperty:Dc,isArray:Tc,isNumber:wc,isObject:Pc,pick:gr,pInt:Mc}=E,hn={add:(l,e)=>l+e,divide:(l,e)=>e!==0?l/e:"",eq:(l,e)=>l==e,each:function(l){let e=arguments[arguments.length-1];return Tc(l)?l.map((t,i)=>cn(e.body,Cc(Pc(t)?t:{"@this":t},{"@index":i,"@first":i===0,"@last":i===l.length-1}))).join(""):!1},ge:(l,e)=>l>=e,gt:(l,e)=>l>e,if:l=>!!l,le:(l,e)=>l<=e,lt:(l,e)=>l<e,multiply:(l,e)=>l*e,ne:(l,e)=>l!=e,subtract:(l,e)=>l-e,unless:l=>!l};function kc(l,e,t){return Fo.dateFormat(l,e,t)}function cn(l="",e,t){let i=/\{([\w\:\.\,;\-\/<>%@"'’= #\(\)]+)\}/g,n=/\(([\w\:\.\,;\-\/<>%@"'= ]+)\)/g,r=[],s=/f$/,o=/\.(\d)/,a=No.lang,h=t&&t.time||Fo,c=t&&t.numberFormatter||Ho,p=(g="")=>{let x;return g==="true"?!0:g==="false"?!1:(x=Number(g)).toString()===g?x:Dc(g,e)},d,f,u=0,m;for(;(d=i.exec(l))!==null;){let g=n.exec(d[1]);g&&(d=g,m=!0),(!f||!f.isBlock)&&(f={ctx:e,expression:d[1],find:d[0],isBlock:d[1].charAt(0)==="#",start:d.index,startInner:d.index+d[0].length,length:d[0].length});let x=d[1].split(" ")[0].replace("#","");hn[x]&&(f.isBlock&&x===f.fn&&u++,f.fn||(f.fn=x));let y=d[1]==="else";if(f.isBlock&&f.fn&&(d[1]===`/${f.fn}`||y))if(u)y||u--;else{let b=f.startInner,v=l.substr(b,d.index-b);f.body===void 0?(f.body=v,f.startInner=d.index+d[0].length):f.elseBody=v,f.find+=v+d[0],y||(r.push(f),f=void 0)}else f.isBlock||r.push(f);if(g&&!f?.isBlock)break}return r.forEach(g=>{let{body:x,elseBody:y,expression:b,fn:v}=g,S,C;if(v){let D=[g],T=b.split(" ");for(C=hn[v].length;C--;)D.unshift(p(T[C+1]));S=hn[v].apply(e,D),g.isBlock&&typeof S=="boolean"&&(S=cn(S?x:y,e,t))}else{let D=b.split(":");if(S=p(D.shift()||""),D.length&&typeof S=="number"){let T=D.join(":");if(s.test(T)){let M=parseInt((T.match(o)||["","-1"])[1],10);S!==null&&(S=c(S,M,a.decimalPoint,T.indexOf(",")>-1?a.thousandsSep:""))}else S=h.dateFormat(T,S)}}l=l.replace(g.find,gr(S,""))}),m?cn(l,e,t):l}function Ho(l,e,t,i){l=+l||0,e=+e;let n,r,s=No.lang,o=(l.toString().split(".")[1]||"").split("e")[0].length,a=l.toString().split("e"),h=e;e===-1?e=Math.min(o,20):wc(e)?e&&a[1]&&a[1]<0&&(r=e+ +a[1],r>=0?(a[0]=(+a[0]).toExponential(r).split("e")[0],e=r):(a[0]=a[0].split(".")[0]||0,e<20?l=(a[0]*Math.pow(10,a[1])).toFixed(e):l=0,a[1]=0)):e=2;let c=(Math.abs(a[1]?a[0]:l)+Math.pow(10,-Math.max(e,o)-1)).toFixed(e),p=String(Mc(c)),d=p.length>3?p.length%3:0;return t=gr(t,s.decimalPoint),i=gr(i,s.thousandsSep),n=l<0?"-":"",n+=d?p.substr(0,d)+i:"",+a[1]<0&&!h?n="0":n+=p.substr(d).replace(/(\d{3})(?=\d)/g,"$1"+i),e?n+=t+c.slice(-e):+n==0&&(n="0"),a[1]&&+n!=0&&(n+="e"+a[1]),n}var Oc={dateFormat:kc,format:cn,helpers:hn,numberFormat:Ho},Tt=Oc;var xr;(function(l){l.rendererTypes={};let e;function t(n=e){return l.rendererTypes[n]||l.rendererTypes[e]}l.getRendererType=t;function i(n,r,s){l.rendererTypes[n]=r,(!e||s)&&(e=n,B.Renderer=r)}l.registerRendererType=i})(xr||(xr={}));var ne=xr;var{clamp:Ac,pick:Ec,pushUnique:Ic,stableSort:yr}=E,br;(function(l){function e(t,i,n){let r=t,s=r.reducedLen||i,o=(S,C)=>(C.rank||0)-(S.rank||0),a=(S,C)=>S.target-C.target,h=[],c=t.length,p=[],d=h.push,f,u,m,g=!0,x,y,b=0,v;for(f=c;f--;)b+=t[f].size;if(b>s){for(yr(t,o),v=t[0].rank===t[t.length-1].rank,m=v?c/2:-1,u=v?m:c-1;m&&b>s;)f=Math.floor(u),x=t[f],Ic(p,f)&&(b-=x.size),u+=m,v&&u>=t.length&&(m/=2,u=m);p.sort((S,C)=>C-S).forEach(S=>d.apply(h,t.splice(S,1)))}for(yr(t,a),t=t.map(S=>({size:S.size,targets:[S.target],align:Ec(S.align,.5)}));g;){for(f=t.length;f--;)x=t[f],y=(Math.min.apply(0,x.targets)+Math.max.apply(0,x.targets))/2,x.pos=Ac(y-x.size*x.align,0,i-x.size);for(f=t.length,g=!1;f--;)f>0&&t[f-1].pos+t[f-1].size>t[f].pos&&(t[f-1].size+=t[f].size,t[f-1].targets=t[f-1].targets.concat(t[f].targets),t[f-1].align=.5,t[f-1].pos+t[f-1].size>i&&(t[f-1].pos=i-t[f-1].size),t.splice(f,1),g=!0)}return d.apply(r,h),f=0,t.some(S=>{let C=0;return(S.targets||[]).some(()=>(r[f].pos=S.pos+C,typeof n<"u"&&Math.abs(r[f].pos-r[f].target)>n?(r.slice(0,f+1).forEach(D=>delete D.pos),r.reducedLen=(r.reducedLen||i)-i*.1,r.reducedLen>i*.1&&e(r,i,n),!0):(C+=r[f].size,f++,!1)))}),yr(r,a),r}l.distribute=e})(br||(br={}));var Ce=br;var{animate:Lc,animObject:_c,stop:zo}=lt,{deg2rad:Yo,doc:li,svg:Bc,SVG_NS:dn,win:Rc}=B,{addEvent:Wc,attr:vr,createElement:Nc,crisp:fn,css:Xo,defined:re,erase:Fc,extend:wi,fireEvent:Sr,isArray:Vo,isFunction:Go,isObject:Hc,isString:jo,merge:Cr,objectEach:hi,pick:Qt,pInt:pn,pushUnique:zc,replaceNested:Yc,syncTimeout:Xc,uniqueKey:Uo}=E,Ft=(()=>{class l{_defaultGetter(t){let i=Qt(this[t+"Value"],this[t],this.element?this.element.getAttribute(t):null,0);return/^-?[\d\.]+$/.test(i)&&(i=parseFloat(i)),i}_defaultSetter(t,i,n){n.setAttribute(i,t)}add(t){let i=this.renderer,n=this.element,r;return t&&(this.parentGroup=t),typeof this.textStr<"u"&&this.element.nodeName==="text"&&i.buildText(this),this.added=!0,(!t||t.handleZ||this.zIndex)&&(r=this.zIndexSetter()),r||(t?t.element:i.box).appendChild(n),this.onAdd&&this.onAdd(),this}addClass(t,i){let n=i?"":this.attr("class")||"";return t=(t||"").split(/ /g).reduce(function(r,s){return n.indexOf(s)===-1&&r.push(s),r},n?[n]:[]).join(" "),t!==n&&this.attr("class",t),this}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(t,i,n,r=!0){let s={},o=this.renderer,a=o.alignedObjects,h=!!t,c,p,d,f;t?(this.alignOptions=t,this.alignByTranslate=i,this.alignTo=n):(t=this.alignOptions||{},i=this.alignByTranslate,n=this.alignTo);let u=!n||jo(n)?n||"renderer":void 0;u&&(h&&zc(a,this),n=void 0);let m=Qt(n,o[u],o),g=t.align,x=t.verticalAlign;return c=(m.x||0)+(t.x||0),p=(m.y||0)+(t.y||0),g==="right"?d=1:g==="center"&&(d=2),d&&(c+=((m.width||0)-(t.width||0))/d),s[i?"translateX":"x"]=Math.round(c),x==="bottom"?f=1:x==="middle"&&(f=2),f&&(p+=((m.height||0)-(t.height||0))/f),s[i?"translateY":"y"]=Math.round(p),r&&(this[this.placed?"animate":"attr"](s),this.placed=!0),this.alignAttr=s,this}alignSetter(t){let i={left:"start",center:"middle",right:"end"};i[t]&&(this.alignValue=t,this.element.setAttribute("text-anchor",i[t]))}animate(t,i,n){let r=_c(Qt(i,this.renderer.globalAnimation,!0)),s=r.defer;return li.hidden&&(r.duration=0),r.duration!==0?(n&&(r.complete=n),Xc(()=>{this.element&&Lc(this,t,r)},s)):(this.attr(t,void 0,n||r.complete),hi(t,function(o,a){r.step&&r.step.call(this,o,{prop:a,pos:1,elem:this})},this)),this}applyTextOutline(t){let i=this.element,n=t.indexOf("contrast")!==-1,r={};n&&(r.textOutline=t=t.replace(/contrast/g,this.renderer.getContrast(i.style.fill)));let s=t.split(" "),o=s[s.length-1],a=s[0];if(a&&a!=="none"&&B.svg){this.fakeTS=!0,a=a.replace(/(^[\d\.]+)(.*?)$/g,function(f,u,m){return 2*Number(u)+m}),this.removeTextOutline();let h=li.createElementNS(dn,"tspan");vr(h,{class:"highcharts-text-outline",fill:o,stroke:o,"stroke-width":a,"stroke-linejoin":"round"});let c=i.querySelector("textPath")||i;[].forEach.call(c.childNodes,f=>{let u=f.cloneNode(!0);u.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(m=>u.removeAttribute(m)),h.appendChild(u)});let p=0;[].forEach.call(c.querySelectorAll("text tspan"),f=>{p+=Number(f.getAttribute("dy"))});let d=li.createElementNS(dn,"tspan");d.textContent="\u200B",vr(d,{x:Number(i.getAttribute("x")),dy:-p}),h.appendChild(d),c.insertBefore(h,c.firstChild)}}attr(t,i,n,r){let{element:s}=this,o=l.symbolCustomAttribs,a,h,c=this,p,d;return typeof t=="string"&&typeof i<"u"&&(a=t,t={},t[a]=i),typeof t=="string"?c=(this[t+"Getter"]||this._defaultGetter).call(this,t,s):(hi(t,function(u,m){p=!1,r||zo(this,m),this.symbolName&&o.indexOf(m)!==-1&&(h||(this.symbolAttr(t),h=!0),p=!0),this.rotation&&(m==="x"||m==="y")&&(this.doTransform=!0),p||(d=this[m+"Setter"]||this._defaultSetter,d.call(this,u,m,s))},this),this.afterSetters()),n&&n.call(this),c}clip(t){if(t&&!t.clipPath){let i=Uo()+"-",n=this.renderer.createElement("clipPath").attr({id:i}).add(this.renderer.defs);wi(t,{clipPath:n,id:i,count:0}),t.add(n)}return this.attr("clip-path",t?`url(${this.renderer.url}#${t.id})`:"none")}crisp(t,i){i=Math.round(i||t.strokeWidth||0);let n=t.x||this.x||0,r=t.y||this.y||0,s=(t.width||this.width||0)+n,o=(t.height||this.height||0)+r,a=fn(n,i),h=fn(r,i),c=fn(s,i),p=fn(o,i);return wi(t,{x:a,y:h,width:c-a,height:p-h}),re(t.strokeWidth)&&(t.strokeWidth=i),t}complexColor(t,i,n){let r=this.renderer,s,o,a,h,c,p,d,f,u,m,g=[],x;Sr(this.renderer,"complexColor",{args:arguments},function(){if(t.radialGradient?o="radialGradient":t.linearGradient&&(o="linearGradient"),o){if(a=t[o],c=r.gradients,p=t.stops,u=n.radialReference,Vo(a)&&(t[o]=a={x1:a[0],y1:a[1],x2:a[2],y2:a[3],gradientUnits:"userSpaceOnUse"}),o==="radialGradient"&&u&&!re(a.gradientUnits)&&(h=a,a=Cr(a,r.getRadialAttr(u,h),{gradientUnits:"userSpaceOnUse"})),hi(a,function(y,b){b!=="id"&&g.push(b,y)}),hi(p,function(y){g.push(y)}),g=g.join(","),c[g])m=c[g].attr("id");else{a.id=m=Uo();let y=c[g]=r.createElement(o).attr(a).add(r.defs);y.radAttr=h,y.stops=[],p.forEach(function(b){b[1].indexOf("rgba")===0?(s=Bt.parse(b[1]),d=s.get("rgb"),f=s.get("a")):(d=b[1],f=1);let v=r.createElement("stop").attr({offset:b[0],"stop-color":d,"stop-opacity":f}).add(y);y.stops.push(v)})}x="url("+r.url+"#"+m+")",n.setAttribute(i,x),n.gradient=g,t.toString=function(){return x}}})}css(t){let i=this.styles,n={},r=this.element,s,o=!i;if(i&&hi(t,function(a,h){i&&i[h]!==a&&(n[h]=a,o=!0)}),o){i&&(t=wi(i,n)),t.width===null||t.width==="auto"?delete this.textWidth:r.nodeName.toLowerCase()==="text"&&t.width&&(s=this.textWidth=pn(t.width)),wi(this.styles,t),s&&!Bc&&this.renderer.forExport&&delete t.width;let a=Cr(t);r.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","width"].forEach(h=>a&&delete a[h]),a.color&&(a.fill=a.color)),Xo(r,a)}return this.added&&(this.element.nodeName==="text"&&this.renderer.buildText(this),t.textOutline&&this.applyTextOutline(t.textOutline)),this}dashstyleSetter(t){let i,n=this["stroke-width"];if(n==="inherit"&&(n=1),t=t&&t.toLowerCase(),t){let r=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(i=r.length;i--;)r[i]=""+pn(r[i])*Qt(n,NaN);t=r.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",t)}}destroy(){let t=this,i=t.element||{},n=t.renderer,r=i.ownerSVGElement,s=i.nodeName==="SPAN"&&t.parentGroup||void 0,o,a;if(i.onclick=i.onmouseout=i.onmouseover=i.onmousemove=i.point=null,zo(t),t.clipPath&&r){let h=t.clipPath;[].forEach.call(r.querySelectorAll("[clip-path],[CLIP-PATH]"),function(c){c.getAttribute("clip-path").indexOf(h.element.id)>-1&&c.removeAttribute("clip-path")}),t.clipPath=h.destroy()}if(t.connector=t.connector?.destroy(),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(i);s&&s.div&&s.div.childNodes.length===0;)o=s.parentGroup,t.safeRemoveChild(s.div),delete s.div,s=o;t.alignOptions&&Fc(n.alignedObjects,t),hi(t,function(h,c){t[c]&&t[c].parentGroup===t&&t[c].destroy&&t[c].destroy(),delete t[c]})}dSetter(t,i,n){Vo(t)&&(typeof t[0]=="string"&&(t=this.renderer.pathToSegments(t)),this.pathArray=t,t=t.reduce((r,s,o)=>!s||!s.join?(s||"").toString():(o?r+" ":"")+s.join(" "),"")),/(NaN| {2}|^$)/.test(t)&&(t="M 0 0"),this[i]!==t&&(n.setAttribute(i,t),this[i]=t)}fillSetter(t,i,n){typeof t=="string"?n.setAttribute(i,t):t&&this.complexColor(t,i,n)}hrefSetter(t,i,n){n.setAttributeNS("http://www.w3.org/1999/xlink",i,t)}getBBox(t,i){let n=this,{alignValue:r,element:s,renderer:o,styles:a,textStr:h}=n,{cache:c,cacheKeys:p}=o,d=s.namespaceURI===n.SVG_NS,f=Qt(i,n.rotation,0),u=o.styledMode?s&&l.prototype.getStyle.call(s,"font-size"):a.fontSize,m,g,x,y;if(re(h)&&(y=h.toString(),y.indexOf("<")===-1&&(y=y.replace(/\d/g,"0")),y+=["",o.rootFontSize,u,f,n.textWidth,r,a.textOverflow,a.fontWeight].join(",")),y&&!t&&(m=c[y]),!m||m.polygon){if(d||o.forExport){try{x=this.fakeTS&&function(v){let S=s.querySelector(".highcharts-text-outline");S&&Xo(S,{display:v})},Go(x)&&x("none"),m=s.getBBox?wi({},s.getBBox()):{width:s.offsetWidth,height:s.offsetHeight,x:0,y:0},Go(x)&&x("")}catch{}(!m||m.width<0)&&(m={x:0,y:0,width:0,height:0})}else m=n.htmlGetBBox();g=m.height,d&&(m.height=g={"11px,17":14,"13px,20":16}[`${u||""},${Math.round(g)}`]||g),f&&(m=this.getRotatedBox(m,f));let b={bBox:m};Sr(this,"afterGetBBox",b),m=b.bBox}if(y&&(h===""||m.height>0)){for(;p.length>250;)delete c[p.shift()];c[y]||p.push(y),c[y]=m}return m}getRotatedBox(t,i){let{x:n,y:r,width:s,height:o}=t,{alignValue:a,translateY:h,rotationOriginX:c=0,rotationOriginY:p=0}=this,d={right:1,center:.5}[a||0]||0,f=Number(this.element.getAttribute("y")||0)-(h?0:r),u=i*Yo,m=(i-90)*Yo,g=Math.cos(u),x=Math.sin(u),y=s*g,b=s*x,v=Math.cos(m),S=Math.sin(m),[[C,D],[T,M]]=[c,p].map(it=>[it-it*g,it*x]),O=n+d*(s-y)+C+M,I=r+f-d*b-D+T,R=O+f*v,L=R+y,F=L-o*v,z=F-y,W=I+f*S,q=W+b,et=q-o*S,rt=et-b,G=Math.min(R,L,F,z),tt=Math.min(W,q,et,rt),U=Math.max(R,L,F,z)-G,J=Math.max(W,q,et,rt)-tt;return{x:G,y:tt,width:U,height:J,polygon:[[R,W],[L,q],[F,et],[z,rt]]}}getStyle(t){return Rc.getComputedStyle(this.element||this,"").getPropertyValue(t)}hasClass(t){return(""+this.attr("class")).split(" ").indexOf(t)!==-1}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(t,i){this.onEvents={},this.opacity=1,this.SVG_NS=dn,this.element=i==="span"||i==="body"?Nc(i):li.createElementNS(this.SVG_NS,i),this.renderer=t,this.styles={},Sr(this,"afterInit")}on(t,i){let{onEvents:n}=this;return n[t]&&n[t](),n[t]=Wc(this.element,t,i),this}opacitySetter(t,i,n){let r=Number(Number(t).toFixed(3));this.opacity=r,n.setAttribute(i,r)}reAlign(){this.alignOptions?.width&&this.alignOptions.align!=="left"&&(this.alignOptions.width=this.getBBox().width,this.placed=!1,this.align())}removeClass(t){return this.attr("class",(""+this.attr("class")).replace(jo(t)?new RegExp(`(^| )${t}( |$)`):t," ").replace(/ +/g," ").trim())}removeTextOutline(){let t=this.element.querySelector("tspan.highcharts-text-outline");t&&this.safeRemoveChild(t)}safeRemoveChild(t){let i=t.parentNode;i&&i.removeChild(t)}setRadialReference(t){let i=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=t,i&&i.radAttr&&i.animate(this.renderer.getRadialAttr(t,i.radAttr)),this}shadow(t){let{renderer:i}=this,n=Cr(this.parentGroup?.rotation===90?{offsetX:-1,offsetY:-1}:{},Hc(t)?t:{}),r=i.shadowDefinition(n);return this.attr({filter:t?`url(${i.url}#${r})`:"none"})}show(t=!0){return this.attr({visibility:t?"inherit":"visible"})}"stroke-widthSetter"(t,i,n){this[i]=t,n.setAttribute(i,t)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let t=this.getStyle("stroke-width"),i=0,n;return/px$/.test(t)?i=pn(t):t!==""&&(n=li.createElementNS(dn,"rect"),vr(n,{width:t,"stroke-width":0}),this.element.parentNode.appendChild(n),i=n.getBBox().width,n.parentNode.removeChild(n)),i}symbolAttr(t){let i=this;l.symbolCustomAttribs.forEach(function(n){i[n]=Qt(t[n],i[n])}),i.attr({d:i.renderer.symbols[i.symbolName](i.x,i.y,i.width,i.height,i)})}textSetter(t){t!==this.textStr&&(delete this.textPxLength,this.textStr=t,this.added&&this.renderer.buildText(this),this.reAlign())}titleSetter(t){let i=this.element,n=i.getElementsByTagName("title")[0]||li.createElementNS(this.SVG_NS,"title");i.insertBefore?i.insertBefore(n,i.firstChild):i.appendChild(n),n.textContent=Yc(Qt(t,""),[/<[^>]*>/g,""]).replace(/</g,"<").replace(/>/g,">")}toFront(){let t=this.element;return t.parentNode.appendChild(t),this}translate(t,i){return this.attr({translateX:t,translateY:i})}updateTransform(t="transform"){let{element:i,matrix:n,rotation:r=0,rotationOriginX:s,rotationOriginY:o,scaleX:a,scaleY:h,translateX:c=0,translateY:p=0}=this,d=["translate("+c+","+p+")"];re(n)&&d.push("matrix("+n.join(",")+")"),r&&(d.push("rotate("+r+" "+Qt(s,i.getAttribute("x"),0)+" "+Qt(o,i.getAttribute("y")||0)+")"),this.text?.element.tagName==="SPAN"&&this.text.attr({rotation:r,rotationOriginX:(s||0)-this.padding,rotationOriginY:(o||0)-this.padding})),(re(a)||re(h))&&d.push("scale("+Qt(a,1)+" "+Qt(h,1)+")"),d.length&&!(this.text||this).textPath&&i.setAttribute(t,d.join(" "))}visibilitySetter(t,i,n){t==="inherit"?n.removeAttribute(i):this[i]!==t&&n.setAttribute(i,t),this[i]=t}xGetter(t){return this.element.nodeName==="circle"&&(t==="x"?t="cx":t==="y"&&(t="cy")),this._defaultGetter(t)}zIndexSetter(t,i){let n=this.renderer,r=this.parentGroup,s=r||n,o=s.element||n.box,a=this.element,h=o===n.box,c,p,d,f=!1,u,m=this.added,g;if(re(t)?(a.setAttribute("data-z-index",t),t=+t,this[i]===t&&(m=!1)):re(this[i])&&a.removeAttribute("data-z-index"),this[i]=t,m){for(t=this.zIndex,t&&r&&(r.handleZ=!0),c=o.childNodes,g=c.length-1;g>=0&&!f;g--)p=c[g],d=p.getAttribute("data-z-index"),u=!re(d),p!==a&&(t<0&&u&&!h&&!g?(o.insertBefore(a,c[g]),f=!0):(pn(d)<=t||u&&(!re(t)||t>=0))&&(o.insertBefore(a,c[g+1]),f=!0));f||(o.insertBefore(a,c[h?3:0]),f=!0)}return f}}return l.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],l})();Ft.prototype.strokeSetter=Ft.prototype.fillSetter;Ft.prototype.yGetter=Ft.prototype.xGetter;Ft.prototype.matrixSetter=Ft.prototype.rotationOriginXSetter=Ft.prototype.rotationOriginYSetter=Ft.prototype.rotationSetter=Ft.prototype.scaleXSetter=Ft.prototype.scaleYSetter=Ft.prototype.translateXSetter=Ft.prototype.translateYSetter=Ft.prototype.verticalAlignSetter=function(l,e){this[e]=l,this.doTransform=!0};var Rt=Ft;var{defined:Dr,extend:Vc,isNumber:Pi,merge:Gc,pick:Mi,removeEvent:$o}=E,jc=(()=>{class l extends Rt{constructor(t,i,n,r,s,o,a,h,c,p){super(t,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=i,this.x=n,this.y=r,this.anchorX=o,this.anchorY=a,this.baseline=c,this.className=p,this.addClass(p==="button"?"highcharts-no-tooltip":"highcharts-label"),p&&this.addClass("highcharts-"+p),this.text=t.text(void 0,0,0,h).attr({zIndex:1});let d;typeof s=="string"&&(d=/^url\((.*?)\)$/.test(s),(d||this.renderer.symbols[s])&&(this.symbolKey=s)),this.bBox=l.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=t.styledMode||d,this.deferredAttr={},this.alignFactor=0}alignSetter(t){let i={left:0,center:.5,right:1}[t];i!==this.alignFactor&&(this.alignFactor=i,this.bBox&&Pi(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(t,i){this.anchorX=t,this.boxAttr(i,Math.round(t)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(t,i){this.anchorY=t,this.boxAttr(i,t-this.ySetting)}boxAttr(t,i){this.box?this.box.attr(t,i):this.deferredAttr[t]=i}css(t){if(t){let i={};t=Gc(t),l.textProps.forEach(n=>{typeof t[n]<"u"&&(i[n]=t[n],delete t[n])}),this.text.css(i),"fontSize"in i||"fontWeight"in i?this.updateTextPadding():("width"in i||"textOverflow"in i)&&this.updateBoxSize()}return Rt.prototype.css.call(this,t)}destroy(){$o(this.element,"mouseenter"),$o(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),Rt.prototype.destroy.call(this)}fillSetter(t,i){t&&(this.needsBox=!0),this.fill=t,this.boxAttr(i,t)}getBBox(t,i){this.textStr&&this.bBox.width===0&&this.bBox.height===0&&this.updateBoxSize();let{padding:n,height:r=0,translateX:s=0,translateY:o=0,width:a=0}=this,h=Mi(this.paddingLeft,n),c=i??(this.rotation||0),p={width:a,height:r,x:s+this.bBox.x-h,y:o+this.bBox.y-n+this.baselineOffset};return c&&(p=this.getRotatedBox(p,c)),p}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:Mi(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&Dr(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(t,i){Pi(t)?t!==this[i]&&(this[i]=t,this.updateTextPadding()):this[i]=void 0}rSetter(t,i){this.boxAttr(i,t)}strokeSetter(t,i){this.stroke=t,this.boxAttr(i,t)}"stroke-widthSetter"(t,i){t&&(this.needsBox=!0),this["stroke-width"]=t,this.boxAttr(i,t)}"text-alignSetter"(t){this.textAlign=t}textSetter(t){typeof t<"u"&&this.text.attr({text:t}),this.updateTextPadding(),this.reAlign()}updateBoxSize(){let t=this.text,i={},n=this.padding,r=this.bBox=(!Pi(this.widthSetting)||!Pi(this.heightSetting)||this.textAlign)&&Dr(t.textStr)?t.getBBox(void 0,0):l.emptyBBox,s;this.width=this.getPaddedWidth(),this.height=(this.heightSetting||r.height||0)+2*n;let o=this.renderer.fontMetrics(t);if(this.baselineOffset=n+Math.min((this.text.firstLineMetrics||o).b,r.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-o.h)/2),this.needsBox&&!t.textPath){if(!this.box){let a=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();a.addClass((this.className==="button"?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),a.add(this)}s=this.getCrispAdjust(),i.x=s,i.y=(this.baseline?-this.baselineOffset:0)+s,i.width=Math.round(this.width),i.height=Math.round(this.height),this.box.attr(Vc(i,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let t=this.text;if(!t.textPath){this.updateBoxSize();let i=this.baseline?0:this.baselineOffset,n=Mi(this.paddingLeft,this.padding);Dr(this.widthSetting)&&this.bBox&&(this.textAlign==="center"||this.textAlign==="right")&&(n+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(n!==t.x||i!==t.y)&&(t.attr("x",n),t.hasBoxWidthChanged&&(this.bBox=t.getBBox(!0)),typeof i<"u"&&t.attr("y",i)),t.x=n,t.y=i}}widthSetter(t){this.widthSetting=Pi(t)?t:void 0,this.doUpdate=!0}getPaddedWidth(){let t=this.padding,i=Mi(this.paddingLeft,t),n=Mi(this.paddingRight,t);return(this.widthSetting||this.bBox.width||0)+i+n}xSetter(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)}ySetter(t){this.ySetting=this.y=Math.round(t),this.attr("translateY",this.ySetting)}}return l.emptyBBox={width:0,height:0,x:0,y:0},l.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],l})(),qo=jc;var{defined:Ko,isNumber:Uc,pick:ki}=E;function Qo(l,e,t,i,n){let r=[];if(n){let s=n.start||0,o=ki(n.r,t),a=ki(n.r,i||t),h=2e-4/(n.borderRadius?1:Math.max(o,1)),c=Math.abs((n.end||0)-s-2*Math.PI)<h,p=(n.end||0)-(c?h:0),d=n.innerR,f=ki(n.open,c),u=Math.cos(s),m=Math.sin(s),g=Math.cos(p),x=Math.sin(p),y=ki(n.longArc,p-s-Math.PI<h?0:1),b=["A",o,a,0,y,ki(n.clockwise,1),l+o*g,e+a*x];b.params={start:s,end:p,cx:l,cy:e},r.push(["M",l+o*u,e+a*m],b),Ko(d)&&(b=["A",d,d,0,y,Ko(n.clockwise)?1-n.clockwise:0,l+d*u,e+d*m],b.params={start:p,end:s,cx:l,cy:e},r.push(f?["M",l+d*g,e+d*x]:["L",l+d*g,e+d*x],b)),f||r.push(["Z"])}return r}function $c(l,e,t,i,n){let o=Math.min(n&&n.r||0,t,i),a=o+6,h=n&&n.anchorX,c=n&&n.anchorY||0,p=Tr(l,e,t,i,{r:o});if(!Uc(h)||h<t&&h>0&&c<i&&c>0)return p;if(l+h>t-a)if(c>e+a&&c<e+i-a)p.splice(3,1,["L",l+t,c-6],["L",l+t+6,c],["L",l+t,c+6],["L",l+t,e+i-o]);else if(h<t){let d=c<e+a,f=d?e:e+i,u=d?2:5;p.splice(u,0,["L",h,c],["L",l+t-o,f])}else p.splice(3,1,["L",l+t,i/2],["L",h,c],["L",l+t,i/2],["L",l+t,e+i-o]);else if(l+h<a)if(c>e+a&&c<e+i-a)p.splice(7,1,["L",l,c+6],["L",l-6,c],["L",l,c-6],["L",l,e+o]);else if(h>0){let d=c<e+a,f=d?e:e+i,u=d?1:6;p.splice(u,0,["L",h,c],["L",l+o,f])}else p.splice(7,1,["L",l,i/2],["L",h,c],["L",l,i/2],["L",l,e+o]);else c>i&&h<t-a?p.splice(5,1,["L",h+6,e+i],["L",h,e+i+6],["L",h-6,e+i],["L",l+o,e+i]):c<0&&h>a&&p.splice(1,1,["L",h-6,e],["L",h,e-6],["L",h+6,e],["L",t-o,e]);return p}function qc(l,e,t,i){return Qo(l+t/2,e+i/2,t/2,i/2,{start:Math.PI*.5,end:Math.PI*2.5,open:!1})}function Kc(l,e,t,i){return[["M",l+t/2,e],["L",l+t,e+i/2],["L",l+t/2,e+i],["L",l,e+i/2],["Z"]]}function Zo(l,e,t,i,n){return n&&n.r?Tr(l,e,t,i,n):[["M",l,e],["L",l+t,e],["L",l+t,e+i],["L",l,e+i],["Z"]]}function Tr(l,e,t,i,n){let r=n?.r||0;return[["M",l+r,e],["L",l+t-r,e],["A",r,r,0,0,1,l+t,e+r],["L",l+t,e+i-r],["A",r,r,0,0,1,l+t-r,e+i],["L",l+r,e+i],["A",r,r,0,0,1,l,e+i-r],["L",l,e+r],["A",r,r,0,0,1,l+r,e],["Z"]]}function Zc(l,e,t,i){return[["M",l+t/2,e],["L",l+t,e+i],["L",l,e+i],["Z"]]}function Qc(l,e,t,i){return[["M",l,e],["L",l+t,e],["L",l+t/2,e+i],["Z"]]}var Jc={arc:Qo,callout:$c,circle:qc,diamond:Kc,rect:Zo,roundedRect:Tr,square:Zo,triangle:Zc,"triangle-down":Qc},un=Jc;var{doc:wr,SVG_NS:td,win:Jo}=B,{attr:Pr,extend:ed,fireEvent:id,isString:nd,objectEach:rd,pick:sd}=E,Mr=class{constructor(e){let t=e.styles;this.renderer=e.renderer,this.svgElement=e,this.width=e.textWidth,this.textLineHeight=t&&t.lineHeight,this.textOutline=t&&t.textOutline,this.ellipsis=!!(t&&t.textOverflow==="ellipsis"),this.noWrap=!!(t&&t.whiteSpace==="nowrap")}buildSVG(){let e=this.svgElement,t=e.element,i=e.renderer,n=sd(e.textStr,"").toString(),r=n.indexOf("<")!==-1,s=t.childNodes,o=!e.added&&i.box,a=/<br.*?>/g,h=[n,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,e.getStyle("font-size"),this.width].join(",");if(h!==e.textCache){e.textCache=h,delete e.actualWidth;for(let c=s.length;c--;)t.removeChild(s[c]);if(!r&&!this.ellipsis&&!this.width&&!e.textPath&&(n.indexOf(" ")===-1||this.noWrap&&!a.test(n)))t.appendChild(wr.createTextNode(this.unescapeEntities(n)));else if(n!==""){o&&o.appendChild(t);let c=new Mt(n);this.modifyTree(c.nodes),c.addToDOM(t),this.modifyDOM(),this.ellipsis&&(t.textContent||"").indexOf("\u2026")!==-1&&e.attr("title",this.unescapeEntities(e.textStr||"",["<",">"])),o&&o.removeChild(t)}nd(this.textOutline)&&e.applyTextOutline&&e.applyTextOutline(this.textOutline)}}modifyDOM(){let e=this.svgElement,t=Pr(e.element,"x");e.firstLineMetrics=void 0;let i;for(;(i=e.element.firstChild)&&/^[\s\u200B]*$/.test(i.textContent||" ");)e.element.removeChild(i);[].forEach.call(e.element.querySelectorAll("tspan.highcharts-br"),(o,a)=>{o.nextSibling&&o.previousSibling&&(a===0&&o.previousSibling.nodeType===1&&(e.firstLineMetrics=e.renderer.fontMetrics(o.previousSibling)),Pr(o,{dy:this.getLineHeight(o.nextSibling),x:t}))});let n=this.width||0;if(!n)return;let r=(o,a)=>{let h=o.textContent||"",c=h.replace(/([^\^])-/g,"$1- ").split(" "),p=!this.noWrap&&(c.length>1||e.element.childNodes.length>1),d=this.getLineHeight(a),f=0,u=e.actualWidth;if(this.ellipsis)h&&this.truncate(o,h,void 0,0,Math.max(0,n-.8*d),(m,g)=>m.substring(0,g)+"\u2026");else if(p){let m=[],g=[];for(;a.firstChild&&a.firstChild!==o;)g.push(a.firstChild),a.removeChild(a.firstChild);for(;c.length;)c.length&&!this.noWrap&&f>0&&(m.push(o.textContent||""),o.textContent=c.join(" ").replace(/- /g,"-")),this.truncate(o,void 0,c,f===0&&u||0,n,(x,y)=>c.slice(0,y).join(" ").replace(/- /g,"-")),u=e.actualWidth,f++;g.forEach(x=>{a.insertBefore(x,o)}),m.forEach(x=>{a.insertBefore(wr.createTextNode(x),o);let y=wr.createElementNS(td,"tspan");y.textContent="\u200B",Pr(y,{dy:d,x:t}),a.insertBefore(y,o)})}},s=o=>{[].slice.call(o.childNodes).forEach(h=>{h.nodeType===Jo.Node.TEXT_NODE?r(h,o):(h.className.baseVal.indexOf("highcharts-br")!==-1&&(e.actualWidth=0),s(h))})};s(e.element)}getLineHeight(e){let t=e.nodeType===Jo.Node.TEXT_NODE?e.parentElement:e;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(t||this.svgElement.element).h}modifyTree(e){let t=(i,n)=>{let{attributes:r={},children:s,style:o={},tagName:a}=i,h=this.renderer.styledMode;if(a==="b"||a==="strong"?h?r.class="highcharts-strong":o.fontWeight="bold":(a==="i"||a==="em")&&(h?r.class="highcharts-emphasized":o.fontStyle="italic"),o&&o.color&&(o.fill=o.color),a==="br"){r.class="highcharts-br",i.textContent="\u200B";let c=e[n+1];c&&c.textContent&&(c.textContent=c.textContent.replace(/^ +/gm,""))}else a==="a"&&s&&s.some(c=>c.tagName==="#text")&&(i.children=[{children:s,tagName:"tspan"}]);a!=="#text"&&a!=="a"&&(i.tagName="tspan"),ed(i,{attributes:r,style:o}),s&&s.filter(c=>c.tagName!=="#text").forEach(t)};e.forEach(t),id(this.svgElement,"afterModifyTree",{nodes:e})}truncate(e,t,i,n,r,s){let o=this.svgElement,{rotation:a}=o,h=[],c=i?1:0,p=(t||i||"").length,d=p,f,u,m=function(g,x){let y=x||g,b=e.parentNode;if(b&&typeof h[y]>"u"&&b.getSubStringLength)try{h[y]=n+b.getSubStringLength(0,i?y+1:y)}catch{}return h[y]};if(o.rotation=0,u=m(e.textContent.length),n+u>r){for(;c<=p;)d=Math.ceil((c+p)/2),i&&(f=s(i,d)),u=m(d,f&&f.length-1),c===p?c=p+1:u>r?p=d-1:c=d;p===0?e.textContent="":t&&p===t.length-1||(e.textContent=f||s(t||i,d))}i&&i.splice(0,d),o.actualWidth=u,o.rotation=a}unescapeEntities(e,t){return rd(this.renderer.escapes,function(i,n){(!t||t.indexOf(i)===-1)&&(e=e.toString().replace(new RegExp(i,"g"),n))}),e}},ta=Mr;var{defaultOptions:od}=Ct,{charts:ad,deg2rad:ea,doc:ci,isFirefox:ia,isMS:na,isWebKit:ld,noop:hd,SVG_NS:cd,symbolSizes:Oi,win:kr}=B,{addEvent:mn,attr:gn,createElement:dd,crisp:ra,css:xn,defined:ze,destroyObjectProperties:fd,extend:Ye,isArray:pd,isNumber:Ai,isObject:Ei,isString:ud,merge:Or,pick:Ar,pInt:md,replaceNested:gd,uniqueKey:xd}=E,Er,Ii=class{constructor(e,t,i,n,r,s,o){let a=this,h=a.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),c=h.element;o||h.css(this.getStyle(n||{})),e.appendChild(c),gn(e,"dir","ltr"),e.innerHTML.indexOf("xmlns")===-1&&gn(c,"xmlns",this.SVG_NS),this.box=c,this.boxWrapper=h,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(ci.createTextNode("Created with @product.name@ @product.version@")),this.defs=this.createElement("defs").add(),this.allowHTML=s,this.forExport=r,this.styledMode=o,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=h.getStyle("font-size"),a.setSize(t,i,!1);let d,f;ia&&e.getBoundingClientRect&&(d=function(){xn(e,{left:0,top:0}),f=e.getBoundingClientRect(),xn(e,{left:Math.ceil(f.left)-f.left+"px",top:Math.ceil(f.top)-f.top+"px"})},d(),a.unSubPixelFix=mn(kr,"resize",d))}definition(e){return new Mt([e]).addToDOM(this.defs.element)}getReferenceURL(){if((ia||ld)&&ci.getElementsByTagName("base").length){if(!ze(Er)){let e=xd(),i=new Mt([{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(ci.body);xn(i,{position:"fixed",top:0,left:0,zIndex:9e5});let n=ci.elementFromPoint(6,6);Er=(n&&n.id)==="hitme",ci.body.removeChild(i)}if(Er)return gd(kr.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(e){return this.style=Ye({fontFamily:"Helvetica, Arial, sans-serif",fontSize:"1rem"},e),this.style}setStyle(e){this.boxWrapper.css(this.getStyle(e))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let e=this,t=e.defs;return e.box=null,e.boxWrapper=e.boxWrapper.destroy(),fd(e.gradients||{}),e.gradients=null,e.defs=t.destroy(),e.unSubPixelFix&&e.unSubPixelFix(),e.alignedObjects=null,null}createElement(e){return new this.Element(this,e)}getRadialAttr(e,t){return{cx:e[0]-e[2]/2+(t.cx||0)*e[2],cy:e[1]-e[2]/2+(t.cy||0)*e[2],r:(t.r||0)*e[2]}}shadowDefinition(e){let t=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(e).map(n=>`${n}-${e[n]}`)].join("-").toLowerCase().replace(/[^a-z\d\-]/g,""),i=Or({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},e);return this.defs.element.querySelector(`#${t}`)||this.definition({tagName:"filter",attributes:{id:t,filterUnits:i.filterUnits},children:this.getShadowFilterContent(i)}),t}getShadowFilterContent(e){return[{tagName:"feDropShadow",attributes:{dx:e.offsetX,dy:e.offsetY,"flood-color":e.color,"flood-opacity":Math.min(e.opacity*5,1),stdDeviation:e.width/2}}]}buildText(e){new ta(e).buildSVG()}getContrast(e){let t=Bt.parse(e).rgba.map(n=>{let r=n/255;return r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4)}),i=.2126*t[0]+.7152*t[1]+.0722*t[2];return 1.05/(i+.05)>(i+.05)/.05?"#FFFFFF":"#000000"}button(e,t,i,n,r={},s,o,a,h,c){let p=this.label(e,t,i,h,void 0,void 0,c,void 0,"button"),d=this.styledMode,f=arguments,u=0;r=Or(od.global.buttonTheme,r),d&&(delete r.fill,delete r.stroke,delete r["stroke-width"]);let m=r.states||{},g=r.style||{};delete r.states,delete r.style;let x=[Mt.filterUserAttributes(r)],y=[g];return d||["hover","select","disabled"].forEach((b,v)=>{x.push(Or(x[0],Mt.filterUserAttributes(f[v+5]||m[b]||{}))),y.push(x[v+1].style),delete x[v+1].style}),mn(p.element,na?"mouseover":"mouseenter",function(){u!==3&&p.setState(1)}),mn(p.element,na?"mouseout":"mouseleave",function(){u!==3&&p.setState(u)}),p.setState=(b=0)=>{if(b!==1&&(p.state=u=b),p.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][b]),!d){p.attr(x[b]);let v=y[b];Ei(v)&&p.css(v)}},p.attr(x[0]),d||(p.css(Ye({cursor:"default"},g)),c&&p.text.css({pointerEvents:"none"})),p.on("touchstart",b=>b.stopPropagation()).on("click",function(b){u!==3&&n.call(p,b)})}crispLine(e,t){let[i,n]=e;return ze(i[1])&&i[1]===n[1]&&(i[1]=n[1]=ra(i[1],t)),ze(i[2])&&i[2]===n[2]&&(i[2]=n[2]=ra(i[2],t)),e}path(e){let t=this.styledMode?{}:{fill:"none"};return pd(e)?t.d=e:Ei(e)&&Ye(t,e),this.createElement("path").attr(t)}circle(e,t,i){let n=Ei(e)?e:typeof e>"u"?{}:{x:e,y:t,r:i},r=this.createElement("circle");return r.xSetter=r.ySetter=function(s,o,a){a.setAttribute("c"+o,s)},r.attr(n)}arc(e,t,i,n,r,s){let o;Ei(e)?(o=e,t=o.y,i=o.r,n=o.innerR,r=o.start,s=o.end,e=o.x):o={innerR:n,start:r,end:s};let a=this.symbol("arc",e,t,i,i,o);return a.r=i,a}rect(e,t,i,n,r,s){let o=Ei(e)?e:typeof e>"u"?{}:{x:e,y:t,r,width:Math.max(i||0,0),height:Math.max(n||0,0)},a=this.createElement("rect");return this.styledMode||(typeof s<"u"&&(o["stroke-width"]=s,Ye(o,a.crisp(o))),o.fill="none"),a.rSetter=function(h,c,p){a.r=h,gn(p,{rx:h,ry:h})},a.rGetter=function(){return a.r||0},a.attr(o)}roundedRect(e){return this.symbol("roundedRect").attr(e)}setSize(e,t,i){let n=this;n.width=e,n.height=t,n.boxWrapper.animate({width:e,height:t},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:Ar(i,!0)?void 0:0}),n.alignElements()}g(e){let t=this.createElement("g");return e?t.attr({class:"highcharts-"+e}):t}image(e,t,i,n,r,s){let o={preserveAspectRatio:"none"};Ai(t)&&(o.x=t),Ai(i)&&(o.y=i),Ai(n)&&(o.width=n),Ai(r)&&(o.height=r);let a=this.createElement("image").attr(o),h=function(c){a.attr({href:e}),s.call(a,c)};if(s){a.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let c=new kr.Image;mn(c,"load",h),c.src=e,c.complete&&h({})}else a.attr({href:e});return a}symbol(e,t,i,n,r,s){let o=this,a=/^url\((.*?)\)$/,h=a.test(e),c=!h&&(this.symbols[e]?e:"circle"),p=c&&this.symbols[c],d,f,u,m;if(p)typeof t=="number"&&(f=p.call(this.symbols,t||0,i||0,n||0,r||0,s)),d=this.path(f),o.styledMode||d.attr("fill","none"),Ye(d,{symbolName:c||void 0,x:t,y:i,width:n,height:r}),s&&Ye(d,s);else if(h){u=e.match(a)[1];let g=d=this.image(u);g.imgwidth=Ar(s&&s.width,Oi[u]&&Oi[u].width),g.imgheight=Ar(s&&s.height,Oi[u]&&Oi[u].height),m=x=>x.attr({width:x.width,height:x.height}),["width","height"].forEach(x=>{g[`${x}Setter`]=function(y,b){this[b]=y;let{alignByTranslate:v,element:S,width:C,height:D,imgwidth:T,imgheight:M}=this,O=b==="width"?T:M,I=1;s&&s.backgroundSize==="within"&&C&&D&&T&&M?(I=Math.min(C/T,D/M),gn(S,{width:Math.round(T*I),height:Math.round(M*I)})):S&&O&&S.setAttribute(b,O),!v&&T&&M&&this.translate(((C||0)-T*I)/2,((D||0)-M*I)/2)}}),ze(t)&&g.attr({x:t,y:i}),g.isImg=!0,g.symbolUrl=e,ze(g.imgwidth)&&ze(g.imgheight)?m(g):(g.attr({width:0,height:0}),dd("img",{onload:function(){let x=ad[o.chartIndex];this.width===0&&(xn(this,{position:"absolute",top:"-999em"}),ci.body.appendChild(this)),Oi[u]={width:this.width,height:this.height},g.imgwidth=this.width,g.imgheight=this.height,g.element&&m(g),this.parentNode&&this.parentNode.removeChild(this),o.imgCount--,!o.imgCount&&x&&!x.hasLoaded&&x.onload()},src:u}),this.imgCount++)}return d}clipRect(e,t,i,n){return this.rect(e,t,i,n,0)}text(e,t,i,n){let r=this,s={};if(n&&(r.allowHTML||!r.forExport))return r.html(e,t,i);s.x=Math.round(t||0),i&&(s.y=Math.round(i)),ze(e)&&(s.text=e);let o=r.createElement("text").attr(s);return(!n||r.forExport&&!r.allowHTML)&&(o.xSetter=function(a,h,c){let p=c.getElementsByTagName("tspan"),d=c.getAttribute(h);for(let f=0,u;f<p.length;f++)u=p[f],u.getAttribute(h)===d&&u.setAttribute(h,a);c.setAttribute(h,a)}),o}fontMetrics(e){let t=md(Rt.prototype.getStyle.call(e,"font-size")||0),i=t<24?t+3:Math.round(t*1.2),n=Math.round(i*.8);return{h:i,b:n,f:t}}rotCorr(e,t,i){let n=e;return t&&i&&(n=Math.max(n*Math.cos(t*ea),4)),{x:-e/3*Math.sin(t*ea),y:n}}pathToSegments(e){let t=[],i=[],n={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2};for(let r=0;r<e.length;r++)ud(i[0])&&Ai(e[r])&&i.length===n[i[0].toUpperCase()]&&e.splice(r,0,i[0].replace("M","L").replace("m","l")),typeof e[r]=="string"&&(i.length&&t.push(i.slice(0)),i.length=0),i.push(e[r]);return t.push(i.slice(0)),t}label(e,t,i,n,r,s,o,a,h){return new qo(this,e,t,i,n,r,s,o,a,h)}alignElements(){this.alignedObjects.forEach(e=>e.align())}};Ye(Ii.prototype,{Element:Rt,SVG_NS:cd,escapes:{"&":"&","<":"<",">":">","'":"'",'"':"""},symbols:un,draw:hd});ne.registerRendererType("svg",Ii,!0);var yn=Ii;var{composed:yd}=B,{attr:bd,css:di,createElement:vd,defined:sa,extend:Sd,pInt:Cd,pushUnique:Dd}=E;function oa(l,e,t){let i=this.div?.style||t.style;Rt.prototype[`${e}Setter`].call(this,l,e,t),i&&(i[e]=l)}var Td=(l,e)=>{if(!l.div){let t=bd(l.element,"class"),i=l.css,n=vd("div",t?{className:t}:void 0,zt(vt({position:"absolute",left:`${l.translateX||0}px`,top:`${l.translateY||0}px`},l.styles),{display:l.display,opacity:l.opacity,visibility:l.visibility}),l.parentGroup?.div||e);l.classSetter=(r,s,o)=>{o.setAttribute("class",r),n.className=r},l.translateXSetter=l.translateYSetter=(r,s)=>{l[s]=r,n.style[s==="translateX"?"left":"top"]=`${r}px`,l.doTransform=!0},l.opacitySetter=l.visibilitySetter=oa,l.css=r=>(i.call(l,r),r.cursor&&(n.style.cursor=r.cursor),r.pointerEvents&&(n.style.pointerEvents=r.pointerEvents),l),l.on=function(){return Rt.prototype.on.apply({element:n,onEvents:l.onEvents},arguments),l},l.div=n}return l.div},bn=class l extends Rt{static compose(e){Dd(yd,this.compose)&&(e.prototype.html=function(t,i,n){return new l(this,"span").attr({text:t,x:Math.round(i),y:Math.round(n)})})}constructor(e,t){super(e,t),this.css(vt({position:"absolute"},e.styledMode?{}:{fontFamily:e.style.fontFamily,fontSize:e.style.fontSize})),this.element.style.whiteSpace="nowrap"}getSpanCorrection(e,t,i){this.xCorr=-e*i,this.yCorr=-t}css(e){let{element:t}=this,i=t.tagName==="SPAN"&&e&&"width"in e,n=i&&e.width,r;return i&&(delete e.width,this.textWidth=Cd(n)||void 0,r=!0),e?.textOverflow==="ellipsis"&&(e.whiteSpace="nowrap",e.overflow="hidden"),Sd(this.styles,e),di(t,e),r&&this.updateTransform(),this}htmlGetBBox(){let{element:e}=this;return{x:e.offsetLeft,y:e.offsetTop,width:e.offsetWidth,height:e.offsetHeight}}updateTransform(){if(!this.added){this.alignOnAdd=!0;return}let{element:e,renderer:t,rotation:i,rotationOriginX:n,rotationOriginY:r,styles:s,textAlign:o="left",textWidth:a,translateX:h=0,translateY:c=0,x:p=0,y:d=0}=this,f={left:0,center:.5,right:1}[o],u=s.whiteSpace,m=()=>this.textPxLength?this.textPxLength:(di(e,{width:"",whiteSpace:u||"nowrap"}),e.offsetWidth);if(di(e,{marginLeft:`${h}px`,marginTop:`${c}px`}),e.tagName==="SPAN"){let g=[i,o,e.innerHTML,a,this.textAlign].join(","),x=this.parentGroup?.padding*-1||0,y,b=!1;if(a!==this.oldTextWidth){let M=m(),O=a||0;(O>this.oldTextWidth||M>O)&&(/[ \-]/.test(e.textContent||e.innerText)||e.style.textOverflow==="ellipsis")&&(di(e,{width:M>O||i?a+"px":"auto",display:"block",whiteSpace:u||"normal"}),this.oldTextWidth=a,b=!0)}this.hasBoxWidthChanged=b,g!==this.cTT&&(y=t.fontMetrics(e).b,sa(i)&&(i!==(this.oldRotation||0)||o!==this.oldAlign)&&this.setSpanRotation(i,x,x),this.getSpanCorrection(!sa(i)&&this.textPxLength||e.offsetWidth,y,f));let{xCorr:v=0,yCorr:S=0}=this,C=(n??p)-v-p-x,D=(r??d)-S-d-x,T={left:`${p+v}px`,top:`${d+S}px`,transformOrigin:`${C}px ${D}px`};di(e,T),this.cTT=g,this.oldRotation=i,this.oldAlign=o}}setSpanRotation(e,t,i){di(this.element,{transform:`rotate(${e}deg)`,transformOrigin:`${t}% ${i}px`})}add(e){let t=this.renderer.box.parentNode,i=[],n;if(this.parentGroup=e,e&&(n=e.div,!n)){let r=e;for(;r;)i.push(r),r=r.parentGroup;for(let s of i.reverse())n=Td(s,t)}return(n||t).appendChild(this.element),this.added=!0,this.alignOnAdd&&this.updateTransform(),this}textSetter(e){e!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,Mt.setElementHTML(this.element,e??""),this.textStr=e,this.doTransform=!0)}alignSetter(e){this.alignValue=this.textAlign=e,this.doTransform=!0}xSetter(e,t){this[t]=e,this.doTransform=!0}},Xe=bn.prototype;Xe.visibilitySetter=Xe.opacitySetter=oa;Xe.ySetter=Xe.rotationSetter=Xe.rotationOriginXSetter=Xe.rotationOriginYSetter=Xe.xSetter;var Ir=bn;var aa=function(l){return l.xAxis={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:{autoRotationLimit:80,distance:15,enabled:!0,indentation:10,overflow:"justify",reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,zIndex:7,style:{color:"#333333",cursor:"default",fontSize:"0.8em"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minorTicksPerMajor:5,minPadding:.01,offset:void 0,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",useHTML:!1,x:0,y:0,style:{color:"#666666",fontSize:"0.8em"}},visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#333333",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#333333"},l.yAxis={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:void 0},startOnTick:!0,title:{text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){let{numberFormatter:e}=this.axis.chart;return e(this.total||0,-1)},style:{color:"#000000",fontSize:"0.7em",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},l}(aa||{}),la=aa;var{addEvent:wd,isFunction:Pd,objectEach:Md,removeEvent:kd}=E,Lr;(function(l){function e(t,i){t.eventOptions=t.eventOptions||{},Md(i.events,function(n,r){t.eventOptions[r]!==n&&(t.eventOptions[r]&&(kd(t,r,t.eventOptions[r]),delete t.eventOptions[r]),Pd(n)&&(t.eventOptions[r]=n,wd(t,r,n,{order:0})))})}l.registerEventOptions=e})(Lr||(Lr={}));var De=Lr;var{deg2rad:_r}=B,{clamp:Od,correctFloat:vn,defined:Br,destroyObjectProperties:Ad,extend:Ed,fireEvent:Li,isNumber:Sn,merge:Id,objectEach:Ld,pick:Jt}=E,Rr=class{constructor(e,t,i,n,r){this.isNew=!0,this.isNewLabel=!0,this.axis=e,this.pos=t,this.type=i||"",this.parameters=r||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,Li(this,"init"),!i&&!n&&this.addLabel()}addLabel(){let e=this,t=e.axis,i=t.options,n=t.chart,r=t.categories,s=t.logarithmic,o=t.names,a=e.pos,h=Jt(e.options&&e.options.labels,i.labels),c=t.tickPositions,p=a===c[0],d=a===c[c.length-1],f=(!h.step||h.step===1)&&t.tickInterval===1,u=c.info,m=e.label,g,x,y,b=this.parameters.category||(r?Jt(r[a],o[a],a):a);s&&Sn(b)&&(b=vn(s.lin2log(b))),t.dateTime&&(u?(x=n.time.resolveDTLFormat(i.dateTimeLabelFormats[!i.grid&&u.higherRanks[a]||u.unitName]),g=x.main):Sn(b)&&(g=t.dateTime.getXDateFormat(b,i.dateTimeLabelFormats||{}))),e.isFirst=p,e.isLast=d;let v={axis:t,chart:n,dateTimeLabelFormat:g,isFirst:p,isLast:d,pos:a,tick:e,tickPositionInfo:u,value:b};Li(this,"labelFormat",v);let S=T=>h.formatter?h.formatter.call(T,T):h.format?(T.text=t.defaultLabelFormatter.call(T),Tt.format(h.format,T,n)):t.defaultLabelFormatter.call(T),C=S.call(v,v),D=x&&x.list;D?e.shortenLabel=function(){for(y=0;y<D.length;y++)if(Ed(v,{dateTimeLabelFormat:D[y]}),m.attr({text:S.call(v,v)}),m.getBBox().width<t.getSlotWidth(e)-2*(h.padding||0))return;m.attr({text:""})}:e.shortenLabel=void 0,f&&t._addedPlotLB&&e.moveLabel(C,h),!Br(m)&&!e.movedLabel?(e.label=m=e.createLabel(C,h),e.rotation=0):m&&m.textStr!==C&&!f&&(m.textWidth&&!h.style.width&&!m.styles.width&&m.css({width:null}),m.attr({text:C}),m.textPxLength=m.getBBox().width)}createLabel(e,t,i){let n=this.axis,r=n.chart,s=Br(e)&&t.enabled?r.renderer.text(e,i?.x,i?.y,t.useHTML).add(n.labelGroup):void 0;return s&&(r.styledMode||s.css(Id(t.style)),s.textPxLength=s.getBBox().width),s}destroy(){Ad(this,this.axis)}getPosition(e,t,i,n){let r=this.axis,s=r.chart,o=n&&s.oldChartHeight||s.chartHeight,a={x:e?vn(r.translate(t+i,void 0,void 0,n)+r.transB):r.left+r.offset+(r.opposite?(n&&s.oldChartWidth||s.chartWidth)-r.right-r.left:0),y:e?o-r.bottom+r.offset-(r.opposite?r.height:0):vn(o-r.translate(t+i,void 0,void 0,n)-r.transB)};return a.y=Od(a.y,-1e9,1e9),Li(this,"afterGetPosition",{pos:a}),a}getLabelPosition(e,t,i,n,r,s,o,a){let h=this.axis,c=h.transA,p=h.isLinked&&h.linkedParent?h.linkedParent.reversed:h.reversed,d=h.staggerLines,f=h.tickRotCorr||{x:0,y:0},u=!n&&!h.reserveSpaceDefault?-h.labelOffset*(h.labelAlign==="center"?.5:1):0,m=r.distance,g={},x,y;return h.side===0?x=i.rotation?-m:-i.getBBox().height:h.side===2?x=f.y+m:x=Math.cos(i.rotation*_r)*(f.y-i.getBBox(!1,0).height/2),Br(r.y)&&(x=h.side===0&&h.horiz?r.y+x:r.y),e=e+Jt(r.x,[0,1,0,-1][h.side]*m)+u+f.x-(s&&n?s*c*(p?-1:1):0),t=t+x-(s&&!n?s*c*(p?1:-1):0),d&&(y=o/(a||1)%d,h.opposite&&(y=d-y-1),t+=y*(h.labelOffset/d)),g.x=e,g.y=Math.round(t),Li(this,"afterGetLabelPosition",{pos:g,tickmarkOffset:s,index:o}),g}getLabelSize(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0}getMarkPath(e,t,i,n,r=!1,s){return s.crispLine([["M",e,t],["L",e+(r?0:-i),t+(r?i:0)]],n)}handleOverflow(e){let t=this,i=this.axis,n=i.options.labels,r=e.x,s=i.chart.chartWidth,o=i.chart.spacing,a=Jt(i.labelLeft,Math.min(i.pos,o[3])),h=Jt(i.labelRight,Math.max(i.isRadial?0:i.pos+i.len,s-o[1])),c=this.label,p=this.rotation,d={left:0,center:.5,right:1}[i.labelAlign||c.attr("align")],f=c.getBBox().width,u=i.getSlotWidth(t),m=d,g={},x=u,y=1,b,v,S;!p&&n.overflow==="justify"?(b=r-d*f,v=r+(1-d)*f,b<a?x=e.x+x*(1-d)-a:v>h&&(x=h-e.x+x*d,y=-1),x=Math.min(u,x),x<u&&i.labelAlign==="center"&&(e.x+=y*(u-x-m*(u-Math.min(f,x)))),(f>x||i.autoRotation&&(c.styles||{}).width)&&(S=x)):p<0&&r-d*f<a?S=Math.round(r/Math.cos(p*_r)-a):p>0&&r+d*f>h&&(S=Math.round((s-r)/Math.cos(p*_r))),S&&(t.shortenLabel?t.shortenLabel():(g.width=Math.floor(S)+"px",(n.style||{}).textOverflow||(g.textOverflow="ellipsis"),c.css(g)))}moveLabel(e,t){let i=this,n=i.label,r=i.axis,s=!1,o;n&&n.textStr===e?(i.movedLabel=n,s=!0,delete i.label):Ld(r.ticks,function(a){!s&&!a.isNew&&a!==i&&a.label&&a.label.textStr===e&&(i.movedLabel=a.label,s=!0,a.labelPos=i.movedLabel.xy,delete a.label)}),!s&&(i.labelPos||n)&&(o=i.labelPos||n.xy,i.movedLabel=i.createLabel(e,t,o),i.movedLabel&&i.movedLabel.attr({opacity:0}))}render(e,t,i){let n=this,r=n.axis,s=r.horiz,o=n.pos,a=Jt(n.tickmarkOffset,r.tickmarkOffset),h=n.getPosition(s,o,a,t),c=h.x,p=h.y,d=r.pos,f=d+r.len,u=s?c:p;!r.chart.polar&&n.isNew&&(vn(u)<d||u>f)&&(i=0);let m=Jt(i,n.label&&n.label.newOpacity,1);i=Jt(i,1),this.isActive=!0,this.renderGridLine(t,i),this.renderMark(h,i),this.renderLabel(h,t,m,e),n.isNew=!1,Li(this,"afterRender")}renderGridLine(e,t){let i=this,n=i.axis,r=n.options,s={},o=i.pos,a=i.type,h=Jt(i.tickmarkOffset,n.tickmarkOffset),c=n.chart.renderer,p=i.gridLine,d,f=r.gridLineWidth,u=r.gridLineColor,m=r.gridLineDashStyle;i.type==="minor"&&(f=r.minorGridLineWidth,u=r.minorGridLineColor,m=r.minorGridLineDashStyle),p||(n.chart.styledMode||(s.stroke=u,s["stroke-width"]=f||0,s.dashstyle=m),a||(s.zIndex=1),e&&(t=0),i.gridLine=p=c.path().attr(s).addClass("highcharts-"+(a?a+"-":"")+"grid-line").add(n.gridGroup)),p&&(d=n.getPlotLinePath({value:o+h,lineWidth:p.strokeWidth(),force:"pass",old:e,acrossPanes:!1}),d&&p[e||i.isNew?"attr":"animate"]({d,opacity:t}))}renderMark(e,t){let i=this,n=i.axis,r=n.options,s=n.chart.renderer,o=i.type,a=n.tickSize(o?o+"Tick":"tick"),h=e.x,c=e.y,p=Jt(r[o!=="minor"?"tickWidth":"minorTickWidth"],!o&&n.isXAxis?1:0),d=r[o!=="minor"?"tickColor":"minorTickColor"],f=i.mark,u=!f;a&&(n.opposite&&(a[0]=-a[0]),f||(i.mark=f=s.path().addClass("highcharts-"+(o?o+"-":"")+"tick").add(n.axisGroup),n.chart.styledMode||f.attr({stroke:d,"stroke-width":p})),f[u?"attr":"animate"]({d:i.getMarkPath(h,c,a[0],f.strokeWidth(),n.horiz,s),opacity:t}))}renderLabel(e,t,i,n){let r=this,s=r.axis,o=s.horiz,a=s.options,h=r.label,c=a.labels,p=c.step,d=Jt(r.tickmarkOffset,s.tickmarkOffset),f=e.x,u=e.y,m=!0;h&&Sn(f)&&(h.xy=e=r.getLabelPosition(f,u,h,o,c,d,n,p),r.isFirst&&!r.isLast&&!a.showFirstLabel||r.isLast&&!r.isFirst&&!a.showLastLabel?m=!1:o&&!c.step&&!c.rotation&&!t&&i!==0&&r.handleOverflow(e),p&&n%p&&(m=!1),m&&Sn(e.y)?(e.opacity=i,h[r.isNewLabel?"attr":"animate"](e).show(!0),r.isNewLabel=!1):(h.hide(),r.isNewLabel=!0))}replaceMovedLabel(){let e=this,t=e.label,i=e.axis;t&&!e.isNew&&(t.animate({opacity:0},void 0,t.destroy),delete e.label),i.isDirty=!0,e.label=e.movedLabel,delete e.movedLabel}},ce=Rr;var{animObject:_d}=lt,{xAxis:ha,yAxis:Bd}=la,{defaultOptions:Fr}=Ct,{registerEventOptions:Rd}=De,{deg2rad:Wd}=B,{arrayMax:ca,arrayMin:Nd,clamp:Wr,correctFloat:Yt,defined:ft,destroyObjectProperties:Fd,erase:da,error:Nr,extend:Hr,fireEvent:xt,getClosestDistance:fa,insertItem:Hd,isArray:pa,isNumber:X,isString:ua,merge:Tn,normalizeTickInterval:zd,objectEach:Cn,pick:K,relativeLength:Dn,removeEvent:Yd,splat:Xd,syncTimeout:Vd}=E,ma=(l,e)=>zd(e,void 0,void 0,K(l.options.allowDecimals,e<.5||l.tickAmount!==void 0),!!l.tickAmount);Hr(Fr,{xAxis:ha,yAxis:Tn(ha,Bd)});var Gd=(()=>{class l{constructor(t,i,n){this.init(t,i,n)}init(t,i,n=this.coll){let r=n==="xAxis",s=this,o=s.isZAxis||(t.inverted?!r:r);s.chart=t,s.horiz=o,s.isXAxis=r,s.coll=n,xt(this,"init",{userOptions:i}),s.opposite=K(i.opposite,s.opposite),s.side=K(i.side,s.side,o?s.opposite?0:2:s.opposite?1:3),s.setOptions(i);let a=s.options,h=a.labels;s.type??(s.type=a.type||"linear"),s.uniqueNames??(s.uniqueNames=a.uniqueNames??!0),xt(s,"afterSetType"),s.userOptions=i,s.minPixelPadding=0,s.reversed=K(a.reversed,s.reversed),s.visible=a.visible,s.zoomEnabled=a.zoomEnabled,s.hasNames=this.type==="category"||a.categories===!0,s.categories=pa(a.categories)&&a.categories||(s.hasNames?[]:void 0),s.names||(s.names=[],s.names.keys={}),s.plotLinesAndBandsGroups={},s.positiveValuesOnly=!!s.logarithmic,s.isLinked=ft(a.linkedTo),s.ticks={},s.labelEdge=[],s.minorTicks={},s.plotLinesAndBands=[],s.alternateBands={},s.len??(s.len=0),s.minRange=s.userMinRange=a.minRange||a.maxZoom,s.range=a.range,s.offset=a.offset||0,s.max=void 0,s.min=void 0;let c=K(a.crosshair,Xd(t.options.tooltip.crosshairs)[r?0:1]);s.crosshair=c===!0?{}:c,t.axes.indexOf(s)===-1&&(r?t.axes.splice(t.xAxis.length,0,s):t.axes.push(s),Hd(this,t[this.coll])),t.orderItems(s.coll),s.series=s.series||[],t.inverted&&!s.isZAxis&&r&&!ft(s.reversed)&&(s.reversed=!0),s.labelRotation=X(h.rotation)?h.rotation:void 0,Rd(s,a),xt(this,"afterInit")}setOptions(t){let i=this.horiz?{labels:{autoRotation:[-45],padding:4},margin:15}:{labels:{padding:1},title:{rotation:90*this.side}};this.options=Tn(i,Fr[this.coll],t),xt(this,"afterSetOptions",{userOptions:t})}defaultLabelFormatter(){let t=this.axis,i=this.chart,{numberFormatter:n}=i,r=X(this.value)?this.value:NaN,s=t.chart.time,o=t.categories,a=this.dateTimeLabelFormat,h=Fr.lang,c=h.numericSymbols,p=h.numericSymbolMagnitude||1e3,d=t.logarithmic?Math.abs(r):t.tickInterval,f=c&&c.length,u,m;if(o)m=`${this.value}`;else if(a)m=s.dateFormat(a,r);else if(f&&c&&d>=1e3)for(;f--&&typeof m>"u";)u=Math.pow(p,f+1),d>=u&&r*10%u===0&&c[f]!==null&&r!==0&&(m=n(r/u,-1)+c[f]);return typeof m>"u"&&(Math.abs(r)>=1e4?m=n(r,-1):m=n(r,-1,void 0,"")),m}getSeriesExtremes(){let t=this,i;xt(this,"getSeriesExtremes",null,function(){t.hasVisibleSeries=!1,t.dataMin=t.dataMax=t.threshold=void 0,t.softThreshold=!t.isXAxis,t.series.forEach(n=>{if(n.reserveSpace()){let r=n.options,s,o=r.threshold,a,h;if(t.hasVisibleSeries=!0,t.positiveValuesOnly&&(o||0)<=0&&(o=void 0),t.isXAxis)s=n.xData,s&&s.length&&(s=t.logarithmic?s.filter(c=>c>0):s,i=n.getXExtremes(s),a=i.min,h=i.max,!X(a)&&!(a instanceof Date)&&(s=s.filter(X),i=n.getXExtremes(s),a=i.min,h=i.max),s.length&&(t.dataMin=Math.min(K(t.dataMin,a),a),t.dataMax=Math.max(K(t.dataMax,h),h)));else{let c=n.applyExtremes();X(c.dataMin)&&(a=c.dataMin,t.dataMin=Math.min(K(t.dataMin,a),a)),X(c.dataMax)&&(h=c.dataMax,t.dataMax=Math.max(K(t.dataMax,h),h)),ft(o)&&(t.threshold=o),(!r.softThreshold||t.positiveValuesOnly)&&(t.softThreshold=!1)}}})}),xt(this,"afterGetSeriesExtremes")}translate(t,i,n,r,s,o){let a=this.linkedParent||this,h=r&&a.old?a.old.min:a.min;if(!X(h))return NaN;let c=a.minPixelPadding,p=(a.isOrdinal||a.brokenAxis?.hasBreaks||a.logarithmic&&s)&&a.lin2val,d=1,f=0,u=r&&a.old?a.old.transA:a.transA,m=0;return u||(u=a.transA),n&&(d*=-1,f=a.len),a.reversed&&(d*=-1,f-=d*(a.sector||a.len)),i?(t=t*d+f,t-=c,m=t/u+h,p&&(m=a.lin2val(m))):(p&&(t=a.val2lin(t)),m=d*(t-h)*u+f+d*c+(X(o)?u*o:0),a.isRadial||(m=Yt(m))),m}toPixels(t,i){return this.translate(t,!1,!this.horiz,void 0,!0)+(i?0:this.pos)}toValue(t,i){return this.translate(t-(i?0:this.pos),!0,!this.horiz,void 0,!0)}getPlotLinePath(t){let i=this,n=i.chart,r=i.left,s=i.top,o=t.old,a=t.value,h=t.lineWidth,c=o&&n.oldChartHeight||n.chartHeight,p=o&&n.oldChartWidth||n.chartWidth,d=i.transB,f=t.translatedValue,u=t.force,m,g,x,y,b;function v(C,D,T){return u!=="pass"&&(C<D||C>T)&&(u?C=Wr(C,D,T):b=!0),C}let S={value:a,lineWidth:h,old:o,force:u,acrossPanes:t.acrossPanes,translatedValue:f};return xt(this,"getPlotLinePath",S,function(C){f=K(f,i.translate(a,void 0,void 0,o)),f=Wr(f,-1e9,1e9),m=x=f+d,g=y=c-f-d,X(f)?i.horiz?(g=s,y=c-i.bottom+(i.options.isInternal?0:n.scrollablePixelsY||0),m=x=v(m,r,r+i.width)):(m=r,x=p-i.right+(n.scrollablePixelsX||0),g=y=v(g,s,s+i.height)):(b=!0,u=!1),C.path=b&&!u?void 0:n.renderer.crispLine([["M",m,g],["L",x,y]],h||1)}),S.path}getLinearTickPositions(t,i,n){let r=Yt(Math.floor(i/t)*t),s=Yt(Math.ceil(n/t)*t),o=[],a,h,c;if(Yt(r+t)===r&&(c=20),this.single)return[i];for(a=r;a<=s&&(o.push(a),a=Yt(a+t,c),a!==h);)h=a;return o}getMinorTickInterval(){let{minorTicks:t,minorTickInterval:i}=this.options;if(t===!0)return K(i,"auto");if(t!==!1)return i}getMinorTickPositions(){let t=this,i=t.options,n=t.tickPositions,r=t.minorTickInterval,s=t.pointRangePadding||0,o=(t.min||0)-s,a=(t.max||0)+s,h=a-o,c=[],p;if(h&&h/r<t.len/3){let d=t.logarithmic;if(d)this.paddedTicks.forEach(function(f,u,m){u&&c.push.apply(c,d.getLogTickPositions(r,m[u-1],m[u],!0))});else if(t.dateTime&&this.getMinorTickInterval()==="auto")c=c.concat(t.getTimeTicks(t.dateTime.normalizeTimeTickInterval(r),o,a,i.startOfWeek));else for(p=o+(n[0]-o)%r;p<=a&&p!==c[0];p+=r)c.push(p)}return c.length!==0&&t.trimTicks(c),c}adjustForMinRange(){let t=this,i=t.options,n=t.logarithmic,{max:r,min:s,minRange:o}=t,a,h,c,p,d;t.isXAxis&&typeof o>"u"&&!n&&(ft(i.min)||ft(i.max)||ft(i.floor)||ft(i.ceiling)?o=null:(c=fa(t.series.map(f=>(f.xIncrement?f.xData?.slice(0,2):f.xData)||[]))||0,o=Math.min(c*5,t.dataMax-t.dataMin))),X(r)&&X(s)&&X(o)&&r-s<o&&(h=t.dataMax-t.dataMin>=o,a=(o-r+s)/2,p=[s-a,K(i.min,s-a)],h&&(p[2]=n?n.log2lin(t.dataMin):t.dataMin),s=ca(p),d=[s+o,K(i.max,s+o)],h&&(d[2]=n?n.log2lin(t.dataMax):t.dataMax),r=Nd(d),r-s<o&&(p[0]=r-o,p[1]=K(i.min,r-o),s=ca(p))),t.minRange=o,t.min=s,t.max=r}getClosest(){let t,i;if(this.categories)i=1;else{let n=[];this.series.forEach(function(r){let s=r.closestPointRange;r.xData?.length===1?n.push(r.xData[0]):!r.noSharedTooltip&&ft(s)&&r.reserveSpace()&&(i=ft(i)?Math.min(i,s):s)}),n.length&&(n.sort((r,s)=>r-s),t=fa([n]))}return t&&i?Math.min(t,i):t||i}nameToX(t){let i=pa(this.options.categories),n=i?this.categories:this.names,r=t.options.x,s;return t.series.requireSorting=!1,ft(r)||(r=this.uniqueNames&&n?i?n.indexOf(t.name):K(n.keys[t.name],-1):t.series.autoIncrement()),r===-1?!i&&n&&(s=n.length):s=r,typeof s<"u"?(this.names[s]=t.name,this.names.keys[t.name]=s):t.x&&(s=t.x),s}updateNames(){let t=this,i=this.names;i.length>0&&(Object.keys(i.keys).forEach(function(r){delete i.keys[r]}),i.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(r=>{r.xIncrement=null,(!r.points||r.isDirtyData)&&(t.max=Math.max(t.max,r.xData.length-1),r.processData(),r.generatePoints()),r.data.forEach(function(s,o){let a;s?.options&&typeof s.name<"u"&&(a=t.nameToX(s),typeof a<"u"&&a!==s.x&&(s.x=a,r.xData[o]=a))})}))}setAxisTranslation(){let t=this,i=t.max-t.min,n=t.linkedParent,r=!!t.categories,s=t.isXAxis,o=t.axisPointRange||0,a,h=0,c=0,p,d=t.transA;(s||r||o)&&(a=t.getClosest(),n?(h=n.minPointOffset,c=n.pointRangePadding):t.series.forEach(function(f){let u=r?1:s?K(f.options.pointRange,a,0):t.axisPointRange||0,m=f.options.pointPlacement;if(o=Math.max(o,u),!t.single||r){let g=f.is("xrange")?!s:s;h=Math.max(h,g&&ua(m)?0:u/2),c=Math.max(c,g&&m==="on"?0:u)}}),p=t.ordinal&&t.ordinal.slope&&a?t.ordinal.slope/a:1,t.minPointOffset=h=h*p,t.pointRangePadding=c=c*p,t.pointRange=Math.min(o,t.single&&r?1:i),s&&a&&(t.closestPointRange=a)),t.translationSlope=t.transA=d=t.staticScale||t.len/(i+c||1),t.transB=t.horiz?t.left:t.bottom,t.minPixelPadding=d*h,xt(this,"afterSetAxisTranslation")}minFromRange(){let{max:t,min:i}=this;return X(t)&&X(i)&&t-i||void 0}setTickInterval(t){let i=this,{categories:n,chart:r,dataMax:s,dataMin:o,dateTime:a,isXAxis:h,logarithmic:c,options:p,softThreshold:d}=i,f=X(i.threshold)?i.threshold:void 0,u=i.minRange||0,{ceiling:m,floor:g,linkedTo:x,softMax:y,softMin:b}=p,v=X(x)&&r[i.coll]?.[x],S=p.tickPixelInterval,C=p.maxPadding,D=p.minPadding,T=0,M,O=X(p.tickInterval)&&p.tickInterval>=0?p.tickInterval:void 0,I,R,L,F;if(!a&&!n&&!v&&this.getTickAmount(),L=K(i.userMin,p.min),F=K(i.userMax,p.max),v?(i.linkedParent=v,M=v.getExtremes(),i.min=K(M.min,M.dataMin),i.max=K(M.max,M.dataMax),this.type!==v.type&&Nr(11,!0,r)):(d&&ft(f)&&X(s)&&X(o)&&(o>=f?(I=f,D=0):s<=f&&(R=f,C=0)),i.min=K(L,I,o),i.max=K(F,R,s)),X(i.max)&&X(i.min)&&(c&&(i.positiveValuesOnly&&!t&&Math.min(i.min,K(o,i.min))<=0&&Nr(10,!0,r),i.min=Yt(c.log2lin(i.min),16),i.max=Yt(c.log2lin(i.max),16)),i.range&&X(o)&&(i.userMin=i.min=L=Math.max(o,i.minFromRange()||0),i.userMax=F=i.max,i.range=void 0)),xt(i,"foundExtremes"),i.adjustForMinRange(),X(i.min)&&X(i.max)){if(!X(i.userMin)&&X(b)&&b<i.min&&(i.min=L=b),!X(i.userMax)&&X(y)&&y>i.max&&(i.max=F=y),!n&&!i.axisPointRange&&!i.stacking?.usePercentage&&!v&&(T=i.max-i.min,T&&(!ft(L)&&D&&(i.min-=T*D),!ft(F)&&C&&(i.max+=T*C))),!X(i.userMin)&&X(g)&&(i.min=Math.max(i.min,g)),!X(i.userMax)&&X(m)&&(i.max=Math.min(i.max,m)),d&&X(o)&&X(s)){let W=f||0;!ft(L)&&i.min<W&&o>=W?i.min=p.minRange?Math.min(W,i.max-u):W:!ft(F)&&i.max>W&&s<=W&&(i.max=p.minRange?Math.max(W,i.min+u):W)}!r.polar&&i.min>i.max&&(ft(p.min)?i.max=i.min:ft(p.max)&&(i.min=i.max)),T=i.max-i.min}if(i.min===i.max||!X(i.min)||!X(i.max)?i.tickInterval=1:v&&!O&&S===v.options.tickPixelInterval?i.tickInterval=O=v.tickInterval:i.tickInterval=K(O,this.tickAmount?T/Math.max(this.tickAmount-1,1):void 0,n?1:T*S/Math.max(i.len,S)),h&&!t){let W=i.min!==i.old?.min||i.max!==i.old?.max;i.series.forEach(function(q){q.forceCrop=q.forceCropping?.(),q.processData(W)}),xt(this,"postProcessData",{hasExtremesChanged:W})}i.setAxisTranslation(),xt(this,"initialAxisTranslation"),i.pointRange&&!O&&(i.tickInterval=Math.max(i.pointRange,i.tickInterval));let z=K(p.minTickInterval,a&&!i.series.some(W=>W.noSharedTooltip)?i.closestPointRange:0);!O&&i.tickInterval<z&&(i.tickInterval=z),!a&&!c&&!O&&(i.tickInterval=ma(i,i.tickInterval)),this.tickAmount||(i.tickInterval=i.unsquish()),this.setTickPositions()}setTickPositions(){let t=this,i=this.options,n=i.tickPositions,r=i.tickPositioner,s=this.getMinorTickInterval(),o=!this.isPanning,a=o&&i.startOnTick,h=o&&i.endOnTick,c=[],p;if(this.tickmarkOffset=this.categories&&i.tickmarkPlacement==="between"&&this.tickInterval===1?.5:0,this.single=this.min===this.max&&ft(this.min)&&!this.tickAmount&&(this.min%1===0||i.allowDecimals!==!1),n)c=n.slice();else if(X(this.min)&&X(this.max)){if(!t.ordinal?.positions&&(this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))c=[this.min,this.max],Nr(19,!1,this.chart);else if(t.dateTime)c=t.getTimeTicks(t.dateTime.normalizeTimeTickInterval(this.tickInterval,i.units),this.min,this.max,i.startOfWeek,t.ordinal?.positions,this.closestPointRange,!0);else if(t.logarithmic)c=t.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else{let d=this.tickInterval,f=d;for(;f<=d*2&&(c=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&&c.length>this.tickAmount);)this.tickInterval=ma(this,f*=1.1)}c.length>this.len&&(c=[c[0],c[c.length-1]],c[0]===c[1]&&(c.length=1)),r&&(this.tickPositions=c,p=r.apply(t,[this.min,this.max]),p&&(c=p))}this.tickPositions=c,this.minorTickInterval=s==="auto"&&this.tickInterval?this.tickInterval/i.minorTicksPerMajor:s,this.paddedTicks=c.slice(0),this.trimTicks(c,a,h),!this.isLinked&&X(this.min)&&X(this.max)&&(this.single&&c.length<2&&!this.categories&&!this.series.some(d=>d.is("heatmap")&&d.options.pointPlacement==="between")&&(this.min-=.5,this.max+=.5),!n&&!p&&this.adjustTickAmount()),xt(this,"afterSetTickPositions")}trimTicks(t,i,n){let r=t[0],s=t[t.length-1],o=!this.isOrdinal&&this.minPointOffset||0;if(xt(this,"trimTicks"),!this.isLinked){if(i&&r!==-1/0)this.min=r;else for(;this.min-o>t[0];)t.shift();if(n)this.max=s;else for(;this.max+o<t[t.length-1];)t.pop();t.length===0&&ft(r)&&!this.options.tickPositions&&t.push((s+r)/2)}}alignToOthers(){let t=this,i=t.chart,n=[this],r=t.options,s=i.options.chart,o=this.coll==="yAxis"&&s.alignThresholds,a=[],h;if(t.thresholdAlignment=void 0,(s.alignTicks!==!1&&r.alignTicks||o)&&r.startOnTick!==!1&&r.endOnTick!==!1&&!t.logarithmic){let c=d=>{let{horiz:f,options:u}=d;return[f?u.left:u.top,u.width,u.height,u.pane].join(",")},p=c(this);i[this.coll].forEach(function(d){let{series:f}=d;f.length&&f.some(u=>u.visible)&&d!==t&&c(d)===p&&(h=!0,n.push(d))})}if(h&&o){n.forEach(p=>{let d=p.getThresholdAlignment(t);X(d)&&a.push(d)});let c=a.length>1?a.reduce((p,d)=>p+=d,0)/a.length:void 0;n.forEach(p=>{p.thresholdAlignment=c})}return h}getThresholdAlignment(t){if((!X(this.dataMin)||this!==t&&this.series.some(i=>i.isDirty||i.isDirtyData))&&this.getSeriesExtremes(),X(this.threshold)){let i=Wr((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1);return this.options.reversed&&(i=1-i),i}}getTickAmount(){let t=this,i=this.options,n=i.tickPixelInterval,r=i.tickAmount;!ft(i.tickInterval)&&!r&&this.len<n&&!this.isRadial&&!t.logarithmic&&i.startOnTick&&i.endOnTick&&(r=2),!r&&this.alignToOthers()&&(r=Math.ceil(this.len/n)+1),r<4&&(this.finalTickAmt=r,r=5),this.tickAmount=r}adjustTickAmount(){let t=this,{finalTickAmt:i,max:n,min:r,options:s,tickPositions:o,tickAmount:a,thresholdAlignment:h}=t,c=o?.length,p=K(t.threshold,t.softThreshold?0:null),d,f,u=t.tickInterval,m,g=()=>o.push(Yt(o[o.length-1]+u)),x=()=>o.unshift(Yt(o[0]-u));if(X(h)&&(m=h<.5?Math.ceil(h*(a-1)):Math.floor(h*(a-1)),s.reversed&&(m=a-1-m)),t.hasData()&&X(r)&&X(n)){let y=()=>{t.transA*=(c-1)/(a-1),t.min=s.startOnTick?o[0]:Math.min(r,o[0]),t.max=s.endOnTick?o[o.length-1]:Math.max(n,o[o.length-1])};if(X(m)&&X(t.threshold)){for(;o[m]!==p||o.length!==a||o[0]>r||o[o.length-1]<n;){for(o.length=0,o.push(t.threshold);o.length<a;)o[m]===void 0||o[m]>t.threshold?x():g();if(u>t.tickInterval*8)break;u*=2}y()}else if(c<a){for(;o.length<a;)o.length%2||r===p?g():x();y()}if(ft(i)){for(f=d=o.length;f--;)(i===3&&f%2===1||i<=2&&f>0&&f<d-1)&&o.splice(f,1);t.finalTickAmt=void 0}}}setScale(){let t=this,{coll:i,stacking:n}=t,r=!1,s=!1;t.series.forEach(a=>{r=r||a.isDirtyData||a.isDirty,s=s||a.xAxis&&a.xAxis.isDirty||!1}),t.setAxisSize();let o=t.len!==(t.old&&t.old.len);o||r||s||t.isLinked||t.forceRedraw||t.userMin!==(t.old&&t.old.userMin)||t.userMax!==(t.old&&t.old.userMax)||t.alignToOthers()?(n&&i==="yAxis"&&n.buildStacks(),t.forceRedraw=!1,t.userMinRange||(t.minRange=void 0),t.getSeriesExtremes(),t.setTickInterval(),n&&i==="xAxis"&&n.buildStacks(),t.isDirty||(t.isDirty=o||t.min!==t.old?.min||t.max!==t.old?.max)):n&&n.cleanStacks(),r&&delete t.allExtremes,xt(this,"afterSetScale")}setExtremes(t,i,n=!0,r,s){this.series.forEach(o=>{delete o.kdTree}),s=Hr(s,{min:t,max:i}),xt(this,"setExtremes",s,o=>{this.userMin=o.min,this.userMax=o.max,this.eventArgs=o,n&&this.chart.redraw(r)})}setAxisSize(){let t=this.chart,i=this.options,n=i.offsets||[0,0,0,0],r=this.horiz,s=this.width=Math.round(Dn(K(i.width,t.plotWidth-n[3]+n[1]),t.plotWidth)),o=this.height=Math.round(Dn(K(i.height,t.plotHeight-n[0]+n[2]),t.plotHeight)),a=this.top=Math.round(Dn(K(i.top,t.plotTop+n[0]),t.plotHeight,t.plotTop)),h=this.left=Math.round(Dn(K(i.left,t.plotLeft+n[3]),t.plotWidth,t.plotLeft));this.bottom=t.chartHeight-o-a,this.right=t.chartWidth-s-h,this.len=Math.max(r?s:o,0),this.pos=r?h:a}getExtremes(){let t=this,i=t.logarithmic;return{min:i?Yt(i.lin2log(t.min)):t.min,max:i?Yt(i.lin2log(t.max)):t.max,dataMin:t.dataMin,dataMax:t.dataMax,userMin:t.userMin,userMax:t.userMax}}getThreshold(t){let i=this,n=i.logarithmic,r=n?n.lin2log(i.min):i.min,s=n?n.lin2log(i.max):i.max;return t===null||t===-1/0?t=r:t===1/0?t=s:r>t?t=r:s<t&&(t=s),i.translate(t,0,1,0,1)}autoLabelAlign(t){let i=(K(t,0)-this.side*90+720)%360,n={align:"center"};return xt(this,"autoLabelAlign",n,function(r){i>15&&i<165?r.align="right":i>195&&i<345&&(r.align="left")}),n.align}tickSize(t){let i=this.options,n=K(i[t==="tick"?"tickWidth":"minorTickWidth"],t==="tick"&&this.isXAxis&&!this.categories?1:0),r=i[t==="tick"?"tickLength":"minorTickLength"],s;n&&r&&(i[t+"Position"]==="inside"&&(r=-r),s=[r,n]);let o={tickSize:s};return xt(this,"afterTickSize",o),o.tickSize}labelMetrics(){let t=this.chart.renderer,i=this.ticks,n=i[Object.keys(i)[0]]||{};return this.chart.renderer.fontMetrics(n.label||n.movedLabel||t.box)}unsquish(){let t=this.options.labels,i=t.padding||0,n=this.horiz,r=this.tickInterval,s=this.len/(((this.categories?1:0)+this.max-this.min)/r),o=t.rotation,a=Yt(this.labelMetrics().h*.8),h=Math.max(this.max-this.min,0),c=function(m){let g=(m+2*i)/(s||1);return g=g>1?Math.ceil(g):1,g*r>h&&m!==1/0&&s!==1/0&&h&&(g=Math.ceil(h/r)),Yt(g*r)},p=r,d,f=Number.MAX_VALUE,u;if(n){if(t.staggerLines||(X(o)?u=[o]:s<t.autoRotationLimit&&(u=t.autoRotation)),u){let m,g;for(let x of u)(x===o||x&&x>=-90&&x<=90)&&(m=c(Math.abs(a/Math.sin(Wd*x))),g=m+Math.abs(x/360),g<f&&(f=g,d=x,p=m))}}else p=c(a*.75);return this.autoRotation=u,this.labelRotation=K(d,X(o)?o:0),t.step?r:p}getSlotWidth(t){let i=this.chart,n=this.horiz,r=this.options.labels,s=Math.max(this.tickPositions.length-(this.categories?0:1),1),o=i.margin[3];if(t&&X(t.slotWidth))return t.slotWidth;if(n&&r.step<2)return r.rotation?0:(this.staggerLines||1)*this.len/s;if(!n){let a=r.style.width;if(a!==void 0)return parseInt(String(a),10);if(o)return o-i.spacing[3]}return i.chartWidth*.33}renderUnsquish(){let t=this.chart,i=t.renderer,n=this.tickPositions,r=this.ticks,s=this.options.labels,o=s.style,a=this.horiz,h=this.getSlotWidth(),c=Math.max(1,Math.round(h-(a?2*(s.padding||0):s.distance||0))),p={},d=this.labelMetrics(),f=o.textOverflow,u,m,g=0,x,y,b;if(ua(s.rotation)||(p.rotation=s.rotation||0),n.forEach(function(v){let S=r[v];S.movedLabel&&S.replaceMovedLabel(),S&&S.label&&S.label.textPxLength>g&&(g=S.label.textPxLength)}),this.maxLabelLength=g,this.autoRotation)g>c&&g>d.h?p.rotation=this.labelRotation:this.labelRotation=0;else if(h&&(u=c,!f))for(m="clip",y=n.length;!a&&y--;)b=n[y],x=r[b].label,x&&(x.styles.textOverflow==="ellipsis"?x.css({textOverflow:"clip"}):x.textPxLength>h&&x.css({width:h+"px"}),x.getBBox().height>this.len/n.length-(d.h-d.f)&&(x.specificTextOverflow="ellipsis"));p.rotation&&(u=g>t.chartHeight*.5?t.chartHeight*.33:g,f||(m="ellipsis")),this.labelAlign=s.align||this.autoLabelAlign(this.labelRotation),this.labelAlign&&(p.align=this.labelAlign),n.forEach(function(v){let S=r[v],C=S&&S.label,D=o.width,T={};C&&(C.attr(p),S.shortenLabel?S.shortenLabel():u&&!D&&o.whiteSpace!=="nowrap"&&(u<C.textPxLength||C.element.tagName==="SPAN")?(T.width=u+"px",f||(T.textOverflow=C.specificTextOverflow||m),C.css(T)):C.styles.width&&!T.width&&!D&&C.css({width:null}),delete C.specificTextOverflow,S.rotation=p.rotation)},this),this.tickRotCorr=i.rotCorr(d.b,this.labelRotation||0,this.side!==0)}hasData(){return this.series.some(function(t){return t.hasData()})||this.options.showEmpty&&ft(this.min)&&ft(this.max)}addTitle(t){let i=this,n=i.chart.renderer,r=i.horiz,s=i.opposite,o=i.options,a=o.title,h=i.chart.styledMode,c;i.axisTitle||(c=a.textAlign,c||(c=(r?{low:"left",middle:"center",high:"right"}:{low:s?"right":"left",middle:"center",high:s?"left":"right"})[a.align]),i.axisTitle=n.text(a.text||"",0,0,a.useHTML).attr({zIndex:7,rotation:a.rotation||0,align:c}).addClass("highcharts-axis-title"),h||i.axisTitle.css(Tn(a.style)),i.axisTitle.add(i.axisGroup),i.axisTitle.isNew=!0),!h&&!a.style.width&&!i.isRadial&&i.axisTitle.css({width:i.len+"px"}),i.axisTitle[t?"show":"hide"](t)}generateTick(t){let i=this,n=i.ticks;n[t]?n[t].addLabel():n[t]=new ce(i,t)}createGroups(){let{axisParent:t,chart:i,coll:n,options:r}=this,s=i.renderer,o=(a,h,c)=>s.g(a).attr({zIndex:c}).addClass(`highcharts-${n.toLowerCase()}${h} `+(this.isRadial?`highcharts-radial-axis${h} `:"")+(r.className||"")).add(t);this.axisGroup||(this.gridGroup=o("grid","-grid",r.gridZIndex),this.axisGroup=o("axis","",r.zIndex),this.labelGroup=o("axis-labels","-labels",r.labels.zIndex))}getOffset(){let t=this,{chart:i,horiz:n,options:r,side:s,ticks:o,tickPositions:a,coll:h}=t,c=i.inverted&&!t.isZAxis?[1,0,3,2][s]:s,p=t.hasData(),d=r.title,f=r.labels,u=X(r.crossing),m=i.axisOffset,g=i.clipOffset,x=[-1,1,1,-1][s],y,b=0,v,S=0,C=0,D,T;if(t.showAxis=y=p||r.showEmpty,t.staggerLines=t.horiz&&f.staggerLines||void 0,t.createGroups(),p||t.isLinked?(a.forEach(function(M){t.generateTick(M)}),t.renderUnsquish(),t.reserveSpaceDefault=s===0||s===2||{1:"left",3:"right"}[s]===t.labelAlign,K(f.reserveSpace,u?!1:null,t.labelAlign==="center"?!0:null,t.reserveSpaceDefault)&&a.forEach(function(M){C=Math.max(o[M].getLabelSize(),C)}),t.staggerLines&&(C*=t.staggerLines),t.labelOffset=C*(t.opposite?-1:1)):Cn(o,function(M,O){M.destroy(),delete o[O]}),d?.text&&d.enabled!==!1&&(t.addTitle(y),y&&!u&&d.reserveSpace!==!1&&(t.titleOffset=b=t.axisTitle.getBBox()[n?"height":"width"],v=d.offset,S=ft(v)?0:K(d.margin,n?5:10))),t.renderLine(),t.offset=x*K(r.offset,m[s]?m[s]+(r.margin||0):0),t.tickRotCorr=t.tickRotCorr||{x:0,y:0},s===0?T=-t.labelMetrics().h:s===2?T=t.tickRotCorr.y:T=0,D=Math.abs(C)+S,C&&(D-=T,D+=x*(n?K(f.y,t.tickRotCorr.y+x*f.distance):K(f.x,x*f.distance))),t.axisTitleMargin=K(v,D),t.getMaxLabelDimensions&&(t.maxLabelDimensions=t.getMaxLabelDimensions(o,a)),h!=="colorAxis"&&g){let M=this.tickSize("tick");m[s]=Math.max(m[s],(t.axisTitleMargin||0)+b+x*t.offset,D,a&&a.length&&M?M[0]+x*t.offset:0);let O=!t.axisLine||r.offset?0:t.axisLine.strokeWidth()/2;g[c]=Math.max(g[c],O)}xt(this,"afterGetOffset")}getLinePath(t){let i=this.chart,n=this.opposite,r=this.offset,s=this.horiz,o=this.left+(n?this.width:0)+r,a=i.chartHeight-this.bottom-(n?this.height:0)+r;return n&&(t*=-1),i.renderer.crispLine([["M",s?this.left:o,s?a:this.top],["L",s?i.chartWidth-this.right:o,s?a:i.chartHeight-this.bottom]],t)}renderLine(){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}))}getTitlePosition(t){let i=this.horiz,n=this.left,r=this.top,s=this.len,o=this.options.title,a=i?n:r,h=this.opposite,c=this.offset,p=o.x,d=o.y,f=this.chart.renderer.fontMetrics(t),u=t?Math.max(t.getBBox(!1,0).height-f.h-1,0):0,m={low:a+(i?0:s),middle:a+s/2,high:a+(i?s:0)}[o.align],g=(i?r+this.height:n)+(i?1:-1)*(h?-1:1)*(this.axisTitleMargin||0)+[-u,u,f.f,-u][this.side],x={x:i?m+p:g+(h?this.width:0)+c+p,y:i?g+d-(h?this.height:0)+c:m+d};return xt(this,"afterGetTitlePosition",{titlePosition:x}),x}renderMinorTick(t,i){let n=this,r=n.minorTicks;r[t]||(r[t]=new ce(n,t,"minor")),i&&r[t].isNew&&r[t].render(null,!0),r[t].render(null,!1,1)}renderTick(t,i,n){let r=this,s=r.isLinked,o=r.ticks;(!s||t>=r.min&&t<=r.max||r.grid&&r.grid.isColumn)&&(o[t]||(o[t]=new ce(r,t)),n&&o[t].isNew&&o[t].render(i,!0,-1),o[t].render(i))}render(){let t=this,i=t.chart,n=t.logarithmic,r=i.renderer,s=t.options,o=t.isLinked,a=t.tickPositions,h=t.axisTitle,c=t.ticks,p=t.minorTicks,d=t.alternateBands,f=s.stackLabels,u=s.alternateGridColor,m=s.crossing,g=t.tickmarkOffset,x=t.axisLine,y=t.showAxis,b=_d(r.globalAnimation),v,S;if(t.labelEdge.length=0,t.overlap=!1,[c,p,d].forEach(function(C){Cn(C,function(D){D.isActive=!1})}),X(m)){let C=this.isXAxis?i.yAxis[0]:i.xAxis[0],D=[1,-1,-1,1][this.side];if(C){let T=C.toPixels(m,!0);t.horiz&&(T=C.len-T),t.offset=D*T}}if(t.hasData()||o){let C=t.chart.hasRendered&&t.old&&X(t.old.min);t.minorTickInterval&&!t.categories&&t.getMinorTickPositions().forEach(function(D){t.renderMinorTick(D,C)}),a.length&&(a.forEach(function(D,T){t.renderTick(D,T,C)}),g&&(t.min===0||t.single)&&(c[-1]||(c[-1]=new ce(t,-1,null,!0)),c[-1].render(-1))),u&&a.forEach(function(D,T){S=typeof a[T+1]<"u"?a[T+1]+g:t.max-g,T%2===0&&D<t.max&&S<=t.max+(i.polar?-g:g)&&(d[D]||(d[D]=new B.PlotLineOrBand(t,{})),v=D+g,d[D].options={from:n?n.lin2log(v):v,to:n?n.lin2log(S):S,color:u,className:"highcharts-alternate-grid"},d[D].render(),d[D].isActive=!0)}),t._addedPlotLB||(t._addedPlotLB=!0,(s.plotLines||[]).concat(s.plotBands||[]).forEach(function(D){t.addPlotBandOrLine(D)}))}[c,p,d].forEach(function(C){let D=[],T=b.duration,M=function(){let O=D.length;for(;O--;)C[D[O]]&&!C[D[O]].isActive&&(C[D[O]].destroy(),delete C[D[O]])};Cn(C,function(O,I){O.isActive||(O.render(I,!1,0),O.isActive=!1,D.push(I))}),Vd(M,C===d||!i.hasRendered||!T?0:T)}),x&&(x[x.isPlaced?"animate":"attr"]({d:this.getLinePath(x.strokeWidth())}),x.isPlaced=!0,x[y?"show":"hide"](y)),h&&y&&(h[h.isNew?"attr":"animate"](t.getTitlePosition(h)),h.isNew=!1),f&&f.enabled&&t.stacking&&t.stacking.renderStackTotals(),t.old={len:t.len,max:t.max,min:t.min,transA:t.transA,userMax:t.userMax,userMin:t.userMin},t.isDirty=!1,xt(this,"afterRender")}redraw(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(t){t.render()})),this.series.forEach(function(t){t.isDirty=!0})}getKeepProps(){return this.keepProps||l.keepProps}destroy(t){let i=this,n=i.plotLinesAndBands,r=this.eventOptions;if(xt(this,"destroy",{keepEvents:t}),t||Yd(i),[i.ticks,i.minorTicks,i.alternateBands].forEach(function(s){Fd(s)}),n){let s=n.length;for(;s--;)n[s].destroy()}["axisLine","axisTitle","axisGroup","gridGroup","labelGroup","cross","scrollbar"].forEach(function(s){i[s]&&(i[s]=i[s].destroy())});for(let s in i.plotLinesAndBandsGroups)i.plotLinesAndBandsGroups[s]=i.plotLinesAndBandsGroups[s].destroy();Cn(i,function(s,o){i.getKeepProps().indexOf(o)===-1&&delete i[o]}),this.eventOptions=r}drawCrosshair(t,i){let n=this.crosshair,r=K(n&&n.snap,!0),s=this.chart,o,a,h,c=this.cross,p;if(xt(this,"drawCrosshair",{e:t,point:i}),t||(t=this.cross&&this.cross.e),!n||(ft(i)||!r)===!1)this.hideCrosshair();else{if(r?ft(i)&&(a=K(this.coll!=="colorAxis"?i.crosshairPos:null,this.isXAxis?i.plotX:this.len-i.plotY)):a=t&&(this.horiz?t.chartX-this.pos:this.len-t.chartY+this.pos),ft(a)&&(p={value:i&&(this.isXAxis?i.x:K(i.stackY,i.y)),translatedValue:a},s.polar&&Hr(p,{isCrosshair:!0,chartX:t&&t.chartX,chartY:t&&t.chartY,point:i}),o=this.getPlotLinePath(p)||null),!ft(o)){this.hideCrosshair();return}h=this.categories&&!this.isRadial,c||(this.cross=c=s.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(h?"category ":"thin ")+(n.className||"")).attr({zIndex:K(n.zIndex,2)}).add(),s.styledMode||(c.attr({stroke:n.color||(h?Bt.parse("#ccd3ff").setOpacity(.25).get():"#cccccc"),"stroke-width":K(n.width,1)}).css({"pointer-events":"none"}),n.dashStyle&&c.attr({dashstyle:n.dashStyle}))),c.show().attr({d:o}),h&&!n.width&&c.attr({"stroke-width":this.transA}),this.cross.e=t}xt(this,"afterDrawCrosshair",{e:t,point:i})}hideCrosshair(){this.cross&&this.cross.hide(),xt(this,"afterHideCrosshair")}update(t,i){let n=this.chart;t=Tn(this.userOptions,t),this.destroy(!0),this.init(n,t),n.isDirtyBox=!0,K(i,!0)&&n.redraw()}remove(t){let i=this.chart,n=this.coll,r=this.series,s=r.length;for(;s--;)r[s]&&r[s].remove(!1);da(i.axes,this),da(i[n]||[],this),i.orderItems(n),this.destroy(),i.isDirtyBox=!0,K(t,!0)&&i.redraw()}setTitle(t,i){this.update({title:t},i)}setCategories(t,i){this.update({categories:t},i)}}return l.keepProps=["coll","extKey","hcEvents","len","names","series","userMax","userMin"],l})(),_i=Gd;var{addEvent:jd,getMagnitude:Ud,normalizeTickInterval:$d,timeUnits:wn}=E,zr;(function(l){function e(r){if(!r.keepProps.includes("dateTime")){r.keepProps.push("dateTime");let s=r.prototype;s.getTimeTicks=t,jd(r,"afterSetType",i)}return r}l.compose=e;function t(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function i(){if(this.type!=="datetime"){this.dateTime=void 0;return}this.dateTime||(this.dateTime=new n(this))}class n{constructor(s){this.axis=s}normalizeTimeTickInterval(s,o){let a=o||[["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]],h=a[a.length-1],c=wn[h[0]],p=h[1],d;for(d=0;d<a.length;d++)if(h=a[d],c=wn[h[0]],p=h[1],a[d+1]){let u=(c*p[p.length-1]+wn[a[d+1][0]])/2;if(s<=u)break}c===wn.year&&s<5*c&&(p=[1,2,5]);let f=$d(s/c,p,h[0]==="year"?Math.max(Ud(s/c),1):1);return{unitRange:c,count:f,unitName:h[0]}}getXDateFormat(s,o){let{axis:a}=this,h=a.chart.time;return a.closestPointRange?h.getDateFormat(a.closestPointRange,s,a.options.startOfWeek,o)||h.resolveDTLFormat(o.year).main:h.resolveDTLFormat(o.day).main}}l.Additions=n})(zr||(zr={}));var ga=zr;var{addEvent:xa,normalizeTickInterval:qd,pick:Kd}=E,Yr;(function(l){function e(r){return r.keepProps.includes("logarithmic")||(r.keepProps.push("logarithmic"),xa(r,"afterSetType",t),xa(r,"afterInit",i)),r}l.compose=e;function t(){this.type!=="logarithmic"?this.logarithmic=void 0:this.logarithmic??(this.logarithmic=new n(this))}function i(){let r=this,s=r.logarithmic;s&&(r.lin2val=function(o){return s.lin2log(o)},r.val2lin=function(o){return s.log2lin(o)})}class n{constructor(s){this.axis=s}getLogTickPositions(s,o,a,h){let c=this,p=c.axis,d=p.len,f=p.options,u=[];if(h||(c.minorAutoInterval=void 0),s>=.5)s=Math.round(s),u=p.getLinearTickPositions(s,o,a);else if(s>=.08){let m=Math.floor(o),g,x,y,b,v,S,C;for(s>.3?g=[1,2,4]:s>.15?g=[1,2,4,6,8]:g=[1,2,3,4,5,6,7,8,9],x=m;x<a+1&&!C;x++)for(b=g.length,y=0;y<b&&!C;y++)v=c.log2lin(c.lin2log(x)*g[y]),v>o&&(!h||S<=a)&&typeof S<"u"&&u.push(S),S>a&&(C=!0),S=v}else{let m=c.lin2log(o),g=c.lin2log(a),x=h?p.getMinorTickInterval():f.tickInterval,y=x==="auto"?null:x,b=f.tickPixelInterval/(h?5:1),v=h?d/p.tickPositions.length:d;s=Kd(y,c.minorAutoInterval,(g-m)*b/(v||1)),s=qd(s),u=p.getLinearTickPositions(s,m,g).map(c.log2lin),h||(c.minorAutoInterval=s/5)}return h||(p.tickInterval=s),u}lin2log(s){return Math.pow(10,s)}log2lin(s){return Math.log(s)/Math.LN10}}l.Additions=n})(Yr||(Yr={}));var ya=Yr;var{erase:Zd,extend:Qd,isNumber:ba}=E,Xr;(function(l){let e;function t(c){return this.addPlotBandOrLine(c,"plotBands")}function i(c,p){let d=this.userOptions,f=new e(this,c);if(this.visible&&(f=f.render()),f){if(this._addedPlotLB||(this._addedPlotLB=!0,(d.plotLines||[]).concat(d.plotBands||[]).forEach(u=>{this.addPlotBandOrLine(u)})),p){let u=d[p]||[];u.push(c),d[p]=u}this.plotLinesAndBands.push(f)}return f}function n(c){return this.addPlotBandOrLine(c,"plotLines")}function r(c,p){let d=p.prototype;return d.addPlotBand||(e=c,Qd(d,{addPlotBand:t,addPlotLine:n,addPlotBandOrLine:i,getPlotBandPath:s,removePlotBand:o,removePlotLine:h,removePlotBandOrLine:a})),p}l.compose=r;function s(c,p,d){d=d||this.options;let f=this.getPlotLinePath({value:p,force:!0,acrossPanes:d.acrossPanes}),u=[],m=this.horiz,g=!ba(this.min)||!ba(this.max)||c<this.min&&p<this.min||c>this.max&&p>this.max,x=this.getPlotLinePath({value:c,force:!0,acrossPanes:d.acrossPanes}),y,b=1,v;if(x&&f)for(g&&(v=x.toString()===f.toString(),b=0),y=0;y<x.length;y+=2){let S=x[y],C=x[y+1],D=f[y],T=f[y+1];(S[0]==="M"||S[0]==="L")&&(C[0]==="M"||C[0]==="L")&&(D[0]==="M"||D[0]==="L")&&(T[0]==="M"||T[0]==="L")&&(m&&D[1]===S[1]?(D[1]+=b,T[1]+=b):!m&&D[2]===S[2]&&(D[2]+=b,T[2]+=b),u.push(["M",S[1],S[2]],["L",C[1],C[2]],["L",T[1],T[2]],["L",D[1],D[2]],["Z"])),u.isFlat=v}return u}function o(c){this.removePlotBandOrLine(c)}function a(c){let p=this.plotLinesAndBands,d=this.options,f=this.userOptions;if(p){let u=p.length;for(;u--;)p[u].id===c&&p[u].destroy();[d.plotLines||[],f.plotLines||[],d.plotBands||[],f.plotBands||[]].forEach(function(m){for(u=m.length;u--;)(m[u]||{}).id===c&&Zd(m,m[u])})}}function h(c){this.removePlotBandOrLine(c)}})(Xr||(Xr={}));var va=Xr;var{addEvent:Jd,arrayMax:Sa,arrayMin:Ca,defined:se,destroyObjectProperties:tf,erase:ef,fireEvent:nf,merge:Da,objectEach:rf,pick:sf}=E,Vr=class l{static compose(e,t){return Jd(e,"afterInit",function(){this.labelCollectors.push(()=>{let i=[];for(let n of this.axes)for(let{label:r,options:s}of n.plotLinesAndBands)r&&!s?.label?.allowOverlap&&i.push(r);return i})}),va.compose(l,t)}constructor(e,t){this.axis=e,this.options=t,this.id=t.id}render(){nf(this,"render");let{axis:e,options:t}=this,{horiz:i,logarithmic:n}=e,{color:r,events:s,zIndex:o=0}=t,a={},h=e.chart.renderer,c=t.to,p=t.from,d=t.value,f=t.borderWidth,u=t.label,{label:m,svgElem:g}=this,x=[],y,b=se(p)&&se(c),v=se(d),S=!g,C={class:"highcharts-plot-"+(b?"band ":"line ")+(t.className||"")},D=b?"bands":"lines";if(e.chart.styledMode||(v?(C.stroke=r||"#999999",C["stroke-width"]=sf(t.width,1),t.dashStyle&&(C.dashstyle=t.dashStyle)):b&&(C.fill=r||"#e6e9ff",f&&(C.stroke=t.borderColor,C["stroke-width"]=f))),a.zIndex=o,D+="-"+o,y=e.plotLinesAndBandsGroups[D],y||(e.plotLinesAndBandsGroups[D]=y=h.g("plot-"+D).attr(a).add()),g||(this.svgElem=g=h.path().attr(C).add(y)),se(d))x=e.getPlotLinePath({value:n?.log2lin(d)??d,lineWidth:g.strokeWidth(),acrossPanes:t.acrossPanes});else if(se(p)&&se(c))x=e.getPlotBandPath(n?.log2lin(p)??p,n?.log2lin(c)??c,t);else return;return!this.eventsAdded&&s&&(rf(s,(T,M)=>{g?.on(M,O=>{s[M].apply(this,[O])})}),this.eventsAdded=!0),(S||!g.d)&&x?.length?g.attr({d:x}):g&&(x?(g.show(),g.animate({d:x})):g.d&&(g.hide(),m&&(this.label=m=m.destroy()))),u&&(se(u.text)||se(u.formatter))&&x?.length&&e.width>0&&e.height>0&&!x.isFlat?(u=Da(vt({align:i&&b?"center":void 0,x:i?!b&&4:10,verticalAlign:!i&&b?"middle":void 0,y:i?b?16:10:b?6:-4,rotation:i&&!b?90:0},b?{inside:!0}:{}),u),this.renderLabel(u,x,b,o)):m&&m.hide(),this}renderLabel(e,t,i,n){let r=this,s=r.axis,o=s.chart.renderer,a=e.inside,h=r.label;h||(r.label=h=o.text(this.getLabelText(e),0,0,e.useHTML).attr({align:e.textAlign||e.align,rotation:e.rotation,class:"highcharts-plot-"+(i?"band":"line")+"-label "+(e.className||""),zIndex:n}),s.chart.styledMode||h.css(Da({fontSize:"0.8em",textOverflow:i&&!a?"":"ellipsis"},e.style)),h.add());let c=t.xBounds||[t[0][1],t[1][1],i?t[2][1]:t[0][1]],p=t.yBounds||[t[0][2],t[1][2],i?t[2][2]:t[0][2]],d=Ca(c),f=Ca(p),u=Sa(c)-d;h.align(e,!1,{x:d,y:f,width:u,height:Sa(p)-f}),(!h.alignValue||h.alignValue==="left"||se(a))&&h.css({width:(e.style?.width||(!i||!a?h.rotation===90?s.height-(h.alignAttr.y-s.top):(e.clip?s.width:s.chart.chartWidth)-(h.alignAttr.x-s.left):u))+"px"}),h.show(!0)}getLabelText(e){return se(e.formatter)?e.formatter.call(this):e.text}destroy(){ef(this.axis.plotLinesAndBands,this),delete this.axis,tf(this)}},Gr=Vr;var{animObject:of}=lt,{format:Ta}=Tt,{composed:af,doc:wa,isSafari:lf}=B,{distribute:hf}=Ce,{addEvent:cf,clamp:Bi,css:Pa,discardElement:df,extend:ff,fireEvent:Ma,isArray:pf,isNumber:uf,isString:jr,merge:mf,pick:fi,pushUnique:gf,splat:Ur,syncTimeout:xf}=E,Ri=class{constructor(e,t,i){this.allowShared=!0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.options={},this.outside=!1,this.chart=e,this.init(e,t),this.pointer=i}bodyFormatter(e){return e.map(function(t){let i=t.series.tooltipOptions;return(i[(t.point.formatPrefix||"point")+"Formatter"]||t.point.tooltipFormatter).call(t.point,i[(t.point.formatPrefix||"point")+"Format"]||"")})}cleanSplit(e){this.chart.series.forEach(function(t){let i=t&&t.tt;i&&(!i.isActive||e?t.tt=i.destroy():i.isActive=!1)})}defaultFormatter(e){let t=this.points||Ur(this),i;return i=[e.tooltipFooterHeaderFormatter(t[0])],i=i.concat(e.bodyFormatter(t)),i.push(e.tooltipFooterHeaderFormatter(t[0],!0)),i}destroy(){this.label&&(this.label=this.label.destroy()),this.split&&(this.cleanSplit(!0),this.tt&&(this.tt=this.tt.destroy())),this.renderer&&(this.renderer=this.renderer.destroy(),df(this.container)),E.clearTimeout(this.hideTimer)}getAnchor(e,t){let{chart:i,pointer:n}=this,r=i.inverted,s=i.plotTop,o=i.plotLeft,a;if(e=Ur(e),e[0].series&&e[0].series.yAxis&&!e[0].series.yAxis.options.reversedStacks&&(e=e.slice().reverse()),this.followPointer&&t)typeof t.chartX>"u"&&(t=n.normalize(t)),a=[t.chartX-o,t.chartY-s];else if(e[0].tooltipPos)a=e[0].tooltipPos;else{let h=0,c=0;e.forEach(function(p){let d=p.pos(!0);d&&(h+=d[0],c+=d[1])}),h/=e.length,c/=e.length,this.shared&&e.length>1&&t&&(r?h=t.chartX:c=t.chartY),a=[h-o,c-s]}return a.map(Math.round)}getClassName(e,t,i){let n=this.options,r=e.series,s=r.options;return[n.className,"highcharts-label",i&&"highcharts-tooltip-header",t?"highcharts-tooltip-box":"highcharts-tooltip",!i&&"highcharts-color-"+fi(e.colorIndex,r.colorIndex),s&&s.className].filter(jr).join(" ")}getLabel({anchorX:e,anchorY:t}={anchorX:0,anchorY:0}){let i=this,n=this.chart.styledMode,r=this.options,s=this.split&&this.allowShared,o=this.container,a=this.chart.renderer;if(this.label){let h=!this.label.hasClass("highcharts-label");(!s&&h||s&&!h)&&this.destroy()}if(!this.label){if(this.outside){let h=this.chart.options.chart.style,c=ne.getRendererType();this.container=o=B.doc.createElement("div"),o.className="highcharts-tooltip-container",Pa(o,{position:"absolute",top:"1px",pointerEvents:"none",zIndex:Math.max(this.options.style.zIndex||0,(h&&h.zIndex||0)+3)}),this.renderer=a=new c(o,0,0,h,void 0,void 0,a.styledMode)}if(s?this.label=a.g("tooltip"):(this.label=a.label("",e,t,r.shape,void 0,void 0,r.useHTML,void 0,"tooltip").attr({padding:r.padding,r:r.borderRadius}),n||this.label.attr({fill:r.backgroundColor,"stroke-width":r.borderWidth||0}).css(r.style).css({pointerEvents:r.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none")})),i.outside){let h=this.label;[h.xSetter,h.ySetter].forEach((c,p)=>{h[p?"ySetter":"xSetter"]=d=>{c.call(h,i.distance),h[p?"y":"x"]=d,o&&(o.style[p?"top":"left"]=`${d}px`)}})}this.label.attr({zIndex:8}).shadow(r.shadow).add()}return o&&!o.parentElement&&B.doc.body.appendChild(o),this.label}getPlayingField(){let{body:e,documentElement:t}=wa,{chart:i,distance:n,outside:r}=this;return{width:r?Math.max(e.scrollWidth,t.scrollWidth,e.offsetWidth,t.offsetWidth,t.clientWidth)-2*n:i.chartWidth,height:r?Math.max(e.scrollHeight,t.scrollHeight,e.offsetHeight,t.offsetHeight,t.clientHeight):i.chartHeight}}getPosition(e,t,i){let{distance:n,chart:r,outside:s,pointer:o}=this,{inverted:a,plotLeft:h,plotTop:c,polar:p}=r,{plotX:d=0,plotY:f=0}=i,u={},m=a&&i.h||0,{height:g,width:x}=this.getPlayingField(),y=o.getChartPosition(),b=z=>z*y.scaleX,v=z=>z*y.scaleY,S=z=>{let W=z==="x";return[z,W?x:g,W?e:t].concat(s?[W?b(e):v(t),W?y.left-n+b(d+h):y.top-n+v(f+c),0,W?x:g]:[W?e:t,W?d+h:f+c,W?h:c,W?h+r.plotWidth:c+r.plotHeight])},C=S("y"),D=S("x"),T,M=!!i.negative;!p&&r.hoverSeries?.yAxis?.reversed&&(M=!M);let O=!this.followPointer&&fi(i.ttBelow,p?!1:!a===M),I=function(z,W,q,et,rt,G,tt){let U=s?z==="y"?v(n):b(n):n,J=(q-et)/2,it=et<rt-n,j=rt+n+et<W,$=rt-U-q+J,st=rt+U-J;if(O&&j)u[z]=st;else if(!O&&it)u[z]=$;else if(it)u[z]=Math.min(tt-et,$-m<0?$:$-m);else if(j)u[z]=Math.max(G,st+m+q>W?st:st+m);else return!1},R=function(z,W,q,et,rt){if(rt<n||rt>W-n)return!1;rt<q/2?u[z]=1:rt>W-et/2?u[z]=W-et-2:u[z]=rt-q/2},L=function(z){[C,D]=[D,C],T=z},F=()=>{I.apply(0,C)!==!1?R.apply(0,D)===!1&&!T&&(L(!0),F()):T?u.x=u.y=0:(L(!0),F())};return(a&&!p||this.len>1)&&L(),F(),u}hide(e){let t=this;E.clearTimeout(this.hideTimer),e=fi(e,this.options.hideDelay),this.isHidden||(this.hideTimer=xf(function(){let i=t.getLabel();t.getLabel().animate({opacity:0},{duration:e&&150,complete:()=>{i.hide(),t.container&&t.container.remove()}}),t.isHidden=!0},e))}init(e,t){this.chart=e,this.options=t,this.crosshairs=[],this.isHidden=!0,this.split=t.split&&!e.inverted&&!e.polar,this.shared=t.shared||this.split,this.outside=fi(t.outside,!!(e.scrollablePixelsX||e.scrollablePixelsY))}shouldStickOnContact(e){return!!(!this.followPointer&&this.options.stickOnContact&&(!e||this.pointer.inClass(e.target,"highcharts-tooltip")))}move(e,t,i,n){let r=this,s=of(!r.isHidden&&r.options.animation),o=r.followPointer||(r.len||0)>1,a={x:e,y:t};o||(a.anchorX=i,a.anchorY=n),s.step=()=>r.drawTracker(),r.getLabel().animate(a,s)}refresh(e,t){let i=this,{chart:n,options:r,pointer:s,shared:o}=this,a=Ur(e),h=a[0],c=[],p=r.format,d=r.formatter||i.defaultFormatter,f=n.styledMode,u={},m=i.allowShared;if(!r.enabled||!h.series)return;E.clearTimeout(this.hideTimer),i.allowShared=!(!pf(e)&&e.series&&e.series.noSharedTooltip),m=m&&!i.allowShared,i.followPointer=!i.split&&h.series.tooltipOptions.followPointer;let g=i.getAnchor(e,t),x=g[0],y=g[1];o&&i.allowShared?(s.applyInactiveState(a),a.forEach(function(S){S.setState("hover"),c.push(S.getLabelConfig())}),u=h.getLabelConfig(),u.points=c):u=h.getLabelConfig(),this.len=c.length;let b=jr(p)?Ta(p,u,n):d.call(u,i),v=h.series;if(this.distance=fi(v.tooltipOptions.distance,16),b===!1)this.hide();else{if(i.split&&i.allowShared)this.renderSplit(b,a);else{let S=x,C=y;if(t&&s.isDirectTouch&&(S=t.chartX-n.plotLeft,C=t.chartY-n.plotTop),n.polar||v.options.clip===!1||a.some(D=>s.isDirectTouch||D.series.shouldShowTooltip(S,C))){let D=i.getLabel(m&&i.tt||{});(!r.style.width||f)&&D.css({width:(this.outside?this.getPlayingField():n.spacingBox).width+"px"}),D.attr({class:i.getClassName(h),text:b&&b.join?b.join(""):b}),this.outside&&D.attr({x:Bi(D.x||0,0,this.getPlayingField().width-(D.width||0))}),f||D.attr({stroke:r.borderColor||h.color||v.color||"#666666"}),i.updatePosition({plotX:x,plotY:y,negative:h.negative,ttBelow:h.ttBelow,h:g[2]||0})}else{i.hide();return}}i.isHidden&&i.label&&i.label.attr({opacity:1}).show(),i.isHidden=!1}Ma(this,"refresh")}renderSplit(e,t){let i=this,{chart:n,chart:{chartWidth:r,chartHeight:s,plotHeight:o,plotLeft:a,plotTop:h,scrollablePixelsY:c=0,scrollablePixelsX:p,styledMode:d},distance:f,options:u,options:{positioner:m},pointer:g}=i,{scrollLeft:x=0,scrollTop:y=0}=n.scrollablePlotArea?.scrollingContainer||{},b=i.outside&&typeof p!="number"?wa.documentElement.getBoundingClientRect():{left:x,right:x+r,top:y,bottom:y+s},v=i.getLabel(),S=this.renderer||n.renderer,C=!!(n.xAxis[0]&&n.xAxis[0].opposite),{left:D,top:T}=g.getChartPosition(),M=h+y,O=0,I=o-c;function R(G){let{isHeader:tt,plotX:U=0,plotY:J=0,series:it}=G,j,$;if(tt)j=Math.max(a+U,a),$=h+o/2;else{let{xAxis:st,yAxis:At}=it;j=st.pos+Bi(U,-f,st.len+f),it.shouldShowTooltip(0,At.pos-h+J,{ignoreX:!0})&&($=At.pos+J)}return j=Bi(j,b.left-f,b.right+f),{anchorX:j,anchorY:$}}function L(G,tt,U,J,it=!0){let j,$;return U?(j=C?0:I,$=Bi(G-J/2,b.left,b.right-J-(i.outside?D:0))):(j=tt-M,$=it?G-J-f:G+f,$=Bi($,it?$:b.left,b.right)),{x:$,y:j}}function F(G,tt,U){let J=G,{isHeader:it,series:j}=tt;if(!J){let $={padding:u.padding,r:u.borderRadius};d||($.fill=u.backgroundColor,$["stroke-width"]=u.borderWidth??1),J=S.label("",0,0,u[it?"headerShape":"shape"],void 0,void 0,u.useHTML).addClass(i.getClassName(tt,!0,it)).attr($).add(v)}return J.isActive=!0,J.attr({text:U}),d||J.css(u.style).attr({stroke:u.borderColor||tt.color||j.color||"#333333"}),J}jr(e)&&(e=[!1,e]);let z=e.slice(0,t.length+1).reduce(function(G,tt,U){if(tt!==!1&&tt!==""){let J=t[U-1]||{isHeader:!0,plotX:t[0].plotX,plotY:o,series:{}},it=J.isHeader,j=it?i:J.series,$=j.tt=F(j.tt,J,tt.toString()),st=$.getBBox(),At=st.width+$.strokeWidth();it&&(O=st.height,I+=O,C&&(M-=O));let{anchorX:Ht,anchorY:ue}=R(J);if(typeof ue=="number"){let $s=st.height+1,er=m?m.call(i,At,$s,J):L(Ht,ue,it,At);G.push({align:m?0:void 0,anchorX:Ht,anchorY:ue,boxWidth:At,point:J,rank:fi(er.rank,it?1:0),size:$s,target:er.y,tt:$,x:er.x})}else $.isActive=!1}return G},[]);!m&&z.some(G=>{let{outside:tt}=i,U=(tt?D:0)+G.anchorX;return U<b.left&&U+G.boxWidth<b.right?!0:U<D-b.left+G.boxWidth&&b.right-U>U})&&(z=z.map(G=>{let{x:tt,y:U}=L(G.anchorX,G.anchorY,G.point.isHeader,G.boxWidth,!1);return ff(G,{target:U,x:tt})})),i.cleanSplit(),hf(z,I);let W={left:D,right:D};z.forEach(function(G){let{x:tt,boxWidth:U,isHeader:J}=G;J||(i.outside&&D+tt<W.left&&(W.left=D+tt),!J&&i.outside&&W.left+U>W.right&&(W.right=D+tt))}),z.forEach(function(G){let{x:tt,anchorX:U,anchorY:J,pos:it,point:{isHeader:j}}=G,$={visibility:typeof it>"u"?"hidden":"inherit",x:tt,y:(it||0)+M,anchorX:U,anchorY:J};if(i.outside&&tt<U){let st=D-W.left;st>0&&(j||($.x=tt+st,$.anchorX=U+st),j&&($.x=(W.right-W.left)/2,$.anchorX=U+st))}G.tt.attr($)});let{container:q,outside:et,renderer:rt}=i;if(et&&q&&rt){let{width:G,height:tt,x:U,y:J}=v.getBBox();rt.setSize(G+U,tt+J,!1),q.style.left=W.left+"px",q.style.top=T+"px"}lf&&v.attr({opacity:v.opacity===1?.999:1})}drawTracker(){let e=this;if(!this.shouldStickOnContact()){e.tracker&&(e.tracker=e.tracker.destroy());return}let t=e.chart,i=e.label,n=e.shared?t.hoverPoints:t.hoverPoint;if(!i||!n)return;let r={x:0,y:0,width:0,height:0},s=this.getAnchor(n),o=i.getBBox();s[0]+=t.plotLeft-(i.translateX||0),s[1]+=t.plotTop-(i.translateY||0),r.x=Math.min(0,s[0]),r.y=Math.min(0,s[1]),r.width=s[0]<0?Math.max(Math.abs(s[0]),o.width-s[0]):Math.max(Math.abs(s[0]),o.width),r.height=s[1]<0?Math.max(Math.abs(s[1]),o.height-Math.abs(s[1])):Math.max(Math.abs(s[1]),o.height),e.tracker?e.tracker.attr(r):(e.tracker=i.renderer.rect(r).addClass("highcharts-tracker").add(i),t.styledMode||e.tracker.attr({fill:"rgba(0,0,0,0)"}))}styledModeFormat(e){return e.replace('style="font-size: 0.8em"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex} {series.options.className} {point.options.className}"')}tooltipFooterHeaderFormatter(e,t){let i=e.series,n=i.tooltipOptions,r=i.xAxis,s=r&&r.dateTime,o={isFooter:t,labelConfig:e},a=n.xDateFormat,h=n[t?"footerFormat":"headerFormat"];return Ma(this,"headerFormatter",o,function(c){s&&!a&&uf(e.key)&&(a=s.getXDateFormat(e.key,n.dateTimeLabelFormats)),s&&a&&(e.point&&e.point.tooltipDateKeys||["key"]).forEach(function(p){h=h.replace("{point."+p+"}","{point."+p+":"+a+"}")}),i.chart.styledMode&&(h=this.styledModeFormat(h)),c.text=Ta(h,{point:e,series:i},this.chart)}),o.text}update(e){this.destroy(),this.init(this.chart,mf(!0,this.options,e))}updatePosition(e){let{chart:t,container:i,distance:n,options:r,pointer:s,renderer:o}=this,{height:a=0,width:h=0}=this.getLabel(),{left:c,top:p,scaleX:d,scaleY:f}=s.getChartPosition(),u=(r.positioner||this.getPosition).call(this,h,a,e),m=(e.plotX||0)+t.plotLeft,g=(e.plotY||0)+t.plotTop,x;o&&i&&(r.positioner&&(u.x+=c-n,u.y+=p-n),x=(r.borderWidth||0)+2*n+2,o.setSize(h+x,a+x,!1),(d!==1||f!==1)&&(Pa(i,{transform:`scale(${d}, ${f})`}),m*=d,g*=f),m+=c-u.x,g+=p-u.y),this.move(Math.round(u.x),Math.round(u.y||0),m,g)}};(function(l){function e(t){gf(af,"Core.Tooltip")&&cf(t,"afterInit",function(){let i=this.chart;i.options.tooltip&&(i.tooltip=new l(i,i.options.tooltip,this))})}l.compose=e})(Ri||(Ri={}));var $r=Ri;var{animObject:yf}=lt,{defaultOptions:bf}=Ct,{format:vf}=Tt,{addEvent:Sf,crisp:Cf,erase:Df,extend:Pn,fireEvent:qr,getNestedProperty:Tf,isArray:wf,isFunction:Pf,isNumber:Ve,isObject:Mn,merge:Mf,pick:de,syncTimeout:kf,removeEvent:ka,uniqueKey:Of}=E,Kr=class l{animateBeforeDestroy(){let e=this,t={x:e.startXPos,opacity:0},i=e.getGraphicalProps();i.singular.forEach(function(n){let r=n==="dataLabel";e[n]=e[n].animate(r?{x:e[n].startXPos,y:e[n].startYPos,opacity:0}:t)}),i.plural.forEach(function(n){e[n].forEach(function(r){r.element&&r.animate(Pn({x:e.startXPos},r.startYPos?{x:r.startXPos,y:r.startYPos}:{}))})})}applyOptions(e,t){let i=this,n=i.series,r=n.options.pointValKey||n.pointValKey;return e=l.prototype.optionsToObject.call(this,e),Pn(i,e),i.options=i.options?Pn(i.options,e):e,e.group&&delete i.group,e.dataLabels&&delete i.dataLabels,r&&(i.y=l.prototype.getNestedProperty.call(i,r)),i.selected&&(i.state="select"),"name"in i&&typeof t>"u"&&n.xAxis&&n.xAxis.hasNames&&(i.x=n.xAxis.nameToX(i)),typeof i.x>"u"&&n?i.x=t??n.autoIncrement():Ve(e.x)&&n.options.relativeXValue&&(i.x=n.autoIncrement(e.x)),i.isNull=this.isValid&&!this.isValid(),i.formatPrefix=i.isNull?"null":"point",i}destroy(){if(!this.destroyed){let e=this,t=e.series,i=t.chart,n=t.options.dataSorting,r=i.hoverPoints,s=e.series.chart.renderer.globalAnimation,o=yf(s),a=()=>{(e.graphic||e.graphics||e.dataLabel||e.dataLabels)&&(ka(e),e.destroyElements());for(let h in e)delete e[h]};e.legendItem&&i.legend.destroyItem(e),r&&(e.setState(),Df(r,e),r.length||(i.hoverPoints=null)),e===i.hoverPoint&&e.onMouseOut(),!n||!n.enabled?a():(this.animateBeforeDestroy(),kf(a,o.duration)),i.pointCount--}this.destroyed=!0}destroyElements(e){let t=this,i=t.getGraphicalProps(e);i.singular.forEach(function(n){t[n]=t[n].destroy()}),i.plural.forEach(function(n){t[n].forEach(function(r){r&&r.element&&r.destroy()}),delete t[n]})}firePointEvent(e,t,i){let n=this,r=this.series,s=r.options;n.manageEvent(e),e==="click"&&s.allowPointSelect&&(i=function(o){!n.destroyed&&n.select&&n.select(null,o.ctrlKey||o.metaKey||o.shiftKey)}),qr(n,e,t,i)}getClassName(){let e=this;return"highcharts-point"+(e.selected?" highcharts-point-select":"")+(e.negative?" highcharts-negative":"")+(e.isNull?" highcharts-null-point":"")+(typeof e.colorIndex<"u"?" highcharts-color-"+e.colorIndex:"")+(e.options.className?" "+e.options.className:"")+(e.zone&&e.zone.className?" "+e.zone.className.replace("highcharts-negative",""):"")}getGraphicalProps(e){let t=this,i=[],n={singular:[],plural:[]},r,s;for(e=e||{graphic:1,dataLabel:1},e.graphic&&i.push("graphic","connector"),e.dataLabel&&i.push("dataLabel","dataLabelPath","dataLabelUpper"),s=i.length;s--;)r=i[s],t[r]&&n.singular.push(r);return["graphic","dataLabel"].forEach(function(o){let a=o+"s";e[o]&&t[a]&&n.plural.push(a)}),n}getLabelConfig(){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}}getNestedProperty(e){if(e)return e.indexOf("custom.")===0?Tf(e,this.options):this[e]}getZone(){let e=this.series,t=e.zones,i=e.zoneAxis||"y",n,r=0;for(n=t[r];this[i]>=n.value;)n=t[++r];return this.nonZonedColor||(this.nonZonedColor=this.color),n&&n.color&&!this.options.color?this.color=n.color:this.color=this.nonZonedColor,n}hasNewShapeType(){let e=this;return(e.graphic&&(e.graphic.symbolName||e.graphic.element.nodeName))!==this.shapeType}constructor(e,t,i){this.formatPrefix="point",this.visible=!0,this.series=e,this.applyOptions(t,i),this.id??(this.id=Of()),this.resolveColor(),e.chart.pointCount++,qr(this,"afterInit")}isValid(){return(Ve(this.x)||this.x instanceof Date)&&Ve(this.y)}optionsToObject(e){let t=this.series,i=t.options.keys,n=i||t.pointArrayMap||["y"],r=n.length,s={},o,a=0,h=0;if(Ve(e)||e===null)s[n[0]]=e;else if(wf(e))for(!i&&e.length>r&&(o=typeof e[0],o==="string"?s.name=e[0]:o==="number"&&(s.x=e[0]),a++);h<r;)(!i||typeof e[a]<"u")&&(n[h].indexOf(".")>0?l.prototype.setNestedProperty(s,e[a],n[h]):s[n[h]]=e[a]),a++,h++;else typeof e=="object"&&(s=e,e.dataLabels&&(t.hasDataLabels=()=>!0),e.marker&&(t._hasPointMarkers=!0));return s}pos(e,t=this.plotY){if(!this.destroyed){let{plotX:i,series:n}=this,{chart:r,xAxis:s,yAxis:o}=n,a=0,h=0;if(Ve(i)&&Ve(t))return e&&(a=s?s.pos:r.plotLeft,h=o?o.pos:r.plotTop),r.inverted&&s&&o?[o.len-t+h,s.len-i+a]:[i+a,t+h]}}resolveColor(){let e=this.series,t=e.chart.options.chart,i=e.chart.styledMode,n,r,s=t.colorCount,o;delete this.nonZonedColor,e.options.colorByPoint?(i||(r=e.options.colors||e.chart.options.colors,n=r[e.colorCounter],s=r.length),o=e.colorCounter,e.colorCounter++,e.colorCounter===s&&(e.colorCounter=0)):(i||(n=e.color),o=e.colorIndex),this.colorIndex=de(this.options.colorIndex,o),this.color=de(this.options.color,n)}setNestedProperty(e,t,i){return i.split(".").reduce(function(r,s,o,a){let h=a.length-1===o;return r[s]=h?t:Mn(r[s],!0)?r[s]:{},r[s]},e),e}shouldDraw(){return!this.isNull}tooltipFormatter(e){let t=this.series,i=t.tooltipOptions,n=de(i.valueDecimals,""),r=i.valuePrefix||"",s=i.valueSuffix||"";return t.chart.styledMode&&(e=t.chart.tooltip.styledModeFormat(e)),(t.pointArrayMap||["y"]).forEach(function(o){o="{point."+o,(r||s)&&(e=e.replace(RegExp(o+"}","g"),r+o+"}"+s)),e=e.replace(RegExp(o+"}","g"),o+":,."+n+"f}")}),vf(e,{point:this,series:this.series},t.chart)}update(e,t,i,n){let r=this,s=r.series,o=r.graphic,a=s.chart,h=s.options,c;t=de(t,!0);function p(){r.applyOptions(e);let d=o&&r.hasMockGraphic,f=r.y===null?!d:d;o&&f&&(r.graphic=o.destroy(),delete r.hasMockGraphic),Mn(e,!0)&&(o&&o.element&&e&&e.marker&&typeof e.marker.symbol<"u"&&(r.graphic=o.destroy()),e?.dataLabels&&r.dataLabel&&(r.dataLabel=r.dataLabel.destroy())),c=r.index,s.updateParallelArrays(r,c),h.data[c]=Mn(h.data[c],!0)||Mn(e,!0)?r.options:de(e,h.data[c]),s.isDirty=s.isDirtyData=!0,!s.fixedBox&&s.hasCartesianSeries&&(a.isDirtyBox=!0),h.legendType==="point"&&(a.isDirtyLegend=!0),t&&a.redraw(i)}n===!1?p():r.firePointEvent("update",{options:e},p)}remove(e,t){this.series.removePoint(this.series.data.indexOf(this),e,t)}select(e,t){let i=this,n=i.series,r=n.chart;e=de(e,!i.selected),this.selectedStaging=e,i.firePointEvent(e?"select":"unselect",{accumulate:t},function(){i.selected=i.options.selected=e,n.options.data[n.data.indexOf(i)]=i.options,i.setState(e&&"select"),t||r.getSelectedPoints().forEach(function(s){let o=s.series;s.selected&&s!==i&&(s.selected=s.options.selected=!1,o.options.data[o.data.indexOf(s)]=s.options,s.setState(r.hoverPoints&&o.options.inactiveOtherPoints?"inactive":""),s.firePointEvent("unselect"))})}),delete this.selectedStaging}onMouseOver(e){let t=this,i=t.series,{inverted:n,pointer:r}=i.chart;r&&(e=e?r.normalize(e):r.getChartCoordinatesFromPoint(t,n),r.runPointActions(e,t))}onMouseOut(){let e=this,t=e.series.chart;e.firePointEvent("mouseOut"),e.series.options.inactiveOtherPoints||(t.hoverPoints||[]).forEach(function(i){i.setState()}),t.hoverPoints=t.hoverPoint=null}manageEvent(e){let t=this,i=Mf(t.series.options.point,t.options),n=i.events?.[e];Pf(n)&&(!t.hcEvents?.[e]||t.hcEvents?.[e]?.map(r=>r.fn).indexOf(n)===-1)?(t.importedUserEvent?.(),t.importedUserEvent=Sf(t,e,n)):t.importedUserEvent&&!n&&t.hcEvents?.[e]&&(ka(t,e),delete t.hcEvents[e],Object.keys(t.hcEvents)||delete t.importedUserEvent)}setState(e,t){let i=this,n=i.series,r=i.state,s=n.options.states[e||"normal"]||{},o=bf.plotOptions[n.type].marker&&n.options.marker,a=o&&o.enabled===!1,h=o&&o.states&&o.states[e||"normal"]||{},c=h.enabled===!1,p=i.marker||{},d=n.chart,f=o&&n.markerAttribs,u=n.halo,m,g,x,y=n.stateMarkerGraphic,b;if(e=e||"",e===i.state&&!t||i.selected&&e!=="select"||s.enabled===!1||e&&(c||a&&h.enabled===!1)||e&&p.states&&p.states[e]&&p.states[e].enabled===!1)return;if(i.state=e,f&&(m=n.markerAttribs(i,e)),i.graphic&&!i.hasMockGraphic){if(r&&i.graphic.removeClass("highcharts-point-"+r),e&&i.graphic.addClass("highcharts-point-"+e),!d.styledMode){g=n.pointAttribs(i,e),x=de(d.options.chart.animation,s.animation);let D=g.opacity;n.options.inactiveOtherPoints&&Ve(D)&&(i.dataLabels||[]).forEach(function(T){T&&!T.hasClass("highcharts-data-label-hidden")&&(T.animate({opacity:D},x),T.connector&&T.connector.animate({opacity:D},x))}),i.graphic.animate(g,x)}m&&i.graphic.animate(m,de(d.options.chart.animation,h.animation,o.animation)),y&&y.hide()}else e&&h&&(b=p.symbol||n.symbol,y&&y.currentSymbol!==b&&(y=y.destroy()),m&&(y?y[t?"animate":"attr"]({x:m.x,y:m.y}):b&&(n.stateMarkerGraphic=y=d.renderer.symbol(b,m.x,m.y,m.width,m.height).add(n.markerGroup),y.currentSymbol=b)),!d.styledMode&&y&&i.state!=="inactive"&&y.attr(n.pointAttribs(i,e))),y&&(y[e&&i.isInside?"show":"hide"](),y.element.point=i,y.addClass(i.getClassName(),!0));let v=s.halo,S=i.graphic||y,C=S&&S.visibility||"inherit";v&&v.size&&S&&C!=="hidden"&&!i.isCluster?(u||(n.halo=u=d.renderer.path().add(S.parentGroup)),u.show()[t?"animate":"attr"]({d:i.haloPath(v.size)}),u.attr({class:"highcharts-halo highcharts-color-"+de(i.colorIndex,n.colorIndex)+(i.className?" "+i.className:""),visibility:C,zIndex:-1}),u.point=i,d.styledMode||u.attr(Pn({fill:i.color||n.color,"fill-opacity":v.opacity},Mt.filterUserAttributes(v.attributes||{})))):u?.point?.haloPath&&!u.point.destroyed&&u.animate({d:u.point.haloPath(0)},null,u.hide),qr(i,"afterSetState",{state:e})}haloPath(e){let t=this.pos();return t?this.series.chart.renderer.symbols.circle(Cf(t[0],1)-e,t[1]-e,e*2,e*2):[]}},jt=Kr;var{parse:Af}=Bt,{charts:Zr,composed:Ef,isTouchDevice:If}=B,{addEvent:Ut,attr:Lf,css:Qr,extend:Jr,find:Oa,fireEvent:Te,isNumber:kn,isObject:On,objectEach:_f,offset:Bf,pick:te,pushUnique:Rf,splat:Aa}=E,Wi=class l{applyInactiveState(e){let t=[],i;(e||[]).forEach(function(n){i=n.series,t.push(i),i.linkedParent&&t.push(i.linkedParent),i.linkedSeries&&(t=t.concat(i.linkedSeries)),i.navigatorSeries&&t.push(i.navigatorSeries)}),this.chart.series.forEach(function(n){t.indexOf(n)===-1?n.setState("inactive",!0):n.options.inactiveOtherPoints&&n.setAllPointsToState("inactive")})}destroy(){let e=this;this.eventsToUnbind.forEach(t=>t()),this.eventsToUnbind=[],B.chartCount||(l.unbindDocumentMouseUp&&l.unbindDocumentMouseUp.forEach(t=>t()),l.unbindDocumentTouchEnd&&(l.unbindDocumentTouchEnd=l.unbindDocumentTouchEnd())),clearInterval(e.tooltipTimeout),_f(e,function(t,i){e[i]=void 0})}getSelectionMarkerAttrs(e,t){let i={args:{chartX:e,chartY:t},attrs:{},shapeType:"rect"};return Te(this,"getSelectionMarkerAttrs",i,n=>{let{chart:r,zoomHor:s,zoomVert:o}=this,{mouseDownX:a=0,mouseDownY:h=0}=r,c=n.attrs,p;c.x=r.plotLeft,c.y=r.plotTop,c.width=s?1:r.plotWidth,c.height=o?1:r.plotHeight,s&&(p=e-a,c.width=Math.max(1,Math.abs(p)),c.x=(p>0?0:p)+a),o&&(p=t-h,c.height=Math.max(1,Math.abs(p)),c.y=(p>0?0:p)+h)}),i}drag(e){let{chart:t}=this,{mouseDownX:i=0,mouseDownY:n=0}=t,{panning:r,panKey:s,selectionMarkerFill:o}=t.options.chart,a=t.plotLeft,h=t.plotTop,c=t.plotWidth,p=t.plotHeight,d=On(r)?r.enabled:r,f=s&&e[`${s}Key`],u=e.chartX,m=e.chartY,g,x=this.selectionMarker;if(!(x&&x.touch)&&(u<a?u=a:u>a+c&&(u=a+c),m<h?m=h:m>h+p&&(m=h+p),this.hasDragged=Math.sqrt(Math.pow(i-u,2)+Math.pow(n-m,2)),this.hasDragged>10)){g=t.isInsidePlot(i-a,n-h,{visiblePlotOnly:!0});let{shapeType:y,attrs:b}=this.getSelectionMarkerAttrs(u,m);(t.hasCartesianSeries||t.mapView)&&this.hasZoom&&g&&!f&&(x||(this.selectionMarker=x=t.renderer[y](),x.attr({class:"highcharts-selection-marker",zIndex:7}).add(),t.styledMode||x.attr({fill:o||Af("#334eff").setOpacity(.25).get()}))),x&&x.attr(b),g&&!x&&d&&t.pan(e,r)}}dragStart(e){let t=this.chart;t.mouseIsDown=e.type,t.cancelClick=!1,t.mouseDownX=e.chartX,t.mouseDownY=e.chartY}getSelectionBox(e){let t={args:{marker:e},result:e.getBBox()};return Te(this,"getSelectionBox",t),t.result}drop(e){let{chart:t,selectionMarker:i}=this,n;for(let r of t.axes)r.isPanning&&(r.isPanning=!1,(r.options.startOnTick||r.options.endOnTick||r.series.some(s=>s.boosted))&&(r.forceRedraw=!0,r.setExtremes(r.userMin,r.userMax,!1),n=!0));if(n&&t.redraw(),i&&e){if(this.hasDragged){let r=this.getSelectionBox(i);t.transform({axes:t.axes.filter(s=>s.zoomEnabled&&(s.coll==="xAxis"&&this.zoomX||s.coll==="yAxis"&&this.zoomY)),selection:vt({originalEvent:e,xAxis:[],yAxis:[]},r),from:r})}kn(t.index)&&(this.selectionMarker=i.destroy())}t&&kn(t.index)&&(Qr(t.container,{cursor:t._cursor}),t.cancelClick=this.hasDragged>10,t.mouseIsDown=!1,this.hasDragged=0,this.pinchDown=[])}findNearestKDPoint(e,t,i){let n;function r(s,o){let a=s.distX-o.distX,h=s.dist-o.dist,c=o.series.group?.zIndex-s.series.group?.zIndex,p;return a!==0&&t?p=a:h!==0?p=h:c!==0?p=c:p=s.series.index>o.series.index?-1:1,p}return e.forEach(function(s){let o=s.noSharedTooltip&&t,a=!o&&s.options.findNearestPointBy.indexOf("y")<0,h=s.searchPoint(i,a);On(h,!0)&&h.series&&(!On(n,!0)||r(n,h)>0)&&(n=h)}),n}getChartCoordinatesFromPoint(e,t){let{xAxis:i,yAxis:n}=e.series,r=e.shapeArgs;if(i&&n){let s=e.clientX??e.plotX??0,o=e.plotY||0;return e.isNode&&r&&kn(r.x)&&kn(r.y)&&(s=r.x,o=r.y),t?{chartX:n.len+n.pos-o,chartY:i.len+i.pos-s}:{chartX:s+i.pos,chartY:o+n.pos}}if(r&&r.x&&r.y)return{chartX:r.x,chartY:r.y}}getChartPosition(){if(this.chartPosition)return this.chartPosition;let{container:e}=this.chart,t=Bf(e);this.chartPosition={left:t.left,top:t.top,scaleX:1,scaleY:1};let{offsetHeight:i,offsetWidth:n}=e;return n>2&&i>2&&(this.chartPosition.scaleX=t.width/n,this.chartPosition.scaleY=t.height/i),this.chartPosition}getCoordinates(e){let t={xAxis:[],yAxis:[]};for(let i of this.chart.axes)t[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(e[i.horiz?"chartX":"chartY"])});return t}getHoverData(e,t,i,n,r,s){let o=[],a=!!(n&&e),h=function(m){return m.visible&&!(!r&&m.directTouch)&&te(m.options.enableMouseTracking,!0)},c=t,p,d={chartX:s?s.chartX:void 0,chartY:s?s.chartY:void 0,shared:r};Te(this,"beforeGetHoverData",d),p=c&&!c.stickyTracking?[c]:i.filter(m=>m.stickyTracking&&(d.filter||h)(m));let u=a||!s?e:this.findNearestKDPoint(p,r,s);return c=u&&u.series,u&&(r&&!c.noSharedTooltip?(p=i.filter(function(m){return d.filter?d.filter(m):h(m)&&!m.noSharedTooltip}),p.forEach(function(m){let g=Oa(m.points,function(x){return x.x===u.x&&!x.isNull});On(g)&&(m.boosted&&m.boost&&(g=m.boost.getPoint(g)),o.push(g))})):o.push(u)),d={hoverPoint:u},Te(this,"afterGetHoverData",d),{hoverPoint:d.hoverPoint,hoverSeries:c,hoverPoints:o}}getPointFromEvent(e){let t=e.target,i;for(;t&&!i;)i=t.point,t=t.parentNode;return i}onTrackerMouseOut(e){let t=this.chart,i=e.relatedTarget,n=t.hoverSeries;this.isDirectTouch=!1,n&&i&&!n.stickyTracking&&!this.inClass(i,"highcharts-tooltip")&&(!this.inClass(i,"highcharts-series-"+n.index)||!this.inClass(i,"highcharts-tracker"))&&n.onMouseOut()}inClass(e,t){let i=e,n;for(;i;){if(n=Lf(i,"class"),n){if(n.indexOf(t)!==-1)return!0;if(n.indexOf("highcharts-container")!==-1)return!1}i=i.parentElement}}constructor(e,t){this.hasDragged=0,this.pointerCaptureEventsToUnbind=[],this.eventsToUnbind=[],this.options=t,this.chart=e,this.runChartClick=!!t.chart.events?.click,this.pinchDown=[],this.setDOMEvents(),Te(this,"afterInit")}normalize(e,t){let i=e.touches,n=i?i.length?i.item(0):te(i.changedTouches,e.changedTouches)[0]:e;t||(t=this.getChartPosition());let r=n.pageX-t.left,s=n.pageY-t.top;return r/=t.scaleX,s/=t.scaleY,Jr(e,{chartX:Math.round(r),chartY:Math.round(s)})}onContainerClick(e){let t=this.chart,i=t.hoverPoint,n=this.normalize(e),r=t.plotLeft,s=t.plotTop;t.cancelClick||(i&&this.inClass(n.target,"highcharts-tracker")?(Te(i.series,"click",Jr(n,{point:i})),t.hoverPoint&&i.firePointEvent("click",n)):(Jr(n,this.getCoordinates(n)),t.isInsidePlot(n.chartX-r,n.chartY-s,{visiblePlotOnly:!0})&&Te(t,"click",n)))}onContainerMouseDown(e){let t=((e.buttons||e.button)&1)===1;e=this.normalize(e),B.isFirefox&&e.button!==0&&this.onContainerMouseMove(e),(typeof e.button>"u"||t)&&(this.zoomOption(e),t&&e.preventDefault?.(),this.dragStart(e))}onContainerMouseLeave(e){let{pointer:t}=Zr[te(l.hoverChartIndex,-1)]||{};e=this.normalize(e),this.onContainerMouseMove(e),t&&!this.inClass(e.relatedTarget,"highcharts-tooltip")&&(t.reset(),t.chartPosition=void 0)}onContainerMouseEnter(){delete this.chartPosition}onContainerMouseMove(e){let t=this.chart,i=t.tooltip,n=this.normalize(e);this.setHoverChartIndex(e),(t.mouseIsDown==="mousedown"||this.touchSelect(n))&&this.drag(n),!t.openMenu&&(this.inClass(n.target,"highcharts-tracker")||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop,{visiblePlotOnly:!0}))&&!(i&&i.shouldStickOnContact(n))&&(this.inClass(n.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(n))}onDocumentTouchEnd(e){this.onDocumentMouseUp(e)}onContainerTouchMove(e){this.touchSelect(e)?this.onContainerMouseMove(e):this.touch(e)}onContainerTouchStart(e){this.touchSelect(e)?this.onContainerMouseDown(e):(this.zoomOption(e),this.touch(e,!0))}onDocumentMouseMove(e){let t=this.chart,i=t.tooltip,n=this.chartPosition,r=this.normalize(e,n);n&&!t.isInsidePlot(r.chartX-t.plotLeft,r.chartY-t.plotTop,{visiblePlotOnly:!0})&&!(i&&i.shouldStickOnContact(r))&&(r.target===t.container.ownerDocument||!this.inClass(r.target,"highcharts-tracker"))&&this.reset()}onDocumentMouseUp(e){Zr[te(l.hoverChartIndex,-1)]?.pointer?.drop(e)}pinch(e){let t=this,{chart:i,hasZoom:n,lastTouches:r}=t,s=[].map.call(e.touches||[],p=>t.normalize(p)),o=s.length,a=o===1&&(t.inClass(e.target,"highcharts-tracker")&&i.runTrackerClick||t.runChartClick),h=i.tooltip,c=o===1&&te(h?.options.followTouchMove,!0);o>1?t.initiated=!0:c&&(t.initiated=!1),n&&t.initiated&&!a&&e.cancelable!==!1&&e.preventDefault(),e.type==="touchstart"?(t.pinchDown=s,t.res=!0,i.mouseDownX=e.chartX):c?this.runPointActions(t.normalize(e)):r&&(Te(i,"touchpan",{originalEvent:e,touches:s},()=>{let p=d=>{let f=d[0],u=d[1]||f;return{x:f.chartX,y:f.chartY,width:u.chartX-f.chartX,height:u.chartY-f.chartY}};i.transform({axes:i.axes.filter(d=>d.zoomEnabled&&(this.zoomHor&&d.horiz||this.zoomVert&&!d.horiz)),to:p(s),from:p(r),trigger:e.type})}),t.res&&(t.res=!1,this.reset(!1,0))),t.lastTouches=s}reset(e,t){let i=this,n=i.chart,r=n.hoverSeries,s=n.hoverPoint,o=n.hoverPoints,a=n.tooltip,h=a&&a.shared?o:s;e&&h&&Aa(h).forEach(function(c){c.series.isCartesian&&typeof c.plotX>"u"&&(e=!1)}),e?a&&h&&Aa(h).length&&(a.refresh(h),a.shared&&o?o.forEach(function(c){c.setState(c.state,!0),c.series.isCartesian&&(c.series.xAxis.crosshair&&c.series.xAxis.drawCrosshair(null,c),c.series.yAxis.crosshair&&c.series.yAxis.drawCrosshair(null,c))}):s&&(s.setState(s.state,!0),n.axes.forEach(function(c){c.crosshair&&s.series[c.coll]===c&&c.drawCrosshair(null,s)}))):(s&&s.onMouseOut(),o&&o.forEach(function(c){c.setState()}),r&&r.onMouseOut(),a&&a.hide(t),i.unDocMouseMove&&(i.unDocMouseMove=i.unDocMouseMove()),n.axes.forEach(function(c){c.hideCrosshair()}),n.hoverPoints=n.hoverPoint=void 0)}runPointActions(e,t,i){let n=this,r=n.chart,s=r.series,o=r.tooltip&&r.tooltip.options.enabled?r.tooltip:void 0,a=o?o.shared:!1,h=t||r.hoverPoint,c=h&&h.series||r.hoverSeries,p=(!e||e.type!=="touchmove")&&(!!t||c&&c.directTouch&&n.isDirectTouch),d=this.getHoverData(h,c,s,p,a,e);h=d.hoverPoint,c=d.hoverSeries;let f=d.hoverPoints,u=c&&c.tooltipOptions.followPointer&&!c.tooltipOptions.split,m=a&&c&&!c.noSharedTooltip;if(h&&(i||h!==r.hoverPoint||o&&o.isHidden)){if((r.hoverPoints||[]).forEach(function(g){f.indexOf(g)===-1&&g.setState()}),r.hoverSeries!==c&&c.onMouseOver(),n.applyInactiveState(f),(f||[]).forEach(function(g){g.setState("hover")}),r.hoverPoint&&r.hoverPoint.firePointEvent("mouseOut"),!h.series)return;r.hoverPoints=f,r.hoverPoint=h,h.firePointEvent("mouseOver",void 0,()=>{o&&h&&o.refresh(m?f:h,e)})}else if(u&&o&&!o.isHidden){let g=o.getAnchor([{}],e);r.isInsidePlot(g[0],g[1],{visiblePlotOnly:!0})&&o.updatePosition({plotX:g[0],plotY:g[1]})}n.unDocMouseMove||(n.unDocMouseMove=Ut(r.container.ownerDocument,"mousemove",g=>Zr[l.hoverChartIndex??-1]?.pointer?.onDocumentMouseMove(g)),n.eventsToUnbind.push(n.unDocMouseMove)),r.axes.forEach(function(x){let y=te((x.crosshair||{}).snap,!0),b;y&&(b=r.hoverPoint,(!b||b.series[x.coll]!==x)&&(b=Oa(f,v=>v.series&&v.series[x.coll]===x))),b||!y?x.drawCrosshair(e,b):x.hideCrosshair()})}setDOMEvents(){let e=this.chart.container,t=e.ownerDocument;e.onmousedown=this.onContainerMouseDown.bind(this),e.onmousemove=this.onContainerMouseMove.bind(this),e.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(Ut(e,"mouseenter",this.onContainerMouseEnter.bind(this)),Ut(e,"mouseleave",this.onContainerMouseLeave.bind(this))),l.unbindDocumentMouseUp||(l.unbindDocumentMouseUp=[]),l.unbindDocumentMouseUp.push(Ut(t,"mouseup",this.onDocumentMouseUp.bind(this)));let i=this.chart.renderTo.parentElement;for(;i&&i.tagName!=="BODY";)this.eventsToUnbind.push(Ut(i,"scroll",()=>{delete this.chartPosition})),i=i.parentElement;this.eventsToUnbind.push(Ut(e,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1}),Ut(e,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),l.unbindDocumentTouchEnd||(l.unbindDocumentTouchEnd=Ut(t,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})),this.setPointerCapture(),Ut(this.chart,"redraw",this.setPointerCapture.bind(this))}setPointerCapture(){if(!If)return;let e=this,t=e.pointerCaptureEventsToUnbind,i=e.chart,n=i.container,r=te(i.options.tooltip?.followTouchMove,!0),s=r&&i.series.some(o=>o.options.findNearestPointBy.indexOf("y")>-1);!e.hasPointerCapture&&s?(t.push(Ut(n,"pointerdown",o=>{o.target?.hasPointerCapture(o.pointerId)&&o.target?.releasePointerCapture(o.pointerId)}),Ut(n,"pointermove",o=>{i.pointer?.getPointFromEvent(o)?.onMouseOver(o)})),i.styledMode||Qr(n,{"touch-action":"none"}),n.className+=" highcharts-no-touch-action",e.hasPointerCapture=!0):e.hasPointerCapture&&!s&&(t.forEach(o=>o()),t.length=0,i.styledMode||Qr(n,{"touch-action":te(i.options.chart.style?.["touch-action"],"manipulation")}),n.className=n.className.replace(" highcharts-no-touch-action",""),e.hasPointerCapture=!1)}setHoverChartIndex(e){let t=this.chart,i=B.charts[te(l.hoverChartIndex,-1)];if(i&&i!==t){let n={relatedTarget:t.container};e&&!e?.relatedTarget&&(e=vt(vt({},n),e)),i.pointer?.onContainerMouseLeave(e||n)}(!i||!i.mouseIsDown)&&(l.hoverChartIndex=t.index)}touch(e,t){let{chart:i,pinchDown:n=[]}=this,r,s;this.setHoverChartIndex(),e=this.normalize(e),e.touches.length===1?(s=i.isInsidePlot(e.chartX-i.plotLeft,e.chartY-i.plotTop,{visiblePlotOnly:!0}),s&&!i.openMenu?(t&&this.runPointActions(e),e.type==="touchmove"&&(r=n[0]?Math.pow(n[0].chartX-e.chartX,2)+Math.pow(n[0].chartY-e.chartY,2)>=16:!1),te(r,!0)&&this.pinch(e)):t&&this.reset()):e.touches.length===2&&this.pinch(e)}touchSelect(e){return!!(this.chart.zooming.singleTouch&&e.touches&&e.touches.length===1)}zoomOption(e){let t=this.chart,i=t.inverted,n=t.zooming.type||"",r,s;/touch/.test(e.type)&&(n=te(t.zooming.pinchType,n)),this.zoomX=r=/x/.test(n),this.zoomY=s=/y/.test(n),this.zoomHor=r&&!i||s&&i,this.zoomVert=s&&!i||r&&i,this.hasZoom=r||s}};(function(l){function e(t){Rf(Ef,"Core.Pointer")&&Ut(t,"beforeRender",function(){this.pointer=new l(this,this.options)})}l.compose=e})(Wi||(Wi={}));var ts=Wi;var{extend:Wf,merge:Nf,pick:Ea}=E,es;(function(l){function e(n,r){t.call(this,n,r,!0)}l.areaMarker=e;function t(n,r,s){let o=this.legendItem=this.legendItem||{},{chart:a,options:h}=this,{baseline:c=0,symbolWidth:p,symbolHeight:d}=n,f=this.symbol||"circle",u=d/2,m=a.renderer,g=o.group,x=c-Math.round((n.fontMetrics?.b||d)*(s?.4:.3)),y={},b,v=h.marker,S=0;if(a.styledMode||(y["stroke-width"]=Math.min(h.lineWidth||0,24),h.dashStyle?y.dashstyle=h.dashStyle:h.linecap!=="square"&&(y["stroke-linecap"]="round")),o.line=m.path().addClass("highcharts-graph").attr(y).add(g),s&&(o.area=m.path().addClass("highcharts-area").add(g)),y["stroke-linecap"]&&(S=Math.min(o.line.strokeWidth(),p)/2),p){let C=[["M",S,x],["L",p-S,x]];o.line.attr({d:C}),o.area?.attr({d:[...C,["L",p-S,c],["L",S,c]]})}if(v&&v.enabled!==!1&&p){let C=Math.min(Ea(v.radius,u),u);f.indexOf("url")===0&&(v=Nf(v,{width:d,height:d}),C=0),o.symbol=b=m.symbol(f,p/2-C,x-C,2*C,2*C,Wf({context:"legend"},v)).addClass("highcharts-point").add(g),b.isMarker=!0}}l.lineMarker=t;function i(n,r){let s=r.legendItem||{},o=n.options,a=n.symbolHeight,h=o.squareSymbol,c=h?a:n.symbolWidth;s.symbol=this.chart.renderer.rect(h?(n.symbolWidth-a)/2:0,n.baseline-a+1,c,a,Ea(n.options.symbolRadius,a/2)).addClass("highcharts-point").attr({zIndex:3}).add(s.group)}l.rectangle=i})(es||(es={}));var An=es;var Ff={lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},enableMouseTracking:!0,events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:150},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",borderWidth:0,defer:!0,formatter:function(){let{numberFormatter:l}=this.series.chart;return typeof this.y!="number"?"":l(this.y,-1)},padding:5,style:{fontSize:"0.7em",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:150},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:150},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"},Ia=Ff;var{defaultOptions:La}=Ct,{extend:Hf,extendClass:zf,merge:Yf}=E,is;(function(l){l.seriesTypes=B.seriesTypes;function e(i,n){let r=La.plotOptions||{},s=n.defaultOptions,o=n.prototype;return o.type=i,o.pointClass||(o.pointClass=jt),l.seriesTypes[i]?!1:(s&&(r[i]=s),l.seriesTypes[i]=n,!0)}l.registerSeriesType=e;function t(i,n,r,s,o){let a=La.plotOptions||{};if(n=n||"",a[i]=Yf(a[n],r),delete l.seriesTypes[i],e(i,zf(l.seriesTypes[n]||function(){},s)),l.seriesTypes[i].prototype.type=i,o){class h extends jt{}Hf(h.prototype,o),l.seriesTypes[i].prototype.pointClass=h}return l.seriesTypes[i]}l.seriesType=t})(is||(is={}));var nt=is;var{animObject:_a,setAnimation:Xf}=lt,{defaultOptions:En}=Ct,{registerEventOptions:Vf}=De,{svg:Gf,win:jf}=B,{seriesTypes:pi}=nt,{arrayMax:ns,arrayMin:Ba,clamp:Ra,correctFloat:Wa,crisp:Uf,defined:kt,destroyObjectProperties:$f,diffObjects:qf,erase:Na,error:In,extend:mi,find:Kf,fireEvent:bt,getClosestDistance:Zf,getNestedProperty:Fa,insertItem:Ha,isArray:rs,isNumber:Dt,isString:Qf,merge:ui,objectEach:ss,pick:pt,removeEvent:Jf,splat:tp,syncTimeout:za}=E,we=class{constructor(){this.zoneAxis="y"}init(e,t){bt(this,"init",{options:t});let i=this,n=e.series;this.eventsToUnbind=[],i.chart=e,i.options=i.setOptions(t);let r=i.options,s=r.visible!==!1;i.linkedSeries=[],i.bindAxes(),mi(i,{name:r.name,state:"",visible:s,selected:r.selected===!0}),Vf(this,r);let o=r.events;(o&&o.click||r.point&&r.point.events&&r.point.events.click||r.allowPointSelect)&&(e.runTrackerClick=!0),i.getColor(),i.getSymbol(),i.parallelArrays.forEach(function(h){i[h+"Data"]||(i[h+"Data"]=[])}),i.isCartesian&&(e.hasCartesianSeries=!0);let a;n.length&&(a=n[n.length-1]),i._i=pt(a&&a._i,-1)+1,i.opacity=i.options.opacity,e.orderItems("series",Ha(this,n)),r.dataSorting&&r.dataSorting.enabled?i.setDataSortingOptions():!i.points&&!i.data&&i.setData(r.data,!1),bt(this,"afterInit")}is(e){return pi[e]&&this instanceof pi[e]}bindAxes(){let e=this,t=e.options,i=e.chart,n;bt(this,"bindAxes",null,function(){(e.axisTypes||[]).forEach(function(r){(i[r]||[]).forEach(function(s){n=s.options,(pt(t[r],0)===s.index||typeof t[r]<"u"&&t[r]===n.id)&&(Ha(e,s.series),e[r]=s,s.isDirty=!0)}),!e[r]&&e.optionalAxis!==r&&In(18,!0,i)})}),bt(this,"afterBindAxes")}updateParallelArrays(e,t,i){let n=e.series,r=Dt(t)?function(s){let o=s==="y"&&n.toYData?n.toYData(e):e[s];n[s+"Data"][t]=o}:function(s){Array.prototype[t].apply(n[s+"Data"],i)};n.parallelArrays.forEach(r)}hasData(){return this.visible&&typeof this.dataMax<"u"&&typeof this.dataMin<"u"||this.visible&&this.yData&&this.yData.length>0}hasMarkerChanged(e,t){let i=e.marker,n=t.marker||{};return i&&(n.enabled&&!i.enabled||n.symbol!==i.symbol||n.height!==i.height||n.width!==i.width)}autoIncrement(e){let t=this.options,i=t.pointIntervalUnit,n=t.relativeXValue,r=this.chart.time,s=this.xIncrement,o,a;return s=pt(s,t.pointStart,0),this.pointInterval=a=pt(this.pointInterval,t.pointInterval,1),n&&Dt(e)&&(a*=e),i&&(o=new r.Date(s),i==="day"?r.set("Date",o,r.get("Date",o)+a):i==="month"?r.set("Month",o,r.get("Month",o)+a):i==="year"&&r.set("FullYear",o,r.get("FullYear",o)+a),a=o.getTime()-s),n&&Dt(e)?s+a:(this.xIncrement=s+a,s)}setDataSortingOptions(){let e=this.options;mi(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),kt(e.pointRange)||(e.pointRange=1)}setOptions(e){let t=this.chart,i=t.options,n=i.plotOptions,r=t.userOptions||{},s=ui(e),o=t.styledMode,a={plotOptions:n,userOptions:s},h;bt(this,"setOptions",a);let c=a.plotOptions[this.type],p=r.plotOptions||{},d=p.series||{},f=En.plotOptions[this.type]||{},u=p[this.type]||{};this.userOptions=a.userOptions;let m=ui(c,n.series,u,s);this.tooltipOptions=ui(En.tooltip,En.plotOptions.series?.tooltip,f?.tooltip,t.userOptions.tooltip,p.series?.tooltip,u.tooltip,s.tooltip),this.stickyTracking=pt(s.stickyTracking,u.stickyTracking,d.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:m.stickyTracking),c.marker===null&&delete m.marker,this.zoneAxis=m.zoneAxis||"y";let g=this.zones=(m.zones||[]).map(x=>vt({},x));return(m.negativeColor||m.negativeFillColor)&&!m.zones&&(h={value:m[this.zoneAxis+"Threshold"]||m.threshold||0,className:"highcharts-negative"},o||(h.color=m.negativeColor,h.fillColor=m.negativeFillColor),g.push(h)),g.length&&kt(g[g.length-1].value)&&g.push(o?{}:{color:this.color,fillColor:this.fillColor}),bt(this,"afterSetOptions",{options:m}),m}getName(){return pt(this.options.name,"Series "+(this.index+1))}getCyclic(e,t,i){let n=this.chart,r=`${e}Index`,s=`${e}Counter`,o=i?.length||n.options.chart.colorCount,a,h;t||(h=pt(e==="color"?this.options.colorIndex:void 0,this[r]),kt(h)?a=h:(n.series.length||(n[s]=0),a=n[s]%o,n[s]+=1),i&&(t=i[a])),typeof a<"u"&&(this[r]=a),this[e]=t}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||En.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){let e=this.options.marker;this.getCyclic("symbol",e.symbol,this.chart.options.symbols)}findPointIndex(e,t){let i=e.id,n=e.x,r=this.points,s=this.options.dataSorting,o,a,h;if(i){let c=this.chart.get(i);c instanceof jt&&(o=c)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let c=p=>!p.touched&&p.index===e.index;if(s&&s.matchByName?c=p=>!p.touched&&p.name===e.name:this.options.relativeXValue&&(c=p=>!p.touched&&p.options.x===e.x),o=Kf(r,c),!o)return}return o&&(h=o&&o.index,typeof h<"u"&&(a=!0)),typeof h>"u"&&Dt(n)&&(h=this.xData.indexOf(n,t)),h!==-1&&typeof h<"u"&&this.cropped&&(h=h>=this.cropStart?h-this.cropStart:h),!a&&Dt(h)&&r[h]&&r[h].touched&&(h=void 0),h}updateData(e,t){let i=this.options,n=i.dataSorting,r=this.points,s=[],o=this.requireSorting,a=e.length===r.length,h,c,p,d,f=!0;if(this.xIncrement=null,e.forEach(function(u,m){let g=kt(u)&&this.pointClass.prototype.optionsToObject.call({series:this},u)||{},x,y=g.x;g.id||Dt(y)?(x=this.findPointIndex(g,d),x===-1||typeof x>"u"?s.push(u):r[x]&&u!==i.data[x]?(r[x].update(u,!1,null,!1),r[x].touched=!0,o&&(d=x+1)):r[x]&&(r[x].touched=!0),(!a||m!==x||n&&n.enabled||this.hasDerivedData)&&(h=!0)):s.push(u)},this),h)for(c=r.length;c--;)p=r[c],p&&!p.touched&&p.remove&&p.remove(!1,t);else a&&(!n||!n.enabled)?(e.forEach(function(u,m){u!==r[m].y&&!r[m].destroyed&&r[m].update(u,!1,null,!1)}),s.length=0):f=!1;return r.forEach(function(u){u&&(u.touched=!1)}),f?(s.forEach(function(u){this.addPoint(u,!1,null,null,!1)},this),this.xIncrement===null&&this.xData&&this.xData.length&&(this.xIncrement=ns(this.xData),this.autoIncrement()),!0):!1}setData(e,t=!0,i,n){let r=this,s=r.points,o=s&&s.length||0,a=r.options,h=r.chart,c=a.dataSorting,p=r.xAxis,d=a.turboThreshold,f=this.xData,u=this.yData,m=r.pointArrayMap,g=m&&m.length,x=a.keys,y,b,v,S=0,C=1,D;h.options.chart.allowMutatingData||(a.data&&delete r.options.data,r.userOptions.data&&delete r.userOptions.data,D=ui(!0,e)),e=D||e||[];let T=e.length;if(c&&c.enabled&&(e=this.sortData(e)),h.options.chart.allowMutatingData&&n!==!1&&T&&o&&!r.cropped&&!r.hasGroupedData&&r.visible&&!r.boosted&&(v=this.updateData(e,i)),!v){r.xIncrement=null,r.colorCounter=0,this.parallelArrays.forEach(function(O){r[O+"Data"].length=0});let M=d&&T>d;if(M){let O=r.getFirstValidPoint(e),I=r.getFirstValidPoint(e,T-1,-1),R=L=>!!(rs(L)&&(x||Dt(L[0])));if(Dt(O)&&Dt(I))for(y=0;y<T;y++)f[y]=this.autoIncrement(),u[y]=e[y];else if(R(O)&&R(I))if(g)if(O.length===g)for(y=0;y<T;y++)f[y]=this.autoIncrement(),u[y]=e[y];else for(y=0;y<T;y++)b=e[y],f[y]=b[0],u[y]=b.slice(1,g+1);else if(x&&(S=x.indexOf("x"),C=x.indexOf("y"),S=S>=0?S:0,C=C>=0?C:1),O.length===1&&(C=0),S===C)for(y=0;y<T;y++)f[y]=this.autoIncrement(),u[y]=e[y][C];else for(y=0;y<T;y++)b=e[y],f[y]=b[S],u[y]=b[C];else M=!1}if(!M)for(y=0;y<T;y++)b={series:r},r.pointClass.prototype.applyOptions.apply(b,[e[y]]),r.updateParallelArrays(b,y);for(u&&Qf(u[0])&&In(14,!0,h),r.data=[],r.options.data=r.userOptions.data=e,y=o;y--;)s[y]?.destroy();p&&(p.minRange=p.userMinRange),r.isDirty=h.isDirtyBox=!0,r.isDirtyData=!!s,i=!1}a.legendType==="point"&&(this.processData(),this.generatePoints()),t&&h.redraw(i)}sortData(e){let t=this,i=t.options,n=i.dataSorting,r=n.sortKey||"y",s=function(a,h){return kt(h)&&a.pointClass.prototype.optionsToObject.call({series:a},h)||{}};return e.forEach(function(a,h){e[h]=s(t,a),e[h].index=h},this),e.concat().sort((a,h)=>{let c=Fa(r,a),p=Fa(r,h);return p<c?-1:p>c?1:0}).forEach(function(a,h){a.x=h},this),t.linkedSeries&&t.linkedSeries.forEach(function(a){let h=a.options,c=h.data;(!h.dataSorting||!h.dataSorting.enabled)&&c&&(c.forEach(function(p,d){c[d]=s(a,p),e[d]&&(c[d].x=e[d].x,c[d].index=d)}),a.setData(c,!1))}),e}getProcessedData(e){let t=this,i=t.xAxis,n=t.options,r=n.cropThreshold,s=i?.logarithmic,o=t.isCartesian,a,h,c=0,p,d,f,u=t.xData,m=t.yData,g=!1,x=u.length;i&&(p=i.getExtremes(),d=p.min,f=p.max,g=!!(i.categories&&!i.names.length)),o&&t.sorted&&!e&&(!r||x>r||t.forceCrop)&&(u[x-1]<d||u[0]>f?(u=[],m=[]):t.yData&&(u[0]<d||u[x-1]>f)&&(a=this.cropData(t.xData,t.yData,d,f),u=a.xData,m=a.yData,c=a.start,h=!0));let y=Zf([s?u.map(s.log2lin):u],()=>t.requireSorting&&!g&&In(15,!1,t.chart));return{xData:u,yData:m,cropped:h,cropStart:c,closestPointRange:y}}processData(e){let t=this,i=t.xAxis;if(t.isCartesian&&!t.isDirty&&!i.isDirty&&!t.yAxis.isDirty&&!e)return!1;let n=t.getProcessedData();t.cropped=n.cropped,t.cropStart=n.cropStart,t.processedXData=n.xData,t.processedYData=n.yData,t.closestPointRange=t.basePointRange=n.closestPointRange,bt(t,"afterProcessData")}cropData(e,t,i,n){let r=e.length,s,o,a=0,h=r;for(s=0;s<r;s++)if(e[s]>=i){a=Math.max(0,s-1);break}for(o=s;o<r;o++)if(e[o]>n){h=o+1;break}return{xData:e.slice(a,h),yData:t.slice(a,h),start:a,end:h}}generatePoints(){let e=this,t=e.options,i=e.processedData||t.data,n=e.processedXData,r=e.processedYData,s=e.pointClass,o=n.length,a=e.cropStart||0,h=e.hasGroupedData,c=t.keys,p=[],d=t.dataGrouping&&t.dataGrouping.groupAll?a:0,f,u,m,g,x=e.data;if(!x&&!h){let y=[];y.length=i.length,x=e.data=y}for(c&&h&&(e.options.keys=!1),g=0;g<o;g++)u=a+g,h?(m=new s(e,[n[g]].concat(tp(r[g]))),m.dataGroup=e.groupMap[d+g],m.dataGroup.options&&(m.options=m.dataGroup.options,mi(m,m.dataGroup.options),delete m.dataLabels)):(m=x[u],!m&&typeof i[u]<"u"&&(x[u]=m=new s(e,i[u],n[g]))),m&&(m.index=h?d+g:u,p[g]=m);if(e.options.keys=c,x&&(o!==(f=x.length)||h))for(g=0;g<f;g++)g===a&&!h&&(g+=o),x[g]&&(x[g].destroyElements(),x[g].plotX=void 0);e.data=x,e.points=p,bt(this,"afterGeneratePoints")}getXExtremes(e){return{min:Ba(e),max:ns(e)}}getExtremes(e,t){let i=this.xAxis,n=this.yAxis,r=[],s=this.requireSorting&&!this.is("column")?1:0,o=n?n.positiveValuesOnly:!1,a=t||this.getExtremesFromAll||this.options.getExtremesFromAll,{processedXData:h,processedYData:c}=this,p,d,f,u,m,g,x,y=0,b=0,v=0;if(this.cropped&&a){let T=this.getProcessedData(!0);h=T.xData,c=T.yData}e=e||this.stackedYData||c||[];let S=e.length,C=h||this.xData;for(i&&(p=i.getExtremes(),y=p.min,b=p.max),g=0;g<S;g++)if(u=C[g],m=e[g],d=(Dt(m)||rs(m))&&((Dt(m)?m>0:m.length)||!o),f=t||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!i||(C[g+s]||u)>=y&&(C[g-s]||u)<=b,d&&f)if(x=m.length,x)for(;x--;)Dt(m[x])&&(r[v++]=m[x]);else r[v++]=m;let D={activeYData:r,dataMin:Ba(r),dataMax:ns(r)};return bt(this,"afterGetExtremes",{dataExtremes:D}),D}applyExtremes(){let e=this.getExtremes();return this.dataMin=e.dataMin,this.dataMax=e.dataMax,e}getFirstValidPoint(e,t=0,i=1){let n=e.length,r=t;for(;r>=0&&r<n;){if(kt(e[r]))return e[r];r+=i}}translate(){this.processedXData||this.processData(),this.generatePoints();let e=this,t=e.options,i=t.stacking,n=e.xAxis,r=n.categories,s=e.enabledDataSorting,o=e.yAxis,a=e.points,h=a.length,c=e.pointPlacementToXValue(),p=!!c,d=t.threshold,f=t.startFromThreshold?d:0,u,m,g,x,y=Number.MAX_VALUE;function b(v){return Ra(v,-1e9,1e9)}for(u=0;u<h;u++){let v=a[u],S=v.x,C,D,T=v.y,M=v.low,O=i&&o.stacking?.stacks[(e.negStacks&&T<(f?0:d)?"-":"")+e.stackKey];m=n.translate(S,!1,!1,!1,!0,c),v.plotX=Dt(m)?Wa(b(m)):void 0,i&&e.visible&&O&&O[S]&&(x=e.getStackIndicator(x,S,e.index),!v.isNull&&x.key&&(C=O[S],D=C.points[x.key]),C&&rs(D)&&(M=D[0],T=D[1],M===f&&x.key===O[S].base&&(M=pt(Dt(d)?d:o.min)),o.positiveValuesOnly&&kt(M)&&M<=0&&(M=void 0),v.total=v.stackTotal=pt(C.total),v.percentage=kt(v.y)&&C.total?v.y/C.total*100:void 0,v.stackY=T,e.irregularWidths||C.setOffset(e.pointXOffset||0,e.barW||0,void 0,void 0,void 0,e.xAxis))),v.yBottom=kt(M)?b(o.translate(M,!1,!0,!1,!0)):void 0,e.dataModify&&(T=e.dataModify.modifyValue(T,u));let I;Dt(T)&&v.plotX!==void 0&&(I=o.translate(T,!1,!0,!1,!0),I=Dt(I)?b(I):void 0),v.plotY=I,v.isInside=this.isPointInside(v),v.clientX=p?Wa(n.translate(S,!1,!1,!1,!0,c)):m,v.negative=(v.y||0)<(d||0),v.category=pt(r&&r[v.x],v.x),!v.isNull&&v.visible!==!1&&(typeof g<"u"&&(y=Math.min(y,Math.abs(m-g))),g=m),v.zone=this.zones.length?v.getZone():void 0,!v.graphic&&e.group&&s&&(v.isNew=!0)}e.closestPointRangePx=y,bt(this,"afterTranslate")}getValidPoints(e,t,i){let n=this.chart;return(e||this.points||[]).filter(function(r){let{plotX:s,plotY:o}=r;return!i&&(r.isNull||!Dt(o))||t&&!n.isInsidePlot(s,o,{inverted:n.inverted})?!1:r.visible!==!1})}getClipBox(){let{chart:e,xAxis:t,yAxis:i}=this,{x:n,y:r,width:s,height:o}=ui(e.clipBox);return t&&t.len!==e.plotSizeX&&(s=t.len),i&&i.len!==e.plotSizeY&&(o=i.len),e.inverted&&!this.invertible&&([s,o]=[o,s]),{x:n,y:r,width:s,height:o}}getSharedClipKey(){return this.sharedClipKey=(this.options.xAxis||0)+","+(this.options.yAxis||0),this.sharedClipKey}setClip(){let{chart:e,group:t,markerGroup:i}=this,n=e.sharedClips,r=e.renderer,s=this.getClipBox(),o=this.getSharedClipKey(),a=n[o];a?a.animate(s):n[o]=a=r.clipRect(s),t&&t.clip(this.options.clip===!1?void 0:a),i&&i.clip()}animate(e){let{chart:t,group:i,markerGroup:n}=this,r=t.inverted,s=_a(this.options.animation),o=[this.getSharedClipKey(),s.duration,s.easing,s.defer].join(","),a=t.sharedClips[o],h=t.sharedClips[o+"m"];if(e&&i){let c=this.getClipBox();if(a)a.attr("height",c.height);else{c.width=0,r&&(c.x=t.plotHeight),a=t.renderer.clipRect(c),t.sharedClips[o]=a;let p={x:-99,y:-99,width:r?t.plotWidth+199:99,height:r?99:t.plotHeight+199};h=t.renderer.clipRect(p),t.sharedClips[o+"m"]=h}i.clip(a),n?.clip(h)}else if(a&&!a.hasClass("highcharts-animating")){let c=this.getClipBox(),p=s.step;(n?.element.childNodes.length||t.series.length>1)&&(s.step=function(d,f){p&&p.apply(f,arguments),f.prop==="width"&&h?.element&&h.attr(r?"height":"width",d+99)}),a.addClass("highcharts-animating").animate(c,s)}}afterAnimate(){this.setClip(),ss(this.chart.sharedClips,(e,t,i)=>{e&&!this.chart.container.querySelector(`[clip-path="url(#${e.id})"]`)&&(e.destroy(),delete i[t])}),this.finishedAnimating=!0,bt(this,"afterAnimate")}drawPoints(e=this.points){let t=this,i=t.chart,n=i.styledMode,{colorAxis:r,options:s}=t,o=s.marker,a=t[t.specialGroup||"markerGroup"],h=t.xAxis,c=pt(o.enabled,!h||h.isRadial?!0:null,t.closestPointRangePx>=o.enabledThreshold*o.radius),p,d,f,u,m,g,x;if(o.enabled!==!1||t._hasPointMarkers)for(p=0;p<e.length;p++)if(d=e[p],f=d.graphic,u=f?"animate":"attr",m=d.marker||{},g=!!d.marker,(c&&typeof m.enabled>"u"||m.enabled)&&!d.isNull&&d.visible!==!1){let b=pt(m.symbol,t.symbol,"rect");x=t.markerAttribs(d,d.selected&&"select"),t.enabledDataSorting&&(d.startXPos=h.reversed?-(x.width||0):h.width);let v=d.isInside!==!1;if(!f&&v&&((x.width||0)>0||d.hasImage)&&(d.graphic=f=i.renderer.symbol(b,x.x,x.y,x.width,x.height,g?m:o).add(a),t.enabledDataSorting&&i.hasRendered&&(f.attr({x:d.startXPos}),u="animate")),f&&u==="animate"&&f[v?"show":"hide"](v).animate(x),f){let S=t.pointAttribs(d,n||!d.selected?void 0:"select");n?r&&f.css({fill:S.fill}):f[u](S)}f&&f.addClass(d.getClassName(),!0)}else f&&(d.graphic=f.destroy())}markerAttribs(e,t){let i=this.options,n=i.marker,r=e.marker||{},s=r.symbol||n.symbol,o={},a,h,c=pt(r.radius,n&&n.radius);t&&(a=n.states[t],h=r.states&&r.states[t],c=pt(h&&h.radius,a&&a.radius,c&&c+(a&&a.radiusPlus||0))),e.hasImage=s&&s.indexOf("url")===0,e.hasImage&&(c=0);let p=e.pos();return Dt(c)&&p&&(i.crisp&&(p[0]=Uf(p[0],e.hasImage?0:s==="rect"?n?.lineWidth||0:1)),o.x=p[0]-c,o.y=p[1]-c),c&&(o.width=o.height=2*c),o}pointAttribs(e,t){let i=this.options.marker,n=e&&e.options,r=n&&n.marker||{},s=n&&n.color,o=e&&e.color,a=e&&e.zone&&e.zone.color,h,c,p=this.color,d,f,u=pt(r.lineWidth,i.lineWidth),m=1;return p=s||a||o||p,d=r.fillColor||i.fillColor||p,f=r.lineColor||i.lineColor||p,t=t||"normal",t&&(h=i.states[t]||{},c=r.states&&r.states[t]||{},u=pt(c.lineWidth,h.lineWidth,u+pt(c.lineWidthPlus,h.lineWidthPlus,0)),d=c.fillColor||h.fillColor||d,f=c.lineColor||h.lineColor||f,m=pt(c.opacity,h.opacity,m)),{stroke:f,"stroke-width":u,fill:d,opacity:m}}destroy(e){let t=this,i=t.chart,n=/AppleWebKit\/533/.test(jf.navigator.userAgent),r=t.data||[],s,o,a,h;for(bt(t,"destroy",{keepEventsForUpdate:e}),this.removeEvents(e),(t.axisTypes||[]).forEach(function(c){h=t[c],h&&h.series&&(Na(h.series,t),h.isDirty=h.forceRedraw=!0)}),t.legendItem&&t.chart.legend.destroyItem(t),o=r.length;o--;)a=r[o],a&&a.destroy&&a.destroy();for(let c of t.zones)$f(c,void 0,!0);E.clearTimeout(t.animationTimeout),ss(t,function(c,p){c instanceof Rt&&!c.survive&&(s=n&&p==="group"?"hide":"destroy",c[s]())}),i.hoverSeries===t&&(i.hoverSeries=void 0),Na(i.series,t),i.orderItems("series"),ss(t,function(c,p){(!e||p!=="hcEvents")&&delete t[p]})}applyZones(){let e=this,{area:t,chart:i,graph:n,zones:r,points:s,xAxis:o,yAxis:a,zoneAxis:h}=e,{inverted:c,renderer:p}=i,d=this[`${h}Axis`],{isXAxis:f,len:u=0}=d||{},m=(n?.strokeWidth()||0)/2+1,g=(x,y=0,b=0)=>{c&&(b=u-b);let{translated:v=0,lineClip:S}=x,C=b-v;S?.push(["L",y,Math.abs(C)<m?b-m*(C<=0?-1:1):v])};if(r.length&&(n||t)&&d&&Dt(d.min)){let x=d.getExtremes().max,y=S=>{S.forEach((C,D)=>{(C[0]==="M"||C[0]==="L")&&(S[D]=[C[0],f?u-C[1]:C[1],f?C[2]:u-C[2]])})};if(r.forEach(S=>{S.lineClip=[],S.translated=Ra(d.toPixels(pt(S.value,x),!0)||0,0,u)}),n&&!this.showLine&&n.hide(),t&&t.hide(),h==="y"&&s.length<o.len)for(let S of s){let{plotX:C,plotY:D,zone:T}=S,M=T&&r[r.indexOf(T)-1];T&&g(T,C,D),M&&g(M,C,D)}let b=[],v=d.toPixels(d.getExtremes().min,!0);r.forEach(S=>{let C=S.lineClip||[],D=Math.round(S.translated||0);o.reversed&&C.reverse();let{clip:T,simpleClip:M}=S,O=0,I=0,R=o.len,L=a.len;f?(O=D,R=v):(I=D,L=v);let F=[["M",O,I],["L",R,I],["L",R,L],["L",O,L],["Z"]],z=[F[0],...C,F[1],F[2],...b,F[3],F[4]];b=C.reverse(),v=D,c&&(y(z),t&&y(F)),T?(T.animate({d:z}),M?.animate({d:F})):(T=S.clip=p.path(z),t&&(M=S.simpleClip=p.path(F))),n&&S.graph?.clip(T),t&&S.area?.clip(M)})}else e.visible&&(n&&n.show(),t&&t.show())}plotGroup(e,t,i,n,r){let s=this[e],o=!s,a={visibility:i,zIndex:n||.1};return kt(this.opacity)&&!this.chart.styledMode&&this.state!=="inactive"&&(a.opacity=this.opacity),s||(this[e]=s=this.chart.renderer.g().add(r)),s.addClass("highcharts-"+t+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(kt(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(s.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),s.attr(a)[o?"attr":"animate"](this.getPlotBox(t)),s}getPlotBox(e){let t=this.xAxis,i=this.yAxis,n=this.chart,r=n.inverted&&!n.polar&&t&&this.invertible&&e==="series";return n.inverted&&(t=i,i=this.xAxis),{translateX:t?t.left:n.plotLeft,translateY:i?i.top:n.plotTop,rotation:r?90:0,rotationOriginX:r?(t.len-i.len)/2:0,rotationOriginY:r?(t.len+i.len)/2:0,scaleX:r?-1:1,scaleY:1}}removeEvents(e){let{eventsToUnbind:t}=this;e||Jf(this),t.length&&(t.forEach(i=>{i()}),t.length=0)}render(){let e=this,{chart:t,options:i,hasRendered:n}=e,r=_a(i.animation),s=e.visible?"inherit":"hidden",o=i.zIndex,a=t.seriesGroup,h=e.finishedAnimating?0:r.duration;bt(this,"render"),e.plotGroup("group","series",s,o,a),e.markerGroup=e.plotGroup("markerGroup","markers",s,o,a),i.clip!==!1&&e.setClip(),h&&e.animate?.(!0),e.drawGraph&&(e.drawGraph(),e.applyZones()),e.visible&&e.drawPoints(),e.drawDataLabels?.(),e.redrawPoints?.(),i.enableMouseTracking&&e.drawTracker?.(),h&&e.animate?.(),n||(h&&r.defer&&(h+=r.defer),e.animationTimeout=za(()=>{e.afterAnimate()},h||0)),e.isDirty=!1,e.hasRendered=!0,bt(e,"afterRender")}redraw(){let e=this.isDirty||this.isDirtyData;this.translate(),this.render(),e&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(e,t){let{xAxis:i,yAxis:n}=this,r=this.chart.inverted;return this.searchKDTree({clientX:r?i.len-e.chartY+i.pos:e.chartX-i.pos,plotY:r?n.len-e.chartX+n.pos:e.chartY-n.pos},t,e)}buildKDTree(e){this.buildingKdTree=!0;let t=this,i=t.options.findNearestPointBy.indexOf("y")>-1?2:1;function n(s,o,a){let h=s?.length,c,p;if(h)return c=t.kdAxisArray[o%a],s.sort((d,f)=>(d[c]||0)-(f[c]||0)),p=Math.floor(h/2),{point:s[p],left:n(s.slice(0,p),o+1,a),right:n(s.slice(p+1),o+1,a)}}function r(){t.kdTree=n(t.getValidPoints(void 0,!t.directTouch),i,i),t.buildingKdTree=!1}delete t.kdTree,za(r,t.options.kdNow||e?.type==="touchstart"?0:1)}searchKDTree(e,t,i){let n=this,[r,s]=this.kdAxisArray,o=t?"distX":"dist",a=(n.options.findNearestPointBy||"").indexOf("y")>-1?2:1,h=!!n.isBubble;function c(d,f){let u=d[r],m=f[r],g=kt(u)&&kt(m)?u-m:null,x=d[s],y=f[s],b=kt(x)&&kt(y)?x-y:0,v=h&&f.marker?.radius||0;f.dist=Math.sqrt((g&&g*g||0)+b*b)-v,f.distX=kt(g)?Math.abs(g)-v:Number.MAX_VALUE}function p(d,f,u,m){let g=f.point,x=n.kdAxisArray[u%m],y,b,v=g;c(d,g);let S=(d[x]||0)-(g[x]||0)+(h&&g.marker?.radius||0),C=S<0?"left":"right",D=S<0?"right":"left";return f[C]&&(y=p(d,f[C],u+1,m),v=y[o]<v[o]?y:g),f[D]&&Math.sqrt(S*S)<v[o]&&(b=p(d,f[D],u+1,m),v=b[o]<v[o]?b:v),v}if(!this.kdTree&&!this.buildingKdTree&&this.buildKDTree(i),this.kdTree)return p(e,this.kdTree,a,a)}pointPlacementToXValue(){let{options:e,xAxis:t}=this,i=e.pointPlacement;return i==="between"&&(i=t.reversed?-.5:.5),Dt(i)?i*(e.pointRange||t.pointRange):0}isPointInside(e){let{chart:t,xAxis:i,yAxis:n}=this,{plotX:r=-1,plotY:s=-1}=e;return s>=0&&s<=(n?n.len:t.plotHeight)&&r>=0&&r<=(i?i.len:t.plotWidth)}drawTracker(){let e=this,t=e.options,i=t.trackByArea,n=[].concat((i?e.areaPath:e.graphPath)||[]),r=e.chart,s=r.pointer,o=r.renderer,a=r.options.tooltip?.snap||0,h=()=>{t.enableMouseTracking&&r.hoverSeries!==e&&e.onMouseOver()},c="rgba(192,192,192,"+(Gf?1e-4:.002)+")",p=e.tracker;p?p.attr({d:n}):e.graph&&(e.tracker=p=o.path(n).attr({visibility:e.visible?"inherit":"hidden",zIndex:2}).addClass(i?"highcharts-tracker-area":"highcharts-tracker-line").add(e.group),r.styledMode||p.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:c,fill:i?c:"none","stroke-width":e.graph.strokeWidth()+(i?0:2*a)}),[e.tracker,e.markerGroup,e.dataLabelsGroup].forEach(d=>{d&&(d.addClass("highcharts-tracker").on("mouseover",h).on("mouseout",f=>{s?.onTrackerMouseOut(f)}),t.cursor&&!r.styledMode&&d.css({cursor:t.cursor}),d.on("touchstart",h))})),bt(this,"afterDrawTracker")}addPoint(e,t,i,n,r){let s=this,o=s.options,a=s.data,h=s.chart,c=s.xAxis,p=c&&c.hasNames&&c.names,d=o.data,f=s.xData,u,m;t=pt(t,!0);let g={series:s};s.pointClass.prototype.applyOptions.apply(g,[e]);let x=g.x;if(m=f.length,s.requireSorting&&x<f[m-1])for(u=!0;m&&f[m-1]>x;)m--;s.updateParallelArrays(g,"splice",[m,0,0]),s.updateParallelArrays(g,m),p&&g.name&&(p[x]=g.name),d.splice(m,0,e),(u||s.processedData)&&(s.data.splice(m,0,null),s.processData()),o.legendType==="point"&&s.generatePoints(),i&&(a[0]&&a[0].remove?a[0].remove(!1):(a.shift(),s.updateParallelArrays(g,"shift"),d.shift())),r!==!1&&bt(s,"addPoint",{point:g}),s.isDirty=!0,s.isDirtyData=!0,t&&h.redraw(n)}removePoint(e,t,i){let n=this,r=n.data,s=r[e],o=n.points,a=n.chart,h=function(){o&&o.length===r.length&&o.splice(e,1),r.splice(e,1),n.options.data.splice(e,1),n.updateParallelArrays(s||{series:n},"splice",[e,1]),s&&s.destroy(),n.isDirty=!0,n.isDirtyData=!0,t&&a.redraw()};Xf(i,a),t=pt(t,!0),s?s.firePointEvent("remove",null,h):h()}remove(e,t,i,n){let r=this,s=r.chart;function o(){r.destroy(n),s.isDirtyLegend=s.isDirtyBox=!0,s.linkSeries(n),pt(e,!0)&&s.redraw(t)}i!==!1?bt(r,"remove",null,o):o()}update(e,t){e=qf(e,this.userOptions),bt(this,"update",{options:e});let i=this,n=i.chart,r=i.userOptions,s=i.initialType||i.type,o=n.options.plotOptions,a=pi[s].prototype,h=["group","markerGroup","dataLabelsGroup","transformGroup"],c=["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"],p=i.finishedAnimating&&{animation:!1},d={},f,u,m=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"],g=e.type||r.type||n.options.chart.type,x=!(this.hasDerivedData||g&&g!==this.type||typeof e.pointStart<"u"||typeof e.pointInterval<"u"||typeof e.relativeXValue<"u"||e.joinBy||e.mapData||c.some(b=>i.hasOptionChanged(b)));g=g||s,x&&(m.push("data","isDirtyData","isDirtyCanvas","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"),e.visible!==!1&&m.push("area","graph"),i.parallelArrays.forEach(function(b){m.push(b+"Data")}),e.data&&(e.dataSorting&&mi(i.options.dataSorting,e.dataSorting),this.setData(e.data,!1))),e=ui(r,{index:r.index===void 0?i.index:r.index,pointStart:o?.series?.pointStart??r.pointStart??i.xData?.[0]},!x&&{data:i.options.data},e,p),x&&e.data&&(e.data=i.options.data),m=h.concat(m),m.forEach(function(b){m[b]=i[b],delete i[b]});let y=!1;if(pi[g]){if(y=g!==i.type,i.remove(!1,!1,!1,!0),y)if(n.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(i,pi[g].prototype);else{let b=Object.hasOwnProperty.call(i,"hcEvents")&&i.hcEvents;for(u in a)i[u]=void 0;mi(i,pi[g].prototype),b?i.hcEvents=b:delete i.hcEvents}}else In(17,!0,n,{missingModuleFor:g});if(m.forEach(function(b){i[b]=m[b]}),i.init(n,e),x&&this.points){f=i.options,f.visible===!1?(d.graphic=1,d.dataLabel=1):(this.hasMarkerChanged(f,r)&&(d.graphic=1),i.hasDataLabels?.()||(d.dataLabel=1));for(let b of this.points)b&&b.series&&(b.resolveColor(),Object.keys(d).length&&b.destroyElements(d),f.showInLegend===!1&&b.legendItem&&n.legend.destroyItem(b))}i.initialType=s,n.linkSeries(),n.setSortedData(),y&&i.linkedSeries.length&&(i.isDirtyData=!0),bt(this,"afterUpdate"),pt(t,!0)&&n.redraw(x?void 0:!1)}setName(e){this.name=this.options.name=this.userOptions.name=e,this.chart.isDirtyLegend=!0}hasOptionChanged(e){let t=this.chart,i=this.options[e],n=t.options.plotOptions,r=this.userOptions[e],s=pt(n?.[this.type]?.[e],n?.series?.[e]);return r&&!kt(s)?i!==r:i!==pt(s,i)}onMouseOver(){let e=this,t=e.chart,i=t.hoverSeries;t.pointer?.setHoverChartIndex(),i&&i!==e&&i.onMouseOut(),e.options.events.mouseOver&&bt(e,"mouseOver"),e.setState("hover"),t.hoverSeries=e}onMouseOut(){let e=this,t=e.options,i=e.chart,n=i.tooltip,r=i.hoverPoint;i.hoverSeries=null,r&&r.onMouseOut(),e&&t.events.mouseOut&&bt(e,"mouseOut"),n&&!e.stickyTracking&&(!n.shared||e.noSharedTooltip)&&n.hide(),i.series.forEach(function(s){s.setState("",!0)})}setState(e,t){let i=this,n=i.options,r=i.graph,s=n.inactiveOtherPoints,o=n.states,a=pt(o[e||"normal"]&&o[e||"normal"].animation,i.chart.options.chart.animation),h=n.lineWidth,c=n.opacity;if(e=e||"",i.state!==e&&([i.group,i.markerGroup,i.dataLabelsGroup].forEach(function(p){p&&(i.state&&p.removeClass("highcharts-series-"+i.state),e&&p.addClass("highcharts-series-"+e))}),i.state=e,!i.chart.styledMode)){if(o[e]&&o[e].enabled===!1)return;if(e&&(h=o[e].lineWidth||h+(o[e].lineWidthPlus||0),c=pt(o[e].opacity,c)),r&&!r.dashstyle&&Dt(h))for(let p of[r,...this.zones.map(d=>d.graph)])p?.animate({"stroke-width":h},a);s||[i.group,i.markerGroup,i.dataLabelsGroup,i.labelBySeries].forEach(function(p){p&&p.animate({opacity:c},a)})}t&&s&&i.points&&i.setAllPointsToState(e||void 0)}setAllPointsToState(e){this.points.forEach(function(t){t.setState&&t.setState(e)})}setVisible(e,t){let i=this,n=i.chart,r=n.options.chart.ignoreHiddenSeries,s=i.visible;i.visible=e=i.options.visible=i.userOptions.visible=typeof e>"u"?!s:e;let o=e?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(a=>{i[a]?.[o]()}),(n.hoverSeries===i||n.hoverPoint?.series===i)&&i.onMouseOut(),i.legendItem&&n.legend.colorizeItem(i,e),i.isDirty=!0,i.options.stacking&&n.series.forEach(a=>{a.options.stacking&&a.visible&&(a.isDirty=!0)}),i.linkedSeries.forEach(a=>{a.setVisible(e,!1)}),r&&(n.isDirtyBox=!0),bt(i,o),t!==!1&&n.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(e){let t=this;t.selected=e=this.options.selected=typeof e>"u"?!t.selected:e,t.checkbox&&(t.checkbox.checked=e),bt(t,e?"select":"unselect")}shouldShowTooltip(e,t,i={}){return i.series=this,i.visiblePlotOnly=!0,this.chart.isInsidePlot(e,t,i)}drawLegendSymbol(e,t){An[this.options.legendSymbol||"rectangle"]?.call(this,e,t)}};we.defaultOptions=Ia;we.types=nt.seriesTypes;we.registerType=nt.registerSeriesType;mi(we.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:jt,requireSorting:!0,sorted:!0});nt.series=we;var wt=we;var{animObject:ep,setAnimation:ip}=lt,{registerEventOptions:Ya}=De,{composed:np,marginNames:Xa}=B,{distribute:rp}=Ce,{format:sp}=Tt,{addEvent:Ln,createElement:op,css:ap,defined:os,discardElement:lp,find:hp,fireEvent:fe,isNumber:Va,merge:Ge,pick:$t,pushUnique:cp,relativeLength:dp,stableSort:fp,syncTimeout:pp}=E,Ni=class{constructor(e,t){this.allItems=[],this.initialItemY=0,this.itemHeight=0,this.itemMarginBottom=0,this.itemMarginTop=0,this.itemX=0,this.itemY=0,this.lastItemY=0,this.lastLineHeight=0,this.legendHeight=0,this.legendWidth=0,this.maxItemWidth=0,this.maxLegendWidth=0,this.offsetWidth=0,this.padding=0,this.pages=[],this.symbolHeight=0,this.symbolWidth=0,this.titleHeight=0,this.totalItemWidth=0,this.widthOption=0,this.chart=e,this.setOptions(t),t.enabled&&(this.render(),Ya(this,t),Ln(this.chart,"endResize",function(){this.legend.positionCheckboxes()})),Ln(this.chart,"render",()=>{this.options.enabled&&this.proximate&&(this.proximatePositions(),this.positionItems())})}setOptions(e){let t=$t(e.padding,8);this.options=e,this.chart.styledMode||(this.itemStyle=e.itemStyle,this.itemHiddenStyle=Ge(this.itemStyle,e.itemHiddenStyle)),this.itemMarginTop=e.itemMarginTop,this.itemMarginBottom=e.itemMarginBottom,this.padding=t,this.initialItemY=t-5,this.symbolWidth=$t(e.symbolWidth,16),this.pages=[],this.proximate=e.layout==="proximate"&&!this.chart.inverted,this.baseline=void 0}update(e,t){let i=this.chart;this.setOptions(Ge(!0,this.options,e)),"events"in this.options&&Ya(this,this.options),this.destroy(),i.isDirtyLegend=i.isDirtyBox=!0,$t(t,!0)&&i.redraw(),fe(this,"afterUpdate",{redraw:t})}colorizeItem(e,t){let{area:i,group:n,label:r,line:s,symbol:o}=e.legendItem||{};if(n?.[t?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){let{itemHiddenStyle:a={}}=this,h=a.color,{fillColor:c,fillOpacity:p,lineColor:d,marker:f}=e.options,u=m=>(t||(m.fill&&(m.fill=h),m.stroke&&(m.stroke=h)),m);r?.css(Ge(t?this.itemStyle:a)),s?.attr(u({stroke:d||e.color})),o&&o.attr(u(f&&o.isMarker?e.pointAttribs():{fill:e.color})),i?.attr(u({fill:c||e.color,"fill-opacity":c?1:p??.75}))}fe(this,"afterColorizeItem",{item:e,visible:t})}positionItems(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()}positionItem(e){let t=this,{group:i,x:n=0,y:r=0}=e.legendItem||{},s=t.options,o=s.symbolPadding,a=!s.rtl,h=e.checkbox;if(i&&i.element){let c={translateX:a?n:t.legendWidth-n-2*o-4,translateY:r},p=()=>{fe(this,"afterPositionItem",{item:e})};i[os(i.translateY)?"animate":"attr"](c,void 0,p)}h&&(h.x=n,h.y=r)}destroyItem(e){let t=e.checkbox,i=e.legendItem||{};for(let n of["group","label","line","symbol"])i[n]&&(i[n]=i[n].destroy());t&&lp(t),e.legendItem=void 0}destroy(){let e=this;for(let t of this.getAllItems())this.destroyItem(t);for(let t of["clipRect","up","down","pager","nav","box","title","group"])e[t]&&(e[t]=e[t].destroy());this.display=null}positionCheckboxes(){let e=this.group&&this.group.alignAttr,t=this.clipHeight||this.legendHeight,i=this.titleHeight,n;e&&(n=e.translateY,this.allItems.forEach(function(r){let s=r.checkbox,o;s&&(o=n+i+s.y+(this.scrollOffset||0)+3,ap(s,{left:e.translateX+r.checkboxOffset+s.x-20+"px",top:o+"px",display:this.proximate||o>n-6&&o<n+t-6?"":"none"}))},this))}renderTitle(){let e=this.options,t=this.padding,i=e.title,n,r=0;i.text&&(this.title||(this.title=this.chart.renderer.label(i.text,t-3,t-4,void 0,void 0,void 0,e.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"}),n=this.title.getBBox(),r=n.height,this.offsetWidth=n.width,this.contentGroup.attr({translateY:r})),this.titleHeight=r}setText(e){let t=this.options;e.legendItem.label.attr({text:t.labelFormat?sp(t.labelFormat,e,this.chart):t.labelFormatter.call(e)})}renderItem(e){let t=this,i=e.legendItem=e.legendItem||{},n=t.chart,r=n.renderer,s=t.options,o=s.layout==="horizontal",a=t.symbolWidth,h=s.symbolPadding||0,c=t.itemStyle,p=t.itemHiddenStyle,d=o?$t(s.itemDistance,20):0,f=!s.rtl,u=!e.series,m=!u&&e.series.drawLegendSymbol?e.series:e,g=m.options,x=!!t.createCheckboxForItem&&g&&g.showCheckbox,y=s.useHTML,b=e.options.className,v=i.label,S=a+h+d+(x?20:0);v||(i.group=r.g("legend-item").addClass("highcharts-"+m.type+"-series highcharts-color-"+e.colorIndex+(b?" "+b:"")+(u?" highcharts-series-"+e.index:"")).attr({zIndex:1}).add(t.scrollGroup),i.label=v=r.text("",f?a+h:-h,t.baseline||0,y),n.styledMode||v.css(Ge(e.visible?c:p)),v.attr({align:f?"left":"right",zIndex:2}).add(i.group),t.baseline||(t.fontMetrics=r.fontMetrics(v),t.baseline=t.fontMetrics.f+3+t.itemMarginTop,v.attr("y",t.baseline),t.symbolHeight=$t(s.symbolHeight,t.fontMetrics.f),s.squareSymbol&&(t.symbolWidth=$t(s.symbolWidth,Math.max(t.symbolHeight,16)),S=t.symbolWidth+h+d+(x?20:0),f&&v.attr("x",t.symbolWidth+h))),m.drawLegendSymbol(t,e),t.setItemEvents&&t.setItemEvents(e,v,y)),x&&!e.checkbox&&t.createCheckboxForItem&&t.createCheckboxForItem(e),t.colorizeItem(e,e.visible),(n.styledMode||!c.width)&&v.css({width:(s.itemWidth||t.widthOption||n.spacingBox.width)-S+"px"}),t.setText(e);let C=v.getBBox(),D=t.fontMetrics&&t.fontMetrics.h||0;e.itemWidth=e.checkboxOffset=s.itemWidth||i.labelWidth||C.width+S,t.maxItemWidth=Math.max(t.maxItemWidth,e.itemWidth),t.totalItemWidth+=e.itemWidth,t.itemHeight=e.itemHeight=Math.round(i.labelHeight||(C.height>D*1.5?C.height:D))}layoutItem(e){let t=this.options,i=this.padding,n=t.layout==="horizontal",r=e.itemHeight,s=this.itemMarginBottom,o=this.itemMarginTop,a=n?$t(t.itemDistance,20):0,h=this.maxLegendWidth,c=t.alignColumns&&this.totalItemWidth>h?this.maxItemWidth:e.itemWidth,p=e.legendItem||{};n&&this.itemX-i+c>h&&(this.itemX=i,this.lastLineHeight&&(this.itemY+=o+this.lastLineHeight+s),this.lastLineHeight=0),this.lastItemY=o+this.itemY+s,this.lastLineHeight=Math.max(r,this.lastLineHeight),p.x=this.itemX,p.y=this.itemY,n?this.itemX+=c:(this.itemY+=o+r+s,this.lastLineHeight=r),this.offsetWidth=this.widthOption||Math.max((n?this.itemX-i-(e.checkbox?0:a):c)+i,this.offsetWidth)}getAllItems(){let e=[];return this.chart.series.forEach(function(t){let i=t&&t.options;t&&$t(i.showInLegend,os(i.linkedTo)?!1:void 0,!0)&&(e=e.concat((t.legendItem||{}).labels||(i.legendType==="point"?t.data:t)))}),fe(this,"afterGetAllItems",{allItems:e}),e}getAlignment(){let e=this.options;return this.proximate?e.align.charAt(0)+"tv":e.floating?"":e.align.charAt(0)+e.verticalAlign.charAt(0)+e.layout.charAt(0)}adjustMargins(e,t){let i=this.chart,n=this.options,r=this.getAlignment();r&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(s,o){s.test(r)&&!os(e[o])&&(i[Xa[o]]=Math.max(i[Xa[o]],i.legend[(o+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][o]*n[o%2?"x":"y"]+$t(n.margin,12)+t[o]+(i.titleOffset[o]||0)))})}proximatePositions(){let e=this.chart,t=[],i=this.options.align==="left";this.allItems.forEach(function(r){let s,o,a=i,h,c;r.yAxis&&(r.xAxis.options.reversed&&(a=!a),r.points&&(s=hp(a?r.points:r.points.slice(0).reverse(),function(p){return Va(p.plotY)})),o=this.itemMarginTop+r.legendItem.label.getBBox().height+this.itemMarginBottom,c=r.yAxis.top-e.plotTop,r.visible?(h=s?s.plotY:r.yAxis.height,h+=c-.3*o):h=c+r.yAxis.height,t.push({target:h,size:o,item:r}))},this);let n;for(let r of rp(t,e.plotHeight))n=r.item.legendItem||{},Va(r.pos)&&(n.y=e.plotTop-e.spacing[0]+r.pos)}render(){let e=this,t=e.chart,i=t.renderer,n=e.options,r=e.padding,s=e.getAllItems(),o,a,h,c=e.group,p,d=e.box;e.itemX=r,e.itemY=e.initialItemY,e.offsetWidth=0,e.lastItemY=0,e.widthOption=dp(n.width,t.spacingBox.width-r),p=t.spacingBox.width-2*r-n.x,["rm","lm"].indexOf(e.getAlignment().substring(0,2))>-1&&(p/=2),e.maxLegendWidth=e.widthOption||p,c||(e.group=c=i.g("legend").addClass(n.className||"").attr({zIndex:7}).add(),e.contentGroup=i.g().attr({zIndex:1}).add(c),e.scrollGroup=i.g().add(e.contentGroup)),e.renderTitle(),fp(s,(f,u)=>(f.options&&f.options.legendIndex||0)-(u.options&&u.options.legendIndex||0)),n.reversed&&s.reverse(),e.allItems=s,e.display=o=!!s.length,e.lastLineHeight=0,e.maxItemWidth=0,e.totalItemWidth=0,e.itemHeight=0,s.forEach(e.renderItem,e),s.forEach(e.layoutItem,e),a=(e.widthOption||e.offsetWidth)+r,h=e.lastItemY+e.lastLineHeight+e.titleHeight,h=e.handleOverflow(h),h+=r,d||(e.box=d=i.rect().addClass("highcharts-legend-box").attr({r:n.borderRadius}).add(c)),t.styledMode||d.attr({stroke:n.borderColor,"stroke-width":n.borderWidth||0,fill:n.backgroundColor||"none"}).shadow(n.shadow),a>0&&h>0&&d[d.placed?"animate":"attr"](d.crisp.call({},{x:0,y:0,width:a,height:h},d.strokeWidth())),c[o?"show":"hide"](),t.styledMode&&c.getStyle("display")==="none"&&(a=h=0),e.legendWidth=a,e.legendHeight=h,o&&e.align(),this.proximate||this.positionItems(),fe(this,"afterRender")}align(e=this.chart.spacingBox){let t=this.chart,i=this.options,n=e.y;/(lth|ct|rth)/.test(this.getAlignment())&&t.titleOffset[0]>0?n+=t.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&t.titleOffset[2]>0&&(n-=t.titleOffset[2]),n!==e.y&&(e=Ge(e,{y:n})),t.hasRendered||(this.group.placed=!1),this.group.align(Ge(i,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":i.verticalAlign}),!0,e)}handleOverflow(e){let t=this,i=this.chart,n=i.renderer,r=this.options,s=r.y,o=r.verticalAlign==="top",a=this.padding,h=r.maxHeight,c=r.navigation,p=$t(c.animation,!0),d=c.arrowSize||12,f=this.pages,u=this.allItems,m=function(D){typeof D=="number"?C.attr({height:D}):C&&(t.clipRect=C.destroy(),t.contentGroup.clip()),t.contentGroup.div&&(t.contentGroup.div.style.clip=D?"rect("+a+"px,9999px,"+(a+D)+"px,0)":"auto")},g=function(D){return t[D]=n.circle(0,0,d*1.3).translate(d/2,d/2).add(S),i.styledMode||t[D].attr("fill","rgba(0,0,0,0.0001)"),t[D]},x,y,b,v=i.spacingBox.height+(o?-s:s)-a,S=this.nav,C=this.clipRect;return r.layout==="horizontal"&&r.verticalAlign!=="middle"&&!r.floating&&(v/=2),h&&(v=Math.min(v,h)),f.length=0,e&&v>0&&e>v&&c.enabled!==!1?(this.clipHeight=x=Math.max(v-20-this.titleHeight-a,0),this.currentPage=$t(this.currentPage,1),this.fullHeight=e,u.forEach((D,T)=>{b=D.legendItem||{};let M=b.y||0,O=Math.round(b.label.getBBox().height),I=f.length;(!I||M-f[I-1]>x&&(y||M)!==f[I-1])&&(f.push(y||M),I++),b.pageIx=I-1,y&&((u[T-1].legendItem||{}).pageIx=I-1),T===u.length-1&&M+O-f[I-1]>x&&M>f[I-1]&&(f.push(M),b.pageIx=I),M!==y&&(y=M)}),C||(C=t.clipRect=n.clipRect(0,a-2,9999,0),t.contentGroup.clip(C)),m(x),S||(this.nav=S=n.g().attr({zIndex:1}).add(this.group),this.up=n.symbol("triangle",0,0,d,d).add(S),g("upTracker").on("click",function(){t.scroll(-1,p)}),this.pager=n.text("",15,10).addClass("highcharts-legend-navigation"),!i.styledMode&&c.style&&this.pager.css(c.style),this.pager.add(S),this.down=n.symbol("triangle-down",0,0,d,d).add(S),g("downTracker").on("click",function(){t.scroll(1,p)})),t.scroll(0),e=v):S&&(m(),this.nav=S.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),e}scroll(e,t){let i=this.chart,n=this.pages,r=n.length,s=this.clipHeight,o=this.options.navigation,a=this.pager,h=this.padding,c=this.currentPage+e;if(c>r&&(c=r),c>0){typeof t<"u"&&ip(t,i),this.nav.attr({translateX:h,translateY:s+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(d){d.attr({class:c===1?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),a.attr({text:c+"/"+r}),[this.down,this.downTracker].forEach(function(d){d.attr({x:18+this.pager.getBBox().width,class:c===r?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),i.styledMode||(this.up.attr({fill:c===1?o.inactiveColor:o.activeColor}),this.upTracker.css({cursor:c===1?"default":"pointer"}),this.down.attr({fill:c===r?o.inactiveColor:o.activeColor}),this.downTracker.css({cursor:c===r?"default":"pointer"})),this.scrollOffset=-n[c-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=c,this.positionCheckboxes();let p=ep($t(t,i.renderer.globalAnimation,!0));pp(()=>{fe(this,"afterScroll",{currentPage:c})},p.duration)}}setItemEvents(e,t,i){let n=this,r=e.legendItem||{},s=n.chart.renderer.boxWrapper,o=e instanceof jt,a=e instanceof wt,h="highcharts-legend-"+(o?"point":"series")+"-active",c=n.chart.styledMode,p=i?[t,r.symbol]:[r.group],d=f=>{n.allItems.forEach(u=>{e!==u&&[u].concat(u.linkedSeries||[]).forEach(m=>{m.setState(f,!o)})})};for(let f of p)f&&f.on("mouseover",function(){e.visible&&d("inactive"),e.setState("hover"),e.visible&&s.addClass(h),c||t.css(n.options.itemHoverStyle)}).on("mouseout",function(){n.chart.styledMode||t.css(Ge(e.visible?n.itemStyle:n.itemHiddenStyle)),d(""),s.removeClass(h),e.setState()}).on("click",function(u){let m=function(){e.setVisible&&e.setVisible(),d(e.visible?"inactive":"")};s.removeClass(h),fe(n,"itemClick",{browserEvent:u,legendItem:e},m),o?e.firePointEvent("legendItemClick",{browserEvent:u}):a&&fe(e,"legendItemClick",{browserEvent:u})})}createCheckboxForItem(e){let t=this;e.checkbox=op("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:e.selected,defaultChecked:e.selected},t.options.itemCheckboxStyle,t.chart.container),Ln(e.checkbox,"click",function(i){let n=i.target;fe(e.series||e,"checkboxClick",{checked:n.checked,item:e},function(){e.select()})})}};(function(l){function e(t){cp(np,"Core.Legend")&&Ln(t,"beforeMargins",function(){this.legend=new l(this,this.options.legend)})}l.compose=e})(Ni||(Ni={}));var as=Ni;var{animate:ls,animObject:up,setAnimation:hs}=lt,{defaultOptions:cs,defaultTime:mp}=Ct,{numberFormat:gp}=Tt,{registerEventOptions:Ga}=De,{charts:je,doc:Fi,marginNames:ja,svg:xp,win:Ua}=B,{seriesTypes:ds}=nt,{addEvent:fs,attr:$a,createElement:ps,css:ee,defined:Pe,diffObjects:qa,discardElement:yp,erase:bp,error:us,extend:ke,find:ms,fireEvent:ot,getStyle:gs,isArray:vp,isNumber:gi,isObject:Sp,isString:_n,merge:Me,objectEach:xs,pick:Ot,pInt:Cp,relativeLength:Ka,removeEvent:Za,splat:Bn,syncTimeout:Dp,uniqueKey:Tp}=E,Ue=class l{static chart(e,t,i){return new l(e,t,i)}constructor(e,t,i){this.sharedClips={};let n=[...arguments];(_n(e)||e.nodeName)&&(this.renderTo=n.shift()),this.init(n[0],n[1])}setZoomOptions(){let e=this,t=e.options.chart,i=t.zooming;e.zooming=zt(vt({},i),{type:Ot(t.zoomType,i.type),key:Ot(t.zoomKey,i.key),pinchType:Ot(t.pinchType,i.pinchType),singleTouch:Ot(t.zoomBySingleTouch,i.singleTouch,!1),resetButton:Me(i.resetButton,t.resetZoomButton)})}init(e,t){ot(this,"init",{args:arguments},function(){let i=Me(cs,e),n=i.chart;this.userOptions=ke({},e),this.margin=[],this.spacing=[],this.labelCollectors=[],this.callback=t,this.isResizing=0,this.options=i,this.axes=[],this.series=[],this.time=e.time&&Object.keys(e.time).length?new Ne(e.time):B.time,this.numberFormatter=n.numberFormatter||gp,this.styledMode=n.styledMode,this.hasCartesianSeries=n.showAxes;let r=this;r.index=je.length,je.push(r),B.chartCount++,Ga(this,n),r.xAxis=[],r.yAxis=[],r.pointCount=r.colorCounter=r.symbolCounter=0,this.setZoomOptions(),ot(r,"afterInit"),r.firstRender()})}initSeries(e){let t=this,i=t.options.chart,n=e.type||i.type,r=ds[n];r||us(17,!0,t,{missingModuleFor:n});let s=new r;return typeof s.init=="function"&&s.init(t,e),s}setSortedData(){this.getSeriesOrderByLinks().forEach(function(e){!e.points&&!e.data&&e.enabledDataSorting&&e.setData(e.options.data,!1)})}getSeriesOrderByLinks(){return this.series.concat().sort(function(e,t){return e.linkedSeries.length||t.linkedSeries.length?t.linkedSeries.length-e.linkedSeries.length:0})}orderItems(e,t=0){let i=this[e],n=this.options[e]=Bn(this.options[e]).slice(),r=this.userOptions[e]=this.userOptions[e]?Bn(this.userOptions[e]).slice():[];if(this.hasRendered&&(n.splice(t),r.splice(t)),i)for(let s=t,o=i.length;s<o;++s){let a=i[s];a&&(a.index=s,a instanceof wt&&(a.name=a.getName()),a.options.isInternal||(n[s]=a.options,r[s]=a.userOptions))}}isInsidePlot(e,t,i={}){let{inverted:n,plotBox:r,plotLeft:s,plotTop:o,scrollablePlotBox:a}=this,{scrollLeft:h=0,scrollTop:c=0}=i.visiblePlotOnly&&this.scrollablePlotArea?.scrollingContainer||{},p=i.series,d=i.visiblePlotOnly&&a||r,f=i.inverted?t:e,u=i.inverted?e:t,m={x:f,y:u,isInsidePlot:!0,options:i};if(!i.ignoreX){let g=p&&(n&&!this.polar?p.yAxis:p.xAxis)||{pos:s,len:1/0},x=i.paneCoordinates?g.pos+f:s+f;x>=Math.max(h+s,g.pos)&&x<=Math.min(h+s+d.width,g.pos+g.len)||(m.isInsidePlot=!1)}if(!i.ignoreY&&m.isInsidePlot){let g=!n&&i.axis&&!i.axis.isXAxis&&i.axis||p&&(n?p.xAxis:p.yAxis)||{pos:o,len:1/0},x=i.paneCoordinates?g.pos+u:o+u;x>=Math.max(c+o,g.pos)&&x<=Math.min(c+o+d.height,g.pos+g.len)||(m.isInsidePlot=!1)}return ot(this,"afterIsInsidePlot",m),m.isInsidePlot}redraw(e){ot(this,"beforeRedraw");let t=this,i=t.hasCartesianSeries?t.axes:t.colorAxis||[],n=t.series,r=t.pointer,s=t.legend,o=t.userOptions.legend,a=t.renderer,h=a.isHidden(),c=[],p,d,f,u=t.isDirtyBox,m=t.isDirtyLegend,g;for(a.rootFontSize=a.boxWrapper.getStyle("font-size"),t.setResponsive&&t.setResponsive(!1),hs(t.hasRendered?e:!1,t),h&&t.temporaryDisplay(),t.layOutTitles(!1),f=n.length;f--;)if(g=n[f],(g.options.stacking||g.options.centerInCategory)&&(d=!0,g.isDirty)){p=!0;break}if(p)for(f=n.length;f--;)g=n[f],g.options.stacking&&(g.isDirty=!0);n.forEach(function(x){x.isDirty&&(x.options.legendType==="point"?(typeof x.updateTotals=="function"&&x.updateTotals(),m=!0):o&&(o.labelFormatter||o.labelFormat)&&(m=!0)),x.isDirtyData&&ot(x,"updatedData")}),m&&s&&s.options.enabled&&(s.render(),t.isDirtyLegend=!1),d&&t.getStacks(),i.forEach(function(x){x.updateNames(),x.setScale()}),t.getMargins(),i.forEach(function(x){x.isDirty&&(u=!0)}),i.forEach(function(x){let y=x.min+","+x.max;x.extKey!==y&&(x.extKey=y,c.push(function(){ot(x,"afterSetExtremes",ke(x.eventArgs,x.getExtremes())),delete x.eventArgs})),(u||d)&&x.redraw()}),u&&t.drawChartBox(),ot(t,"predraw"),n.forEach(function(x){(u||x.isDirty)&&x.visible&&x.redraw(),x.isDirtyData=!1}),r&&r.reset(!0),a.draw(),ot(t,"redraw"),ot(t,"render"),h&&t.temporaryDisplay(!0),c.forEach(function(x){x.call()})}get(e){let t=this.series;function i(r){return r.id===e||r.options&&r.options.id===e}let n=ms(this.axes,i)||ms(this.series,i);for(let r=0;!n&&r<t.length;r++)n=ms(t[r].points||[],i);return n}getAxes(){let e=this.userOptions;ot(this,"getAxes");for(let t of["xAxis","yAxis"]){let i=e[t]=Bn(e[t]||{});for(let n of i)new _i(this,n,t)}ot(this,"afterGetAxes")}getSelectedPoints(){return this.series.reduce((e,t)=>(t.getPointsCollection().forEach(i=>{Ot(i.selectedStaging,i.selected)&&e.push(i)}),e),[])}getSelectedSeries(){return this.series.filter(function(e){return e.selected})}setTitle(e,t,i){this.applyDescription("title",e),this.applyDescription("subtitle",t),this.applyDescription("caption",void 0),this.layOutTitles(i)}applyDescription(e,t){let i=this,n=this.options[e]=Me(this.options[e],t),r=this[e];r&&t&&(this[e]=r=r.destroy()),n&&!r&&(r=this.renderer.text(n.text,0,0,n.useHTML).attr({align:n.align,class:"highcharts-"+e,zIndex:n.zIndex||4}).add(),r.update=function(s,o){i.applyDescription(e,s),i.layOutTitles(o)},this.styledMode||r.css(ke(e==="title"?{fontSize:this.options.isStock?"1em":"1.2em"}:{},n.style)),this[e]=r)}layOutTitles(e=!0){let t=[0,0,0],i=this.renderer,n=this.spacingBox;["title","subtitle","caption"].forEach(function(s){let o=this[s],a=this.options[s],h=a.verticalAlign||"top",c=s==="title"?h==="top"?-3:0:h==="top"?t[0]+2:0;if(o){o.css({width:(a.width||n.width+(a.widthAdjust||0))+"px"});let p=i.fontMetrics(o).b,d=Math.round(o.getBBox(a.useHTML).height);o.align(ke({y:h==="bottom"?p:c+p,height:d},a),!1,"spacingBox"),a.floating||(h==="top"?t[0]=Math.ceil(t[0]+d):h==="bottom"&&(t[2]=Math.ceil(t[2]+d)))}},this),t[0]&&(this.options.title.verticalAlign||"top")==="top"&&(t[0]+=this.options.title.margin),t[2]&&this.options.caption.verticalAlign==="bottom"&&(t[2]+=this.options.caption.margin);let r=!this.titleOffset||this.titleOffset.join(",")!==t.join(",");this.titleOffset=t,ot(this,"afterLayOutTitles"),!this.isDirtyBox&&r&&(this.isDirtyBox=this.isDirtyLegend=r,this.hasRendered&&e&&this.isDirtyBox&&this.redraw())}getContainerBox(){let e=[].map.call(this.renderTo.children,i=>{if(i!==this.container){let n=i.style.display;return i.style.display="none",[i,n]}}),t={width:gs(this.renderTo,"width",!0)||0,height:gs(this.renderTo,"height",!0)||0};return e.filter(Boolean).forEach(([i,n])=>{i.style.display=n}),t}getChartSize(){let e=this,t=e.options.chart,i=t.width,n=t.height,r=e.getContainerBox(),s=r.height>1&&!(!e.renderTo.parentElement?.style.height&&e.renderTo.style.height==="100%");e.chartWidth=Math.max(0,i||r.width||600),e.chartHeight=Math.max(0,Ka(n,e.chartWidth)||(s?r.height:400)),e.containerBox=r}temporaryDisplay(e){let t=this.renderTo,i;if(e)for(;t&&t.style;)t.hcOrigStyle&&(ee(t,t.hcOrigStyle),delete t.hcOrigStyle),t.hcOrigDetached&&(Fi.body.removeChild(t),t.hcOrigDetached=!1),t=t.parentNode;else for(;t&&t.style&&(!Fi.body.contains(t)&&!t.parentNode&&(t.hcOrigDetached=!0,Fi.body.appendChild(t)),(gs(t,"display",!1)==="none"||t.hcOricDetached)&&(t.hcOrigStyle={display:t.style.display,height:t.style.height,overflow:t.style.overflow},i={display:"block",overflow:"hidden"},t!==this.renderTo&&(i.height=0),ee(t,i),t.offsetWidth||t.style.setProperty("display","block","important")),t=t.parentNode,t!==Fi.body););}setClassName(e){this.container.className="highcharts-container "+(e||"")}getContainer(){let e=this,t=e.options,i=t.chart,n="data-highcharts-chart",r=Tp(),s,o=e.renderTo;o||(e.renderTo=o=i.renderTo),_n(o)&&(e.renderTo=o=Fi.getElementById(o)),o||us(13,!0,e);let a=Cp($a(o,n));gi(a)&&je[a]&&je[a].hasRendered&&je[a].destroy(),$a(o,n,e.index),o.innerHTML=Mt.emptyHTML,!i.skipClone&&!o.offsetWidth&&e.temporaryDisplay(),e.getChartSize();let h=e.chartHeight,c=e.chartWidth;ee(o,{overflow:"hidden"}),e.styledMode||(s=ke({position:"relative",overflow:"hidden",width:c+"px",height:h+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none",padding:"0px"},i.style||{}));let p=ps("div",{id:r},s,o);e.container=p,e.getChartSize(),c!==e.chartWidth&&(c=e.chartWidth,e.styledMode||ee(p,{width:Ot(i.style?.width,c+"px")})),e.containerBox=e.getContainerBox(),e._cursor=p.style.cursor;let d=i.renderer||!xp?ne.getRendererType(i.renderer):yn;if(e.renderer=new d(p,c,h,void 0,i.forExport,t.exporting&&t.exporting.allowHTML,e.styledMode),hs(void 0,e),e.setClassName(i.className),!e.styledMode)e.renderer.setStyle(i.style);else for(let f in t.defs)this.renderer.definition(t.defs[f]);e.renderer.chartIndex=e.index,ot(this,"afterGetContainer")}getMargins(e){let{spacing:t,margin:i,titleOffset:n}=this;this.resetMargins(),n[0]&&!Pe(i[0])&&(this.plotTop=Math.max(this.plotTop,n[0]+t[0])),n[2]&&!Pe(i[2])&&(this.marginBottom=Math.max(this.marginBottom,n[2]+t[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(i,t),ot(this,"getMargins"),e||this.getAxisMargins()}getAxisMargins(){let e=this,t=e.axisOffset=[0,0,0,0],i=e.colorAxis,n=e.margin,r=function(s){s.forEach(function(o){o.visible&&o.getOffset()})};e.hasCartesianSeries?r(e.axes):i&&i.length&&r(i),ja.forEach(function(s,o){Pe(n[o])||(e[s]+=t[o])}),e.setChartSize()}getOptions(){return qa(this.userOptions,cs)}reflow(e){let t=this,i=t.containerBox,n=t.getContainerBox();delete t.pointer?.chartPosition,!t.isPrinting&&!t.isResizing&&i&&n.width&&((n.width!==i.width||n.height!==i.height)&&(E.clearTimeout(t.reflowTimeout),t.reflowTimeout=Dp(function(){t.container&&t.setSize(void 0,void 0,!1)},e?100:0)),t.containerBox=n)}setReflow(){let e=this,t=i=>{e.options?.chart.reflow&&e.hasLoaded&&e.reflow(i)};if(typeof ResizeObserver=="function")new ResizeObserver(t).observe(e.renderTo);else{let i=fs(Ua,"resize",t);fs(this,"destroy",i)}}setSize(e,t,i){let n=this,r=n.renderer;n.isResizing+=1,hs(i,n);let s=r.globalAnimation;n.oldChartHeight=n.chartHeight,n.oldChartWidth=n.chartWidth,typeof e<"u"&&(n.options.chart.width=e),typeof t<"u"&&(n.options.chart.height=t),n.getChartSize();let{chartWidth:o,chartHeight:a,scrollablePixelsX:h=0,scrollablePixelsY:c=0}=n;(n.isDirtyBox||o!==n.oldChartWidth||a!==n.oldChartHeight)&&(n.styledMode||(s?ls:ee)(n.container,{width:`${o+h}px`,height:`${a+c}px`},s),n.setChartSize(!0),r.setSize(o,a,s),n.axes.forEach(function(p){p.isDirty=!0,p.setScale()}),n.isDirtyLegend=!0,n.isDirtyBox=!0,n.layOutTitles(),n.getMargins(),n.redraw(s),n.oldChartHeight=void 0,ot(n,"resize"),setTimeout(()=>{n&&ot(n,"endResize")},up(s).duration)),n.isResizing-=1}setChartSize(e){let t=this,{chartHeight:i,chartWidth:n,inverted:r,spacing:s,renderer:o}=t,a=t.clipOffset,h=Math[r?"floor":"round"],c,p,d,f;t.plotLeft=c=Math.round(t.plotLeft),t.plotTop=p=Math.round(t.plotTop),t.plotWidth=d=Math.max(0,Math.round(n-c-t.marginRight)),t.plotHeight=f=Math.max(0,Math.round(i-p-t.marginBottom)),t.plotSizeX=r?f:d,t.plotSizeY=r?d:f,t.spacingBox=o.spacingBox={x:s[3],y:s[0],width:n-s[3]-s[1],height:i-s[0]-s[2]},t.plotBox=o.plotBox={x:c,y:p,width:d,height:f},a&&(t.clipBox={x:h(a[3]),y:h(a[0]),width:h(t.plotSizeX-a[1]-a[3]),height:h(t.plotSizeY-a[0]-a[2])}),e||(t.axes.forEach(function(u){u.setAxisSize(),u.setAxisTranslation()}),o.alignElements()),ot(t,"afterSetChartSize",{skipAxes:e})}resetMargins(){ot(this,"resetMargins");let e=this,t=e.options.chart,i=t.plotBorderWidth||0,n=i/2;["margin","spacing"].forEach(function(s){let o=t[s],a=Sp(o)?o:[o,o,o,o];["Top","Right","Bottom","Left"].forEach(function(h,c){e[s][c]=Ot(t[s+h],a[c])})}),ja.forEach(function(r,s){e[r]=Ot(e.margin[s],e.spacing[s])}),e.axisOffset=[0,0,0,0],e.clipOffset=[n,n,n,n],e.plotBorderWidth=i}drawChartBox(){let e=this,t=e.options.chart,i=e.renderer,n=e.chartWidth,r=e.chartHeight,s=e.styledMode,o=e.plotBGImage,a=t.backgroundColor,h=t.plotBackgroundColor,c=t.plotBackgroundImage,p=e.plotLeft,d=e.plotTop,f=e.plotWidth,u=e.plotHeight,m=e.plotBox,g=e.clipRect,x=e.clipBox,y=e.chartBackground,b=e.plotBackground,v=e.plotBorder,S,C,D,T="animate";y||(e.chartBackground=y=i.rect().addClass("highcharts-background").add(),T="attr"),s?S=C=y.strokeWidth():(S=t.borderWidth||0,C=S+(t.shadow?8:0),D={fill:a||"none"},(S||y["stroke-width"])&&(D.stroke=t.borderColor,D["stroke-width"]=S),y.attr(D).shadow(t.shadow)),y[T]({x:C/2,y:C/2,width:n-C-S%2,height:r-C-S%2,r:t.borderRadius}),T="animate",b||(T="attr",e.plotBackground=b=i.rect().addClass("highcharts-plot-background").add()),b[T](m),s||(b.attr({fill:h||"none"}).shadow(t.plotShadow),c&&(o?(c!==o.attr("href")&&o.attr("href",c),o.animate(m)):e.plotBGImage=i.image(c,p,d,f,u).add())),g?g.animate({width:x.width,height:x.height}):e.clipRect=i.clipRect(x),T="animate",v||(T="attr",e.plotBorder=v=i.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),s||v.attr({stroke:t.plotBorderColor,"stroke-width":t.plotBorderWidth||0,fill:"none"}),v[T](v.crisp({x:p,y:d,width:f,height:u},-v.strokeWidth())),e.isDirtyBox=!1,ot(this,"afterDrawChartBox")}propFromSeries(){let e=this,t=e.options.chart,i=e.options.series,n,r,s;["inverted","angular","polar"].forEach(function(o){for(r=ds[t.type],s=t[o]||r&&r.prototype[o],n=i&&i.length;!s&&n--;)r=ds[i[n].type],r&&r.prototype[o]&&(s=!0);e[o]=s})}linkSeries(e){let t=this,i=t.series;i.forEach(function(n){n.linkedSeries.length=0}),i.forEach(function(n){let{linkedTo:r}=n.options;if(_n(r)){let s;r===":previous"?s=t.series[n.index-1]:s=t.get(r),s&&s.linkedParent!==n&&(s.linkedSeries.push(n),n.linkedParent=s,s.enabledDataSorting&&n.setDataSortingOptions(),n.visible=Ot(n.options.visible,s.options.visible,n.visible))}}),ot(this,"afterLinkSeries",{isUpdating:e})}renderSeries(){this.series.forEach(function(e){e.translate(),e.render()})}render(){let e=this,t=e.axes,i=e.colorAxis,n=e.renderer,r=e.options.chart.axisLayoutRuns||2,s=p=>{p.forEach(d=>{d.visible&&d.render()})},o=0,a=!0,h,c=0;e.setTitle(),ot(e,"beforeMargins"),e.getStacks?.(),e.getMargins(!0),e.setChartSize();for(let p of t){let{options:d}=p,{labels:f}=d;if(e.hasCartesianSeries&&p.horiz&&p.visible&&f.enabled&&p.series.length&&p.coll!=="colorAxis"&&!e.polar){o=d.tickLength,p.createGroups();let u=new ce(p,0,"",!0),m=u.createLabel("x",f);if(u.destroy(),m&&Ot(f.reserveSpace,!gi(d.crossing))&&(o=m.getBBox().height+f.distance+Math.max(d.offset||0,0)),o){m?.destroy();break}}}for(e.plotHeight=Math.max(e.plotHeight-o,0);(a||h||r>1)&&c<r;){let p=e.plotWidth,d=e.plotHeight;for(let f of t)c===0?f.setScale():(f.horiz&&a||!f.horiz&&h)&&f.setTickInterval(!0);c===0?e.getAxisMargins():e.getMargins(),a=p/e.plotWidth>(c?1:1.1),h=d/e.plotHeight>(c?1:1.05),c++}e.drawChartBox(),e.hasCartesianSeries?s(t):i&&i.length&&s(i),e.seriesGroup||(e.seriesGroup=n.g("series-group").attr({zIndex:3}).shadow(e.options.chart.seriesGroupShadow).add()),e.renderSeries(),e.addCredits(),e.setResponsive&&e.setResponsive(),e.hasRendered=!0}addCredits(e){let t=this,i=Me(!0,this.options.credits,e);i.enabled&&!this.credits&&(this.credits=this.renderer.text(i.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){i.href&&(Ua.location.href=i.href)}).attr({align:i.position.align,zIndex:8}),t.styledMode||this.credits.css(i.style),this.credits.add().align(i.position),this.credits.update=function(n){t.credits=t.credits.destroy(),t.addCredits(n)})}destroy(){let e=this,t=e.axes,i=e.series,n=e.container,r=n&&n.parentNode,s;for(ot(e,"destroy"),e.renderer.forExport?bp(je,e):je[e.index]=void 0,B.chartCount--,e.renderTo.removeAttribute("data-highcharts-chart"),Za(e),s=t.length;s--;)t[s]=t[s].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),s=i.length;s--;)i[s]=i[s].destroy();["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","rangeSelector","legend","resetZoomButton","tooltip","renderer"].forEach(function(o){let a=e[o];a&&a.destroy&&(e[o]=a.destroy())}),n&&(n.innerHTML=Mt.emptyHTML,Za(n),r&&yp(n)),xs(e,function(o,a){delete e[a]})}firstRender(){let e=this,t=e.options;e.getContainer(),e.resetMargins(),e.setChartSize(),e.propFromSeries(),e.getAxes();let i=vp(t.series)?t.series:[];t.series=[],i.forEach(function(n){e.initSeries(n)}),e.linkSeries(),e.setSortedData(),ot(e,"beforeRender"),e.render(),e.pointer?.getChartPosition(),!e.renderer.imgCount&&!e.hasLoaded&&e.onload(),e.temporaryDisplay(!0)}onload(){this.callbacks.concat([this.callback]).forEach(function(e){e&&typeof this.index<"u"&&e.apply(this,[this])},this),ot(this,"load"),ot(this,"render"),Pe(this.index)&&this.setReflow(),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0}warnIfA11yModuleNotLoaded(){let{options:e,title:t}=this;e&&!this.accessibility&&(this.renderer.boxWrapper.attr({role:"img","aria-label":(t&&t.element.textContent||"").replace(/</g,"<")}),e.accessibility&&e.accessibility.enabled===!1||us('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,this))}addSeries(e,t,i){let n=this,r;return e&&(t=Ot(t,!0),ot(n,"addSeries",{options:e},function(){r=n.initSeries(e),n.isDirtyLegend=!0,n.linkSeries(),r.enabledDataSorting&&r.setData(e.data,!1),ot(n,"afterAddSeries",{series:r}),t&&n.redraw(i)})),r}addAxis(e,t,i,n){return this.createAxis(t?"xAxis":"yAxis",{axis:e,redraw:i,animation:n})}addColorAxis(e,t,i){return this.createAxis("colorAxis",{axis:e,redraw:t,animation:i})}createAxis(e,t){let i=new _i(this,t.axis,e);return Ot(t.redraw,!0)&&this.redraw(t.animation),i}showLoading(e){let t=this,i=t.options,n=i.loading,r=function(){s&&ee(s,{left:t.plotLeft+"px",top:t.plotTop+"px",width:t.plotWidth+"px",height:t.plotHeight+"px"})},s=t.loadingDiv,o=t.loadingSpan;s||(t.loadingDiv=s=ps("div",{className:"highcharts-loading highcharts-loading-hidden"},null,t.container)),o||(t.loadingSpan=o=ps("span",{className:"highcharts-loading-inner"},null,s),fs(t,"redraw",r)),s.className="highcharts-loading",Mt.setElementHTML(o,Ot(e,i.lang.loading,"")),t.styledMode||(ee(s,ke(n.style,{zIndex:10})),ee(o,n.labelStyle),t.loadingShown||(ee(s,{opacity:0,display:""}),ls(s,{opacity:n.style.opacity||.5},{duration:n.showDuration||0}))),t.loadingShown=!0,r()}hideLoading(){let e=this.options,t=this.loadingDiv;t&&(t.className="highcharts-loading highcharts-loading-hidden",this.styledMode||ls(t,{opacity:0},{duration:e.loading.hideDuration||100,complete:function(){ee(t,{display:"none"})}})),this.loadingShown=!1}update(e,t,i,n){let r=this,s={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},o=e.isResponsiveOptions,a=[],h,c,p;ot(r,"update",{options:e}),o||r.setResponsive(!1,!0),e=qa(e,r.options),r.userOptions=Me(r.userOptions,e);let d=e.chart;d&&(Me(!0,r.options.chart,d),this.setZoomOptions(),"className"in d&&r.setClassName(d.className),("inverted"in d||"polar"in d||"type"in d)&&(r.propFromSeries(),h=!0),"alignTicks"in d&&(h=!0),"events"in d&&Ga(this,d),xs(d,function(m,g){r.propsRequireUpdateSeries.indexOf("chart."+g)!==-1&&(c=!0),r.propsRequireDirtyBox.indexOf(g)!==-1&&(r.isDirtyBox=!0),r.propsRequireReflow.indexOf(g)!==-1&&(r.isDirtyBox=!0,o||(p=!0))}),!r.styledMode&&d.style&&r.renderer.setStyle(r.options.chart.style||{})),!r.styledMode&&e.colors&&(this.options.colors=e.colors),e.time&&(this.time===mp&&(this.time=new Ne(e.time)),Me(!0,r.options.time,e.time)),xs(e,function(m,g){r[g]&&typeof r[g].update=="function"?r[g].update(m,!1):typeof r[s[g]]=="function"?r[s[g]](m):g!=="colors"&&r.collectionsWithUpdate.indexOf(g)===-1&&Me(!0,r.options[g],e[g]),g!=="chart"&&r.propsRequireUpdateSeries.indexOf(g)!==-1&&(c=!0)}),this.collectionsWithUpdate.forEach(function(m){e[m]&&(Bn(e[m]).forEach(function(g,x){let y=Pe(g.id),b;y&&(b=r.get(g.id)),!b&&r[m]&&(b=r[m][Ot(g.index,x)],b&&(y&&Pe(b.options.id)||b.options.isInternal)&&(b=void 0)),b&&b.coll===m&&(b.update(g,!1),i&&(b.touched=!0)),!b&&i&&r.collectionsWithInit[m]&&(r.collectionsWithInit[m][0].apply(r,[g].concat(r.collectionsWithInit[m][1]||[]).concat([!1])).touched=!0)}),i&&r[m].forEach(function(g){!g.touched&&!g.options.isInternal?a.push(g):delete g.touched}))}),a.forEach(function(m){m.chart&&m.remove&&m.remove(!1)}),h&&r.axes.forEach(function(m){m.update({},!1)}),c&&r.getSeriesOrderByLinks().forEach(function(m){m.chart&&m.update({},!1)},this);let f=d&&d.width,u=d&&(_n(d.height)?Ka(d.height,f||r.chartWidth):d.height);p||gi(f)&&f!==r.chartWidth||gi(u)&&u!==r.chartHeight?r.setSize(f,u,n):Ot(t,!0)&&r.redraw(n),ot(r,"afterUpdate",{options:e,redraw:t,animation:n})}setSubtitle(e,t){this.applyDescription("subtitle",e),this.layOutTitles(t)}setCaption(e,t){this.applyDescription("caption",e),this.layOutTitles(t)}showResetZoom(){let e=this,t=cs.lang,i=e.zooming.resetButton,n=i.theme,r=i.relativeTo==="chart"||i.relativeTo==="spacingBox"?null:"plotBox";function s(){e.zoomOut()}ot(this,"beforeShowResetZoom",null,function(){e.resetZoomButton=e.renderer.button(t.resetZoom,null,null,s,n).attr({align:i.position.align,title:t.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(i.position,!1,r)}),ot(this,"afterShowResetZoom")}zoomOut(){ot(this,"selection",{resetSelection:!0},()=>this.transform({reset:!0,trigger:"zoom"}))}pan(e,t){let i=this,n=typeof t=="object"?t:{enabled:t,type:"x"},r=n.type,s=r&&i[{x:"xAxis",xy:"axes",y:"yAxis"}[r]].filter(a=>a.options.panningEnabled&&!a.options.isInternal),o=i.options.chart;o?.panning&&(o.panning=n),ot(this,"pan",{originalEvent:e},()=>{i.transform({axes:s,event:e,to:{x:e.chartX-(i.mouseDownX||0),y:e.chartY-(i.mouseDownY||0)},trigger:"pan"}),ee(i.container,{cursor:"move"})})}transform(e){let{axes:t=this.axes,event:i,from:n={},reset:r,selection:s,to:o={},trigger:a}=e,{inverted:h}=this,c=!1,p,d;this.hoverPoints?.forEach(f=>f.setState());for(let f of t){let{horiz:u,len:m,minPointOffset:g=0,options:x,reversed:y}=f,b=u?"width":"height",v=u?"x":"y",S=Ot(o[b],f.len),C=Ot(n[b],f.len),D=Math.abs(S)<10?1:S/C,T=(n[v]||0)+C/2-f.pos,M=(o[v]??f.pos)+S/2-f.pos,O=T-M/D,I=y&&!h||!y&&h?-1:1,R=O;if(!r&&(T<0||T>f.len))continue;let L=f.toValue(R,!0)+(s||f.isOrdinal?0:g*I),F=f.toValue(R+m/D,!0)-(s||f.isOrdinal?0:g*I||0),z=f.allExtremes;if(L>F&&([L,F]=[F,L]),D===1&&!r&&f.coll==="yAxis"&&!z){for(let Ht of f.series){let ue=Ht.getExtremes(Ht.getProcessedData(!0).yData,!0);z??(z={dataMin:Number.MAX_VALUE,dataMax:-Number.MAX_VALUE}),gi(ue.dataMin)&&gi(ue.dataMax)&&(z.dataMin=Math.min(ue.dataMin,z.dataMin),z.dataMax=Math.max(ue.dataMax,z.dataMax))}f.allExtremes=z}let{dataMin:W,dataMax:q,min:et,max:rt}=ke(f.getExtremes(),z||{}),G=W??x.min,tt=q??x.max,U=F-L,J=f.categories?0:Math.min(U,tt-G),it=G-J*(Pe(x.min)?0:x.minPadding),j=tt+J*(Pe(x.max)?0:x.maxPadding),$=f.allowZoomOutside||D===1||a!=="zoom"&&D>1,st=Math.min(x.min??it,it,$?et:it),At=Math.max(x.max??j,j,$?rt:j);(!f.isOrdinal||f.options.overscroll||D!==1||r)&&(L<st&&(L=st,D>=1&&(F=L+U)),F>At&&(F=At,D>=1&&(L=F-U)),(r||f.series.length&&(L!==et||F!==rt)&&L>=st&&F<=At)&&(s?s[f.coll].push({axis:f,min:L,max:F}):(f.isPanning=a!=="zoom",f.isPanning&&(d=!0),f.setExtremes(r?void 0:L,r?void 0:F,!1,!1,{move:O,trigger:a,scale:D}),!r&&(L>st||F<At)&&a!=="mousewheel"&&(p=!0)),c=!0),i&&(this[u?"mouseDownX":"mouseDownY"]=i[u?"chartX":"chartY"]))}return c&&(s?ot(this,"selection",s,()=>{delete e.selection,e.trigger="zoom",this.transform(e)}):(p&&!d&&!this.resetZoomButton?this.showResetZoom():!p&&this.resetZoomButton&&(this.resetZoomButton=this.resetZoomButton.destroy()),this.redraw(a==="zoom"&&(this.options.chart.animation??this.pointCount<100)))),c}};ke(Ue.prototype,{callbacks:[],collectionsWithInit:{xAxis:[Ue.prototype.addAxis,[!0]],yAxis:[Ue.prototype.addAxis,[!1]],series:[Ue.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:["backgroundColor","borderColor","borderWidth","borderRadius","plotBackgroundColor","plotBackgroundImage","plotBorderColor","plotBorderWidth","plotShadow","shadow"],propsRequireReflow:["margin","marginTop","marginRight","marginBottom","marginLeft","spacing","spacingTop","spacingRight","spacingBottom","spacingLeft"],propsRequireUpdateSeries:["chart.inverted","chart.polar","chart.ignoreHiddenSeries","chart.type","colors","plotOptions","time","tooltip"]});var ys=Ue;var{stop:wp}=lt,{composed:Pp}=B,{addEvent:Oe,createElement:Rn,css:bs,defined:vs,merge:Qa,pushUnique:Mp}=E;function kp(){let l=this.scrollablePlotArea;(this.scrollablePixelsX||this.scrollablePixelsY)&&!l&&(this.scrollablePlotArea=l=new tl(this)),l?.applyFixed()}function Ja(){this.chart.scrollablePlotArea&&(this.chart.scrollablePlotArea.isDirty=!0)}var tl=(()=>{class l{static compose(t,i,n){Mp(Pp,this.compose)&&(Oe(t,"afterInit",Ja),Oe(i,"afterSetChartSize",r=>this.afterSetSize(r.target,r)),Oe(i,"render",kp),Oe(n,"show",Ja))}static afterSetSize(t,i){let{minWidth:n,minHeight:r}=t.options.chart.scrollablePlotArea||{},{clipBox:s,plotBox:o,inverted:a,renderer:h}=t,c,p,d;if(!h.forExport&&(n?(t.scrollablePixelsX=c=Math.max(0,n-t.chartWidth),c&&(t.scrollablePlotBox=Qa(t.plotBox),o.width=t.plotWidth+=c,s[a?"height":"width"]+=c,d=!0)):r&&(t.scrollablePixelsY=p=Math.max(0,r-t.chartHeight),vs(p)&&(t.scrollablePlotBox=Qa(t.plotBox),o.height=t.plotHeight+=p,s[a?"width":"height"]+=p,d=!1)),vs(d)&&!i.skipAxes))for(let f of t.axes)f.horiz===d&&(f.setAxisSize(),f.setAxisTranslation())}constructor(t){let i=t.options.chart,n=ne.getRendererType(),r=i.scrollablePlotArea||{},s=this.moveFixedElements.bind(this),o={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};t.scrollablePixelsX&&(o.overflowX="auto"),t.scrollablePixelsY&&(o.overflowY="auto"),this.chart=t;let a=this.parentDiv=Rn("div",{className:"highcharts-scrolling-parent"},{position:"relative"},t.renderTo),h=this.scrollingContainer=Rn("div",{className:"highcharts-scrolling"},o,a),c=this.innerContainer=Rn("div",{className:"highcharts-inner-container"},void 0,h),p=this.fixedDiv=Rn("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(i.style?.zIndex||0)+2,top:0},void 0,!0),d=this.fixedRenderer=new n(p,t.chartWidth,t.chartHeight,i.style);this.mask=d.path().attr({fill:i.backgroundColor||"#fff","fill-opacity":r.opacity??.85,zIndex:-1}).addClass("highcharts-scrollable-mask").add(),h.parentNode.insertBefore(p,h),bs(t.renderTo,{overflow:"visible"}),Oe(t,"afterShowResetZoom",s),Oe(t,"afterApplyDrilldown",s),Oe(t,"afterLayOutTitles",s);let f;Oe(h,"scroll",()=>{let{pointer:u,hoverPoint:m}=t;u&&(delete u.chartPosition,m&&(f=m),u.runPointActions(void 0,f,!0))}),c.appendChild(t.container)}applyFixed(){let{chart:t,fixedRenderer:i,isDirty:n,scrollingContainer:r}=this,{axisOffset:s,chartWidth:o,chartHeight:a,container:h,plotHeight:c,plotLeft:p,plotTop:d,plotWidth:f,scrollablePixelsX:u=0,scrollablePixelsY:m=0}=t,g=t.options.chart,x=g.scrollablePlotArea||{},{scrollPositionX:y=0,scrollPositionY:b=0}=x,v=o+u,S=a+m;i.setSize(o,a),(n??!0)&&(this.isDirty=!1,this.moveFixedElements()),wp(t.container),bs(h,{width:`${v}px`,height:`${S}px`}),t.renderer.boxWrapper.attr({width:v,height:S,viewBox:[0,0,v,S].join(" ")}),t.chartBackground?.attr({width:v,height:S}),bs(r,{width:`${o}px`,height:`${a}px`}),vs(n)||(r.scrollLeft=u*y,r.scrollTop=m*b);let C=d-s[0]-1,D=p-s[3]-1,T=d+c+s[2]+1,M=p+f+s[1]+1,O=p+f-u,I=d+c-m,R=[["M",0,0]];u?R=[["M",0,C],["L",p-1,C],["L",p-1,T],["L",0,T],["Z"],["M",O,C],["L",o,C],["L",o,T],["L",O,T],["Z"]]:m&&(R=[["M",D,0],["L",D,d-1],["L",M,d-1],["L",M,0],["Z"],["M",D,I],["L",D,a],["L",M,a],["L",M,I],["Z"]]),t.redrawTrigger!=="adjustHeight"&&this.mask.attr({d:R})}moveFixedElements(){let{container:t,inverted:i,scrollablePixelsX:n,scrollablePixelsY:r}=this.chart,s=this.fixedRenderer,o=l.fixedSelectors,a;n&&!i?a=".highcharts-yaxis":n&&i||r&&!i?a=".highcharts-xaxis":r&&i&&(a=".highcharts-yaxis"),a&&o.push(`${a}:not(.highcharts-radial-axis)`,`${a}-labels:not(.highcharts-radial-axis-labels)`);for(let h of o)[].forEach.call(t.querySelectorAll(h),c=>{(c.namespaceURI===s.SVG_NS?s.box:s.box.parentNode).appendChild(c),c.style.pointerEvents="auto"})}}return l.fixedSelectors=[".highcharts-breadcrumbs-group",".highcharts-contextbutton",".highcharts-caption",".highcharts-credits",".highcharts-drillup-button",".highcharts-legend",".highcharts-legend-checkbox",".highcharts-navigator-series",".highcharts-navigator-xaxis",".highcharts-navigator-yaxis",".highcharts-navigator",".highcharts-range-selector-group",".highcharts-reset-zoom",".highcharts-scrollbar",".highcharts-subtitle",".highcharts-title"],l})(),el=tl;var{format:Op}=Tt,{series:Ap}=nt,{destroyObjectProperties:Ep,fireEvent:il,isNumber:Ss,pick:Hi}=E,Cs=class{constructor(e,t,i,n,r){let s=e.chart.inverted,o=e.reversed;this.axis=e;let a=this.isNegative=!!i!=!!o;this.options=t=t||{},this.x=n,this.total=null,this.cumulative=null,this.points={},this.hasValidPoints=!1,this.stack=r,this.leftCliff=0,this.rightCliff=0,this.alignOptions={align:t.align||(s?a?"left":"right":"center"),verticalAlign:t.verticalAlign||(s?"middle":a?"bottom":"top"),y:t.y,x:t.x},this.textAlign=t.textAlign||(s?a?"right":"left":"center")}destroy(){Ep(this,this.axis)}render(e){let t=this.axis.chart,i=this.options,n=i.format,r=n?Op(n,this,t):i.formatter.call(this);if(this.label)this.label.attr({text:r,visibility:"hidden"});else{this.label=t.renderer.label(r,null,void 0,i.shape,void 0,void 0,i.useHTML,!1,"stack-labels");let s={r:i.borderRadius||0,text:r,padding:Hi(i.padding,5),visibility:"hidden"};t.styledMode||(s.fill=i.backgroundColor,s.stroke=i.borderColor,s["stroke-width"]=i.borderWidth,this.label.css(i.style||{})),this.label.attr(s),this.label.added||this.label.add(e)}this.label.labelrank=t.plotSizeY,il(this,"afterRender")}setOffset(e,t,i,n,r,s){let{alignOptions:o,axis:a,label:h,options:c,textAlign:p}=this,d=a.chart,f=this.getStackBox({xOffset:e,width:t,boxBottom:i,boxTop:n,defaultX:r,xAxis:s}),{verticalAlign:u}=o;if(h&&f){let m=h.getBBox(void 0,0),g=h.padding,x=Hi(c.overflow,"justify")==="justify",y;o.x=c.x||0,o.y=c.y||0;let{x:b,y:v}=this.adjustStackPosition({labelBox:m,verticalAlign:u,textAlign:p});f.x-=b,f.y-=v,h.align(o,!1,f),y=d.isInsidePlot(h.alignAttr.x+o.x+b,h.alignAttr.y+o.y+v),y||(x=!1),x&&Ap.prototype.justifyDataLabel.call(a,h,o,h.alignAttr,m,f),h.attr({x:h.alignAttr.x,y:h.alignAttr.y,rotation:c.rotation,rotationOriginX:m.width*{left:0,center:.5,right:1}[c.textAlign||"center"],rotationOriginY:m.height/2}),Hi(!x&&c.crop,!0)&&(y=Ss(h.x)&&Ss(h.y)&&d.isInsidePlot(h.x-g+(h.width||0),h.y)&&d.isInsidePlot(h.x+g,h.y)),h[y?"show":"hide"]()}il(this,"afterSetOffset",{xOffset:e,width:t})}adjustStackPosition({labelBox:e,verticalAlign:t,textAlign:i}){let n={bottom:0,middle:1,top:2,right:1,center:0,left:-1},r=n[t],s=n[i];return{x:e.width/2+e.width/2*s,y:e.height/2*r}}getStackBox(e){let t=this,i=this.axis,n=i.chart,{boxTop:r,defaultX:s,xOffset:o,width:a,boxBottom:h}=e,c=i.stacking.usePercentage?100:Hi(r,this.total,0),p=i.toPixels(c),d=e.xAxis||n.xAxis[0],f=Hi(s,d.translate(this.x))+o,u=i.toPixels(h||Ss(i.min)&&i.logarithmic&&i.logarithmic.lin2log(i.min)||0),m=Math.abs(p-u),g=n.inverted,x=t.isNegative;return g?{x:(x?p:p-m)-n.plotLeft,y:d.height-f-a+d.top-n.plotTop,width:m,height:a}:{x:f+d.transB-n.plotLeft,y:(x?p-m:p)-n.plotTop,width:a,height:m}}},Wn=Cs;var{getDeferredAnimation:Ip}=lt,{series:{prototype:Lp}}=nt,{addEvent:nl,correctFloat:zi,defined:rl,destroyObjectProperties:_p,fireEvent:Bp,isArray:Rp,isNumber:Wp,objectEach:$e,pick:Ds}=E;function Np(){let l=this,e=l.inverted;l.axes.forEach(t=>{t.stacking&&t.stacking.stacks&&t.hasVisibleSeries&&(t.stacking.oldStacks=t.stacking.stacks)}),l.series.forEach(t=>{let i=t.xAxis&&t.xAxis.options||{};t.options.stacking&&t.reserveSpace()&&(t.stackKey=[t.type,Ds(t.options.stack,""),e?i.top:i.left,e?i.height:i.width].join(","))})}function Fp(){let l=this.stacking;if(l){let e=l.stacks;$e(e,(t,i)=>{_p(t),delete e[i]}),l.stackTotalGroup?.destroy()}}function Hp(){this.stacking||(this.stacking=new Ts(this))}function zp(l,e,t,i){return!rl(l)||l.x!==e||i&&l.stackKey!==i?l={x:e,index:0,key:i,stackKey:i}:l.index++,l.key=[t,e,l.index].join(","),l}function Yp(){let l=this,e=l.yAxis,t=l.stackKey||"",i=e.stacking.stacks,n=l.processedXData,r=l.options.stacking,s=l[r+"Stacker"],o;s&&[t,"-"+t].forEach(a=>{let h=n.length,c,p,d;for(;h--;)c=n[h],o=l.getStackIndicator(o,c,l.index,a),p=i[a]?.[c],d=p?.points[o.key||""],d&&s.call(l,d,p,h)})}function Xp(l,e,t){let i=e.total?100/e.total:0;l[0]=zi(l[0]*i),l[1]=zi(l[1]*i),this.stackedYData[t]=l[1]}function Vp(l){(this.is("column")||this.is("columnrange"))&&(this.options.centerInCategory&&!this.options.stacking&&this.chart.series.length>1?Lp.setStackedPoints.call(this,l,"group"):l.stacking.resetStacks())}function Gp(l,e){let t=e||this.options.stacking;if(!t||!this.reserveSpace()||({group:"xAxis"}[t]||"yAxis")!==l.coll)return;let i=this,n=i.processedXData,r=i.processedYData,s=[],o=r.length,a=i.options,h=a.threshold||0,c=a.startFromThreshold?h:0,p=a.stack,d=e?`${i.type},${t}`:i.stackKey||"",f="-"+d,u=i.negStacks,m=l.stacking,g=m.stacks,x=m.oldStacks,y,b,v,S,C,D,T,M,O;for(m.stacksTouched+=1,T=0;T<o;T++){M=n[T],O=r[T],y=i.getStackIndicator(y,M,i.index),D=y.key||"",b=u&&O<(c?0:h),C=b?f:d,g[C]||(g[C]={}),g[C][M]||(x[C]?.[M]?(g[C][M]=x[C][M],g[C][M].total=null):g[C][M]=new Wn(l,l.options.stackLabels,!!b,M,p)),v=g[C][M],O!==null?(v.points[D]=v.points[i.index]=[Ds(v.cumulative,c)],rl(v.cumulative)||(v.base=D),v.touched=m.stacksTouched,y.index>0&&i.singleStacks===!1&&(v.points[D][0]=v.points[i.index+","+M+",0"][0])):(delete v.points[D],delete v.points[i.index]);let I=v.total||0;t==="percent"?(S=b?d:f,u&&g[S]?.[M]?(S=g[S][M],I=S.total=Math.max(S.total||0,I)+Math.abs(O)||0):I=zi(I+(Math.abs(O)||0))):t==="group"?(Rp(O)&&(O=O[0]),O!==null&&I++):I=zi(I+(O||0)),t==="group"?v.cumulative=(I||1)-1:v.cumulative=zi(Ds(v.cumulative,c)+(O||0)),v.total=I,O!==null&&(v.points[D].push(v.cumulative),s[T]=v.cumulative,v.hasValidPoints=!0)}t==="percent"&&(m.usePercentage=!0),t!=="group"&&(this.stackedYData=s),m.oldStacks={}}var Ts=class{constructor(e){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=e}buildStacks(){let e=this,t=e.axis,i=t.series,n=t.coll==="xAxis",r=t.options.reversedStacks,s=i.length,o,a;for(this.resetStacks(),e.usePercentage=!1,a=s;a--;)o=i[r?a:s-a-1],n&&o.setGroupedPoints(t),o.setStackedPoints(t);if(!n)for(a=0;a<s;a++)i[a].modifyStacks();Bp(t,"afterBuildStacks")}cleanStacks(){this.oldStacks&&(this.stacks=this.oldStacks,$e(this.stacks,e=>{$e(e,t=>{t.cumulative=t.total})}))}resetStacks(){$e(this.stacks,e=>{$e(e,(t,i)=>{Wp(t.touched)&&t.touched<this.stacksTouched?(t.destroy(),delete e[i]):(t.total=null,t.cumulative=null)})})}renderStackTotals(){let e=this,t=e.axis,i=t.chart,n=i.renderer,r=e.stacks,s=t.options.stackLabels?.animation,o=Ip(i,s||!1),a=e.stackTotalGroup=e.stackTotalGroup||n.g("stack-labels").attr({zIndex:6,opacity:0}).add();a.translate(i.plotLeft,i.plotTop),$e(r,h=>{$e(h,c=>{c.render(a)})}),a.animate({opacity:1},o)}},ws;(function(l){function e(t,i,n){let r=i.prototype,s=n.prototype;r.getStacks||(nl(t,"init",Hp),nl(t,"destroy",Fp),r.getStacks=Np,s.getStackIndicator=zp,s.modifyStacks=Yp,s.percentStacker=Xp,s.setGroupedPoints=Vp,s.setStackedPoints=Gp)}l.compose=e})(ws||(ws={}));var sl=ws;var{defined:jp,merge:ol,isObject:Up}=E,Nn=class extends wt{drawGraph(){let e=this.options,t=(this.gappedPath||this.getGraphPath).call(this),i=this.chart.styledMode;[this,...this.zones].forEach((n,r)=>{let s,o=n.graph,a=o?"animate":"attr",h=n.dashStyle||e.dashStyle;o?(o.endX=this.preventGraphAnimation?null:t.xMap,o.animate({d:t})):t.length&&(n.graph=o=this.chart.renderer.path(t).addClass("highcharts-graph"+(r?` highcharts-zone-graph-${r-1} `:" ")+(r&&n.className||"")).attr({zIndex:1}).add(this.group)),o&&!i&&(s={stroke:!r&&e.lineColor||n.color||this.color||"#cccccc","stroke-width":e.lineWidth||0,fill:this.fillGraph&&this.color||"none"},h?s.dashstyle=h:e.linecap!=="square"&&(s["stroke-linecap"]=s["stroke-linejoin"]="round"),o[a](s).shadow(r<2&&e.shadow&&ol({filterUnits:"userSpaceOnUse"},Up(e.shadow)?e.shadow:{}))),o&&(o.startX=t.xMap,o.isArea=t.isArea)})}getGraphPath(e,t,i){let n=this,r=n.options,s=[],o=[],a,h=r.step;e=e||n.points;let c=e.reversed;return c&&e.reverse(),h={right:1,center:2}[h]||h&&3,h&&c&&(h=4-h),e=this.getValidPoints(e,!1,!(r.connectNulls&&!t&&!i)),e.forEach(function(p,d){let f=p.plotX,u=p.plotY,m=e[d-1],g=p.isNull||typeof u!="number",x;(p.leftCliff||m&&m.rightCliff)&&!i&&(a=!0),g&&!jp(t)&&d>0?a=!r.connectNulls:g&&!t?a=!0:(d===0||a?x=[["M",p.plotX,p.plotY]]:n.getPointSpline?x=[n.getPointSpline(e,p,d)]:h?(h===1?x=[["L",m.plotX,u]]:h===2?x=[["L",(m.plotX+f)/2,m.plotY],["L",(m.plotX+f)/2,u]]:x=[["L",f,m.plotY]],x.push(["L",f,u])):x=[["L",f,u]],o.push(p.x),h&&(o.push(p.x),h===2&&o.push(p.x)),s.push.apply(s,x),a=!1)}),s.xMap=o,n.graphPath=s,s}};Nn.defaultOptions=ol(wt.defaultOptions,{legendSymbol:"lineMarker"});nt.registerSeriesType("line",Nn);var $p={threshold:0,legendSymbol:"areaMarker"},al=$p;var{seriesTypes:{line:Ps}}=nt,{extend:qp,merge:Kp,objectEach:Zp,pick:Fn}=E,Yi=class extends Ps{drawGraph(){this.areaPath=[],super.drawGraph.apply(this);let{areaPath:e,options:t}=this;[this,...this.zones].forEach((i,n)=>{let r={},s=i.fillColor||t.fillColor,o=i.area,a=o?"animate":"attr";o?(o.endX=this.preventGraphAnimation?null:e.xMap,o.animate({d:e})):(r.zIndex=0,o=i.area=this.chart.renderer.path(e).addClass("highcharts-area"+(n?` highcharts-zone-area-${n-1} `:" ")+(n&&i.className||"")).add(this.group),o.isArea=!0),this.chart.styledMode||(r.fill=s||i.color||this.color,r["fill-opacity"]=s?1:t.fillOpacity??.75,o.css({pointerEvents:this.stickyTracking?"none":"auto"})),o[a](r),o.startX=e.xMap,o.shiftUnit=t.step?2:1})}getGraphPath(e){let t=Ps.prototype.getGraphPath,i=this.options,n=i.stacking,r=this.yAxis,s=[],o=[],a=this.index,h=r.stacking.stacks[this.stackKey],c=i.threshold,p=Math.round(r.getThreshold(i.threshold)),d=Fn(i.connectNulls,n==="percent"),f=function(C,D,T){let M=e[C],O=n&&h[M.x].points[a],I=M[T+"Null"]||0,R=M[T+"Cliff"]||0,L,F,z=!0;R||I?(L=(I?O[0]:O[1])+R,F=O[0]+R,z=!!I):!n&&e[D]&&e[D].isNull&&(L=F=c),typeof L<"u"&&(o.push({plotX:u,plotY:L===null?p:r.getThreshold(L),isNull:z,isCliff:!0}),s.push({plotX:u,plotY:F===null?p:r.getThreshold(F),doCurve:!1}))},u,m,g;e=e||this.points,n&&(e=this.getStackPoints(e));for(let C=0,D=e.length;C<D;++C)n||(e[C].leftCliff=e[C].rightCliff=e[C].leftNull=e[C].rightNull=void 0),m=e[C].isNull,u=Fn(e[C].rectPlotX,e[C].plotX),g=n?Fn(e[C].yBottom,p):p,(!m||d)&&(d||f(C,C-1,"left"),m&&!n&&d||(o.push(e[C]),s.push({x:C,plotX:u,plotY:g})),d||f(C,C+1,"right"));let x=t.call(this,o,!0,!0);s.reversed=!0;let y=t.call(this,s,!0,!0),b=y[0];b&&b[0]==="M"&&(y[0]=["L",b[1],b[2]]);let v=x.concat(y);v.length&&v.push(["Z"]);let S=t.call(this,o,!1,d);return this.chart.series.length>1&&n&&o.some(C=>C.isCliff)&&(v.hasStackedCliffs=S.hasStackedCliffs=!0),v.xMap=x.xMap,this.areaPath=v,S}getStackPoints(e){let t=this,i=[],n=[],r=this.xAxis,s=this.yAxis,o=s.stacking.stacks[this.stackKey],a={},h=s.series,c=h.length,p=s.options.reversedStacks?1:-1,d=h.indexOf(t);if(e=e||this.points,this.options.stacking){for(let u=0;u<e.length;u++)e[u].leftNull=e[u].rightNull=void 0,a[e[u].x]=e[u];Zp(o,function(u,m){u.total!==null&&n.push(m)}),n.sort(function(u,m){return u-m});let f=h.map(u=>u.visible);n.forEach(function(u,m){let g=0,x,y;if(a[u]&&!a[u].isNull)i.push(a[u]),[-1,1].forEach(function(b){let v=b===1?"rightNull":"leftNull",S=b===1?"rightCliff":"leftCliff",C=o[n[m+b]],D=0;if(C){let T=d;for(;T>=0&&T<c;){let M=h[T].index;x=C.points[M],x||(M===t.index?a[u][v]=!0:f[T]&&(y=o[u].points[M],y&&(D-=y[1]-y[0]))),T+=p}}a[u][S]=D});else{let b=d;for(;b>=0&&b<c;){let v=h[b].index;if(x=o[u].points[v],x){g=x[1];break}b+=p}g=Fn(g,0),g=s.translate(g,0,1,0,1),i.push({isNull:!0,plotX:r.translate(u,0,0,0,1),x:u,plotY:g,yBottom:g})}})}return i}};Yi.defaultOptions=Kp(Ps.defaultOptions,al);qp(Yi.prototype,{singleStacks:!1});nt.registerSeriesType("area",Yi);var{line:ll}=nt.seriesTypes,{merge:Qp,pick:Hn}=E,Xi=class extends ll{getPointSpline(e,t,i){let s=t.plotX||0,o=t.plotY||0,a=e[i-1],h=e[i+1],c,p,d,f;function u(g){return g&&!g.isNull&&g.doCurve!==!1&&!t.isCliff}if(u(a)&&u(h)){let g=a.plotX||0,x=a.plotY||0,y=h.plotX||0,b=h.plotY||0,v=0;c=(1.5*s+g)/2.5,p=(1.5*o+x)/2.5,d=(1.5*s+y)/2.5,f=(1.5*o+b)/2.5,d!==c&&(v=(f-p)*(d-s)/(d-c)+o-f),p+=v,f+=v,p>x&&p>o?(p=Math.max(x,o),f=2*o-p):p<x&&p<o&&(p=Math.min(x,o),f=2*o-p),f>b&&f>o?(f=Math.max(b,o),p=2*o-f):f<b&&f<o&&(f=Math.min(b,o),p=2*o-f),t.rightContX=d,t.rightContY=f,t.controlPoints={low:[c,p],high:[d,f]}}let m=["C",Hn(a.rightContX,a.plotX,0),Hn(a.rightContY,a.plotY,0),Hn(c,s,0),Hn(p,o,0),s,o];return a.rightContX=a.rightContY=void 0,m}};Xi.defaultOptions=Qp(ll.defaultOptions);nt.registerSeriesType("spline",Xi);var Ms=Xi;var{area:Jp,area:{prototype:ks}}=nt.seriesTypes,{extend:tu,merge:eu}=E,Vi=class extends Ms{};Vi.defaultOptions=eu(Ms.defaultOptions,Jp.defaultOptions);tu(Vi.prototype,{getGraphPath:ks.getGraphPath,getStackPoints:ks.getStackPoints,drawGraph:ks.drawGraph});nt.registerSeriesType("areaspline",Vi);var iu={borderRadius:3,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"},hl=iu;var{animObject:nu}=lt,{parse:ru}=Bt,{noop:su}=B,{clamp:zn,crisp:Yn,defined:ou,extend:fl,fireEvent:cl,isArray:dl,isNumber:Os,merge:As,pick:xi,objectEach:au}=E,yi=class extends wt{animate(e){let t=this,i=this.yAxis,n=i.pos,r=i.reversed,s=t.options,{clipOffset:o,inverted:a}=this.chart,h={},c=a?"translateX":"translateY",p,d;e&&o?(h.scaleY=.001,d=zn(i.toPixels(s.threshold),n,n+i.len),a?(d+=r?-Math.floor(o[0]):Math.ceil(o[2]),h.translateX=d-i.len):(d+=r?Math.ceil(o[0]):-Math.floor(o[2]),h.translateY=d),t.clipBox&&t.setClip(),t.group.attr(h)):(p=Number(t.group.attr(c)),t.group.animate({scaleY:1},fl(nu(t.options.animation),{step:function(f,u){t.group&&(h[c]=p+u.pos*(n-p),t.group.attr(h))}})))}init(e,t){super.init.apply(this,arguments);let i=this;e=i.chart,e.hasRendered&&e.series.forEach(function(n){n.type===i.type&&(n.isDirty=!0)})}getColumnMetrics(){let e=this,t=e.options,i=e.xAxis,n=e.yAxis,r=i.options.reversedStacks,s=i.reversed&&!r||!i.reversed&&r,o={},a,h=0;t.grouping===!1?h=1:e.chart.series.forEach(function(y){let b=y.yAxis,v=y.options,S;y.type===e.type&&y.reserveSpace()&&n.len===b.len&&n.pos===b.pos&&(v.stacking&&v.stacking!=="group"?(a=y.stackKey,typeof o[a]>"u"&&(o[a]=h++),S=o[a]):v.grouping!==!1&&(S=h++),y.columnIndex=S)});let c=Math.min(Math.abs(i.transA)*(!i.brokenAxis?.hasBreaks&&i.ordinal?.slope||t.pointRange||i.closestPointRange||i.tickInterval||1),i.len),p=c*t.groupPadding,d=c-2*p,f=d/(h||1),u=Math.min(t.maxPointWidth||i.len,xi(t.pointWidth,f*(1-2*t.pointPadding))),m=(f-u)/2,g=(e.columnIndex||0)+(s?1:0),x=m+(p+g*f-c/2)*(s?-1:1);return e.columnMetrics={width:u,offset:x,paddedWidth:f,columnCount:h},e.columnMetrics}crispCol(e,t,i,n){let r=this.borderWidth,s=this.chart.inverted,o=Yn(t+n,r,s);if(t=Yn(t,r,s),n=o-t,this.options.crisp){let a=Yn(e+i,r);e=Yn(e,r),i=a-e}return{x:e,y:t,width:i,height:n}}adjustForMissingColumns(e,t,i,n){if(!i.isNull&&n.columnCount>1){let r=this.xAxis.series.filter(h=>h.visible).map(h=>h.index),s=0,o=0;au(this.xAxis.stacking?.stacks,h=>{if(typeof i.x=="number"){let c=h[i.x.toString()];if(c){let p=c.points[this.index];if(dl(p)){let d=Object.keys(c.points).filter(f=>!f.match(",")&&c.points[f]&&c.points[f].length>1).map(parseFloat).filter(f=>r.indexOf(f)!==-1).sort((f,u)=>u-f);s=d.indexOf(this.index),o=d.length}}}}),s=this.xAxis.reversed?o-1-s:s;let a=(o-1)*n.paddedWidth+t;e=(i.plotX||0)+a/2-t-s*n.paddedWidth}return e}translate(){let e=this,t=e.chart,i=e.options,n=e.dense=e.closestPointRange*e.xAxis.transA<2,r=e.borderWidth=xi(i.borderWidth,n?0:1),s=e.xAxis,o=e.yAxis,a=i.threshold,h=xi(i.minPointLength,5),c=e.getColumnMetrics(),p=c.width,d=e.pointXOffset=c.offset,f=e.dataMin,u=e.dataMax,m=e.translatedThreshold=o.getThreshold(a),g=e.barW=Math.max(p,1+2*r);i.pointPadding&&(g=Math.ceil(g)),wt.prototype.translate.apply(e),e.points.forEach(function(x){let y=xi(x.yBottom,m),b=999+Math.abs(y),v=x.plotX||0,S=zn(x.plotY,-b,o.len+b),C,D=Math.min(S,y),T=Math.max(S,y)-D,M=p,O=v+d,I=g;h&&Math.abs(T)<h&&(T=h,C=!o.reversed&&!x.negative||o.reversed&&x.negative,Os(a)&&Os(u)&&x.y===a&&u<=a&&(o.min||0)<a&&(f!==u||(o.max||0)<=a)&&(C=!C,x.negative=!x.negative),D=Math.abs(D-m)>h?y-h:m-(C?h:0)),ou(x.options.pointWidth)&&(M=I=Math.ceil(x.options.pointWidth),O-=Math.round((M-p)/2)),i.centerInCategory&&!i.stacking&&(O=e.adjustForMissingColumns(O,M,x,c)),x.barX=O,x.pointWidth=M,x.tooltipPos=t.inverted?[zn(o.len+o.pos-t.plotLeft-S,o.pos-t.plotLeft,o.len+o.pos-t.plotLeft),s.len+s.pos-t.plotTop-O-I/2,T]:[s.left-t.plotLeft+O+I/2,zn(S+o.pos-t.plotTop,o.pos-t.plotTop,o.len+o.pos-t.plotTop),T],x.shapeType=e.pointClass.prototype.shapeType||"roundedRect",x.shapeArgs=e.crispCol(O,x.isNull?m:D,I,x.isNull?0:T)}),cl(this,"afterColumnTranslate")}drawGraph(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")}pointAttribs(e,t){let i=this.options,n=this.pointAttrToOptions||{},r=n.stroke||"borderColor",s=n["stroke-width"]||"borderWidth",o,a,h,c=e&&e.color||this.color,p=e&&e[r]||i[r]||c,d=e&&e.options.dashStyle||i.dashStyle,f=e&&e[s]||i[s]||this[s]||0,u=xi(e&&e.opacity,i.opacity,1);e&&this.zones.length&&(a=e.getZone(),c=e.options.color||a&&(a.color||e.nonZonedColor)||this.color,a&&(p=a.borderColor||p,d=a.dashStyle||d,f=a.borderWidth||f)),t&&e&&(o=As(i.states[t],e.options.states&&e.options.states[t]||{}),h=o.brightness,c=o.color||typeof h<"u"&&ru(c).brighten(o.brightness).get()||c,p=o[r]||p,f=o[s]||f,d=o.dashStyle||d,u=xi(o.opacity,u));let m={fill:c,stroke:p,"stroke-width":f,opacity:u};return d&&(m.dashstyle=d),m}drawPoints(e=this.points){let t=this,i=this.chart,n=t.options,r=i.renderer,s=n.animationLimit||250,o;e.forEach(function(a){let h=a.plotY,c=a.graphic,p=!!c,d=c&&i.pointCount<s?"animate":"attr";Os(h)&&a.y!==null?(o=a.shapeArgs,c&&a.hasNewShapeType()&&(c=c.destroy()),t.enabledDataSorting&&(a.startXPos=t.xAxis.reversed?-(o&&o.width||0):t.xAxis.width),c||(a.graphic=c=r[a.shapeType](o).add(a.group||t.group),c&&t.enabledDataSorting&&i.hasRendered&&i.pointCount<s&&(c.attr({x:a.startXPos}),p=!0,d="animate")),c&&p&&c[d](As(o)),i.styledMode||c[d](t.pointAttribs(a,a.selected&&"select")).shadow(a.allowShadow!==!1&&n.shadow),c&&(c.addClass(a.getClassName(),!0),c.attr({visibility:a.visible?"inherit":"hidden"}))):c&&(a.graphic=c.destroy())})}drawTracker(e=this.points){let t=this,i=t.chart,n=i.pointer,r=function(o){let a=n?.getPointFromEvent(o);n&&a&&t.options.enableMouseTracking&&(n.isDirectTouch=!0,a.onMouseOver(o))},s;e.forEach(function(o){s=dl(o.dataLabels)?o.dataLabels:o.dataLabel?[o.dataLabel]:[],o.graphic&&(o.graphic.element.point=o),s.forEach(function(a){(a.div||a.element).point=o})}),t._hasTracking||(t.trackerGroups.forEach(function(o){t[o]&&(t[o].addClass("highcharts-tracker").on("mouseover",r).on("mouseout",function(a){n?.onTrackerMouseOut(a)}).on("touchstart",r),!i.styledMode&&t.options.cursor&&t[o].css({cursor:t.options.cursor}))}),t._hasTracking=!0),cl(this,"afterDrawTracker")}remove(){let e=this,t=e.chart;t.hasRendered&&t.series.forEach(function(i){i.type===e.type&&(i.isDirty=!0)}),wt.prototype.remove.apply(e,arguments)}};yi.defaultOptions=As(wt.defaultOptions,hl);fl(yi.prototype,{directTouch:!0,getSymbol:su,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]});nt.registerSeriesType("column",yi);var bi=yi;var{getDeferredAnimation:lu}=lt,{format:hu}=Tt,{defined:qe,extend:pl,fireEvent:Es,isArray:Ae,isString:Is,merge:Gi,objectEach:cu,pick:ji,pInt:du,splat:ul}=E,Ls;(function(l){function e(){return c(this).some(d=>d?.enabled)}function t(d,f,u,m,g){let x=this,{chart:y,enabledDataSorting:b}=this,v=this.isCartesian&&y.inverted,S=d.plotX,C=d.plotY,D=u.rotation||0,T=qe(S)&&qe(C)&&y.isInsidePlot(S,Math.round(C),{inverted:v,paneCoordinates:!0,series:x}),M=L=>{b&&x.xAxis&&!O&&x.setDataLabelStartPos(d,f,g,T,L)},O=D===0?ji(u.overflow,b?"none":"justify")==="justify":!1,I=this.visible&&d.visible!==!1&&qe(S)&&(d.series.forceDL||b&&!O||T||ji(u.inside,!!this.options.stacking)&&m&&y.isInsidePlot(S,v?m.x+1:m.y+m.height-1,{inverted:v,paneCoordinates:!0,series:x})),R=d.pos();if(I&&R){let L=f.getBBox(),F=f.getBBox(void 0,0),z={right:1,center:.5}[u.align||0]||0,W={bottom:1,middle:.5}[u.verticalAlign||0]||0;if(m=pl({x:R[0],y:Math.round(R[1]),width:0,height:0},m||{}),u.alignTo==="plotEdges"&&x.isCartesian&&(m[v?"x":"y"]=0,m[v?"width":"height"]=this.yAxis?.len||0),pl(u,{width:L.width,height:L.height}),M(m),f.align(Gi(u,{width:F.width,height:F.height}),!1,m,!1),f.alignAttr.x+=z*(F.width-L.width),f.alignAttr.y+=W*(F.height-L.height),f[f.placed?"animate":"attr"]({x:f.alignAttr.x+(L.width-F.width)/2,y:f.alignAttr.y+(L.height-F.height)/2,rotationOriginX:(f.width||0)/2,rotationOriginY:(f.height||0)/2}),O&&m.height>=0)this.justifyDataLabel(f,u,f.alignAttr,L,m,g);else if(ji(u.crop,!0)){let{x:q,y:et}=f.alignAttr,rt=1;I=y.isInsidePlot(q,et,{paneCoordinates:!0,series:x})&&y.isInsidePlot(q+L.width-rt,et+L.height-rt,{paneCoordinates:!0,series:x})}u.shape&&!D&&f[g?"attr":"animate"]({anchorX:R[0],anchorY:R[1]})}g&&b&&(f.placed=!1),!I&&(!b||O)?(f.hide(),f.placed=!1):(f.show(),f.placed=!0)}function i(d,f){let u=f.filter;if(u){let m=u.operator,g=d[u.property],x=u.value;return m===">"&&g>x||m==="<"&&g<x||m===">="&&g>=x||m==="<="&&g<=x||m==="=="&&g==x||m==="==="&&g===x||m==="!="&&g!=x||m==="!=="&&g!==x}return!0}function n(d){let f=d.prototype;f.initDataLabels||(f.initDataLabels=s,f.initDataLabelsGroup=r,f.alignDataLabel=t,f.drawDataLabels=o,f.justifyDataLabel=a,f.setDataLabelStartPos=p,f.hasDataLabels=e)}l.compose=n;function r(){return this.plotGroup("dataLabelsGroup","data-labels",this.hasRendered?"inherit":"hidden",this.options.dataLabels.zIndex||6)}function s(d){let f=this,u=f.hasRendered||0,m=this.initDataLabelsGroup().attr({opacity:+u});return!u&&m&&(f.visible&&m.show(),f.options.animation?m.animate({opacity:1},d):m.attr({opacity:1})),m}function o(d){d=d||this.points;let f=this,u=f.chart,m=f.options,g=u.renderer,{backgroundColor:x,plotBackgroundColor:y}=u.options.chart,b=g.getContrast(Is(y)&&y||Is(x)&&x||"#000000"),v=c(f),S,C,{animation:D,defer:T}=v[0],M=T?lu(u,D,f):{defer:0,duration:0};Es(this,"drawDataLabels"),f.hasDataLabels?.()&&(C=this.initDataLabels(M),d.forEach(O=>{let I=O.dataLabels||[];S=ul(h(v,O.dlOptions||O.options?.dataLabels)),S.forEach((L,F)=>{let z=L.enabled&&(O.visible||O.dataLabelOnHidden)&&(!O.isNull||O.dataLabelOnNull)&&i(O,L),{backgroundColor:W,borderColor:q,distance:et,style:rt={}}=L,G,tt,U,J,it={},j=I[F],$=!j,st;z&&(tt=ji(L[O.formatPrefix+"Format"],L.format),G=O.getLabelConfig(),U=qe(tt)?hu(tt,G,u):(L[O.formatPrefix+"Formatter"]||L.formatter).call(G,L),J=L.rotation,u.styledMode||(rt.color=ji(L.color,rt.color,Is(f.color)?f.color:void 0,"#000000"),rt.color==="contrast"?(W!=="none"&&(st=W),O.contrastColor=g.getContrast(st!=="auto"&&st||O.color||f.color),rt.color=st||!qe(et)&&L.inside||du(et||0)<0||m.stacking?O.contrastColor:b):delete O.contrastColor,m.cursor&&(rt.cursor=m.cursor)),it={r:L.borderRadius||0,rotation:J,padding:L.padding,zIndex:1},u.styledMode||(it.fill=W==="auto"?O.color:W,it.stroke=q==="auto"?O.color:q,it["stroke-width"]=L.borderWidth),cu(it,(At,Ht)=>{typeof At>"u"&&delete it[Ht]})),j&&(!z||!qe(U)||!!j.div!=!!L.useHTML||(!j.rotation||!L.rotation)&&j.rotation!==L.rotation)&&(j=void 0,$=!0),z&&qe(U)&&(j?it.text=U:(j=g.label(U,0,0,L.shape,void 0,void 0,L.useHTML,void 0,"data-label"),j.addClass(" highcharts-data-label-color-"+O.colorIndex+" "+(L.className||"")+(L.useHTML?" highcharts-tracker":""))),j&&(j.options=L,j.attr(it),u.styledMode?rt.width&&j.css({width:rt.width,textOverflow:rt.textOverflow}):j.css(rt).shadow(L.shadow),Es(j,"beforeAddingDataLabel",{labelOptions:L,point:O}),j.added||j.add(C),f.alignDataLabel(O,j,L,void 0,$),j.isActive=!0,I[F]&&I[F]!==j&&I[F].destroy(),I[F]=j))});let R=I.length;for(;R--;)!I[R]||!I[R].isActive?(I[R]?.destroy(),I.splice(R,1)):I[R].isActive=!1;O.dataLabel=I[0],O.dataLabels=I})),Es(this,"afterDrawDataLabels")}function a(d,f,u,m,g,x){let y=this.chart,b=f.align,v=f.verticalAlign,S=d.box?0:d.padding||0,C=y.inverted?this.yAxis:this.xAxis,D=C?C.left-y.plotLeft:0,T=y.inverted?this.xAxis:this.yAxis,M=T?T.top-y.plotTop:0,{x:O=0,y:I=0}=f,R,L;return R=(u.x||0)+S+D,R<0&&(b==="right"&&O>=0?(f.align="left",f.inside=!0):O-=R,L=!0),R=(u.x||0)+m.width-S+D,R>y.plotWidth&&(b==="left"&&O<=0?(f.align="right",f.inside=!0):O+=y.plotWidth-R,L=!0),R=u.y+S+M,R<0&&(v==="bottom"&&I>=0?(f.verticalAlign="top",f.inside=!0):I-=R,L=!0),R=(u.y||0)+m.height-S+M,R>y.plotHeight&&(v==="top"&&I<=0?(f.verticalAlign="bottom",f.inside=!0):I+=y.plotHeight-R,L=!0),L&&(f.x=O,f.y=I,d.placed=!x,d.align(f,void 0,g)),L}function h(d,f){let u=[],m;if(Ae(d)&&!Ae(f))u=d.map(function(g){return Gi(g,f)});else if(Ae(f)&&!Ae(d))u=f.map(function(g){return Gi(d,g)});else if(!Ae(d)&&!Ae(f))u=Gi(d,f);else if(Ae(d)&&Ae(f))for(m=Math.max(d.length,f.length);m--;)u[m]=Gi(d[m],f[m]);return u}function c(d){let f=d.chart.options.plotOptions;return ul(h(h(f?.series?.dataLabels,f?.[d.type]?.dataLabels),d.options.dataLabels))}function p(d,f,u,m,g){let x=this.chart,y=x.inverted,b=this.xAxis,v=b.reversed,S=((y?f.height:f.width)||0)/2,C=d.pointWidth,D=C?C/2:0;f.startXPos=y?g.x:v?-S-D:b.width-S+D,f.startYPos=y?v?this.yAxis.height-S+D:-S-D:g.y,m?f.visibility==="hidden"&&(f.show(),f.attr({opacity:0}).animate({opacity:1})):f.attr({opacity:1}).animate({opacity:0},void 0,f.hide),x.hasRendered&&(u&&f.attr({x:f.startXPos,y:f.startYPos}),f.placed=!0)}})(Ls||(Ls={}));var Ke=Ls;var{composed:fu}=B,{series:ml}=nt,{merge:pu,pick:Ui,pushUnique:uu}=E,_s;(function(l){function e(i,n,r,s,o){let a=this.chart.inverted,h=i.series,c=(h.xAxis?h.xAxis.len:this.chart.plotSizeX)||0,p=(h.yAxis?h.yAxis.len:this.chart.plotSizeY)||0,d=i.dlBox||i.shapeArgs,f=Ui(i.below,i.plotY>Ui(this.translatedThreshold,p)),u=Ui(r.inside,!!this.options.stacking);if(d){if(s=pu(d),!(r.overflow==="allow"&&r.crop===!1)){s.y<0&&(s.height+=s.y,s.y=0);let m=s.y+s.height-p;m>0&&m<s.height-1&&(s.height-=m)}a&&(s={x:p-s.y-s.height,y:c-s.x-s.width,width:s.height,height:s.width}),u||(a?(s.x+=f?0:s.width,s.width=0):(s.y+=f?s.height:0,s.height=0))}r.align=Ui(r.align,!a||u?"center":f?"right":"left"),r.verticalAlign=Ui(r.verticalAlign,a||u?"middle":f?"top":"bottom"),ml.prototype.alignDataLabel.call(this,i,n,r,s,o),r.inside&&i.contrastColor&&n.css({color:i.contrastColor})}function t(i){Ke.compose(ml),uu(fu,"ColumnDataLabel")&&(i.prototype.alignDataLabel=e)}l.compose=t})(_s||(_s={}));var gl=_s;var{extend:mu,merge:gu}=E,$i=class extends bi{};$i.defaultOptions=gu(bi.defaultOptions,{});mu($i.prototype,{inverted:!0});nt.registerSeriesType("bar",$i);var xu={lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">\u25CF</span> <span style="font-size: 0.8em"> {series.name}</span><br/>',pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}},xl=xu;var{column:yu,line:yl}=nt.seriesTypes,{addEvent:bu,extend:vu,merge:Su}=E,vi=class extends yl{applyJitter(){let e=this,t=this.options.jitter,i=this.points.length;function n(r){let s=Math.sin(r)*1e4;return s-Math.floor(s)}t&&this.points.forEach(function(r,s){["x","y"].forEach(function(o,a){if(t[o]&&!r.isNull){let h=`plot${o.toUpperCase()}`,c=e[`${o}Axis`],p=t[o]*c.transA;if(c&&!c.logarithmic){let d=Math.max(0,(r[h]||0)-p),f=Math.min(c.len,(r[h]||0)+p);r[h]=d+(f-d)*n(s+a*i),o==="x"&&(r.clientX=r.plotX)}}})})}drawGraph(){this.options.lineWidth?super.drawGraph():this.graph&&(this.graph=this.graph.destroy())}};vi.defaultOptions=Su(yl.defaultOptions,xl);vu(vi.prototype,{drawTracker:yu.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"]});bu(vi,"afterTranslate",function(){this.applyJitter()});nt.registerSeriesType("scatter",vi);var{deg2rad:bl}=B,{fireEvent:Cu,isNumber:Bs,pick:Xn,relativeLength:Du}=E,Rs;(function(l){function e(){let i=this.options,n=this.chart,r=2*(i.slicedOffset||0),s=n.plotWidth-2*r,o=n.plotHeight-2*r,a=i.center,h=Math.min(s,o),c=i.thickness,p,d=i.size,f=i.innerSize||0,u,m;typeof d=="string"&&(d=parseFloat(d)),typeof f=="string"&&(f=parseFloat(f));let g=[Xn(a[0],"50%"),Xn(a[1],"50%"),Xn(d&&d<0?void 0:i.size,"100%"),Xn(f&&f<0?void 0:i.innerSize||0,"0%")];for(n.angular&&!(this instanceof wt)&&(g[3]=0),u=0;u<4;++u)m=g[u],p=u<2||u===2&&/%$/.test(m),g[u]=Du(m,[s,o,h,g[2]][u])+(p?r:0);return g[3]>g[2]&&(g[3]=g[2]),Bs(c)&&c*2<g[2]&&c>0&&(g[3]=g[2]-c*2),Cu(this,"afterGetCenter",{positions:g}),g}l.getCenter=e;function t(i,n){let r=Bs(i)?i:0,s=Bs(n)&&n>r&&n-r<360?n:r+360,o=-90;return{start:bl*(r+o),end:bl*(s+o)}}l.getStartAndEndRadians=t})(Rs||(Rs={}));var Ws=Rs;var{setAnimation:Tu}=lt,{addEvent:vl,defined:wu,extend:Pu,isNumber:Mu,pick:ku,relativeLength:Ou}=E,Vn=class extends jt{getConnectorPath(e){let t=e.dataLabelPosition,i=e.options||{},n=i.connectorShape,r=this.connectorShapes[n]||n;return t&&r.call(this,zt(vt({},t.computed),{alignment:t.alignment}),t.connectorPosition,i)||[]}getTranslate(){return this.sliced&&this.slicedTranslation||{translateX:0,translateY:0}}haloPath(e){let t=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(t.x,t.y,t.r+e,t.r+e,{innerR:t.r-1,start:t.start,end:t.end,borderRadius:t.borderRadius})}constructor(e,t,i){super(e,t,i),this.half=0,this.name??(this.name="Slice");let n=r=>{this.slice(r.type==="select")};vl(this,"select",n),vl(this,"unselect",n)}isValid(){return Mu(this.y)&&this.y>=0}setVisible(e,t=!0){e!==this.visible&&this.update({visible:e??!this.visible},t,void 0,!1)}slice(e,t,i){let n=this.series,r=n.chart;Tu(i,r),t=ku(t,!0),this.sliced=this.options.sliced=e=wu(e)?e:!this.sliced,n.options.data[n.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate())}};Pu(Vn.prototype,{connectorShapes:{fixedOffset:function(l,e,t){let i=e.breakAt,n=e.touchingSliceAt,r=t.softConnector?["C",l.x+(l.alignment==="left"?-5:5),l.y,2*i.x-n.x,2*i.y-n.y,i.x,i.y]:["L",i.x,i.y];return[["M",l.x,l.y],r,["L",n.x,n.y]]},straight:function(l,e){let t=e.touchingSliceAt;return[["M",l.x,l.y],["L",t.x,t.y]]},crookedLine:function(l,e,t){let{breakAt:i,touchingSliceAt:n}=e,{series:r}=this,[s,o,a]=r.center,h=a/2,{plotLeft:c,plotWidth:p}=r.chart,d=l.alignment==="left",{x:f,y:u}=l,m=i.x;if(t.crookDistance){let x=Ou(t.crookDistance,1);m=d?s+h+(p+c-s-h)*(1-x):c+(s-h)*x}else m=s+(o-u)*Math.tan((this.angle||0)-Math.PI/2);let g=[["M",f,u]];return(d?m<=f&&m>=i.x:m>=f&&m<=i.x)&&g.push(["L",m,u]),g.push(["L",i.x,i.y],["L",n.x,n.y]),g}}});var Sl=Vn;var Au={borderRadius:3,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{connectorPadding:5,connectorShape:"crookedLine",crookDistance:void 0,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}}},Cl=Au;var{getStartAndEndRadians:Eu}=Ws,{noop:Dl}=B,{clamp:Iu,extend:Lu,fireEvent:Tl,merge:Ns,pick:_u}=E,qi=class extends wt{animate(e){let t=this,i=t.points,n=t.startAngleRad;e||i.forEach(function(r){let s=r.graphic,o=r.shapeArgs;s&&o&&(s.attr({r:_u(r.startR,t.center&&t.center[3]/2),start:n,end:n}),s.animate({r:o.r,start:o.start,end:o.end},t.options.animation))})}drawEmpty(){let e=this.startAngleRad,t=this.endAngleRad,i=this.options,n,r;this.total===0&&this.center?(n=this.center[0],r=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(n,r,this.center[1]/2,0,e,t).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:un.arc(n,r,this.center[2]/2,0,{start:e,end:t,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":i.borderWidth,fill:i.fillColor||"none",stroke:i.color||"#cccccc"})):this.graph&&(this.graph=this.graph.destroy())}drawPoints(){let e=this.chart.renderer;this.points.forEach(function(t){t.graphic&&t.hasNewShapeType()&&(t.graphic=t.graphic.destroy()),t.graphic||(t.graphic=e[t.shapeType](t.shapeArgs).add(t.series.group),t.delayedRendering=!0)})}generatePoints(){super.generatePoints(),this.updateTotals()}getX(e,t,i,n){let r=this.center,s=this.radii?this.radii[i.index]||0:r[2]/2,o=n.dataLabelPosition,a=o?.distance||0,h=Math.asin(Iu((e-r[1])/(s+a),-1,1));return r[0]+(t?-1:1)*(Math.cos(h)*(s+a))+(a>0?(t?-1:1)*(n.padding||0):0)}hasData(){return!!this.processedXData.length}redrawPoints(){let e=this,t=e.chart,i,n,r,s;this.drawEmpty(),e.group&&!t.styledMode&&e.group.shadow(e.options.shadow),e.points.forEach(function(o){let a={};n=o.graphic,!o.isNull&&n?(s=o.shapeArgs,i=o.getTranslate(),t.styledMode||(r=e.pointAttribs(o,o.selected&&"select")),o.delayedRendering?(n.setRadialReference(e.center).attr(s).attr(i),t.styledMode||n.attr(r).attr({"stroke-linejoin":"round"}),o.delayedRendering=!1):(n.setRadialReference(e.center),t.styledMode||Ns(!0,a,r),Ns(!0,a,s,i),n.animate(a)),n.attr({visibility:o.visible?"inherit":"hidden"}),n.addClass(o.getClassName(),!0)):n&&(o.graphic=n.destroy())})}sortByAngle(e,t){e.sort(function(i,n){return typeof i.angle<"u"&&(n.angle-i.angle)*t})}translate(e){Tl(this,"translate"),this.generatePoints();let t=this,i=1e3,n=t.options,r=n.slicedOffset,s=Eu(n.startAngle,n.endAngle),o=t.startAngleRad=s.start,a=t.endAngleRad=s.end,h=a-o,c=t.points,p=n.ignoreHiddenPoint,d=c.length,f,u,m,g,x,y,b,v=0;for(e||(t.center=e=t.getCenter()),y=0;y<d;y++){b=c[y],f=o+v*h,b.isValid()&&(!p||b.visible)&&(v+=b.percentage/100),u=o+v*h;let S={x:e[0],y:e[1],r:e[2]/2,innerR:e[3]/2,start:Math.round(f*i)/i,end:Math.round(u*i)/i};b.shapeType="arc",b.shapeArgs=S,m=(u+f)/2,m>1.5*Math.PI?m-=2*Math.PI:m<-Math.PI/2&&(m+=2*Math.PI),b.slicedTranslation={translateX:Math.round(Math.cos(m)*r),translateY:Math.round(Math.sin(m)*r)},g=Math.cos(m)*e[2]/2,x=Math.sin(m)*e[2]/2,b.tooltipPos=[e[0]+g*.7,e[1]+x*.7],b.half=m<-Math.PI/2||m>Math.PI/2?1:0,b.angle=m}Tl(t,"afterTranslate")}updateTotals(){let e=this.points,t=e.length,i=this.options.ignoreHiddenPoint,n,r,s=0;for(n=0;n<t;n++)r=e[n],r.isValid()&&(!i||r.visible)&&(s+=r.y);for(this.total=s,n=0;n<t;n++)r=e[n],r.percentage=s>0&&(r.visible||!i)?r.y/s*100:0,r.total=s}};qi.defaultOptions=Ns(wt.defaultOptions,Cl);Lu(qi.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawTracker:bi.prototype.drawTracker,getCenter:Ws.getCenter,getSymbol:Dl,invertible:!1,isCartesian:!1,noSharedTooltip:!0,pointAttribs:bi.prototype.pointAttribs,pointClass:Sl,requireSorting:!1,searchPoint:Dl,trackerGroups:["group","dataLabelsGroup"]});nt.registerSeriesType("pie",qi);var{composed:Bu,noop:Ru}=B,{distribute:Wu}=Ce,{series:wl}=nt,{arrayMax:Nu,clamp:Pl,defined:Ml,pick:Fu,pushUnique:Hu,relativeLength:kl}=E,Fs;(function(l){let e={radialDistributionY:function(o,a){return(a.dataLabelPosition?.top||0)+o.distributeBox.pos},radialDistributionX:function(o,a,h,c,p){let d=p.dataLabelPosition;return o.getX(h<(d?.top||0)+2||h>(d?.bottom||0)-2?c:h,a.half,a,p)},justify:function(o,a,h,c){return c[0]+(o.half?-1:1)*(h+(a.dataLabelPosition?.distance||0))},alignToPlotEdges:function(o,a,h,c){let p=o.getBBox().width;return a?p+c:h-p-c},alignToConnectors:function(o,a,h,c){let p=0,d;return o.forEach(function(f){d=f.dataLabel.getBBox().width,d>p&&(p=d)}),a?p+c:h-p-c}};function t(o){if(Ke.compose(wl),Hu(Bu,"PieDataLabel")){let a=o.prototype;a.dataLabelPositioners=e,a.alignDataLabel=Ru,a.drawDataLabels=n,a.getDataLabelPosition=i,a.placeDataLabels=r,a.verifyDataLabelOverflow=s}}l.compose=t;function i(o,a){let{center:h,options:c}=this,p=h[2]/2,d=o.angle||0,f=Math.cos(d),u=Math.sin(d),m=h[0]+f*p,g=h[1]+u*p,x=Math.min((c.slicedOffset||0)+(c.borderWidth||0),a/5);return{natural:{x:m+f*a,y:g+u*a},computed:{},alignment:a<0?"center":o.half?"right":"left",connectorPosition:{breakAt:{x:m+f*x,y:g+u*x},touchingSliceAt:{x:m,y:g}},distance:a}}function n(){let o=this,a=o.points,h=o.chart,c=h.plotWidth,p=h.plotHeight,d=h.plotLeft,f=Math.round(h.chartWidth/3),u=o.center,m=u[2]/2,g=u[1],x=[[],[]],y=[0,0,0,0],b=o.dataLabelPositioners,v,S,C,D=0;!o.visible||!o.hasDataLabels?.()||(a.forEach(T=>{(T.dataLabels||[]).forEach(M=>{M.shortened&&(M.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),M.shortened=!1)})}),wl.prototype.drawDataLabels.apply(o),a.forEach(T=>{(T.dataLabels||[]).forEach((M,O)=>{let I=u[2]/2,R=M.options,L=kl(R?.distance||0,I);O===0&&x[T.half].push(T),Ml(R?.style?.width)||M.getBBox().width>f&&(M.css({width:Math.round(f*.7)+"px"}),M.shortened=!0),M.dataLabelPosition=this.getDataLabelPosition(T,L),D=Math.max(D,L)})}),x.forEach((T,M)=>{let O=T.length,I=[],R,L,F=0,z;O&&(o.sortByAngle(T,M-.5),D>0&&(R=Math.max(0,g-m-D),L=Math.min(g+m+D,h.plotHeight),T.forEach(W=>{(W.dataLabels||[]).forEach(q=>{let et=q.dataLabelPosition;et&&et.distance>0&&(et.top=Math.max(0,g-m-et.distance),et.bottom=Math.min(g+m+et.distance,h.plotHeight),F=q.getBBox().height||21,q.lineHeight=h.renderer.fontMetrics(q.text||q).h+2*q.padding,W.distributeBox={target:(q.dataLabelPosition?.natural.y||0)-et.top+q.lineHeight/2,size:F,rank:W.y},I.push(W.distributeBox))})}),z=L+F-R,Wu(I,z,z/5)),T.forEach(W=>{(W.dataLabels||[]).forEach(q=>{let et=q.options||{},rt=W.distributeBox,G=q.dataLabelPosition,tt=G?.natural.y||0,U=et.connectorPadding||0,J=q.lineHeight||21,it=q.getBBox(),j=(J-it.height)/2,$=0,st=tt,At="inherit";if(G){if(I&&Ml(rt)&&G.distance>0&&(typeof rt.pos>"u"?At="hidden":(C=rt.size,st=b.radialDistributionY(W,q))),et.justify)$=b.justify(W,q,m,u);else switch(et.alignTo){case"connectors":$=b.alignToConnectors(T,M,c,d);break;case"plotEdges":$=b.alignToPlotEdges(q,M,c,d);break;default:$=b.radialDistributionX(o,W,st-j,tt,q)}if(G.attribs={visibility:At,align:G.alignment},G.posAttribs={x:$+(et.x||0)+({left:U,right:-U}[G.alignment]||0),y:st+(et.y||0)-J/2},G.computed.x=$,G.computed.y=st-j,Fu(et.crop,!0)){S=q.getBBox().width;let Ht;$-S<U&&M===1?(Ht=Math.round(S-$+U),y[3]=Math.max(Ht,y[3])):$+S>c-U&&M===0&&(Ht=Math.round($+S-c+U),y[1]=Math.max(Ht,y[1])),st-C/2<0?y[0]=Math.max(Math.round(-st+C/2),y[0]):st+C/2>p&&(y[2]=Math.max(Math.round(st+C/2-p),y[2])),G.sideOverflow=Ht}}})}))}),(Nu(y)===0||this.verifyDataLabelOverflow(y))&&(this.placeDataLabels(),this.points.forEach(T=>{(T.dataLabels||[]).forEach(M=>{let{connectorColor:O,connectorWidth:I=1}=M.options||{},R=M.dataLabelPosition;if(I){let L;v=M.connector,R&&R.distance>0?(L=!v,v||(M.connector=v=h.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+T.colorIndex+(T.className?" "+T.className:"")).add(o.dataLabelsGroup)),h.styledMode||v.attr({"stroke-width":I,stroke:O||T.color||"#666666"}),v[L?"attr":"animate"]({d:T.getConnectorPath(M)}),v.attr({visibility:R.attribs?.visibility})):v&&(M.connector=v.destroy())}})})))}function r(){this.points.forEach(o=>{(o.dataLabels||[]).forEach(a=>{let h=a.dataLabelPosition;h?(h.sideOverflow&&(a.css({width:Math.max(a.getBBox().width-h.sideOverflow,0)+"px",textOverflow:(a.options?.style||{}).textOverflow||"ellipsis"}),a.shortened=!0),a.attr(h.attribs),a[a.moved?"animate":"attr"](h.posAttribs),a.moved=!0):a&&a.attr({y:-9999})}),delete o.distributeBox},this)}function s(o){let a=this.center,h=this.options,c=h.center,p=h.minSize||80,d=p,f=h.size!==null;return f||(c[0]!==null?d=Math.max(a[2]-Math.max(o[1],o[3]),p):(d=Math.max(a[2]-o[1]-o[3],p),a[0]+=(o[3]-o[1])/2),c[1]!==null?d=Pl(d,p,a[2]-Math.max(o[0],o[2])):(d=Pl(d,p,a[2]-o[0]-o[2]),a[1]+=(o[0]-o[2])/2),d<a[2]?(a[2]=d,a[3]=Math.min(h.thickness?Math.max(0,d-h.thickness*2):Math.max(0,kl(h.innerSize||0,d)),d),this.translate(a),this.drawDataLabels&&this.drawDataLabels()):f=!0),f}})(Fs||(Fs={}));var Ol=Fs;var Hs;(function(l){function e(r){let s=r.reduce((o,a)=>(o.x+=a.x,o.y+=a.y,o),{x:0,y:0});return{x:s.x/r.length,y:s.y/r.length}}l.getCenterOfPoints=e;function t(r,s){return Math.sqrt(Math.pow(s.x-r.x,2)+Math.pow(s.y-r.y,2))}l.getDistanceBetweenPoints=t;function i(r,s){return Math.atan2(s.x-r.x,s.y-r.y)}l.getAngleBetweenPoints=i;function n({x:r,y:s},o){let a=o.length,h,c,p=!1;for(h=0,c=a-1;h<a;c=h++){let[d,f]=o[h],[u,m]=o[c];f>s!=m>s&&r<(u-d)*(s-f)/(m-f)+d&&(p=!p)}return p}l.pointInPolygon=n})(Hs||(Hs={}));var Al=Hs;var{pointInPolygon:zu}=Al,{addEvent:Yu,fireEvent:Il,objectEach:El,pick:Xu}=E;function Vu(l){let e=this,t=l.length,i=(d,f)=>!(f.x>=d.x+d.width||f.x+f.width<=d.x||f.y>=d.y+d.height||f.y+f.height<=d.y),n=(d,f)=>{for(let u of d)if(zu({x:u[0],y:u[1]},f))return!0;return!1};function r(d){if(d&&(!d.alignAttr||d.placed)){let f=d.box?0:d.padding||0,u=d.alignAttr||{x:d.attr("x"),y:d.attr("y")},m=d.getBBox();return d.width=m.width,d.height=m.height,{x:u.x+(d.parentGroup?.translateX||0)+f,y:u.y+(d.parentGroup?.translateY||0)+f,width:(d.width||0)-2*f,height:(d.height||0)-2*f,polygon:m?.polygon}}}let s,o,a,h,c,p=!1;for(let d=0;d<t;d++)s=l[d],s&&(s.oldOpacity=s.opacity,s.newOpacity=1,s.absoluteBox=r(s));l.sort((d,f)=>(f.labelrank||0)-(d.labelrank||0));for(let d=0;d<t;++d){o=l[d],h=o&&o.absoluteBox;let f=h?.polygon;for(let u=d+1;u<t;++u){a=l[u],c=a&&a.absoluteBox;let m=!1;if(h&&c&&o!==a&&o.newOpacity!==0&&a.newOpacity!==0&&o.visibility!=="hidden"&&a.visibility!=="hidden"){let g=c.polygon;if(f&&g&&f!==g?n(f,g)&&(m=!0):i(h,c)&&(m=!0),m){let x=o.labelrank<a.labelrank?o:a,y=x.text;x.newOpacity=0,y?.element.querySelector("textPath")&&y.hide()}}}}for(let d of l)Ll(d,e)&&(p=!0);p&&Il(e,"afterHideAllOverlappingLabels")}function Gu(l){let e=l.prototype;e.hideOverlappingLabels||(e.hideOverlappingLabels=Vu,Yu(l,"render",ju))}function Ll(l,e){let t,i,n=!1;return l&&(i=l.newOpacity,l.oldOpacity!==i&&(l.hasClass("highcharts-data-label")?(l[i?"removeClass":"addClass"]("highcharts-data-label-hidden"),t=function(){e.styledMode||l.css({pointerEvents:i?"auto":"none"})},n=!0,l[l.isOld?"animate":"attr"]({opacity:i},void 0,t),Il(e,"afterHideOverlappingLabel")):l.attr({opacity:i})),l.isOld=!0),n}function ju(){let l=this,e=[];for(let t of l.labelCollectors||[])e=e.concat(t());for(let t of l.yAxis||[])t.stacking&&t.options.stackLabels&&!t.options.stackLabels.allowOverlap&&El(t.stacking.stacks,i=>{El(i,n=>{n.label&&e.push(n.label)})});for(let t of l.series||[])if(t.visible&&t.hasDataLabels?.()){let i=n=>{for(let r of n)r.visible&&(r.dataLabels||[]).forEach(s=>{let o=s.options||{};s.labelrank=Xu(o.labelrank,r.labelrank,r.shapeArgs?.height),o.allowOverlap??Number(o.distance)>0?(s.oldOpacity=s.opacity,s.newOpacity=1,Ll(s,l)):e.push(s)})};i(t.nodes||[]),i(t.points)}this.hideOverlappingLabels(e)}var Uu={compose:Gu},zs=Uu;var{defaultOptions:$u}=Ct,{noop:Bl}=B,{addEvent:_l,extend:qu,isObject:Rl,merge:Ku,relativeLength:Ys}=E,Zu={radius:0,scope:"stack",where:void 0},Wl=Bl,Nl=Bl;function Qu(l,e,t){let i=l[e],n=l[e+1];n[0]==="Z"&&(n=l[0]);let r,s,o;if((i[0]==="M"||i[0]==="L")&&n[0]==="A"?(r=i,s=n,o=!0):i[0]==="A"&&(n[0]==="M"||n[0]==="L")&&(r=n,s=i),r&&s&&s.params){let a=s[1],h=s[5],c=s.params,{start:p,end:d,cx:f,cy:u}=c,m=h?a-t:a+t,g=m?Math.asin(t/m):0,x=h?g:-g,y=Math.cos(g)*m;o?(c.start=p+x,r[1]=f+y*Math.cos(p),r[2]=u+y*Math.sin(p),l.splice(e+1,0,["A",t,t,0,0,1,f+a*Math.cos(c.start),u+a*Math.sin(c.start)])):(c.end=d-x,s[6]=f+a*Math.cos(c.end),s[7]=u+a*Math.sin(c.end),l.splice(e+1,0,["A",t,t,0,0,1,f+y*Math.cos(d),u+y*Math.sin(d)])),s[4]=Math.abs(c.end-c.start)<Math.PI?0:1}}function Ju(l,e,t,i,n={}){let r=Wl(l,e,t,i,n),{innerR:s=0,r:o=t,start:a=0,end:h=0}=n;if(n.open||!n.borderRadius)return r;let c=h-a,p=Math.sin(c/2),d=Math.max(Math.min(Ys(n.borderRadius||0,o-s),(o-s)/2,o*p/(1+p)),0),f=Math.min(d,2*(c/Math.PI)*s),u=r.length-1;for(;u--;)Qu(r,u,u>1?f:d);return r}function tm(){if(this.options.borderRadius&&!(this.chart.is3d&&this.chart.is3d())){let{options:l,yAxis:e}=this,t=l.stacking==="percent",i=$u.plotOptions?.[this.type]?.borderRadius,n=Xs(l.borderRadius,Rl(i)?i:{}),r=e.options.reversed;for(let s of this.points){let{shapeArgs:o}=s;if(s.shapeType==="roundedRect"&&o){let{width:a=0,height:h=0,y:c=0}=o,p=c,d=h;if(n.scope==="stack"&&s.stackTotal){let g=e.translate(t?100:s.stackTotal,!1,!0,!1,!0),x=e.translate(l.threshold||0,!1,!0,!1,!0),y=this.crispCol(0,Math.min(g,x),0,Math.abs(g-x));p=y.y,d=y.height}let f=(s.negative?-1:1)*(r?-1:1)===-1,u=n.where;!u&&this.is("waterfall")&&Math.abs((s.yBottom||0)-(this.translatedThreshold||0))>this.borderWidth&&(u="all"),u||(u="end");let m=Math.min(Ys(n.radius,a),a/2,u==="all"?h/2:1/0)||0;u==="end"&&(f&&(p-=m),d+=m),qu(o,{brBoxHeight:d,brBoxY:p,r:m})}}}}function em(l,e,t){let i=l.types.pie;if(!e.symbolCustomAttribs.includes("borderRadius")){let n=t.prototype.symbols;_l(l,"afterColumnTranslate",tm,{order:9}),_l(i,"afterTranslate",im),e.symbolCustomAttribs.push("borderRadius","brBoxHeight","brBoxY"),Wl=n.arc,Nl=n.roundedRect,n.arc=Ju,n.roundedRect=nm}}function Xs(l,e){return Rl(l)||(l={radius:l||0}),Ku(Zu,e,l)}function im(){let l=Xs(this.options.borderRadius);for(let e of this.points){let t=e.shapeArgs;t&&(t.borderRadius=Ys(l.radius,(t.r||0)-(t.innerR||0)))}}function nm(l,e,t,i,n={}){let r=Nl(l,e,t,i,n),{r:s=0,brBoxHeight:o=i,brBoxY:a=e}=n,h=e-a,c=a+o-(e+i),p=h-s>-.1?0:s,d=c-s>-.1?0:s,f=Math.max(p&&h,0),u=Math.max(d&&c,0),m=[l+p,e],g=[l+t-p,e],x=[l+t,e+p],y=[l+t,e+i-d],b=[l+t-d,e+i],v=[l+d,e+i],S=[l,e+i-d],C=[l,e+p],D=(T,M)=>Math.sqrt(Math.pow(T,2)-Math.pow(M,2));if(f){let T=D(p,p-f);m[0]-=T,g[0]+=T,x[1]=C[1]=e+p-f}if(i<p-f){let T=D(p,p-f-i);x[0]=y[0]=l+t-p+T,b[0]=Math.min(x[0],b[0]),v[0]=Math.max(y[0],v[0]),S[0]=C[0]=l+p-T,x[1]=C[1]=e+i}if(u){let T=D(d,d-u);b[0]+=T,v[0]-=T,y[1]=S[1]=e+i-d+u}if(i<d-u){let T=D(d,d-u-i);x[0]=y[0]=l+t-d+T,g[0]=Math.min(x[0],g[0]),m[0]=Math.max(y[0],m[0]),S[0]=C[0]=l+d-T,y[1]=S[1]=e}return r.length=0,r.push(["M",...m],["L",...g],["A",p,p,0,0,1,...x],["L",...y],["A",d,d,0,0,1,...b],["L",...v],["A",d,d,0,0,1,...S],["L",...C],["A",p,p,0,0,1,...m],["Z"]),r}var rm={compose:em,optionsToObject:Xs},Fl=rm;var{diffObjects:sm,extend:om,find:am,merge:lm,pick:Gn,uniqueKey:hm}=E,Vs;(function(l){function e(n){let r=n.prototype;return r.matchResponsiveRule||om(r,{matchResponsiveRule:t,setResponsive:i}),n}l.compose=e;function t(n,r){let s=n.condition;(s.callback||function(){return this.chartWidth<=Gn(s.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=Gn(s.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=Gn(s.minWidth,0)&&this.chartHeight>=Gn(s.minHeight,0)}).call(this)&&r.push(n._id)}function i(n,r){let s=this.options.responsive,o=this.currentResponsive,a=[],h;!r&&s&&s.rules&&s.rules.forEach(d=>{typeof d._id>"u"&&(d._id=hm()),this.matchResponsiveRule(d,a)},this);let c=lm(...a.map(d=>am((s||{}).rules||[],f=>f._id===d)).map(d=>d&&d.chartOptions));c.isResponsiveOptions=!0,a=a.toString()||void 0;let p=o&&o.ruleIds;a!==p&&(o&&(this.currentResponsive=void 0,this.updatingResponsive=!0,this.update(o.undoOptions,n,!0),this.updatingResponsive=!1),a?(h=sm(c,this.options,!0,this.collectionsWithUpdate),h.isResponsiveOptions=!0,this.currentResponsive={ruleIds:a,mergedOptions:c,undoOptions:h},this.updatingResponsive||this.update(c,n,!0)):this.currentResponsive=void 0)}})(Vs||(Vs={}));var Hl=Vs;var N=B;N.AST=Mt;N.Axis=_i;N.Chart=ys;N.Color=Bt;N.DataLabel=Ke;N.Fx=he;N.HTMLElement=Ir;N.Legend=as;N.LegendSymbol=An;N.OverlappingDataLabels=N.OverlappingDataLabels||zs;N.PlotLineOrBand=Gr;N.Point=jt;N.Pointer=ts;N.RendererRegistry=ne;N.Series=wt;N.SeriesRegistry=nt;N.StackItem=Wn;N.SVGElement=Rt;N.SVGRenderer=yn;N.Templating=Tt;N.Tick=ce;N.Time=Ne;N.Tooltip=$r;N.animate=lt.animate;N.animObject=lt.animObject;N.chart=ys.chart;N.color=Bt.parse;N.dateFormat=Tt.dateFormat;N.defaultOptions=Ct.defaultOptions;N.distribute=Ce.distribute;N.format=Tt.format;N.getDeferredAnimation=lt.getDeferredAnimation;N.getOptions=Ct.getOptions;N.numberFormat=Tt.numberFormat;N.seriesType=nt.seriesType;N.setAnimation=lt.setAnimation;N.setOptions=Ct.setOptions;N.stop=lt.stop;N.time=Ct.defaultTime;N.timers=he.timers;Fl.compose(N.Series,N.SVGElement,N.SVGRenderer);gl.compose(N.Series.types.column);Ke.compose(N.Series);ga.compose(N.Axis);Ir.compose(N.SVGRenderer);as.compose(N.Chart);ya.compose(N.Axis);zs.compose(N.Chart);Ol.compose(N.Series.types.pie);Gr.compose(N.Chart,N.Axis);ts.compose(N.Chart);Hl.compose(N.Chart);el.compose(N.Axis,N.Chart,N.Series);sl.compose(N.Axis,N.Chart,N.Series);$r.compose(N.Pointer);E.extend(N,E);var zl=N;var Lt=class l{httpClient=Zs(ro);widgets$=qs([{id:"SALES",title:"Sales",value:null,showValue:!0,tooltip:"Total Sales Today"},{id:"PAYMENT",title:"Payment",value:null,showValue:!0,tooltip:"Total Payment Today"},{id:"PURCHASE",title:"Purchase",value:null,showValue:!0,tooltip:"Total Purchase Today"},{id:"DEBT",title:"Receivable",value:null,showValue:!0},{id:"PRODUCT",title:"Product",showValue:!1},{id:"INVENTORY",title:"Inventory",showValue:!1}]);setWidgetData(e,t){return this.widgets$=this.widgets$.pipe(qt(i=>i.map(n=>(n.id==t&&(n.value=e),n)))),this.widgets$}getDashboardSales(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Be.GetDashboardSales,e,t)}getDashboardPayment(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Be.GetDashboardPayment,e,t)}getDashboardPurchase(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Be.GetDashboardPurchase,e,t)}getDashboardDebt(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Be.GetDashboardDebt,e,t)}getDashboardProduct(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Be.GetDashboardProduct,e,t)}getDashboardInventory(e){let t={headers:this.getHttpheaders()};return this.httpClient.post(Be.GetDashboardInventory,e,t)}getHttpheaders(){let e=localStorage.getItem("Token"),t=new no({"Content-Type":"application/json","Cache-Control":"no-cache"});return e?t=t.append("Authorization","Bearer "+e):window.location.href="/",t}getLineChartConfig(){return{credits:{enabled:!1},accessibility:{enabled:!1},chart:{type:"areaspline",ignoreHiddenSeries:!1,height:410,spacingTop:-20,spacingRight:15},title:{text:"<br/>"},legend:{enabled:!0,squareSymbol:!0},xAxis:{type:"datetime",labels:{style:{color:"gray"}},lineColor:"gray",tickColor:"gray"},yAxis:{min:0,title:{text:""},labels:{formatter:function(){let t=this.value;if(t==0)return"";var i=parseInt(t).toString();if(i.length<=4)return parseFloat(t).toString();if(i.length>=5&&i.length<=6)return t/1e3+" k";if(i.length>=7&&i.length<=9)return t/1e6+" MM";if(i.length>=10)return t/1e9+" BN"},style:{color:"gray"}}},plotOptions:{series:{pointInterval:864e5,dataLabels:{enabled:!1}},areaspline:{fillOpacity:.1,lineWidth:1.5,marker:{enabled:!0}}},tooltip:{shared:!0},series:[]}}getLinierGradient(e){let t=new zl.Color(e);return{linearGradient:[0,0,0,290],stops:[[0,t.setOpacity(.1).get("rgba")],[1,"#ffffff70"]]}}setSeriesPointStart(e,t){let i=new Date(e);return t.plotOptions.series.pointStart=Date.UTC(i.getFullYear(),i.getMonth(),i.getDate()),t}getTotalData(e,t,i=1){let n=0;if(e!="All"){let r=this.filterSeriesByName(e,t);n=r?.data?.slice(r?.data?.length-i,r?.data?.length).reduce((s,o)=>s+o,0)}else n=t.reduce((r,s)=>r+s?.data?.slice(s?.data?.length-i,s?.data?.length).reduce((o,a)=>o+a,0),0);return n}filterSeriesByName(e,t){return t?.find(n=>n.name==e)}static \u0275fac=function(t){return new(t||l)};static \u0275prov=Ks({token:l,factory:l.\u0275fac})};var Si=class{Cost;Profit;Sales;SalesWithTax;Tax;Count;TopOutlet};var Ze=Zi(th()),Yl=Zi(eh()),Xl=Zi(ih()),Vl=Zi(nh());(0,Yl.default)(Ze);(0,Xl.default)(Ze);(0,Vl.default)(Ze);var Ee=class l{config;containerId;htmlIsRendered=!1;constructor(){}ngAfterViewInit(){nn.IsNotEmpty(this.containerId)&&(this.initChart(),this.htmlIsRendered=!0)}ngOnChanges(e){e.config&&e.config.currentValue&&this.htmlIsRendered&&this.initChart()}initChart(){Ze.chart(this.containerId,this.config),Ze.setOptions({lang:{thousandsSep:","}})}static \u0275fac=function(t){return new(t||l)};static \u0275cmp=Pt({type:l,selectors:[["app-chart-container"]],inputs:{config:"config",containerId:"containerId"},features:[me],decls:1,vars:1,consts:[[3,"id"]],template:function(t,i){t&1&&yt(0,"div",0),t&2&&_("id",i.containerId)},encapsulation:2})};var js=l=>({"border-bottom":l}),Gs=()=>["/menu/Reports/Sales_Report/Standard/Summary"],cm=(l,e,t)=>({From:l,To:e,ListIDs:t}),dm=l=>({today:l}),Gl=(l,e)=>({From:l,To:e});function fm(l,e){if(l&1){let t=ie();ht(0),w(1,"div",15)(2,"a",16),A(3),P(),w(4,"ul",17)(5,"li")(6,"a",18),ae("click",function(){Kt(t);let n=H();return n.isTodayFilter=!n.isTodayFilter,Zt(n.onChangeFilterPeriod())}),A(7),P()()()(),ct()}if(l&2){let t=H();k(3),Q(" ",t.isTodayFilter?"Today":"Last 7 Days"," "),k(),_("ngClass",ut(3,dm,!t.isTodayFilter)),k(3),Q(" ",t.isTodayFilter?"Last 7 Days":"Today"," ")}}function pm(l,e){l&1&&(w(0,"span",19),A(1,"Today"),P())}function um(l,e){if(l&1&&(ht(0),w(1,"div",20)(2,"a",9),Y(3,"date"),Y(4,"date"),w(5,"div",10),A(6,"Tax"),P(),w(7,"div",21)(8,"small",22),A(9),P(),w(10,"h2",11),A(11),Y(12,"number"),P()()()(),w(13,"div",8)(14,"a",9),Y(15,"date"),Y(16,"date"),w(17,"div",10),A(18,"Sales + Tax"),P(),w(19,"div",21)(20,"small",22),A(21),P(),w(22,"h2",11),A(23),Y(24,"number"),P()()()(),ct()),l&2){let t=H();k(2),_("routerLink",St(27,Gs))("queryParams",sr(28,Gl,V(3,9,t.isTodayFilter?t.today:t.chartData==null?null:t.chartData.From,"yyyy-MM-dd"),V(4,12,t.isTodayFilter?t.today:t.dateTo,"yyyy-MM-dd"))),k(7),Q(" ",t.dashboardConfig==null?null:t.dashboardConfig.CurrencySymbol," "),k(2),Q(" ",V(12,15,t.salesData==null?null:t.salesData.Tax,"1.0-0")," "),k(2),_("ngClass",ut(31,js,t.role.product.Cost)),k(),_("routerLink",St(33,Gs))("queryParams",sr(34,Gl,V(15,18,t.isTodayFilter?t.today:t.chartData==null?null:t.chartData.From,"yyyy-MM-dd"),V(16,21,t.isTodayFilter?t.today:t.dateTo,"yyyy-MM-dd"))),k(7),Q(" ",t.dashboardConfig==null?null:t.dashboardConfig.CurrencySymbol," "),k(2),Q(" ",V(24,24,t.salesData==null?null:t.salesData.SalesWithTax,"1.0-0")," ")}}function mm(l,e){if(l&1&&(ht(0),w(1,"div",8)(2,"div")(3,"div",23),A(4,"Cost"),P(),w(5,"div",21)(6,"small",22),A(7),P(),w(8,"h2",11),A(9),Y(10,"number"),P()()()(),ct()),l&2){let t=H();k(),_("ngClass",ut(6,js,t.role.report.Profit)),k(6),Q(" ",t.dashboardConfig==null?null:t.dashboardConfig.CurrencySymbol," "),k(2),Q(" ",V(10,3,t.salesData==null?null:t.salesData.Cost,"1.0-0")," ")}}function gm(l,e){if(l&1&&(ht(0),w(1,"div",24)(2,"div")(3,"div",25),A(4),P(),w(5,"div",26)(6,"small",22),A(7),P(),w(8,"h2",11),A(9),Y(10,"number"),P()()()(),ct()),l&2){let t=H();k(4),Q(" ",t.includeTax?"Gross Profit":"Profit"," "),k(3),Q(" ",t.dashboardConfig==null?null:t.dashboardConfig.CurrencySymbol," "),k(2),Q(" ",V(10,3,t.salesData==null?null:t.salesData.Profit,"1.0-0")," ")}}var Un=class l{constructor(e,t){this.dashboardService=e;this.role=t;this.chartConfig=this.dashboardService.getLineChartConfig()}chartData;salesData;dashboardConfig;filterSalesWidget=new Qi;chartConfig;todaySalesData;weeklySalesData;isTodayFilter=!0;showPeriodFilter;includeTax;today=new Date;dateTo;filterByOutletIds=Ji([]);ngOnChanges(e){if(e.chartData&&e.chartData.currentValue){this.initSalesData();let t=e?.chartData?.currentValue?.Series;t=this.setChartLineColor(t),t=this.setSalesTaxLegend(t),this.chartConfig=zt(vt({},this.chartConfig),{series:t}),this.chartConfig=this.dashboardService.setSeriesPointStart(this.chartData.From,this.chartConfig),this.initPeriodFilter(t),this.getDateTo()}}initPeriodFilter(e){this.showPeriodFilter=e[0]?.data?.length>=7}initSalesData(){this.salesData=new Si,this.includeTax=this.isIncludeTax(),this.salesData.Sales=this.dashboardService.getTotalData("Sales",this.chartData.Series,1),this.salesData.SalesWithTax=this.dashboardService.getTotalData("Sales + Tax",this.chartData.Series,1),this.salesData.Cost=this.dashboardService.getTotalData("Cost",this.chartData.Series,1),this.salesData.Tax=this.salesData.SalesWithTax-this.salesData.Sales,this.salesData.Profit=(this.includeTax?this.salesData.SalesWithTax:this.salesData.Sales)-this.salesData.Cost,this.salesData.Count=this.dashboardService.getTotalData("Count",this.chartData.Series,1),this.todaySalesData=go(Si,this.salesData)}setChartLineColor(e=[]){return e?.map(t=>(t.name=="Sales"&&(t.color="rgb(44, 175, 254)",t.fillColor=this.dashboardService.getLinierGradient("rgb(44, 175, 254)")),t.name=="Cost"&&(t.color="#fb404b",t.fillColor=this.dashboardService.getLinierGradient("#fb404b")),t.name=="Sales + Tax"&&(t.color="#2ECC71",t.fillColor=this.dashboardService.getLinierGradient("#2ECC71")),t))}onChangeFilterPeriod(){this.isTodayFilter?this.salesData=this.todaySalesData:(this.generateWeeklySalesData(),this.salesData=this.weeklySalesData),this.filterSalesWidget.emit({period:this.isTodayFilter?"TODAY":"WEEKLY"})}getDateTo(){let e=new Date,t=new Date(this.chartData.From);e.setDate(t.getDate()+7),this.dateTo=e}generateWeeklySalesData(){if(nn.IsEmpty(this.weeklySalesData)){let e=this.dashboardService.getTotalData("Sales",this.chartData.Series,7),t=this.dashboardService.getTotalData("Sales + Tax",this.chartData.Series,7),i=this.dashboardService.getTotalData("Cost",this.chartData.Series,7),n=this.dashboardService.getTotalData("Count",this.chartData.Series,7),r=t-e,s=(this.includeTax?t:e)-i;this.weeklySalesData=this.weeklySalesData?this.weeklySalesData:new Si,this.weeklySalesData.Sales=e,this.weeklySalesData.SalesWithTax=t,this.weeklySalesData.Cost=i,this.weeklySalesData.Profit=s,this.weeklySalesData.Tax=r,this.weeklySalesData.Count=n}}isIncludeTax(){let e=this.chartData.Series;return this.dashboardService.filterSeriesByName("Sales + Tax",e).visible}setSalesTaxLegend(e){return e=e.map(t=>(t.name=="Sales + Tax"&&(t.showInLegend=this.salesData.Tax>0),t)),e}static \u0275fac=function(t){return new(t||l)(Xt(Lt),Xt(ei))};static \u0275cmp=Pt({type:l,selectors:[["app-sales-widget"]],inputs:{chartData:"chartData",dashboardConfig:"dashboardConfig",filterByOutletIds:[1,"filterByOutletIds"]},outputs:{filterSalesWidget:"onFilter"},features:[Je([Lt]),me],decls:26,vars:31,consts:[["HIDE_WEEKLY",""],[1,"d-flex","flex-row","flex-wrap","mt-8","justify-content-between"],[1,"chart-widget"],["containerId","salesChart",3,"config"],[1,"sales-card-widget"],[1,"border","rounded","rounded-bottom-0","px-8","py-4","w-100","h-auto"],[1,"border-bottom","d-flex","align-items-center","justify-content-end",2,"height","42px"],[4,"ngIf","ngIfElse"],[1,"text-end","card-row","d-flex","align-items-center","justify-content-end",3,"ngClass"],["target","_blank",1,"link-dark",3,"routerLink","queryParams"],[1,"fs-5"],[1,"fw-normal"],[4,"ngIf"],[1,"card-footer","border","rounded-bottom","border-top-0","text-end","p-3"],["routerLink","/menu/Setup/Configuration/Application"],[1,"btn-group"],["type","button","data-bs-toggle","dropdown","aria-expanded","false",1,"dropdown-toggle","link-dark","fs-2","headings-font-family"],[1,"dropdown-menu","p-0",2,"position","absolute","right","20px !important",3,"ngClass"],["role","button",1,"dropdown-item","fs-4",3,"click"],[1,"link-dark","fs-2","headings-font-family"],[1,"text-end","border-bottom","card-row","d-flex","align-items-center","justify-content-end"],[1,"d-flex","align-items-center","justify-content-end"],[1,"me-2"],[1,"fs-5","text-danger"],[1,"text-end","d-flex","align-items-center","justify-content-end","card-row"],[1,"fs-5","text-success"],[1,"d-flex","align-items-center"]],template:function(t,i){if(t&1&&(w(0,"div",1)(1,"div",2),yt(2,"app-chart-container",3),P(),w(3,"div",4)(4,"div",5)(5,"div",6),Z(6,fm,8,5,"ng-container",7)(7,pm,2,0,"ng-template",null,0,mt),P(),w(9,"div",8)(10,"a",9),Y(11,"date"),Y(12,"date"),w(13,"div",10),A(14,"Order"),P(),w(15,"h2",11),A(16),Y(17,"number"),P()()(),Z(18,um,25,37,"ng-container",12)(19,mm,11,8,"ng-container",12)(20,gm,11,6,"ng-container",12),P(),w(21,"div",13)(22,"a",14)(23,"small"),A(24),Y(25,"date"),P()()()()()),t&2){let n=at(8);k(2),_("config",i.chartConfig),k(4),_("ngIf",(i.role==null||i.role.dashboard==null?null:i.role.dashboard.View)&&i.showPeriodFilter)("ngIfElse",n),k(3),_("ngClass",ut(24,js,(i.salesData==null?null:i.salesData.Tax)||i.role.product.Cost)),k(),_("routerLink",St(26,Gs))("queryParams",en(27,cm,V(11,12,i.isTodayFilter?i.today:i.chartData==null?null:i.chartData.From,"yyyy-MM-dd"),V(12,15,i.isTodayFilter?i.today:i.dateTo,"yyyy-MM-dd"),i.filterByOutletIds())),k(6),dt(V(17,18,i.salesData==null?null:i.salesData.Count,"1.0-0")),k(2),_("ngIf",(i.salesData==null?null:i.salesData.Tax)>0),k(),_("ngIf",i.role.product.Cost),k(),_("ngIf",i.role.report.Profit&&i.role.product.Cost),k(4),tn("",V(25,21,i.dashboardConfig==null?null:i.dashboardConfig.SpanConfigTime,"dd MMM HH:mm")," ",i.dashboardConfig==null?null:i.dashboardConfig.SmallTimeZone,"")}},dependencies:[It,Wt,Et,Nt,ti,Ee,Gt,Vt,ii],styles:[".chart-widget[_ngcontent-%COMP%]{width:80%}.link-dark[_ngcontent-%COMP%]{color:#333!important}.dropdown-menu.show.today[_ngcontent-%COMP%]{inset:0 auto auto -34px!important}.sales-card-widget[_ngcontent-%COMP%]{width:19%}.sales-card-widget[_ngcontent-%COMP%] .card-row[_ngcontent-%COMP%]{height:64px}@media only screen and (max-width: 767px){.chart-widget[_ngcontent-%COMP%]{width:100%}.sales-card-widget[_ngcontent-%COMP%]{width:100%;margin-top:12px}}@media only screen and (min-width: 768px) and (max-width: 991px){.chart-widget[_ngcontent-%COMP%]{width:100%}.sales-card-widget[_ngcontent-%COMP%]{width:100%;margin-top:12px}}"]})};var $n=class{Purchase;PurchaseWithTax;Tax;Count};var xm=l=>({"border-bottom":l}),Us=()=>["/menu/Reports/Purchases_Report/Summary"],ym=(l,e,t)=>({From:l,To:e,ListIDs:t}),Ul=l=>({From:l});function bm(l,e){if(l&1&&(ht(0),w(1,"div",13)(2,"a",8),Y(3,"date"),w(4,"div",9),A(5,"Tax"),P(),w(6,"div",14)(7,"small",15),A(8),P(),w(9,"h2",6),A(10),Y(11,"number"),P()()()(),w(12,"div",16)(13,"a",8),Y(14,"date"),w(15,"div",9),A(16,"Purchase + Tax"),P(),w(17,"div",17)(18,"small",15),A(19),P(),w(20,"h2",6),A(21),Y(22,"number"),P()()()(),ct()),l&2){let t=H();k(2),_("routerLink",St(20,Us))("queryParams",ut(21,Ul,V(3,8,t.chartData==null?null:t.chartData.From,"yyyy-MM-dd"))),k(6),Q(" ",t.dashboardConfig==null?null:t.dashboardConfig.CurrencySymbol," "),k(2),Q(" ",V(11,11,t.purchaseData==null?null:t.purchaseData.Tax,"1.0-0")," "),k(3),_("routerLink",St(23,Us))("queryParams",ut(24,Ul,V(14,14,t.chartData==null?null:t.chartData.From,"yyyy-MM-dd"))),k(6),Q(" ",t.dashboardConfig==null?null:t.dashboardConfig.CurrencySymbol," "),k(2),Q(" ",V(22,17,t.purchaseData==null?null:t.purchaseData.PurchaseWithTax,"1.0-0")," ")}}var qn=class l{constructor(e){this.dashboardService=e;this.chartConfig=this.dashboardService.getLineChartConfig()}today=new Date;chartConfig;purchaseData;chartData;dashboardConfig;filterByOutletIds=Ji([]);ngOnChanges(e){if(e.chartData&&e.chartData.currentValue){let t=e?.chartData?.currentValue?.Series;this.initPurchaseData(),t=this.setChartLineColor(t),this.chartConfig=zt(vt({},this.chartConfig),{series:t}),this.chartConfig=this.dashboardService.setSeriesPointStart(this.chartData.From,this.chartConfig)}}initPurchaseData(){this.purchaseData=new $n,this.purchaseData.Count=this.dashboardService.getTotalData("Count",this.chartData.Series),this.purchaseData.Purchase=this.dashboardService.getTotalData("Purchase",this.chartData.Series),this.purchaseData.PurchaseWithTax=this.dashboardService.getTotalData("Purchase + Tax",this.chartData.Series),this.purchaseData.Tax=this.purchaseData.PurchaseWithTax-this.purchaseData.Purchase}setChartLineColor(e){return e.map(t=>(t.name=="Purchase"&&(t.color="rgb(44, 175, 254)",t.fillColor=this.dashboardService.getLinierGradient("rgb(44, 175, 254)"),t.visible=!0),t.name=="Purchase + Tax"&&(t.color="#2ECC71",t.fillColor=this.dashboardService.getLinierGradient("#2ECC71"),t.visible=!1,t.showInLegend=this.purchaseData.Tax>0),t.name=="Count"&&(t.visible=!1,t.showInLegend=!1),t))}static \u0275fac=function(t){return new(t||l)(Xt(Lt))};static \u0275cmp=Pt({type:l,selectors:[["app-purchase-widget"]],inputs:{chartData:"chartData",dashboardConfig:"dashboardConfig",filterByOutletIds:[1,"filterByOutletIds"]},features:[Je([Lt]),me],decls:23,vars:27,consts:[[1,"d-flex","flex-row","flex-wrap","mt-8","justify-content-between"],[1,"chart-widget"],["containerId","purchaseChart",3,"config"],[1,"sales-card-widget"],[1,"border","rounded","rounded-bottom-0","px-8","py-4","w-100","h-auto"],[1,"border-bottom","d-flex","align-items-center","justify-content-end",2,"height","42px"],[1,"fw-normal"],[1,"text-end","border-bottom","card-row","d-flex","align-items-center","justify-content-end",3,"ngClass"],["target","_blank",1,"link-dark",3,"routerLink","queryParams"],[1,"fs-5"],[4,"ngIf"],[1,"card-footer","border","rounded-bottom","border-top-0","text-center","p-3"],["routerLink","/menu/Setup/Configuration/Application"],[1,"text-end","border-bottom","card-row","d-flex","align-items-center","justify-content-end"],[1,"d-flex","align-items-center"],[1,"me-2"],[1,"text-end","card-row","d-flex","align-items-center","justify-content-end"],[1,"d-flex","align-items-center","justify-content-end"]],template:function(t,i){t&1&&(w(0,"div",0)(1,"div",1),yt(2,"app-chart-container",2),P(),w(3,"div",3)(4,"div",4)(5,"div",5)(6,"h2",6),A(7,"Today"),P()(),w(8,"div",7)(9,"a",8),Y(10,"date"),Y(11,"date"),w(12,"div",9),A(13,"Order"),P(),w(14,"h2",6),A(15),Y(16,"number"),P()()(),Z(17,bm,23,26,"ng-container",10),P(),w(18,"div",11)(19,"a",12)(20,"small"),A(21),Y(22,"date"),P()()()()()),t&2&&(k(2),_("config",i.chartConfig),k(6),_("ngClass",ut(20,xm,(i.purchaseData==null?null:i.purchaseData.Tax)>0)),k(),_("routerLink",St(22,Us))("queryParams",en(23,ym,V(10,8,i.today,"yyyy-MM-dd"),V(11,11,i.today,"yyyy-MM-dd"),i.filterByOutletIds())),k(6),dt(V(16,14,i.purchaseData==null?null:i.purchaseData.Count,"1.0-0")),k(2),_("ngIf",(i.purchaseData==null?null:i.purchaseData.Tax)>0),k(4),tn("",V(22,17,i.dashboardConfig==null?null:i.dashboardConfig.SpanConfigTime,"dd MMM HH:mm")," ",i.dashboardConfig==null?null:i.dashboardConfig.SmallTimeZone,""))},dependencies:[It,Wt,Et,Nt,ti,Ee,Gt,Vt,ii],styles:[".chart-widget[_ngcontent-%COMP%]{width:80%}.link-dark[_ngcontent-%COMP%]{color:#333!important}.dropdown-menu.show.today[_ngcontent-%COMP%]{inset:0 auto auto -34px!important}.sales-card-widget[_ngcontent-%COMP%]{width:19%}.sales-card-widget[_ngcontent-%COMP%] .card-row[_ngcontent-%COMP%]{height:64px}@media only screen and (max-width: 767px){.chart-widget[_ngcontent-%COMP%]{width:100%}.sales-card-widget[_ngcontent-%COMP%]{width:100%;margin-top:12px}}@media only screen and (min-width: 768px) and (max-width: 991px){.chart-widget[_ngcontent-%COMP%]{width:100%}.sales-card-widget[_ngcontent-%COMP%]{width:100%;margin-top:12px}}"]})};var vm=l=>({active:l});function Sm(l,e){if(l&1&&(ht(0),w(1,"div",3),A(2),P(),w(3,"div",4)(4,"small",5),A(5),P(),w(6,"h2",6),A(7),P()(),ct()),l&2){let t=H();k(2),dt(t.title),k(3),dt(t.currencySymbol),k(2),dt(t.value)}}function Cm(l,e){if(l&1&&(w(0,"div",3),A(1),P(),w(2,"h2",6),A(3,"-"),P()),l&2){let t=H();k(),dt(t.title)}}var Kn=class l{title;isActive;currencySymbol;value;showValue;constructor(){}ngOnInit(){}static \u0275fac=function(t){return new(t||l)};static \u0275cmp=Pt({type:l,selectors:[["app-card-widget"]],inputs:{title:"title",isActive:"isActive",currencySymbol:"currencySymbol",value:"value",showValue:"showValue"},decls:4,vars:5,consts:[["TITLE_ONLY",""],[1,"card-widget","pe-0",3,"ngClass"],[4,"ngIf","ngIfElse"],[1,"fs-4","headings-font-family"],[1,"d-flex","justify-content-start","align-items-center"],[1,"fw-normal","me-2"],[1,"fw-normal"]],template:function(t,i){if(t&1&&(w(0,"div",1),Z(1,Sm,8,3,"ng-container",2)(2,Cm,4,1,"ng-template",null,0,mt),P()),t&2){let n=at(3);_("ngClass",ut(3,vm,i.isActive)),k(),_("ngIf",i.showValue)("ngIfElse",n)}},dependencies:[It,Wt,Et],styles:[".card-widget[_ngcontent-%COMP%]{padding:20px;border-radius:6px;min-height:95px;border:.5px solid #e4e4e4;width:100%}.active[_ngcontent-%COMP%]{background-color:#f0f0f0}@media only screen and (max-width: 767px){.card-widget[_ngcontent-%COMP%]{width:200px}}@media only screen and (min-width: 768px) and (max-width: 991px){.card-widget[_ngcontent-%COMP%]{width:200px}}"]})};var $l=l=>({"table-border-bottom-0":l}),Dm=()=>["/menu/Debt/Debt/Accounts_Receiveable/Accounts_Receiveable_Detail"],ql=l=>({ID:l}),Tm=()=>["/menu/Debt/Debt/Accounts_Payable/Accounts_Payable_Detail"];function wm(l,e){if(l&1&&(w(0,"tr",30)(1,"td",25)(2,"a",31),A(3),P()(),w(4,"td",32),A(5),Y(6,"number"),P(),w(7,"td",33),A(8),Y(9,"number"),P()()),l&2){let t=e.$implicit,i=e.index,n=H(2);_("ngClass",ut(12,$l,(n.debtData==null||n.debtData.TopReceivable==null?null:n.debtData.TopReceivable.length)==i+1)),k(2),_("routerLink",St(14,Dm))("queryParams",ut(15,ql,t==null?null:t.ID)),k(),Q(" ",t==null?null:t.Name," "),k(2),Q(" ",V(6,6,t==null?null:t.Credit,"1.0-0")," "),k(3),Q(" ",V(9,9,t==null?null:t.Limit,"1.0-0")," ")}}function Pm(l,e){if(l&1&&(ht(0),Z(1,wm,10,17,"tr",29),ct()),l&2){let t=H();k(),_("ngForOf",t.debtData==null?null:t.debtData.TopReceivable)}}function Mm(l,e){l&1&&_t(0)}function km(l,e){if(l&1&&Z(0,Mm,1,0,"ng-container",34),l&2){H();let t=at(84);_("ngTemplateOutlet",t)}}function Om(l,e){if(l&1&&(w(0,"tr",30)(1,"td",25)(2,"a",31),A(3),P()(),w(4,"td",32),A(5),Y(6,"number"),P(),w(7,"td",33),A(8),Y(9,"number"),P()()),l&2){let t=e.$implicit,i=e.index,n=H(2);_("ngClass",ut(12,$l,(n.debtData==null||n.debtData.TopPayable==null?null:n.debtData.TopPayable.length)==i+1)),k(2),_("routerLink",St(14,Tm))("queryParams",ut(15,ql,t==null?null:t.ID)),k(),Q(" ",t==null?null:t.Name," "),k(2),Q(" ",V(6,6,t==null?null:t.Credit,"1.0-0")," "),k(3),Q(" ",V(9,9,t==null?null:t.Limit,"1.0-0")," ")}}function Am(l,e){if(l&1&&(ht(0),Z(1,Om,10,17,"tr",29),ct()),l&2){let t=H();k(),_("ngForOf",t.debtData==null?null:t.debtData.TopPayable)}}function Em(l,e){l&1&&_t(0)}function Im(l,e){if(l&1&&Z(0,Em,1,0,"ng-container",34),l&2){H();let t=at(84);_("ngTemplateOutlet",t)}}function Lm(l,e){l&1&&(w(0,"tr",35)(1,"td",36),yt(2,"empty-state-table"),P()())}var Zn=class l{debtData;dashboardConfig;constructor(){}ngOnInit(){}static \u0275fac=function(t){return new(t||l)};static \u0275cmp=Pt({type:l,selectors:[["app-debt-widget"]],inputs:{debtData:"debtData",dashboardConfig:"dashboardConfig"},decls:85,vars:26,consts:[["EMPTY_RECEIVABLE",""],["EMPTY_PAYABLE",""],["EMPTY_STATE",""],[1,"row","mt-12"],[1,"col-md-6","col-xs-12","col-sm-12"],[1,"card","mb-0"],[1,"card-body","py-10"],[1,"row","d-flex","align-items-center"],[1,"col-6","text-center","py-3","border-end"],[1,"d-flex","align-items-center","justify-content-center"],[1,"me-2","fs-5"],[1,"fw-normal",2,"font-size","28px"],["routerLink","/menu/Debt/Debt/Accounts_Receiveable","target","_blank",1,"link-dark"],[1,"fs-5"],[1,"col-6","text-center","py-3"],[1,"mt-6","d-md-none"],[1,"col-md-6","col-xs-12","col-sm-12","mt-xs-12"],[1,"col-6","text-center","py-2","border-end"],["routerLink","/menu/Debt/Debt/Accounts_Payable","target","_blank",1,"link-dark"],[1,"col-6","text-center","py-2"],[1,"fw-normal","ps-2",2,"padding-bottom","12px"],[1,"card"],[1,"card-body","p-0"],[1,"table-responsive"],[1,"table"],[1,"ps-8"],[1,"text-end",2,"width","120px"],[1,"text-end","pe-8",2,"width","150px"],[4,"ngIf","ngIfElse"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass"],["target","_blank",3,"routerLink","queryParams"],[1,"text-end"],[1,"text-end","pe-8"],[4,"ngTemplateOutlet"],[1,"table-border-bottom-0"],["colspan","3"]],template:function(t,i){if(t&1&&(w(0,"div",3)(1,"div",4)(2,"div",5)(3,"div",6)(4,"div",7)(5,"div",8)(6,"div",9)(7,"small",10),A(8),P(),w(9,"div",11)(10,"a",12),A(11),Y(12,"number"),P()()(),w(13,"div",13),A(14,"Receivable"),P()(),w(15,"div",14)(16,"div",11)(17,"a",12),A(18),Y(19,"number"),P()(),w(20,"div",13),A(21,"Number Of Transaction"),P()()()()()(),yt(22,"div",15),w(23,"div",16)(24,"div",5)(25,"div",6)(26,"div",7)(27,"div",17)(28,"div",9)(29,"small",10),A(30),P(),w(31,"div",11)(32,"a",18),A(33),Y(34,"number"),P()()(),w(35,"div",13),A(36,"Payable"),P()(),w(37,"div",19)(38,"div",11)(39,"a",18),A(40),Y(41,"number"),P()(),w(42,"div",13),A(43,"Number Of Transaction"),P()()()()()()(),w(44,"div",3)(45,"div",16)(46,"h4",20),A(47," Top 5 Debt Receivable "),P(),w(48,"div",21)(49,"div",22)(50,"div",23)(51,"table",24)(52,"thead")(53,"tr")(54,"th",25),A(55,"Customer Name"),P(),w(56,"th",26),A(57,"Debt"),P(),w(58,"th",27),A(59,"Limit"),P()()(),w(60,"tbody"),Z(61,Pm,2,1,"ng-container",28)(62,km,1,1,"ng-template",null,0,mt),P()()()()()(),w(64,"div",16)(65,"h4",20),A(66," Top 5 Debt Payable "),P(),w(67,"div",21)(68,"div",22)(69,"div",23)(70,"table",24)(71,"thead")(72,"tr")(73,"th",25),A(74,"Supplier Name"),P(),w(75,"th",26),A(76,"Debt"),P(),w(77,"th",27),A(78,"Limit"),P()()(),w(79,"tbody"),Z(80,Am,2,1,"ng-container",28)(81,Im,1,1,"ng-template",null,1,mt),P()()()()()()(),Z(83,Lm,3,0,"ng-template",null,2,mt)),t&2){let n=at(63),r=at(82);k(8),dt(i.dashboardConfig==null?null:i.dashboardConfig.CurrencySymbol),k(3),Q(" ",V(12,14,i.debtData==null?null:i.debtData.Receivable,"1.0-0")," "),k(7),Q(" ",V(19,17,i.debtData==null?null:i.debtData.ReceivableQuantity,"1.0-0")," "),k(12),dt(i.dashboardConfig==null?null:i.dashboardConfig.CurrencySymbol),k(3),Q(" ",V(34,20,i.debtData==null?null:i.debtData.Payable,"1.0-0")," "),k(7),Q(" ",V(41,23,i.debtData==null?null:i.debtData.PayableQuantity,"1.0-0")," "),k(20),oe("height",(i.debtData==null||i.debtData.TopReceivable==null?null:i.debtData.TopReceivable.length)==0?"15.5rem":null),k(),_("ngIf",(i.debtData==null||i.debtData.TopReceivable==null?null:i.debtData.TopReceivable.length)>0)("ngIfElse",n),k(18),oe("height",(i.debtData==null||i.debtData.TopPayable==null?null:i.debtData.TopPayable.length)==0?"15.5rem":null),k(),_("ngIf",(i.debtData==null||i.debtData.TopPayable==null?null:i.debtData.TopPayable.length)>0)("ngIfElse",r)}},dependencies:[It,Wt,xe,Et,ye,Nt,Gt,Vt,ni],styles:["table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{border-top:0px!important;border-left:0px!important;border-right:0px!important}tbody[_ngcontent-%COMP%] tr.table-border-bottom-0[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:0px!important}"]})};var Kl=l=>({"table-border-bottom-0":l}),_m=l=>({ProductID:l});function Bm(l,e){if(l&1&&(w(0,"tr",15)(1,"td",10),A(2),P(),w(3,"td",16)(4,"a",17),A(5),Y(6,"number"),P()(),w(7,"td",18),A(8),Y(9,"number"),P()()),l&2){let t=e.$implicit,i=e.index,n=H(2);_("ngClass",ut(11,Kl,(n.productData==null||n.productData.TopProduct==null?null:n.productData.TopProduct.length)==i+1)),k(2),dt(t==null?null:t.Name),k(2),_("queryParams",ut(13,_m,t.ID)),k(),Q(" ",V(6,5,t==null?null:t.Quantity,"1.0-0")," "),k(3),dt(V(9,8,t==null?null:t.Total,"1.0-0"))}}function Rm(l,e){if(l&1&&(ht(0),Z(1,Bm,10,15,"tr",14),ct()),l&2){let t=H();k(),_("ngForOf",t.productData==null?null:t.productData.TopProduct)}}function Wm(l,e){l&1&&_t(0)}function Nm(l,e){if(l&1&&Z(0,Wm,1,0,"ng-container",19),l&2){H();let t=at(40);_("ngTemplateOutlet",t)}}function Fm(l,e){if(l&1&&(w(0,"tr",15)(1,"td",10),A(2),P(),w(3,"td",16),A(4),Y(5,"number"),P(),w(6,"td",18),A(7),Y(8,"number"),P()()),l&2){let t=e.$implicit,i=e.index,n=H(2);_("ngClass",ut(10,Kl,(n.productData==null||n.productData.TopBrand==null?null:n.productData.TopBrand.length)==i+1)),k(2),dt(t==null?null:t.Name),k(2),dt(V(5,4,t==null?null:t.Quantity,"1.0-0")),k(3),dt(V(8,7,t==null?null:t.Total,"1.0-0"))}}function Hm(l,e){if(l&1&&(ht(0),Z(1,Fm,9,12,"tr",14),ct()),l&2){let t=H();k(),_("ngForOf",t.productData==null?null:t.productData.TopBrand)}}function zm(l,e){l&1&&_t(0)}function Ym(l,e){if(l&1&&Z(0,zm,1,0,"ng-container",19),l&2){H();let t=at(40);_("ngTemplateOutlet",t)}}function Xm(l,e){l&1&&(w(0,"tr",20)(1,"td",21),yt(2,"empty-state-table"),P()())}var Qn=class l{productData;dashboardConfig;constructor(){}ngOnInit(){}static \u0275fac=function(t){return new(t||l)};static \u0275cmp=Pt({type:l,selectors:[["app-product-widget"]],inputs:{productData:"productData",dashboardConfig:"dashboardConfig"},decls:41,vars:8,consts:[["EMPTY_TOPPRODUCT",""],["EMPTY_TOPBRAND",""],["EMPTY_STATE",""],[1,"row","mt-12"],[1,"col-md-6","col-xs-12","col-sm-12"],[1,"fw-normal","ps-2",2,"padding-bottom","12px"],[1,"card"],[1,"card-body","p-0"],[1,"table-responsive"],[1,"table"],[1,"ps-8"],[1,"text-end",2,"width","100px"],[1,"text-end","pe-8",2,"width","150px"],[4,"ngIf","ngIfElse"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass"],[1,"text-end"],["routerLink","/menu/Reports/Sales_Report/Standard/Products_Sold/Invoice_Items","target","_blank",3,"queryParams"],[1,"text-end","pe-8"],[4,"ngTemplateOutlet"],[1,"table-border-bottom-0"],["colspan","3"]],template:function(t,i){if(t&1&&(w(0,"div",3)(1,"div",4)(2,"h4",5),A(3,"Top 5 Product Sold"),P(),w(4,"div",6)(5,"div",7)(6,"div",8)(7,"table",9)(8,"thead")(9,"tr")(10,"th",10),A(11,"Product Name"),P(),w(12,"th",11),A(13,"Sold"),P(),w(14,"th",12),A(15,"Total"),P()()(),w(16,"tbody"),Z(17,Rm,2,1,"ng-container",13)(18,Nm,1,1,"ng-template",null,0,mt),P()()()()()(),w(20,"div",4)(21,"h4",5),A(22,"Top 5 Brand Sold"),P(),w(23,"div",6)(24,"div",7)(25,"div",8)(26,"table",9)(27,"thead")(28,"tr")(29,"th",10),A(30,"Brand Name"),P(),w(31,"th",11),A(32,"Sold"),P(),w(33,"th",12),A(34,"Total"),P()()(),w(35,"tbody"),Z(36,Hm,2,1,"ng-container",13)(37,Ym,1,1,"ng-template",null,1,mt),P()()()()()()(),Z(39,Xm,3,0,"ng-template",null,2,mt)),t&2){let n=at(19),r=at(38);k(16),oe("height",(i.productData==null||i.productData.TopProduct==null?null:i.productData.TopProduct.length)==0?"15.6rem":null),k(),_("ngIf",(i.productData==null||i.productData.TopProduct==null?null:i.productData.TopProduct.length)>0)("ngIfElse",n),k(18),oe("height",(i.productData==null||i.productData.TopBrand==null?null:i.productData.TopBrand.length)==0?"15.6rem":null),k(),_("ngIf",(i.productData==null||i.productData.TopBrand==null?null:i.productData.TopBrand.length)>0)("ngIfElse",r)}},dependencies:[It,Wt,xe,Et,ye,Nt,Gt,Vt,ni],styles:["table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{border-top:0px!important;border-left:0px!important;border-right:0px!important}tbody[_ngcontent-%COMP%] tr.table-border-bottom-0[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:0px!important}"]})};var Zl=()=>({StateID:2}),Ql=l=>({"table-border-bottom-0":l}),Vm=()=>({$implicit:4}),Gm=l=>({"text-danger":l}),jm=()=>({$implicit:5});function Um(l,e){if(l&1&&(w(0,"tr",31)(1,"td",24),A(2),Y(3,"date"),P(),w(4,"td"),A(5),P(),w(6,"td",32),A(7),Y(8,"number"),P(),w(9,"td",33),A(10),Y(11,"number"),P()()),l&2){let t=e.$implicit,i=e.index,n=H(2);_("ngClass",ut(14,Ql,(n.inventoryData==null||n.inventoryData.TransferOrder==null||n.inventoryData.TransferOrder.TopDispatched==null?null:n.inventoryData.TransferOrder.TopDispatched.length)==i+1)),k(2),dt(V(3,5,t==null?null:t.Date,"dd MMM yyyy")),k(3),dt(t==null?null:t.Number),k(2),dt(V(8,8,t==null?null:t.Quantity,"1.0-0")),k(3),dt(V(11,11,t==null?null:t.Price,"1.0-0"))}}function $m(l,e){if(l&1&&(ht(0),Z(1,Um,12,16,"tr",30),ct()),l&2){let t=H();k(),_("ngForOf",t.inventoryData==null||t.inventoryData.TransferOrder==null?null:t.inventoryData.TransferOrder.TopDispatched)}}function qm(l,e){l&1&&_t(0)}function Km(l,e){if(l&1&&Z(0,qm,1,0,"ng-container",34),l&2){H();let t=at(85);_("ngTemplateOutlet",t)("ngTemplateOutletContext",St(2,Vm))}}function Zm(l,e){if(l&1&&(w(0,"tr",31)(1,"td",24),A(2),P(),w(3,"td"),A(4),P(),w(5,"td",32),A(6),Y(7,"number"),P(),w(8,"td",32),A(9),Y(10,"number"),P(),w(11,"td",33)(12,"span",31),A(13),Y(14,"number"),P()()()),l&2){let t=e.$implicit,i=e.index,n=H(2);_("ngClass",ut(16,Ql,(n.inventoryData==null||n.inventoryData.Inventory==null||n.inventoryData.Inventory.TopROP==null?null:n.inventoryData.Inventory.TopROP.length)==i+1)),k(2),dt(t==null?null:t.Outlet),k(2),dt(t==null?null:t.Product),k(2),dt(V(7,7,t==null?null:t.Inventory,"1.0-0")),k(3),dt(V(10,10,t==null?null:t.ROP,"1.0-0")),k(3),_("ngClass",ut(18,Gm,(t==null?null:t.Different)<0)),k(),Q(" ",V(14,13,t==null?null:t.Different,"1.0-0")," ")}}function Qm(l,e){if(l&1&&(ht(0),Z(1,Zm,15,20,"tr",30),ct()),l&2){let t=H();k(),_("ngForOf",t.inventoryData==null||t.inventoryData.Inventory==null?null:t.inventoryData.Inventory.TopROP)}}function Jm(l,e){l&1&&_t(0)}function tg(l,e){if(l&1&&Z(0,Jm,1,0,"ng-container",34),l&2){H();let t=at(85);_("ngTemplateOutlet",t)("ngTemplateOutletContext",St(2,jm))}}function eg(l,e){if(l&1&&(w(0,"tr",35)(1,"td",36),yt(2,"empty-state-table"),P()()),l&2){let t=e.$implicit;k(),_("colSpan",t)}}var Jn=class l{inventoryData;dashboardConfig;constructor(){}ngOnInit(){}static \u0275fac=function(t){return new(t||l)};static \u0275cmp=Pt({type:l,selectors:[["app-inventory-widget"]],inputs:{inventoryData:"inventoryData",dashboardConfig:"dashboardConfig"},decls:86,vars:28,consts:[["EMPTY_TOPDISPATCHED",""],["EMPTY_TOPROP",""],["EMPTY_STATE",""],[1,"row","mt-12"],[1,"col-md-6","col-xs-12","col-sm-12"],[1,"card","mb-0"],[1,"card-body","py-10"],[1,"row","d-flex","align-items-center"],[1,"col-6","text-center","py-3","border-end"],[1,"fw-normal",2,"font-size","28px"],["routerLink","/menu/Logistics/Archive/Transfer_Order","target","_blank",1,"link-dark",3,"queryParams"],[1,"fs-5"],[1,"col-6","text-center","py-3"],[1,"mt-6","d-md-none"],[1,"col-md-6","col-xs-12","col-sm-12","mt-xs-12"],[1,"col-6","text-center","py-2","border-end"],["routerLink","/menu/Inventory/Quantity/Low_On_Stock","target","_blank",1,"link-dark"],[1,"col-6","text-center","py-2"],["routerLink","/menu/Inventory/Quantity/Inventory_Over_Max","target","_blank",1,"link-dark"],[1,"fw-normal","ps-2",2,"padding-bottom","12px"],[1,"card"],[1,"card-body","p-0"],[1,"table-responsive"],[1,"table"],[1,"ps-8"],[2,"width","200px"],[1,"text-end",2,"width","70px"],[1,"text-end","pe-8",2,"width","140px"],[4,"ngIf","ngIfElse"],[1,"text-end","pe-8",2,"width","70px"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass"],[1,"text-end"],[1,"text-end","pe-8"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"table-border-bottom-0"],[3,"colSpan"]],template:function(t,i){if(t&1&&(w(0,"div",3)(1,"div",4)(2,"div",5)(3,"div",6)(4,"div",7)(5,"div",8)(6,"div")(7,"div",9)(8,"a",10),A(9),Y(10,"number"),P()(),w(11,"div",11),A(12,"Dispatched Transfer Order"),P()()(),w(13,"div",12)(14,"div",9)(15,"a",10),A(16),Y(17,"number"),P()(),w(18,"div",11),A(19,"Total Quantity"),P()()()()()(),yt(20,"div",13),w(21,"div",14)(22,"div",5)(23,"div",6)(24,"div",7)(25,"div",15)(26,"div",9)(27,"a",16),A(28),Y(29,"number"),P()(),w(30,"div",11),A(31,"Inventory ROP"),P()(),w(32,"div",17)(33,"div",9)(34,"a",18),A(35),Y(36,"number"),P()(),w(37,"div",11),A(38,"Inventory Over"),P()()()()()()(),w(39,"div",3)(40,"div",4)(41,"h4",19),A(42,"Top 5 Dispatched Transfer Order"),P(),w(43,"div",20)(44,"div",21)(45,"div",22)(46,"table",23)(47,"thead")(48,"tr")(49,"th",24),A(50,"Date"),P(),w(51,"th",25),A(52,"Number"),P(),w(53,"th",26),A(54,"Qty"),P(),w(55,"th",27),A(56,"Price"),P()()(),w(57,"tbody"),Z(58,$m,2,1,"ng-container",28)(59,Km,1,3,"ng-template",null,0,mt),P()()()()()(),w(61,"div",4)(62,"h4",19),A(63,"Top 5 Inventory ROP"),P(),w(64,"div",20)(65,"div",21)(66,"div",22)(67,"table",23)(68,"thead")(69,"tr")(70,"th",24),A(71,"Outlet"),P(),w(72,"th"),A(73,"Product"),P(),w(74,"th",26),A(75,"INV"),P(),w(76,"th",26),A(77,"ROP"),P(),w(78,"th",29),A(79,"DIFF"),P()()(),w(80,"tbody"),Z(81,Qm,2,1,"ng-container",28)(82,tg,1,3,"ng-template",null,1,mt),P()()()()()(),Z(84,eg,3,1,"ng-template",null,2,mt),P()),t&2){let n=at(60),r=at(83);k(8),_("queryParams",St(26,Zl)),k(),Q(" ",V(10,14,i.inventoryData==null||i.inventoryData.TransferOrder==null?null:i.inventoryData.TransferOrder.Total,"1.0-0")," "),k(6),_("queryParams",St(27,Zl)),k(),Q(" ",V(17,17,i.inventoryData==null||i.inventoryData.TransferOrder==null?null:i.inventoryData.TransferOrder.TotalQuantity,"1.0-0")," "),k(12),Q(" ",V(29,20,i.inventoryData==null||i.inventoryData.Inventory==null?null:i.inventoryData.Inventory.ProductReorderCount,"1.0-0")," "),k(7),Q(" ",V(36,23,i.inventoryData==null||i.inventoryData.Inventory==null?null:i.inventoryData.Inventory.ProductOverStock,"1.0-0")," "),k(22),oe("height",(i.inventoryData==null||i.inventoryData.TransferOrder==null||i.inventoryData.TransferOrder.TopDispatched==null?null:i.inventoryData.TransferOrder.TopDispatched.length)==0?"15.5rem":null),k(),_("ngIf",(i.inventoryData==null||i.inventoryData.TransferOrder==null||i.inventoryData.TransferOrder.TopDispatched==null?null:i.inventoryData.TransferOrder.TopDispatched.length)>0)("ngIfElse",n),k(22),oe("height",(i.inventoryData==null||i.inventoryData.Inventory==null||i.inventoryData.Inventory.TopROP==null?null:i.inventoryData.Inventory.TopROP.length)==0?"15.5rem":null),k(),_("ngIf",(i.inventoryData==null||i.inventoryData.Inventory==null||i.inventoryData.Inventory.TopROP==null?null:i.inventoryData.Inventory.TopROP.length)>0)("ngIfElse",r)}},dependencies:[It,Wt,xe,Et,ye,Nt,ti,Gt,Vt,ni],styles:[".link-dark[_ngcontent-%COMP%]{color:#333!important}table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{border-top:0px!important;border-left:0px!important;border-right:0px!important}tbody[_ngcontent-%COMP%] tr.table-border-bottom-0[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:0px!important}"]})};var ig=l=>({today:l});function ng(l,e){if(l&1){let t=ie();ht(0),w(1,"div",11)(2,"a",12),A(3),P(),w(4,"ul",13)(5,"li")(6,"a",14),ae("click",function(){Kt(t);let n=H();return n.isTodayFilter=!n.isTodayFilter,Zt(n.onChangeFilterPeriod())}),A(7),P()()()(),ct()}if(l&2){let t=H();k(3),Q(" ",t.isTodayFilter?"Today":"Last 7 Days"," "),k(),_("ngClass",ut(3,ig,!t.isTodayFilter)),k(3),Q(" ",t.isTodayFilter?"Last 7 Days":"Today"," ")}}function rg(l,e){l&1&&(w(0,"span",15),A(1,"Today"),P())}function sg(l,e){if(l&1&&(w(0,"div",8)(1,"div")(2,"div",16),A(3),P(),w(4,"div",17)(5,"small",18),A(6),P(),w(7,"h2",19),A(8),Y(9,"number"),P()()()()),l&2){let t=e.$implicit,i=H();k(3),dt(t.name),k(3),Q(" ",i.dashboardConfig==null?null:i.dashboardConfig.CurrencySymbol," "),k(2),Q(" ",V(9,3,t==null?null:t.value,"1.0-0")," ")}}var tr=class l{constructor(e,t){this.dashboardService=e;this.role=t;this.chartConfig=this.dashboardService.getLineChartConfig()}chartData;dashboardConfig;filterPaymentWidget=new Qi;chartConfig;paymentData;todayPaymentData;weeklyPaymentData;isTodayFilter=!0;showPeriodFilter;ngOnChanges(e){if(e.chartData&&e.chartData.currentValue){let t=e?.chartData?.currentValue?.Series;this.initPeriodWidget(t),this.chartConfig=zt(vt({},this.chartConfig),{series:t,chart:zt(vt({},this.chartConfig.chart),{type:"spline"})}),this.chartConfig=this.dashboardService.setSeriesPointStart(this.chartData.From,this.chartConfig)}}initPeriodWidget(e){this.initWeeklyPaymentData(e),this.initDailyPaymentData(e),this.todayPaymentData.length===0?(this.isTodayFilter=!1,this.paymentData=this.weeklyPaymentData):(this.isTodayFilter=!0,this.paymentData=this.todayPaymentData),this.onChangeFilterPeriod(),this.initPeriodFilter(e)}initPeriodFilter(e){this.showPeriodFilter=e[0]?.data?.length>=7}onChangeFilterPeriod(){this.isTodayFilter?this.paymentData=this.todayPaymentData:this.paymentData=this.weeklyPaymentData,this.filterPaymentWidget.emit({period:this.isTodayFilter?"TODAY":"WEEKLY"})}initWeeklyPaymentData(e){this.weeklyPaymentData=e.map(t=>({name:t.name,value:t.data.reduce((i,n)=>i+n,0)})).sort((t,i)=>i.value-t.value).slice(0,3)}initDailyPaymentData(e){this.todayPaymentData=e.map(t=>({name:t.name,value:t?.data[t?.data?.length-1]})).sort((t,i)=>i.value-t.value).slice(0,3).filter(t=>t?.value>0)}static \u0275fac=function(t){return new(t||l)(Xt(Lt),Xt(ei))};static \u0275cmp=Pt({type:l,selectors:[["app-payment-widget"]],inputs:{chartData:"chartData",dashboardConfig:"dashboardConfig"},outputs:{filterPaymentWidget:"onFilter"},features:[me],decls:14,vars:3,consts:[["HIDE_WEEKLY",""],[1,"d-flex","flex-row","flex-wrap","mt-8","justify-content-between"],[1,"chart-widget"],["containerId","PaymentChart",3,"config"],[1,"sales-card-widget"],[1,"border","rounded","rounded-bottom-0","px-8","py-4","w-100","h-auto"],[1,"border-bottom","d-flex","align-items-center","justify-content-end",2,"height","42px"],[4,"ngIf","ngIfElse"],[1,"text-end","card-row","d-flex","align-items-center","justify-content-end"],[1,"text-end","fs-5","mt-5"],["routerLink","/menu/Payment/Default/Received"],[1,"btn-group"],["type","button","data-bs-toggle","dropdown","aria-expanded","false",1,"dropdown-toggle","link-dark","fs-2","headings-font-family"],[1,"dropdown-menu","p-0",2,"position","absolute","right","20px !important",3,"ngClass"],["role","button",1,"dropdown-item","fs-4",3,"click"],[1,"link-dark","fs-2","headings-font-family"],[1,"fs-5"],[1,"d-flex","align-items-center"],[1,"me-2"],[1,"fw-normal"]],template:function(t,i){if(t&1&&(w(0,"div",1)(1,"div",2),yt(2,"app-chart-container",3),P(),w(3,"div",4)(4,"div",5)(5,"div",6),Z(6,ng,8,5,"ng-container",7)(7,rg,2,0,"ng-template",null,0,mt),P(),to(9,sg,10,6,"div",8,Js),w(11,"div",9)(12,"a",10),A(13," More "),P()()()()()),t&2){let n=at(8);k(2),_("config",i.chartConfig),k(4),_("ngIf",(i.role==null||i.role.dashboard==null?null:i.role.dashboard.View)&&i.showPeriodFilter)("ngIfElse",n),k(3),eo(i.paymentData)}},dependencies:[It,Wt,Et,Nt,Ee,Gt,Vt,ii],styles:[".chart-widget[_ngcontent-%COMP%]{width:80%}.link-dark[_ngcontent-%COMP%]{color:#333!important}.dropdown-menu.show.today[_ngcontent-%COMP%]{inset:0 auto auto -34px!important}.sales-card-widget[_ngcontent-%COMP%]{width:19%}.sales-card-widget[_ngcontent-%COMP%] .card-row[_ngcontent-%COMP%]{height:64px}@media only screen and (max-width: 767px){.chart-widget[_ngcontent-%COMP%]{width:100%}.sales-card-widget[_ngcontent-%COMP%]{width:100%;margin-top:12px}}@media only screen and (min-width: 768px) and (max-width: 991px){.chart-widget[_ngcontent-%COMP%]{width:100%}.sales-card-widget[_ngcontent-%COMP%]{width:100%;margin-top:12px}}"]})};var og=()=>({role:"Payment View Role"}),ag=()=>({role:"Buy Report Role"}),lg=()=>({role:"Debt View Role"}),hg=()=>({role:"Report View Role"}),cg=()=>({role:"Inventory View Role"});function dg(l,e){if(l&1){let t=ie();w(0,"div",13)(1,"h6"),A(2,"Outlet"),P(),w(3,"outlet-selector",14),rr("ngModelChange",function(n){Kt(t);let r=H();return nr(r.dashboardFilter.Outlets,n)||(r.dashboardFilter.Outlets=n),Zt(n)}),P()()}if(l&2){let t=H();k(3),_("multiple",!0),ir("ngModel",t.dashboardFilter.Outlets)}}function fg(l,e){if(l&1){let t=ie();ht(0),w(1,"div",19),ae("click",function(){let n=Kt(t).$implicit,r=H(2);return Zt(r.onClickCardWidget(n))}),yt(2,"app-card-widget",20),Y(3,"number"),P(),ct()}if(l&2){let t=e.$implicit,i=H().ngIf,n=H();k(2),_("title",t.title)("matTooltip",t.tooltip)("currencySymbol",i==null||i.ConfigData==null?null:i.ConfigData.CurrencySymbol)("value",t.value==null?"-":V(3,6,t.value,"1.0-0"))("showValue",t.showValue)("isActive",t.id==n.activeTab)}}function pg(l,e){if(l&1){let t=ie();ht(0),w(1,"app-sales-widget",21),ae("onFilter",function(n){Kt(t);let r=H(2);return Zt(r.onFilterSalesWidget(n))}),P(),ct()}if(l&2){let t=H().ngIf,i=H();k(),_("dashboardConfig",t==null?null:t.ConfigData)("chartData",t==null?null:t.HighChartData)("filterByOutletIds",i.dashboardFilter.Outlets)}}function ug(l,e){l&1&&_t(0)}function mg(l,e){if(l&1){let t=ie();w(0,"app-payment-widget",23),Y(1,"async"),ae("onFilter",function(n){Kt(t);let r=H(3);return Zt(r.onFilterPaymentWidget(n))}),P()}if(l&2){let t,i=H(2).ngIf,n=H();_("dashboardConfig",i==null?null:i.ConfigData)("chartData",(t=ge(1,2,n.paymentData$))==null?null:t.Data)}}function gg(l,e){if(l&1&&(ht(0),Z(1,ug,1,0,"ng-container",22)(2,mg,2,4,"ng-template",null,2,mt),ct()),l&2){let t=at(3),i=H(2),n=at(12);k(),_("ngTemplateOutlet",i.role.payment.View?t:n)("ngTemplateOutletContext",St(2,og))}}function xg(l,e){l&1&&_t(0)}function yg(l,e){if(l&1&&(yt(0,"app-purchase-widget",24),Y(1,"async")),l&2){let t,i=H(2).ngIf,n=H();_("dashboardConfig",i==null?null:i.ConfigData)("chartData",(t=ge(1,3,n.purchaseData$))==null?null:t.HighChartData)("filterByOutletIds",n.dashboardFilter.Outlets)}}function bg(l,e){if(l&1&&(ht(0),Z(1,xg,1,0,"ng-container",22)(2,yg,2,5,"ng-template",null,3,mt),ct()),l&2){let t=at(3),i=H(2),n=at(12);k(),_("ngTemplateOutlet",i.role.buy.Report?t:n)("ngTemplateOutletContext",St(2,ag))}}function vg(l,e){l&1&&_t(0)}function Sg(l,e){if(l&1&&(yt(0,"app-debt-widget",25),Y(1,"async")),l&2){let t,i=H(2).ngIf,n=H();_("dashboardConfig",i==null?null:i.ConfigData)("debtData",(t=ge(1,2,n.debtData$))==null?null:t.PageData)}}function Cg(l,e){if(l&1&&(ht(0),Z(1,vg,1,0,"ng-container",22)(2,Sg,2,4,"ng-template",null,4,mt),ct()),l&2){let t=at(3),i=H(2),n=at(12);k(),_("ngTemplateOutlet",i.role.debt.View?t:n)("ngTemplateOutletContext",St(2,lg))}}function Dg(l,e){l&1&&_t(0)}function Tg(l,e){if(l&1&&(yt(0,"app-product-widget",26),Y(1,"async")),l&2){let t,i=H(2).ngIf,n=H();_("dashboardConfig",i==null?null:i.ConfigData)("productData",(t=ge(1,2,n.productData$))==null?null:t.PageData)}}function wg(l,e){if(l&1&&(ht(0),Z(1,Dg,1,0,"ng-container",22)(2,Tg,2,4,"ng-template",null,5,mt),ct()),l&2){let t=at(3),i=H(2),n=at(12);k(),_("ngTemplateOutlet",i.role.report.View?t:n)("ngTemplateOutletContext",St(2,hg))}}function Pg(l,e){l&1&&_t(0)}function Mg(l,e){if(l&1&&(yt(0,"app-inventory-widget",27),Y(1,"async")),l&2){let t,i=H(2).ngIf,n=H();_("dashboardConfig",i==null?null:i.ConfigData)("inventoryData",(t=ge(1,2,n.inventoryData$))==null?null:t.PageData)}}function kg(l,e){if(l&1&&(ht(0),Z(1,Pg,1,0,"ng-container",22)(2,Mg,2,4,"ng-template",null,6,mt),ct()),l&2){let t=at(3),i=H(2),n=at(12);k(),_("ngTemplateOutlet",i.role.inventory.View?t:n)("ngTemplateOutletContext",St(2,cg))}}function Og(l,e){if(l&1&&(ht(0),w(1,"div",15)(2,"div",16)(3,"div",17),Z(4,fg,4,9,"ng-container",18),Y(5,"async"),P(),Z(6,pg,2,3,"ng-container",12)(7,gg,4,3,"ng-container",12)(8,bg,4,3,"ng-container",12)(9,Cg,4,3,"ng-container",12)(10,wg,4,3,"ng-container",12)(11,kg,4,3,"ng-container",12),P()(),ct()),l&2){let t=H();k(4),_("ngForOf",ge(5,7,t.cardWidget$)),k(2),_("ngIf",t.activeTab=="SALES"),k(),_("ngIf",t.activeTab=="PAYMENT"),k(),_("ngIf",t.activeTab=="PURCHASE"),k(),_("ngIf",t.activeTab=="DEBT"),k(),_("ngIf",t.activeTab=="PRODUCT"),k(),_("ngIf",t.activeTab=="INVENTORY")}}function Ag(l,e){if(l&1&&(w(0,"div",28)(1,"div",29)(2,"div"),yt(3,"img",30),P(),w(4,"h1",31),A(5,"You are not authorized"),P(),w(6,"p"),A(7," This page requires role "),w(8,"span",32),A(9),P(),A(10," to be accessed. Please contact your Administrator to gain access! "),P()()()),l&2){let t=e.role;k(9),Q("[",t,"]")}}var Jl=class l extends co{constructor(t,i,n){super(t);this.dashboardService=i;this.role=n;this.menuData$.subscribe(),this.initSalesData(),this.initCardWidget(),this.initPaymentData(),this.initPurchaseData(),this.initInventoryData(),this.initDebtData(),this.initProductData()}cardWidget$;dashboardFilter={Outlets:[]};salesData$;paymentData$;purchaseData$;debtData$;productData$;inventoryData$;activeTab="SALES";initSalesData(){this.salesData$=this.dashboardService.getDashboardSales(this.dashboardFilter).pipe(Le(1))}initPaymentData(){this.paymentData$=this.dashboardService.getDashboardPayment(this.dashboardFilter).pipe(Le(1))}initPurchaseData(){this.purchaseData$=this.dashboardService.getDashboardPurchase(this.dashboardFilter).pipe(Le(1))}initDebtData(){this.debtData$=this.dashboardService.getDashboardDebt(this.dashboardFilter).pipe(Le(1))}initProductData(){this.productData$=this.dashboardService.getDashboardProduct(this.dashboardFilter).pipe(Le(1))}initInventoryData(){this.inventoryData$=this.dashboardService.getDashboardInventory(this.dashboardFilter).pipe(Le(1))}initCardWidget(){switch(this.activeTab){case"SALES":this.cardWidget$=this.salesData$.pipe(qt(t=>this.dashboardService.getTotalData("Sales",t.HighChartData.Series,1)),Ci(0),_e(t=>this.dashboardService.setWidgetData(t,this.activeTab)));break;case"PAYMENT":this.cardWidget$=this.paymentData$.pipe(qt(t=>this.dashboardService.getTotalData("All",t.Data.Series,1)),Ci(0),_e(t=>this.dashboardService.setWidgetData(t,this.activeTab)));break;case"PURCHASE":this.cardWidget$=this.purchaseData$.pipe(qt(t=>this.dashboardService.getTotalData("Purchase",t.HighChartData.Series,1)),Ci(0),_e(t=>this.dashboardService.setWidgetData(t,this.activeTab)));break;case"DEBT":this.cardWidget$=this.debtData$.pipe(qt(t=>t.PageData.Receivable),Ci(0),_e(t=>this.dashboardService.setWidgetData(t,this.activeTab)));break}}onFilterByOutlet(){switch(this.activeTab){case"SALES":this.initSalesData(),this.initCardWidget();break;case"PURCHASE":this.initPurchaseData(),this.initCardWidget();break;case"DEBT":this.initDebtData(),this.initCardWidget();break;case"PRODUCT":this.initProductData();break;case"INVENTORY":this.initInventoryData();break;case"PAYMENT":this.initPaymentData();break}}onClickCardWidget(t){this.activeTab=t.id,this.initCardWidget()}onFilterSalesWidget(t){this.cardWidget$=this.salesData$.pipe(qt(i=>t.period=="WEEKLY"?this.dashboardService.getTotalData("Sales",i.HighChartData.Series,7):this.dashboardService.getTotalData("Sales",i.HighChartData.Series,1)),_e(i=>(this.dashboardService.setWidgetData(i,"SALES"),this.dashboardService.widgets$)),qt(i=>i.map(n=>(n.id=="SALES"&&(n.tooltip=t.period=="TODAY"?"Total Sales Today":"Total Sales last 7 days"),n))))}onFilterPaymentWidget(t){this.cardWidget$=this.paymentData$.pipe(qt(i=>t.period=="WEEKLY"?this.dashboardService.getTotalData("All",i.Data.Series,7):this.dashboardService.getTotalData("All",i.Data.Series,1)),_e(i=>(this.dashboardService.setWidgetData(i,"PAYMENT"),this.dashboardService.widgets$)),qt(i=>i.map(n=>(n.id=="PAYMENT"&&(n.tooltip=t.period=="TODAY"?"Total Payment Today":"Total Payment last 7 days"),n))))}static \u0275fac=function(i){return new(i||l)(Xt(fo),Xt(Lt),Xt(ei))};static \u0275cmp=Pt({type:l,selectors:[["POS-dashboard-v2"]],features:[Je([Lt]),Qs],decls:13,vars:7,consts:[["pageFilterTemplate",""],["NOT_AUTHORIZED",""],["PAYMENT",""],["BUY",""],["DEBT",""],["PRODUCT",""],["INVENTORY",""],[3,"onSubmit","filterChange","hideSearchBox","pageData","isFilterOnDropdown","filter"],[1,"content"],[1,"container-fluid","bg-light-gray","p-8"],[1,"row"],[1,"col-12"],[4,"ngIf"],[1,"dialog-filter"],["appendTo","body","placeholder","Select Outlets",3,"ngModelChange","multiple","ngModel"],[1,"card","mb-0"],[1,"card-body"],[1,"d-flex","flex-row","flex-nowrap","justify-content-between","align-items-center","overflow-auto",2,"column-gap","18px"],[4,"ngFor","ngForOf"],[1,"cursor-pointer","card-widget-tab",3,"click"],["matTooltipPosition","above",3,"title","matTooltip","currencySymbol","value","showValue","isActive"],[3,"onFilter","dashboardConfig","chartData","filterByOutletIds"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"onFilter","dashboardConfig","chartData"],[3,"dashboardConfig","chartData","filterByOutletIds"],[3,"dashboardConfig","debtData"],[3,"dashboardConfig","productData"],[3,"dashboardConfig","inventoryData"],[1,"d-flex","align-items-center","justify-content-center","mt-8",2,"height","350px"],[1,"text-center"],["src","https://res.cloudinary.com/pos/image/upload/v1702547639/POS/Images/Dashboard/locked.svg",2,"width","160px"],[1,"mt-2","mb-6"],[1,"fw-bold"]],template:function(i,n){if(i&1){let r=ie();w(0,"mainpanel-cmp",7),ae("onSubmit",function(){return Kt(r),Zt(n.onFilterByOutlet())}),rr("filterChange",function(o){return Kt(r),nr(n.dashboardFilter,o)||(n.dashboardFilter=o),Zt(o)}),w(1,"filters"),Z(2,dg,4,2,"ng-template",null,0,mt),P(),w(4,"content")(5,"div",8)(6,"div",9)(7,"div",10)(8,"div",11),Z(9,Og,12,9,"ng-container",12),Y(10,"async"),P()()()()()(),Z(11,Ag,11,1,"ng-template",null,1,mt)}i&2&&(_("hideSearchBox",!0)("pageData",n.menuData)("isFilterOnDropdown",!1),ir("filter",n.dashboardFilter),k(9),_("ngIf",ge(10,5,n.salesData$)))},dependencies:[It,xe,Et,ye,io,Nt,uo,po,ao,so,oo,Un,qn,Kn,Zn,Qn,Jn,mo,ho,lo,tr],styles:[".card-widget-tab[_ngcontent-%COMP%]{flex:1 1 0px}@media only screen and (max-width: 767px){.card-widget-tab[_ngcontent-%COMP%]{margin-right:1rem;margin-top:.5rem;width:auto}}@media only screen and (min-width: 768px) and (max-width: 991px){.card-widget-tab[_ngcontent-%COMP%]{margin-right:1rem;margin-top:.5rem;width:auto}}"]})};export{Jl as DashboardV2Component};
|