1(self.webpackChunkmerren_customer_portal=self.webpackChunkmerren_customer_portal||[]).push([[656],{1852:(ce,ie,St)=>{"use strict";St.d(ie,{R:()=>So});var at=St(1875),Vt=St(5478),q=St(8203),Dt=St(4085),mt=(St(5024),St(6860)),xt=St(177),i=St(4438),ut=St(1413),Z=(St(2806),St(4412),St(4402),St(7673)),P=(St(6977),St(6697));let Ot=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[Vt.E9]})}return a})();var Nt=St(5964);let we=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({})}return a})();var It=St(6600),Qt=St(6969),$t=St(7645),ge=(St(9969),St(8359),St(9030)),ae=St(7786),Xt=(St(3726),St(7336)),se=St(6939),ke=(St(9417),St(2102),St(9172));St(5558),St(6354),St(8141),St(1986);const xa={provide:new i.nKC("mat-autocomplete-scroll-strategy"),deps:[Qt.hJ],useFactory:function va(a){return()=>a.scrollStrategies.reposition()}};let ka=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({providers:[xa],imports:[Qt.z_,It.Sy,It.yE,xt.MD,Vt.Gj,It.Sy,It.yE]})}return a})(),Ca=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[$t.Pd,It.yE,It.yE]})}return a})();function Ma(a,k){}class ze{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.ariaModal=!0,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.closeOnNavigation=!0,this.closeOnDestroy=!0,this.closeOnOverlayDetachments=!0}}let pi=(()=>{class a extends se.lb{constructor(t,e,n,u,L,bt,Rt,jt){super(),this._elementRef=t,this._focusTrapFactory=e,this._config=u,this._interactivityChecker=L,this._ngZone=bt,this._overlayRef=Rt,this._focusMonitor=jt,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this.attachDomPortal=zt=>{this._portalOutlet.hasAttached();const Zt=this._portalOutlet.attachDomPortal(zt);return this._contentAttached(),Zt},this._ariaLabelledBy=this._config.ariaLabelledBy||null,this._document=n}_contentAttached(){this._initializeFocusTrap(),this._handleBackdropClicks(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._restoreFocus()}attachComponentPortal(t){this._portalOutlet.hasAttached();const e=this._portalOutlet.attachComponentPortal(t);return this._contentAttached(),e}attachTemplatePortal(t){this._portalOutlet.hasAttached();const e=this._portalOutlet.attachTemplatePortal(t);return this._contentAttached(),e}_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(t,e){this._interactivityChecker.isFocusable(t)||(t.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{const n=()=>{t.removeEventListener("blur",n),t.removeEventListener("mousedown",n),t.removeAttribute("tabindex")};t.addEventListener("blur",n),t.addEventListener("mousedown",n)})),t.focus(e)}_focusByCssSelector(t,e){let n=this._elementRef.nativeElement.querySelector(t);n&&this._forceFocus(n,e)}_trapFocus(){const t=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||t.focus();break;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(e=>{e||this._focusDialogContainer()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this._config.autoFocus)}}_restoreFocus(){const t=this._config.restoreFocus;let e=null;if("string"==typeof t?e=this._document.querySelector(t):"boolean"==typeof t?e=t?this._elementFocusedBeforeDialogWasOpened:null:t&&(e=t),this._config.restoreFocus&&e&&"function"==typeof e.focus){const n=(0,mt.vc)(),u=this._elementRef.nativeElement;(!n||n===this._document.body||n===u||u.contains(n))&&(this._focusMonitor?(this._focusMonitor.focusVia(e,this._closeInteractionType),this._closeInteractionType=null):e.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const t=this._elementRef.nativeElement,e=(0,mt.vc)();return t===e||t.contains(e)}_initializeFocusTrap(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=(0,mt.vc)())}_handleBackdropClicks(){this._overlayRef.backdropClick().subscribe(()=>{this._config.disableClose&&this._recaptureFocus()})}static#t=this.\u0275fac=function(e){return new(e||a)(i.rXU(i.aKT),i.rXU($t.GX),i.rXU(xt.qQ,8),i.rXU(ze),i.rXU($t.Z7),i.rXU(i.SKi),i.rXU(Qt.yY),i.rXU($t.FN))};static#e=this.\u0275cmp=i.VBU({type:a,selectors:[["cdk-dialog-container"]],viewQuery:function(e,n){if(1&e&&i.GBs(se.I3,7),2&e){let u;i.mGM(u=i.lsd())&&(n._portalOutlet=u.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(e,n){2&e&&i.BMQ("id",n._config.id||null)("role",n._config.role)("aria-modal",n._config.ariaModal)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledBy)("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null)},features:[i.Vt3],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(e,n){1&e&&i.DNE(0,Ma,0,0,"ng-template",0)},dependencies:[se.I3],styles:[".cdk-dialog-container{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}"],encapsulation:2})}return a})();class $e{constructor(k,t){this.overlayRef=k,this.config=t,this.closed=new ut.B,this.disableClose=t.disableClose,this.backdropClick=k.backdropClick(),this.keydownEvents=k.keydownEvents(),this.outsidePointerEvents=k.outsidePointerEvents(),this.id=t.id,this.keydownEvents.subscribe(e=>{e.keyCode===Xt._f&&!this.disableClose&&!(0,Xt.rp)(e)&&(e.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{this.disableClose||this.close(void 0,{focusOrigin:"mouse"})}),this._detachSubscription=k.detachments().subscribe(()=>{!1!==t.closeOnOverlayDetachments&&this.close()})}close(k,t){if(this.containerInstance){const e=this.closed;this.containerInstance._closeInteractionType=t?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),e.next(k),e.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(k="",t=""){return this.overlayRef.updateSize({width:k,height:t}),this}addPanelClass(k){return this.overlayRef.addPanelClass(k),this}removePanelClass(k){return this.overlayRef.removePanelClass(k),this}}const ui=new i.nKC("DialogScrollStrategy"),Da=new i.nKC("DialogData"),Sa=new i.nKC("DefaultDialogConfig"),Aa={provide:ui,deps:[Qt.hJ],useFactory:function Ta(a){return()=>a.scrollStrategies.block()}};let Ia=0,gi=(()=>{class a{get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}constructor(t,e,n,u,L,bt){this._overlay=t,this._injector=e,this._defaultOptions=n,this._parentDialog=u,this._overlayContainer=L,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new ut.B,this._afterOpenedAtThisLevel=new ut.B,this._ariaHiddenElements=new Map,this.afterAllClosed=(0,ge.v)(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe((0,ke.Z)(void 0))),this._scrollStrategy=bt}open(t,e){(e={...this._defaultOptions||new ze,...e}).id=e.id||"cdk-dialog-"+Ia++,e.id&&this.getDialogById(e.id);const u=this._getOverlayConfig(e),L=this._overlay.create(u),bt=new $e(L,e),Rt=this._attachContainer(L,bt,e);return bt.containerInstance=Rt,this._attachDialogContent(t,bt,Rt,e),this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(bt),bt.closed.subscribe(()=>this._removeOpenDialog(bt,!0)),this.afterOpened.next(bt),bt}closeAll(){Ke(this.openDialogs,t=>t.close())}getDialogById(t){return this.openDialogs.find(e=>e.id===t)}ngOnDestroy(){Ke(this._openDialogsAtThisLevel,t=>{!1===t.config.closeOnDestroy&&this._removeOpenDialog(t,!1)}),Ke(this._openDialogsAtThisLevel,t=>t.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(t){const e=new Qt.rR({positionStrategy:t.positionStrategy||this._overlay.position().global().centerHorizontally().centerVertically(),scrollStrategy:t.scrollStrategy||this._scrollStrategy(),panelClass:t.panelClass,hasBackdrop:t.hasBackdrop,direction:t.direction,minWidth:t.minWidth,minHeight:t.minHeight,maxWidth:t.maxWidth,maxHeight:t.maxHeight,width:t.width,height:t.height,disposeOnNavigation:t.closeOnNavigation});return t.backdropClass&&(e.backdropClass=t.backdropClass),e}_attachContainer(t,e,n){const u=n.injector||n.viewContainerRef?.injector,L=[{provide:ze,useValue:n},{provide:$e,useValue:e},{provide:Qt.yY,useValue:t}];let bt;n.container?"function"==typeof n.container?bt=n.container:(bt=n.container.type,L.push(...n.container.providers(n))):bt=pi;const Rt=new se.A8(bt,n.viewContainerRef,i.zZn.create({parent:u||this._injector,providers:L}),n.componentFactoryResolver);return t.attach(Rt).instance}_attachDialogContent(t,e,n,u){if(t instanceof i.C4Q){const L=this._createInjector(u,e,n,void 0);let bt={$implicit:u.data,dialogRef:e};u.templateContext&&(bt={...bt,..."function"==typeof u.templateContext?u.templateContext():u.templateContext}),n.attachTemplatePortal(new se.VA(t,null,bt,L))}else{const L=this._createInjector(u,e,n,this._injector),bt=n.attachComponentPortal(new se.A8(t,u.viewContainerRef,L,u.componentFactoryResolver));e.componentInstance=bt.instance}}_createInjector(t,e,n,u){const L=t.injector||t.viewContainerRef?.injector,bt=[{provide:Da,useValue:t.data},{provide:$e,useValue:e}];return t.providers&&("function"==typeof t.providers?bt.push(...t.providers(e,t,n)):bt.push(...t.providers)),t.direction&&(!L||!L.get(q.dS,null,{optional:!0}))&&bt.push({provide:q.dS,useValue:{value:t.direction,change:(0,Z.of)()}}),i.zZn.create({parent:L||u,providers:bt})}_removeOpenDialog(t,e){const n=this.openDialogs.indexOf(t);n>-1&&(this.openDialogs.splice(n,1),this.openDialogs.length||(this._ariaHiddenElements.forEac
1h((u,L)=>{u?L.setAttribute("aria-hidden",u):L.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),e&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const t=this._overlayContainer.getContainerElement();if(t.parentElement){const e=t.parentElement.children;for(let n=e.length-1;n>-1;n--){const u=e[n];u!==t&&"SCRIPT"!==u.nodeName&&"STYLE"!==u.nodeName&&!u.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(u,u.getAttribute("aria-hidden")),u.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){const t=this._parentDialog;return t?t._getAfterAllClosed():this._afterAllClosedAtThisLevel}static#t=this.\u0275fac=function(e){return new(e||a)(i.KVO(Qt.hJ),i.KVO(i.zZn),i.KVO(Sa,8),i.KVO(a,12),i.KVO(Qt.Sf),i.KVO(ui))};static#e=this.\u0275prov=i.jDH({token:a,factory:a.\u0275fac})}return a})();function Ke(a,k){let t=a.length;for(;t--;)k(a[t])}let _i=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({providers:[gi,Aa],imports:[Qt.z_,se.jc,$t.Pd,se.jc]})}return a})(),Ea=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[_i,It.yE,se.jc,It.yE]})}return a})();var fi=St(8834);let Na=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,It.pZ,It.yE]})}return a})(),Xa=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,xt.MD,It.yE]})}return a})(),Ci=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({})}return a})(),rn=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,It.pZ,Ci,It.yE,Ci]})}return a})();const He=new i.nKC("mat-chips-default-options");let Bn=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({providers:[It.es,{provide:He,useValue:{separatorKeyCodes:[Xt.Fm]}}],imports:[It.yE,xt.MD,It.pZ,It.yE]})}return a})();function Fn(a,k){}class Xe{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.ariaModal=!0,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.delayFocusTrap=!0,this.closeOnNavigation=!0}}const ei="mdc-dialog--open",Ri="mdc-dialog--opening",Oi="mdc-dialog--closing";let Vn=(()=>{class a extends pi{constructor(t,e,n,u,L,bt,Rt,jt){super(t,e,n,u,L,bt,Rt,jt),this._animationStateChanged=new i.bkB}_captureInitialFocus(){this._config.delayFocusTrap||this._trapFocus()}_openAnimationDone(t){this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:t})}static#t=this.\u0275fac=function(e){return new(e||a)(i.rXU(i.aKT),i.rXU($t.GX),i.rXU(xt.qQ,8),i.rXU(Xe),i.rXU($t.Z7),i.rXU(i.SKi),i.rXU(Qt.yY),i.rXU($t.FN))};static#e=this.\u0275cmp=i.VBU({type:a,selectors:[["ng-component"]],features:[i.Vt3],decls:0,vars:0,template:function(e,n){},encapsulation:2})}return a})();const Pi="--mat-dialog-transition-duration";function Bi(a){return null==a?null:"number"==typeof a?a:a.endsWith("ms")?(0,Dt.OE)(a.substring(0,a.length-2)):a.endsWith("s")?1e3*(0,Dt.OE)(a.substring(0,a.length-1)):"0"===a?0:null}let jn=(()=>{class a extends Vn{constructor(t,e,n,u,L,bt,Rt,jt,zt){super(t,e,n,u,L,bt,Rt,zt),this._animationMode=jt,this._animationsEnabled="NoopAnimations"!==this._animationMode,this._hostElement=this._elementRef.nativeElement,this._enterAnimationDuration=this._animationsEnabled?Bi(this._config.enterAnimationDuration)??150:0,this._exitAnimationDuration=this._animationsEnabled?Bi(this._config.exitAnimationDuration)??75:0,this._animationTimer=null,this._finishDialogOpen=()=>{this._clearAnimationClasses(),this._openAnimationDone(this._enterAnimationDuration)},this._finishDialogClose=()=>{this._clearAnimationClasses(),this._animationStateChanged.emit({state:"closed",totalTime:this._exitAnimationDuration})}}_contentAttached(){super._contentAttached(),this._startOpenAnimation()}ngOnDestroy(){super.ngOnDestroy(),null!==this._animationTimer&&clearTimeout(this._animationTimer)}_startOpenAnimation(){this._animationStateChanged.emit({state:"opening",totalTime:this._enterAnimationDuration}),this._animationsEnabled?(this._hostElement.style.setProperty(Pi,`${this._enterAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Ri,ei)),this._waitForAnimationToComplete(this._enterAnimationDuration,this._finishDialogOpen)):(this._hostElement.classList.add(ei),Promise.resolve().then(()=>this._finishDialogOpen()))}_startExitAnimation(){this._animationStateChanged.emit({state:"closing",totalTime:this._exitAnimationDuration}),this._hostElement.classList.remove(ei),this._animationsEnabled?(this._hostElement.style.setProperty(Pi,`${this._exitAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Oi)),this._waitForAnimationToComplete(this._exitAnimationDuration,this._finishDialogClose)):Promise.resolve().then(()=>this._finishDialogClose())}_clearAnimationClasses(){this._hostElement.classList.remove(Ri,Oi)}_waitForAnimationToComplete(t,e){null!==this._animationTimer&&clearTimeout(this._animationTimer),this._animationTimer=setTimeout(e,t)}_requestAnimationFrame(t){this._ngZone.runOutsideAngular(()=>{"function"==typeof requestAnimationFrame?requestAnimationFrame(t):t()})}static#t=this.\u0275fac=function(e){return new(e||a)(i.rXU(i.aKT),i.rXU($t.GX),i.rXU(xt.qQ,8),i.rXU(Xe),i.rXU($t.Z7),i.rXU(i.SKi),i.rXU(Qt.yY),i.rXU(i.bc$,8),i.rXU($t.FN))};static#e=this.\u0275cmp=i.VBU({type:a,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1",1,"mat-mdc-dialog-container","mdc-dialog"],hostVars:8,hostBindings:function(e,n){2&e&&(i.Mr5("id",n._config.id),i.BMQ("aria-modal",n._config.ariaModal)("role",n._config.role)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledBy)("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null),i.AVh("_mat-animation-noopable",!n._animationsEnabled))},features:[i.Vt3],decls:3,vars:0,consts:[[1,"mdc-dialog__container"],[1,"mat-mdc-dialog-surface","mdc-dialog__surface"],["cdkPortalOutlet",""]],template:function(e,n){1&e&&(i.j41(0,"div",0)(1,"div",1),i.DNE(2,Fn,0,0,"ng-template",2),i.k0s()())},dependencies:[se.I3],styles:['.mdc-elevation-overlay{position:absolute;border-radius:inherit;pointer-events:none;opacity:var(--mdc-elevation-overlay-opacity, 0);transition:opacity 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-dialog,.mdc-dialog__scrim{position:fixed;top:0;left:0;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.mdc-dialog{display:none;z-index:var(--mdc-dialog-z-index, 7)}.mdc-dialog .mdc-dialog__content{padding:20px 24px 20px 24px}.mdc-dialog .mdc-dialog__surface{min-width:280px}@media(max-width: 592px){.mdc-dialog .mdc-dialog__surface{max-width:calc(100vw - 32px)}}@media(min-width: 592px){.mdc-dialog .mdc-dialog__surface{max-width:560px}}.mdc-dialog .mdc-dialog__surface{max-height:calc(100% - 32px)}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-width:none}@media(max-width: 960px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-height:560px;width:560px}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{right:-12px}}@media(max-width: 720px)and (max-width: 672px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{width:calc(100vw - 112px)}}@media(max-width: 720px)and (min-width: 672px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{width:560px}}@media(max-width: 720px)and (max-height: 720px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-height:calc(100vh - 160px)}}@media(max-width: 720px)and (min-height: 720px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-height:560px}}@media(max-width: 720px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{right:-12px}}
1@media(max-width: 720px)and (max-height: 400px),(max-width: 600px),(min-width: 720px)and (max-height: 400px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{height:100%;max-height:100vh;max-width:100vw;width:100vw;border-radius:0}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{order:-1;left:-12px}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__header{padding:0 16px 9px;justify-content:flex-start}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__title{margin-left:calc(16px - 2 * 12px)}}@media(min-width: 960px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{width:calc(100vw - 400px)}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{right:-12px}}.mdc-dialog.mdc-dialog__scrim--hidden .mdc-dialog__scrim{opacity:0}.mdc-dialog__scrim{opacity:0;z-index:-1}.mdc-dialog__container{display:flex;flex-direction:row;align-items:center;justify-content:space-around;box-sizing:border-box;height:100%;transform:scale(0.8);opacity:0;pointer-events:none}.mdc-dialog__surface{position:relative;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;box-sizing:border-box;max-width:100%;max-height:100%;pointer-events:auto;overflow-y:auto;outline:0}.mdc-dialog__surface .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}[dir=rtl] .mdc-dialog__surface,.mdc-dialog__surface[dir=rtl]{text-align:right}@media screen and (forced-colors: active),(-ms-high-contrast: active){.mdc-dialog__surface{outline:2px solid windowText}}.mdc-dialog__surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:2px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}@media screen and (forced-colors: active){.mdc-dialog__surface::before{border-color:CanvasText}}@media screen and (-ms-high-contrast: active),screen and (-ms-high-contrast: none){.mdc-dialog__surface::before{content:none}}.mdc-dialog__title{display:block;margin-top:0;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:0 24px 9px}.mdc-dialog__title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}[dir=rtl] .mdc-dialog__title,.mdc-dialog__title[dir=rtl]{text-align:right}.mdc-dialog--scrollable .mdc-dialog__title{margin-bottom:1px;padding-bottom:15px}.mdc-dialog--fullscreen .mdc-dialog__header{align-items:baseline;border-bottom:1px solid rgba(0,0,0,0);display:inline-flex;justify-content:space-between;padding:0 24px 9px;z-index:1}@media screen and (forced-colors: active){.mdc-dialog--fullscreen .mdc-dialog__header{border-bottom-color:CanvasText}}.mdc-dialog--fullscreen .mdc-dialog__header .mdc-dialog__close{right:-12px}.mdc-dialog--fullscreen .mdc-dialog__title{margin-bottom:0;padding:0;border-bottom:0}.mdc-dialog--fullscreen.mdc-dialog--scrollable .mdc-dialog__title{border-bottom:0;margin-bottom:0}.mdc-dialog--fullscreen .mdc-dialog__close{top:5px}.mdc-dialog--fullscreen.mdc-dialog--scrollable .mdc-dialog__actions{border-top:1px solid rgba(0,0,0,0)}@media screen and (forced-colors: active){.mdc-dialog--fullscreen.mdc-dialog--scrollable .mdc-dialog__actions{border-top-color:CanvasText}}.mdc-dialog--fullscreen--titleless .mdc-dialog__close{margin-top:4px}.mdc-dialog--fullscreen--titleless.mdc-dialog--scrollable .mdc-dialog__close{margin-top:0}.mdc-dialog__content{flex-grow:1;box-sizing:border-box;margin:0;overflow:auto}.mdc-dialog__content>:first-child{margin-top:0}.mdc-dialog__content>:last-child{margin-bottom:0}.mdc-dialog__title+.mdc-dialog__content,.mdc-dialog__header+.mdc-dialog__content{padding-top:0}.mdc-dialog--scrollable .mdc-dialog__title+.mdc-dialog__content{padding-top:8px;padding-bottom:8px}.mdc-dialog__content .mdc-deprecated-list:first-child:last-child{padding:6px 0 0}.mdc-dialog--scrollable .mdc-dialog__content .mdc-deprecated-list:first-child:last-child{padding:0}.mdc-dialog__actions{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid rgba(0,0,0,0)}@media screen and (forced-colors: active){.mdc-dialog__actions{border-top-color:CanvasText}}.mdc-dialog--stacked .mdc-dialog__actions{flex-direction:column;align-items:flex-end}.mdc-dialog__button{margin-left:8px;margin-right:0;max-width:100%;text-align:right}[dir=rtl] .mdc-dialog__button,.mdc-dialog__button[dir=rtl]{margin-left:0;margin-right:8px}.mdc-dialog__button:first-child{margin-left:0;margin-right:0}[dir=rtl] .mdc-dialog__button:first-child,.mdc-dialog__button:first-child[dir=rtl]{margin-left:0;margin-right:0}[dir=rtl] .mdc-dialog__button,.mdc-dialog__button[dir=rtl]{text-align:left}.mdc-dialog--stacked .mdc-dialog__button:not(:first-child){margin-top:12px}.mdc-dialog--open,.mdc-dialog--opening,.mdc-dialog--closing{display:flex}.mdc-dialog--opening .mdc-dialog__scrim{transition:opacity 150ms linear}.mdc-dialog--opening .mdc-dialog__container{transition:opacity 75ms linear,transform 150ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-dialog--closing .mdc-dialog__scrim,.mdc-dialog--closing .mdc-dialog__container{transition:opacity 75ms linear}.mdc-dialog--closing .mdc-dialog__container{transform:none}.mdc-dialog--open .mdc-dialog__scrim{opacity:1}.mdc-dialog--open .mdc-dialog__container{transform:none;opacity:1}.mdc-dialog--open.mdc-dialog__surface-scrim--shown .mdc-dialog__surface-scrim{opacity:1}.mdc-dialog--open.mdc-dialog__surface-scrim--hiding .mdc-dialog__surface-scrim{transition:opacity 75ms linear}.mdc-dialog--open.mdc-dialog__surface-scrim--showing .mdc-dialog__surface-scrim{transition:opacity 150ms linear}.mdc-dialog__surface-scrim{display:none;opacity:0;position:absolute;width:100%;height:100%;z-index:1}.mdc-dialog__surface-scrim--shown .mdc-dialog__surface-scrim,.mdc-dialog__surface-scrim--showing .mdc-dialog__surface-scrim,.mdc-dialog__surface-scrim--hiding .mdc-dialog__surface-scrim{display:block}.mdc-dialog-scroll-lock{overflow:hidden}.mdc-dialog--no-content-padding .mdc-dialog__content{padding:0}.mdc-dialog--sheet .mdc-dialog__container .mdc-dialog__close{right:12px;top:9px;position:absolute;z-index:1}.mdc-dialog__scrim--removed{pointer-events:none}.mdc-dialog__scrim--removed .mdc-dialog__scrim,.mdc-dialog__scrim--removed .mdc-dialog__surface-scrim{display:none}.mat-mdc-dialog-content{max-height:65vh}.mat-mdc-dialog-container{position:static;display:block}.mat-mdc-dialog-container,.mat-mdc-dialog-container .mdc-dialog__container,.mat-mdc-dialog-container .mdc-dialog__surface{max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit}.mat-mdc-dialog-container .mdc-dialog__surface{display:block;width:100%;height:100%}.mat-mdc-dialog-container{--mdc-dialog-container-elevation-shadow:0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);--mdc-dialog-container-shadow-color:#000;--mdc-dialog-container-shape:4px;--mdc-dialog-container-elevation: var(--mdc-dialog-container-elevation-shadow);outline:0}.mat-mdc-dialog-container .mdc-dialog__surface{background-color:var(--mdc-dialog-container-color, white)}.mat-mdc-dialog-container .mdc-dialog__surface{box-shadow:var(--mdc-dialog-container-elevation, 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12))}.mat-mdc-dialog-container .mdc-dialog__surface{border-radius:var(--mdc-dialog-container-shape, 4px)}.mat-mdc-dialog-container .mdc-dialog__title{font-family:var(--mdc-dialog-subhead-font, Roboto, sans-serif);line-height:var(--mdc-dialog-subhead-line-height, 1.5rem);font-size:var(--mdc-dialog-subhead-size, 1rem);font-weight:var(--mdc-dialog-subhead-weight, 400);letter-spacing:var(--mdc-dialog-subhead-tracking, 0.03125em)}.mat-mdc-dialog-container .mdc-dialog__title{color:var(--mdc-dialog-subhead-color, rgba(0, 0, 0, 0.87))}.mat-mdc-dialog-container .mdc-dialog__content{font-family:var(--mdc-dialog-supporting-text-font, Roboto, sans-serif);line-height:var(--mdc-dialog-supporting-text-line-height, 1.5rem);font-size:var(--mdc-dialog-supporting-text-size, 1rem);font-weight:var(--mdc-dialog-supporting-text-weight, 400);letter-spacing:var(--mdc-dialog-supporting-text-tracking, 0.03125em)}.mat-mdc-dialog-container .mdc-dialog__content{color:var(--mdc-dialog-supporting-text-color, rgba(0, 0, 0, 0.6))}.mat-mdc-dialog-container .mdc-dialog__container{transition-duration:var(--mat-dialog-transition-duration, 0ms)}.mat-mdc-dialog-container._mat-animation-noopable .mdc-dialog__container{transition:none}.mat-mdc-dialog-content{display:block}.mat-mdc-dialog-actions{justify-content:start}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-center,.mat-mdc-dialog-actions[align=center]{justify-content:center}
1.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-end,.mat-mdc-dialog-actions[align=end]{justify-content:flex-end}.mat-mdc-dialog-actions .mat-button-base+.mat-button-base,.mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-mdc-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}'],encapsulation:2})}return a})();class zn{constructor(k,t,e){this._ref=k,this._containerInstance=e,this._afterOpened=new ut.B,this._beforeClosed=new ut.B,this._state=0,this.disableClose=t.disableClose,this.id=k.id,e._animationStateChanged.pipe((0,Nt.p)(n=>"opened"===n.state),(0,P.s)(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),e._animationStateChanged.pipe((0,Nt.p)(n=>"closed"===n.state),(0,P.s)(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),k.overlayRef.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._finishDialogClose()}),(0,ae.h)(this.backdropClick(),this.keydownEvents().pipe((0,Nt.p)(n=>n.keyCode===Xt._f&&!this.disableClose&&!(0,Xt.rp)(n)))).subscribe(n=>{this.disableClose||(n.preventDefault(),function Hn(a,k,t){a._closeInteractionType=k,a.close(t)}(this,"keydown"===n.type?"keyboard":"mouse"))})}close(k){this._result=k,this._containerInstance._animationStateChanged.pipe((0,Nt.p)(t=>"closing"===t.state),(0,P.s)(1)).subscribe(t=>{this._beforeClosed.next(k),this._beforeClosed.complete(),this._ref.overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),t.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._ref.closed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}updatePosition(k){let t=this._ref.config.positionStrategy;return k&&(k.left||k.right)?k.left?t.left(k.left):t.right(k.right):t.centerHorizontally(),k&&(k.top||k.bottom)?k.top?t.top(k.top):t.bottom(k.bottom):t.centerVertically(),this._ref.updatePosition(),this}updateSize(k="",t=""){return this._ref.updateSize(k,t),this}addPanelClass(k){return this._ref.addPanelClass(k),this}removePanelClass(k){return this._ref.removePanelClass(k),this}getState(){return this._state}_finishDialogClose(){this._state=2,this._ref.close(this._result,{focusOrigin:this._closeInteractionType}),this.componentInstance=null}}const Gn=new i.nKC("MatMdcDialogData"),Un=new i.nKC("mat-mdc-dialog-default-options"),Fi=new i.nKC("mat-mdc-dialog-scroll-strategy"),Yn={provide:Fi,deps:[Qt.hJ],useFactory:function Xn(a){return()=>a.scrollStrategies.block()}};let Wn=0,$n=(()=>{class a{get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const t=this._parentDialog;return t?t._getAfterAllClosed():this._afterAllClosedAtThisLevel}constructor(t,e,n,u,L,bt,Rt,jt,zt,Zt){this._overlay=t,this._defaultOptions=n,this._parentDialog=u,this._dialogRefConstructor=Rt,this._dialogContainerType=jt,this._dialogDataToken=zt,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new ut.B,this._afterOpenedAtThisLevel=new ut.B,this._idPrefix="mat-dialog-",this.dialogConfigClass=Xe,this.afterAllClosed=(0,ge.v)(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe((0,ke.Z)(void 0))),this._scrollStrategy=bt,this._dialog=e.get(gi)}open(t,e){let n;(e={...this._defaultOptions||new Xe,...e}).id=e.id||`${this._idPrefix}${Wn++}`,e.scrollStrategy=e.scrollStrategy||this._scrollStrategy();const u=this._dialog.open(t,{...e,positionStrategy:this._overlay.position().global().centerHorizontally().centerVertically(),disableClose:!0,closeOnDestroy:!1,closeOnOverlayDetachments:!1,container:{type:this._dialogContainerType,providers:()=>[{provide:this.dialogConfigClass,useValue:e},{provide:ze,useValue:e}]},templateContext:()=>({dialogRef:n}),providers:(L,bt,Rt)=>(n=new this._dialogRefConstructor(L,e,Rt),n.updatePosition(e?.position),[{provide:this._dialogContainerType,useValue:Rt},{provide:this._dialogDataToken,useValue:bt.data},{provide:this._dialogRefConstructor,useValue:n}])});return n.componentInstance=u.componentInstance,this.openDialogs.push(n),this.afterOpened.next(n),n.afterClosed().subscribe(()=>{const L=this.openDialogs.indexOf(n);L>-1&&(this.openDialogs.splice(L,1),this.openDialogs.length||this._getAfterAllClosed().next())}),n}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(t){return this.openDialogs.find(e=>e.id===t)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_closeDialogs(t){let e=t.length;for(;e--;)t[e].close()}static#t=this.\u0275fac=function(e){i.QTQ()};static#e=this.\u0275prov=i.jDH({token:a,factory:a.\u0275fac})}return a})(),Kn=(()=>{class a extends $n{constructor(t,e,n,u,L,bt,Rt,jt){super(t,e,u,bt,Rt,L,zn,jn,Gn,jt),this._idPrefix="mat-mdc-dialog-"}static#t=this.\u0275fac=function(e){return new(e||a)(i.KVO(Qt.hJ),i.KVO(i.zZn),i.KVO(xt.aZ,8),i.KVO(Un,8),i.KVO(Fi),i.KVO(a,12),i.KVO(Qt.Sf),i.KVO(i.bc$,8))};static#e=this.\u0275prov=i.jDH({token:a,factory:a.\u0275fac})}return a})(),Qn=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({providers:[Kn,Yn],imports:[_i,Qt.z_,se.jc,It.yE,It.yE]})}return a})(),Ni=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,It.yE]})}return a})(),Zn=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({})}return a})(),qn=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[xt.MD,It.yE,Zn,se.jc]})}return a})(),er=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.Np,It.yE,It.Np,It.yE]})}return a})();St(8810),St(7468),St(9437),St(980),St(7647),St(1626),St(345);let $i=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,It.yE]})}return a})();var mr=St(9631),ai=St(2318);let Hr=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[ai.w5,xt.MD,It.yE,It.pZ,It.O5,Ni]})}return a})();const Yr={provide:new i.nKC("mat-menu-scroll-strategy"),deps:[Qt.hJ],useFactory:function Xr(a){return()=>a.scrollStrategies.reposition()}};let Wr=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({providers:[Yr],imports:[xt.MD,It.pZ,It.yE,Qt.z_,Vt.Gj,It.yE]})}return a})();var $r=St(6695);let Qr=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE]})}return a})(),Jr=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[xt.MD,It.yE]})}return a})(),hs=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,xt.MD,It.pZ,It.yE]})}return a})();var ms=St(2798);let us=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[xt.MD,It.yE,Vt.Gj,Vt.Gj,It.yE]})}return a})(),ks=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,xt.MD,It.pZ]})}return a})(),sa=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({})}return a})(),Ps=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[sa,It.yE,It.pZ,xt.MD,sa,It.yE]})}return a})(),ri=(()=>{class a{constructor(){this.changes=new ut.B}static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275prov=i.jDH({token:a,factory:a.\u0275fac,providedIn:"root"})}return a})();const Fs={provide:ri,deps:[[new i.Xx1,new i.kdw,ri]],useFactory:function Bs(a){return a||new ri}};let Ls=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({providers:[Fs],imports:[xt.MD,It.yE]})}return a})();St(4572);let Ys=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,Ot,It.yE]})}return a})(),qs=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[xt.MD,It.yE,se.jc,It.pZ,ai.w5,$t.Pd,It.yE]})}return a})(),Js=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[It.yE,It.yE]})}return a})();var to=St(4823);let so=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[we,It.yE,It.yE]})}return a})(),co=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[q.jI]})}return a})(),li=(()=>{class a{constructor(){this.changes=new ut.B,this.optionalLabel="Optional",this.completedLabel="Completed",this.editableLabel="Editable"}static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275prov=i.jDH({token:a,factory:a.\u0275fac,providedIn:"root"})}return a})();const xo={provide:li,deps:[[new i.Xx1,new i.kdw,li]],useFactory:function vo(a){return a||new li}};let yo=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({providers:[xo,It.es],imports:[It.yE,xt.MD,se.jc,co,$i,It.pZ,It.yE]})}return a})();var wo=St(5084);let Mo=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[Qt.z_,se.jc,xt.MD,fi.Hl,It.yE,It.yE]})}return a})(),So=(()=>{class a{static#t=this.\u0275fac=function(e){return new(e||a)};static#e=this.\u0275mod=i.$C({type:a});static#i=this.\u0275inj=i.G2t({imports:[Ot,we,at.ad,ka,Ca,Ea,fi.Hl,Na,Xa,rn,Bn,yo,wo.X6,Qn,Ni,qn,er,$i,mr.fS,Hr,Wr,It.WX,$r.Ou,Qr,Jr,hs,It.pZ,ms.Ve,us,ks,Ps,Mo,Ls,Ys,qs,Js,to.uc,so,Vt.E9]})}return a})()}
1,2262:(ce,ie,St)=>{"use strict";St.d(ie,{Q:()=>mt});var at=St(4438),Vt=St(177);function q(xt,i){if(1&xt&&at.nrm(0,"i"),2&xt){const ut=at.XpG();at.HbH("fas "+ut.btnIcon)}}function Dt(xt,i){if(1&xt&&at.nrm(0,"img",4),2&xt){const ut=at.XpG();at.Y8G("src","https://merrenbucket.s3.ap-south-1.amazonaws.com/assets/img/"+ut.imgSrc,at.B4B)}}function m(xt,i){if(1&xt&&(at.j41(0,"span"),at.EFF(1),at.k0s()),2&xt){const ut=at.XpG();at.R7$(),at.JRh(ut.btnLabel)}}let mt=(()=>{class xt{constructor(){this.type="button",this.imgSrc="",this.btnLabel="",this.btnIcon=""}ngOnInit(){}static#t=this.\u0275fac=function(kt){return new(kt||xt)};static#e=this.\u0275cmp=at.VBU({type:xt,selectors:[["app-button"]],inputs:{type:"type",className:"className",imgSrc:"imgSrc",btnLabel:"btnLabel",btnIcon:"btnIcon"},decls:4,vars:7,consts:[[3,"type"],[3,"class",4,"ngIf"],["alt","",3,"src",4,"ngIf"],[4,"ngIf"],["alt","",3,"src"]],template:function(kt,gt){1&kt&&(at.j41(0,"button",0),at.DNE(1,q,1,3,"i",1)(2,Dt,1,1,"img",2)(3,m,2,1,"span",3),at.k0s()),2&kt&&(at.HbH("btn "+gt.className),at.Y8G("type",gt.type),at.R7$(),at.Y8G("ngIf",""!=gt.btnIcon),at.R7$(),at.Y8G("ngIf",""!=gt.imgSrc),at.R7$(),at.Y8G("ngIf",""!=gt.btnLabel))},dependencies:[Vt.bT]})}return xt})()},1697:(ce,ie,St)=>{"use strict";St.d(ie,{N:()=>$});var at=St(9417),Vt=St(177),q=St(9520),Dt=St(1852),m=St(1626),mt=St(779),xt=St(5084),i=St(9631),ut=St(2102),kt=St(4823),gt=St(7482),it=St(2510),Z=St(4438);let $=(()=>{class P{static#t=this.\u0275fac=function(V){return new(V||P)};static#e=this.\u0275mod=Z.$C({type:P});static#i=this.\u0275inj=Z.G2t({providers:[q.h],imports:[Vt.MD,gt.O,at.YN,at.X1,Dt.R,m.q1,kt.uc,i.fS,ut.RG,xt.X6,mt.Q_.forChild(),it.MQ]})}return P})()},9424:(ce,ie,St)=>{"use strict";St.d(ie,{O:()=>xt});var at=St(4438),Vt=St(177),q=St(9417);function Dt(i,ut){if(1&i&&(at.j41(0,"label",5),at.EFF(1),at.k0s()),2&i){const kt=at.XpG();at.R7$(),at.JRh(kt.label)}}function m(i,ut){if(1&i&&(at.j41(0,"span",6),at.EFF(1),at.k0s()),2&i){const kt=at.XpG();at.R7$(),at.JRh(kt.legends)}}function mt(i,ut){if(1&i&&(at.j41(0,"div",7),at.nrm(1,"i",8),at.EFF(2),at.k0s()),2&i){const kt=at.XpG();at.Y8G("ngClass",kt.requiredField?"invalid-feedback":""),at.R7$(2),at.SpI(" ",kt.validatorText," ")}}let xt=(()=>{class i{constructor(){this.label="",this.legends="",this.requiredField=!1,this.validatorText="",this.disabledField=!1,this.binded=new at.bkB}ngOnInit(){}myfunction(kt){this.bind=kt.target.value,this.bind=this.bind.trim();var it=/^[a-zA-Z]*$/.test(this.bind);""!=this.validatorText&&(this.requiredField=""==this.bind||!it),this.binded.emit(this.bind)}static#t=this.\u0275fac=function(gt){return new(gt||i)};static#e=this.\u0275cmp=at.VBU({type:i,selectors:[["app-text-box"]],inputs:{label:"label",placeHolder:"placeHolder",legends:"legends",bind:"bind",requiredField:"requiredField",validatorText:"validatorText",disabledField:"disabledField"},outputs:{binded:"binded"},decls:5,vars:7,consts:[[1,"form-group"],["style","font-size: 16x; font-weight: 600;",4,"ngIf"],["class","pb-4",4,"ngIf"],["type","text",1,"form-control",2,"max-width","375px",3,"ngModelChange","blur","ngModel","placeholder","disabled","ngClass"],["id","validator",3,"ngClass",4,"ngIf"],[2,"font-size","16x","font-weight","600"],[1,"pb-4"],["id","validator",3,"ngClass"],[1,"fas","fa-exclamation-circle"]],template:function(gt,it){1>&&(at.j41(0,"div",0),at.DNE(1,Dt,2,1,"label",1)(2,m,2,1,"span",2),at.j41(3,"input",3),at.mxI("ngModelChange",function($){return at.DH7(it.bind,$)||(it.bind=$),$}),at.bIt("blur",function($){return it.myfunction($)}),at.k0s(),at.DNE(4,mt,3,2,"div",4),at.k0s()),2>&&(at.R7$(),at.Y8G("ngIf",""!=it.label),at.R7$(),at.Y8G("ngIf",""!=it.legends),at.R7$(),at.R50("ngModel",it.bind),at.Y8G("placeholder",it.placeHolder)("disabled",1==it.disabledField)("ngClass",it.requiredField&&""==it.bind?"is-invalid":""),at.R7$(),at.Y8G("ngIf",it.requiredField&&""==it.bind))},dependencies:[Vt.YU,Vt.bT,q.me,q.BC,q.vS],styles:[".formWrapper[_ngcontent-%COMP%] form[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{font-size:500;font-weight:20px}"]})}return i})()},1264:function(ce,ie,St){var at,Vt,q;Vt=typeof window<"u"?window:this,q=function(Vt){"use strict";var q={};function Dt(m,mt,xt,i){m.hasOwnProperty(mt)||(m[mt]=i.apply(null,xt),"function"==typeof CustomEvent&&Vt.dispatchEvent(new CustomEvent("HighchartsM
1oduleLoaded",{detail:{path:mt,module:m[mt]}})))}return Dt(q,"Core/Globals.js",[],function(){var m,mt;return(mt=m||(m={})).SVG_NS="http://www.w3.org/2000/svg",mt.product="Highcharts",mt.version="11.4.0",mt.win=void 0!==Vt?Vt:{},mt.doc=mt.win.document,mt.svg=mt.doc&&mt.doc.createElementNS&&!!mt.doc.createElementNS(mt.SVG_NS,"svg").createSVGRect,mt.userAgent=mt.win.navigator&&mt.win.navigator.userAgent||"",mt.isChrome=-1!==mt.userAgent.indexOf("Chrome"),mt.isFirefox=-1!==mt.userAgent.indexOf("Firefox"),mt.isMS=/(edge|msie|trident)/i.test(mt.userAgent)&&!mt.win.opera,mt.isSafari=!mt.isChrome&&-1!==mt.userAgent.indexOf("Safari"),mt.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(mt.userAgent),mt.isWebKit=-1!==mt.userAgent.indexOf("AppleWebKit"),mt.deg2rad=2*Math.PI/360,mt.hasBidiBug=mt.isFirefox&&4>parseInt(mt.userAgent.split("Firefox/")[1],10),mt.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],mt.noop=function(){},mt.supportsPassiveEvents=function(){let xt=!1;if(!mt.isMS){let i=Object.defineProperty({},"passive",{get:function(){xt=!0}});mt.win.addEventListener&&mt.win.removeEventListener&&(mt.win.addEventListener("testPassive",mt.noop,i),mt.win.removeEventListener("testPassive",mt.noop,i))}return xt}(),mt.charts=[],mt.composed=[],mt.dateFormats={},mt.seriesTypes={},mt.symbolSizes={},mt.chartCount=0,m}),Dt(q,"Core/Utilities.js",[q["Core/Globals.js"]],function(m){let mt,{charts:xt,doc:i,win:ut}=m;function kt(o,r,p,g){let w=r?"Highcharts error":"Highcharts warning";32===o&&(o=`${w}: Deprecated member`);let O=G(o),N=O?`${w} #${o}: www.highcharts.com/errors/${o}/`:o.toString();if(void 0!==g){let x="";O&&(N+="?"),y(g,function(z,K){x+=`\n - ${K}: ${z}`,O&&(N+=encodeURI(K)+"="+encodeURI(z))}),N+=x}M(m,"displayError",{chart:p,code:o,message:N,params:g},function(){if(r)throw Error(N);ut.console&&-1===kt.messages.indexOf(N)&&console.warn(N)}),kt.messages.push(N)}function gt(o,r){return parseInt(o,r||10)}function it(o){return"string"==typeof o}function Z(o){let r=Object.prototype.toString.call(o);return"[object Array]"===r||"[object Array Iterator]"===r}function $(o,r){return!(!o||"object"!=typeof o||r&&Z(o))}function P(o){return $(o)&&"number"==typeof o.nodeType}function Q(o){let r=o&&o.constructor;return!(!$(o,!0)||P(o)||!r||!r.name||"Object"===r.name)}function G(o){return"number"==typeof o&&!isNaN(o)&&o<1/0&&o>-1/0}function V(o){return null!=o}function T(o,r,p){let g,w=it(r)&&!V(p),O=(N,x)=>{V(N)?o.setAttribute(x,N):w?(g=o.getAttribute(x))||"class"!==x||(g=o.getAttribute(x+"Name")):o.removeAttribute(x)};return it(r)?O(p,r):y(r,O),g}function D(o){return Z(o)?o:[o]}function E(o,r){let p;for(p in o||(o={}),r)o[p]=r[p];return o}function b(){let o=arguments,r=o.length;for(let p=0;p<r;p++){let g=o[p];if(null!=g)return g}}function d(o,r){E(o.style,r)}function v(o){return Math.pow(10,Math.floor(Math.log(o)/Math.LN10))}function W(o,r){return o>1e14?o:parseFloat(o.toPrecision(r||14))}(kt||(kt={})).messages=[],Math.easeInOutSine=function(o){return-.5*(Math.cos(Math.PI*o)-1)};let I=Array.prototype.find?function(o,r){return o.find(r)}:function(o,r){let p,g=o.length;for(p=0;p<g;p++)if(r(o[p],p))return o[p]};function y(o,r,p){for(let g in o)Object.hasOwnProperty.call(o,g)&&r.call(p||o[g],o[g],g,o)}function l(o,r,p){function g(N,x){let z=o.removeEventListener;z&&z.call(o,N,x,!1)}function w(N){let x,z;o.nodeName&&(r?(x={})[r]=!0:x=N,y(x,function(K,nt){if(N[nt])for(z=N[nt].length;z--;)g(nt,N[nt][z].fn)}))}let O="function"==typeof o&&o.prototype||o;if(Object.hasOwnProperty.call(O,"hcEvents")){let N=O.hcEvents;r?p?(N[r]=(N[r]||[]).filter(function(z){return p!==z.fn}),g(r,p)):(w(N),N[r]=[]):(w(N),delete O.hcEvents)}}function M(o,r,p,g){if(p=p||{},i.createEvent&&(o.dispatchEvent||o.fireEvent&&o!==m)){let w=i.createEvent("Events");w.initEvent(r,!0,!0),p=E(w,p),o.dispatchEvent?o.dispatchEvent(p):o.fireEvent(r,p)}else if(o.hcEvents){p.target||E(p,{preventDefault:function(){p.defaultPrevented=!0},target:o,type:r});let w=[],O=o,N=!1;for(;O.hcEvents;)Object.hasOwnProperty.call(O,"hcEvents")&&O.hcEvents[r]&&(w.length&&(N=!0),w.unshift.apply(w,O.hcEvents[r])),O=Object.getPrototypeOf(O);N&&w.sort((x,z)=>
1x.order-z.order),w.forEach(x=>{!1===x.fn.call(o,p)&&p.preventDefault()})}g&&!p.defaultPrevented&&g.call(o,p)}y({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(o,r){m[r]=function(p){return kt(32,!1,void 0,{[`Highcharts.${r}`]:`use Array.${o}`}),Array.prototype[o].apply(p,[].slice.call(arguments,1))}});let A=function(){let o=Math.random().toString(36).substring(2,9)+"-",r=0;return function(){return"highcharts-"+(mt?"":o)+r++}}();return ut.jQuery&&(ut.jQuery.fn.highcharts=function(){let o=[].slice.call(arguments);if(this[0])return o[0]?(new(m[it(o[0])?o.shift():"Chart"])(this[0],o[0],o[1]),this):xt[T(this[0],"data-highcharts-chart")]}),{addEvent:function(o,r,p,g={}){let w="function"==typeof o&&o.prototype||o;Object.hasOwnProperty.call(w,"hcEvents")||(w.hcEvents={});let O=w.hcEvents;m.Point&&o instanceof m.Point&&o.series&&o.series.chart&&(o.series.chart.runTrackerClick=!0);let N=o.addEventListener;return N&&N.call(o,r,p,!!m.supportsPassiveEvents&&{passive:void 0===g.passive?-1!==r.indexOf("touch"):g.passive,capture:!1}),O[r]||(O[r]=[]),O[r].push({fn:p,order:"number"==typeof g.order?g.order:1/0}),O[r].sort((z,K)=>z.order-K.order),function(){l(o,r,p)}},arrayMax:function(o){let r=o.length,p=o[0];for(;r--;)o[r]>p&&(p=o[r]);return p},arrayMin:function(o){let r=o.length,p=o[0];for(;r--;)o[r]<p&&(p=o[r]);return p},attr:T,clamp:function(o,r,p){return o>r?o<p?o:p:r},clearTimeout:function(o){V(o)&&clearTimeout(o)},correctFloat:W,createElement:function(o,r,p,g,w){let O=i.createElement(o);return r&&E(O,r),w&&d(O,{padding:"0",border:"none",margin:"0"}),p&&d(O,p),g&&g.appendChild(O),O},css:d,defined:V,destroyObjectProperties:function(o,r,p){y(o,function(g,w){g!==r&&g?.destroy&&g.destroy(),(g?.destroy||!p)&&delete o[w]})},diffObjects:function(o,r,p,g){let w={};return function O(N,x,z,K){let nt=p?x:N;y(N,function(ot,Y){if(!K&&g&&g.indexOf(Y)>-1&&x[Y]){ot=D(ot),z[Y]=[];for(let J=0;J<Math.max(ot.length,x[Y].length);J++)x[Y][J]&&(void 0===ot[J]?z[Y][J]=x[Y][J]:(z[Y][J]={},O(ot[J],x[Y][J],z[Y][J],K+1)))}else $(ot,!0)&&!ot.nodeType?(z[Y]=Z(ot)?[]:{},O(ot,x[Y]||{},z[Y],K+1),0!==Object.keys(z[Y]).length||"colorAxis"===Y&&0===K||delete z[Y]):(N[Y]!==x[Y]||Y in N&&!(Y in x))&&"__proto__"!==Y&&"constructor"!==Y&&(z[Y]=nt[Y])})}(o,r,w,0),w},discardElement:function(o){o&&o.parentElement&&o.parentElement.removeChild(o)},erase:function(o,r){let p=o.length;for(;p--;)if(o[p]===r){o.splice(p,1);break}},error:kt,extend:E,extendClass:function(o,r){let p=function(){};return E(p.prototype=new o,r),p},find:I,fireEvent:M,getClosestDistance:function(o,r){let p,g,w,O,N=!r;return o.forEach(x=>{if(x.length>1)for(O=g=x.length-1;O>0;O--)(w=x[O]-x[O-1])<0&&!N?(r?.(),r=void 0):w&&(void 0===p||w<p)&&(p=w)}),p},getMagnitude:v,getNestedProperty:function(o,r){let p=o.split(".");for(;p.length&&V(r);){let g=p.shift();if(void 0===g||"__proto__"===g)return;if("this"===g){let O;return $(r)&&(O=r["@this"]),O??r}let w=r[g];if(!V(w)||"function"==typeof w||"number"==typeof w.nodeType||w===ut)return;r=w}return r},getStyle:function o(r,p,g){let w;if("width"===p){let N=Math.min(r.offsetWidth,r.scrollWidth),x=r.getBoundingClientRect&&r.getBoundingClientRect().width;return x<N&&x>=N-1&&(N=Math.floor(x)),Math.max(0,N-(o(r,"padding-left",!0)||0)-(o(r,"padding-right",!0)||0))}if("height"===p)return Math.max(0,Math.min(r.offsetHeight,r.scrollHeight)-(o(r,"padding-top",!0)||0)-(o(r,"padding-bottom",!0)||0));let O=ut.getComputedStyle(r,void 0);return O&&(w=O.getPropertyValue(p),b(g,"opacity"!==p)&&(w=gt(w))),w},inArray:function(o,r,p){return kt(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),r.indexOf(o,p)},insertItem:function(o,r){let p,g=o.options.index,w=r.length;for(p=o.options.isInternal?w:0;p<w+1;p++)if(!r[p]||G(g)&&g<b(r[p].options.index,r[p]._i)||r[p].options.isInternal){r.splice(p,0,o);break}return p},isArray:Z,isClass:Q,isDOMElement:P,isFunction:function(o){return"function"==typeof o},isNumber:G,isObject:$,isString:it,keys:function(o){return kt(32,!1,void 0,{"Highcharts.keys":"use Object.keys"}),Object.keys(o)},merge:function(){let o,r=arguments,p={},g=function(O,N){return"object"!=typeof O&&(O={}),y(N,function(x,z){"__proto__"!==z&&"constructor"!==z&&(O[z]=!$(x,!0)||Q(x)||P(x)?N[z]:g(O[z]||{},x))}),O};!0===r[0]&&(p=r[1],r=Array.prototype.slice.call(r,2));let w=r.length;for(o=0;o<w;o++)p=g(p,r[o]);return p},normalizeTickInterval:function(o,r,p,g,w){let O,N=o,x=o/(p=b(p,v(
1o)));for(!r&&(r=w?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===g&&(1===p?r=r.filter(function(z){return z%1==0}):p<=.1&&(r=[1/p]))),O=0;O<r.length&&(N=r[O],(!w||!(N*p>=o))&&(w||!(x<=(r[O]+(r[O+1]||r[O]))/2)));O++);return W(N*p,-Math.round(Math.log(.001)/Math.LN10))},objectEach:y,offset:function(o){let r=i.documentElement,p=o.parentElement||o.parentNode?o.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:p.top+(ut.pageYOffset||r.scrollTop)-(r.clientTop||0),left:p.left+(ut.pageXOffset||r.scrollLeft)-(r.clientLeft||0),width:p.width,height:p.height}},pad:function(o,r,p){return Array((r||2)+1-String(o).replace("-","").length).join(p||"0")+o},pick:b,pInt:gt,pushUnique:function(o,r){return 0>o.indexOf(r)&&!!o.push(r)},relativeLength:function(o,r,p){return/%$/.test(o)?r*parseFloat(o)/100+(p||0):parseFloat(o)},removeEvent:l,replaceNested:function(o,...r){let p,g;do{for(g of(p=o,r))o=o.replace(g[0],g[1])}while(o!==p);return o},splat:D,stableSort:function(o,r){let p,g,w=o.length;for(g=0;g<w;g++)o[g].safeI=g;for(o.sort(function(O,N){return 0===(p=r(O,N))?O.safeI-N.safeI:p}),g=0;g<w;g++)delete o[g].safeI},syncTimeout:function(o,r,p){return r>0?setTimeout(o,r,p):(o.call(0,p),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:A,useSerialIds:function(o){return mt=b(o,mt)},wrap:function(o,r,p){let g=o[r];o[r]=function(){let w=arguments,O=this;return p.apply(this,[function(){return g.apply(O,arguments.length?arguments:w)}].concat([].slice.call(arguments)))}}}}),Dt(q,"Core/Chart/ChartDefaults.js",[],function(){return{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"}}),Dt(q,"Core/Color/Palettes.js",[],function(){return{colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"]}}),Dt(q,"Core/Time.js",[q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt){let{win:xt}=m,{defined:i,error:ut,extend:kt,isNumber:gt,isObject:it,merge:Z,objectEach:$,pad:P,pick:Q,splat:G,timeUnits:V}=mt,T=m.isSafari&&xt.Intl&&xt.Intl.DateTimeFormat.prototype.formatRange,D=m.isSafari&&xt.Intl&&!xt.Intl.DateTimeFormat.prototype.formatRange;class E{constructor(d){this.options={},this.useUTC=!1,this.variableTimezone=!1,this.Date=xt.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(d)}get(d,v){if(this.variableTimezone||this.timezoneOffset){let W=v.getTime(),I=W-this.getTimezoneOffset(v);v.setTime(I);let y=v["getUTC"+d]();return v.setTime(W),y}return this.useUTC?v["getUTC"+d]():v["get"+d]()}set(d,v,W){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===d||"Seconds"===d||"Minutes"===d&&this.getTimezoneOffset(v)%36e5==0)return v["setUTC"+d](W);let I=this.getTimezoneOffset(v),y=v.getTime()-I;v.setTime(y),v["setUTC"+d](W);let l=this.getTimezoneOffset(v);return y=v.getTime()+l,v.setTime(y)}return this.useUTC||T&&"FullYear"===d?v["setUTC"+d](W):v["set"+d](W)}update(d={}){let v=Q(d.useUTC,!0);this.options=d=Z(!0,this.options,d),this.Date=d.Date||xt.Date||Date,this.useUTC=v,this.timezoneOffset=v&&d.timezoneOffset||void 0,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=v&&!(!d.getTimezoneOffset&&!d.timezone)}makeTime(d,v,W,I,y,l){let M,A,o;return this.useUTC?(M=this.Date.UTC.apply(0,arguments),A=this.getTimezoneOffset(M),M+=A,A!==(o=this.getTimezoneOffset(M))?M+=o-A:A-36e5!==this.getTimezoneOffset(M-36e5)||D||(M-=36e5)):M=new this.Date(d,v,Q(W,1),Q(I,0),Q(y,0),Q(l,0)).getTime(),M}timezoneOffsetFunction(){let d=this,v=this.options,W=v.getTimezoneOffset;return this.useUTC?v.timezone?I=>{try{let y=`shortOffset,${v.timezone||""}`,[l,M,A,o,r=0]=(E.formatCache[y]=E.formatCache[y]||Intl.DateTimeFormat("en",{timeZone:v.timezone,timeZoneName:"shortOffset"})).format(I).split(/(GMT|:)/).map(Number),p=-36e5*(A+r/60);if(gt(p))return p}catch{ut(34)}return 0}:this.useUTC&&W?I=>6e4*W(I.valueOf()):()=>6e4*(d.timezoneOffset||0):I=>6e4*new Date(I.toString()).getTimezoneOffset()}dateFormat(d,v,W){if(!i(v)||isNaN(v))return m.defaultOptions.lang&&m.defaultOptions.lang.invali
1dDate||"";d=Q(d,"%Y-%m-%d %H:%M:%S");let I=this,y=new this.Date(v),l=this.get("Hours",y),M=this.get("Day",y),A=this.get("Date",y),o=this.get("Month",y),r=this.get("FullYear",y),p=m.defaultOptions.lang,g=p&&p.weekdays,w=p&&p.shortWeekdays;return $(kt({a:w?w[M]:g[M].substr(0,3),A:g[M],d:P(A),e:P(A,2," "),w:M,b:p.shortMonths[o],B:p.months[o],m:P(o+1),o:o+1,y:r.toString().substr(2,2),Y:r,H:P(l),k:l,I:P(l%12||12),l:l%12||12,M:P(this.get("Minutes",y)),p:l<12?"AM":"PM",P:l<12?"am":"pm",S:P(this.get("Seconds",y)),L:P(Math.floor(v%1e3),3)},m.dateFormats),function(O,N){for(;-1!==d.indexOf("%"+N);)d=d.replace("%"+N,"function"==typeof O?O.call(I,v):O)}),W?d.substr(0,1).toUpperCase()+d.substr(1):d}resolveDTLFormat(d){return it(d,!0)?d:{main:(d=G(d))[0],from:d[1],to:d[2]}}getTimeTicks(d,v,W,I){let y,l,M,A,o=this,p=[],g={},w=new(0,o.Date)(v),O=d.unitRange,N=d.count||1;if(I=Q(I,1),i(v)){o.set("Milliseconds",w,O>=V.second?0:N*Math.floor(o.get("Milliseconds",w)/N)),O>=V.second&&o.set("Seconds",w,O>=V.minute?0:N*Math.floor(o.get("Seconds",w)/N)),O>=V.minute&&o.set("Minutes",w,O>=V.hour?0:N*Math.floor(o.get("Minutes",w)/N)),O>=V.hour&&o.set("Hours",w,O>=V.day?0:N*Math.floor(o.get("Hours",w)/N)),O>=V.day&&o.set("Date",w,O>=V.month?1:Math.max(1,N*Math.floor(o.get("Date",w)/N))),O>=V.month&&(o.set("Month",w,O>=V.year?0:N*Math.floor(o.get("Month",w)/N)),l=o.get("FullYear",w)),O>=V.year&&(l-=l%N,o.set("FullYear",w,l)),O===V.week&&(A=o.get("Day",w),o.set("Date",w,o.get("Date",w)-A+I+(A<I?-7:0))),l=o.get("FullYear",w);let x=o.get("Month",w),z=o.get("Date",w),K=o.get("Hours",w);v=w.getTime(),(o.variableTimezone||!o.useUTC)&&i(W)&&(M=W-v>4*V.month||o.getTimezoneOffset(v)!==o.getTimezoneOffset(W));let nt=w.getTime();for(y=1;nt<W;)p.push(nt),O===V.year?nt=o.makeTime(l+y*N,0):O===V.month?nt=o.makeTime(l,x+y*N):!M||O!==V.day&&O!==V.week?M&&O===V.hour&&N>1?nt=o.makeTime(l,x,z,K+y*N):nt+=O*N:nt=o.makeTime(l,x,z+y*N*(O===V.day?1:7)),y++;p.push(nt),O<=V.hour&&p.length<1e4&&p.forEach(function(ot){ot%18e5==0&&"000000000"===o.dateFormat("%H%M%S%L",ot)&&(g[ot]="day")})}return p.info=kt(d,{higherRanks:g,totalRange:O*N}),p}getDateFormat(d,v,W,I){let y=this.dateFormat("%m-%d %H:%M:%S.%L",v),l="01-01 00:00:00.000",M={millisecond:15,second:12,minute:9,hour:6,day:3},A="millisecond",o=A;for(A in V){if(d===V.week&&+this.dateFormat("%w",v)===W&&y.substr(6)===l.substr(6)){A="week";break}if(V[A]>d){A=o;break}if(M[A]&&y.substr(M[A])!==l.substr(M[A]))break;"week"!==A&&(o=A)}return this.resolveDTLFormat(I[A]).main}}return E.formatCache={},E}),Dt(q,"Core/Defaults.js",[q["Core/Chart/ChartDefaults.js"],q["Core/Globals.js"],q["Core/Color/Palettes.js"],q["Core/Time.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut){let{isTouchDevice:kt,svg:gt}=mt,{merge:it}=ut,Z={colors:xt.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:{},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:m,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",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:gt,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:kt?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"}};Z.chart.styledMode=!1;let $=new i(Z.time);return{defaultOptions:Z,defaultTime:$,getOptions:function(){return Z}
1,setOptions:function(P){return it(!0,Z,P),(P.time||P.global)&&(mt.time?mt.time.update(it(Z.global,Z.time,P.global,P.time)):mt.time=$),Z}}}),Dt(q,"Core/Color/Color.js",[q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt){let{isNumber:xt,merge:i,pInt:ut}=mt;class kt{static parse(it){return it?new kt(it):kt.None}constructor(it){let Z,$,P,Q;this.rgba=[NaN,NaN,NaN,NaN],this.input=it;let G=m.Color;if(G&&G!==kt)return new G(it);if("object"==typeof it&&void 0!==it.stops)this.stops=it.stops.map(V=>new kt(V[1]));else if("string"==typeof it){if(this.input=it=kt.names[it.toLowerCase()]||it,"#"===it.charAt(0)){let V=it.length,T=parseInt(it.substr(1),16);7===V?$=[(16711680&T)>>16,(65280&T)>>8,255&T,1]:4===V&&($=[(3840&T)>>4|(3840&T)>>8,(240&T)>>4|240&T,(15&T)<<4|15&T,1])}if(!$)for(P=kt.parsers.length;P--&&!$;)(Z=(Q=kt.parsers[P]).regex.exec(it))&&($=Q.parse(Z))}$&&(this.rgba=$)}get(it){let Z=this.input,$=this.rgba;if("object"==typeof Z&&void 0!==this.stops){let P=i(Z);return P.stops=[].slice.call(P.stops),this.stops.forEach((Q,G)=>{P.stops[G]=[P.stops[G][0],Q.get(it)]}),P}return $&&xt($[0])?"rgb"===it||!it&&1===$[3]?"rgb("+$[0]+","+$[1]+","+$[2]+")":"a"===it?`${$[3]}`:"rgba("+$.join(",")+")":Z}brighten(it){let Z=this.rgba;if(this.stops)this.stops.forEach(function($){$.brighten(it)});else if(xt(it)&&0!==it)for(let $=0;$<3;$++)Z[$]+=ut(255*it),Z[$]<0&&(Z[$]=0),Z[$]>255&&(Z[$]=255);return this}setOpacity(it){return this.rgba[3]=it,this}tweenTo(it,Z){let $=this.rgba,P=it.rgba;if(!xt($[0])||!xt(P[0]))return it.input||"none";let Q=1!==P[3]||1!==$[3];return(Q?"rgba(":"rgb(")+Math.round(P[0]+($[0]-P[0])*(1-Z))+","+Math.round(P[1]+($[1]-P[1])*(1-Z))+","+Math.round(P[2]+($[2]-P[2])*(1-Z))+(Q?","+(P[3]+($[3]-P[3])*(1-Z)):"")+")"}}return kt.names={white:"#ffffff",black:"#000000"},kt.parsers=[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(gt){return[ut(gt[1]),ut(gt[2]),ut(gt[3]),parseFloat(gt[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(gt){return[ut(gt[1]),ut(gt[2]),ut(gt[3]),1]}}],kt.None=new kt(""),kt}),Dt(q,"Core/Animation/Fx.js",[q["Core/Color/Color.js"],q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{parse:i}=m,{win:ut}=mt,{isNumber:kt,objectEach:gt}=xt;class it{constructor($,P,Q){this.pos=NaN,this.options=P,this.elem=$,this.prop=Q}dSetter(){let $=this.paths,P=$&&$[0],Q=$&&$[1],G=this.now||0,V=[];if(1!==G&&P&&Q)if(P.length===Q.length&&G<1)for(let T=0;T<Q.length;T++){let D=P[T],E=Q[T],b=[];for(let d=0;d<E.length;d++){let v=D[d],W=E[d];b[d]=kt(v)&&kt(W)&&("A"!==E[0]||4!==d&&5!==d)?v+G*(W-v):W}V.push(b)}else V=Q;else V=this.toD||[];this.elem.attr("d",V,void 0,!0)}update(){let $=this.elem,P=this.prop,Q=this.now,G=this.options.step;this[P+"Setter"]?this[P+"Setter"]():$.attr?$.element&&$.attr(P,Q,null,!0):$.style[P]=Q+this.unit,G&&G.call($,Q,this)}run($,P,Q){let G=this,V=G.options,T=function(b){return!T.stopped&&G.step(b)},D=ut.requestAnimationFrame||function(b){setTimeout(b,13)},E=function(){for(let b=0;b<it.timers.length;b++)it.timers[b]()||it.timers.splice(b--,1);it.timers.length&&D(E)};$!==P||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=$,this.end=P,this.unit=Q,this.now=this.start,this.pos=0,T.elem=this.elem,T.prop=this.prop,T()&&1===it.timers.push(T)&&D(E)):(delete V.curAnim[this.prop],V.complete&&0===Object.keys(V.curAnim).length&&V.complete.call(this.elem))}step($){let P,Q,G=+new Date,V=this.options,T=this.elem,D=V.complete,E=V.duration,b=V.curAnim;return T.attr&&!T.element?P=!1:$||G>=E+this.startTime?(this.now=this.end,this.pos=1,this.update(),b[this.prop]=!0,Q=!0,gt(b,function(d){!0!==d&&(Q=!1)}),Q&&D&&D.call(T),P=!1):(this.pos=V.easing((G-this.startTime)/E),this.now=this.start+(this.end-this.start)*this.pos,this.update(),P=!0),P}initPath($,P,Q){let b,d,v,W,G=$.startX,V=$.endX,T=Q.slice(),D=$.isArea,E=D?2:1,I=P&&P.slice();if(!I)return[T,T];function y(M,A){for(;M.length<d;){let o=M[0],r=A[d-M.length];if(r&&"M"===o[0]&&(M[0]="C"===r[0]?["C",o[1],o[2],o[1],o[2],o[1],o[2]]:["L",o[1],o[2]]),M.unshift(o),D){let p=M.pop();M.push(M[M.length-1],p)}}}function l(M){for(;M.length<d;){let A=M[Math.floor(M.length/E)-1].slice();if("C"===A[0]&&(A[1]=A[5],A[2]=A[6]),D){let o=M[Math.floor(M.length/E)].slice();M.splice(M.length/2,0,A,o)}else M.push(A)}}
1if(G&&V&&V.length){for(v=0;v<G.length;v++){if(G[v]===V[0]){b=v;break}if(G[0]===V[V.length-G.length+v]){b=v,W=!0;break}if(G[G.length-1]===V[V.length-G.length+v]){b=G.length-v;break}}void 0===b&&(I=[])}return I.length&&kt(b)&&(d=T.length+b*E,W?(y(I,T),l(T)):(y(T,I),l(I))),[I,T]}fillSetter(){it.prototype.strokeSetter.apply(this,arguments)}strokeSetter(){this.elem.attr(this.prop,i(this.start).tweenTo(i(this.end),this.pos),void 0,!0)}}return it.timers=[],it}),Dt(q,"Core/Animation/AnimationUtilities.js",[q["Core/Animation/Fx.js"],q["Core/Utilities.js"]],function(m,mt){let{defined:xt,getStyle:i,isArray:ut,isNumber:kt,isObject:gt,merge:it,objectEach:Z,pick:$}=mt;function P(G){return gt(G)?it({duration:500,defer:0},G):{duration:G?500:0,defer:0}}function Q(G,V){let T=m.timers.length;for(;T--;)m.timers[T].elem!==G||V&&V!==m.timers[T].prop||(m.timers[T].stopped=!0)}return{animate:function(G,V,T){let D,b,d,v,E="";gt(T)||(v=arguments,T={duration:v[2],easing:v[3],complete:v[4]}),kt(T.duration)||(T.duration=400),T.easing="function"==typeof T.easing?T.easing:Math[T.easing]||Math.easeInOutSine,T.curAnim=it(V),Z(V,function(W,I){Q(G,I),d=new m(G,T,I),b=void 0,"d"===I&&ut(V.d)?(d.paths=d.initPath(G,G.pathArray,V.d),d.toD=V.d,D=0,b=1):G.attr?D=G.attr(I):(D=parseFloat(i(G,I))||0,"opacity"!==I&&(E="px")),b||(b=W),"string"==typeof b&&b.match("px")&&(b=b.replace(/px/g,"")),d.run(D,b,E)})},animObject:P,getDeferredAnimation:function(G,V,T){let D=P(V),b=0,d=0;return(T?[T]:G.series).forEach(v=>{let W=P(v.options.animation);b=gt(V)&&xt(V.defer)?D.defer:Math.max(b,W.duration+W.defer),d=Math.min(D.duration,W.duration)}),G.renderer.forExport&&(b=0),{defer:Math.max(0,b-d),duration:Math.min(b,d)}},setAnimation:function(G,V){V.renderer.globalAnimation=$(G,V.options.chart.animation,!0)},stop:Q}}),Dt(q,"Core/Renderer/HTML/AST.js",[q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt){let{SVG_NS:xt,win:i}=m,{attr:ut,createElement:kt,css:gt,error:it,isFunction:Z,isString:$,objectEach:P,splat:Q}=mt,{trustedTypes:G}=i,V=G&&Z(G.createPolicy)&&G.createPolicy("highcharts",{createHTML:b=>b}),T=V?V.createHTML(""):"",D=function(){try{return!!(new DOMParser).parseFromString(T,"text/html")}catch{return!1}}();class E{static filterUserAttributes(d){return P(d,(v,W)=>{let I=!0;-1===E.allowedAttributes.indexOf(W)&&(I=!1),-1!==["background","dynsrc","href","lowsrc","src"].indexOf(W)&&(I=$(v)&&E.allowedReferences.some(y=>0===v.indexOf(y))),I||(it(33,!1,void 0,{"Invalid attribute in config":`${W}`}),delete d[W]),$(v)&&d[W]&&(d[W]=v.replace(/</g,"<"))}),d}static parseStyle(d){return d.split(";").reduce((v,W)=>{let I=W.split(":").map(l=>l.trim()),y=I.shift();return y&&I.length&&(v[y.replace(/-([a-z])/g,l=>l[1].toUpperCase())]=I.join(":")),v},{})}static setElementHTML(d,v){d.innerHTML=E.emptyHTML,v&&new E(v).addToDOM(d)}constructor(d){this.nodes="string"==typeof d?this.parseMarkup(d):d}addToDOM(d){return function v(W,I){let y;return Q(W).forEach(function(l){let M,A=l.tagName,o=l.textContent?m.doc.createTextNode(l.textContent):void 0,r=E.bypassHTMLFiltering;if(A)if("#text"===A)M=o;else if(-1!==E.allowedTags.indexOf(A)||r){let g=m.doc.createElementNS("svg"===A?xt:I.namespaceURI||xt,A),w=l.attributes||{};P(l,function(O,N){"tagName"!==N&&"attributes"!==N&&"children"!==N&&"style"!==N&&"textContent"!==N&&(w[N]=O)}),ut(g,r?w:E.filterUserAttributes(w)),l.style&>(g,l.style),o&&g.appendChild(o),v(l.children||[],g),M=g}else it(33,!1,void 0,{"Invalid tagName in config":A});M&&I.appendChild(M),y=M}),y}(this.nodes,d)}parseMarkup(d){let v,W=[];if(d=d.trim().replace(/ style=(["'])/g," data-style=$1"),D)v=(new DOMParser).parseFromString(V?V.createHTML(d):d,"text/html");else{let y=kt("div");y.innerHTML=d,v={body:y}}let I=(y,l)=>{let M=y.nodeName.toLowerCase(),A={tagName:M};"#text"===M&&(A.textContent=y.textContent||"");let o=y.attributes;if(o){let r={};[].forEach.call(o,p=>{"data-style"===p.name?A.style=E.parseStyle(p.value):r[p.name]=p.value}),A.attributes=r}if(y.childNodes.length){let r=[];[].forEach.call(y.childNodes,p=>{I(p,r)}),r.length&&(A.children=r)}l.push(A)};return[].forEach.call(v.body.childNodes,y=>I(y,W)),W}}return E.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","markerHeight","markerWidth","offset","opacity","orient","padding","paddingLeft","paddingRight","patternUnits","r","refX","refY","role","scope","slope","src","startOffset","stdDeviation","stroke","stroke-linecap","stroke-width","style","tableValues","result","rowspan","
1summary","target","tabindex","text-align","text-anchor","textAnchor","textLength","title","type","valign","width","x","x1","x2","xlink:href","y","y1","y2","zIndex"],E.allowedReferences=["https://","http://","mailto:","/","../","./","#"],E.allowedTags=["a","abbr","b","br","button","caption","circle","clipPath","code","dd","defs","div","dl","dt","em","feComponentTransfer","feDropShadow","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feOffset","feMerge","feMergeNode","filter","h1","h2","h3","h4","h5","h6","hr","i","img","li","linearGradient","marker","ol","p","path","pattern","pre","rect","small","span","stop","strong","style","sub","sup","svg","table","text","textPath","thead","title","tbody","tspan","td","th","tr","u","ul","#text"],E.emptyHTML=T,E.bypassHTMLFiltering=!1,E}),Dt(q,"Core/Templating.js",[q["Core/Defaults.js"],q["Core/Utilities.js"]],function(m,mt){let{defaultOptions:xt,defaultTime:i}=m,{extend:ut,getNestedProperty:kt,isArray:gt,isNumber:it,isObject:Z,pick:$,pInt:P}=mt,Q={add:(T,D)=>T+D,divide:(T,D)=>0!==D?T/D:"",eq:(T,D)=>T==D,each:function(T){let D=arguments[arguments.length-1];return!!gt(T)&&T.map((E,b)=>G(D.body,ut(Z(E)?E:{"@this":E},{"@index":b,"@first":0===b,"@last":b===T.length-1}))).join("")},ge:(T,D)=>T>=D,gt:(T,D)=>T>D,if:T=>!!T,le:(T,D)=>T<=D,lt:(T,D)=>T<D,multiply:(T,D)=>T*D,ne:(T,D)=>T!=D,subtract:(T,D)=>T-D,unless:T=>!T};function G(T="",D,E){let o,r,g,b=/\{([a-zA-Z0-9\:\.\,;\-\/<>%_@"'= #\(\)]+)\}/g,d=/\(([a-zA-Z0-9\:\.\,;\-\/<>%_@"'= ]+)\)/g,v=[],W=/f$/,I=/\.([0-9])/,y=xt.lang,l=E&&E.time||i,M=E&&E.numberFormatter||V,A=(w="")=>{let O;return"true"===w||"false"!==w&&((O=Number(w)).toString()===w?O:kt(w,D))},p=0;for(;null!==(o=b.exec(T));){let w=d.exec(o[1]);w&&(o=w,g=!0),r&&r.isBlock||(r={ctx:D,expression:o[1],find:o[0],isBlock:"#"===o[1].charAt(0),start:o.index,startInner:o.index+o[0].length,length:o[0].length});let O=o[1].split(" ")[0].replace("#","");Q[O]&&(r.isBlock&&O===r.fn&&p++,r.fn||(r.fn=O));let N="else"===o[1];if(r.isBlock&&r.fn&&(o[1]===`/${r.fn}`||N))if(p)!N&&p--;else{let x=r.startInner,z=T.substr(x,o.index-x);void 0===r.body?(r.body=z,r.startInner=o.index+o[0].length):r.elseBody=z,r.find+=z+o[0],N||(v.push(r),r=void 0)}else r.isBlock||v.push(r);if(w&&!r?.isBlock)break}return v.forEach(w=>{let O,N,{body:x,elseBody:z,expression:K,fn:nt}=w;if(nt){let ot=[w],Y=K.split(" ");for(N=Q[nt].length;N--;)ot.unshift(A(Y[N+1]));O=Q[nt].apply(D,ot),w.isBlock&&"boolean"==typeof O&&(O=G(O?x:z,D))}else{let ot=K.split(":");if(O=A(ot.shift()||""),ot.length&&"number"==typeof O){let Y=ot.join(":");if(W.test(Y)){let J=parseInt((Y.match(I)||["","-1"])[1],10);null!==O&&(O=M(O,J,y.decimalPoint,Y.indexOf(",")>-1?y.thousandsSep:""))}else O=l.dateFormat(Y,O)}}T=T.replace(w.find,$(O,""))}),g?G(T,D,E):T}function V(T,D,E,b){let d,v;D=+D;let W=xt.lang,I=((T=+T||0).toString().split(".")[1]||"").split("e")[0].length,y=T.toString().split("e"),l=D;-1===D?D=Math.min(I,20):it(D)?D&&y[1]&&y[1]<0&&((v=D+ +y[1])>=0?(y[0]=(+y[0]).toExponential(v).split("e")[0],D=v):(y[0]=y[0].split(".")[0]||0,T=D<20?(y[0]*Math.pow(10,y[1])).toFixed(D):0,y[1]=0)):D=2;let M=(Math.abs(y[1]?y[0]:T)+Math.pow(10,-Math.max(D,I)-1)).toFixed(D),A=String(P(M)),o=A.length>3?A.length%3:0;return E=$(E,W.decimalPoint),b=$(b,W.thousandsSep),d=(T<0?"-":"")+(o?A.substr(0,o)+b:""),0>+y[1]&&!l?d="0":d+=A.substr(o).replace(/(\d{3})(?=\d)/g,"$1"+b),D&&(d+=E+M.slice(-D)),y[1]&&0!=+d&&(d+="e"+y[1]),d}return{dateFormat:function(T,D,E){return i.dateFormat(T,D,E)},format:G,helpers:Q,numberFormat:V}}),Dt(q,"Core/Renderer/RendererRegistry.js",[q["Core/Globals.js"]],function(m){var mt,xt;let i;return(xt=mt||(mt={})).rendererTypes={},xt.getRendererType=function(ut=i){return xt.rendererTypes[ut]||xt.rendererTypes[i]},xt.registerRendererType=function(ut,kt,gt){xt.rendererTypes[ut]=kt,(!i||gt)&&(i=ut,m.Renderer=kt)},mt}),Dt(q,"Core/Renderer/RendererUtilities.js",[q["Core/Utilities.js"]],function(m){var mt;let{clamp:xt,pick:i,pushUnique:ut,stableSort:kt}=m;return(mt||(mt={})).distribute=function gt(it,Z,$){let b,d,v,I,y,M,P=it,Q=P.reducedLen||Z,G=(A,o)=>A.target-o.target,V=[],T=it.length,D=[],E=V.push,W=!0,l=0;for(b=T;b--;)l+=it[b].size;if(l>Q){for(kt(it,(A,o)=>(o.rank||0)-(A.rank||0)),v=(M=it[0].rank===it[it.length-1].rank)?T/2:-1,d=M?v:T-1;v&&l>Q;)I=it[b=Math.floor(d)],ut(D,b)&&(l-=I.size),d+=v,M&&d>=it.length&&(v/=2,d=v);D.sort((A,o)=>
1o-A).forEach(A=>E.apply(V,it.splice(A,1)))}for(kt(it,G),it=it.map(A=>({size:A.size,targets:[A.target],align:i(A.align,.5)}));W;){for(b=it.length;b--;)I=it[b],y=(Math.min.apply(0,I.targets)+Math.max.apply(0,I.targets))/2,I.pos=xt(y-I.size*I.align,0,Z-I.size);for(b=it.length,W=!1;b--;)b>0&&it[b-1].pos+it[b-1].size>it[b].pos&&(it[b-1].size+=it[b].size,it[b-1].targets=it[b-1].targets.concat(it[b].targets),it[b-1].align=.5,it[b-1].pos+it[b-1].size>Z&&(it[b-1].pos=Z-it[b-1].size),it.splice(b,1),W=!0)}return E.apply(P,V),b=0,it.some(A=>{let o=0;return(A.targets||[]).some(()=>(P[b].pos=A.pos+o,void 0!==$&&Math.abs(P[b].pos-P[b].target)>$?(P.slice(0,b+1).forEach(r=>delete r.pos),P.reducedLen=(P.reducedLen||Z)-.1*Z,P.reducedLen>.1*Z&>(P,Z,$),!0):(o+=P[b].size,b++,!1)))}),kt(P,G),P},mt}),Dt(q,"Core/Renderer/SVG/SVGElement.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Color/Color.js"],q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt,xt,i){let{animate:ut,animObject:kt,stop:gt}=m,{deg2rad:it,doc:Z,svg:$,SVG_NS:P,win:Q}=xt,{addEvent:G,attr:V,createElement:T,css:D,defined:E,erase:b,extend:d,fireEvent:v,isArray:W,isFunction:I,isObject:y,isString:l,merge:M,objectEach:A,pick:o,pInt:r,replaceNested:p,syncTimeout:g,uniqueKey:w}=i;class O{_defaultGetter(x){let z=o(this[x+"Value"],this[x],this.element?this.element.getAttribute(x):null,0);return/^[\-0-9\.]+$/.test(z)&&(z=parseFloat(z)),z}_defaultSetter(x,z,K){K.setAttribute(z,x)}add(x){let z,K=this.renderer,nt=this.element;return x&&(this.parentGroup=x),void 0!==this.textStr&&"text"===this.element.nodeName&&K.buildText(this),this.added=!0,(!x||x.handleZ||this.zIndex)&&(z=this.zIndexSetter()),z||(x?x.element:K.box).appendChild(nt),this.onAdd&&this.onAdd(),this}addClass(x,z){let K=z?"":this.attr("class")||"";return(x=(x||"").split(/ /g).reduce(function(nt,ot){return-1===K.indexOf(ot)&&nt.push(ot),nt},K?[K]:[]).join(" "))!==K&&this.attr("class",x),this}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(x,z,K,nt=!0){let ot,Y,J,f,F,B={},s=this.renderer,_=s.alignedObjects;x?(this.alignOptions=x,this.alignByTranslate=z,(!K||l(K))&&(this.alignTo=J=K||"renderer",b(_,this),_.push(this),K=void 0)):(x=this.alignOptions,z=this.alignByTranslate,J=this.alignTo),K=o(K,s[J],s);let h=x.align,C=x.verticalAlign;return ot=(K.x||0)+(x.x||0),Y=(K.y||0)+(x.y||0),"right"===h?f=1:"center"===h&&(f=2),f&&(ot+=(K.width-(x.width||0))/f),B[z?"translateX":"x"]=Math.round(ot),"bottom"===C?F=1:"middle"===C&&(F=2),F&&(Y+=(K.height-(x.height||0))/F),B[z?"translateY":"y"]=Math.round(Y),nt&&(this[this.placed?"animate":"attr"](B),this.placed=!0),this.alignAttr=B,this}alignSetter(x){let z={left:"start",center:"middle",right:"end"};z[x]&&(this.alignValue=x,this.element.setAttribute("text-anchor",z[x]))}animate(x,z,K){let nt=kt(o(z,this.renderer.globalAnimation,!0)),ot=nt.defer;return Z.hidden&&(nt.duration=0),0!==nt.duration?(K&&(nt.complete=K),g(()=>{this.element&&ut(this,x,nt)},ot)):(this.attr(x,void 0,K||nt.complete),A(x,function(Y,J){nt.step&&nt.step.call(this,Y,{prop:J,pos:1,elem:this})},this)),this}applyTextOutline(x){let z=this.element;-1!==x.indexOf("contrast")&&(x=x.replace(/contrast/g,this.renderer.getContrast(z.style.fill)));let K=x.split(" "),nt=K[K.length-1],ot=K[0];if(ot&&"none"!==ot&&xt.svg){this.fakeTS=!0,ot=ot.replace(/(^[\d\.]+)(.*?)$/g,function(B,s,_){return 2*Number(s)+_}),this.removeTextOutline();let Y=Z.createElementNS(P,"tspan");V(Y,{class:"highcharts-text-outline",fill:nt,stroke:nt,"stroke-width":ot,"stroke-linejoin":"round"});let J=z.querySelector("textPath")||z;[].forEach.call(J.childNodes,B=>{let s=B.cloneNode(!0);s.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(_=>s.removeAttribute(_)),Y.appendChild(s)});let f=0;[].forEach.call(J.querySelectorAll("text tspan"),B=>{f+=Number(B.getAttribute("dy"))});let F=Z.createElementNS(P,"tspan");F.textContent="\u200b",V(F,{x:Number(z.getAttribute("x")),dy:-f}),Y.appendChild(F),J.insertBefore(Y,J.firstChild)}}attr(x,z,K,nt){let J,f,B,ot=this.element,Y=O.symbolCustomAttribs,F=this;return"string"==typeof x&&void 0!==z&&(J=x,(x={})[J]=z),"string"==typeof x?F=(this[x+"Getter"]||this._defaultGetter).call(this,x,ot):(A(x,function(s,_){B=!1,nt||gt(this,_),this.symbolName&&-1!==Y.indexOf(_)&&(f||(this.symbolAttr(x),f=!0),B=!0),this.rotation&&("x"===_||"
1y"===_)&&(this.doTransform=!0),B||(this[_+"Setter"]||this._defaultSetter).call(this,s,_,ot)},this),this.afterSetters()),K&&K.call(this),F}clip(x){if(x&&!x.clipPath){let z=w()+"-",K=this.renderer.createElement("clipPath").attr({id:z}).add(this.renderer.defs);d(x,{clipPath:K,id:z,count:0}),x.add(K)}return this.attr("clip-path",x?`url(${this.renderer.url}#${x.id})`:"none")}crisp(x,z){let K=Math.round(z=z||x.strokeWidth||0)%2/2;return x.x=Math.floor(x.x||this.x||0)+K,x.y=Math.floor(x.y||this.y||0)+K,x.width=Math.floor((x.width||this.width||0)-2*K),x.height=Math.floor((x.height||this.height||0)-2*K),E(x.strokeWidth)&&(x.strokeWidth=z),x}complexColor(x,z,K){let ot,Y,J,f,F,B,s,_,h,C,U,nt=this.renderer,S=[];v(this.renderer,"complexColor",{args:arguments},function(){if(x.radialGradient?Y="radialGradient":x.linearGradient&&(Y="linearGradient"),Y){if(J=x[Y],F=nt.gradients,B=x.stops,h=K.radialReference,W(J)&&(x[Y]=J={x1:J[0],y1:J[1],x2:J[2],y2:J[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===Y&&h&&!E(J.gradientUnits)&&(f=J,J=M(J,nt.getRadialAttr(h,f),{gradientUnits:"userSpaceOnUse"})),A(J,function(et,ct){"id"!==ct&&S.push(ct,et)}),A(B,function(et){S.push(et)}),F[S=S.join(",")])C=F[S].attr("id");else{J.id=C=w();let et=F[S]=nt.createElement(Y).attr(J).add(nt.defs);et.radAttr=f,et.stops=[],B.forEach(function(ct){0===ct[1].indexOf("rgba")?(s=(ot=mt.parse(ct[1])).get("rgb"),_=ot.get("a")):(s=ct[1],_=1);let dt=nt.createElement("stop").attr({offset:ct[0],"stop-color":s,"stop-opacity":_}).add(et);et.stops.push(dt)})}U="url("+nt.url+"#"+C+")",K.setAttribute(z,U),K.gradient=S,x.toString=function(){return U}}})}css(x){let ot,z=this.styles,K={},nt=this.element,Y=!z;if(z&&A(x,function(J,f){z&&z[f]!==J&&(K[f]=J,Y=!0)}),Y){z&&(x=d(z,K)),null===x.width||"auto"===x.width?delete this.textWidth:"text"===nt.nodeName.toLowerCase()&&x.width&&(ot=this.textWidth=r(x.width)),d(this.styles,x),ot&&!$&&this.renderer.forExport&&delete x.width;let J=M(x);nt.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","width"].forEach(f=>J&&delete J[f]),J.color&&(J.fill=J.color)),D(nt,J)}return this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),x.textOutline&&this.applyTextOutline(x.textOutline)),this}dashstyleSetter(x){let z,K=this["stroke-width"];if("inherit"===K&&(K=1),x=x&&x.toLowerCase()){let nt=x.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(z=nt.length;z--;)nt[z]=""+r(nt[z])*o(K,NaN);x=nt.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",x)}}destroy(){let Y,J,x=this,z=x.element||{},K=x.renderer,nt=z.ownerSVGElement,ot="SPAN"===z.nodeName&&x.parentGroup||void 0;if(z.onclick=z.onmouseout=z.onmouseover=z.onmousemove=z.point=null,gt(x),x.clipPath&&nt){let f=x.clipPath;[].forEach.call(nt.querySelectorAll("[clip-path],[CLIP-PATH]"),function(F){F.getAttribute("clip-path").indexOf(f.element.id)>-1&&F.removeAttribute("clip-path")}),x.clipPath=f.destroy()}if(x.connector=x.connector?.destroy(),x.stops){for(J=0;J<x.stops.length;J++)x.stops[J].destroy();x.stops.length=0,x.stops=void 0}for(x.safeRemoveChild(z);ot&&ot.div&&0===ot.div.childNodes.length;)Y=ot.parentGroup,x.safeRemoveChild(ot.div),delete ot.div,ot=Y;x.alignTo&&b(K.alignedObjects,x),A(x,function(f,F){x[F]&&x[F].parentGroup===x&&x[F].destroy&&x[F].destroy(),delete x[F]})}dSetter(x,z,K){W(x)&&("string"==typeof x[0]&&(x=this.renderer.pathToSegments(x)),this.pathArray=x,x=x.reduce((nt,ot,Y)=>ot&&ot.join?(Y?nt+" ":"")+ot.join(" "):(ot||"").toString(),"")),/(NaN| {2}|^$)/.test(x)&&(x="M 0 0"),this[z]!==x&&(K.setAttribute(z,x),this[z]=x)}fillSetter(x,z,K){"string"==typeof x?K.setAttribute(z,x):x&&this.complexColor(x,z,K)}hrefSetter(x,z,K){K.setAttributeNS("http://www.w3.org/1999/xlink",z,x)}getBBox(x,z){let K,nt,ot,Y,{alignValue:J,element:f,renderer:F,styles:B,textStr:s}=this,{cache:_,cacheKeys:h}=F,C=f.namespaceURI===this.SVG_NS,S=o(z,this.rotation,0),U=F.styledMode?f&&O.prototype.getStyle.call(f,"font-size"):B.fontSize;if(E(s)&&(-1===(Y=s.toString()).indexOf("<")&&(Y=Y.replace(/[0-9]/g,"0")),Y+=["",F.rootFontSize,U,S,this.textWidth,J,B.textOverflow,B.fontWeight].join(",")),Y&&!x&&(K=_[Y]),!K){if(C||F.forExport){try{ot=this.fakeTS&&function(et){let ct=f.querySelector(".highcharts-text-outline");ct&&D(ct,{display:et})},I(ot)&&ot("none"),K=f.getBBox?d({},f.getBBox()):{width:f.offsetWidth,height:f.offsetHeight,x:0,y:0},I(ot)&&ot("")}catch{}(!K||K.width<0)&&(K={x:0,y:0,width:0,height:0})}else K=this.htmlGetBBox();nt=K.height,C&&(K.height=nt={"11px,17":14,"13px,20":16}[`${U||""},${Math.round(nt)}`]||nt),S&&(K=this.getRotatedBox(K,S))}if(Y&&(""===s||K.height>0)){for(;h.length>250;)delete _[h.shift()];_[Y]||h.push(Y),_[Y]=K}return K}getRotatedBox(x,z){let{x:K,y:nt,width:ot,height:Y}=x,{alignValue:J,translateY:f,rotationOriginX:F=0,rotationOriginY:B=0}=this,s={right:1,center:.5}[J||0]||0,_=Number(this.element.getAttribute("y")||0)-(f?0:nt),h=z*it,C=(z-90)*it,S=Math.cos(h),U=Math.sin(h),et=ot*S,ct=ot*U,dt=Math.cos(C),_t=Math.sin(C),[[vt,Mt],[X,H]]=[F,B].map(Ft=>[Ft-Ft*S,Ft*U]),tt=K+s*(ot-et)+vt+H+_*dt,st=tt+et,yt=st-Y*dt,lt=yt-et,ft=nt+_-s*ct-Mt+X+_*_t,ht=ft+ct,Tt=ht-Y*_t,Et=Tt-ct,Bt=Math.min(tt,st,yt,lt),At=Math.min(ft,ht,Tt,Et);return{x:Bt,y:At,width:Math.max(tt,st,yt,lt)-Bt,height:Math.max(ft,ht,Tt,Et)-At}}getStyle(x){return Q.getComputedStyle(this.element||this,"").getPropertyValue(x)}hasClass(x){return-1!==(""+this.attr("class")).split(" ").indexOf(x)}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(x,z){this.onEvents={},this.opacity=1,this.SVG_NS=P,this.element="span"===z||"body"===z?T(z):Z.createElementNS(this.SVG_NS,z),this.renderer=x,this.styles={},v(this,"afterInit")}on(x,z){let{onEvents:K}=this;return K[x]&&K[x](),K[x]=G(this.element,x,z),this}opacitySetter(x,z,K){let nt=Number(Number(x).toFixed(3));this.opacity=nt,K.setAttribute(z,nt)}removeClass(x){return this.attr("class",(""+this.attr("class")).replace(l(x)?RegExp(`(^| )${x}( |$)`):x," ").replace(/ +/g," ").trim())}removeTextOutline(){let x=this.element.querySelector("tspan.highcharts-text-outline");x&&this.safeRemoveChild(x)}safeRemoveChild(x){let z=x.parentNode;z&&z.removeChild(x)}setRadialReference(x){let z=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=x,z&&z.radAttr&&z.animate(this.renderer.getRadialAttr(x,z.radAttr)),this}setTextPath(x,z){z=M(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},z);let K=this.renderer.url,nt=this.text||this,ot=nt.textPath,{attributes:Y,enabled:J}=z;if(x=x||ot&&ot.path,ot&&ot.undo(),x&&J){let f=G(nt,"afterModifyTree",F=>{if(x&&J){let B=x.attr("id");B||x.attr("id",B=w());let s={x:0,y:0};E(Y.dx)&&(s.dx=Y.dx,delete Y.dx),E(Y.dy)&&(s.dy=Y.dy,delete Y.dy),nt.attr(s),this.attr({transform:""}),this.box&&(this.box=this.box.destroy());let _=F.nodes.slice(0);F.nodes.length=0,F.nodes[0]={tagName:"textPath",attributes:d(Y,{"text-anchor":Y.textAnchor,href:`${K}#${B}`}),children:_}}});nt.textPath={path:x,undo:f}}else nt.attr({dx:0,dy:0}),delete nt.textPath;return this.added&&(nt.textCache="",this.renderer.buildText(nt)),this}shadow(x){let{renderer:z}=this,K=M(90===this.parentGroup?.rotation?{offsetX:-1,offsetY:-1}:{},y(x)?x:{}),nt=z.shadowDefinition(K);return this.attr({filter:x?`url(${z.url}#${nt})`:"none"})}show(x=!0){return this.attr({visibility:x?"inherit":"visible"})}"stroke-widthSetter"(x,z,K){this[z]=x,K.setAttribute(z,x)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let K,x=this.getStyle("stroke-width"),z=0;return/px$/.test(x)?z=r(x):""!==x&&(V(K=Z.createElementNS(P,"rect"),{width:x,"stroke-width":0}),this.element.parentNode.appendChild(K),z=K.getBBox().width,K.parentNode.removeChild(K)),z}symbolAttr(x){let z=this;
1O.symbolCustomAttribs.forEach(function(K){z[K]=o(x[K],z[K])}),z.attr({d:z.renderer.symbols[z.symbolName](z.x,z.y,z.width,z.height,z)})}textSetter(x){x!==this.textStr&&(delete this.textPxLength,this.textStr=x,this.added&&this.renderer.buildText(this))}titleSetter(x){let z=this.element,K=z.getElementsByTagName("title")[0]||Z.createElementNS(this.SVG_NS,"title");z.insertBefore?z.insertBefore(K,z.firstChild):z.appendChild(K),K.textContent=p(o(x,""),[/<[^>]*>/g,""]).replace(/</g,"<").replace(/>/g,">")}toFront(){let x=this.element;return x.parentNode.appendChild(x),this}translate(x,z){return this.attr({translateX:x,translateY:z})}updateTransform(x="transform"){let{element:z,matrix:K,rotation:nt=0,rotationOriginX:ot,rotationOriginY:Y,scaleX:J,scaleY:f,translateX:F=0,translateY:B=0}=this,s=["translate("+F+","+B+")"];E(K)&&s.push("matrix("+K.join(",")+")"),nt&&(s.push("rotate("+nt+" "+o(ot,z.getAttribute("x"),0)+" "+o(Y,z.getAttribute("y")||0)+")"),"SPAN"===this.text?.element.tagName&&this.text.attr({rotation:nt,rotationOriginX:(ot||0)-this.padding,rotationOriginY:(Y||0)-this.padding})),(E(J)||E(f))&&s.push("scale("+o(J,1)+" "+o(f,1)+")"),s.length&&!(this.text||this).textPath&&z.setAttribute(x,s.join(" "))}visibilitySetter(x,z,K){"inherit"===x?K.removeAttribute(z):this[z]!==x&&K.setAttribute(z,x),this[z]=x}xGetter(x){return"circle"===this.element.nodeName&&("x"===x?x="cx":"y"===x&&(x="cy")),this._defaultGetter(x)}zIndexSetter(x,z){let f,F,B,_,C,K=this.renderer,nt=this.parentGroup,ot=(nt||K).element||K.box,Y=this.element,J=ot===K.box,s=!1,h=this.added;if(E(x)?(Y.setAttribute("data-z-index",x),this[z]===(x=+x)&&(h=!1)):E(this[z])&&Y.removeAttribute("data-z-index"),this[z]=x,h){for((x=this.zIndex)&&nt&&(nt.handleZ=!0),C=(f=ot.childNodes).length-1;C>=0&&!s;C--)_=!E(B=(F=f[C]).getAttribute("data-z-index")),F!==Y&&(x<0&&_&&!J&&!C?(ot.insertBefore(Y,f[C]),s=!0):(r(B)<=x||_&&(!E(x)||x>=0))&&(ot.insertBefore(Y,f[C+1]),s=!0));s||(ot.insertBefore(Y,f[J?3:0]),s=!0)}return s}}return O.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],O.prototype.strokeSetter=O.prototype.fillSetter,O.prototype.yGetter=O.prototype.xGetter,O.prototype.matrixSetter=O.prototype.rotationOriginXSetter=O.prototype.rotationOriginYSetter=O.prototype.rotationSetter=O.prototype.scaleXSetter=O.prototype.scaleYSetter=O.prototype.translateXSetter=O.prototype.translateYSetter=O.prototype.verticalAlignSetter=function(N,x){this[x]=N,this.doTransform=!0},O}),Dt(q,"Core/Renderer/SVG/SVGLabel.js",[q["Core/Renderer/SVG/SVGElement.js"],q["Core/Utilities.js"]],function(m,mt){let{defined:xt,extend:i,isNumber:ut,merge:kt,pick:gt,removeEvent:it}=mt;class Z extends m{constructor(P,Q,G,V,T,D,E,b,d,v){let W;super(P,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.textStr=Q,this.x=G,this.y=V,this.anchorX=D,this.anchorY=E,this.baseline=d,this.className=v,this.addClass("button"===v?"highcharts-no-tooltip":"highcharts-label"),v&&this.addClass("highcharts-"+v),this.text=P.text(void 0,0,0,b).attr({zIndex:1}),"string"==typeof T&&((W=/^url\((.*?)\)$/.test(T))||this.renderer.symbols[T])&&(this.symbolKey=T),this.bBox=Z.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=P.styledMode||W,this.deferredAttr={},this.alignFactor=0}alignSetter(P){let Q={left:0,center:.5,right:1}[P];Q!==this.alignFactor&&(this.alignFactor=Q,this.bBox&&ut(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(P,Q){this.anchorX=P,this.boxAttr(Q,Math.round(P)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(P,Q){this.anchorY=P,this.boxAttr(Q,P-this.ySetting)}boxAttr(P,Q){this.box?this.box.attr(P,Q):this.deferredAttr[P]=Q}css(P){if(P){let Q={};P=kt(P),Z.textProps.forEach(G=>{void 0!==P[G]&&(Q[G]=P[G],delete P[G])}),this.text.css(Q),"fontSize"in Q||"fontWeight"in Q?this.updateTextPadding():("width"in Q||"textOverflow"in Q)&&this.updateBoxSize()}return m.prototype.css.call(this,P)}destroy(){it(this.element,"mouseenter"),it(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),m.prototype.destroy.call(this)}fillSetter(P,Q){P&&(this.needsBox=!0),this.fill=P,this.boxAttr(Q,P)}getBBox(P,Q){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();let{padding:G,height:V=0,translateX:T=0,translateY:D=0,width:E=0}=this,b=gt(this.paddingLeft,G),d=Q??(this.rotation||0),v={width:E,height:V,x:T+this.bBox.x-b,y:D+this.bBox.y-G+this.baselineOffset};return d&&(v=this.getRotatedBox(v,d)),v}getCrispAdjust(){return this.renderer.styledMode&&this.box?this.box.strokeWidth()%2/2:(this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(P){this.heightSetting=P}onAdd(){this.text.add(this),this.attr({text:gt(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&xt(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(P,Q){ut(P)?P!==this[Q]&&(this[Q]=P,this.updateTextPadding()):this[Q]=void 0}rSetter(P,Q){this.boxAttr(Q,P)}strokeSetter(P,Q){this.stroke=P,this.boxAttr(Q,P)}"stroke-widthSetter"(P,Q){P&&(this.needsBox=!0),this["stroke-width"]=P,this.boxAttr(Q,P)}"text-alignSetter"(P){this.textAlign=P}textSetter(P){void 0!==P&&this.text.attr({text:P}),this.updateTextPadding()}updateBoxSize(){let P,Q=this.text,G={},V=this.padding,T=this.bBox=ut(this.widthSetting)&&ut(this.heightSetting)&&!this.textAlign||!xt(Q.textStr)?Z.emptyBBox:Q.getBBox(void 0,0);this.width=this.getPaddedWidth(),this.height=(this.heightSetting||T.height||0)+2*V;let D=this.renderer.fontMetrics(Q);if(this.baselineOffset=V+Math.min((this.text.firstLineMetrics||D).b,T.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-D.h)/2),this.needsBox&&!Q.textPath){if(!this.box){let E=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();E.addClass(("button"===this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),E.add(this)}P=this.getCrispAdjust(),G.x=P,G.y=(this.baseline?-this.baselineOffset:0)+P,G.width=Math.round(this.width),G.height=Math.round(this.height),this.box.attr(i(G,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let P=this.text;if(!P.textPath){this.updateBoxSize();let Q=this.baseline?0:this.baselineOffset,G=gt(this.paddingLeft,this.padding);xt(this.widthSetting)&&this.bBox&&("center"===this.textAlign||"right"===this.textAlign)&&(G+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(G!==P.x||Q!==P.y)&&(P.attr("x",G),P.hasBoxWidthChanged&&(this.bBox=P.getBBox(!0)),void 0!==Q&&P.attr("y",Q)),P.x=G,P.y=Q}}widthSetter(P){this.widthSetting=ut(P)?P:void 0}getPaddedWidth(){let P=this.padding,Q=gt(this.paddingLeft,P),G=gt(this.paddingRight,P);return(this.widthSetting||this.bBox.width||0)+Q+G}xSetter(P){this.x=P,this.alignFactor&&(P-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(P),this.attr("translateX",this.xSetting)}ySetter(P){this.ySetting=this.y=Math.round(P),this.attr("translateY",this.ySetting)}}return Z.emptyBBox={width:0,height:0,x:0,y:0},Z.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],Z}),Dt(q,"Core/Renderer/SVG/Symbols.js",[q["Core/Utilities.js"]],function(m){let{defined:mt,isNumber:xt,pick:i}=m;function ut(it,Z,$,P,Q){let G=[];if(Q){let V=Q.start||0,T=i(Q.r,$),D=i(Q.r,P||$),E=.001>Math.abs((Q.end||0)-V-2*Math.PI),b=(Q.end||0)-.001,d=Q.innerR,v=i(Q.open,E),W=Math.cos(V),I=Math.sin(V),y=Math.cos(b),l=Math.sin(b),M=i(Q.longArc,b-V-Math.PI<.001?0:1),A=["A",T,D,0,M,i(Q.clockwise,1),it+T*y,Z+D*l];A.params={start:V,end:b,cx:it,cy:Z},G.push(["M",it+T*W,Z+D*I],A),mt(d)&&((A=["A",d,d,0,M,mt(Q.clockwise)?1-Q.clockwise:0,it+d*W,Z+d*I]).params={start:b,end:V,cx:it,cy:Z},G.push(v?["M",it+d*y,Z+d*l]:["L",it+d*y,Z+d*l],A)),v||G.push(["Z"])}return G}function kt(it,Z,$,P,Q){return Q&&Q.r?gt(it,Z,$,P,Q):[["M",it,Z],["L",
1it+$,Z],["L",it+$,Z+P],["L",it,Z+P],["Z"]]}function gt(it,Z,$,P,Q){let G=Q?.r||0;return[["M",it+G,Z],["L",it+$-G,Z],["A",G,G,0,0,1,it+$,Z+G],["L",it+$,Z+P-G],["A",G,G,0,0,1,it+$-G,Z+P],["L",it+G,Z+P],["A",G,G,0,0,1,it,Z+P-G],["L",it,Z+G],["A",G,G,0,0,1,it+G,Z],["Z"]]}return{arc:ut,callout:function(it,Z,$,P,Q){let G=Math.min(Q&&Q.r||0,$,P),V=G+6,T=Q&&Q.anchorX,D=Q&&Q.anchorY||0,E=gt(it,Z,$,P,{r:G});if(!xt(T)||T<$&&T>0&&D<P&&D>0)return E;if(it+T>$-V)if(D>Z+V&&D<Z+P-V)E.splice(3,1,["L",it+$,D-6],["L",it+$+6,D],["L",it+$,D+6],["L",it+$,Z+P-G]);else if(T<$){let b=D<Z+V;E.splice(b?2:5,0,["L",T,D],["L",it+$-G,b?Z:Z+P])}else E.splice(3,1,["L",it+$,P/2],["L",T,D],["L",it+$,P/2],["L",it+$,Z+P-G]);else if(it+T<V)if(D>Z+V&&D<Z+P-V)E.splice(7,1,["L",it,D+6],["L",it-6,D],["L",it,D-6],["L",it,Z+G]);else if(T>0){let b=D<Z+V;E.splice(b?1:6,0,["L",T,D],["L",it+G,b?Z:Z+P])}else E.splice(7,1,["L",it,P/2],["L",T,D],["L",it,P/2],["L",it,Z+G]);else D>P&&T<$-V?E.splice(5,1,["L",T+6,Z+P],["L",T,Z+P+6],["L",T-6,Z+P],["L",it+G,Z+P]):D<0&&T>V&&E.splice(1,1,["L",T-6,Z],["L",T,Z-6],["L",T+6,Z],["L",$-G,Z]);return E},circle:function(it,Z,$,P){return ut(it+$/2,Z+P/2,$/2,P/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(it,Z,$,P){return[["M",it+$/2,Z],["L",it+$,Z+P/2],["L",it+$/2,Z+P],["L",it,Z+P/2],["Z"]]},rect:kt,roundedRect:gt,square:kt,triangle:function(it,Z,$,P){return[["M",it+$/2,Z],["L",it+$,Z+P],["L",it,Z+P],["Z"]]},"triangle-down":function(it,Z,$,P){return[["M",it,Z],["L",it+$,Z],["L",it+$/2,Z+P],["Z"]]}}}),Dt(q,"Core/Renderer/SVG/TextBuilder.js",[q["Core/Renderer/HTML/AST.js"],q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{doc:i,SVG_NS:ut,win:kt}=mt,{attr:gt,extend:it,fireEvent:Z,isString:$,objectEach:P,pick:Q}=xt;return class{constructor(G){let V=G.styles;this.renderer=G.renderer,this.svgElement=G,this.width=G.textWidth,this.textLineHeight=V&&V.lineHeight,this.textOutline=V&&V.textOutline,this.ellipsis=!(!V||"ellipsis"!==V.textOverflow),this.noWrap=!(!V||"nowrap"!==V.whiteSpace)}buildSVG(){let G=this.svgElement,V=G.element,T=G.renderer,D=Q(G.textStr,"").toString(),E=-1!==D.indexOf("<"),b=V.childNodes,d=!G.added&&T.box,v=[D,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,G.getStyle("font-size"),this.width].join(",");if(v!==G.textCache){G.textCache=v,delete G.actualWidth;for(let W=b.length;W--;)V.removeChild(b[W]);if(E||this.ellipsis||this.width||G.textPath||-1!==D.indexOf(" ")&&(!this.noWrap||/<br.*?>/g.test(D))){if(""!==D){d&&d.appendChild(V);let W=new m(D);this.modifyTree(W.nodes),W.addToDOM(V),this.modifyDOM(),this.ellipsis&&-1!==(V.textContent||"").indexOf("\u2026")&&G.attr("title",this.unescapeEntities(G.textStr||"",["<",">"])),d&&d.removeChild(V)}}else V.appendChild(i.createTextNode(this.unescapeEntities(D)));$(this.textOutline)&&G.applyTextOutline&&G.applyTextOutline(this.textOutline)}}modifyDOM(){let G,V=this.svgElement,T=gt(V.element,"x");for(V.firstLineMetrics=void 0;(G=V.element.firstChild)&&/^[\s\u200B]*$/.test(G.textContent||" ");)V.element.removeChild(G);[].forEach.call(V.element.querySelectorAll("tspan.highcharts-br"),(d,v)=>{d.nextSibling&&d.previousSibling&&(0===v&&1===d.previousSibling.nodeType&&(V.firstLineMetrics=V.renderer.fontMetrics(d.previousSibling)),gt(d,{dy:this.getLineHeight(d.nextSibling),x:T}))});let D=this.width||0;if(!D)return;let E=(d,v)=>{let W=d.textContent||"",I=W.replace(/([^\^])-/g,"$1- ").split(" "),y=!this.noWrap&&(I.length>1||V.element.childNodes.length>1),l=this.getLineHeight(v),M=0,A=V.actualWidth;if(this.ellipsis)W&&this.truncate(d,W,void 0,0,Math.max(0,D-.8*l),(o,r)=>o.substring(0,r)+"\u2026");else if(y){let o=[],r=[];for(;v.firstChild&&v.firstChild!==d;)r.push(v.firstChild),v.removeChild(v.firstChild);for(;I.length;)I.length&&!this.noWrap&&M>0&&(o.push(d.textContent||""),d.textContent=I.join(" ").replace(/- /g,"-")),this.truncate(d,void 0,I,0===M&&A||0,D,(p,g)=>I.slice(0,g).join(" ").replace(/- /g,"-")),A=V.actualWidth,M++;r.forEach(p=>{v.insertBefore(p,d)}),o.forEach(p=>{v.insertBefore(i.createTextNode(p),d);let g=i.createElementNS(ut,"tspan");g.textContent="\u200b",gt(g,{dy:l,x:T}),v.insertBefore(g,d)})}},b=d=>
vendor: 2,359 bytes, line 1
1{[].slice.call(d.childNodes).forEach(v=>{v.nodeType===kt.Node.TEXT_NODE?E(v,d):(-1!==v.className.baseVal.indexOf("highcharts-br")&&(V.actualWidth=0),b(v))})};b(V.element)}getLineHeight(G){let V=G.nodeType===kt.Node.TEXT_NODE?G.parentElement:G;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(V||this.svgElement.element).h}modifyTree(G){let V=(T,D)=>{let{attributes:E={},children:b,style:d={},tagName:v}=T,W=this.renderer.styledMode;if("b"===v||"strong"===v?W?E.class="highcharts-strong":d.fontWeight="bold":("i"===v||"em"===v)&&(W?E.class="highcharts-emphasized":d.fontStyle="italic"),d&&d.color&&(d.fill=d.color),"br"===v){E.class="highcharts-br",T.textContent="\u200b";let I=G[D+1];I&&I.textContent&&(I.textContent=I.textContent.replace(/^ +/gm,""))}else"a"===v&&b&&b.some(I=>"#text"===I.tagName)&&(T.children=[{children:b,tagName:"tspan"}]);"#text"!==v&&"a"!==v&&(T.tagName="tspan"),it(T,{attributes:E,style:d}),b&&b.filter(I=>"#text"!==I.tagName).forEach(V)};G.forEach(V),Z(this.svgElement,"afterModifyTree",{nodes:G})}truncate(G,V,T,D,E,b){let d,v,W=this.svgElement,{rotation:I}=W,y=[],l=T?1:0,M=(V||T||"").length,A=M,o=function(r,p){let g=p||r,w=G.parentNode;if(w&&void 0===y[g]&&w.getSubStringLength)try{y[g]=D+w.getSubStringLength(0,T?g+1:g)}catch{}return y[g]};if(W.rotation=0,D+(v=o(G.textContent.length))>E){for(;l<=M;)A=Math.ceil((l+M)/2),T&&(d=b(T,A)),v=o(A,d&&d.length-1),l===M?l=M+1:v>E?M=A-1:l=A;0===M?G.textContent="":V&&M===V.length-1||(G.textContent=d||b(V||T,A))}T&&T.splice(0,A),W.actualWidth=v,W.rotation=I}unescapeEntities(G,V){return P(this.renderer.escapes,function(T,D){V&&-1!==V.indexOf(T)||(G=G.toString().replace(RegExp(T,"g"),D))}),G}}}),Dt(q,"Core/Renderer/SVG/SVGRenderer.js",[q["Core/Renderer/HTML/AST.js"],q["Core/Color/Color.js"],q["Core/Globals.js"],q["Core/Renderer/RendererRegistry.js"],q["Core/Renderer/SVG/SVGElement.js"],q["Core/Renderer/SVG/SVGLabel.js"],q["Core/Renderer/SVG/Symbols.js"],q["Core/Renderer/SVG/TextBuilder.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut,kt,gt,it,Z){let $,{charts:P,deg2rad:Q,doc:G,isFirefox:V,isMS:T,isWebKit:D,noop:E,SVG_NS:b,symbolSizes:d,win:v}=xt,{addEvent:W,attr:I,createElement:y,css:l,defined:M,destroyObjectProperties:A,extend:o,isArray:r,isNumber:p,isObject:g,isString:w,merge:O,pick:N,pInt:x,replaceNested:z,uniqueKey:K}=Z;
1class nt{constructor(Y,J,f,F,B,s,_){let h,C,S=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),U=S.element;_||S.css(this.getStyle(F||{})),Y.appendChild(U),I(Y,"dir","ltr"),-1===Y.innerHTML.indexOf("xmlns")&&I(U,"xmlns",this.SVG_NS),this.box=U,this.boxWrapper=S,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(G.createTextNode("Created with Highcharts 11.4.0")),this.defs=this.createElement("defs").add(),this.allowHTML=s,this.forExport=B,this.styledMode=_,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=S.getStyle("font-size"),this.setSize(J,f,!1),V&&Y.getBoundingClientRect&&((h=function(){l(Y,{left:0,top:0}),C=Y.getBoundingClientRect(),l(Y,{left:Math.ceil(C.left)-C.left+"px",top:Math.ceil(C.top)-C.top+"px"})})(),this.unSubPixelFix=W(v,"resize",h))}definition(Y){return new m([Y]).addToDOM(this.defs.element)}getReferenceURL(){if((V||D)&&G.getElementsByTagName("base").length){if(!M($)){let Y=K(),J=new m([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:Y},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":`url(#${Y})`,fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(G.body);l(J,{position:"fixed",top:0,left:0,zIndex:9e5});let f=G.elementFromPoint(6,6);$="hitme"===(f&&f.id),G.body.removeChild(J)}if($)return z(v.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(Y){return this.style=o({fontFamily:"Helvetica, Arial, sans-serif",fontSize:"1rem"},Y),this.style}setStyle(Y){this.boxWrapper.css(this.getStyle(Y))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let Y=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),A(this.gradients||{}),this.gradients=null,this.defs=Y.destroy(),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null,null}createElement(Y){return new this.Element(this,Y)}getRadialAttr(Y,J){return{cx:Y[0]-Y[2]/2+(J.cx||0)*Y[2],cy:Y[1]-Y[2]/2+(J.cy||0)*Y[2],r:(J.r||0)*Y[2]}}shadowDefinition(Y){let J=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(Y).map(F=>`${F}-${Y[F]}`)].join("-").toLowerCase().replace(/[^a-z0-9\-]/g,""),f=O({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},Y);return this.defs.element.querySelector(`#${J}`)||this.definition({tagName:"filter",attributes:{id:J,filterUnits:f.filterUnits},children:[{tagName:"feDropShadow",attributes:{dx:f.offsetX,dy:f.offsetY,"flood-color":f.color,"flood-opacity":Math.min(5*f.opacity,1),stdDeviation:f.width/2}}]}),J}buildText(Y){new it(Y).buildSVG()}getContrast(Y){let J=mt.parse(Y).rgba.map(F=>{let B=F/255;return B<=.03928?B/12.92:Math.pow((B+.055)/1.055,2.4)}),f=.2126*J[0]+.7152*J[1]+.0722*J[2];return 1.05/(f+.05)>(f+.05)/.05?"#FFFFFF":"#000000"}button(Y,J,f,F,B={},s,_,h,C,S){let U,et,ct,dt=this.label(Y,J,f,C,void 0,void 0,S,void 0,"button"),_t=this.styledMode,vt=B.states||{},Mt=0;delete(B=O(B)).states;let X=O({color:"#333333",cursor:"pointer",fontSize:"0.8em",fontWeight:"normal"},B.style);delete B.style;let H=m.filterUserAttributes(B);return dt.attr(O({padding:8,r:2},H)),_t||(H=O({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1},H),U=(s=O(H,{fill:"#e6e6e6"},m.filterUserAttributes(s||vt.hover||{}))).style,delete s.style,et=(_=O(H,{fill:"#e6e9ff",style:{color:"#000000",fontWeight:"bold"}},m.filterUserAttributes(_||vt.select||{}))).style,delete _.style,ct=(h=O(H,{style:{color:"#cccccc"}},m.filterUserAttributes(h||vt.disabled||{}))).style,delete h.style),W(dt.element,T?"mouseover":"mouseenter",function(){3!==Mt&&dt.setState(1)}),W(dt.element,T?"mouseout":"mouseleave",function(){3!==Mt&&dt.setState(Mt)}),dt.setState=function(tt){if(1!==tt&&(dt.state=Mt=tt),dt.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][tt||0]),!_t){dt.attr([H,s,_,h][tt||0]);let st=[X,U,et,ct][tt||0];g(st)&&dt.css(st)}},!_t&&(dt.attr(H).css(o({cursor:"default"},X)),S&&dt.text.css({pointerEvents:"none"})),dt.on("touchstart",tt=>tt.stopPropagation()).on("click",function(tt){3!==Mt&&F.call(dt,tt)})}crispLine(Y,J,f="round"){let F=Y[0],B=Y[1];return M(F[1])&&F[1]===B[1]&&(F[1]=B[1]=Math[f](F[1])-J%2/2),M(F[2])&&F[2]===B[2]&&(F[2]=B[2]=Math[f](F[2])+J%2/2),Y}path(Y){let J=this.styledMode?{}:{fill:"none"};return r(Y)?J.d=Y:g(Y)&&o(J,Y),this.createElement("path").attr(J)}circle(Y,J,f){let F=g(Y)?Y:void 0===Y?{}:{x:Y,y:J,r:f},B=this.createElement("circle");return B.xSetter=B.ySetter=function(s,_,h){h.setAttribute("c"+_,s)},B.attr(F)}arc(Y,J,f,F,B,s){let _;g(Y)?(J=(_=Y).y,f=_.r,F=_.innerR,B=_.start,s=_.end,Y=_.x):_={innerR:F,start:B,end:s};let h=this.symbol("arc",Y,J,f,f,_);return h.r=f,h}rect(Y,J,f,F,B,s){let _=g(Y)?Y:void 0===Y?{}:{x:Y,y:J,r:B,width:Math.max(f||0,0),height:Math.max(F||0,0)},h=this.createElement("rect");
1return this.styledMode||(void 0!==s&&(_["stroke-width"]=s,o(_,h.crisp(_))),_.fill="none"),h.rSetter=function(C,S,U){h.r=C,I(U,{rx:C,ry:C})},h.rGetter=function(){return h.r||0},h.attr(_)}roundedRect(Y){return this.symbol("roundedRect").attr(Y)}setSize(Y,J,f){this.width=Y,this.height=J,this.boxWrapper.animate({width:Y,height:J},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:N(f,!0)?void 0:0}),this.alignElements()}g(Y){let J=this.createElement("g");return Y?J.attr({class:"highcharts-"+Y}):J}image(Y,J,f,F,B,s){let _={preserveAspectRatio:"none"};p(J)&&(_.x=J),p(f)&&(_.y=f),p(F)&&(_.width=F),p(B)&&(_.height=B);let h=this.createElement("image").attr(_),C=function(S){h.attr({href:Y}),s.call(h,S)};if(s){h.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let S=new v.Image;W(S,"load",C),S.src=Y,S.complete&&C({})}else h.attr({href:Y});return h}symbol(Y,J,f,F,B,s){let _,h,C,S,U=this,et=/^url\((.*?)\)$/,ct=et.test(Y),dt=!ct&&(this.symbols[Y]?Y:"circle"),_t=dt&&this.symbols[dt];if(_t)"number"==typeof J&&(h=_t.call(this.symbols,Math.round(J||0),Math.round(f||0),F||0,B||0,s)),_=this.path(h),U.styledMode||_.attr("fill","none"),o(_,{symbolName:dt||void 0,x:J,y:f,width:F,height:B}),s&&o(_,s);else if(ct){C=Y.match(et)[1];let vt=_=this.image(C);vt.imgwidth=N(s&&s.width,d[C]&&d[C].width),vt.imgheight=N(s&&s.height,d[C]&&d[C].height),S=Mt=>Mt.attr({width:Mt.width,height:Mt.height}),["width","height"].forEach(Mt=>{vt[`${Mt}Setter`]=function(X,H){this[H]=X;let{alignByTranslate:tt,element:st,width:yt,height:lt,imgwidth:ft,imgheight:ht}=this,Tt="width"===H?ft:ht,Et=1;s&&"within"===s.backgroundSize&&yt&<&&ft&&ht?(Et=Math.min(yt/ft,lt/ht),I(st,{width:Math.round(ft*Et),height:Math.round(ht*Et)})):st&&Tt&&st.setAttribute(H,Tt),!tt&&ft&&ht&&this.translate(((yt||0)-ft*Et)/2,((lt||0)-ht*Et)/2)}}),M(J)&&vt.attr({x:J,y:f}),vt.isImg=!0,M(vt.imgwidth)&&M(vt.imgheight)?S(vt):(vt.attr({width:0,height:0}),y("img",{onload:function(){let Mt=P[U.chartIndex];0===this.width&&(l(this,{position:"absolute",top:"-999em"}),G.body.appendChild(this)),d[C]={width:this.width,height:this.height},vt.imgwidth=this.width,vt.imgheight=this.height,vt.element&&S(vt),this.parentNode&&this.parentNode.removeChild(this),U.imgCount--,U.imgCount||!Mt||Mt.hasLoaded||Mt.onload()},src:C}),this.imgCount++)}return _}clipRect(Y,J,f,F){return this.rect(Y,J,f,F,0)}text(Y,J,f,F){let B={};if(F&&(this.allowHTML||!this.forExport))return this.html(Y,J,f);B.x=Math.round(J||0),f&&(B.y=Math.round(f)),M(Y)&&(B.text=Y);let s=this.createElement("text").attr(B);return F&&(!this.forExport||this.allowHTML)||(s.xSetter=function(_,h,C){let S=C.getElementsByTagName("tspan"),U=C.getAttribute(h);for(let ct,et=0;et<S.length;et++)(ct=S[et]).getAttribute(h)===U&&ct.setAttribute(h,_);C.setAttribute(h,_)}),s}fontMetrics(Y){let J=x(ut.prototype.getStyle.call(Y,"font-size")||0),f=J<24?J+3:Math.round(1.2*J);return{h:f,b:Math.round(.8*f),f:J}}rotCorr(Y,J,f){let F=Y;return J&&f&&(F=Math.max(F*Math.cos(J*Q),4)),{x:-Y/3*Math.sin(J*Q),y:F}}pathToSegments(Y){let J=[],f=[],F={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2};for(let B=0;B<Y.length;B++)w(f[0])&&p(Y[B])&&f.length===F[f[0].toUpperCase()]&&Y.splice(B,0,f[0].replace("M","L").replace("m","l")),"string"==typeof Y[B]&&(f.length&&J.push(f.slice(0)),f.length=0),f.push(Y[B]);return J.push(f.slice(0)),J}label(Y,J,f,F,B,s,_,h,C){return new kt(this,Y,J,f,F,B,s,_,h,C)}alignElements(){this.alignedObjects.forEach(Y=>Y.align())}}return o(nt.prototype,{Element:ut,SVG_NS:b,escapes:{"&":"&","<":"<",">":">","'":"'",'"':"""},symbols:gt,draw:E}),i.registerRendererType("svg",nt,!0),nt}),Dt(q,"Core/Renderer/HTML/HTMLElement.js",[q["Core/Renderer/HTML/AST.js"],q["Core/Globals.js"],q["Core/Renderer/SVG/SVGElement.js"],q["Core/Utilities.js"]],function(m,mt,xt,i){let{composed:ut}=mt,{attr:kt,css:gt,createElement:it,defined:Z,extend:$,pInt:P,pushUnique:Q}=i;function G(E,b,d){let v=this.div?.style||d.style;xt.prototype[`${b}Setter`].call(this,E,b,d),v&&(v[b]=E)}let V=(E,b)=>{if(!E.div){let d=kt(E.element,"class"),v=E.css,W=it("div",d?{className:d}:void 0,{position:"absolute",left:`${E.translateX||0}px`,top:`${E.translateY||0}px`,...E.styles,display:E.display,opacity:E.opacity,visibility:E.visibility},E.parentGroup?.div||b);E.classSetter=(I,y,l)=>{l.setAttribute("class",I),W.className=I},E.translateXSetter=E.translateYSetter=(I,y)=>{E[y]=I,W.style["translateX"===y?"left":"top"]=`${I}px`,E.doTransform=!0},E.opacitySetter=E.visibilitySetter=G,E.css=I=>(v.call(E,I),I.cursor&&(W.style.cursor=I.cursor),I.pointerEvents&&(W.style.pointerEvents=I.pointerEvents),E),E.on=function(){return xt.prototype.on.apply({element:W,onEvents:E.onEvents},arguments),E},E.div=W}return E.div};class T extends xt{static compose(b){Q(ut,this.compose)&&(b.prototype.html=function(d,v,W){return new T(this,"span").attr({text:d,x:Math.round(v),y:Math.round(W)})})}constructor(b,d){super(b,d),this.css({position:"absolute",...b.styledMode?{}:{fontFamily:b.style.fontFamily,fontSize:b.style.fontSize}}),this.element.style.whiteSpace="nowrap"}getSpanCorrection(b,d,v){this.xCorr=-b*v,this.yCorr=-d}css(b){let d,{element:v}=this,W="SPAN"===v.tagName&&b&&"width"in b,I=W&&b.width;return W&&(delete b.width,this.textWidth=P(I)||void 0,d=!0),"ellipsis"===b?.textOverflow&&(b.whiteSpace="nowrap",b.overflow="hidden"),$(this.styles,b),gt(v,b),d&&this.updateTransform(),this}htmlGetBBox(){let{element:b}=this;return{x:b.offsetLeft,y:b.offsetTop,width:b.offsetWidth,height:b.offsetHeight}}updateTransform(){if(!this.added)return void(this.alignOnAdd=!0);let{element:b,renderer:d,rotation:v,rotationOriginX:W,rotationOriginY:I,styles:y,textAlign:l="left",textWidth:M,translateX:A=0,translateY:o=0,x:r=0,y:p=0}=this,g=y.whiteSpace;if(gt(b,{marginLeft:`${A}px`,marginTop:`${o}px`}),"SPAN"===b.tagName){let N,w=[v,l,b.innerHTML,M,this.textAlign].join(","),O=-1*this.parentGroup?.padding||0,x=!1;if(M!==this.oldTextWidth){let Y=this.textPxLength?this.textPxLength:(gt(b,{width:"",whiteSpace:g||"nowrap"}),b.offsetWidth),J=M||0;(J>this.oldTextWidth||Y>J)&&(/[ \-]/.test(b.textContent||b.innerText)||"ellipsis"===b.style.textOverflow)&&(gt(b,{width:Y>J||v?M+"px":"auto",display:"block",whiteSpace:g||"normal"}),this.oldTextWidth=M,x=!0)}this.hasBoxWidthChanged=x,w!==this.cTT&&(N=d.fontMetrics(b).b,Z(v)&&(v!==(this.oldRotation||0)||l!==this.oldAlign)&&this.setSpanRotation(v,O,O),this.get
1SpanCorrection(!Z(v)&&this.textPxLength||b.offsetWidth,N,{left:0,center:.5,right:1}[l]));let{xCorr:z=0,yCorr:K=0}=this;gt(b,{left:`${r+z}px`,top:`${p+K}px`,transformOrigin:`${(W??r)-z-r-O}px ${(I??p)-K-p-O}px`}),this.cTT=w,this.oldRotation=v,this.oldAlign=l}}setSpanRotation(b,d,v){gt(this.element,{transform:`rotate(${b}deg)`,transformOrigin:`${d}% ${v}px`})}add(b){let d,v=this.renderer.box.parentNode,W=[];if(this.parentGroup=b,b&&!(d=b.div)){let I=b;for(;I;)W.push(I),I=I.parentGroup;for(let y of W.reverse())d=V(y,v)}return(d||v).appendChild(this.element),this.added=!0,this.alignOnAdd&&this.updateTransform(),this}textSetter(b){b!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,m.setElementHTML(this.element,b??""),this.textStr=b,this.doTransform=!0)}alignSetter(b){this.alignValue=this.textAlign=b,this.doTransform=!0}xSetter(b,d){this[d]=b,this.doTransform=!0}}let D=T.prototype;return D.visibilitySetter=D.opacitySetter=G,D.ySetter=D.rotationSetter=D.rotationOriginXSetter=D.rotationOriginYSetter=D.xSetter,T}),Dt(q,"Core/Axis/AxisDefaults.js",[],function(){var m,mt;return(mt=m||(m={})).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",padding:5,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"}},type:"linear",uniqueNames:!0,visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#333333",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#333333"},mt.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:xt}=this.axis.chart;return xt(this.total||0,-1)},style:{color:"#000000",fontSize:"0.7em",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},m}),Dt(q,"Core/Foundation.js",[q["Core/Utilities.js"]],function(m){var mt;let{addEvent:xt,isFunction:i,objectEach:ut,removeEvent:kt}=m;return(mt||(mt={})).registerEventOptions=function(gt,it){gt.eventOptions=gt.eventOptions||{},ut(it.events,function(Z,$){gt.eventOptions[$]!==Z&&(gt.eventOptions[$]&&(kt(gt,$,gt.eventOptions[$]),delete gt.eventOptions[$]),i(Z)&&(gt.eventOptions[$]=Z,xt(gt,$,Z,{order:0})))})},mt}),Dt(q,"Core/Axis/Tick.js",[q["Core/Templating.js"],q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{deg2rad:i}=mt,{clamp:ut,correctFloat:kt,defined:gt,destroyObjectProperties:it,extend:Z,fireEvent:$,isNumber:P,merge:Q,objectEach:G,pick:V}=xt;return class{constructor(T,D,E,b,d){this.isNew=!0,this.isNewLabel=!0,this.axis=T,this.pos=D,this.type=E||"",this.parameters=d||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,$(this,"init"),E||b||this.addLabel()}addLabel(){let g,w,O,T=this,D=T.axis,E=D.options,b=D.chart,d=D.categories,v=D.logarithmic,W=D.names,I=T.pos,y=V(T.options&&T.options.labels,E.labels),l=D.tickPositions,M=I===l[0],A=I===l[l.length-1],o=(!y.step||1===y.step)&&1===D.tickInterval,r=l.info,p=T.label,N=this.parameters.category||(d?V(d[I],W[I],I):I);v&&P(N)&&(N=kt(v.lin2log(N))),D.dateTime&&(r?g=(w=b.time.resolveDTLFormat(E.dateTimeLabelFormats[!E.grid&&r.higherRanks[I]||r.unitName])).main:P(N)&&(g=D.dateTime.getXDateFormat(N,E.dateTimeLabelFormats||{}))),T.isFirst=M,T.isLast=A;let x={axis:D,chart:b,dateTimeLabelFormat:g,isFirst:M,isLast:A,pos:I,tick:T,tickPositionInfo:r,value:N};$(this,"labelFormat",x);let z=ot=>y.formatter?y.formatter.call(ot,ot):y.format?(ot.text=D.defaultLabelFormatter.call(ot),m.format(y.format,ot,b)):D.defaultLabelFormatter.call(ot),K=z.call(x,x),nt=w&&w.list;T.shortenLabel=nt?function(){for(O=0;O<nt.length;O++)if(Z(x,{dateTimeLabelFormat:nt[O]}),p.attr({text:z.call(x,x)}),p.getBBox().width<D.getSlotWidth(T)-2*y.padding)return;p.attr({text:""})}:void 0,o&&D._addedPlotLB&&T.moveLabel(K,y),gt(p)||T.movedLabel?p&&p.textStr!==K&&!o&&
1(!p.textWidth||y.style.width||p.styles.width||p.css({width:null}),p.attr({text:K}),p.textPxLength=p.getBBox().width):(T.label=p=T.createLabel(K,y),T.rotation=0)}createLabel(T,D,E){let b=this.axis,d=b.chart,v=gt(T)&&D.enabled?d.renderer.text(T,E?.x,E?.y,D.useHTML).add(b.labelGroup):void 0;return v&&(d.styledMode||v.css(Q(D.style)),v.textPxLength=v.getBBox().width),v}destroy(){it(this,this.axis)}getPosition(T,D,E,b){let d=this.axis,v=d.chart,W=b&&v.oldChartHeight||v.chartHeight,I={x:T?kt(d.translate(D+E,void 0,void 0,b)+d.transB):d.left+d.offset+(d.opposite?(b&&v.oldChartWidth||v.chartWidth)-d.right-d.left:0),y:T?W-d.bottom+d.offset-(d.opposite?d.height:0):kt(W-d.translate(D+E,void 0,void 0,b)-d.transB)};return I.y=ut(I.y,-1e5,1e5),$(this,"afterGetPosition",{pos:I}),I}getLabelPosition(T,D,E,b,d,v,W,I){let y,l,M=this.axis,A=M.transA,o=M.isLinked&&M.linkedParent?M.linkedParent.reversed:M.reversed,r=M.staggerLines,p=M.tickRotCorr||{x:0,y:0},g=b||M.reserveSpaceDefault?0:-M.labelOffset*("center"===M.labelAlign?.5:1),w=d.distance,O={};return y=0===M.side?E.rotation?-w:-E.getBBox().height:2===M.side?p.y+w:Math.cos(E.rotation*i)*(p.y-E.getBBox(!1,0).height/2),gt(d.y)&&(y=0===M.side&&M.horiz?d.y+y:d.y),T=T+V(d.x,[0,1,0,-1][M.side]*w)+g+p.x-(v&&b?v*A*(o?-1:1):0),D=D+y-(v&&!b?v*A*(o?1:-1):0),r&&(l=W/(I||1)%r,M.opposite&&(l=r-l-1),D+=M.labelOffset/r*l),O.x=T,O.y=Math.round(D),$(this,"afterGetLabelPosition",{pos:O,tickmarkOffset:v,index:W}),O}getLabelSize(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0}getMarkPath(T,D,E,b,d,v){return v.crispLine([["M",T,D],["L",T+(d?0:-E),D+(d?E:0)]],b)}handleOverflow(T){let w,O,N,D=this.axis,E=D.options.labels,b=T.x,d=D.chart.chartWidth,v=D.chart.spacing,W=V(D.labelLeft,Math.min(D.pos,v[3])),I=V(D.labelRight,Math.max(D.isRadial?0:D.pos+D.len,d-v[1])),y=this.label,l=this.rotation,M={left:0,center:.5,right:1}[D.labelAlign||y.attr("align")],A=y.getBBox().width,o=D.getSlotWidth(this),r={},p=o,g=1;l||"justify"!==E.overflow?l<0&&b-M*A<W?N=Math.round(b/Math.cos(l*i)-W):l>0&&b+M*A>I&&(N=Math.round((d-b)/Math.cos(l*i))):(w=b-M*A,O=b+(1-M)*A,w<W?p=T.x+p*(1-M)-W:O>I&&(p=I-T.x+p*M,g=-1),(p=Math.min(o,p))<o&&"center"===D.labelAlign&&(T.x+=g*(o-p-M*(o-Math.min(A,p)))),(A>p||D.autoRotation&&(y.styles||{}).width)&&(N=p)),N&&(this.shortenLabel?this.shortenLabel():(r.width=Math.floor(N)+"px",(E.style||{}).textOverflow||(r.textOverflow="ellipsis"),y.css(r)))}moveLabel(T,D){let W,E=this,b=E.label,d=E.axis,v=!1;b&&b.textStr===T?(E.movedLabel=b,v=!0,delete E.label):G(d.ticks,function(I){v||I.isNew||I===E||!I.label||I.label.textStr!==T||(E.movedLabel=I.label,v=!0,I.labelPos=E.movedLabel.xy,delete I.label)}),!v&&(E.labelPos||b)&&(W=E.labelPos||b.xy,E.movedLabel=E.createLabel(T,D,W),E.movedLabel&&E.movedLabel.attr({opacity:0}))}render(T,D,E){let b=this.axis,d=b.horiz,v=this.pos,W=V(this.tickmarkOffset,b.tickmarkOffset),I=this.getPosition(d,v,W,D),y=I.x,l=I.y,M=b.pos,A=M+b.len,o=d&&y===A||!d&&l===M?-1:1,r=d?y:l;!b.chart.polar&&this.isNew&&(kt(r)<M||r>A)&&(E=0);let p=V(E,this.label&&this.label.newOpacity,1);E=V(E,1),this.isActive=!0,this.renderGridLine(D,E,o),this.renderMark(I,E,o),this.renderLabel(I,D,p,T),this.isNew=!1,$(this,"afterRender")}renderGridLine(T,D,E){let A,b=this.axis,d=b.options,v={},W=this.pos,I=this.type,y=V(this.tickmarkOffset,b.tickmarkOffset),l=b.chart.renderer,M=this.gridLine,o=d.gridLineWidth,r=d.gridLineColor,p=d.gridLineDashStyle;"minor"===this.type&&(o=d.minorGridLineWidth,r=d.minorGridLineColor,p=d.minorGridLineDashStyle),M||(b.chart.styledMode||(v.stroke=r,v["stroke-width"]=o||0,v.dashstyle=p),I||(v.zIndex=1),T&&(D=0),this.gridLine=M=l.path().attr(v).addClass("highcharts-"+(I?I+"-":"")+"grid-line").add(b.gridGroup)),M&&(A=b.getPlotLinePath({value:W+y,lineWidth:M.strokeWidth()*E,force:"pass",old:T,acrossPanes:!1}))&&M[T||this.isNew?"attr":"animate"]({d:A,opacity:D})}renderMark(T,D,E){let b=this.axis,d=b.options,v=b.chart.renderer,W=this.type,I=b.tickSize(W?W+"Tick":"tick"),y=T.x,l=T.y,M=V(d["minor"!==W?"tickWidth":"minorTickWidth"],!W&&b.isXAxis?1:0),A=d["minor"!==W?"tickColor":"minorTickColor"],o=this.mark,r=!o;I&&(b.opposite&&(I[0]=-I[0]),o||(this.mark=o=v.path().addClass("highcharts-"+(W?W+"-":"")+"tick").add(b.axisGroup),b.chart.styledMode||o.attr({stroke:A,"stroke-width":M})),o[r?"attr":"animate"]({d:this.getMarkPath(y,l,I[0],o.strokeWidth()*E,b.horiz,v),opacity:D}))}renderLabel(T,D,E,b){let d=this.axis,v=d.horiz,W=d.options,I=this.label,y=W.labels,l=y.step,M=V(this.tickmarkOffset,d.tickmarkOffset),A=T.x,o=T.y,r=!0;I&&P(A)&&(I.xy=T=this.getLabelPosition(A,o,I,v,y,M,b,l),this.isFirst&&!this.isLast&&!W.showFirstLabel||this.isLast&&!this.isFirst&&!W.showLastLabel?r=!1:!v||y.step||y.rotation||D||0===E||this.handleOverflow(T),l&&b%l&&(r=!1),r&&P(T.y)?(T.opacity=E,I[this.isNewLabel?"attr":"animate"](T).show(!0),this.isNewLabel=!1):(I.hide(),this.isNewLabel=!0))}replaceMovedLabel(){let T=this.label,D=this.axis;T&&!this.isNew&&(T.animate({opacity:0}
1,void 0,T.destroy),delete this.label),D.isDirty=!0,this.label=this.movedLabel,delete this.movedLabel}}}),Dt(q,"Core/Axis/Axis.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Axis/AxisDefaults.js"],q["Core/Color/Color.js"],q["Core/Defaults.js"],q["Core/Foundation.js"],q["Core/Globals.js"],q["Core/Axis/Tick.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut,kt,gt,it){let{animObject:Z}=m,{xAxis:$,yAxis:P}=mt,{defaultOptions:Q}=i,{registerEventOptions:G}=ut,{deg2rad:V}=kt,{arrayMax:T,arrayMin:D,clamp:E,correctFloat:b,defined:d,destroyObjectProperties:v,erase:W,error:I,extend:y,fireEvent:l,getClosestDistance:M,insertItem:A,isArray:o,isNumber:r,isString:p,merge:g,normalizeTickInterval:w,objectEach:O,pick:N,relativeLength:x,removeEvent:z,splat:K,syncTimeout:nt}=it,ot=(J,f)=>w(f,void 0,void 0,N(J.options.allowDecimals,f<.5||void 0!==J.tickAmount),!!J.tickAmount);y(Q,{xAxis:$,yAxis:g($,P)});class Y{constructor(f,F,B){this.init(f,F,B)}init(f,F,B=this.coll){let s="xAxis"===B,_=this.isZAxis||(f.inverted?!s:s);this.chart=f,this.horiz=_,this.isXAxis=s,this.coll=B,l(this,"init",{userOptions:F}),this.opposite=N(F.opposite,this.opposite),this.side=N(F.side,this.side,_?this.opposite?0:2:this.opposite?1:3),this.setOptions(F);let h=this.options,C=h.labels,S=h.type;this.userOptions=F,this.minPixelPadding=0,this.reversed=N(h.reversed,this.reversed),this.visible=h.visible,this.zoomEnabled=h.zoomEnabled,this.hasNames="category"===S||!0===h.categories,this.categories=o(h.categories)&&h.categories||(this.hasNames?[]:void 0),this.names||(this.names=[],this.names.keys={}),this.plotLinesAndBandsGroups={},this.positiveValuesOnly=!!this.logarithmic,this.isLinked=d(h.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},this.len=0,this.minRange=this.userMinRange=h.minRange||h.maxZoom,this.range=h.range,this.offset=h.offset||0,this.max=void 0,this.min=void 0;let U=N(h.crosshair,K(f.options.tooltip.crosshairs)[s?0:1]);this.crosshair=!0===U?{}:U,-1===f.axes.indexOf(this)&&(s?f.axes.splice(f.xAxis.length,0,this):f.axes.push(this),A(this,f[this.coll])),f.orderItems(this.coll),this.series=this.series||[],f.inverted&&!this.isZAxis&&s&&!d(this.reversed)&&(this.reversed=!0),this.labelRotation=r(C.rotation)?C.rotation:void 0,G(this,h),l(this,"afterInit")}setOptions(f){this.options=g(this.horiz?{labels:{autoRotation:[-45]},margin:15}:{title:{rotation:90*this.side}},Q[this.coll],f),l(this,"afterSetOptions",{userOptions:f})}defaultLabelFormatter(){let dt,_t,f=this.axis,{numberFormatter:F}=this.chart,B=r(this.value)?this.value:NaN,s=f.chart.time,_=f.categories,h=this.dateTimeLabelFormat,C=Q.lang,S=C.numericSymbols,U=C.numericSymbolMagnitude||1e3,et=f.logarithmic?Math.abs(B):f.tickInterval,ct=S&&S.length;if(_)_t=`${this.value}`;else if(h)_t=s.dateFormat(h,B);else if(ct&&S&&et>=1e3)for(;ct--&&void 0===_t;)et>=(dt=Math.pow(U,ct+1))&&10*B%dt==0&&null!==S[ct]&&0!==B&&(_t=F(B/dt,-1)+S[ct]);return void 0===_t&&(_t=Math.abs(B)>=1e4?F(B,-1):F(B,-1,void 0,"")),_t}getSeriesExtremes(){let f,F=this;l(this,"getSeriesExtremes",null,function(){F.hasVisibleSeries=!1,F.dataMin=F.dataMax=F.threshold=void 0,F.softThreshold=!F.isXAxis,F.series.forEach(B=>{if(B.reserveSpace()){let _,C,S,s=B.options,h=s.threshold;if(F.hasVisibleSeries=!0,F.positiveValuesOnly&&0>=(h||0)&&(h=void 0),F.isXAxis)(_=B.xData)&&_.length&&(_=F.logarithmic?_.filter(U=>U>0):_,C=(f=B.getXExtremes(_)).min,S=f.max,r(C)||C instanceof Date||(_=_.filter(r),C=(f=B.getXExtremes(_)).min,S=f.max),_.length&&(F.dataMin=Math.min(N(F.dataMin,C),C),F.dataMax=Math.max(N(F.dataMax,S),S)));else{let U=B.applyExtremes();r(U.dataMin)&&(C=U.dataMin,F.dataMin=Math.min(N(F.dataMin,C),C)),r(U.dataMax)&&(S=U.dataMax,F.dataMax=Math.max(N(F.dataMax,S),S)),d(h)&&(F.threshold=h),(!s.softThreshold||F.positiveValuesOnly)&&(F.softThreshold=!1)}}})}),l(this,"afterGetSeriesExtremes")}translate(f,F,B,s,_,h){let C=this.linkedParent||this,S=s&&C.old?C.old.min:C.min;if(!r(S))return NaN;let U=C.minPixelPadding,et=(C.isOrdinal||C.brokenAxis?.hasBreaks||C.logarithmic&&_)&&C.lin2val,ct=1,dt=0,_t=s&&C.old?C.old.transA:C.transA,vt=0;if(_t||(_t=C.transA),B&&(ct*=-1,dt=C.len),C.reversed&&(ct*=-1,dt-=ct*(C.sector||C.len)),F)vt=(f=f*ct+dt-U)/_t+S,et&&(vt=C.lin2val(vt));else{et&&(f=C.val2lin(f));let Mt=ct*(f-S)*_t;vt=(C.isRadial?Mt:b(Mt))+dt+ct*U+(r(h)?_t*h:0)}return vt}toPixels(f,F){return this.translate(f,!1,!this.horiz,void 0,!0)+(F?0:this.pos)}toValue(f,F){return this.translate(f-(F?0:this.pos),!0,!this.horiz,void 0,!0)}getPlotLinePath(f){let vt,Mt,X,H,tt,F=this,B=F.chart,s=F.left,_=F.top,h=f.old,C=f.value,S=f.lineWidth,U=h&&B.oldChartHeight||B.chartHe
1ight,et=h&&B.oldChartWidth||B.chartWidth,ct=F.transB,dt=f.translatedValue,_t=f.force;function st(lt,ft,ht){return"pass"!==_t&&(lt<ft||lt>ht)&&(_t?lt=E(lt,ft,ht):tt=!0),lt}let yt={value:C,lineWidth:S,old:h,force:_t,acrossPanes:f.acrossPanes,translatedValue:dt};return l(this,"getPlotLinePath",yt,function(lt){vt=X=Math.round((dt=E(dt=N(dt,F.translate(C,void 0,void 0,h)),-1e5,1e5))+ct),Mt=H=Math.round(U-dt-ct),r(dt)?F.horiz?(Mt=_,H=U-F.bottom+(B.scrollablePixelsY||0),vt=X=st(vt,s,s+F.width)):(vt=s,X=et-F.right+(B.scrollablePixelsX||0),Mt=H=st(Mt,_,_+F.height)):(tt=!0,_t=!1),lt.path=tt&&!_t?void 0:B.renderer.crispLine([["M",vt,Mt],["L",X,H]],S||1)}),yt.path}getLinearTickPositions(f,F,B){let s,_,h,C=b(Math.floor(F/f)*f),S=b(Math.ceil(B/f)*f),U=[];if(b(C+f)===C&&(h=20),this.single)return[F];for(s=C;s<=S&&(U.push(s),(s=b(s+f,h))!==_);)_=s;return U}getMinorTickInterval(){let{minorTicks:f,minorTickInterval:F}=this.options;return!0===f?N(F,"auto"):!1!==f?F:void 0}getMinorTickPositions(){let U,f=this.options,F=this.tickPositions,B=this.minorTickInterval,s=this.pointRangePadding||0,_=(this.min||0)-s,h=(this.max||0)+s,C=h-_,S=[];if(C&&C/B<this.len/3){let et=this.logarithmic;if(et)this.paddedTicks.forEach(function(ct,dt,_t){dt&&S.push.apply(S,et.getLogTickPositions(B,_t[dt-1],_t[dt],!0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())S=S.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(B),_,h,f.startOfWeek));else for(U=_+(F[0]-_)%B;U<=h&&U!==S[0];U+=B)S.push(U)}return 0!==S.length&&this.trimTicks(S),S}adjustForMinRange(){let h,C,S,U,f=this.options,F=this.logarithmic,{max:B,min:s,minRange:_}=this;this.isXAxis&&void 0===_&&!F&&(_=d(f.min)||d(f.max)||d(f.floor)||d(f.ceiling)?null:Math.min(5*(M(this.series.map(et=>(et.xIncrement?et.xData?.slice(0,2):et.xData)||[]))||0),this.dataMax-this.dataMin)),r(B)&&r(s)&&r(_)&&B-s<_&&(C=this.dataMax-this.dataMin>=_,h=(_-B+s)/2,S=[s-h,N(f.min,s-h)],C&&(S[2]=F?F.log2lin(this.dataMin):this.dataMin),U=[(s=T(S))+_,N(f.max,s+_)],C&&(U[2]=F?F.log2lin(this.dataMax):this.dataMax),(B=D(U))-s<_&&(S[0]=B-_,S[1]=N(f.min,B-_),s=T(S))),this.minRange=_,this.min=s,this.max=B}getClosest(){let f,F;if(this.categories)F=1;else{let B=[];this.series.forEach(function(s){let _=s.closestPointRange;1===s.xData?.length?B.push(s.xData[0]):!s.noSharedTooltip&&d(_)&&s.reserveSpace()&&(F=d(F)?Math.min(F,_):_)}),B.length&&(B.sort((s,_)=>s-_),f=M([B]))}return f&&F?Math.min(f,F):f||F}nameToX(f){let _,F=o(this.options.categories),B=F?this.categories:this.names,s=f.options.x;return f.series.requireSorting=!1,d(s)||(s=this.options.uniqueNames&&B?F?B.indexOf(f.name):N(B.keys[f.name],-1):f.series.autoIncrement()),-1===s?!F&&B&&(_=B.length):_=s,void 0!==_?(this.names[_]=f.name,this.names.keys[f.name]=_):f.x&&(_=f.x),_}updateNames(){let f=this,F=this.names;F.length>0&&(Object.keys(F.keys).forEach(function(B){delete F.keys[B]}),F.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(B=>{B.xIncrement=null,(!B.points||B.isDirtyData)&&(f.max=Math.max(f.max,B.xData.length-1),B.processData(),B.generatePoints()),B.data.forEach(function(s,_){let h;s?.options&&void 0!==s.name&&void 0!==(h=f.nameToX(s))&&h!==s.x&&(s.x=h,B.xData[_]=h)})}))}setAxisTranslation(){let C,et,f=this,F=f.max-f.min,B=f.linkedParent,s=!!f.categories,_=f.isXAxis,h=f.axisPointRange||0,S=0,U=0,ct=f.transA;(_||s||h)&&(C=f.getClosest(),B?(S=B.minPointOffset,U=B.pointRangePadding):f.series.forEach(function(dt){let _t=s?1:_?N(dt.options.pointRange,C,0):f.axisPointRange||0,vt=dt.options.pointPlacement;if(h=Math.max(h,_t),!f.single||s){let Mt=dt.is("xrange")?!_:_;S=Math.max(S,Mt&&p(vt)?0:_t/2),U=Math.max(U,Mt&&"on"===vt?0:_t)}}),et=f.ordinal&&f.ordinal.slope&&C?f.ordinal.slope/C:1,f.minPointOffset=S*=et,f.pointRangePadding=U*=et,f.pointRange=Math.min(h,f.single&&s?1:F),_&&C&&(f.closestPointRange=C)),f.translationSlope=f.transA=ct=f.staticScale||f.len/(F+U||1),f.transB=f.horiz?f.left:f.bottom,f.minPixelPadding=ct*S,l(this,"afterSetAxisTranslation")}minFromRange(){let{max:f,min:F}=this;return r(f)&&r(F)&&f-F||void 0}setTickInterval(f){let ht,Et,Bt,At,Ot,{categories:F,chart:B,dataMax:s,dataMin:_,dateTime:h,isXAxis:C,logarithmic:S,options:U,softThreshold:et}=this,ct=r(this.threshold)?this.threshold:void 0,dt=this.minRange||0,{ceiling:_t,floor:vt,linkedTo:Mt,softMax:X,softMin:H}=U,tt=r(Mt)&&B[this.coll]?.[Mt],st=U.tickPixelInterval,yt=U.maxPadding,lt=U.minPadding,ft=0,Tt=r(U.tickInterval)&&U.tickInterval>=0?U.tickInterval:void 0;if(h||F||tt||this.getTickAmount(),At=N(this.userMin,U.min),Ot=N(this.userMax,U.max),tt?(this.linkedParent=tt,ht=tt.getExtremes(),this.min=N(ht.min,ht.dataMin),this.max=N(ht.max,ht.dataMax),U.type!==tt.options.type&&I(11,!0,B)):(et&&d(ct)&&r(s)&&r(_)&&(_>=ct?(Et=ct,lt=0):s<=ct&&(Bt=ct,yt=0)),this.min=N(At,Et,_),this.max=N(Ot,Bt,s)),r(this.max)&&r(this.min)&&(S&&(this.positiveValuesOnly&&!f&&0>=Math.min(this.min,N(_,this.min))&&I(10,!0,B),this.min=b(S.log2lin(this.min),16),this.max=b(S.log2lin(this.max),16)),this.range&&r(_)&&(this.userMin=this.min=At=Math.max(_,this.minFromRange()||0),this.userMax=Ot=this.max,this.range=void 0)),l(this,"foundExtremes"),this.adjustForMinRange(),r(this.min)&&r(this.max)){if(!r(this.userMin)&&r(H)&&H<this.min&&(this.min=At=H),!r(this.userMax)&&r(X)&&X>this.max&&(this.max=Ot=X),F||this.axisPointRange||this.stacking?.usePercentage||tt||!(ft=this.max-this.min)||(!d(At)&<&&(this.min-=ft*lt),d(Ot)||!yt||(this.max+=ft*yt)),!r(this.userMin)&&r(vt)&&(this.min=Math.max(this.min,vt)),!r(this.userMax)&&r(_t)&&(this.max=Math.min(this.max,_t)),et&&r(_)&&r(s)){let Ft=ct||0;!d(At)&&this.min<Ft&&_>=Ft?this.min=U.minRange?Math.min(Ft,this.max-dt):Ft:!d(Ot)&&this.max>Ft&&s<=Ft&&(this.max=U.minRange?Math.max(Ft,this.min+dt):Ft)}!B.polar&&this.min>this.max&&(d(U.min)?this.max=this.min:d(U.max)&&(this.min=this.max)),ft=this.max-this.min}if(this.tickInterval=this.min!==this.max&&r(this.min)&&r(this.max)?tt&&!Tt&&st===tt.options.tickPixelInterval?Tt=tt.tickInterval:N(Tt,this.tickAmount?ft/Math.max(this.tickAmount-1,1):void 0,F?1:ft*st/Math.max(this.len,st)):1,C&&!f){let Ft=this.min!==this.old?.min||this.max!==this.old?.max;
vendor: 4,656 bytes, line 1
1this.series.forEach(function(Pt){Pt.forceCrop=Pt.forceCropping?.(),Pt.processData(Ft)}),l(this,"postProcessData",{hasExtremesChanged:Ft})}this.setAxisTranslation(),l(this,"initialAxisTranslation"),this.pointRange&&!Tt&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval));let Nt=N(U.minTickInterval,h&&!this.series.some(Ft=>Ft.noSharedTooltip)?this.closestPointRange:0);!Tt&&this.tickInterval<Nt&&(this.tickInterval=Nt),h||S||Tt||(this.tickInterval=ot(this,this.tickInterval)),this.tickAmount||(this.tickInterval=this.unsquish()),this.setTickPositions()}setTickPositions(){let U,f=this.options,F=f.tickPositions,B=f.tickPositioner,s=this.getMinorTickInterval(),_=!this.isPanning,h=_&&f.startOnTick,C=_&&f.endOnTick,S=[];if(this.tickmarkOffset=this.categories&&"between"===f.tickmarkPlacement&&1===this.tickInterval?.5:0,this.minorTickInterval="auto"===s&&this.tickInterval?this.tickInterval/f.minorTicksPerMajor:s,this.single=this.min===this.max&&d(this.min)&&!this.tickAmount&&(this.min%1==0||!1!==f.allowDecimals),F)S=F.slice();else if(r(this.min)&&r(this.max)){if(!this.ordinal?.positions&&(this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))S=[this.min,this.max],I(19,!1,this.chart);else if(this.dateTime)S=this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,f.units),this.min,this.max,f.startOfWeek,this.ordinal?.positions,this.closestPointRange,!0);else if(this.logarithmic)S=this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else{let et=this.tickInterval,ct=et;for(;ct<=2*et&&(S=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&&S.length>this.tickAmount);)this.tickInterval=ot(this,ct*=1.1)}S.length>this.len&&(S=[S[0],S[S.length-1]])[0]===S[1]&&(S.length=1),B&&(this.tickPositions=S,(U=B.apply(this,[this.min,this.max]))&&(S=U))}this.tickPositions=S,this.paddedTicks=S.slice(0),this.trimTicks(S,h,C),!this.isLinked&&r(this.min)&&r(this.max)&&(this.single&&S.length<2&&!this.categories&&!this.series.some(et=>et.is("heatmap")&&"between"===et.options.pointPlacement)&&(this.min-=.5,this.max+=.5),F||U||this.adjustTickAmount()),l(this,"afterSetTickPositions")}trimTicks(f,F,B){let s=f[0],_=f[f.length-1],h=!this.isOrdinal&&this.minPointOffset||0;if(l(this,"trimTicks"),!this.isLinked){if(F&&s!==-1/0)this.min=s;else for(;this.min-h>f[0];)f.shift();if(B)this.max=_;else for(;this.max+h<f[f.length-1];)f.pop();0===f.length&&d(s)&&!this.options.tickPositions&&f.push((_+s)/2)}}alignToOthers(){let f,F=this,B=F.chart,s=[this],_=F.options,h=B.options.chart,C="yAxis"===this.coll&&h.alignThresholds,S=[];if(F.thresholdAlignment=void 0,(!1!==h.alignTicks&&_.alignTicks||C)&&!1!==_.startOnTick&&!1!==_.endOnTick&&!F.logarithmic){let U=ct=>{let{horiz:dt,options:_t}=ct;return[dt?_t.left:_t.top,_t.width,_t.height,_t.pane].join(",")},et=U(this);B[this.coll].forEach(function(ct){let{series:dt}=ct;dt.length&&dt.some(_t=>_t.visible)&&ct!==F&&U(ct)===et&&(f=!0,s.push(ct))})}if(f&&C){s.forEach(et=>{let ct=et.getThresholdAlignment(F);r(ct)&&S.push(ct)});let U=S.length>1?S.reduce((et,ct)=>et+ct,0)/S.length:void 0;s.forEach(et=>{et.thresholdAlignment=U})}return f}getThresholdAlignment(f){if((!r(this.dataMin)||this!==f&&this.series.some(F=>F.isDirty||F.isDirtyData))&&this.getSeriesExtremes(),r(this.threshold)){let F=E((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1);return this.options.reversed&&(F=1-F),F}}getTickAmount(){let f=this.options,F=f.tickPixelInterval,B=f.tickAmount;d(f.tickInterval)||B||!(this.len<F)||this.isRadial||this.logarithmic||!f.startOnTick||!f.endOnTick||(B=2),!B&&this.alignToOthers()&&(B=Math.ceil(this.len/F)+1),B<4&&(this.finalTickAmt=B,B=5),this.tickAmount=B}adjustTickAmount(){let ct,dt,vt,f=this,{finalTickAmt:F,max:B,min:s,options:_,tickPositions:h,tickAmount:C,thresholdAlignment:S}=f,U=h?.length,et=N(f.threshold,f.softThreshold?0:null),_t=f.tickInterval,Mt=()=>h.push(b(h[h.length-1]+_t)),X=()=>h.unshift(b(h[0]-_t));if(r(S)&&(vt=S<.5?Math.ceil(S*(C-1)):Math.floor(S*(C-1)),_.reversed&&(vt=C-1-vt)),f.hasData()&&r(s)&&r(B)){let H=()=>{f.transA*=(U-1)/(C-1),f.min=_.startOnTick?h[0]:Math.min(s,h[0]),f.max=_.endOnTick?h[h.length-1]:Math.max(B,h[h.length-1])};if(r(vt)&&r(f.threshold)){for(;h[vt]!==et||h.length!==C||h[0]>s||h[h.length-1]<B;){for(h.length=0,h.push(f.threshold);h.length<C;)void 0===h[vt]||h[vt]>f.threshold?X():Mt();if(_t>8*f.tickInterval)break;_t*=2}H()}else if(U<C){for(;h.length<C;)h.length%2||s===et?Mt():X();H()}if(d(F)){for(dt=ct=h.length;dt--;)(3===F&&dt%2==1||F<=2&&dt>0&&dt<ct-1)&&h.splice(dt,1);f.finalTickAmt=void 0}}}setScale(){let{coll:f,stacking:F}=this,B=!1,s=!1;
1this.series.forEach(h=>{B=B||h.isDirtyData||h.isDirty,s=s||h.xAxis&&h.xAxis.isDirty||!1}),this.setAxisSize();let _=this.len!==(this.old&&this.old.len);_||B||s||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||this.alignToOthers()?(F&&"yAxis"===f&&F.buildStacks(),this.forceRedraw=!1,this.userMinRange||(this.minRange=void 0),this.getSeriesExtremes(),this.setTickInterval(),F&&"xAxis"===f&&F.buildStacks(),this.isDirty||(this.isDirty=_||this.min!==this.old?.min||this.max!==this.old?.max)):F&&F.cleanStacks(),B&&delete this.allExtremes,l(this,"afterSetScale")}setExtremes(f,F,B=!0,s,_){this.series.forEach(h=>{delete h.kdTree}),l(this,"setExtremes",_=y(_,{min:f,max:F}),h=>{this.userMin=h.min,this.userMax=h.max,this.eventArgs=h,B&&this.chart.redraw(s)})}setAxisSize(){let f=this.chart,F=this.options,B=F.offsets||[0,0,0,0],s=this.horiz,_=this.width=Math.round(x(N(F.width,f.plotWidth-B[3]+B[1]),f.plotWidth)),h=this.height=Math.round(x(N(F.height,f.plotHeight-B[0]+B[2]),f.plotHeight)),C=this.top=Math.round(x(N(F.top,f.plotTop+B[0]),f.plotHeight,f.plotTop)),S=this.left=Math.round(x(N(F.left,f.plotLeft+B[3]),f.plotWidth,f.plotLeft));this.bottom=f.chartHeight-h-C,this.right=f.chartWidth-_-S,this.len=Math.max(s?_:h,0),this.pos=s?S:C}getExtremes(){let f=this.logarithmic;return{min:f?b(f.lin2log(this.min)):this.min,max:f?b(f.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}}getThreshold(f){let F=this.logarithmic,B=F?F.lin2log(this.min):this.min,s=F?F.lin2log(this.max):this.max;return null===f||f===-1/0?f=B:f===1/0?f=s:B>f?f=B:s<f&&(f=s),this.translate(f,0,1,0,1)}autoLabelAlign(f){let F=(N(f,0)-90*this.side+720)%360,B={align:"center"};return l(this,"autoLabelAlign",B,function(s){F>15&&F<165?s.align="right":F>195&&F<345&&(s.align="left")}),B.align}tickSize(f){let _,F=this.options,B=N(F["tick"===f?"tickWidth":"minorTickWidth"],"tick"===f&&this.isXAxis&&!this.categories?1:0),s=F["tick"===f?"tickLength":"minorTickLength"];B&&s&&("inside"===F[f+"Position"]&&(s=-s),_=[s,B]);let h={tickSize:_};return l(this,"afterTickSize",h),h.tickSize}labelMetrics(){let f=this.chart.renderer,F=this.ticks,B=F[Object.keys(F)[0]]||{};return this.chart.renderer.fontMetrics(B.label||B.movedLabel||f.box)}unsquish(){let et,dt,f=this.options.labels,F=this.horiz,B=this.tickInterval,s=this.len/(((this.categories?1:0)+this.max-this.min)/B),_=f.rotation,h=this.labelMetrics().h,C=Math.max(this.max-this.min,0),S=function(_t){let vt=_t/(s||1);return(vt=vt>1?Math.ceil(vt):1)*B>C&&_t!==1/0&&s!==1/0&&C&&(vt=Math.ceil(C/B)),b(vt*B)},U=B,ct=Number.MAX_VALUE;if(F){if(!f.staggerLines&&(r(_)?dt=[_]:s<f.autoRotationLimit&&(dt=f.autoRotation)),dt){let _t,vt;for(let Mt of dt)(Mt===_||Mt&&Mt>=-90&&Mt<=90)&&(vt=(_t=S(Math.abs(h/Math.sin(V*Mt))))+Math.abs(Mt/360))<ct&&(ct=vt,et=Mt,U=_t)}}else U=S(.75*h);return this.autoRotation=dt,this.labelRotation=N(et,r(_)?_:0),f.step?B:U}getSlotWidth(f){let F=this.chart,B=this.horiz,s=this.options.labels,_=Math.max(this.tickPositions.length-(this.categories?0:1),1),h=F.margin[3];if(f&&r(f.slotWidth))return f.slotWidth;if(B&&s.step<2)return s.rotation?0:(this.staggerLines||1)*this.len/_;if(!B){let C=s.style.width;if(void 0!==C)return parseInt(String(C),10);if(h)return h-F.spacing[3]}return.33*F.chartWidth}renderUnsquish(){let _t,vt,X,H,f=this.chart,F=f.renderer,B=this.tickPositions,s=this.ticks,_=this.options.labels,h=_.style,C=this.horiz,S=this.getSlotWidth(),U=Math.max(1,Math.round(S-2*_.padding)),et={},ct=this.labelMetrics(),dt=h.textOverflow,Mt=0;if(p(_.rotation)||(et.rotation=_.rotation||0),B.forEach(function(tt){let st=s[tt];st.movedLabel&&st.replaceMovedLabel(),st&&st.label&&st.label.textPxLength>Mt&&(Mt=st.label.textPxLength)}),this.maxLabelLength=Mt,this.autoRotation)Mt>U&&Mt>ct.h?et.rotation=this.labelRotation:this.labelRotation=0;else if(S&&(_t=U,!dt))for(vt="clip",H=B.length;!C&&H--;)(X=s[B[H]].label)&&("ellipsis"===X.styles.textOverflow?X.css({textOverflow:"clip"}):X.textPxLength>S&&X.css({width:S+"px"}),X.getBBox().height>this.len/B.length-(ct.h-ct.f)&&(X.specificTextOverflow="ellipsis"));et.rotation&&(_t=Mt>.5*f.chartHeight?.33*f.chartHeight:Mt,dt||(vt="ellipsis")),this.labelAlign=_.align||this.autoLabelAlign(this.labelRotation),this.labelAlign&&(et.align=this.labelAlign),B.forEach(function(tt){let st=s[tt],yt=st&&st.label,lt=h.width,ft={};
1yt&&(yt.attr(et),st.shortenLabel?st.shortenLabel():_t&&!lt&&"nowrap"!==h.whiteSpace&&(_t<yt.textPxLength||"SPAN"===yt.element.tagName)?(ft.width=_t+"px",dt||(ft.textOverflow=yt.specificTextOverflow||vt),yt.css(ft)):!yt.styles.width||ft.width||lt||yt.css({width:null}),delete yt.specificTextOverflow,st.rotation=et.rotation)},this),this.tickRotCorr=F.rotCorr(ct.b,this.labelRotation||0,0!==this.side)}hasData(){return this.series.some(function(f){return f.hasData()})||this.options.showEmpty&&d(this.min)&&d(this.max)}addTitle(f){let F,_=this.opposite,h=this.options.title,C=this.chart.styledMode;this.axisTitle||((F=h.textAlign)||(F=(this.horiz?{low:"left",middle:"center",high:"right"}:{low:_?"right":"left",middle:"center",high:_?"left":"right"})[h.align]),this.axisTitle=this.chart.renderer.text(h.text||"",0,0,h.useHTML).attr({zIndex:7,rotation:h.rotation||0,align:F}).addClass("highcharts-axis-title"),C||this.axisTitle.css(g(h.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0),C||h.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"}),this.axisTitle[f?"show":"hide"](f)}generateTick(f){let F=this.ticks;F[f]?F[f].addLabel():F[f]=new gt(this,f)}createGroups(){let{axisParent:f,chart:F,coll:B,options:s}=this,_=F.renderer,h=(C,S,U)=>_.g(C).attr({zIndex:U}).addClass(`highcharts-${B.toLowerCase()}${S} `+(this.isRadial?`highcharts-radial-axis${S} `:"")+(s.className||"")).add(f);this.axisGroup||(this.gridGroup=h("grid","-grid",s.gridZIndex),this.axisGroup=h("axis","",s.zIndex),this.labelGroup=h("axis-labels","-labels",s.labels.zIndex))}getOffset(){let H,st,ft,ht,f=this,{chart:F,horiz:B,options:s,side:_,ticks:h,tickPositions:C,coll:S}=f,U=F.inverted&&!f.isZAxis?[1,0,3,2][_]:_,et=f.hasData(),ct=s.title,dt=s.labels,_t=r(s.crossing),vt=F.axisOffset,Mt=F.clipOffset,X=[-1,1,1,-1][_],tt=0,yt=0,lt=0;if(f.showAxis=H=et||s.showEmpty,f.staggerLines=f.horiz&&dt.staggerLines||void 0,f.createGroups(),et||f.isLinked?(C.forEach(function(Tt){f.generateTick(Tt)}),f.renderUnsquish(),f.reserveSpaceDefault=0===_||2===_||{1:"left",3:"right"}[_]===f.labelAlign,N(dt.reserveSpace,!_t&&null,"center"===f.labelAlign||null,f.reserveSpaceDefault)&&C.forEach(function(Tt){lt=Math.max(h[Tt].getLabelSize(),lt)}),f.staggerLines&&(lt*=f.staggerLines),f.labelOffset=lt*(f.opposite?-1:1)):O(h,function(Tt,Et){Tt.destroy(),delete h[Et]}),ct?.text&&!1!==ct.enabled&&(f.addTitle(H),H&&!_t&&!1!==ct.reserveSpace&&(f.titleOffset=tt=f.axisTitle.getBBox()[B?"height":"width"],yt=d(st=ct.offset)?0:N(ct.margin,B?5:10))),f.renderLine(),f.offset=X*N(s.offset,vt[_]?vt[_]+(s.margin||0):0),f.tickRotCorr=f.tickRotCorr||{x:0,y:0},ht=0===_?-f.labelMetrics().h:2===_?f.tickRotCorr.y:0,ft=Math.abs(lt)+yt,lt&&(ft-=ht,ft+=X*(B?N(dt.y,f.tickRotCorr.y+X*dt.distance):N(dt.x,X*dt.distance))),f.axisTitleMargin=N(st,ft),f.getMaxLabelDimensions&&(f.maxLabelDimensions=f.getMaxLabelDimensions(h,C)),"colorAxis"!==S){let Tt=this.tickSize("tick");vt[_]=Math.max(vt[_],(f.axisTitleMargin||0)+tt+X*f.offset,ft,C&&C.length&&Tt?Tt[0]+X*f.offset:0);let Et=!f.axisLine||s.offset?0:2*Math.floor(f.axisLine.strokeWidth()/2);Mt[U]=Math.max(Mt[U],Et)}l(this,"afterGetOffset")}getLinePath(f){let F=this.chart,B=this.opposite,s=this.offset,_=this.horiz,h=this.left+(B?this.width:0)+s,C=F.chartHeight-this.bottom-(B?this.height:0)+s;return B&&(f*=-1),F.renderer.crispLine([["M",_?this.left:h,_?C:this.top],["L",_?F.chartWidth-this.right:h,_?C:F.chartHeight-this.bottom]],f)}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(f){let F=this.horiz,B=this.left,s=this.top,_=this.len,h=this.options.title,C=F?B:s,S=this.opposite,U=this.offset,et=h.x,ct=h.y,dt=this.chart.renderer.fontMetrics(f),_t=f?Math.max(f.getBBox(!1,0).height-dt.h-1,0):0,vt={low:C+(F?0:_),middle:C+_/2,high:C+(F?_:0)}[h.align],Mt=(F?s+this.height:B)+(F?1:-1)*(S?-1:1)*(this.axisTitleMargin||0)+[-_t,_t,dt.f,-_t][this.side],X={x:F?vt+et:Mt+(S?this.width:0)+U+et,y:F?Mt+ct-(S?this.height:0)+U:vt+ct};return l(this,"afterGetTitlePosition",{titlePosition:X}),X}renderMinorTick(f,F){let B=this.minorTicks;B[f]||(B[f]=new gt(this,f,"minor")),F&&B[f].isNew&&B[f].render(null,!0),B[f].render(null,!1,1)}renderTick(f,F,B){let _=this.ticks;(!this.isLinked||f>=this.min&&f<=this.max||this.grid&&this.grid.isColumn)&&(_[f]||(_[f]=new gt(this,f)),B&&_[f].isNew&&_[f].render(F,!0,-1),_[f].render(F))}render(){let f,F,B=this,s=B.chart,_=B.logarithmic,C=B.options,S=B.isLinked,U=B.tickPositions,et=B.axisTitle,ct=B.ticks,dt=B.minorTicks,_t=B.alternateBands,vt=C.stackLabels,Mt=C.alternateGridColor,X=C.crossing,H=B.tickmarkOffset,tt=B.axisLine,st=B.showAxis,yt=Z(s.renderer.globalAnimation);if(B.labelEdge.length=0,B.overlap=!1,[ct,dt,_t].forEach(function(lt){O(lt,function(ft){ft.isActive=!1})}),r(X)){let lt=this.isXAxis?s.yAxis[0]:s.xAxis[0],ft=[1,-1,-1,1][this.side];if(lt){let ht=lt.toPixels(X,!0);B.horiz&&(ht=lt.len-ht),B.offset=ft*ht}}if(B.hasData()||S){let lt=B.chart.hasRendered&&B.old&&r(B.old.min);B.minorTickInterval&&!B.categories&&B.getMinorTickPositions().forEac
1h(function(ft){B.renderMinorTick(ft,lt)}),U.length&&(U.forEach(function(ft,ht){B.renderTick(ft,ht,lt)}),H&&(0===B.min||B.single)&&(ct[-1]||(ct[-1]=new gt(B,-1,null,!0)),ct[-1].render(-1))),Mt&&U.forEach(function(ft,ht){F=void 0!==U[ht+1]?U[ht+1]+H:B.max-H,ht%2==0&&ft<B.max&&F<=B.max+(s.polar?-H:H)&&(_t[ft]||(_t[ft]=new kt.PlotLineOrBand(B,{})),f=ft+H,_t[ft].options={from:_?_.lin2log(f):f,to:_?_.lin2log(F):F,color:Mt,className:"highcharts-alternate-grid"},_t[ft].render(),_t[ft].isActive=!0)}),B._addedPlotLB||(B._addedPlotLB=!0,(C.plotLines||[]).concat(C.plotBands||[]).forEach(function(ft){B.addPlotBandOrLine(ft)}))}[ct,dt,_t].forEach(function(lt){let ft=[],ht=yt.duration;O(lt,function(Tt,Et){Tt.isActive||(Tt.render(Et,!1,0),Tt.isActive=!1,ft.push(Et))}),nt(function(){let Tt=ft.length;for(;Tt--;)lt[ft[Tt]]&&!lt[ft[Tt]].isActive&&(lt[ft[Tt]].destroy(),delete lt[ft[Tt]])},lt!==_t&&s.hasRendered&&ht?ht:0)}),tt&&(tt[tt.isPlaced?"animate":"attr"]({d:this.getLinePath(tt.strokeWidth())}),tt.isPlaced=!0,tt[st?"show":"hide"](st)),et&&st&&(et[et.isNew?"attr":"animate"](B.getTitlePosition(et)),et.isNew=!1),vt&&vt.enabled&&B.stacking&&B.stacking.renderStackTotals(),B.old={len:B.len,max:B.max,min:B.min,transA:B.transA,userMax:B.userMax,userMin:B.userMin},B.isDirty=!1,l(this,"afterRender")}redraw(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(f){f.render()})),this.series.forEach(function(f){f.isDirty=!0})}getKeepProps(){return this.keepProps||Y.keepProps}destroy(f){let F=this,B=F.plotLinesAndBands,s=this.eventOptions;if(l(this,"destroy",{keepEvents:f}),f||z(F),[F.ticks,F.minorTicks,F.alternateBands].forEach(function(_){v(_)}),B){let _=B.length;for(;_--;)B[_].destroy()}for(let _ in["axisLine","axisTitle","axisGroup","gridGroup","labelGroup","cross","scrollbar"].forEach(function(h){F[h]&&(F[h]=F[h].destroy())}),F.plotLinesAndBandsGroups)F.plotLinesAndBandsGroups[_]=F.plotLinesAndBandsGroups[_].destroy();O(F,function(_,h){-1===F.getKeepProps().indexOf(h)&&delete F[h]}),this.eventOptions=s}drawCrosshair(f,F){let h,C,S,et,B=this.crosshair,s=N(B&&B.snap,!0),_=this.chart,U=this.cross;if(l(this,"drawCrosshair",{e:f,point:F}),f||(f=this.cross&&this.cross.e),B&&!1!==(d(F)||!s)){if(s?d(F)&&(C=N("colorAxis"!==this.coll?F.crosshairPos:null,this.isXAxis?F.plotX:this.len-F.plotY)):C=f&&(this.horiz?f.chartX-this.pos:this.len-f.chartY+this.pos),d(C)&&(et={value:F&&(this.isXAxis?F.x:N(F.stackY,F.y)),translatedValue:C},_.polar&&y(et,{isCrosshair:!0,chartX:f&&f.chartX,chartY:f&&f.chartY,point:F}),h=this.getPlotLinePath(et)||null),!d(h))return void this.hideCrosshair();S=this.categories&&!this.isRadial,U||(this.cross=U=_.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(S?"category ":"thin ")+(B.className||"")).attr({zIndex:N(B.zIndex,2)}).add(),!_.styledMode&&(U.attr({stroke:B.color||(S?xt.parse("#ccd3ff").setOpacity(.25).get():"#cccccc"),"stroke-width":N(B.width,1)}).css({"pointer-events":"none"}),B.dashStyle&&U.attr({dashstyle:B.dashStyle}))),U.show().attr({d:h}),S&&!B.width&&U.attr({"stroke-width":this.transA}),this.cross.e=f}else this.hideCrosshair();l(this,"afterDrawCrosshair",{e:f,point:F})}hideCrosshair(){this.cross&&this.cross.hide(),l(this,"afterHideCrosshair")}update(f,F){let B=this.chart;f=g(this.userOptions,f),this.destroy(!0),this.init(B,f),B.isDirtyBox=!0,N(F,!0)&&B.redraw()}remove(f){let F=this.chart,B=this.coll,s=this.series,_=s.length;for(;_--;)s[_]&&s[_].remove(!1);W(F.axes,this),W(F[B]||[],this),F.orderItems(B),this.destroy(),F.isDirtyBox=!0,N(f,!0)&&F.redraw()}setTitle(f,F){this.update({title:f},F)}setCategories(f,F){this.update({categories:f},F)}}return Y.keepProps=["coll","extKey","hcEvents","names","series","userMax","userMin"],Y}),Dt(q,"Core/Axis/DateTimeAxis.js",[q["Core/Utilities.js"]],function(m){var mt;let{addEvent:xt,getMagnitude:i,normalizeTickInterval:ut,timeUnits:kt}=m;return function(gt){function it(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function Z(){"datetime"===this.options.type?this.dateTime||(this.dateTime=new $(this)):this.dateTime=void 0}gt.compose=function(P){return P.keepProps.includes("dateTime")||(P.keepProps.push("dateTime"),P.prototype.getTimeTicks=it,xt(P,"afterSetOptions",Z)),P};class ${constructor(Q){this.axis=Q}normalizeTimeTickInterval(Q,G){let b,V=G||[["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]],T=V[V.length-1],D=kt[T[0]],E=T[1];for(b=0;b<V.length&&(D=kt[(T=V[b])[0]],E=T[1],!(V[b+1]&&Q<=(D*E[E.length-1]+kt[V[b+1][0]])/2));b++);
1return D===kt.year&&Q<5*D&&(E=[1,2,5]),{unitRange:D,count:ut(Q/D,E,"year"===T[0]?Math.max(i(Q/D),1):1),unitName:T[0]}}getXDateFormat(Q,G){let{axis:V}=this,T=V.chart.time;return V.closestPointRange?T.getDateFormat(V.closestPointRange,Q,V.options.startOfWeek,G)||T.resolveDTLFormat(G.year).main:T.resolveDTLFormat(G.day).main}}gt.Additions=$}(mt||(mt={})),mt}),Dt(q,"Core/Axis/LogarithmicAxis.js",[q["Core/Utilities.js"]],function(m){var mt;let{addEvent:xt,normalizeTickInterval:i,pick:ut}=m;return function(kt){function gt($){let Q=this.logarithmic;"logarithmic"!==$.userOptions.type?this.logarithmic=void 0:Q||(Q=this.logarithmic=new Z(this))}function it(){let $=this.logarithmic;$&&(this.lin2val=function(P){return $.lin2log(P)},this.val2lin=function(P){return $.log2lin(P)})}kt.compose=function($){return $.keepProps.includes("logarithmic")||($.keepProps.push("logarithmic"),xt($,"init",gt),xt($,"afterInit",it)),$};class Z{constructor(P){this.axis=P}getLogTickPositions(P,Q,G,V){let T=this.axis,D=T.len,E=T.options,b=[];if(V||(this.minorAutoInterval=void 0),P>=.5)P=Math.round(P),b=T.getLinearTickPositions(P,Q,G);else if(P>=.08){let d,v,W,I,y,l,M;for(d=P>.3?[1,2,4]:P>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9],v=Math.floor(Q);v<G+1&&!M;v++)for(W=0,I=d.length;W<I&&!M;W++)(y=this.log2lin(this.lin2log(v)*d[W]))>Q&&(!V||l<=G)&&void 0!==l&&b.push(l),l>G&&(M=!0),l=y}else{let d=this.lin2log(Q),v=this.lin2log(G),W=V?T.getMinorTickInterval():E.tickInterval;P=i(P=ut("auto"===W?null:W,this.minorAutoInterval,E.tickPixelInterval/(V?5:1)*(v-d)/((V?D/T.tickPositions.length:D)||1))),b=T.getLinearTickPositions(P,d,v).map(this.log2lin),V||(this.minorAutoInterval=P/5)}return V||(T.tickInterval=P),b}lin2log(P){return Math.pow(10,P)}log2lin(P){return Math.log(P)/Math.LN10}}kt.Additions=Z}(mt||(mt={})),mt}),Dt(q,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[q["Core/Utilities.js"]],function(m){var mt;let{erase:xt,extend:i,isNumber:ut}=m;return function(kt){let gt;function it(T){return this.addPlotBandOrLine(T,"plotBands")}function Z(T,D){let E=this.userOptions,b=new gt(this,T);if(this.visible&&(b=b.render()),b){if(this._addedPlotLB||(this._addedPlotLB=!0,(E.plotLines||[]).concat(E.plotBands||[]).forEach(d=>{this.addPlotBandOrLine(d)})),D){let d=E[D]||[];d.push(T),E[D]=d}this.plotLinesAndBands.push(b)}return b}function $(T){return this.addPlotBandOrLine(T,"plotLines")}function P(T,D,E){let y,M,b=this.getPlotLinePath({value:D,force:!0,acrossPanes:(E=E||this.options).acrossPanes}),d=[],v=this.horiz,W=!ut(this.min)||!ut(this.max)||T<this.min&&D<this.min||T>this.max&&D>this.max,I=this.getPlotLinePath({value:T,force:!0,acrossPanes:E.acrossPanes}),l=1;if(I&&b)for(W&&(M=I.toString()===b.toString(),l=0),y=0;y<I.length;y+=2){let A=I[y],o=I[y+1],r=b[y],p=b[y+1];("M"===A[0]||"L"===A[0])&&("M"===o[0]||"L"===o[0])&&("M"===r[0]||"L"===r[0])&&("M"===p[0]||"L"===p[0])&&(v&&r[1]===A[1]?(r[1]+=l,p[1]+=l):v||r[2]!==A[2]||(r[2]+=l,p[2]+=l),d.push(["M",A[1],A[2]],["L",o[1],o[2]],["L",p[1],p[2]],["L",r[1],r[2]],["Z"])),d.isFlat=M}return d}function Q(T){this.removePlotBandOrLine(T)}function G(T){let D=this.plotLinesAndBands,E=this.options,b=this.userOptions;if(D){let d=D.length;for(;d--;)D[d].id===T&&D[d].destroy();[E.plotLines||[],b.plotLines||[],E.plotBands||[],b.plotBands||[]].forEach(function(v){for(d=v.length;d--;)(v[d]||{}).id===T&&xt(v,v[d])})}}function V(T){this.removePlotBandOrLine(T)}kt.compose=function(T,D){let E=D.prototype;return E.addPlotBand||(gt=T,i(E,{addPlotBand:it,addPlotLine:$,addPlotBandOrLine:Z,getPlotBandPath:P,removePlotBand:Q,removePlotLine:V,removePlotBandOrLine:G})),D}}(mt||(mt={})),mt}),Dt(q,"Core/Axis/PlotLineOrBand/PlotLineOrBand.js",[q["Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js"],q["Core/Utilities.js"]],function(m,mt){let{arrayMax:xt,arrayMin:i,defined:ut,destroyObjectProperties:kt,erase:gt,fireEvent:it,merge:Z,objectEach:$,pick:P}=mt;class Q{static compose(V){return m.compose(Q,V)}constructor(V,T){this.axis=V,this.options=T,this.id=T.id}render(){it(this,"render");let w,{axis:V,options:T}=this,{horiz:D,logarithmic:E}=V,{color:b,events:d,zIndex:v=0}=T,W={},I=V.chart.renderer,y=T.to,l=T.from,M=T.value,A=T.borderWidth,o=T.label,{label:r,svgElem:p}=this,g=[],O=ut(l)&&ut(y),N=ut(M),x=!p,z={class:"highcharts-plot-"+(O?"band ":"line ")+(T.className||"")},K=O?"bands":"lines";if(!V.chart.styledMode&&(N?(z.stroke=b||"#999999",z["stroke-width"]=P(T.width,1),T.dashStyle&&(z.dashstyle=T.dashStyle)):O&&(z.fill=b||"#e6e9ff",A&&(z.stroke=T.borderColor,z["stroke-width"]=A))),W.zIndex=v,K+="-"+v,(w=V.plotLinesAndBandsGroups[K])||(V.plotLinesAndBandsGroups[K]=w=I.g("plot-"+K).attr(W).add()),p||(this.svgElem=p=I.path().attr(z).add(w)),ut(M))g=V.getPlotLinePath({value:E?.log2lin(M)??M,lineWidth:p.strokeWidth(),acrossPanes:T.acrossPanes});else{if(!ut(l)||!ut(y))return;g=V.getPlotBandPath(E?.log2lin(l)??l,E?.log2lin(y)??y,T)}
1return!this.eventsAdded&&d&&($(d,(nt,ot)=>{p?.on(ot,Y=>{d[ot].apply(this,[Y])})}),this.eventsAdded=!0),!x&&p.d||!g?.length?p&&(g?(p.show(),p.animate({d:g})):p.d&&(p.hide(),r&&(this.label=r=r.destroy()))):p.attr({d:g}),o&&(ut(o.text)||ut(o.formatter))&&g?.length&&V.width>0&&V.height>0&&!g.isFlat?(o=Z({align:D&&O&&"center",x:D?!O&&4:10,verticalAlign:!D&&O&&"middle",y:D?O?16:10:O?6:-4,rotation:D&&!O&&90},o),this.renderLabel(o,g,O,v)):r&&r.hide(),this}renderLabel(V,T,D,E){let b=this.axis,v=this.label;v||(this.label=v=b.chart.renderer.text(this.getLabelText(V),0,0,V.useHTML).attr({align:V.textAlign||V.align,rotation:V.rotation,class:"highcharts-plot-"+(D?"band":"line")+"-label"+(V.className||""),zIndex:E}),b.chart.styledMode||v.css(Z({fontSize:"0.8em",textOverflow:"ellipsis"},V.style)),v.add());let W=T.xBounds||[T[0][1],T[1][1],D?T[2][1]:T[0][1]],I=T.yBounds||[T[0][2],T[1][2],D?T[2][2]:T[0][2]],y=i(W),l=i(I);v.align(V,!1,{x:y,y:l,width:xt(W)-y,height:xt(I)-l}),v.alignValue&&"left"!==v.alignValue||v.css({width:(90===v.rotation?b.height-(v.alignAttr.y-b.top):(V.clip?b.width:b.chart.chartWidth)-(v.alignAttr.x-b.left))+"px"}),v.show(!0)}getLabelText(V){return ut(V.formatter)?V.formatter.call(this):V.text}destroy(){gt(this.axis.plotLinesAndBands,this),delete this.axis,kt(this)}}return Q}),Dt(q,"Core/Tooltip.js",[q["Core/Templating.js"],q["Core/Globals.js"],q["Core/Renderer/RendererUtilities.js"],q["Core/Renderer/RendererRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut){var kt;let{format:gt}=m,{composed:it,doc:Z,isSafari:$}=mt,{distribute:P}=xt,{addEvent:Q,clamp:G,css:V,discardElement:T,extend:D,fireEvent:E,isArray:b,isNumber:d,isString:v,merge:W,pick:I,pushUnique:y,splat:l,syncTimeout:M}=ut;class A{constructor(r,p,g){this.allowShared=!0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.now={},this.options={},this.outside=!1,this.chart=r,this.init(r,p),this.pointer=g}bodyFormatter(r){return r.map(function(p){let g=p.series.tooltipOptions;return(g[(p.point.formatPrefix||"point")+"Formatter"]||p.point.tooltipFormatter).call(p.point,g[(p.point.formatPrefix||"point")+"Format"]||"")})}cleanSplit(r){this.chart.series.forEach(function(p){let g=p&&p.tt;g&&(!g.isActive||r?p.tt=g.destroy():g.isActive=!1)})}defaultFormatter(r){let p,g=this.points||l(this);return(p=(p=[r.tooltipFooterHeaderFormatter(g[0])]).concat(r.bodyFormatter(g))).push(r.tooltipFooterHeaderFormatter(g[0],!0)),p}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(),T(this.container)),ut.clearTimeout(this.hideTimer),ut.clearTimeout(this.tooltipTimeout)}getAnchor(r,p){let g,{chart:w,pointer:O}=this,N=w.inverted,x=w.plotTop,z=w.plotLeft;if((r=l(r))[0].series&&r[0].series.yAxis&&!r[0].series.yAxis.options.reversedStacks&&(r=r.slice().reverse()),this.followPointer&&p)void 0===p.chartX&&(p=O.normalize(p)),g=[p.chartX-z,p.chartY-x];else if(r[0].tooltipPos)g=r[0].tooltipPos;else{let K=0,nt=0;r.forEach(function(ot){let Y=ot.pos(!0);Y&&(K+=Y[0],nt+=Y[1])}),K/=r.length,nt/=r.length,this.shared&&r.length>1&&p&&(N?K=p.chartX:nt=p.chartY),g=[K-z,nt-x]}return g.map(Math.round)}getClassName(r,p,g){let O=r.series,N=O.options;return[this.options.className,"highcharts-label",g&&"highcharts-tooltip-header",p?"highcharts-tooltip-box":"highcharts-tooltip",!g&&"highcharts-color-"+I(r.colorIndex,O.colorIndex),N&&N.className].filter(v).join(" ")}getLabel(){let r=this,p=this.chart.styledMode,g=this.options,w=this.split&&this.allowShared,O=this.container,N=this.chart.renderer;if(this.label){let x=!this.label.hasClass("highcharts-label");(!w&&x||w&&!x)&&this.destroy()}if(!this.label){if(this.outside){let x=this.chart.options.chart.style,z=i.getRendererType();this.container=O=mt.doc.createElement("div"),O.className="highcharts-tooltip-container",V(O,{position:"absolute",top:"1px",pointerEvents:"none",zIndex:Math.max(this.options.style.zIndex||0,(x&&x.zIndex||0)+3)}),this.renderer=N=new z(O,0,0,x,void 0,void 0,N.styledMode)}if(w?this.label=N.g("tooltip"):(this.label=N.label("",0,0,g.shape,void 0,void 0,g.useHTML,void 0,"tooltip").attr({padding:g.padding,r:g.borderRadius}),p||this.label.attr({fill:g.backgroundColor,"stroke-width":g.borderWidth||0}).css(g.style).css({pointerEvents:g.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none")})),r.outside){let x=this.label,{xSetter:z,ySetter:K}=x;x.xSetter=function(nt){z.call(x,r.distance),O&&(O.style.left=nt+"px")},x.ySetter=function(nt){K.call(x,r.distance),O&&(O.style.top=nt+"px")}}this.label.attr({zIndex:8}).shadow(g.shadow).add()}return O&&!O.parentElement&&mt.doc.body.appendChild(O),this.label}getPlayingField(){let{body:r,documentElement:p}
1=Z,{chart:g,distance:w,outside:O}=this;return{width:O?Math.max(r.scrollWidth,p.scrollWidth,r.offsetWidth,p.offsetWidth,p.clientWidth)-2*w:g.chartWidth,height:O?Math.max(r.scrollHeight,p.scrollHeight,r.offsetHeight,p.offsetHeight,p.clientHeight):g.chartHeight}}getPosition(r,p,g){let ct,{distance:w,chart:O,outside:N,pointer:x}=this,{inverted:z,plotLeft:K,plotTop:nt,polar:ot}=O,{plotX:Y=0,plotY:J=0}=g,f={},F=z&&g.h||0,{height:B,width:s}=this.getPlayingField(),_=x.getChartPosition(),h=tt=>tt*_.scaleX,C=tt=>tt*_.scaleY,S=tt=>{let st="x"===tt;return[tt,st?s:B,st?r:p].concat(N?[st?h(r):C(p),st?_.left-w+h(Y+K):_.top-w+C(J+nt),0,st?s:B]:[st?r:p,st?Y+K:J+nt,st?K:nt,st?K+O.plotWidth:nt+O.plotHeight])},U=S("y"),et=S("x"),dt=!!g.negative;!ot&&O.hoverSeries?.yAxis?.reversed&&(dt=!dt);let _t=!this.followPointer&&I(g.ttBelow,!ot&&!z===dt),vt=function(tt,st,yt,lt,ft,ht,Tt){let Et=N?"y"===tt?C(w):h(w):w,Bt=(yt-lt)/2,At=lt<ft-w,Ot=ft+w+lt<st,Nt=ft-Et-yt+Bt,Ft=ft+Et-Bt;if(_t&&Ot)f[tt]=Ft;else if(!_t&&At)f[tt]=Nt;else if(At)f[tt]=Math.min(Tt-lt,Nt-F<0?Nt:Nt-F);else{if(!Ot)return!1;f[tt]=Math.max(ht,Ft+F+yt>st?Ft:Ft+F)}},Mt=function(tt,st,yt,lt,ft){if(ft<w||ft>st-w)return!1;f[tt]=ft<yt/2?1:ft>st-lt/2?st-lt-2:ft-yt/2},X=function(tt){[U,et]=[et,U],ct=tt},H=()=>{!1!==vt.apply(0,U)?!1!==Mt.apply(0,et)||ct||(X(!0),H()):ct?f.x=f.y=0:(X(!0),H())};return(z&&!ot||this.len>1)&&X(),H(),f}hide(r){let p=this;ut.clearTimeout(this.hideTimer),r=I(r,this.options.hideDelay),this.isHidden||(this.hideTimer=M(function(){let g=p.getLabel();p.getLabel().animate({opacity:0}
1,{duration:r&&150,complete:()=>{g.hide(),p.container&&p.container.remove()}}),p.isHidden=!0},r))}init(r,p){this.chart=r,this.options=p,this.crosshairs=[],this.now={x:0,y:0},this.isHidden=!0,this.split=p.split&&!r.inverted&&!r.polar,this.shared=p.shared||this.split,this.outside=I(p.outside,!(!r.scrollablePixelsX&&!r.scrollablePixelsY))}shouldStickOnContact(r){return!(this.followPointer||!this.options.stickOnContact||r&&!this.pointer.inClass(r.target,"highcharts-tooltip"))}move(r,p,g,w){let O=this,N=O.now,x=!1!==O.options.animation&&!O.isHidden&&(Math.abs(r-N.x)>1||Math.abs(p-N.y)>1),z=O.followPointer||O.len>1;D(N,{x:x?(2*N.x+r)/3:r,y:x?(N.y+p)/2:p,anchorX:z?void 0:x?(2*N.anchorX+g)/3:g,anchorY:z?void 0:x?(N.anchorY+w)/2:w}),O.getLabel().attr(N),O.drawTracker(),x&&(ut.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){O&&O.move(r,p,g,w)},32))}refresh(r,p){let{chart:g,options:w,pointer:O,shared:N}=this,x=l(r),z=x[0],K=[],nt=w.format,ot=w.formatter||this.defaultFormatter,Y=g.styledMode,J={};if(!w.enabled||!z.series)return;ut.clearTimeout(this.hideTimer),this.allowShared=!(!b(r)&&r.series&&r.series.noSharedTooltip),this.followPointer=!this.split&&z.series.tooltipOptions.followPointer;let f=this.getAnchor(r,p),F=f[0],B=f[1];N&&this.allowShared?(O.applyInactiveState(x),x.forEach(function(h){h.setState("hover"),K.push(h.getLabelConfig())}),(J=z.getLabelConfig()).points=K):J=z.getLabelConfig(),this.len=K.length;let s=v(nt)?gt(nt,J,g):ot.call(J,this),_=z.series;if(this.distance=I(_.tooltipOptions.distance,16),!1===s)this.hide();else{if(this.split&&this.allowShared)this.renderSplit(s,x);else{let h=F,C=B;if(p&&O.isDirectTouch&&(h=p.chartX-g.plotLeft,C=p.chartY-g.plotTop),!g.polar&&!1!==_.options.clip&&!x.some(S=>O.isDirectTouch||S.series.shouldShowTooltip(h,C)))return void this.hide();{let S=this.getLabel();(!w.style.width||Y)&&S.css({width:(this.outside?this.getPlayingField():g.spacingBox).width+"px"}),S.attr({text:s&&s.join?s.join(""):s}),S.addClass(this.getClassName(z),!0),Y||S.attr({stroke:w.borderColor||z.color||_.color||"#666666"}),this.updatePosition({plotX:F,plotY:B,negative:z.negative,ttBelow:z.ttBelow,h:f[2]||0})}}this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1}E(this,"refresh")}renderSplit(r,p){let g=this,{chart:w,chart:{chartWidth:O,chartHeight:N,plotHeight:x,plotLeft:z,plotTop:K,scrollablePixelsY:nt=0,scrollablePixelsX:ot,styledMode:Y},distance:J,options:f,options:{positioner:F},pointer:B}=g,{scrollLeft:s=0,scrollTop:_=0}=w.scrollablePlotArea?.scrollingContainer||{},h=g.outside&&"number"!=typeof ot?Z.documentElement.getBoundingClientRect():{left:s,right:s+O,top:_,bottom:_+N},C=g.getLabel(),S=this.renderer||w.renderer,U=!(!w.xAxis[0]||!w.xAxis[0].opposite),{left:et,top:ct}=B.getChartPosition(),dt=K+_,_t=0,vt=x-nt;function Mt(lt,ft,ht,Tt,Et=!0){let Bt,At;return ht?(Bt=U?0:vt,At=G(lt-Tt/2,h.left,h.right-Tt-(g.outside?et:0))):(Bt=ft-dt,At=G(At=Et?lt-Tt-J:lt+J,Et?At:h.left,h.right)),{x:At,y:Bt}}v(r)&&(r=[!1,r]);let X=r.slice(0,p.length+1).reduce(function(lt,ft,ht){if(!1!==ft&&""!==ft){let Tt=p[ht-1]||{isHeader:!0,plotX:p[0].plotX,plotY:x,series:{}},Et=Tt.isHeader,Bt=Et?g:Tt.series,At=Bt.tt=function(Ht,Ut,Yt){let ee=Ht,{isHeader:te,series:re}=Ut;if(!ee){let Wt={padding:f.padding,r:f.borderRadius};Y||(Wt.fill=f.backgroundColor,Wt["stroke-width"]=f.borderWidth??1),ee=S.label("",0,0,f[te?"headerShape":"shape"],void 0,void 0,f.useHTML).addClass(g.getClassName(Ut,!0,te)).attr(Wt).add(C)}return ee.isActive=!0,ee.attr({text:Yt}),Y||ee.css(f.style).attr({stroke:f.borderColor||Ut.color||re.color||"#333333"}),ee}(Bt.tt,Tt,ft.toString()),Ot=At.getBBox(),Nt=Ot.width+At.strokeWidth();Et&&(_t=Ot.height,vt+=_t,U&&(dt-=_t));let{anchorX:Ft,anchorY:Pt}=function(Ht){let Ut,Yt,{isHeader:ee,plotX:te=0,plotY:re=0,series:Wt}=Ht;if(ee)Ut=Math.max(z+te,z),Yt=K+x/2;else{let{xAxis:be,yAxis:pe}=Wt;Ut=be.pos+G(te,-J,be.len+J),Wt.shouldShowTooltip(0,pe.pos-K+re,{ignoreX:!0})&&(Yt=pe.pos+re)}return{anchorX:Ut=G(Ut,h.left-J,h.right+J),anchorY:Yt}}(Tt);if("number"==typeof Pt){let Ht=Ot.height+1,Ut=F?F.call(g,Nt,Ht,Tt):Mt(Ft,Pt,Et,Nt);lt.push({align:F?0:void 0,anchorX:Ft,anchorY:Pt,boxWidth:Nt,point:Tt,rank:I(Ut.rank,Et?1:0),size:Ht,target:Ut.y,tt:At,x:Ut.x})}else At.isActive=!1}return lt},[]);!F&&X.some(lt=>{let{outside:ft}=g,ht=(ft?et:0)+lt.anchorX;return ht<h.left&&ht+lt.boxWidth<h.right||ht<et-h.left+lt.boxWidth&&h.right-ht>ht})&&(X=X.map(lt=>{let{x:ft,y:ht}=Mt(lt.anchorX,lt.anchorY,lt.point.isHeader,lt.boxWidth,!1);return D(lt,{target:ht,x:ft})})),g.cleanSplit(),P(X,vt);let H={left:et,right:et};
1X.forEach(function(lt){let{x:ft,boxWidth:ht,isHeader:Tt}=lt;!Tt&&(g.outside&&et+ft<H.left&&(H.left=et+ft),!Tt&&g.outside&&H.left+ht>H.right&&(H.right=et+ft))}),X.forEach(function(lt){let{x:ft,anchorX:ht,anchorY:Tt,pos:Et,point:{isHeader:Bt}}=lt,At={visibility:void 0===Et?"hidden":"inherit",x:ft,y:(Et||0)+dt,anchorX:ht,anchorY:Tt};if(g.outside&&ft<ht){let Ot=et-H.left;Ot>0&&(Bt||(At.x=ft+Ot,At.anchorX=ht+Ot),Bt&&(At.x=(H.right-H.left)/2,At.anchorX=ht+Ot))}lt.tt.attr(At)});let{container:tt,outside:st,renderer:yt}=g;if(st&&tt&&yt){let{width:lt,height:ft,x:ht,y:Tt}=C.getBBox();yt.setSize(lt+ht,ft+Tt,!1),tt.style.left=H.left+"px",tt.style.top=ct+"px"}$&&C.attr({opacity:1===C.opacity?.999:1})}drawTracker(){if(!this.shouldStickOnContact())return void(this.tracker&&(this.tracker=this.tracker.destroy()));let r=this.chart,p=this.label,g=this.shared?r.hoverPoints:r.hoverPoint;if(!p||!g)return;let w={x:0,y:0,width:0,height:0},O=this.getAnchor(g),N=p.getBBox();O[0]+=r.plotLeft-(p.translateX||0),O[1]+=r.plotTop-(p.translateY||0),w.x=Math.min(0,O[0]),w.y=Math.min(0,O[1]),w.width=O[0]<0?Math.max(Math.abs(O[0]),N.width-O[0]):Math.max(Math.abs(O[0]),N.width),w.height=O[1]<0?Math.max(Math.abs(O[1]),N.height-Math.abs(O[1])):Math.max(Math.abs(O[1]),N.height),this.tracker?this.tracker.attr(w):(this.tracker=p.renderer.rect(w).addClass("highcharts-tracker").add(p),r.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}styledModeFormat(r){return r.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(r,p){let g=r.series,w=g.tooltipOptions,O=g.xAxis,N=O&&O.dateTime,x={isFooter:p,labelConfig:r},z=w.xDateFormat,K=w[p?"footerFormat":"headerFormat"];return E(this,"headerFormatter",x,function(nt){N&&!z&&d(r.key)&&(z=N.getXDateFormat(r.key,w.dateTimeLabelFormats)),N&&z&&(r.point&&r.point.tooltipDateKeys||["key"]).forEac
1h(function(ot){K=K.replace("{point."+ot+"}","{point."+ot+":"+z+"}")}),g.chart.styledMode&&(K=this.styledModeFormat(K)),nt.text=gt(K,{point:r,series:g},this.chart)}),x.text}update(r){this.destroy(),this.init(this.chart,W(!0,this.options,r))}updatePosition(r){let s,{chart:p,container:g,distance:w,options:O,pointer:N,renderer:x}=this,{height:z=0,width:K=0}=this.getLabel(),{left:nt,top:ot,scaleX:Y,scaleY:J}=N.getChartPosition(),f=(O.positioner||this.getPosition).call(this,K,z,r),F=(r.plotX||0)+p.plotLeft,B=(r.plotY||0)+p.plotTop;x&&g&&(O.positioner&&(f.x+=nt-w,f.y+=ot-w),s=(O.borderWidth||0)+2*w+2,x.setSize(K+s,z+s,!1),(1!==Y||1!==J)&&(V(g,{transform:`scale(${Y}, ${J})`}),F*=Y,B*=J),F+=nt-f.x,B+=ot-f.y),this.move(Math.round(f.x),Math.round(f.y||0),F,B)}}return(kt=A||(A={})).compose=function(o){y(it,"Core.Tooltip")&&Q(o,"afterInit",function(){let r=this.chart;r.options.tooltip&&(r.tooltip=new kt(r,r.options.tooltip,this))})},A}),Dt(q,"Core/Series/Point.js",[q["Core/Renderer/HTML/AST.js"],q["Core/Animation/AnimationUtilities.js"],q["Core/Defaults.js"],q["Core/Templating.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut){let{animObject:kt}=mt,{defaultOptions:gt}=xt,{format:it}=i,{addEvent:Z,erase:$,extend:P,fireEvent:Q,getNestedProperty:G,isArray:V,isFunction:T,isNumber:D,isObject:E,pick:b,syncTimeout:d,removeEvent:v,uniqueKey:W}=ut;class I{animateBeforeDestroy(){let l=this,M={x:l.startXPos,opacity:0},A=l.getGraphicalProps();A.singular.forEach(function(o){l[o]=l[o].animate("dataLabel"===o?{x:l[o].startXPos,y:l[o].startYPos,opacity:0}:M)}),A.plural.forEach(function(o){l[o].forEach(function(r){r.element&&r.animate(P({x:l.startXPos},r.startYPos?{x:r.startXPos,y:r.startYPos}:{}))})})}applyOptions(l,M){let A=this.series,o=A.options.pointValKey||A.pointValKey;return P(this,l=I.prototype.optionsToObject.call(this,l)),this.options=this.options?P(this.options,l):l,l.group&&delete this.group,l.dataLabels&&delete this.dataLabels,o&&(this.y=I.prototype.getNestedProperty.call(this,o)),this.selected&&(this.state="select"),"name"in this&&void 0===M&&A.xAxis&&A.xAxis.hasNames&&(this.x=A.xAxis.nameToX(this)),void 0===this.x&&A?this.x=void 0===M?A.autoIncrement():M:D(l.x)&&A.options.relativeXValue&&(this.x=A.autoIncrement(l.x)),this.isNull=this.isValid&&!this.isValid(),this.formatPrefix=this.isNull?"null":"point",this}destroy(){if(!this.destroyed){let l=this,M=l.series,A=M.chart,o=M.options.dataSorting,r=A.hoverPoints,p=kt(l.series.chart.renderer.globalAnimation),g=()=>{for(let w in(l.graphic||l.graphics||l.dataLabel||l.dataLabels)&&(v(l),l.destroyElements()),l)delete l[w]};l.legendItem&&A.legend.destroyItem(l),r&&(l.setState(),$(r,l),r.length||(A.hoverPoints=null)),l===A.hoverPoint&&l.onMouseOut(),o&&o.enabled?(this.animateBeforeDestroy(),d(g,p.duration)):g(),A.pointCount--}this.destroyed=!0}destroyElements(l){let M=this,A=M.getGraphicalProps(l);A.singular.forEach(function(o){M[o]=M[o].destroy()}),A.plural.forEach(function(o){M[o].forEach(function(r){r&&r.element&&r.destroy()}),delete M[o]})}firePointEvent(l,M,A){let o=this,r=this.series.options;o.manageEvent(l),"click"===l&&r.allowPointSelect&&(A=function(p){!o.destroyed&&o.select&&o.select(null,p.ctrlKey||p.metaKey||p.shiftKey)}),Q(o,l,M,A)}getClassName(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(void 0!==this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")}getGraphicalProps(l){let M,A,o=this,r=[],p={singular:[],plural:[]};for((l=l||{graphic:1,dataLabel:1}).graphic&&r.push("graphic","connector"),l.dataLabel&&r.push("dataLabel","dataLabelPath","dataLabelUpper"),A=r.length;A--;)o[M=r[A]]&&p.singular.push(M);return["graphic","dataLabel"].forEach(function(g){let w=g+"s";l[g]&&o[w]&&p.plural.push(w)}),p}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(l){return l?0===l.indexOf("custom.")?G(l,this.options):this[l]:void 0}getZone(){let o,l=this.series,M=l.zones,A=l.zoneAxis||"y",r=0;for(o=M[0];this[A]>=o.value;)o=M[++r];return this.nonZonedColor||(this.nonZonedColor=this.color),this.color=o&&o.color&&!this.options.color?o.color:this.nonZonedColor,o}hasNewShapeType(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType}constructor(l,M,A){this.formatPrefix="point",this.visible=!0,this.series=l,this.applyOptions(M,A),this.id??(this.id=W()),this.resolveColor(),l.chart.pointCount++,Q(this,"afterInit")}isValid(){return(D(this.x)||this.x instanceof Date)&&D(this.y)}optionsToObject(l){let g,M=this.series,A=M.options.keys,o=A||M.pointArrayMap||["y"],r=o.length,p={},w=0,O=0;if(D(l)||null===l)p[o[0]]=l;else if(V(l))for(!A&&l.length>r&&("string"==(g=typeof l[0])?p.name=l[0]:"number"===g&&(p.x=l[0]),w++);O<r;)A&&void 0===l[w]||(o[O].indexOf(".")>0?I.prototype.setNestedProperty(p,l[w],o[O]):p[o[O]]=l[w]),w++,O++;else"object"==typeof l&&(p=l,l.dataLabels&&(M.hasDataLabels=()=>!0),l.marker&&(M._hasPointMarkers=!0));return p}pos(l,M=this.plotY){if(!this.destroyed){let{plotX:A,series:o}=this,{chart:r,xAxis:p,yAxis:g}=o,w=0,O=0;if(D(A)&&D(M))return l&&(w=p?p.pos:r.plotLeft,O=g?g.pos:r.plotTop),r.inverted&&p&&g?[g.len-M+O,p.len-A+w]:[A+w,M+O]}}resolveColor(){let o,r,g,l=this.series,A=l.chart.styledMode,p=l.chart.options.chart.colorCount;delete this.nonZonedColor,l.options.colorByPoint?(A||(o=(r=l.options.colors||l.chart.options.colors)[l.colorCounter],p=r.length),g=l.colorCounter,l.colorCounter++,l.colorCounter===p&&(l.colorCounter=0)):(A||(o=l.color),g=l.colorIndex),this.colorIndex=b(this.options.colorIndex,g),this.color=b(this.options.color,o)}
1setNestedProperty(l,M,A){return A.split(".").reduce(function(o,r,p,g){return o[r]=g.length-1===p?M:E(o[r],!0)?o[r]:{},o[r]},l),l}shouldDraw(){return!this.isNull}tooltipFormatter(l){let M=this.series,A=M.tooltipOptions,o=b(A.valueDecimals,""),r=A.valuePrefix||"",p=A.valueSuffix||"";return M.chart.styledMode&&(l=M.chart.tooltip.styledModeFormat(l)),(M.pointArrayMap||["y"]).forEach(function(g){g="{point."+g,(r||p)&&(l=l.replace(RegExp(g+"}","g"),r+g+"}"+p)),l=l.replace(RegExp(g+"}","g"),g+":,."+o+"f}")}),it(l,{point:this,series:this.series},M.chart)}update(l,M,A,o){let r,p=this,g=p.series,w=p.graphic,O=g.chart,N=g.options;function x(){p.applyOptions(l);let z=w&&p.hasMockGraphic;w&&(null===p.y?!z:z)&&(p.graphic=w.destroy(),delete p.hasMockGraphic),E(l,!0)&&(w&&w.element&&l&&l.marker&&void 0!==l.marker.symbol&&(p.graphic=w.destroy()),l?.dataLabels&&p.dataLabel&&(p.dataLabel=p.dataLabel.destroy())),r=p.index,g.updateParallelArrays(p,r),N.data[r]=E(N.data[r],!0)||E(l,!0)?p.options:b(l,N.data[r]),g.isDirty=g.isDirtyData=!0,!g.fixedBox&&g.hasCartesianSeries&&(O.isDirtyBox=!0),"point"===N.legendType&&(O.isDirtyLegend=!0),M&&O.redraw(A)}M=b(M,!0),!1===o?x():p.firePointEvent("update",{options:l},x)}remove(l,M){this.series.removePoint(this.series.data.indexOf(this),l,M)}select(l,M){let A=this,o=A.series,r=o.chart;l=b(l,!A.selected),this.selectedStaging=l,A.firePointEvent(l?"select":"unselect",{accumulate:M},function(){A.selected=A.options.selected=l,o.options.data[o.data.indexOf(A)]=A.options,A.setState(l&&"select"),M||r.getSelectedPoints().forEac
1h(function(p){let g=p.series;p.selected&&p!==A&&(p.selected=p.options.selected=!1,g.options.data[g.data.indexOf(p)]=p.options,p.setState(r.hoverPoints&&g.options.inactiveOtherPoints?"inactive":""),p.firePointEvent("unselect"))})}),delete this.selectedStaging}onMouseOver(l){let{inverted:M,pointer:A}=this.series.chart;A&&(l=l?A.normalize(l):A.getChartCoordinatesFromPoint(this,M),A.runPointActions(l,this))}onMouseOut(){let l=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(l.hoverPoints||[]).forEach(function(M){M.setState()}),l.hoverPoints=l.hoverPoint=null}manageEvent(l){let M=this.series.options.point||{},A=M.events?.[l];!T(A)||this.hcEvents?.[l]&&-1!==this.hcEvents?.[l]?.map(o=>o.fn).indexOf(A)?this.hasImportedEvents&&!A&&this.hcEvents?.[l]&&(v(this,l),delete this.hcEvents[l],Object.keys(this.hcEvents)||(this.hasImportedEvents=!1)):(Z(this,l,A),this.hasImportedEvents=!0)}setState(l,M){let nt,ot,Y,f,A=this.series,o=this.state,r=A.options.states[l||"normal"]||{},p=gt.plotOptions[A.type].marker&&A.options.marker,w=p&&p.states&&p.states[l||"normal"]||{},N=this.marker||{},x=A.chart,z=p&&A.markerAttribs,K=A.halo,J=A.stateMarkerGraphic;if((l=l||"")===this.state&&!M||this.selected&&"select"!==l||!1===r.enabled||l&&(!1===w.enabled||p&&!1===p.enabled&&!1===w.enabled)||l&&N.states&&N.states[l]&&!1===N.states[l].enabled)return;if(this.state=l,z&&(nt=A.markerAttribs(this,l)),this.graphic&&!this.hasMockGraphic){if(o&&this.graphic.removeClass("highcharts-point-"+o),l&&this.graphic.addClass("highcharts-point-"+l),!x.styledMode){ot=A.pointAttribs(this,l),Y=b(x.options.chart.animation,r.animation);let _=ot.opacity;A.options.inactiveOtherPoints&&D(_)&&(this.dataLabels||[]).forEach(function(h){h&&!h.hasClass("highcharts-data-label-hidden")&&(h.animate({opacity:_},Y),h.connector&&h.connector.animate({opacity:_},Y))}),this.graphic.animate(ot,Y)}nt&&this.graphic.animate(nt,b(x.options.chart.animation,w.animation,p.animation)),J&&J.hide()}else l&&w&&(f=N.symbol||A.symbol,J&&J.currentSymbol!==f&&(J=J.destroy()),nt&&(J?J[M?"animate":"attr"]({x:nt.x,y:nt.y}):f&&(A.stateMarkerGraphic=J=x.renderer.symbol(f,nt.x,nt.y,nt.width,nt.height).add(A.markerGroup),J.currentSymbol=f)),!x.styledMode&&J&&"inactive"!==this.state&&J.attr(A.pointAttribs(this,l))),J&&(J[l&&this.isInside?"show":"hide"](),J.element.point=this,J.addClass(this.getClassName(),!0));let F=r.halo,B=this.graphic||J,s=B&&B.visibility||"inherit";F&&F.size&&B&&"hidden"!==s&&!this.isCluster?(K||(A.halo=K=x.renderer.path().add(B.parentGroup)),K.show()[M?"animate":"attr"]({d:this.haloPath(F.size)}),K.attr({class:"highcharts-halo highcharts-color-"+b(this.colorIndex,A.colorIndex)+(this.className?" "+this.className:""),visibility:s,zIndex:-1}),K.point=this,x.styledMode||K.attr(P({fill:this.color||A.color,"fill-opacity":F.opacity},m.filterUserAttributes(F.attributes||{})))):K&&K.point&&K.point.haloPath&&K.animate({d:K.point.haloPath(0)},null,K.hide),Q(this,"afterSetState",{state:l})}haloPath(l){let M=this.pos();return M?this.series.chart.renderer.symbols.circle(Math.floor(M[0])-l,M[1]-l,2*l,2*l):[]}}return I}),Dt(q,"Core/Pointer.js",[q["Core/Color/Color.js"],q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt,xt){var i;let{parse:ut}=m,{charts:kt,composed:gt}=mt,{addEvent:it,attr:Z,css:$,extend:P,find:Q,fireEvent:G,isNumber:V,isObject:T,objectEach:D,offset:E,pick:b,pushUnique:d,splat:v}=xt;class W{applyInactiveState(y){let M,l=[];(y||[]).forEach(function(A){M=A.series,l.push(M),M.linkedParent&&l.push(M.linkedParent),M.linkedSeries&&(l=l.concat(M.linkedSeries)),M.navigatorSeries&&l.push(M.navigatorSeries)}),this.chart.series.forEach(function(A){-1===l.indexOf(A)?A.setState("inactive",!0):A.options.inactiveOtherPoints&&A.setAllPointsToState("inactive")})}destroy(){let y=this;this.eventsToUnbind.forEach(l=>l()),this.eventsToUnbind=[],!mt.chartCount&&(W.unbindDocumentMouseUp&&(W.unbindDocumentMouseUp=W.unbindDocumentMouseUp()),W.unbindDocumentTouchEnd&&(W.unbindDocumentTouchEnd=W.unbindDocumentTouchEnd())),clearInterval(y.tooltipTimeout),D(y,function(l,M){y[M]=void 0})}getSelectionMarkerAttrs(y,l){let M={args:{chartX:y,chartY:l},attrs:{},shapeType:"rect"};return G(this,"getSelectionMarkerAttrs",M,A=>{let o,{chart:r,zoomHor:p,zoomVert:g}
1=this,{mouseDownX:w=0,mouseDownY:O=0}=r,N=A.attrs;N.x=r.plotLeft,N.y=r.plotTop,N.width=p?1:r.plotWidth,N.height=g?1:r.plotHeight,p&&(o=y-w,N.width=Math.max(1,Math.abs(o)),N.x=(o>0?0:o)+w),g&&(o=l-O,N.height=Math.max(1,Math.abs(o)),N.y=(o>0?0:o)+O)}),M}drag(y){let ot,{chart:l}=this,{mouseDownX:M=0,mouseDownY:A=0}=l,{panning:o,panKey:r,selectionMarkerFill:p}=l.options.chart,g=l.plotLeft,w=l.plotTop,O=l.plotWidth,N=l.plotHeight,x=T(o)?o.enabled:o,z=r&&y[`${r}Key`],K=y.chartX,nt=y.chartY,Y=this.selectionMarker;if((!Y||!Y.touch)&&(K<g?K=g:K>g+O&&(K=g+O),nt<w?nt=w:nt>w+N&&(nt=w+N),this.hasDragged=Math.sqrt(Math.pow(M-K,2)+Math.pow(A-nt,2)),this.hasDragged>10)){ot=l.isInsidePlot(M-g,A-w,{visiblePlotOnly:!0});let{shapeType:J,attrs:f}=this.getSelectionMarkerAttrs(K,nt);(l.hasCartesianSeries||l.mapView)&&this.hasZoom&&ot&&!z&&!Y&&(this.selectionMarker=Y=l.renderer[J](),Y.attr({class:"highcharts-selection-marker",zIndex:7}).add(),l.styledMode||Y.attr({fill:p||ut("#334eff").setOpacity(.25).get()})),Y&&Y.attr(f),ot&&!Y&&x&&l.pan(y,o)}}dragStart(y){let l=this.chart;l.mouseIsDown=y.type,l.cancelClick=!1,l.mouseDownX=y.chartX,l.mouseDownY=y.chartY}getSelectionBox(y){let l={args:{marker:y},result:y.getBBox()};return G(this,"getSelectionBox",l),l.result}drop(y){let l,{chart:M,selectionMarker:A}=this;for(let o of M.axes)o.isPanning&&(o.isPanning=!1,(o.options.startOnTick||o.options.endOnTick||o.series.some(r=>r.boosted))&&(o.forceRedraw=!0,o.setExtremes(o.userMin,o.userMax,!1),l=!0));if(l&&M.redraw(),A&&y){if(this.hasDragged){let o=this.getSelectionBox(A);M.transform({axes:M.axes.filter(r=>r.zoomEnabled&&("xAxis"===r.coll&&this.zoomX||"yAxis"===r.coll&&this.zoomY)),selection:{originalEvent:y,xAxis:[],yAxis:[],...o},from:o})}V(M.index)&&(this.selectionMarker=A.destroy())}M&&V(M.index)&&($(M.container,{cursor:M._cursor}),M.cancelClick=this.hasDragged>10,M.mouseIsDown=!1,this.hasDragged=0,this.pinchDown=[])}findNearestKDPoint(y,l,M){let A;return y.forEach(function(o){let r=!(o.noSharedTooltip&&l)&&0>o.options.findNearestPointBy.indexOf("y"),p=o.searchPoint(M,r);T(p,!0)&&p.series&&(!T(A,!0)||function(g,w){let O=g.distX-w.distX,N=g.dist-w.dist,x=w.series.group?.zIndex-g.series.group?.zIndex;return 0!==O&&l?O:0!==N?N:0!==x?x:g.series.index>w.series.index?-1:1}(A,p)>0)&&(A=p)}),A}getChartCoordinatesFromPoint(y,l){let{xAxis:M,yAxis:A}=y.series,o=y.shapeArgs;if(M&&A){let r=y.clientX??y.plotX??0,p=y.plotY||0;return y.isNode&&o&&V(o.x)&&V(o.y)&&(r=o.x,p=o.y),l?{chartX:A.len+A.pos-p,chartY:M.len+M.pos-r}:{chartX:r+M.pos,chartY:p+A.pos}}if(o&&o.x&&o.y)return{chartX:o.x,chartY:o.y}}getChartPosition(){if(this.chartPosition)return this.chartPosition;let{container:y}=this.chart,l=E(y);this.chartPosition={left:l.left,top:l.top,scaleX:1,scaleY:1};let{offsetHeight:M,offsetWidth:A}=y;return A>2&&M>2&&(this.chartPosition.scaleX=l.width/A,this.chartPosition.scaleY=l.height/M),this.chartPosition}getCoordinates(y){let l={xAxis:[],yAxis:[]};for(let M of this.chart.axes)l[M.isXAxis?"xAxis":"yAxis"].push({axis:M,value:M.toValue(y[M.horiz?"chartX":"chartY"])});return l}getHoverData(y,l,M,A,o,r){let O,p=[],g=function(z){return z.visible&&!(!o&&z.directTouch)&&b(z.options.enableMouseTracking,!0)},w=l,N={chartX:r?r.chartX:void 0,chartY:r?r.chartY:void 0,shared:o};G(this,"beforeGetHoverData",N),O=w&&!w.stickyTracking?[w]:M.filter(z=>z.stickyTracking&&(N.filter||g)(z));let x=A&&y||!r?y:this.findNearestKDPoint(O,o,r);return w=x&&x.series,x&&(o&&!w.noSharedTooltip?(O=M.filter(function(z){return N.filter?N.filter(z):g(z)&&!z.noSharedTooltip})).forEach(function(z){let K=Q(z.points,function(nt){return nt.x===x.x&&!nt.isNull});T(K)&&(z.boosted&&z.boost&&(K=z.boost.getPoint(K)),p.push(K))}):p.push(x)),G(this,"afterGetHoverData",N={hoverPoint:x}),{hoverPoint:N.hoverPoint,hoverSeries:w,hoverPoints:p}}getPointFromEvent(y){let M,l=y.target;for(;l&&!M;)M=l.point,l=l.parentNode;return M}onTrackerMouseOut(y){let M=y.relatedTarget,A=this.chart.hoverSeries;this.isDirectTouch=!1,!A||!M||A.stickyTracking||this.inClass(M,"highcharts-tooltip")||this.inClass(M,"highcharts-series-"+A.index)&&this.inClass(M,"highcharts-tracker")||A.onMouseOut()}inClass(y,l){let A,M=y;for(;M;){if(A=Z(M,"class")){if(-1!==A.indexOf(l))return!0;
1if(-1!==A.indexOf("highcharts-container"))return!1}M=M.parentElement}}constructor(y,l){this.hasDragged=0,this.eventsToUnbind=[],this.options=l,this.chart=y,this.runChartClick=!!l.chart.events?.click,this.pinchDown=[],this.setDOMEvents(),G(this,"afterInit")}normalize(y,l){let M=y.touches,A=M?M.length?M.item(0):b(M.changedTouches,y.changedTouches)[0]:y;l||(l=this.getChartPosition());let o=A.pageX-l.left,r=A.pageY-l.top;return P(y,{chartX:Math.round(o/=l.scaleX),chartY:Math.round(r/=l.scaleY)})}onContainerClick(y){let l=this.chart,M=l.hoverPoint,A=this.normalize(y),o=l.plotLeft,r=l.plotTop;!l.cancelClick&&(M&&this.inClass(A.target,"highcharts-tracker")?(G(M.series,"click",P(A,{point:M})),l.hoverPoint&&M.firePointEvent("click",A)):(P(A,this.getCoordinates(A)),l.isInsidePlot(A.chartX-o,A.chartY-r,{visiblePlotOnly:!0})&&G(l,"click",A)))}onContainerMouseDown(y){let l=!(1&~(y.buttons||y.button));y=this.normalize(y),mt.isFirefox&&0!==y.button&&this.onContainerMouseMove(y),(void 0===y.button||l)&&(this.zoomOption(y),l&&y.preventDefault?.(),this.dragStart(y))}onContainerMouseLeave(y){let{pointer:l}=kt[b(W.hoverChartIndex,-1)]||{};y=this.normalize(y),this.onContainerMouseMove(y),l&&y.relatedTarget&&!this.inClass(y.relatedTarget,"highcharts-tooltip")&&(l.reset(),l.chartPosition=void 0)}onContainerMouseEnter(){delete this.chartPosition}onContainerMouseMove(y){let l=this.chart,M=l.tooltip,A=this.normalize(y);this.setHoverChartIndex(y),("mousedown"===l.mouseIsDown||this.touchSelect(A))&&this.drag(A),!l.openMenu&&(this.inClass(A.target,"highcharts-tracker")||l.isInsidePlot(A.chartX-l.plotLeft,A.chartY-l.plotTop,{visiblePlotOnly:!0}))&&(!M||!M.shouldStickOnContact(A))&&(this.inClass(A.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(A))}onDocumentTouchEnd(y){this.onDocumentMouseUp(y)}onContainerTouchMove(y){this.touchSelect(y)?this.onContainerMouseMove(y):this.touch(y)}onContainerTouchStart(y){this.touchSelect(y)?this.onContainerMouseDown(y):(this.zoomOption(y),this.touch(y,!0))}onDocumentMouseMove(y){let l=this.chart,M=l.tooltip,A=this.chartPosition,o=this.normalize(y,A);!A||l.isInsidePlot(o.chartX-l.plotLeft,o.chartY-l.plotTop,{visiblePlotOnly:!0})||M&&M.shouldStickOnContact(o)||this.inClass(o.target,"highcharts-tracker")||this.reset()}onDocumentMouseUp(y){kt[b(W.hoverChartIndex,-1)]?.pointer?.drop(y)}pinch(y){let l=this,{chart:M,hasZoom:A,lastTouches:o}=l,r=[].map.call(y.touches||[],N=>l.normalize(N)),p=r.length,g=1===p&&(l.inClass(y.target,"highcharts-tracker")&&M.runTrackerClick||l.runChartClick),w=M.tooltip,O=1===p&&b(w?.options.followTouchMove,!0);p>1?l.initiated=!0:O&&(l.initiated=!1),A&&l.initiated&&!g&&!1!==y.cancelable&&y.preventDefault(),"touchstart"===y.type?(l.pinchDown=r,l.res=!0):O?this.runPointActions(l.normalize(y)):o&&(G(M,"touchpan",{originalEvent:y,touches:r},()=>{let N=x=>{let z=x[0],K=x[1]||z;return{x:z.chartX,y:z.chartY,width:K.chartX-z.chartX,height:K.chartY-z.chartY}};M.transform({axes:M.axes.filter(x=>x.zoomEnabled&&(this.zoomHor&&x.horiz||this.zoomVert&&!x.horiz)),to:N(r),from:N(o),trigger:y.type})}),l.res&&(l.res=!1,this.reset(!1,0))),l.lastTouches=r}reset(y,l){let M=this.chart,A=M.hoverSeries,o=M.hoverPoint,r=M.hoverPoints,p=M.tooltip,g=p&&p.shared?r:o;y&&g&&v(g).forEach(function(w){w.series.isCartesian&&void 0===w.plotX&&(y=!1)}),y?p&&g&&v(g).length&&(p.refresh(g),p.shared&&r?r.forEach(function(w){w.setState(w.state,!0),w.series.isCartesian&&(w.series.xAxis.crosshair&&w.series.xAxis.drawCrosshair(null,w),w.series.yAxis.crosshair&&w.series.yAxis.drawCrosshair(null,w))}):o&&(o.setState(o.state,!0),M.axes.forEach(function(w){w.crosshair&&o.series[w.coll]===w&&w.drawCrosshair(null,o)}))):(o&&o.onMouseOut(),r&&r.forEach(function(w){w.setState()}),A&&A.onMouseOut(),p&&p.hide(l),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),M.axes.forEach(function(w){w.hideCrosshair()}),M.hoverPoints=M.hoverPoint=void 0)}runPointActions(y,l,M){let A=this.chart,r=A.tooltip&&A.tooltip.options.enabled?A.tooltip:void 0,p=!!r&&r.shared,g=l||A.hoverPoint,w=g&&g.series||A.hoverSeries,N=this.getHoverData(g,w,A.series,(!y||"touchmove"!==y.type)&&(!!l||w&&w.directTouch&&this.isDirectTouch),p,y);g=N.hoverPoint,w=N.hoverSeries;let x=N.hoverPoints,z=w&&w.tooltipOptions.followPointer&&!w.tooltipOptions.split,K=p&&w&&!w.noSharedTooltip;if(g&&(M||g!==A.hoverPoint||r&&r.isHidden)){if((A.hoverPoints||[]).forEac
1h(function(nt){-1===x.indexOf(nt)&&nt.setState()}),A.hoverSeries!==w&&w.onMouseOver(),this.applyInactiveState(x),(x||[]).forEach(function(nt){nt.setState("hover")}),A.hoverPoint&&A.hoverPoint.firePointEvent("mouseOut"),!g.series)return;A.hoverPoints=x,A.hoverPoint=g,g.firePointEvent("mouseOver",void 0,()=>{r&&g&&r.refresh(K?x:g,y)})}else if(z&&r&&!r.isHidden){let nt=r.getAnchor([{}],y);A.isInsidePlot(nt[0],nt[1],{visiblePlotOnly:!0})&&r.updatePosition({plotX:nt[0],plotY:nt[1]})}this.unDocMouseMove||(this.unDocMouseMove=it(A.container.ownerDocument,"mousemove",nt=>kt[W.hoverChartIndex??-1]?.pointer?.onDocumentMouseMove(nt)),this.eventsToUnbind.push(this.unDocMouseMove)),A.axes.forEach(function(nt){let ot,Y=b((nt.crosshair||{}).snap,!0);!Y||(ot=A.hoverPoint)&&ot.series[nt.coll]===nt||(ot=Q(x,J=>J.series&&J.series[nt.coll]===nt)),ot||!Y?nt.drawCrosshair(y,ot):nt.hideCrosshair()})}setDOMEvents(){let y=this.chart.container,l=y.ownerDocument;y.onmousedown=this.onContainerMouseDown.bind(this),y.onmousemove=this.onContainerMouseMove.bind(this),y.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(it(y,"mouseenter",this.onContainerMouseEnter.bind(this)),it(y,"mouseleave",this.onContainerMouseLeave.bind(this))),W.unbindDocumentMouseUp||(W.unbindDocumentMouseUp=it(l,"mouseup",this.onDocumentMouseUp.bind(this)));let M=this.chart.renderTo.parentElement;for(;M&&"BODY"!==M.tagName;)this.eventsToUnbind.push(it(M,"scroll",()=>{delete this.chartPosition})),M=M.parentElement;this.eventsToUnbind.push(it(y,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1}),it(y,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),W.unbindDocumentTouchEnd||(W.unbindDocumentTouchEnd=it(l,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1}))}setHoverChartIndex(y){let l=this.chart,M=mt.charts[b(W.hoverChartIndex,-1)];M&&M!==l&&M.pointer?.onContainerMouseLeave(y||{relatedTarget:l.container}),M&&M.mouseIsDown||(W.hoverChartIndex=l.index)}touch(y,l){let M,{chart:A,pinchDown:o=[]}=this;this.setHoverChartIndex(),1===y.touches.length?(y=this.normalize(y),A.isInsidePlot(y.chartX-A.plotLeft,y.chartY-A.plotTop,{visiblePlotOnly:!0})&&!A.openMenu?(l&&this.runPointActions(y),"touchmove"===y.type&&(M=!!o[0]&&Math.pow(o[0].chartX-y.chartX,2)+Math.pow(o[0].chartY-y.chartY,2)>=16),b(M,!0)&&this.pinch(y)):l&&this.reset()):2===y.touches.length&&this.pinch(y)}touchSelect(y){return!(!this.chart.zooming.singleTouch||!y.touches||1!==y.touches.length)}zoomOption(y){let o,r,l=this.chart,M=l.inverted,A=l.zooming.type||"";/touch/.test(y.type)&&(A=b(l.zooming.pinchType,A)),this.zoomX=o=/x/.test(A),this.zoomY=r=/y/.test(A),this.zoomHor=o&&!M||r&&M,this.zoomVert=r&&!M||o&&M,this.hasZoom=o||r}}return(i=W||(W={})).compose=function(I){d(gt,"Core.Pointer")&&it(I,"beforeRender",function(){this.pointer=new i(this,this.options)})},W}),Dt(q,"Core/Legend/Legend.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Templating.js"],q["Core/Globals.js"],q["Core/Series/Point.js"],q["Core/Renderer/RendererUtilities.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut,kt){var gt;let{animObject:it,setAnimation:Z}=m,{format:$}=mt,{composed:P,marginNames:Q}=xt,{distribute:G}=ut,{addEvent:V,createElement:T,css:D,defined:E,discardElement:b,find:d,fireEvent:v,isNumber:W,merge:I,pick:y,pushUnique:l,relativeLength:M,stableSort:A,syncTimeout:o}=kt;class r{constructor(g,w){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=g,this.setOptions(w),w.enabled&&(this.render(),V(this.chart,"endResize",function(){this.legend.positionCheckboxes()})),V(this.chart,"render",()=>{this.options.enabled&&this.proximate&&(this.proximatePositions(),this.positionItems())})}setOptions(g){let w=y(g.padding,8);this.options=g,this.chart.styledMode||(this.itemStyle=g.itemStyle,this.itemHiddenStyle=I(this.itemStyle,g.itemHiddenStyle)),this.itemMarginTop=g.itemMarginTop,this.itemMarginBottom=g.itemMarginBottom,this.padding=w,this.initialItemY=w-5,this.symbolWi
vendor: 3,516 bytes, line 1
1dth=y(g.symbolWidth,16),this.pages=[],this.proximate="proximate"===g.layout&&!this.chart.inverted,this.baseline=void 0}update(g,w){let O=this.chart;this.setOptions(I(!0,this.options,g)),this.destroy(),O.isDirtyLegend=O.isDirtyBox=!0,y(w,!0)&&O.redraw(),v(this,"afterUpdate",{redraw:w})}colorizeItem(g,w){let{area:O,group:N,label:x,line:z,symbol:K}=g.legendItem||{};if(N?.[w?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){let{itemHiddenStyle:nt={}}=this,ot=nt.color,{fillColor:Y,fillOpacity:J,lineColor:f,marker:F}=g.options,B=s=>(!w&&(s.fill&&(s.fill=ot),s.stroke&&(s.stroke=ot)),s);x?.css(I(w?this.itemStyle:nt)),z?.attr(B({stroke:f||g.color})),K&&K.attr(B(F&&K.isMarker?g.pointAttribs():{fill:g.color})),O?.attr(B({fill:Y||g.color,"fill-opacity":Y?1:J??.75}))}v(this,"afterColorizeItem",{item:g,visible:w})}positionItems(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()}positionItem(g){let{group:w,x:O=0,y:N=0}=g.legendItem||{},x=this.options,nt=g.checkbox;if(w&&w.element){let ot={translateX:x.rtl?this.legendWidth-O-2*x.symbolPadding-4:O,translateY:N};w[E(w.translateY)?"animate":"attr"](ot,void 0,()=>{v(this,"afterPositionItem",{item:g})})}nt&&(nt.x=O,nt.y=N)}destroyItem(g){let w=g.checkbox,O=g.legendItem||{};for(let N of["group","label","line","symbol"])O[N]&&(O[N]=O[N].destroy());w&&b(w),g.legendItem=void 0}destroy(){for(let g of this.getAllItems())this.destroyItem(g);for(let g of["clipRect","up","down","pager","nav","box","title","group"])this[g]&&(this[g]=this[g].destroy());this.display=null}positionCheckboxes(){let g,w=this.group&&this.group.alignAttr,O=this.clipHeight||this.legendHeight,N=this.titleHeight;w&&(g=w.translateY,this.allItems.forEach(function(x){let z,K=x.checkbox;K&&(z=g+N+K.y+(this.scrollOffset||0)+3,D(K,{left:w.translateX+x.checkboxOffset+K.x-20+"px",top:z+"px",display:this.proximate||z>g-6&&z<g+O-6?"":"none"}))},this))}renderTitle(){let N,g=this.options,w=this.padding,O=g.title,x=0;O.text&&(this.title||(this.title=this.chart.renderer.label(O.text,w-3,w-4,void 0,void 0,void 0,g.useHTML,void 0,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(O.style),this.title.add(this.group)),O.width||this.title.css({width:this.maxLegendWidth+"px"}),x=(N=this.title.getBBox()).height,this.offsetWidth=N.width,this.contentGroup.attr({translateY:x})),this.titleHeight=x}setText(g){let w=this.options;g.legendItem.label.attr({text:w.labelFormat?$(w.labelFormat,g,this.chart):w.labelFormatter.call(g)})}renderItem(g){let w=g.legendItem=g.legendItem||{},O=this.chart,N=O.renderer,x=this.options,K=this.symbolWidth,nt=x.symbolPadding||0,ot=this.itemStyle,Y=this.itemHiddenStyle,J="horizontal"===x.layout?y(x.itemDistance,20):0,f=!x.rtl,F=!g.series,B=!F&&g.series.drawLegendSymbol?g.series:g,s=B.options,_=!!this.createCheckboxForItem&&s&&s.showCheckbox,h=x.useHTML,C=g.options.className,S=w.label,U=K+nt+J+(_?20:0);!S&&(w.group=N.g("legend-item").addClass("highcharts-"+B.type+"-series highcharts-color-"+g.colorIndex+(C?" "+C:"")+(F?" highcharts-series-"+g.index:"")).attr({zIndex:1}).add(this.scrollGroup),w.label=S=N.text("",f?K+nt:-nt,this.baseline||0,h),O.styledMode||S.css(I(g.visible?ot:Y)),S.attr({align:f?"left":"right",zIndex:2}).add(w.group),!this.baseline&&(this.fontMetrics=N.fontMetrics(S),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,S.attr("y",this.baseline),this.symbolHeight=y(x.symbolHeight,this.fontMetrics.f),x.squareSymbol&&(this.symbolWidth=y(x.symbolWi
1dth,Math.max(this.symbolHeight,16)),U=this.symbolWidth+nt+J+(_?20:0),f&&S.attr("x",this.symbolWidth+nt))),B.drawLegendSymbol(this,g),this.setItemEvents&&this.setItemEvents(g,S,h)),_&&!g.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(g),this.colorizeItem(g,g.visible),(O.styledMode||!ot.width)&&S.css({width:(x.itemWidth||this.widthOption||O.spacingBox.width)-U+"px"}),this.setText(g);let et=S.getBBox(),ct=this.fontMetrics&&this.fontMetrics.h||0;g.itemWidth=g.checkboxOffset=x.itemWidth||w.labelWidth||et.width+U,this.maxItemWidth=Math.max(this.maxItemWidth,g.itemWidth),this.totalItemWidth+=g.itemWidth,this.itemHeight=g.itemHeight=Math.round(w.labelHeight||(et.height>1.5*ct?et.height:ct))}layoutItem(g){let w=this.options,O=this.padding,N="horizontal"===w.layout,x=g.itemHeight,z=this.itemMarginBottom,K=this.itemMarginTop,nt=N?y(w.itemDistance,20):0,ot=this.maxLegendWidth,Y=w.alignColumns&&this.totalItemWidth>ot?this.maxItemWidth:g.itemWidth,J=g.legendItem||{};N&&this.itemX-O+Y>ot&&(this.itemX=O,this.lastLineHeight&&(this.itemY+=K+this.lastLineHeight+z),this.lastLineHeight=0),this.lastItemY=K+this.itemY+z,this.lastLineHeight=Math.max(x,this.lastLineHeight),J.x=this.itemX,J.y=this.itemY,N?this.itemX+=Y:(this.itemY+=K+x+z,this.lastLineHeight=x),this.offsetWidth=this.widthOption||Math.max((N?this.itemX-O-(g.checkbox?0:nt):Y)+O,this.offsetWidth)}getAllItems(){let g=[];return this.chart.series.forEach(function(w){let O=w&&w.options;w&&y(O.showInLegend,!E(O.linkedTo)&&void 0,!0)&&(g=g.concat((w.legendItem||{}).labels||("point"===O.legendType?w.data:w)))}),v(this,"afterGetAllItems",{allItems:g}),g}getAlignment(){let g=this.options;return this.proximate?g.align.charAt(0)+"tv":g.floating?"":g.align.charAt(0)+g.verticalAlign.charAt(0)+g.layout.charAt(0)}adjustMargins(g,w){let O=this.chart,N=this.options,x=this.getAlignment();x&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEac
vendor: 5,776 bytes, line 1
1h(function(z,K){z.test(x)&&!E(g[K])&&(O[Q[K]]=Math.max(O[Q[K]],O.legend[(K+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][K]*N[K%2?"x":"y"]+y(N.margin,12)+w[K]+(O.titleOffset[K]||0)))})}proximatePositions(){let g,w=this.chart,O=[],N="left"===this.options.align;for(let x of(this.allItems.forEach(function(z){let K,nt,Y,J,ot=N;z.yAxis&&(z.xAxis.options.reversed&&(ot=!ot),z.points&&(K=d(ot?z.points:z.points.slice(0).reverse(),function(f){return W(f.plotY)})),nt=this.itemMarginTop+z.legendItem.label.getBBox().height+this.itemMarginBottom,J=z.yAxis.top-w.plotTop,Y=z.visible?(K?K.plotY:z.yAxis.height)+(J-.3*nt):J+z.yAxis.height,O.push({target:Y,size:nt,item:z}))},this),G(O,w.plotHeight)))g=x.item.legendItem||{},W(x.pos)&&(g.y=w.plotTop-w.spacing[0]+x.pos)}render(){let z,K,nt,Y,g=this.chart,w=g.renderer,O=this.options,N=this.padding,x=this.getAllItems(),ot=this.group,J=this.box;this.itemX=N,this.itemY=this.initialItemY,this.offsetWidth=0,this.lastItemY=0,this.widthOption=M(O.width,g.spacingBox.width-N),Y=g.spacingBox.width-2*N-O.x,["rm","lm"].indexOf(this.getAlignment().substring(0,2))>-1&&(Y/=2),this.maxLegendWidth=this.widthOption||Y,ot||(this.group=ot=w.g("legend").addClass(O.className||"").attr({zIndex:7}).add(),this.contentGroup=w.g().attr({zIndex:1}).add(ot),this.scrollGroup=w.g().add(this.contentGroup)),this.renderTitle(),A(x,(f,F)=>(f.options&&f.options.legendIndex||0)-(F.options&&F.options.legendIndex||0)),O.reversed&&x.reverse(),this.allItems=x,this.display=z=!!x.length,this.lastLineHeight=0,this.maxItemWidth=0,this.totalItemWidth=0,this.itemHeight=0,x.forEach(this.renderItem,this),x.forEach(this.layoutItem,this),K=(this.widthOption||this.offsetWidth)+N,nt=this.lastItemY+this.lastLineHeight+this.titleHeight,nt=this.handleOverflow(nt)+N,J||(this.box=J=w.rect().addClass("highcharts-legend-box").attr({r:O.borderRadius}).add(ot)),g.styledMode||J.attr({stroke:O.borderColor,"stroke-width":O.borderWidth||0,fill:O.backgroundColor||"none"}).shadow(O.shadow),K>0&&nt>0&&J[J.placed?"animate":"attr"](J.crisp.call({},{x:0,y:0,width:K,height:nt},J.strokeWidth())),ot[z?"show":"hide"](),g.styledMode&&"none"===ot.getStyle("display")&&(K=nt=0),this.legendWidth=K,this.legendHeight=nt,z&&this.align(),this.proximate||this.positionItems(),v(this,"afterRender")}align(g=this.chart.spacingBox){let w=this.chart,O=this.options,N=g.y;/(lth|ct|rth)/.test(this.getAlignment())&&w.titleOffset[0]>0?N+=w.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&w.titleOffset[2]>0&&(N-=w.titleOffset[2]),N!==g.y&&(g=I(g,{y:N})),w.hasRendered||(this.group.placed=!1),this.group.align(I(O,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":O.verticalAlign}),!0,g)}handleOverflow(g){let h,C,S,w=this,O=this.chart,N=O.renderer,x=this.options,z=x.y,K="top"===x.verticalAlign,nt=this.padding,ot=x.maxHeight,Y=x.navigation,J=y(Y.animation,!0),f=Y.arrowSize||12,F=this.pages,B=this.allItems,s=function(dt){"number"==typeof dt?ct.attr({height:dt}):ct&&(w.clipRect=ct.destroy(),w.contentGroup.clip()),w.contentGroup.div&&(w.contentGroup.div.style.clip=dt?"rect("+nt+"px,9999px,"+(nt+dt)+"px,0)":"auto")},_=function(dt){return w[dt]=N.circle(0,0,1.3*f).translate(f/2,f/2).add(et),O.styledMode||w[dt].attr("fill","rgba(0,0,0,0.0001)"),w[dt]},U=O.spacingBox.height+(K?-z:z)-nt,et=this.nav,ct=this.clipRect;return"horizontal"!==x.layout||"middle"===x.verticalAlign||x.floating||(U/=2),ot&&(U=Math.min(U,ot)),F.length=0,g&&U>0&&g>U&&!1!==Y.enabled?(this.clipHeight=h=Math.max(U-20-this.titleHeight-nt,0),this.currentPage=y(this.currentPage,1),this.fullHeight=g,B.forEach((dt,_t)=>{let vt=(S=dt.legendItem||{}).y||0,Mt=Math.round(S.label.getBBox().height),X=F.length;(!X||vt-F[X-1]>h&&(C||vt)!==F[X-1])&&(F.push(C||vt),X++),S.pageIx=X-1,C&&((B[_t-1].legendItem||{}).pageIx=X-1),_t===B.length-1&&vt+Mt-F[X-1]>h&&vt>F[X-1]&&(F.push(vt),S.pageIx=X),vt!==C&&(C=vt)}),ct||(ct=w.clipRect=N.clipRect(0,nt-2,9999,0),w.contentGroup.clip(ct)),s(h),et||(this.nav=et=N.g().attr({zIndex:1}).add(this.group),this.up=N.symbol("triangle",0,0,f,f).add(et),_("upTracker").on("click",function(){w.scroll(-1,J)}),this.pager=N.text("",15,10).addClass("highcharts-legend-navigation"),!O.styledMode&&Y.style&&this.pager.css(Y.style),this.pager.add(et),this.down=N.symbol("triangle-down",0,0,f,f).add(et),_("downTracker").on("click",function(){w.scroll(1,J)})),w.scroll(0),g=U):et&&(s(),this.nav=et.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),g}scroll(g,w){let O=this.chart,N=this.pages,x=N.length,z=this.clipHeight,K=this.options.navigation,nt=this.pager,ot=this.padding,Y=this.currentPage+g;Y>x&&(Y=x),Y>0&&(void 0!==w&&Z(w,O),this.nav.attr({translateX:ot,translateY:z+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(J){J.attr({class:1===Y?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),nt.attr({text:Y+"/"+x}),[this.down,this.downTracker].forEach(function(J){J.attr({x:18+this.pager.getBBox().width,class:Y===x?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),O.styledMode||(this.up.attr({fill:1===Y?K.inactiveColor:K.activeColor}),this.upTracker.css({cursor:1===Y?"default":"pointer"}),this.down.attr({fill:Y===x?K.inactiveColor:K.activeColor}),this.downTracker.css({cursor:Y===x?"default":"pointer"})),this.scrollOffset=-N[Y-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=Y,this.positionCheckboxes(),o(()=>{v(this,"afterScroll",{currentPage:Y})},it(y(w,O.renderer.globalAnimation,!0)).duration))}setItemEvents(g,w,O){let N=this,x=g.legendItem||{},z=N.chart.renderer.boxWrapper,K=g instanceof i,nt="highcharts-legend-"+(K?"point":"series")+"-active",ot=N.chart.styledMode,Y=O?[w,x.symbol]:[x.group],J=f=>
1{N.allItems.forEach(F=>{g!==F&&[F].concat(F.linkedSeries||[]).forEach(B=>{B.setState(f,!K)})})};for(let f of Y)f&&f.on("mouseover",function(){g.visible&&J("inactive"),g.setState("hover"),g.visible&&z.addClass(nt),ot||w.css(N.options.itemHoverStyle)}).on("mouseout",function(){N.chart.styledMode||w.css(I(g.visible?N.itemStyle:N.itemHiddenStyle)),J(""),z.removeClass(nt),g.setState()}).on("click",function(F){let B="legendItemClick",s=function(){g.setVisible&&g.setVisible(),J(g.visible?"inactive":"")};z.removeClass(nt),F={browserEvent:F},g.firePointEvent?g.firePointEvent(B,F,s):v(g,B,F,s)})}createCheckboxForItem(g){g.checkbox=T("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:g.selected,defaultChecked:g.selected},this.options.itemCheckboxStyle,this.chart.container),V(g.checkbox,"click",function(w){v(g.series||g,"checkboxClick",{checked:w.target.checked,item:g},function(){g.select()})})}}return(gt=r||(r={})).compose=function(p){l(P,"Core.Legend")&&V(p,"beforeMargins",function(){this.legend=new gt(this,this.options.legend)})},r}),Dt(q,"Core/Legend/LegendSymbol.js",[q["Core/Utilities.js"]],function(m){var mt;let{extend:xt,merge:i,pick:ut}=m;return function(kt){function gt(it,Z,$){let y,P=this.legendItem=this.legendItem||{},{chart:Q,options:G}=this,{baseline:V=0,symbolWidth:T,symbolHeight:D}=it,E=this.symbol||"circle",b=D/2,d=Q.renderer,v=P.group,W=V-Math.round(D*($?.4:.3)),I={},l=G.marker,M=0;if(Q.styledMode||(I["stroke-width"]=Math.min(G.lineWidth||0,24),G.dashStyle?I.dashstyle=G.dashStyle:"square"===G.linecap||(I["stroke-linecap"]="round")),P.line=d.path().addClass("highcharts-graph").attr(I).add(v),$&&(P.area=d.path().addClass("highcharts-area").add(v)),I["stroke-linecap"]&&(M=Math.min(P.line.strokeWidth(),T)/2),T){let A=[["M",M,W],["L",T-M,W]];P.line.attr({d:A}),P.area?.attr({d:[...A,["L",T-M,V],["L",M,V]]})}if(l&&!1!==l.enabled&&T){let A=Math.min(ut(l.radius,b),b);0===E.indexOf("url")&&(l=i(l,{width:D,height:D}),A=0),P.symbol=y=d.symbol(E,T/2-A,W-A,2*A,2*A,xt({context:"legend"},l)).addClass("highcharts-point").add(v),y.isMarker=!0}}kt.areaMarker=function(it,Z){gt.call(this,it,Z,!0)},kt.lineMarker=gt,kt.rectangle=function(it,Z){let $=Z.legendItem||{},Q=it.symbolHeight,G=it.options.squareSymbol;$.symbol=this.chart.renderer.rect(G?(it.symbolWidth-Q)/2:0,it.baseline-Q+1,G?Q:it.symbolWidth,Q,ut(it.options.symbolRadius,Q/2)).addClass("highcharts-point").attr({zIndex:3}).add($.group)}}(mt||(mt={})),mt}),Dt(q,"Core/Series/SeriesDefaults.js",[],function(){return{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:m}=this.series.chart;return"number"!=typeof this.y?"":m(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"}}),Dt(q,"Core/Series/SeriesRegistry.js",[q["Core/Globals.js"],q["Core/Defaults.js"],q["Core/Series/Point.js"],q["Core/Utilities.js"]],function(m,mt,xt,i){var ut;let{defaultOptions:kt}=mt,{extend:gt,extendClass:it,merge:Z}=i;return function($){function P(Q,G){let V=kt.plotOptions||{},T=G.defaultOptions,D=G.prototype;return D.type=Q,D.pointClass||(D.pointClass=xt),!$.seriesTypes[Q]&&(T&&(V[Q]=T),$.seriesTypes[Q]=G,!0)}$.seriesTypes=m.seriesTypes,$.registerSeriesType=P,$.seriesType=function(Q,G,V,T,D){let E=kt.plotOptions||{};if(E[Q]=Z(E[G=G||""],V),delete $.seriesTypes[Q],P(Q,it($.seriesTypes[G]||function(){},T)),$.seriesTypes[Q].prototype.type=Q,D){class b extends xt{}gt(b.prototype,D),$.seriesTypes[Q].prototype.pointClass=b}return $.seriesTypes[Q]}}(ut||(ut={})),ut}
1),Dt(q,"Core/Series/Series.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Defaults.js"],q["Core/Foundation.js"],q["Core/Globals.js"],q["Core/Legend/LegendSymbol.js"],q["Core/Series/Point.js"],q["Core/Series/SeriesDefaults.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Renderer/SVG/SVGElement.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut,kt,gt,it,Z,$){let{animObject:P,setAnimation:Q}=m,{defaultOptions:G}=mt,{registerEventOptions:V}=xt,{svg:T,win:D}=i,{seriesTypes:E}=it,{arrayMax:b,arrayMin:d,clamp:v,correctFloat:W,defined:I,destroyObjectProperties:y,diffObjects:l,erase:M,error:A,extend:o,find:r,fireEvent:p,getClosestDistance:g,getNestedProperty:w,insertItem:O,isArray:N,isNumber:x,isString:z,merge:K,objectEach:nt,pick:ot,removeEvent:Y,splat:J,syncTimeout:f}=$;class F{constructor(){this.zoneAxis="y"}init(s,_){let h;p(this,"init",{options:_});let C=this,S=s.series;this.eventsToUnbind=[],C.chart=s,C.options=C.setOptions(_);let U=C.options,et=!1!==U.visible;C.linkedSeries=[],C.bindAxes(),o(C,{name:U.name,state:"",visible:et,selected:!0===U.selected}),V(this,U);let ct=U.events;(ct&&ct.click||U.point&&U.point.events&&U.point.events.click||U.allowPointSelect)&&(s.runTrackerClick=!0),C.getColor(),C.getSymbol(),C.parallelArrays.forEach(function(dt){C[dt+"Data"]||(C[dt+"Data"]=[])}),C.isCartesian&&(s.hasCartesianSeries=!0),S.length&&(h=S[S.length-1]),C._i=ot(h&&h._i,-1)+1,C.opacity=C.options.opacity,s.orderItems("series",O(this,S)),U.dataSorting&&U.dataSorting.enabled?C.setDataSortingOptions():C.points||C.data||C.setData(U.data,!1),p(this,"afterInit")}is(s){return E[s]&&this instanceof E[s]}bindAxes(){let s,_=this,h=_.options,C=_.chart;p(this,"bindAxes",null,function(){(_.axisTypes||[]).forEach(function(S){C[S].forEach(function(U){s=U.options,(ot(h[S],0)===U.index||void 0!==h[S]&&h[S]===s.id)&&(O(_,U.series),_[S]=U,U.isDirty=!0)}),_[S]||_.optionalAxis===S||A(18,!0,C)})}),p(this,"afterBindAxes")}updateParallelArrays(s,_,h){let C=s.series,S=x(_)?function(U){let et="y"===U&&C.toYData?C.toYData(s):s[U];C[U+"Data"][_]=et}:function(U){Array.prototype[_].apply(C[U+"Data"],h)};C.parallelArrays.forEach(S)}hasData(){return this.visible&&void 0!==this.dataMax&&void 0!==this.dataMin||this.visible&&this.yData&&this.yData.length>0}hasMarkerChanged(s,_){let h=s.marker,C=_.marker||{};return h&&(C.enabled&&!h.enabled||C.symbol!==h.symbol||C.height!==h.height||C.width!==h.width)}autoIncrement(s){let et,ct,_=this.options,h=_.pointIntervalUnit,C=_.relativeXValue,S=this.chart.time,U=this.xIncrement;return U=ot(U,_.pointStart,0),this.pointInterval=ct=ot(this.pointInterval,_.pointInterval,1),C&&x(s)&&(ct*=s),h&&(et=new S.Date(U),"day"===h?S.set("Date",et,S.get("Date",et)+ct):"month"===h?S.set("Month",et,S.get("Month",et)+ct):"year"===h&&S.set("FullYear",et,S.get("FullYear",et)+ct),ct=et.getTime()-U),C&&x(s)?U+ct:(this.xIncrement=U+ct,U)}setDataSortingOptions(){let s=this.options;o(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),I(s.pointRange)||(s.pointRange=1)}setOptions(s){let _,h=this.chart,C=h.options.plotOptions,S=h.userOptions||{},U=K(s),et=h.styledMode,ct={plotOptions:C,userOptions:U};p(this,"setOptions",ct);let dt=ct.plotOptions[this.type],_t=S.plotOptions||{},vt=_t.series||{},Mt=G.plotOptions[this.type]||{},X=_t[this.type]||{};this.userOptions=ct.userOptions;let H=K(dt,C.series,X,U);this.tooltipOptions=K(G.tooltip,G.plotOptions.series?.tooltip,Mt?.tooltip,h.userOptions.tooltip,_t.series?.tooltip,X.tooltip,U.tooltip),this.stickyTracking=ot(U.stickyTracking,X.stickyTracking,vt.stickyTracking,!!this.tooltipOptions.shared&&!this.noSharedTooltip||H.stickyTracking),null===dt.marker&&delete H.marker,this.zoneAxis=H.zoneAxis||"y";let tt=this.zones=(H.zones||[]).map(st=>({...st}));return(H.negativeColor||H.negativeFillColor)&&!H.zones&&(_={value:H[this.zoneAxis+"Threshold"]||H.threshold||0,className:"highcharts-negative"},et||(_.color=H.negativeColor,_.fillColor=H.negativeFillColor),tt.push(_)),tt.length&&I(tt[tt.length-1].value)&&tt.push(et?{}:{color:this.color,fillColor:this.fillColor}),p(this,"afterSetOptions",{options:H}),H}getName(){return ot(this.options.name,"Series "+(this.index+1))}getCyclic(s,_,h){let C,S,U=this.chart,et=`${s}Index`,ct=`${s}Counter`,dt=h?.length||U.options.chart.colorCount;!_&&(I(S=ot("color"===s?this.options.colorIndex:void 0,this[et]))?C=S:(U.series.length||(U[ct]=0),C=U[ct]%dt,U[ct]+=1),h&&(_=h[C])),void 0!==C&&(this[et]=C),this[s]=_}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||G.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)}findPointIndex(s,_){let h,C,S,U=s.id,et=s.x,ct=this.points,dt=this.options.dataSorting;if(U){let _t=this.chart.get(U);_t instanceof kt&&(h=_t)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let _t=vt=>!vt.touched&&vt.index===s.index;if(dt&&dt.matchByName?_t=vt=>!vt.touched&&vt.name===s.name:this.options.relativeXValue&&(_t=vt=>!vt.touched&&vt.options.x===s.x),!(h=r(ct,_t)))return}return h&&void 0!==(S=h&&h.index)&&(C=!0),void 0===S&&x(et)&&(S=this.xData.indexOf(et,_)),-1!==S&&void 0!==S&&this.cropped&&(S=S>=this.cropStart?S-this.cropStart:S),!C&&x(S)&&ct[S]&&ct[S].touched&&(S=void 0),S}updateData(s,_){let dt,_t,vt,Mt,h=this.options,C=h.dataSorting,S=this.points,U=[],et=this.requireSorting,ct=s.length===S.length,X=!0;
1if(this.xIncrement=null,s.forEach(function(H,tt){let st,yt=I(H)&&this.pointClass.prototype.optionsToObject.call({series:this},H)||{};yt.id||x(yt.x)?(-1===(st=this.findPointIndex(yt,Mt))||void 0===st?U.push(H):S[st]&&H!==h.data[st]?(S[st].update(H,!1,null,!1),S[st].touched=!0,et&&(Mt=st+1)):S[st]&&(S[st].touched=!0),(!ct||tt!==st||C&&C.enabled||this.hasDerivedData)&&(dt=!0)):U.push(H)},this),dt)for(_t=S.length;_t--;)(vt=S[_t])&&!vt.touched&&vt.remove&&vt.remove(!1,_);else!ct||C&&C.enabled?X=!1:(s.forEach(function(H,tt){H===S[tt].y||S[tt].destroyed||S[tt].update(H,!1,null,!1)}),U.length=0);return S.forEach(function(H){H&&(H.touched=!1)}),!!X&&(U.forEach(function(H){this.addPoint(H,!1,null,null,!1)},this),null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=b(this.xData),this.autoIncrement()),!0)}setData(s,_=!0,h,C){let lt,ft,ht,At,S=this,U=S.points,et=U&&U.length||0,ct=S.options,dt=S.chart,_t=ct.dataSorting,vt=S.xAxis,Mt=ct.turboThreshold,X=this.xData,H=this.yData,tt=S.pointArrayMap,st=tt&&tt.length,yt=ct.keys,Tt=0,Et=1,Bt=null;dt.options.chart.allowMutatingData||(ct.data&&delete S.options.data,S.userOptions.data&&delete S.userOptions.data,At=K(!0,s));let Ot=(s=At||s||[]).length;if(_t&&_t.enabled&&(s=this.sortData(s)),dt.options.chart.allowMutatingData&&!1!==C&&Ot&&et&&!S.cropped&&!S.hasGroupedData&&S.visible&&!S.boosted&&(ht=this.updateData(s,h)),!ht){if(S.xIncrement=null,S.colorCounter=0,this.parallelArrays.forEach(function(Nt){S[Nt+"Data"].length=0}),Mt&&Ot>Mt)if(x(Bt=S.getFirstValidPoint(s)))for(lt=0;lt<Ot;lt++)X[lt]=this.autoIncrement(),H[lt]=s[lt];else if(N(Bt))if(st)if(Bt.length===st)for(lt=0;lt<Ot;lt++)X[lt]=this.autoIncrement(),H[lt]=s[lt];else for(lt=0;lt<Ot;lt++)ft=s[lt],X[lt]=ft[0],H[lt]=ft.slice(1,st+1);
1else if(yt&&(Tt=yt.indexOf("x"),Et=yt.indexOf("y"),Tt=Tt>=0?Tt:0,Et=Et>=0?Et:1),1===Bt.length&&(Et=0),Tt===Et)for(lt=0;lt<Ot;lt++)X[lt]=this.autoIncrement(),H[lt]=s[lt][Et];else for(lt=0;lt<Ot;lt++)ft=s[lt],X[lt]=ft[Tt],H[lt]=ft[Et];else A(12,!1,dt);else for(lt=0;lt<Ot;lt++)ft={series:S},S.pointClass.prototype.applyOptions.apply(ft,[s[lt]]),S.updateParallelArrays(ft,lt);for(H&&z(H[0])&&A(14,!0,dt),S.data=[],S.options.data=S.userOptions.data=s,lt=et;lt--;)U[lt]?.destroy();vt&&(vt.minRange=vt.userMinRange),S.isDirty=dt.isDirtyBox=!0,S.isDirtyData=!!U,h=!1}"point"===ct.legendType&&(this.processData(),this.generatePoints()),_&&dt.redraw(h)}sortData(s){let _=this,h=_.options.dataSorting.sortKey||"y",C=function(S,U){return I(U)&&S.pointClass.prototype.optionsToObject.call({series:S},U)||{}};return s.forEach(function(S,U){s[U]=C(_,S),s[U].index=U},this),s.concat().sort((S,U)=>{let et=w(h,S),ct=w(h,U);return ct<et?-1:ct>et?1:0}).forEach(function(S,U){S.x=U},this),_.linkedSeries&&_.linkedSeries.forEach(function(S){let U=S.options,et=U.data;U.dataSorting&&U.dataSorting.enabled||!et||(et.forEach(function(ct,dt){et[dt]=C(S,ct),s[dt]&&(et[dt].x=s[dt].x,et[dt].index=dt)}),S.setData(et,!1))}),s}getProcessedData(s){let dt,_t,Mt,X,H,_=this,h=_.xAxis,C=_.options,S=C.cropThreshold,U=s||_.getExtremesFromAll||C.getExtremesFromAll,et=h?.logarithmic,ct=_.isCartesian,vt=0,tt=_.xData,st=_.yData,yt=!1,lt=tt.length;h&&(X=(Mt=h.getExtremes()).min,H=Mt.max,yt=!(!h.categories||h.names.length)),ct&&_.sorted&&!U&&(!S||lt>S||_.forceCrop)&&(tt[lt-1]<X||tt[0]>H?(tt=[],st=[]):_.yData&&(tt[0]<X||tt[lt-1]>H)&&(tt=(dt=this.cropData(_.xData,_.yData,X,H)).xData,st=dt.yData,vt=dt.start,_t=!0));let ft=g([et?tt.map(et.log2lin):tt],()=>_.requireSorting&&!yt&&A(15,!1,_.chart));return{xData:tt,yData:st,cropped:_t,cropStart:vt,closestPointRange:ft}}processData(s){if(this.isCartesian&&!this.isDirty&&!this.xAxis.isDirty&&!this.yAxis.isDirty&&!s)return!1;let h=this.getProcessedData();this.cropped=h.cropped,this.cropStart=h.cropStart,this.processedXData=h.xData,this.processedYData=h.yData,this.closestPointRange=this.basePointRange=h.closestPointRange,p(this,"afterProcessData")}cropData(s,_,h,C){let U,et,S=s.length,ct=0,dt=S;for(U=0;U<S;U++)if(s[U]>=h){ct=Math.max(0,U-1);break}for(et=U;et<S;et++)if(s[et]>C){dt=et+1;break}return{xData:s.slice(ct,dt),yData:_.slice(ct,dt),start:ct,end:dt}}generatePoints(){let Mt,X,H,tt,s=this.options,_=this.processedData||s.data,h=this.processedXData,C=this.processedYData,S=this.pointClass,U=h.length,et=this.cropStart||0,ct=this.hasGroupedData,dt=s.keys,_t=[],vt=s.dataGrouping&&s.dataGrouping.groupAll?et:0,st=this.data;if(!st&&!ct){let yt=[];yt.length=_.length,st=this.data=yt}for(dt&&ct&&(this.options.keys=!1),tt=0;tt<U;tt++)X=et+tt,ct?((H=new S(this,[h[tt]].concat(J(C[tt])))).dataGroup=this.groupMap[vt+tt],H.dataGroup.options&&(H.options=H.dataGroup.options,o(H,H.dataGroup.options),delete H.dataLabels)):(H=st[X])||void 0===_[X]||(st[X]=H=new S(this,_[X],h[tt])),H&&(H.index=ct?vt+tt:X,_t[tt]=H);if(this.options.keys=dt,st&&(U!==(Mt=st.length)||ct))for(tt=0;tt<Mt;tt++)tt!==et||ct||(tt+=U),st[tt]&&(st[tt].destroyElements(),st[tt].plotX=void 0);this.data=st,this.points=_t,p(this,"afterGeneratePoints")}getXExtremes(s){return{min:d(s),max:b(s)}}getExtremes(s,_){let dt,_t,vt,Mt,X,H,tt,h=this.xAxis,C=this.yAxis,S=this.processedXData||this.xData,U=[],et=this.requireSorting&&!this.is("column")?1:0,ct=!!C&&C.positiveValuesOnly,st=0,yt=0,lt=0,ft=(s=s||this.stackedYData||this.processedYData||[]).length;for(h&&(st=(dt=h.getExtremes()).min,yt=dt.max),H=0;H<ft;H++)if(Mt=S[H],_t=(x(X=s[H])||N(X))&&((x(X)?X>0:X.length)||!ct),vt=_||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!h||(S[H+et]||Mt)>=st&&(S[H-et]||Mt)<=yt,_t&&vt)if(tt=X.length)for(;tt--;)x(X[tt])&&(U[lt++]=X[tt]);else U[lt++]=X;let ht={activeYData:U,dataMin:d(U),dataMax:b(U)};return p(this,"afterGetExtremes",{dataExtremes:ht}),ht}applyExtremes(){let s=this.getExtremes();return this.dataMin=s.dataMin,this.dataMax=s.dataMax,s}getFirstValidPoint(s){let _=s.length,h=0,C=null;for(;null===C&&h<_;)C=s[h],h++;return C}translate(){this.processedXData||this.processData(),this.generatePoints();let X,H,tt,st,s=this.options,_=s.stacking,h=this.xAxis,C=h.categories,S=this.enabledDataSorting,U=this.yAxis,et=this.points,ct=et.length,dt=this.pointPlacementToXValue(),_t=!!dt,vt=s.threshold,Mt=s.startFromThreshold?vt:0,yt=Number.MAX_VALUE;function lt(ft){return v(ft,-1e5,1e5)}for(X=0;X<ct;X++){let ft,Et,Bt,ht=et[X],Tt=ht.x,At=ht.y,Ot=ht.low,Nt=_&&U.stacking?.stacks[(this.negStacks&&At<(Mt?0:vt)?"-":"")+this.stackKey];H=h.translate(Tt,!1,!1,!1,!0,dt),ht.plotX=x(H)?W(lt(H)):void 0,_&&this.visible&&Nt&&Nt[Tt]&&(st=this.getStackIndicator(st,Tt,this.index),!ht.isNull&&st.key&&(Bt=(Et=Nt[Tt]).points[st.key]),Et&&N(Bt)&&(Ot=Bt[0],At=Bt[1],Ot===Mt&&st.key===Nt[Tt].base&&(Ot=ot(x(vt)?vt:U.min)),U.positiveValuesOnly&&I(Ot)&&Ot<=0&&(Ot=void 0),ht.total=ht.stackTotal=ot(Et.total),ht.percentage=I(ht.y)&&Et.total?ht.y/Et.total*100:void 0,ht.stackY=At,this.irregularWidths||Et.setOffset(this.pointXOffset||0,this.barW||0,void 0,void 0,void 0,this.xAxis))),ht.yBottom=I(Ot)?lt(U.translate(Ot,!1,!0,!1,!0)):void 0,this.dataModify&&(At=this.dataModify.modifyValue(At,X)),x(At)&&void 0!==ht.plotX&&(ft=x(ft=U.translate(At,!1,!0,!1,!0))?lt(ft):void 0),ht.plotY=ft,ht.isInside=this.isPointInside(ht),ht.clientX=_t?W(h.translate(Tt,!1,!1,!1,!0,dt)):H,ht.negative=(ht.y||0)<(vt||0),ht.category=ot(C&&C[ht.x],ht.x),ht.isNull||!1===ht.visible||(void 0!==tt&&(yt=Math.min(yt,Math.abs(H-tt))),tt=H),ht.zone=this.zones.length?ht.getZone():void 0,!ht.graphic&&this.group&&S&&(ht.isNew=!0)}this.closestPointRangePx=yt,p(this,"afterTranslate")}getValidPoints(s,_,h){let C=this.chart;return(s||this.points||[]).filter(function(S){let{plotX:U,plotY:et}=S;return!(!(h||!S.isNull&&x(et))||_&&!C.isInsidePlot(U,et,{inverted:C.inverted}))&&!1!==S.visible})}getClipBox(){let{chart:s,xAxis:_,yAxis:h}=this,{x:C,y:S,width:U,height:et}=K(s.clipBox);return _&&_.len!==s.plotSizeX&&(U=_.len),h&&h.len!==s.plotSizeY&&(et=h.len),s.inverted&&!this.invertible&&([U,et]=[et,U]),{x:C,y:S,width:U,height:et}}
1getSharedClipKey(){return this.sharedClipKey=(this.options.xAxis||0)+","+(this.options.yAxis||0),this.sharedClipKey}setClip(){let{chart:s,group:_,markerGroup:h}=this,C=s.sharedClips,S=s.renderer,U=this.getClipBox(),et=this.getSharedClipKey(),ct=C[et];ct?ct.animate(U):C[et]=ct=S.clipRect(U),_&&_.clip(!1===this.options.clip?void 0:ct),h&&h.clip()}animate(s){let{chart:_,group:h,markerGroup:C}=this,S=_.inverted,U=P(this.options.animation),et=[this.getSharedClipKey(),U.duration,U.easing,U.defer].join(","),ct=_.sharedClips[et],dt=_.sharedClips[et+"m"];if(s&&h){let _t=this.getClipBox();ct?ct.attr("height",_t.height):(_t.width=0,S&&(_t.x=_.plotHeight),ct=_.renderer.clipRect(_t),_.sharedClips[et]=ct,dt=_.renderer.clipRect({x:-99,y:-99,width:S?_.plotWidth+199:99,height:S?99:_.plotHeight+199}),_.sharedClips[et+"m"]=dt),h.clip(ct),C?.clip(dt)}else if(ct&&!ct.hasClass("highcharts-animating")){let _t=this.getClipBox(),vt=U.step;(C?.element.childNodes.length||_.series.length>1)&&(U.step=function(Mt,X){vt&&vt.apply(X,arguments),"width"===X.prop&&dt?.element&&dt.attr(S?"height":"width",Mt+99)}),ct.addClass("highcharts-animating").animate(_t,U)}}afterAnimate(){this.setClip(),nt(this.chart.sharedClips,(s,_,h)=>{s&&!this.chart.container.querySelector(`[clip-path="url(#${s.id})"]`)&&(s.destroy(),delete h[_])}),this.finishedAnimating=!0,p(this,"afterAnimate")}drawPoints(s=this.points){let _,h,C,S,U,et,ct,dt=this.chart,_t=dt.styledMode,{colorAxis:vt,options:Mt}=this,X=Mt.marker,H=this[this.specialGroup||"markerGroup"],tt=this.xAxis,st=ot(X.enabled,!tt||!!tt.isRadial||null,this.closestPointRangePx>=X.enabledThreshold*X.radius);if(!1!==X.enabled||this._hasPointMarkers)for(_=0;_<s.length;_++)if(S=(C=(h=s[_]).graphic)?"animate":"attr",U=h.marker||{},et=!!h.marker,(st&&void 0===U.enabled||U.enabled)&&!h.isNull&&!1!==h.visible){let yt=ot(U.symbol,this.symbol,"rect");ct=this.markerAttribs(h,h.selected&&"select"),this.enabledDataSorting&&(h.startXPos=tt.reversed?-(ct.width||0):tt.width);let lt=!1!==h.isInside;if(!C&<&&((ct.width||0)>0||h.hasImage)&&(h.graphic=C=dt.renderer.symbol(yt,ct.x,ct.y,ct.width,ct.height,et?U:X).add(H),this.enabledDataSorting&&dt.hasRendered&&(C.attr({x:h.startXPos}),S="animate")),C&&"animate"===S&&C[lt?"show":"hide"](lt).animate(ct),C){let ft=this.pointAttribs(h,_t||!h.selected?void 0:"select");_t?vt&&C.css({fill:ft.fill}):C[S](ft)}C&&C.addClass(h.getClassName(),!0)}else C&&(h.graphic=C.destroy())}markerAttribs(s,_){let ct,dt,h=this.options,C=h.marker,S=s.marker||{},U=S.symbol||C.symbol,et={},_t=ot(S.radius,C&&C.radius);_&&(ct=C.states[_],_t=ot((dt=S.states&&S.states[_])&&dt.radius,ct&&ct.radius,_t&&_t+(ct&&ct.radiusPlus||0))),s.hasImage=U&&0===U.indexOf("url"),s.hasImage&&(_t=0);let vt=s.pos();return x(_t)&&vt&&(et.x=vt[0]-_t,et.y=vt[1]-_t,h.crisp&&(et.x=Math.floor(et.x))),_t&&(et.width=et.height=2*_t),et}pointAttribs(s,_){let dt,_t,Mt,X,h=this.options.marker,C=s&&s.options,S=C&&C.marker||{},U=C&&C.color,et=s&&s.color,ct=s&&s.zone&&s.zone.color,vt=this.color,H=ot(S.lineWidth,h.lineWidth),tt=1;return vt=U||ct||et||vt,Mt=S.fillColor||h.fillColor||vt,X=S.lineColor||h.lineColor||vt,dt=h.states[_=_||"normal"]||{},H=ot((_t=S.states&&S.states[_]||{}).lineWidth,dt.lineWidth,H+ot(_t.lineWidthPlus,dt.lineWidthPlus,0)),Mt=_t.fillColor||dt.fillColor||Mt,{stroke:X=_t.lineColor||dt.lineColor||X,"stroke-width":H,fill:Mt,opacity:tt=ot(_t.opacity,dt.opacity,tt)}}destroy(s){let _,h,C,S=this,U=S.chart,et=/AppleWebKit\/533/.test(D.navigator.userAgent),ct=S.data||[];for(p(S,"destroy",{keepEventsForUpdate:s}),this.removeEvents(s),(S.axisTypes||[]).forEach(function(dt){(C=S[dt])&&C.series&&(M(C.series,S),C.isDirty=C.forceRedraw=!0)}),S.legendItem&&S.chart.legend.destroyItem(S),_=ct.length;_--;)(h=ct[_])&&h.destroy&&h.destroy();for(let dt of S.zones)y(dt,void 0,!0);$.clearTimeout(S.animationTimeout),nt(S,function(dt,_t){dt instanceof Z&&!dt.survive&&dt[et&&"group"===_t?"hide":"destroy"]()}),U.hoverSeries===S&&(U.hoverSeries=void 0),M(U.series,S),U.orderItems("series"),nt(S,function(dt,_t){s&&"hcEvents"===_t||delete S[_t]})}applyZones(){let{area:s,chart:_,graph:h,zones:C,points:S,xAxis:U,yAxis:et,zoneAxis:ct}=this,{inverted:dt,renderer:_t}=_,vt=this[`${ct}Axis`],{isXAxis:Mt,len:X=0}=vt||{},H=(h?.strokeWidth()||0)/2+1,tt=(st,yt=0,lt=0)=>{dt&&(lt=X-lt);let{translated:ft=0,lineClip:ht}=st,Tt=lt-ft;ht?.push(["L",yt,Math.abs(Tt)<H?lt-H*(Tt<=0?-1:1):ft])};if(C.length&&(h||s)&&vt&&x(vt.min)){let st=vt.getExtremes().max,yt=ht=>{ht.forEach((Tt,Et)=>{("M"===Tt[0]||"L"===Tt[0])&&(ht[Et]=[Tt[0],Mt?X-Tt[1]:Tt[1],Mt?Tt[2]:X-Tt[2]])})};if(C.forEach(ht=>{ht.lineClip=[],ht.translated=v(vt.toPixels(ot(ht.value,st),!0)||0,0,X)}),h&&!this.showLine&&h.hide(),s&&s.hide(),"y"===ct&&S.length<U.len)for(let ht of S){let{plotX:Tt,plotY:Et,zone:Bt}=ht,At=Bt&&C[C.indexOf(Bt)-1];Bt&&tt(Bt,Tt,Et),At&&tt(At,Tt,Et)}let lt=[],ft=vt.toPixels(vt.getExtremes().min,!0);
vendor: 4,657 bytes, line 1
1C.forEach(ht=>{let Tt=ht.lineClip||[],Et=Math.round(ht.translated||0);U.reversed&&Tt.reverse();let{clip:Bt,simpleClip:At}=ht,Ot=0,Nt=0,Ft=U.len,Pt=et.len;Mt?(Ot=Et,Ft=ft):(Nt=Et,Pt=ft);let Ht=[["M",Ot,Nt],["L",Ft,Nt],["L",Ft,Pt],["L",Ot,Pt],["Z"]],Ut=[Ht[0],...Tt,Ht[1],Ht[2],...lt,Ht[3],Ht[4]];lt=Tt.reverse(),ft=Et,dt&&(yt(Ut),s&&yt(Ht)),Bt?(Bt.animate({d:Ut}),At?.animate({d:Ht})):(Bt=ht.clip=_t.path(Ut),s&&(At=ht.simpleClip=_t.path(Ht))),h&&ht.graph?.clip(Bt),s&&ht.area?.clip(At)})}else this.visible&&(h&&h.show(),s&&s.show())}plotGroup(s,_,h,C,S){let U=this[s],et=!U,ct={visibility:h,zIndex:C||.1};return I(this.opacity)&&!this.chart.styledMode&&"inactive"!==this.state&&(ct.opacity=this.opacity),U||(this[s]=U=this.chart.renderer.g().add(S)),U.addClass("highcharts-"+_+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(I(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(U.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),U.attr(ct)[et?"attr":"animate"](this.getPlotBox(_)),U}getPlotBox(s){let _=this.xAxis,h=this.yAxis,C=this.chart,S=C.inverted&&!C.polar&&_&&this.invertible&&"series"===s;return C.inverted&&(_=h,h=this.xAxis),{translateX:_?_.left:C.plotLeft,translateY:h?h.top:C.plotTop,rotation:S?90:0,rotationOriginX:S?(_.len-h.len)/2:0,rotationOriginY:S?(_.len+h.len)/2:0,scaleX:S?-1:1,scaleY:1}}removeEvents(s){let{eventsToUnbind:_}=this;s||Y(this),_.length&&(_.forEach(h=>{h()}),_.length=0)}render(){let s=this,{chart:_,options:h,hasRendered:C}=s,S=P(h.animation),U=s.visible?"inherit":"hidden",et=h.zIndex,ct=_.seriesGroup,dt=s.finishedAnimating?0:S.duration;p(this,"render"),s.plotGroup("group","series",U,et,ct),s.markerGroup=s.plotGroup("markerGroup","markers",U,et,ct),!1!==h.clip&&s.setClip(),dt&&s.animate?.(!0),s.drawGraph&&(s.drawGraph(),s.applyZones()),s.visible&&s.drawPoints(),s.drawDataLabels?.(),s.redrawPoints?.(),h.enableMouseTracking&&s.drawTracker?.(),dt&&s.animate?.(),C||(dt&&S.defer&&(dt+=S.defer),s.animationTimeout=f(()=>{s.afterAnimate()},dt||0)),s.isDirty=!1,s.hasRendered=!0,p(s,"afterRender")}redraw(){let s=this.isDirty||this.isDirtyData;this.translate(),this.render(),s&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(s,_){let{xAxis:h,yAxis:C}=this,S=this.chart.inverted;return this.searchKDTree({clientX:S?h.len-s.chartY+h.pos:s.chartX-h.pos,plotY:S?C.len-s.chartX+C.pos:s.chartY-C.pos},_,s)}buildKDTree(s){this.buildingKdTree=!0;let _=this,h=_.options.findNearestPointBy.indexOf("y")>-1?2:1;delete _.kdTree,f(function(){_.kdTree=function C(S,U,et){let ct,dt,_t=S?.length;if(_t)return ct=_.kdAxisArray[U%et],S.sort((vt,Mt)=>(vt[ct]||0)-(Mt[ct]||0)),{point:S[dt=Math.floor(_t/2)],left:C(S.slice(0,dt),U+1,et),right:C(S.slice(dt+1),U+1,et)}}(_.getValidPoints(void 0,!_.directTouch),h,h),_.buildingKdTree=!1},_.options.kdNow||"touchstart"===s?.type?0:1)}searchKDTree(s,_,h){let C=this,[S,U]=this.kdAxisArray,et=_?"distX":"dist",ct=(C.options.findNearestPointBy||"").indexOf("y")>-1?2:1,dt=!!C.isBubble;if(this.kdTree||this.buildingKdTree||this.buildKDTree(h),this.kdTree)return function _t(vt,Mt,X,H){let yt,lt,tt=Mt.point,st=C.kdAxisArray[X%H],ft=tt;!function(Bt,At){let Ot=Bt[S],Nt=At[S],Ft=I(Ot)&&I(Nt)?Ot-Nt:null,Pt=Bt[U],Ht=At[U],Ut=I(Pt)&&I(Ht)?Pt-Ht:0,Yt=dt&&At.marker?.radius||0;At.dist=Math.sqrt((Ft&&Ft*Ft||0)+Ut*Ut)-Yt,At.distX=I(Ft)?Math.abs(Ft)-Yt:Number.MAX_VALUE}(vt,tt);let ht=(vt[st]||0)-(tt[st]||0)+(dt&&tt.marker?.radius||0),Tt=ht<0?"left":"right",Et=ht<0?"right":"left";return Mt[Tt]&&(ft=(yt=_t(vt,Mt[Tt],X+1,H))[et]<ft[et]?yt:tt),Mt[Et]&&Math.sqrt(ht*ht)<ft[et]&&(ft=(lt=_t(vt,Mt[Et],X+1,H))[et]<ft[et]?lt:ft),ft}(s,this.kdTree,ct,ct)}pointPlacementToXValue(){let{options:s,xAxis:_}=this,h=s.pointPlacement;return"between"===h&&(h=_.reversed?-.5:.5),x(h)?h*(s.pointRange||_.pointRange):0}isPointInside(s){let{chart:_,xAxis:h,yAxis:C}=this,{plotX:S=-1,plotY:U=-1}=s;return U>=0&&U<=(C?C.len:_.plotHeight)&&S>=0&&S<=(h?h.len:_.plotWidth)}drawTracker(){let s=this,_=s.options,h=_.trackByArea,C=[].concat((h?s.areaPath:s.graphPath)||[]),S=s.chart,U=S.pointer,et=S.renderer,ct=S.options.tooltip?.snap||0,dt=()=>{_.enableMouseTracking&&S.hoverSeries!==s&&s.onMouseOver()},_t="rgba(192,192,192,"+(T?1e-4:.002)+")",vt=s.tracker;vt?vt.attr({d:C}):s.graph&&(s.tracker=vt=et.path(C).attr({visibility:s.visible?"inherit":"hidden",zIndex:2}).addClass(h?"highcharts-tracker-area":"highcharts-tracker-line").add(s.group),S.styledMode||vt.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:_t,fill:h?_t:"none","stroke-width":s.graph.strokeWidth()+(h?0:2*ct)}
1),[s.tracker,s.markerGroup,s.dataLabelsGroup].forEach(Mt=>{Mt&&(Mt.addClass("highcharts-tracker").on("mouseover",dt).on("mouseout",X=>{U?.onTrackerMouseOut(X)}),_.cursor&&!S.styledMode&&Mt.css({cursor:_.cursor}),Mt.on("touchstart",dt))})),p(this,"afterDrawTracker")}addPoint(s,_,h,C,S){let U,et,ct=this.options,dt=this.data,_t=this.chart,vt=this.xAxis,Mt=vt&&vt.hasNames&&vt.names,X=ct.data,H=this.xData;_=ot(_,!0);let tt={series:this};this.pointClass.prototype.applyOptions.apply(tt,[s]);let st=tt.x;if(et=H.length,this.requireSorting&&st<H[et-1])for(U=!0;et&&H[et-1]>st;)et--;this.updateParallelArrays(tt,"splice",[et,0,0]),this.updateParallelArrays(tt,et),Mt&&tt.name&&(Mt[st]=tt.name),X.splice(et,0,s),(U||this.processedData)&&(this.data.splice(et,0,null),this.processData()),"point"===ct.legendType&&this.generatePoints(),h&&(dt[0]&&dt[0].remove?dt[0].remove(!1):(dt.shift(),this.updateParallelArrays(tt,"shift"),X.shift())),!1!==S&&p(this,"addPoint",{point:tt}),this.isDirty=!0,this.isDirtyData=!0,_&&_t.redraw(C)}removePoint(s,_,h){let C=this,S=C.data,U=S[s],et=C.points,ct=C.chart,dt=function(){et&&et.length===S.length&&et.splice(s,1),S.splice(s,1),C.options.data.splice(s,1),C.updateParallelArrays(U||{series:C},"splice",[s,1]),U&&U.destroy(),C.isDirty=!0,C.isDirtyData=!0,_&&ct.redraw()};Q(h,ct),_=ot(_,!0),U?U.firePointEvent("remove",null,dt):dt()}remove(s,_,h,C){let S=this,U=S.chart;function et(){S.destroy(C),U.isDirtyLegend=U.isDirtyBox=!0,U.linkSeries(C),ot(s,!0)&&U.redraw(_)}!1!==h?p(S,"remove",null,et):et()}update(s,_){p(this,"update",{options:s=l(s,this.userOptions)});let vt,Mt,h=this,C=h.chart,S=h.userOptions,U=h.initialType||h.type,et=C.options.plotOptions,ct=E[U].prototype,dt=h.finishedAnimating&&{animation:!1},_t={},X=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"],H=s.type||S.type||C.options.chart.type,tt=!(this.hasDerivedData||H&&H!==this.type||void 0!==s.pointStart||void 0!==s.pointInterval||void 0!==s.relativeXValue||s.joinBy||s.mapData||["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"].some(yt=>h.hasOptionChanged(yt)));H=H||U,tt&&(X.push("data","isDirtyData","isDirtyCanvas","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"),!1!==s.visible&&X.push("area","graph"),h.parallelArrays.forEach(function(yt){X.push(yt+"Data")}),s.data&&(s.dataSorting&&o(h.options.dataSorting,s.dataSorting),this.setData(s.data,!1))),s=K(S,{index:void 0===S.index?h.index:S.index,pointStart:et?.series?.pointStart??S.pointStart??h.xData?.[0]},!tt&&{data:h.options.data},s,dt),tt&&s.data&&(s.data=h.options.data),(X=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(X)).forEach(function(yt){X[yt]=h[yt],delete h[yt]});let st=!1;if(E[H]){if(st=H!==h.type,h.remove(!1,!1,!1,!0),st)if(C.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(h,E[H].prototype);else{let yt=Object.hasOwnProperty.call(h,"hcEvents")&&h.hcEvents;for(Mt in ct)h[Mt]=void 0;o(h,E[H].prototype),yt?h.hcEvents=yt:delete h.hcEvents}}else A(17,!0,C,{missingModuleFor:H});if(X.forEach(function(yt){h[yt]=X[yt]}),h.init(C,s),tt&&this.points)for(let yt of(!1===(vt=h.options).visible?(_t.graphic=1,_t.dataLabel=1):(this.hasMarkerChanged(vt,S)&&(_t.graphic=1),h.hasDataLabels?.()||(_t.dataLabel=1)),this.points))yt&&yt.series&&(yt.resolveColor(),Object.keys(_t).length&&yt.destroyElements(_t),!1===vt.showInLegend&&yt.legendItem&&C.legend.destroyItem(yt));h.initialType=U,C.linkSeries(),C.setSortedData(),st&&h.linkedSeries.length&&(h.isDirtyData=!0),p(this,"afterUpdate"),ot(_,!0)&&C.redraw(!!tt&&void 0)}setName(s){this.name=this.options.name=this.userOptions.name=s,this.chart.isDirtyLegend=!0}hasOptionChanged(s){let h=this.options[s],C=this.chart.options.plotOptions,S=this.userOptions[s],U=ot(C?.[this.type]?.[s],C?.series?.[s]);return S&&!I(U)?h!==S:h!==ot(U,h)}onMouseOver(){let s=this.chart,_=s.hoverSeries;s.pointer?.setHoverChartIndex(),_&&_!==this&&_.onMouseOut(),this.options.events.mouseOver&&p(this,"mouseOver"),this.setState("hover"),s.hoverSeries=this}onMouseOut(){let s=this.options,_=this.chart,h=_.tooltip,C=_.hoverPoint;_.hoverSeries=null,C&&C.onMouseOut(),this&&s.events.mouseOut&&p(this,"mouseOut"),h&&!this.stickyTracking&&(!h.shared||this.noSharedTooltip)&&h.hide(),_.series.forEac
1h(function(S){S.setState("",!0)})}setState(s,_){let h=this,C=h.options,S=h.graph,U=C.inactiveOtherPoints,et=C.states,ct=ot(et[s||"normal"]&&et[s||"normal"].animation,h.chart.options.chart.animation),dt=C.lineWidth,_t=C.opacity;if(h.state!==(s=s||"")&&([h.group,h.markerGroup,h.dataLabelsGroup].forEach(function(vt){vt&&(h.state&&vt.removeClass("highcharts-series-"+h.state),s&&vt.addClass("highcharts-series-"+s))}),h.state=s,!h.chart.styledMode)){if(et[s]&&!1===et[s].enabled)return;if(s&&(dt=et[s].lineWidth||dt+(et[s].lineWidthPlus||0),_t=ot(et[s].opacity,_t)),S&&!S.dashstyle&&x(dt))for(let vt of[S,...this.zones.map(Mt=>Mt.graph)])vt?.animate({"stroke-width":dt},ct);U||[h.group,h.markerGroup,h.dataLabelsGroup,h.labelBySeries].forEach(function(vt){vt&&vt.animate({opacity:_t},ct)})}_&&U&&h.points&&h.setAllPointsToState(s||void 0)}setAllPointsToState(s){this.points.forEach(function(_){_.setState&&_.setState(s)})}setVisible(s,_){let h=this,C=h.chart,S=C.options.chart.ignoreHiddenSeries;h.visible=s=h.options.visible=h.userOptions.visible=void 0===s?!h.visible:s;let et=s?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(ct=>{h[ct]?.[et]()}),(C.hoverSeries===h||C.hoverPoint?.series===h)&&h.onMouseOut(),h.legendItem&&C.legend.colorizeItem(h,s),h.isDirty=!0,h.options.stacking&&C.series.forEach(ct=>{ct.options.stacking&&ct.visible&&(ct.isDirty=!0)}),h.linkedSeries.forEach(ct=>{ct.setVisible(s,!1)}),S&&(C.isDirtyBox=!0),p(h,et),!1!==_&&C.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(s){this.selected=s=this.options.selected=void 0===s?!this.selected:s,this.checkbox&&(this.checkbox.checked=s),p(this,s?"select":"unselect")}shouldShowTooltip(s,_,h={}){return h.series=this,h.visiblePlotOnly=!0,this.chart.isInsidePlot(s,_,h)}drawLegendSymbol(s,_){ut[this.options.legendSymbol||"rectangle"]?.call(this,s,_)}}return F.defaultOptions=gt,F.types=it.seriesTypes,F.registerType=it.registerSeriesType,o(F.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:kt,requireSorting:!0,sorted:!0}),it.series=F,F}),Dt(q,"Core/Chart/Chart.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Axis/Axis.js"],q["Core/Defaults.js"],q["Core/Templating.js"],q["Core/Foundation.js"],q["Core/Globals.js"],q["Core/Renderer/RendererRegistry.js"],q["Core/Series/Series.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Renderer/SVG/SVGRenderer.js"],q["Core/Time.js"],q["Core/Utilities.js"],q["Core/Renderer/HTML/AST.js"],q["Core/Axis/Tick.js"]],function(m,mt,xt,i,ut,kt,gt,it,Z,$,P,Q,G,V){let{animate:T,animObject:D,setAnimation:E}=m,{defaultOptions:b,defaultTime:d}=xt,{numberFormat:v}=i,{registerEventOptions:W}=ut,{charts:I,doc:y,marginNames:l,svg:M,win:A}=kt,{seriesTypes:o}=Z,{addEvent:r,attr:p,createElement:g,css:w,defined:O,diffObjects:N,discardElement:x,erase:z,error:K,extend:nt,find:ot,fireEvent:Y,getStyle:J,isArray:f,isNumber:F,isObject:B,isString:s,merge:_,objectEach:h,pick:C,pInt:S,relativeLength:U,removeEvent:et,splat:ct,syncTimeout:dt,uniqueKey:_t}=Q;class vt{static chart(X,H,tt){return new vt(X,H,tt)}constructor(X,H,tt){this.sharedClips={};let st=[...arguments];(s(X)||X.nodeName)&&(this.renderTo=st.shift()),this.init(st[0],st[1])}setZoomOptions(){let X=this.options.chart,H=X.zooming;this.zooming={...H,type:C(X.zoomType,H.type),key:C(X.zoomKey,H.key),pinchType:C(X.pinchType,H.pinchType),singleTouch:C(X.zoomBySingleTouch,H.singleTouch,!1),resetButton:_(H.resetButton,X.resetZoomButton)}}init(X,H){Y(this,"init",{args:arguments},function(){let tt=_(b,X),st=tt.chart;this.userOptions=nt({},X),this.margin=[],this.spacing=[],this.labelCollectors=[],this.callback=H,this.isResizing=0,this.options=tt,this.axes=[],this.series=[],this.time=X.time&&Object.keys(X.time).length?new P(X.time):kt.time,this.numberFormatter=st.numberFormatter||v,this.styledMode=st.styledMode,this.hasCartesianSeries=st.showAxes,this.index=I.length,I.push(this),kt.chartCount++,W(this,st),this.xAxis=[],this.yAxis=[],this.pointCount=this.colorCounter=this.symbolCounter=0,this.setZoomOptions(),Y(this,"afterInit"),this.firstRen
1der()})}initSeries(X){let tt=X.type||this.options.chart.type,st=o[tt];st||K(17,!0,this,{missingModuleFor:tt});let yt=new st;return"function"==typeof yt.init&&yt.init(this,X),yt}setSortedData(){this.getSeriesOrderByLinks().forEach(function(X){X.points||X.data||!X.enabledDataSorting||X.setData(X.options.data,!1)})}getSeriesOrderByLinks(){return this.series.concat().sort(function(X,H){return X.linkedSeries.length||H.linkedSeries.length?H.linkedSeries.length-X.linkedSeries.length:0})}orderItems(X,H=0){let tt=this[X],st=this.options[X]=ct(this.options[X]).slice(),yt=this.userOptions[X]=this.userOptions[X]?ct(this.userOptions[X]).slice():[];if(this.hasRendered&&(st.splice(H),yt.splice(H)),tt)for(let lt=H,ft=tt.length;lt<ft;++lt){let ht=tt[lt];ht&&(ht.index=lt,ht instanceof it&&(ht.name=ht.getName()),ht.options.isInternal||(st[lt]=ht.options,yt[lt]=ht.userOptions))}}isInsidePlot(X,H,tt={}){let{inverted:st,plotBox:yt,plotLeft:lt,plotTop:ft,scrollablePlotBox:ht}=this,{scrollLeft:Tt=0,scrollTop:Et=0}=tt.visiblePlotOnly&&this.scrollablePlotArea?.scrollingContainer||{},Bt=tt.series,At=tt.visiblePlotOnly&&ht||yt,Ot=tt.inverted?H:X,Nt=tt.inverted?X:H,Ft={x:Ot,y:Nt,isInsidePlot:!0,options:tt};if(!tt.ignoreX){let Pt=Bt&&(st&&!this.polar?Bt.yAxis:Bt.xAxis)||{pos:lt,len:1/0},Ht=tt.paneCoordinates?Pt.pos+Ot:lt+Ot;Ht>=Math.max(Tt+lt,Pt.pos)&&Ht<=Math.min(Tt+lt+At.width,Pt.pos+Pt.len)||(Ft.isInsidePlot=!1)}if(!tt.ignoreY&&Ft.isInsidePlot){let Pt=!st&&tt.axis&&!tt.axis.isXAxis&&tt.axis||Bt&&(st?Bt.xAxis:Bt.yAxis)||{pos:ft,len:1/0},Ht=tt.paneCoordinates?Pt.pos+Nt:ft+Nt;Ht>=Math.max(Et+ft,Pt.pos)&&Ht<=Math.min(Et+ft+At.height,Pt.pos+Pt.len)||(Ft.isInsidePlot=!1)}return Y(this,"afterIsInsidePlot",Ft),Ft.isInsidePlot}redraw(X){Y(this,"beforeRedraw");let Et,Bt,At,Ft,H=this.hasCartesianSeries?this.axes:this.colorAxis||[],tt=this.series,st=this.pointer,yt=this.legend,lt=this.userOptions.legend,ft=this.renderer,ht=ft.isHidden(),Tt=[],Ot=this.isDirtyBox,Nt=this.isDirtyLegend;for(ft.rootFontSize=ft.boxWrapper.getStyle("font-size"),this.setResponsive&&this.setResponsive(!1),E(!!this.hasRendered&&X,this),ht&&this.temporaryDisplay(),this.layOutTitles(!1),At=tt.length;At--;)if(((Ft=tt[At]).options.stacking||Ft.options.centerInCategory)&&(Bt=!0,Ft.isDirty)){Et=!0;break}if(Et)for(At=tt.length;At--;)(Ft=tt[At]).options.stacking&&(Ft.isDirty=!0);tt.forEach(function(Pt){Pt.isDirty&&("point"===Pt.options.legendType?("function"==typeof Pt.updateTotals&&Pt.updateTotals(),Nt=!0):lt&&(lt.labelFormatter||lt.labelFormat)&&(Nt=!0)),Pt.isDirtyData&&Y(Pt,"updatedData")}),Nt&&yt&&yt.options.enabled&&(yt.render(),this.isDirtyLegend=!1),Bt&&this.getStacks(),H.forEach(function(Pt){Pt.updateNames(),Pt.setScale()}),this.getMargins(),H.forEach(function(Pt){Pt.isDirty&&(Ot=!0)}),H.forEach(function(Pt){let Ht=Pt.min+","+Pt.max;Pt.extKey!==Ht&&(Pt.extKey=Ht,Tt.push(function(){Y(Pt,"afterSetExtremes",nt(Pt.eventArgs,Pt.getExtremes())),delete Pt.eventArgs})),(Ot||Bt)&&Pt.redraw()}),Ot&&this.drawChartBox(),Y(this,"predraw"),tt.forEach(function(Pt){(Ot||Pt.isDirty)&&Pt.visible&&Pt.redraw(),Pt.isDirtyData=!1}),st&&st.reset(!0),ft.draw(),Y(this,"redraw"),Y(this,"render"),ht&&this.temporaryDisplay(!0),Tt.forEach(function(Pt){Pt.call()})}get(X){let H=this.series;function tt(yt){return yt.id===X||yt.options&&yt.options.id===X}let st=ot(this.axes,tt)||ot(this.series,tt);for(let yt=0;!st&&yt<H.length;yt++)st=ot(H[yt].points||[],tt);return st}getAxes(){let X=this.userOptions;for(let H of(Y(this,"getAxes"),["xAxis","yAxis"]))for(let tt of X[H]=ct(X[H]||{}))new mt(this,tt,H);Y(this,"afterGetAxes")}getSelectedPoints(){return this.series.reduce((X,H)=>(H.getPointsCollection().forEach(tt=>{C(tt.selectedStaging,tt.selected)&&X.push(tt)}),X),[])}getSelectedSeries(){return this.series.filter(function(X){return X.selected})}setTitle(X,H,tt){this.applyDescription("title",X),this.applyDescription("subtitle",H),this.applyDescription("caption",void 0),this.layOutTitles(tt)}applyDescription(X,H){let tt=this,st=this.options[X]=_(this.options[X],H),yt=this[X];yt&&H&&(this[X]=yt=yt.destroy()),st&&!yt&&((yt=this.renderer.text(st.text,0,0,st.useHTML).attr({align:st.align,class:"highcharts-"+X,zIndex:st.zIndex||4}).add()).update=function(lt,ft){tt.applyDescription(X,lt),tt.layOutTitles(ft)},this.styledMode||yt.css(nt("title"===X?{fontSize:this.options.isStock?"1em":"1.2em"}:{},st.style)),this[X]=yt)}layOutTitles(X=!0){let H=[0,0,0],tt=this.renderer,st=this.spacingBox;["title","subtitle","caption"].forEach(function(lt){let ft=this[lt],ht=this.options[lt],Tt=ht.verticalAlign||"top",Et="title"===lt?"top"===Tt?-3:0:"top"===Tt?H[0]+2:0;if(ft){ft.css({width:(ht.width||st.width+(ht.widthAdjust||0))+"px"});let Bt=tt.fontMetrics(ft).b,At=Math.round(ft.getBBox(ht.useHTML).height);ft.align(nt({y:"bottom"===Tt?Bt:Et+Bt,height:At},ht),!1,"spacingBox"),ht.floating||("top"===Tt?H[0]=Math.ceil(H[0]+At):"bottom"===Tt&&(H[2]=Math.ceil(H[2]+At)))}},this),H[0]&&"top"===(this.options.title.verticalAlign||"top")&&(H[0]+=this.options.title.margin),H[2]&&"bottom"===this.options.caption.verticalAlign&&(H[2]+=this.options.caption.margin);let yt=!this.titleOffset||this.titleOffset.join(",")!==H.join(",");this.titleOffset=H,Y(this,"afterLayOutTitles"),!this.isDirtyBox&&yt&&(this.isDirtyBox=this.isDirtyLegend=yt,this.hasRendered&&X&&this.isDirtyBox&&this.redraw())}getContainerBox(){return{width:J(this.renderTo,"width",!0)||0,height:J(this.renderTo,"height",!0)||0}}getChartSize(){let X=this.options.chart,H=X.width,tt=X.height,st=this.getContainerBox();
1this.chartWidth=Math.max(0,H||st.width||600),this.chartHeight=Math.max(0,U(tt,this.chartWidth)||(st.height>1?st.height:400)),this.containerBox=st}temporaryDisplay(X){let tt,H=this.renderTo;if(X)for(;H&&H.style;)H.hcOrigStyle&&(w(H,H.hcOrigStyle),delete H.hcOrigStyle),H.hcOrigDetached&&(y.body.removeChild(H),H.hcOrigDetached=!1),H=H.parentNode;else for(;H&&H.style&&(y.body.contains(H)||H.parentNode||(H.hcOrigDetached=!0,y.body.appendChild(H)),("none"===J(H,"display",!1)||H.hcOricDetached)&&(H.hcOrigStyle={display:H.style.display,height:H.style.height,overflow:H.style.overflow},tt={display:"block",overflow:"hidden"},H!==this.renderTo&&(tt.height=0),w(H,tt),H.offsetWidth||H.style.setProperty("display","block","important")),(H=H.parentNode)!==y.body););}setClassName(X){this.container.className="highcharts-container "+(X||"")}getContainer(){let yt,X=this.options,H=X.chart,tt="data-highcharts-chart",st=_t(),lt=this.renderTo;lt||(this.renderTo=lt=H.renderTo),s(lt)&&(this.renderTo=lt=y.getElementById(lt)),lt||K(13,!0,this);let ft=S(p(lt,tt));F(ft)&&I[ft]&&I[ft].hasRendered&&I[ft].destroy(),p(lt,tt,this.index),lt.innerHTML=G.emptyHTML,H.skipClone||lt.offsetWidth||this.temporaryDisplay(),this.getChartSize();let ht=this.chartHeight,Tt=this.chartWidth;w(lt,{overflow:"hidden"}),this.styledMode||(yt=nt({position:"relative",overflow:"hidden",width:Tt+"px",height:ht+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none"},H.style||{}));let Et=g("div",{id:st},yt,lt);this.container=Et,this.getChartSize(),Tt===this.chartWidth||(Tt=this.chartWidth,this.styledMode||w(Et,{width:C(H.style?.width,Tt+"px")})),this.containerBox=this.getContainerBox(),this._cursor=Et.style.cursor;let Bt=H.renderer||!M?gt.getRendererType(H.renderer):$;if(this.renderer=new Bt(Et,Tt,ht,void 0,H.forExport,X.exporting&&X.exporting.allowHTML,this.styledMode),E(void 0,this),this.setClassName(H.className),this.styledMode)for(let At in X.defs)this.renderer.definition(X.defs[At]);else this.renderer.setStyle(H.style);this.renderer.chartIndex=this.index,Y(this,"afterGetContainer")}getMargins(X){let{spacing:H,margin:tt,titleOffset:st}=this;this.resetMargins(),st[0]&&!O(tt[0])&&(this.plotTop=Math.max(this.plotTop,st[0]+H[0])),st[2]&&!O(tt[2])&&(this.marginBottom=Math.max(this.marginBottom,st[2]+H[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(tt,H),Y(this,"getMargins"),X||this.getAxisMargins()}getAxisMargins(){let X=this,H=X.axisOffset=[0,0,0,0],tt=X.colorAxis,st=X.margin,yt=function(lt){lt.forEach(function(ft){ft.visible&&ft.getOffset()})};X.hasCartesianSeries?yt(X.axes):tt&&tt.length&&yt(tt),l.forEach(function(lt,ft){O(st[ft])||(X[lt]+=H[ft])}),X.setChartSize()}getOptions(){return N(this.userOptions,b)}reflow(X){let H=this,tt=H.containerBox,st=H.getContainerBox();delete H.pointer?.chartPosition,!H.isPrinting&&!H.isResizing&&tt&&st.width&&((st.width!==tt.width||st.height!==tt.height)&&(Q.clearTimeout(H.reflowTimeout),H.reflowTimeout=dt(function(){H.container&&H.setSize(void 0,void 0,!1)},X?100:0)),H.containerBox=st)}setReflow(){let X=this,H=tt=>{X.options?.chart.reflow&&X.hasLoaded&&X.reflow(tt)};if("function"==typeof ResizeObserver)new ResizeObserver(H).observe(X.renderTo);else{let tt=r(A,"resize",H);r(this,"destroy",tt)}}setSize(X,H,tt){let st=this,yt=st.renderer;st.isResizing+=1,E(tt,st);let lt=yt.globalAnimation;st.oldChartHeight=st.chartHeight,st.oldChartWidth=st.chartWidth,void 0!==X&&(st.options.chart.width=X),void 0!==H&&(st.options.chart.height=H),st.getChartSize();let{chartWidth:ft,chartHeight:ht,scrollablePixelsX:Tt=0,scrollablePixelsY:Et=0}=st;(st.isDirtyBox||ft!==st.oldChartWidth||ht!==st.oldChartHeight)&&(st.styledMode||(lt?T:w)(st.container,{width:`${ft+Tt}px`,height:`${ht+Et}px`},lt),st.setChartSize(!0),yt.setSize(ft,ht,lt),st.axes.forEach(function(Bt){Bt.isDirty=!0,Bt.setScale()}),st.isDirtyLegend=!0,st.isDirtyBox=!0,st.layOutTitles(),st.getMargins(),st.redraw(lt),st.oldChartHeight=void 0,Y(st,"resize"),setTimeout(()=>{st&&Y(st,"endResize",void 0,()=>{st.isResizing-=1})},D(lt).duration))}setChartSize(X){let H,tt,st,yt,lt=this.inverted,ft=this.renderer,ht=this.chartWidth,Tt=this.chartHe
1ight,Et=this.options.chart,Bt=this.spacing,At=this.clipOffset;this.plotLeft=H=Math.round(this.plotLeft),this.plotTop=tt=Math.round(this.plotTop),this.plotWidth=st=Math.max(0,Math.round(ht-H-this.marginRight)),this.plotHeight=yt=Math.max(0,Math.round(Tt-tt-this.marginBottom)),this.plotSizeX=lt?yt:st,this.plotSizeY=lt?st:yt,this.plotBorderWidth=Et.plotBorderWidth||0,this.spacingBox=ft.spacingBox={x:Bt[3],y:Bt[0],width:ht-Bt[3]-Bt[1],height:Tt-Bt[0]-Bt[2]},this.plotBox=ft.plotBox={x:H,y:tt,width:st,height:yt};let Ot=2*Math.floor(this.plotBorderWidth/2),Nt=Math.ceil(Math.max(Ot,At[3])/2),Ft=Math.ceil(Math.max(Ot,At[0])/2);this.clipBox={x:Nt,y:Ft,width:Math.floor(this.plotSizeX-Math.max(Ot,At[1])/2-Nt),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(Ot,At[2])/2-Ft))},X||(this.axes.forEach(function(Pt){Pt.setAxisSize(),Pt.setAxisTranslation()}),ft.alignElements()),Y(this,"afterSetChartSize",{skipAxes:X})}resetMargins(){Y(this,"resetMargins");let X=this,H=X.options.chart;["margin","spacing"].forEach(function(tt){let st=H[tt],yt=B(st)?st:[st,st,st,st];["Top","Right","Bottom","Left"].forEach(function(lt,ft){X[tt][ft]=C(H[tt+lt],yt[ft])})}),l.forEach(function(tt,st){X[tt]=C(X.margin[st],X.spacing[st])}),X.axisOffset=[0,0,0,0],X.clipOffset=[0,0,0,0]}drawChartBox(){let ee,te,re,X=this.options.chart,H=this.renderer,tt=this.chartWidth,st=this.chartHeight,yt=this.styledMode,lt=this.plotBGImage,ft=X.backgroundColor,ht=X.plotBackgroun
vendor: 4,104 bytes, line 1
1dColor,Tt=X.plotBackgroundImage,Et=this.plotLeft,Bt=this.plotTop,At=this.plotWidth,Ot=this.plotHeight,Nt=this.plotBox,Ft=this.clipRect,Pt=this.clipBox,Ht=this.chartBackground,Ut=this.plotBackground,Yt=this.plotBorder,Wt="animate";Ht||(this.chartBackground=Ht=H.rect().addClass("highcharts-background").add(),Wt="attr"),yt?ee=te=Ht.strokeWidth():(te=(ee=X.borderWidth||0)+(X.shadow?8:0),re={fill:ft||"none"},(ee||Ht["stroke-width"])&&(re.stroke=X.borderColor,re["stroke-width"]=ee),Ht.attr(re).shadow(X.shadow)),Ht[Wt]({x:te/2,y:te/2,width:tt-te-ee%2,height:st-te-ee%2,r:X.borderRadius}),Wt="animate",Ut||(Wt="attr",this.plotBackground=Ut=H.rect().addClass("highcharts-plot-background").add()),Ut[Wt](Nt),!yt&&(Ut.attr({fill:ht||"none"}).shadow(X.plotShadow),Tt&&(lt?(Tt!==lt.attr("href")&<.attr("href",Tt),lt.animate(Nt)):this.plotBGImage=H.image(Tt,Et,Bt,At,Ot).add())),Ft?Ft.animate({width:Pt.width,height:Pt.height}):this.clipRect=H.clipRect(Pt),Wt="animate",Yt||(Wt="attr",this.plotBorder=Yt=H.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),yt||Yt.attr({stroke:X.plotBorderColor,"stroke-width":X.plotBorderWidth||0,fill:"none"}),Yt[Wt](Yt.crisp({x:Et,y:Bt,width:At,height:Ot},-Yt.strokeWidth())),this.isDirtyBox=!1,Y(this,"afterDrawChartBox")}propFromSeries(){let X,H,tt,st=this,yt=st.options.chart,lt=st.options.series;["inverted","angular","polar"].forEach(function(ft){for(H=o[yt.type],tt=yt[ft]||H&&H.prototype[ft],X=lt&<.length;!tt&&X--;)(H=o[lt[X].type])&&H.prototype[ft]&&(tt=!0);st[ft]=tt})}linkSeries(X){let H=this,tt=H.series;tt.forEach(function(st){st.linkedSeries.length=0}),tt.forEach(function(st){let{linkedTo:yt}=st.options;if(s(yt)){let lt;(lt=":previous"===yt?H.series[st.index-1]:H.get(yt))&<.linkedParent!==st&&(lt.linkedSeries.push(st),st.linkedParent=lt,lt.enabledDataSorting&&st.setDataSortingOptions(),st.visible=C(st.options.visible,lt.options.visible,st.visible))}}),Y(this,"afterLinkSeries",{isUpdating:X})}renderSeries(){this.series.forEach(function(X){X.translate(),X.render()})}render(){let ht,X=this.axes,H=this.colorAxis,tt=this.renderer,st=this.options.chart.axisLayoutRuns||2,yt=Et=>{Et.forEach(Bt=>{Bt.visible&&Bt.render()})},lt=0,ft=!0,Tt=0;for(let Et of(this.setTitle(),Y(this,"beforeMargins"),this.getStacks?.(),this.getMargins(!0),this.setChartSize(),X)){let{options:Bt}=Et,{labels:At}=Bt;if(Et.horiz&&Et.visible&&At.enabled&&Et.series.length&&"colorAxis"!==Et.coll&&!this.polar){lt=Bt.tickLength,Et.createGroups();let Ot=new V(Et,0,"",!0),Nt=Ot.createLabel("x",At);if(Ot.destroy(),Nt&&C(At.reserveSpace,!F(Bt.crossing))&&(lt=Nt.getBBox().height+At.distance+Math.max(Bt.offset||0,0)),lt){Nt?.destroy();break}}}for(this.plotHeight=Math.max(this.plotHeight-lt,0);(ft||ht||st>1)&&Tt<st;){let Et=this.plotWidth,Bt=this.plotHeight;for(let At of X)0===Tt?At.setScale():(At.horiz&&ft||!At.horiz&&ht)&&At.setTickInterval(!0);0===Tt?this.getAxisMargins():this.getMargins(),ft=Et/this.plotWidth>(Tt?1:1.1),ht=Bt/this.plotHeight>(Tt?1:1.05),Tt++}this.drawChartBox(),this.hasCartesianSeries?yt(X):H&&H.length&&yt(H),this.seriesGroup||(this.seriesGroup=tt.g("series-group").attr({zIndex:3}).shadow(this.options.chart.seriesGroupShadow).add()),this.renderSeries(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.hasRendered=!0}addCredits(X){let H=this,tt=_(!0,this.options.credits,X);tt.enabled&&!this.credits&&(this.credits=this.renderer.text(tt.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){tt.href&&(A.location.href=tt.href)}).attr({align:tt.position.align,zIndex:8}),H.styledMode||this.credits.css(tt.style),this.credits.add().align(tt.position),this.credits.update=function(st){H.credits=H.credits.destroy(),H.addCredits(st)})}destroy(){let X,H=this,tt=H.axes,st=H.series,yt=H.container,lt=yt&&yt.parentNode;for(Y(H,"destroy"),H.renderer.forExport?z(I,H):I[H.index]=void 0,kt.chartCount--,H.renderTo.removeAttribute("data-highcharts-chart"),et(H),X=tt.length;X--;)tt[X]=tt[X].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),X=st.length;X--;)st[X]=st[X].destroy();
1["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","rangeSelector","legend","resetZoomButton","tooltip","renderer"].forEach(function(ft){let ht=H[ft];ht&&ht.destroy&&(H[ft]=ht.destroy())}),yt&&(yt.innerHTML=G.emptyHTML,et(yt),lt&&x(yt)),h(H,function(ft,ht){delete H[ht]})}firstRender(){let X=this,H=X.options;X.getContainer(),X.resetMargins(),X.setChartSize(),X.propFromSeries(),X.getAxes();let tt=f(H.series)?H.series:[];H.series=[],tt.forEach(function(st){X.initSeries(st)}),X.linkSeries(),X.setSortedData(),Y(X,"beforeRender"),X.render(),X.pointer?.getChartPosition(),X.renderer.imgCount||X.hasLoaded||X.onload(),X.temporaryDisplay(!0)}onload(){this.callbacks.concat([this.callback]).forEach(function(X){X&&void 0!==this.index&&X.apply(this,[this])},this),Y(this,"load"),Y(this,"render"),O(this.index)&&this.setReflow(),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0}warnIfA11yModuleNotLoaded(){let{options:X,title:H}=this;!X||this.accessibility||(this.renderer.boxWrapper.attr({role:"img","aria-label":(H&&H.element.textContent||"").replace(/</g,"<")}),X.accessibility&&!1===X.accessibility.enabled||K('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(X,H,tt){let st,yt=this;return X&&(H=C(H,!0),Y(yt,"addSeries",{options:X},function(){st=yt.initSeries(X),yt.isDirtyLegend=!0,yt.linkSeries(),st.enabledDataSorting&&st.setData(X.data,!1),Y(yt,"afterAddSeries",{series:st}),H&&yt.redraw(tt)})),st}addAxis(X,H,tt,st){return this.createAxis(H?"xAxis":"yAxis",{axis:X,redraw:tt,animation:st})}addColorAxis(X,H,tt){return this.createAxis("colorAxis",{axis:X,redraw:H,animation:tt})}createAxis(X,H){let tt=new mt(this,H.axis,X);return C(H.redraw,!0)&&this.redraw(H.animation),tt}showLoading(X){let H=this,tt=H.options,st=tt.loading,yt=function(){lt&&w(lt,{left:H.plotLeft+"px",top:H.plotTop+"px",width:H.plotWidth+"px",height:H.plotHeight+"px"})},lt=H.loadingDiv,ft=H.loadingSpan;lt||(H.loadingDiv=lt=g("div",{className:"highcharts-loading highcharts-loading-hidden"},null,H.container)),ft||(H.loadingSpan=ft=g("span",{className:"highcharts-loading-inner"},null,lt),r(H,"redraw",yt)),lt.className="highcharts-loading",G.setElementHTML(ft,C(X,tt.lang.loading,"")),H.styledMode||(w(lt,nt(st.style,{zIndex:10})),w(ft,st.labelStyle),H.loadingShown||(w(lt,{opacity:0,display:""}),T(lt,{opacity:st.style.opacity||.5},{duration:st.showDuration||0}))),H.loadingShown=!0,yt()}hideLoading(){let X=this.options,H=this.loadingDiv;H&&(H.className="highcharts-loading highcharts-loading-hidden",this.styledMode||T(H,{opacity:0},{duration:X.loading.hideDuration||100,complete:function(){w(H,{display:"none"})}})),this.loadingShown=!1}update(X,H,tt,st){let yt,lt,ft,ht=this,Tt={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},Et=X.isResponsiveOptions,Bt=[];Y(ht,"update",{options:X}),Et||ht.setResponsive(!1,!0),X=N(X,ht.options),ht.userOptions=_(ht.userOptions,X);let At=X.chart;At&&(_(!0,ht.options.chart,At),this.setZoomOptions(),"className"in At&&ht.setClassName(At.className),("inverted"in At||"polar"in At||"type"in At)&&(ht.propFromSeries(),yt=!0),"alignTicks"in At&&(yt=!0),"events"in At&&W(this,At),h(At,function(Ft,Pt){-1!==ht.propsRequireUpdateSeries.indexOf("chart."+Pt)&&(lt=!0),-1!==ht.propsRequireDirtyBox.indexOf(Pt)&&(ht.isDirtyBox=!0),-1===ht.propsRequireReflow.indexOf(Pt)||(ht.isDirtyBox=!0,Et||(ft=!0))}),!ht.styledMode&&At.style&&ht.renderer.setStyle(ht.options.chart.style||{})),!ht.styledMode&&X.colors&&(this.options.colors=X.colors),X.time&&(this.time===d&&(this.time=new P(X.time)),_(!0,ht.options.time,X.time)),h(X,function(Ft,Pt){ht[Pt]&&"function"==typeof ht[Pt].update?ht[Pt].update(Ft,!1):"function"==typeof ht[Tt[Pt]]?ht[Tt[Pt]](Ft):"colors"!==Pt&&-1===ht.collectionsWithUpdate.indexOf(Pt)&&_(!0,ht.options[Pt],X[Pt]),"chart"!==Pt&&-1!==ht.propsRequireUpdateSeries.indexOf(Pt)&&(lt=!0)}),this.collectionsWithUpdate.forEach(function(Ft){X[Ft]&&(ct(X[Ft]).forEac
vendor: 1,535 bytes, line 1
1h(function(Pt,Ht){let Ut,Yt=O(Pt.id);Yt&&(Ut=ht.get(Pt.id)),!Ut&&ht[Ft]&&(Ut=ht[Ft][C(Pt.index,Ht)])&&(Yt&&O(Ut.options.id)||Ut.options.isInternal)&&(Ut=void 0),Ut&&Ut.coll===Ft&&(Ut.update(Pt,!1),tt&&(Ut.touched=!0)),!Ut&&tt&&ht.collectionsWithInit[Ft]&&(ht.collectionsWithInit[Ft][0].apply(ht,[Pt].concat(ht.collectionsWithInit[Ft][1]||[]).concat([!1])).touched=!0)}),tt&&ht[Ft].forEach(function(Pt){Pt.touched||Pt.options.isInternal?delete Pt.touched:Bt.push(Pt)}))}),Bt.forEach(function(Ft){Ft.chart&&Ft.remove&&Ft.remove(!1)}),yt&&ht.axes.forEach(function(Ft){Ft.update({},!1)}),lt&&ht.getSeriesOrderByLinks().forEach(function(Ft){Ft.chart&&Ft.update({},!1)},this);let Ot=At&&At.width,Nt=At&&(s(At.height)?U(At.height,Ot||ht.chartWidth):At.height);ft||F(Ot)&&Ot!==ht.chartWidth||F(Nt)&&Nt!==ht.chartHeight?ht.setSize(Ot,Nt,st):C(H,!0)&&ht.redraw(st),Y(ht,"afterUpdate",{options:X,redraw:H,animation:st})}setSubtitle(X,H){this.applyDescription("subtitle",X),this.layOutTitles(H)}setCaption(X,H){this.applyDescription("caption",X),this.layOutTitles(H)}showResetZoom(){let X=this,H=b.lang,tt=X.zooming.resetButton,st=tt.theme,yt="chart"===tt.relativeTo||"spacingBox"===tt.relativeTo?null:"plotBox";function lt(){X.zoomOut()}Y(this,"beforeShowResetZoom",null,function(){X.resetZoomButton=X.renderer.button(H.resetZoom,null,null,lt,st).attr({align:tt.position.align,title:H.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(tt.position,!1,yt)}),Y(this,"afterShowResetZoom")}zoomOut(){Y(this,"selection",{resetSelection:!0}
1,()=>this.transform({reset:!0,trigger:"zoom"}))}pan(X,H){let tt=this,st="object"==typeof H?H:{enabled:H,type:"x"},yt=st.type,lt=yt&&tt[{x:"xAxis",xy:"axes",y:"yAxis"}[yt]].filter(ht=>ht.options.panningEnabled&&!ht.options.isInternal),ft=tt.options.chart;ft?.panning&&(ft.panning=st),Y(this,"pan",{originalEvent:X},()=>{tt.transform({axes:lt,event:X,to:{x:X.chartX-(tt.mouseDownX||0),y:X.chartY-(tt.mouseDownY||0)},trigger:"pan"}),w(tt.container,{cursor:"move"})})}transform(X){let At,{axes:H=this.axes,event:tt,from:st={},reset:yt,selection:lt,to:ft={},trigger:ht}=X,{inverted:Tt,resetZoomButton:Et}=this,Bt=!1;for(let Ot of(this.hoverPoints?.forEach(Nt=>Nt.setState()),H)){let{horiz:Nt,len:Ft,minPointOffset:Pt=0,options:Ht,reversed:Ut}=Ot,Yt=Nt?"width":"height",ee=Nt?"x":"y",te=ft[Yt]||Ot.len,re=st[Yt]||Ot.len,Wt=10>Math.abs(te)?1:te/re,be=(st[ee]||0)+re/2-Ot.pos,pe=be-((ft[ee]??Ot.pos)+te/2-Ot.pos)/Wt,Oe=Ut&&!Tt||!Ut&&Tt?-1:1;if(!yt&&(be<0||be>Ot.len))continue;let qt=Ot.toValue(pe,!0)+Pt*Oe,Kt=Ot.toValue(pe+Ft/Wt,!0)-(Pt*Oe||0),le=Ot.allExtremes;if(qt>Kt&&([qt,Kt]=[Kt,qt]),1===Wt&&!yt&&"yAxis"===Ot.coll&&!le){for(let ae of Ot.series){let he=ae.getExtremes(ae.getProcessedData(!0).yData,!0);le??(le={dataMin:Number.MAX_VALUE,dataMax:-Number.MAX_VALUE}),F(he.dataMin)&&F(he.dataMax)&&(le.dataMin=Math.min(he.dataMin,le.dataMin),le.dataMax=Math.max(he.dataMax,le.dataMax))}Ot.allExtremes=le}let{dataMin:Ie,dataMax:De,min:ve,max:xe}=nt(Ot.getExtremes(),le||{}),ye=Ie??Ht.min,Pe=De??Ht.max,we=Kt-qt,It=Ot.categories?0:Math.min(we,Pe-ye),Qt=ye-It*(O(Ht.min)?0:Ht.minPadding),$t=Pe+It*(O(Ht.max)?0:Ht.maxPadding),wt=Ot.allowZoomOutside||1===Wt||"zoom"!==ht&&Wt>1,ue=Math.min(Ht.min??Qt,Qt,wt?ve:Qt),ge=Math.max(Ht.max??$t,$t,wt?xe:$t);(!Ot.isOrdinal||1!==Wt||yt)&&(qt<ue&&(qt=ue,Wt>=1&&(Kt=qt+we)),Kt>ge&&(Kt=ge,Wt>=1&&(qt=Kt-we)),(yt||Ot.series.length&&(qt!==ve||Kt!==xe)&&qt>=ue&&Kt<=ge)&&(lt?lt[Ot.coll].push({axis:Ot,min:qt,max:Kt}):(Ot.isPanning="zoom"!==ht,Ot.setExtremes(yt?void 0:qt,yt?void 0:Kt,!1,!1,{move:pe,trigger:ht,scale:Wt}),!yt&&(qt>ue||Kt<ge)&&"mousewheel"!==ht&&(At=!0)),Bt=!0),tt&&(this[Nt?"mouseDownX":"mouseDownY"]=tt[Nt?"chartX":"chartY"]))}return Bt&&(lt?Y(this,"selection",lt,()=>{delete X.selection,X.trigger="zoom",this.transform(X)}):(At&&!Et?this.showResetZoom():!At&&Et&&(this.resetZoomButton=Et.destroy()),this.redraw("zoom"===ht&&(this.options.chart.animation??this.pointCount<100)))),Bt}}return nt(vt.prototype,{callbacks:[],collectionsWithInit:{xAxis:[vt.prototype.addAxis,[!0]],yAxis:[vt.prototype.addAxis,[!1]],series:[vt.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:["backgroundColor","borderColor","borderWidth","borderRadius","plotBackgroun
1dColor","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"]}),vt}),Dt(q,"Extensions/ScrollablePlotArea.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Globals.js"],q["Core/Renderer/RendererRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt,i){let{stop:ut}=m,{composed:kt}=mt,{addEvent:gt,createElement:it,css:Z,defined:$,merge:P,pushUnique:Q}=i;function G(){let D=this.scrollablePlotArea;(this.scrollablePixelsX||this.scrollablePixelsY)&&!D&&(this.scrollablePlotArea=D=new T(this)),D?.applyFixed()}function V(){this.chart.scrollablePlotArea&&(this.chart.scrollablePlotArea.isDirty=!0)}class T{static compose(E,b,d){Q(kt,this.compose)&&(gt(E,"afterInit",V),gt(b,"afterSetChartSize",v=>this.afterSetSize(v.target,v)),gt(b,"render",G),gt(d,"show",V))}static afterSetSize(E,b){let d,v,W,{minWidth:I,minHeight:y}=E.options.chart.scrollablePlotArea||{},{clipBox:l,plotBox:M,inverted:A,renderer:o}=E;if(!o.forExport&&(I?(E.scrollablePixelsX=d=Math.max(0,I-E.chartWidth),d&&(E.scrollablePlotBox=P(E.plotBox),M.width=E.plotWidth+=d,l[A?"height":"width"]+=d,W=!0)):y&&(E.scrollablePixelsY=v=Math.max(0,y-E.chartHeight),$(v)&&(E.scrollablePlotBox=P(E.plotBox),M.height=E.plotHeight+=v,l[A?"width":"height"]+=v,W=!1)),$(W)&&!b.skipAxes))for(let r of E.axes)r.horiz===W&&(r.setAxisSize(),r.setAxisTranslation())}constructor(E){let b,d=E.options.chart,v=xt.getRendererType(),W=d.scrollablePlotArea||{},I=this.moveFixedElements.bind(this),y={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};E.scrollablePixelsX&&(y.overflowX="auto"),E.scrollablePixelsY&&(y.overflowY="auto"),this.chart=E;let l=this.parentDiv=it("div",{className:"highcharts-scrolling-parent"},{position:"relative"},E.renderTo),M=this.scrollingContainer=it("div",{className:"highcharts-scrolling"},y,l),A=this.innerContainer=it("div",{className:"highcharts-inner-container"},void 0,M),o=this.fixedDiv=it("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(d.style?.zIndex||0)+2,top:0}
vendor: 4,678 bytes, line 1
1,void 0,!0),r=this.fixedRenderer=new v(o,E.chartWidth,E.chartHeight,d.style);this.mask=r.path().attr({fill:d.backgroundColor||"#fff","fill-opacity":W.opacity??.85,zIndex:-1}).addClass("highcharts-scrollable-mask").add(),M.parentNode.insertBefore(o,M),Z(E.renderTo,{overflow:"visible"}),gt(E,"afterShowResetZoom",I),gt(E,"afterApplyDrilldown",I),gt(E,"afterLayOutTitles",I),gt(M,"scroll",()=>{let{pointer:p,hoverPoint:g}=E;p&&(delete p.chartPosition,g&&(b=g),p.runPointActions(void 0,b,!0))}),A.appendChild(E.container)}applyFixed(){let{chart:E,fixedRenderer:b,isDirty:d,scrollingContainer:v}=this,{axisOffset:W,chartWidth:I,chartHeight:y,container:l,plotHeight:M,plotLeft:A,plotTop:o,plotWidth:r,scrollablePixelsX:p=0,scrollablePixelsY:g=0}=E,{scrollPositionX:w=0,scrollPositionY:O=0}=E.options.chart.scrollablePlotArea||{},N=I+p,x=y+g;b.setSize(I,y),(d??!0)&&(this.isDirty=!1,this.moveFixedElements()),ut(E.container),Z(l,{width:`${N}px`,height:`${x}px`}),E.renderer.boxWrapper.attr({width:N,height:x,viewBox:[0,0,N,x].join(" ")}),E.chartBackground?.attr({width:N,height:x}),Z(v,{width:`${I}px`,height:`${y}px`}),$(d)||(v.scrollLeft=p*w,v.scrollTop=g*O);let z=o-W[0]-1,K=A-W[3]-1,nt=o+M+W[2]+1,ot=A+r+W[1]+1,Y=A+r-p,J=o+M-g,f=[["M",0,0]];p?f=[["M",0,z],["L",A-1,z],["L",A-1,nt],["L",0,nt],["Z"],["M",Y,z],["L",I,z],["L",I,nt],["L",Y,nt],["Z"]]:g&&(f=[["M",K,0],["L",K,o-1],["L",ot,o-1],["L",ot,0],["Z"],["M",K,J],["L",K,y],["L",ot,y],["L",ot,J],["Z"]]),"adjustHeight"!==E.redrawTrigger&&this.mask.attr({d:f})}moveFixedElements(){let E,{container:b,inverted:d,scrollablePixelsX:v,scrollablePixelsY:W}=this.chart,I=this.fixedRenderer,y=[".highcharts-breadcrumbs-group",".highcharts-contextbutton",".highcharts-caption",".highcharts-credits",".highcharts-legend",".highcharts-legend-checkbox",".highcharts-navigator-series",".highcharts-navigator-xaxis",".highcharts-navigator-yaxis",".highcharts-navigator",".highcharts-reset-zoom",".highcharts-drillup-button",".highcharts-scrollbar",".highcharts-subtitle",".highcharts-title"];for(let l of(v&&!d?E=".highcharts-yaxis":v&&d||W&&!d?E=".highcharts-xaxis":W&&d&&(E=".highcharts-yaxis"),E&&y.push(`${E}:not(.highcharts-radial-axis)`,`${E}-labels:not(.highcharts-radial-axis-labels)`),y))[].forEach.call(b.querySelectorAll(l),M=>{(M.namespaceURI===I.SVG_NS?I.box:I.box.parentNode).appendChild(M),M.style.pointerEvents="auto"})}}return T}),Dt(q,"Core/Axis/Stacking/StackItem.js",[q["Core/Templating.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{format:i}=m,{series:ut}=mt,{destroyObjectProperties:kt,fireEvent:gt,isNumber:it,pick:Z}=xt;return class{constructor($,P,Q,G,V){let T=$.chart.inverted,D=$.reversed;this.axis=$;let E=this.isNegative=!!Q!=!!D;this.options=P=P||{},this.x=G,this.total=null,this.cumulative=null,this.points={},this.hasValidPoints=!1,this.stack=V,this.leftCliff=0,this.rightCliff=0,this.alignOptions={align:P.align||(T?E?"left":"right":"center"),verticalAlign:P.verticalAlign||(T?"middle":E?"bottom":"top"),y:P.y,x:P.x},this.textAlign=P.textAlign||(T?E?"right":"left":"center")}destroy(){kt(this,this.axis)}render($){let P=this.axis.chart,Q=this.options,G=Q.format,V=G?i(G,this,P):Q.formatter.call(this);if(this.label)this.label.attr({text:V,visibility:"hidden"});else{this.label=P.renderer.label(V,null,void 0,Q.shape,void 0,void 0,Q.useHTML,!1,"stack-labels");let T={r:Q.borderRadius||0,text:V,padding:Z(Q.padding,5),visibility:"hidden"};P.styledMode||(T.fill=Q.backgroundColor,T.stroke=Q.borderColor,T["stroke-width"]=Q.borderWidth,this.label.css(Q.style||{})),this.label.attr(T),this.label.added||this.label.add($)}this.label.labelrank=P.plotSizeY,gt(this,"afterRender")}setOffset($,P,Q,G,V,T){let{alignOptions:D,axis:E,label:b,options:d,textAlign:v}=this,W=E.chart,I=this.getStackBox({xOffset:$,width:P,boxBottom:Q,boxTop:G,defaultX:V,xAxis:T}),{verticalAlign:y}=D;if(b&&I){let o,l=b.getBBox(void 0,0),M=b.padding,A="justify"===Z(d.overflow,"justify");D.x=d.x||0,D.y=d.y||0;let{x:r,y:p}=this.adjustStackPosition({labelBox:l,verticalAlign:y,textAlign:v});I.x-=r,I.y-=p,b.align(D,!1,I),(o=W.isInsidePlot(b.alignAttr.x+D.x+r,b.alignAttr.y+D.y+p))||(A=!1),A&&ut.prototype.justifyDataLabel.call(E,b,D,b.alignAttr,l,I),b.attr({x:b.alignAttr.x,y:b.alignAttr.y,rotation:d.rotation,rotationOriginX:l.width*{left:0,center:.5,right:1}[d.textAlign||"center"],rotationOriginY:l.height/2}),Z(!A&&d.crop,!0)&&(o=it(b.x)&&it(b.y)&&W.isInsidePlot(b.x-M+(b.width||0),b.y)&&W.isInsidePlot(b.x+M,b.y)),b[o?"show":"hide"]()}gt(this,"afterSetOffset",{xOffset:$,width:P})}adjustStackPosition({labelBox:$,verticalAlign:P,textAlign:Q}){let G={bottom:0,middle:1,top:2,right:1,center:0,left:-1}
1;return{x:$.width/2+$.width/2*G[Q],y:$.height/2*G[P]}}getStackBox($){let P=this.axis,Q=P.chart,{boxTop:G,defaultX:V,xOffset:T,width:D,boxBottom:E}=$,b=P.stacking.usePercentage?100:Z(G,this.total,0),d=P.toPixels(b),v=$.xAxis||Q.xAxis[0],W=Z(V,v.translate(this.x))+T,I=Math.abs(d-P.toPixels(E||it(P.min)&&P.logarithmic&&P.logarithmic.lin2log(P.min)||0)),l=this.isNegative;return Q.inverted?{x:(l?d:d-I)-Q.plotLeft,y:v.height-W-D,width:I,height:D}:{x:W+v.transB-Q.plotLeft,y:(l?d-I:d)-Q.plotTop,width:D,height:I}}}}),Dt(q,"Core/Axis/Stacking/StackingAxis.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Axis/Axis.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Axis/Stacking/StackItem.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut){var kt;let{getDeferredAnimation:gt}=m,{series:{prototype:it}}=xt,{addEvent:Z,correctFloat:$,defined:P,destroyObjectProperties:Q,fireEvent:G,isArray:V,isNumber:T,objectEach:D,pick:E}=ut;function b(){let o=this.inverted;this.axes.forEach(r=>{r.stacking&&r.stacking.stacks&&r.hasVisibleSeries&&(r.stacking.oldStacks=r.stacking.stacks)}),this.series.forEach(r=>{let p=r.xAxis&&r.xAxis.options||{};r.options.stacking&&r.reserveSpace()&&(r.stackKey=[r.type,E(r.options.stack,""),o?p.top:p.left,o?p.height:p.width].join(","))})}function d(){let o=this.stacking;if(o){let r=o.stacks;D(r,(p,g)=>{Q(p),delete r[g]}),o.stackTotalGroup?.destroy()}}function v(){this.stacking||(this.stacking=new A(this))}function W(o,r,p,g){return!P(o)||o.x!==r||g&&o.stackKey!==g?o={x:r,index:0,key:g,stackKey:g}:o.index++,o.key=[p,r,o.index].join(","),o}function I(){let o,r=this,g=r.stackKey||"",w=r.yAxis.stacking.stacks,O=r.processedXData,x=r[r.options.stacking+"Stacker"];x&&[g,"-"+g].forEach(z=>{let nt,ot,Y,K=O.length;for(;K--;)nt=O[K],o=r.getStackIndicator(o,nt,r.index,z),ot=w[z]?.[nt],(Y=ot?.points[o.key||""])&&x.call(r,Y,ot,K)})}function y(o,r,p){let g=r.total?100/r.total:0;o[0]=$(o[0]*g),o[1]=$(o[1]*g),this.stackedYData[p]=o[1]}function l(o){(this.is("column")||this.is("columnrange"))&&(this.options.centerInCategory&&!this.options.stacking&&this.chart.series.length>1?it.setStackedPoints.call(this,o,"group"):o.stacking.resetStacks())}function M(o,r){let p,g,w,O,N,x,z,K,nt,ot=r||this.options.stacking;if(!ot||!this.reserveSpace()||({group:"xAxis"}[ot]||"yAxis")!==o.coll)return;let Y=this.processedXData,J=this.processedYData,f=[],F=J.length,B=this.options,s=B.threshold||0,_=B.startFromThreshold?s:0,h=B.stack,C=r?`${this.type},${ot}`:this.stackKey||"",S="-"+C,U=this.negStacks,et=o.stacking,ct=et.stacks,dt=et.oldStacks;for(et.stacksTouched+=1,z=0;z<F;z++){K=Y[z],nt=J[z],x=(p=this.getStackIndicator(p,K,this.index)).key||"",ct[N=(g=U&&nt<(_?0:s))?S:C]||(ct[N]={}),ct[N][K]||(dt[N]?.[K]?(ct[N][K]=dt[N][K],ct[N][K].total=null):ct[N][K]=new i(o,o.options.stackLabels,!!g,K,h)),w=ct[N][K],null!==nt?(w.points[x]=w.points[this.index]=[E(w.cumulative,_)],P(w.cumulative)||(w.base=x),w.touched=et.stacksTouched,p.index>0&&!1===this.singleStacks&&(w.points[x][0]=w.points[this.index+","+K+",0"][0])):(delete w.points[x],delete w.points[this.index]);let _t=w.total||0;"percent"===ot?(O=g?C:S,_t=U&&ct[O]?.[K]?(O=ct[O][K]).total=Math.max(O.total||0,_t)+Math.abs(nt)||0:$(_t+(Math.abs(nt)||0))):"group"===ot?(V(nt)&&(nt=nt[0]),null!==nt&&_t++):_t=$(_t+(nt||0)),w.cumulative="group"===ot?(_t||1)-1:$(E(w.cumulative,_)+(nt||0)),w.total=_t,null!==nt&&(w.points[x].push(w.cumulative),f[z]=w.cumulative,w.hasValidPoints=!0)}"percent"===ot&&(et.usePercentage=!0),"group"!==ot&&(this.stackedYData=f),et.oldStacks={}}class A{constructor(r){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=r}buildStacks(){let r,p,g=this.axis,w=g.series,O="xAxis"===g.coll,N=g.options.reversedStacks,x=w.length;for(this.resetStacks(),this.usePercentage=!1,p=x;p--;)r=w[N?p:x-p-1],O&&r.setGroupedPoints(g),r.setStackedPoints(g);if(!O)for(p=0;p<x;p++)w[p].modifyStacks();G(g,"afterBuildStacks")}cleanStacks(){this.oldStacks&&(this.stacks=this.oldStacks,D(this.stacks,r=>{D(r,p=>{p.cumulative=p.total})}))}resetStacks(){D(this.stacks,r=>{D(r,(p,g)=>{T(p.touched)&&p.touched<this.stacksTouched?(p.destroy(),delete r[g]):(p.total=null,p.cumulative=null)})})}renderStackTotals(){let r=this.axis,p=r.chart,g=p.renderer,w=this.stacks,O=gt(p,r.options.stackLabels?.animation||!1),N=this.stackTotalGroup=this.stackTotalGroup||g.g("stack-labels").attr({zIndex:6,opacity:0}
1).add();N.translate(p.plotLeft,p.plotTop),D(w,x=>{D(x,z=>{z.render(N)})}),N.animate({opacity:1},O)}}return(kt||(kt={})).compose=function(o,r,p){let g=r.prototype,w=p.prototype;g.getStacks||(Z(o,"init",v),Z(o,"destroy",d),g.getStacks=b,w.getStackIndicator=W,w.modifyStacks=I,w.percentStacker=y,w.setGroupedPoints=l,w.setStackedPoints=M)},kt}),Dt(q,"Series/Line/LineSeries.js",[q["Core/Series/Series.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{defined:i,merge:ut,isObject:kt}=xt;class gt extends m{drawGraph(){let Z=this.options,$=(this.gappedPath||this.getGraphPath).call(this),P=this.chart.styledMode;[this,...this.zones].forEach((Q,G)=>{let V,T=Q.graph,D=T?"animate":"attr",E=Q.dashStyle||Z.dashStyle;T?(T.endX=this.preventGraphAnimation?null:$.xMap,T.animate({d:$})):$.length&&(Q.graph=T=this.chart.renderer.path($).addClass("highcharts-graph"+(G?` highcharts-zone-graph-${G-1} `:" ")+(G&&Q.className||"")).attr({zIndex:1}).add(this.group)),T&&!P&&(V={stroke:!G&&Z.lineColor||Q.color||this.color||"#cccccc","stroke-width":Z.lineWidth||0,fill:this.fillGraph&&this.color||"none"},E?V.dashstyle=E:"square"!==Z.linecap&&(V["stroke-linecap"]=V["stroke-linejoin"]="round"),T[D](V).shadow(G<2&&Z.shadow&&ut({filterUnits:"userSpaceOnUse"},kt(Z.shadow)?Z.shadow:{}))),T&&(T.startX=$.xMap,T.isArea=$.isArea)})}getGraphPath(Z,$,P){let D,Q=this,G=Q.options,V=[],T=[],E=G.step,b=(Z=Z||Q.points).reversed;return b&&Z.reverse(),(E={right:1,center:2}[E]||E&&3)&&b&&(E=4-E),(Z=this.getValidPoints(Z,!1,!(G.connectNulls&&!$&&!P))).forEach(function(d,v){let W,I=d.plotX,y=d.plotY,l=Z[v-1],M=d.isNull||"number"!=typeof y;(d.leftCliff||l&&l.rightCliff)&&!P&&(D=!0),M&&!i($)&&v>0?D=!G.connectNulls:M&&!$?D=!0:(0===v||D?W=[["M",d.plotX,d.plotY]]:Q.getPointSpline?W=[Q.getPointSpline(Z,d,v)]:E?(W=1===E?[["L",l.plotX,y]]:2===E?[["L",(l.plotX+I)/2,l.plotY],["L",(l.plotX+I)/2,y]]:[["L",I,l.plotY]]).push(["L",I,y]):W=[["L",I,y]],T.push(d.x),E&&(T.push(d.x),2===E&&T.push(d.x)),V.push.apply(V,W),D=!1)}),V.xMap=T,Q.graphPath=V,V}}return gt.defaultOptions=ut(m.defaultOptions,{legendSymbol:"lineMarker"}),mt.registerSeriesType("line",gt),gt}),Dt(q,"Series/Area/AreaSeries.js",[q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt){let{seriesTypes:{line:xt}}=m,{extend:i,merge:ut,objectEach:kt,pick:gt}=mt;class it extends xt{drawGraph(){this.areaPath=[],super.drawGraph.apply(this);let{areaPath:$,options:P}=this;[this,...this.zones].forEach((Q,G)=>{let V={},T=Q.fillColor||P.fillColor,D=Q.area,E=D?"animate":"attr";D?(D.endX=this.preventGraphAnimation?null:$.xMap,D.animate({d:$})):(V.zIndex=0,(D=Q.area=this.chart.renderer.path($).addClass("highcharts-area"+(G?` highcharts-zone-area-${G-1} `:" ")+(G&&Q.className||"")).add(this.group)).isArea=!0),this.chart.styledMode||(V.fill=T||Q.color||this.color,V["fill-opacity"]=T?1:P.fillOpacity??.75,D.css({pointerEvents:this.stickyTracking?"none":"auto"})),D[E](V),D.startX=$.xMap,D.shiftUnit=P.step?2:1})}getGraphPath($){let P,Q,G,V=xt.prototype.getGraphPath,T=this.options,D=T.stacking,E=this.yAxis,b=[],d=[],v=this.index,W=E.stacking.stacks[this.stackKey],I=T.threshold,y=Math.round(E.getThreshold(T.threshold)),l=gt(T.connectNulls,"percent"===D),M=function(w,O,N){let ot,Y,x=$[w],z=D&&W[x.x].points[v],K=x[N+"Null"]||0,nt=x[N+"Cliff"]||0,J=!0;nt||K?(ot=(K?z[0]:z[1])+nt,Y=z[0]+nt,J=!!K):!D&&$[O]&&$[O].isNull&&(ot=Y=I),void 0!==ot&&(d.push({plotX:P,plotY:null===ot?y:E.getThreshold(ot),isNull:J,isCliff:!0}),b.push({plotX:P,plotY:null===Y?y:E.getThreshold(Y),doCurve:!1}))};$=$||this.points,D&&($=this.getStackPoints($));for(let w=0,O=$.length;w<O;++w)D||($[w].leftCliff=$[w].rightCliff=$[w].leftNull=$[w].rightNull=void 0),Q=$[w].isNull,P=gt($[w].rectPlotX,$[w].plotX),G=D?gt($[w].yBottom,y):y,Q&&!l||(l||M(w,w-1,"left"),Q&&!D&&l||(d.push($[w]),b.push({x:w,plotX:P,plotY:G})),l||M(w,w+1,"right"));let A=V.call(this,d,!0,!0);b.reversed=!0;let o=V.call(this,b,!0,!0),r=o[0];r&&"M"===r[0]&&(o[0]=["L",r[1],r[2]]);let p=A.concat(o);p.length&&p.push(["Z"]);let g=V.call(this,d,!1,l);return p.xMap=A.xMap,this.areaPath=p,g}getStackPoints($){let P=this,Q=[],G=[],V=this.xAxis,T=this.yAxis,D=T.stacking.stacks[this.stackKey],E={},b=T.series,d=b.length,v=T.options.reversedStacks?1:-1,W=b.indexOf(P);if($=$||this.points,this.options.stacking){for(let y=0;y<$.length;y++)$[y].leftNull=$[y].rightNull=void 0,E[$[y].x]=$[y];kt(D,function(y,l){null!==y.total&&G.push(l)}),G.sort(function(y,l){return y-l});let I=b.map(y=>y.visible);G.forEach(function(y,l){let A,o,M=0;
1if(E[y]&&!E[y].isNull)Q.push(E[y]),[-1,1].forEach(function(r){let p=1===r?"rightNull":"leftNull",g=D[G[l+r]],w=0;if(g){let O=W;for(;O>=0&&O<d;){let N=b[O].index;!(A=g.points[N])&&(N===P.index?E[y][p]=!0:I[O]&&(o=D[y].points[N])&&(w-=o[1]-o[0])),O+=v}}E[y][1===r?"rightCliff":"leftCliff"]=w});else{let r=W;for(;r>=0&&r<d;){if(A=D[y].points[b[r].index]){M=A[1];break}r+=v}M=gt(M,0),M=T.translate(M,0,1,0,1),Q.push({isNull:!0,plotX:V.translate(y,0,0,0,1),x:y,plotY:M,yBottom:M})}})}return Q}}return it.defaultOptions=ut(xt.defaultOptions,{threshold:0,legendSymbol:"areaMarker"}),i(it.prototype,{singleStacks:!1}),m.registerSeriesType("area",it),it}),Dt(q,"Series/Spline/SplineSeries.js",[q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt){let{line:xt}=m.seriesTypes,{merge:i,pick:ut}=mt;class kt extends xt{getPointSpline(it,Z,$){let P,Q,G,V,T=Z.plotX||0,D=Z.plotY||0,E=it[$-1],b=it[$+1];function d(W){return W&&!W.isNull&&!1!==W.doCurve&&!Z.isCliff}if(d(E)&&d(b)){let I=E.plotY||0,l=b.plotY||0,M=0;P=(1.5*T+(E.plotX||0))/2.5,Q=(1.5*D+I)/2.5,G=(1.5*T+(b.plotX||0))/2.5,V=(1.5*D+l)/2.5,G!==P&&(M=(V-Q)*(G-T)/(G-P)+D-V),Q+=M,V+=M,Q>I&&Q>D?(Q=Math.max(I,D),V=2*D-Q):Q<I&&Q<D&&(Q=Math.min(I,D),V=2*D-Q),V>l&&V>D?(V=Math.max(l,D),Q=2*D-V):V<l&&V<D&&(V=Math.min(l,D),Q=2*D-V),Z.rightContX=G,Z.right
1ContY=V,Z.controlPoints={low:[P,Q],high:[G,V]}}let v=["C",ut(E.rightContX,E.plotX,0),ut(E.rightContY,E.plotY,0),ut(P,T,0),ut(Q,D,0),T,D];return E.rightContX=E.rightContY=void 0,v}}return kt.defaultOptions=i(xt.defaultOptions),m.registerSeriesType("spline",kt),kt}),Dt(q,"Series/AreaSpline/AreaSplineSeries.js",[q["Series/Spline/SplineSeries.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{area:i,area:{prototype:ut}}=mt.seriesTypes,{extend:kt,merge:gt}=xt;class it extends m{}return it.defaultOptions=gt(m.defaultOptions,i.defaultOptions),kt(it.prototype,{getGraphPath:ut.getGraphPath,getStackPoints:ut.getStackPoints,drawGraph:ut.drawGraph}),mt.registerSeriesType("areaspline",it),it}),Dt(q,"Series/Column/ColumnSeriesDefaults.js",[],function(){return{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"}}),Dt(q,"Series/Column/ColumnSeries.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Color/Color.js"],q["Series/Column/ColumnSeriesDefaults.js"],q["Core/Globals.js"],q["Core/Series/Series.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut,kt,gt){let{animObject:it}=m,{parse:Z}=mt,{noop:$}=i,{clamp:P,defined:Q,extend:G,fireEvent:V,isArray:T,isNumber:D,merge:E,pick:b,objectEach:d}=gt;class v extends ut{animate(I){let y,l,M=this,A=this.yAxis,o=A.pos,r=M.options,p=this.chart.inverted,g={},w=p?"translateX":"translateY";I?(g.scaleY=.001,l=P(A.toPixels(r.threshold),o,o+A.len),p?g.translateX=l-A.len:g.translateY=l,M.clipBox&&M.setClip(),M.group.attr(g)):(y=Number(M.group.attr(w)),M.group.animate({scaleY:1},G(it(M.options.animation),{step:function(O,N){M.group&&(g[w]=y+N.pos*(o-y),M.group.attr(g))}})))}init(I,y){super.init.apply(this,arguments);let l=this;(I=l.chart).hasRendered&&I.series.forEach(function(M){M.type===l.type&&(M.isDirty=!0)})}getColumnMetrics(){let p,I=this,y=I.options,l=I.xAxis,M=I.yAxis,A=l.options.reversedStacks,o=l.reversed&&!A||!l.reversed&&A,r={},g=0;!1===y.grouping?g=1:I.chart.series.forEach(function(K){let nt,ot=K.yAxis,Y=K.options;K.type===I.type&&K.reserveSpace()&&M.len===ot.len&&M.pos===ot.pos&&(Y.stacking&&"group"!==Y.stacking?(void 0===r[p=K.stackKey]&&(r[p]=g++),nt=r[p]):!1!==Y.grouping&&(nt=g++),K.columnIndex=nt)});let w=Math.min(Math.abs(l.transA)*(!l.brokenAxis?.hasBreaks&&l.ordinal?.slope||y.pointRange||l.closestPointRange||l.tickInterval||1),l.len),O=w*y.groupPadding,N=(w-2*O)/(g||1),x=Math.min(y.maxPointWidth||l.len,b(y.pointWidth,N*(1-2*y.pointPadding)));return I.columnMetrics={width:x,offset:(N-x)/2+(O+((I.columnIndex||0)+(o?1:0))*N-w/2)*(o?-1:1),paddedWidth:N,columnCount:g},I.columnMetrics}crispCol(I,y,l,M){let A=this.borderWidth,o=-(A%2?.5:0),r=A%2?.5:1;this.options.crisp&&(l=Math.round(I+l)+o-(I=Math.round(I)+o));let p=Math.round(y+M)+r,g=.5>=Math.abs(y)&&p>.5;return M=p-(y=Math.round(y)+r),g&&M&&(y-=1,M+=1),{x:I,y,width:l,height:M}}adjustForMissingColumns(I,y,l,M){if(!l.isNull&&M.columnCount>1){let A=this.xAxis.series.filter(g=>g.visible).map(g=>g.index),o=0,r=0;d(this.xAxis.stacking?.stacks,g=>{if("number"==typeof l.x){let w=g[l.x.toString()];if(w&&T(w.points[this.index])){let O=Object.keys(w.points).filter(N=>!N.match(",")&&w.points[N]&&w.points[N].length>1).map(parseFloat).filter(N=>-1!==A.indexOf(N)).sort((N,x)=>x-N);o=O.indexOf(this.index),r=O.length}}}),o=this.xAxis.reversed?r-1-o:o,I=(l.plotX||0)+((r-1)*M.paddedWidth+y)/2-y-o*M.paddedWidth}return I}translate(){let I=this,y=I.chart,l=I.options,M=I.dense=I.closestPointRange*I.xAxis.transA<2,A=I.borderWidth=b(l.borderWidth,M?0:1),o=I.xAxis,r=I.yAxis,p=l.threshold,g=b(l.minPointLength,5),w=I.getColumnMetrics(),O=w.width,N=I.pointXOffset=w.offset,x=I.dataMin,z=I.dataMax,K=I.barW=Math.max(O,1+2*A),nt=I.translatedThreshold=r.getThreshold(p);y.inverted&&(nt-=.5),l.pointPadding&&(K=Math.ceil(K)),ut.prototype.translate.apply(I),I.points.forEac
vendor: 2,740 bytes, line 1
1h(function(ot){let B,Y=b(ot.yBottom,nt),J=999+Math.abs(Y),f=ot.plotX||0,F=P(ot.plotY,-J,r.len+J),s=Math.min(F,Y),_=Math.max(F,Y)-s,h=O,C=f+N,S=K;g&&Math.abs(_)<g&&(_=g,B=!r.reversed&&!ot.negative||r.reversed&&ot.negative,D(p)&&D(z)&&ot.y===p&&z<=p&&(r.min||0)<p&&(x!==z||(r.max||0)<=p)&&(B=!B,ot.negative=!ot.negative),s=Math.abs(s-nt)>g?Y-g:nt-(B?g:0)),Q(ot.options.pointWidth)&&(C-=Math.round(((h=S=Math.ceil(ot.options.pointWidth))-O)/2)),l.centerInCategory&&!l.stacking&&(C=I.adjustForMissingColumns(C,h,ot,w)),ot.barX=C,ot.pointWidth=h,ot.tooltipPos=y.inverted?[P(r.len+r.pos-y.plotLeft-F,r.pos-y.plotLeft,r.len+r.pos-y.plotLeft),o.len+o.pos-y.plotTop-C-S/2,_]:[o.left-y.plotLeft+C+S/2,P(F+r.pos-y.plotTop,r.pos-y.plotTop,r.len+r.pos-y.plotTop),_],ot.shapeType=I.pointClass.prototype.shapeType||"roundedRect",ot.shapeArgs=I.crispCol(C,ot.isNull?nt:s,S,ot.isNull?0:_)}),V(this,"afterColumnTranslate")}drawGraph(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")}pointAttribs(I,y){let r,p,g,l=this.options,M=this.pointAttrToOptions||{},A=M.stroke||"borderColor",o=M["stroke-width"]||"borderWidth",w=I&&I.color||this.color,O=I&&I[A]||l[A]||w,N=I&&I.options.dashStyle||l.dashStyle,x=I&&I[o]||l[o]||this[o]||0,z=b(I&&I.opacity,l.opacity,1);I&&this.zones.length&&(p=I.getZone(),w=I.options.color||p&&(p.color||I.nonZonedColor)||this.color,p&&(O=p.borderColor||O,N=p.dashStyle||N,x=p.borderWidth||x)),y&&I&&(g=(r=E(l.states[y],I.options.states&&I.options.states[y]||{})).brightness,w=r.color||void 0!==g&&Z(w).brighten(r.brightness).get()||w,O=r[A]||O,x=r[o]||x,N=r.dashStyle||N,z=b(r.opacity,z));let K={fill:w,stroke:O,"stroke-width":x,opacity:z};return N&&(K.dashstyle=N),K}drawPoints(I=this.points){let y,l=this,M=this.chart,A=l.options,o=M.renderer,r=A.animationLimit||250;I.forEach(function(p){let w=p.graphic,O=!!w,N=w&&M.pointCount<r?"animate":"attr";D(p.plotY)&&null!==p.y?(y=p.shapeArgs,w&&p.hasNewShapeType()&&(w=w.destroy()),l.enabledDataSorting&&(p.startXPos=l.xAxis.reversed?-(y&&y.width||0):l.xAxis.width),!w&&(p.graphic=w=o[p.shapeType](y).add(p.group||l.group),w&&l.enabledDataSorting&&M.hasRendered&&M.pointCount<r&&(w.attr({x:p.startXPos}),O=!0,N="animate")),w&&O&&w[N](E(y)),M.styledMode||w[N](l.pointAttribs(p,p.selected&&"select")).shadow(!1!==p.allowShadow&&A.shadow),w&&(w.addClass(p.getClassName(),!0),w.attr({visibility:p.visible?"inherit":"hidden"}))):w&&(p.graphic=w.destroy())})}drawTracker(I=this.points){let y,l=this,M=l.chart,A=M.pointer,o=function(r){let p=A?.getPointFromEvent(r);A&&p&&l.options.enableMouseTracking&&(A.isDirectTouch=!0,p.onMouseOver(r))};I.forEach(function(r){y=T(r.dataLabels)?r.dataLabels:r.dataLabel?[r.dataLabel]:[],r.graphic&&(r.graphic.element.point=r),y.forEac
1h(function(p){(p.div||p.element).point=r})}),l._hasTracking||(l.trackerGroups.forEach(function(r){l[r]&&(l[r].addClass("highcharts-tracker").on("mouseover",o).on("mouseout",function(p){A?.onTrackerMouseOut(p)}).on("touchstart",o),!M.styledMode&&l.options.cursor&&l[r].css({cursor:l.options.cursor}))}),l._hasTracking=!0),V(this,"afterDrawTracker")}remove(){let I=this,y=I.chart;y.hasRendered&&y.series.forEach(function(l){l.type===I.type&&(l.isDirty=!0)}),ut.prototype.remove.apply(I,arguments)}}return v.defaultOptions=E(ut.defaultOptions,xt),G(v.prototype,{directTouch:!0,getSymbol:$,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]}),kt.registerSeriesType("column",v),v}),Dt(q,"Core/Series/DataLabel.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Templating.js"],q["Core/Utilities.js"]],function(m,mt,xt){var i;let{getDeferredAnimation:ut}=m,{format:kt}=mt,{defined:gt,extend:it,fireEvent:Z,isArray:$,isString:P,merge:Q,objectEach:G,pick:V,pInt:T,splat:D}=xt;return function(E){function b(){return M(this).some(o=>o?.enabled)}function d(o,r,p,g,w){let O=this.chart,N=this.isCartesian&&O.inverted,x=this.enabledDataSorting,z=o.plotX,K=o.plotY,nt=p.rotation||0,ot=gt(z)&>(K)&&O.isInsidePlot(z,Math.round(K),{inverted:N,paneCoordinates:!0,series:this}),Y=0===nt&&"justify"===V(p.overflow,x?"none":"justify"),J=this.visible&&!1!==o.visible&>(z)&&(o.series.forceDL||x&&!Y||ot||V(p.inside,!!this.options.stacking)&&g&&O.isInsidePlot(z,N?g.x+1:g.y+g.height-1,{inverted:N,paneCoordinates:!0,series:this})),f=o.pos();if(J&&f){let B=r.getBBox(),s=r.getBBox(void 0,0),_={right:1,center:.5}[p.align||0]||0,h={bottom:1,middle:.5}[p.verticalAlign||0]||0;if(g=it({x:f[0],y:Math.round(f[1]),width:0,height:0},g||{}),it(p,{width:B.width,height:B.height}),x&&this.xAxis&&!Y&&this.setDataLabelStartPos(o,r,w,ot,g),r.align(Q(p,{width:s.width,height:s.height}),!1,g,!1),r.alignAttr.x+=_*(s.width-B.width),r.alignAttr.y+=h*(s.height-B.height),r[r.placed?"animate":"attr"]({x:r.alignAttr.x+(B.width-s.width)/2,y:r.alignAttr.y+(B.height-s.height)/2,rotationOriginX:(r.width||0)/2,rotationOriginY:(r.height||0)/2}),Y&&g.height>=0)this.justifyDataLabel(r,p,r.alignAttr,B,g,w);else if(V(p.crop,!0)){let{x:C,y:S}=r.alignAttr;J=O.isInsidePlot(C,S,{paneCoordinates:!0,series:this})&&O.isInsidePlot(C+B.width-1,S+B.height-1,{paneCoordinates:!0,series:this})}p.shape&&!nt&&r[w?"attr":"animate"]({anchorX:f[0],anchorY:f[1]})}w&&x&&(r.placed=!1),J||x&&!Y?(r.show(),r.placed=!0):(r.hide(),r.placed=!1)}function v(){return this.plotGroup("dataLabelsGroup","data-labels",this.hasRendered?"inherit":"hidden",this.options.dataLabels.zIndex||6)}function W(o){let r=this.hasRendered||0,p=this.initDataLabelsGroup().attr({opacity:+r});return!r&&p&&(this.visible&&p.show(),this.options.animation?p.animate({opacity:1},o):p.attr({opacity:1})),p}function I(o){let r;o=o||this.points;let p=this,g=p.chart,w=p.options,O=g.renderer,{backgroundColor:N,plotBackgroun
1dColor:x}=g.options.chart,z=O.getContrast(P(x)&&x||P(N)&&N||"#000000"),K=M(p),{animation:nt,defer:ot}=K[0],Y=ot?ut(g,nt,p):{defer:0,duration:0};Z(this,"drawDataLabels"),p.hasDataLabels?.()&&(r=this.initDataLabels(Y),o.forEach(J=>{let f=J.dataLabels||[];D(l(K,J.dlOptions||J.options?.dataLabels)).forEach((B,s)=>{let et,ct,dt,_t,H,_=B.enabled&&(J.visible||J.dataLabelOnHidden)&&(!J.isNull||J.dataLabelOnNull)&&function(tt,st){let yt=st.filter;if(yt){let lt=yt.operator,ft=tt[yt.property],ht=yt.value;return">"===lt&&ft>ht||"<"===lt&&ft<ht||">="===lt&&ft>=ht||"<="===lt&&ft<=ht||"=="===lt&&ft==ht||"==="===lt&&ft===ht||"!="===lt&&ft!=ht||"!=="===lt&&ft!==ht}return!0}(J,B),{backgroundColor:h,borderColor:C,distance:S,style:U={}}=B,vt={},Mt=f[s],X=!Mt;if(_&&(ct=V(B[J.formatPrefix+"Format"],B.format),et=J.getLabelConfig(),dt=gt(ct)?kt(ct,et,g):(B[J.formatPrefix+"Formatter"]||B.formatter).call(et,B),_t=B.rotation,!g.styledMode&&(U.color=V(B.color,U.color,P(p.color)?p.color:void 0,"#000000"),"contrast"===U.color?("none"!==h&&(H=h),J.contrastColor=O.getContrast("auto"!==H&&H||J.color||p.color),U.color=H||!gt(S)&&B.inside||0>T(S||0)||w.stacking?J.contrastColor:z):delete J.contrastColor,w.cursor&&(U.cursor=w.cursor)),vt={r:B.borderRadius||0,rotation:_t,padding:B.padding,zIndex:1},g.styledMode||(vt.fill="auto"===h?J.color:h,vt.stroke="auto"===C?J.color:C,vt["stroke-width"]=B.borderWidth),G(vt,(tt,st)=>{void 0===tt&&delete vt[st]})),!Mt||_&>(dt)&&!!Mt.div==!!B.useHTML&&(Mt.rotation&&B.rotation||Mt.rotation===B.rotation)||(Mt=void 0,X=!0),_&>(dt)&&(Mt?vt.text=dt:(Mt=O.label(dt,0,0,B.shape,void 0,void 0,B.useHTML,void 0,"data-label")).addClass(" highcharts-data-label-color-"+J.colorIndex+" "+(B.className||"")+(B.useHTML?" highcharts-tracker":"")),Mt)){Mt.options=B,Mt.attr(vt),g.styledMode||Mt.css(U).shadow(B.shadow);let tt=B[J.formatPrefix+"TextPath"]||B.textPath;tt&&!B.useHTML&&(Mt.setTextPath(J.getDataLabelPath?.(Mt)||J.graphic,tt),J.dataLabelPath&&!tt.enabled&&(J.dataLabelPath=J.dataLabelPath.destroy())),Mt.added||Mt.add(r),p.alignDataLabel(J,Mt,B,void 0,X),Mt.isActive=!0,f[s]&&f[s]!==Mt&&f[s].destroy(),f[s]=Mt}});let F=f.length;for(;F--;)f[F]&&f[F].isActive?f[F].isActive=!1:(f[F]?.destroy(),f.splice(F,1));J.dataLabel=f[0],J.dataLabels=f})),Z(this,"afterDrawDataLabels")}function y(o,r,p,g,w,O){let Y,J,N=this.chart,x=r.align,z=r.verticalAlign,K=o.box?0:o.padding||0,{x:nt=0,y:ot=0}=r;return(Y=(p.x||0)+K)<0&&("right"===x&&nt>=0?(r.align="left",r.inside=!0):nt-=Y,J=!0),(Y=(p.x||0)+g.width-K)>N.plotWidth&&("left"===x&&nt<=0?(r.align="right",r.inside=!0):nt+=N.plotWidth-Y,J=!0),(Y=p.y+K)<0&&("bottom"===z&&ot>=0?(r.verticalAlign="top",r.inside=!0):ot-=Y,J=!0),(Y=(p.y||0)+g.height-K)>N.plotHeight&&("top"===z&&ot<=0?(r.verticalAlign="bottom",r.inside=!0):ot+=N.plotHeight-Y,J=!0),J&&(r.x=nt,r.y=ot,o.placed=!O,o.align(r,void 0,w)),J}function l(o,r){let g,p=[];if($(o)&&!$(r))p=o.map(function(w){return Q(w,r)});else if($(r)&&!$(o))p=r.map(function(w){return Q(o,w)});else if($(o)||$(r)){if($(o)&&$(r))for(g=Math.max(o.length,r.length);g--;)p[g]=Q(o[g],r[g])}else p=Q(o,r);return p}function M(o){let r=o.chart.options.plotOptions;return D(l(l(r?.series?.dataLabels,r?.[o.type]?.dataLabels),o.options.dataLabels))}function A(o,r,p,g,w){let O=this.chart,N=O.inverted,x=this.xAxis,z=x.reversed,K=((N?r.height:r.width)||0)/2,nt=o.pointWidth,ot=nt?nt/2:0;r.startXPos=N?w.x:z?-K-ot:x.width-K+ot,r.startYPos=N?z?this.yAxis.height-K+ot:-K-ot:w.y,g?"hidden"===r.visibility&&(r.show(),r.attr({opacity:0}).animate({opacity:1})):r.attr({opacity:1}).animate({opacity:0}
1,void 0,r.hide),O.hasRendered&&(p&&r.attr({x:r.startXPos,y:r.startYPos}),r.placed=!0)}E.compose=function(o){let r=o.prototype;r.initDataLabels||(r.initDataLabels=W,r.initDataLabelsGroup=v,r.alignDataLabel=d,r.drawDataLabels=I,r.justifyDataLabel=y,r.setDataLabelStartPos=A,r.hasDataLabels=b)}}(i||(i={})),i}),Dt(q,"Series/Column/ColumnDataLabel.js",[q["Core/Series/DataLabel.js"],q["Core/Globals.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt,i){var ut;let{composed:kt}=mt,{series:gt}=xt,{merge:it,pick:Z,pushUnique:$}=i;return function(P){function Q(G,V,T,D,E){let b=this.chart.inverted,d=G.series,v=(d.xAxis?d.xAxis.len:this.chart.plotSizeX)||0,W=(d.yAxis?d.yAxis.len:this.chart.plotSizeY)||0,I=G.dlBox||G.shapeArgs,y=Z(G.below,G.plotY>Z(this.translatedThreshold,W)),l=Z(T.inside,!!this.options.stacking);if(I){if(D=it(I),"allow"!==T.overflow||!1!==T.crop){D.y<0&&(D.height+=D.y,D.y=0);let M=D.y+D.height-W;M>0&&M<D.height&&(D.height-=M)}b&&(D={x:W-D.y-D.height,y:v-D.x-D.width,width:D.height,height:D.width}),l||(b?(D.x+=y?0:D.width,D.width=0):(D.y+=y?D.height:0,D.height=0))}T.align=Z(T.align,!b||l?"center":y?"right":"left"),T.verticalAlign=Z(T.verticalAlign,b||l?"middle":y?"top":"bottom"),gt.prototype.alignDataLabel.call(this,G,V,T,D,E),T.inside&&G.contrastColor&&V.css({color:G.contrastColor})}P.compose=function(G){m.compose(gt),$(kt,"ColumnDataLabel")&&(G.prototype.alignDataLabel=Q)}}(ut||(ut={})),ut}),Dt(q,"Series/Bar/BarSeries.js",[q["Series/Column/ColumnSeries.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{extend:i,merge:ut}=xt;class kt extends m{}return kt.defaultOptions=ut(m.defaultOptions,{}),i(kt.prototype,{inverted:!0}),mt.registerSeriesType("bar",kt),kt}),Dt(q,"Series/Scatter/ScatterSeriesDefaults.js",[],function(){return{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/>"}}}),Dt(q,"Series/Scatter/ScatterSeries.js",[q["Series/Scatter/ScatterSeriesDefaults.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{column:i,line:ut}=mt.seriesTypes,{addEvent:kt,extend:gt,merge:it}=xt;class Z extends ut{applyJitter(){let P=this,Q=this.options.jitter,G=this.points.length;Q&&this.points.forEach(function(V,T){["x","y"].forEach(function(D,E){let b,v,W,I,d="plot"+D.toUpperCase();Q[D]&&!V.isNull&&(b=P[D+"Axis"],I=Q[D]*b.transA,b&&!b.isLog&&(v=Math.max(0,V[d]-I),W=Math.min(b.len,V[d]+I),V[d]=v+(W-v)*function(y){let l=1e4*Math.sin(y);return l-Math.floor(l)}(T+E*G),"x"===D&&(V.clientX=V.plotX)))})})}drawGraph(){this.options.lineWidth?super.drawGraph():this.graph&&(this.graph=this.graph.destroy())}}return Z.defaultOptions=it(ut.defaultOptions,m),gt(Z.prototype,{drawTracker:i.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"]}),kt(Z,"afterTranslate",function(){this.applyJitter()}),mt.registerSeriesType("scatter",Z),Z}),Dt(q,"Series/CenteredUtilities.js",[q["Core/Globals.js"],q["Core/Series/Series.js"],q["Core/Utilities.js"]],function(m,mt,xt){var i,ut;let{deg2rad:kt}=m,{fireEvent:gt,isNumber:it,pick:Z,relativeLength:$}=xt;return(ut=i||(i={})).getCenter=function(){let d,I,y,P=this.options,Q=this.chart,G=2*(P.slicedOffset||0),V=Q.plotWidth-2*G,T=Q.plotHeight-2*G,D=P.center,E=Math.min(V,T),b=P.thickness,v=P.size,W=P.innerSize||0;"string"==typeof v&&(v=parseFloat(v)),"string"==typeof W&&(W=parseFloat(W));let l=[Z(D[0],"50%"),Z(D[1],"50%"),Z(v&&v<0?void 0:P.size,"100%"),Z(W&&W<0?void 0:P.innerSize||0,"0%")];for(!Q.angular||this instanceof mt||(l[3]=0),I=0;I<4;++I)y=l[I],d=I<2||2===I&&/%$/.test(y),l[I]=$(y,[V,T,E,l[2]][I])+(d?G:0);return l[3]>l[2]&&(l[3]=l[2]),it(b)&&2*b<l[2]&&b>0&&(l[3]=l[2]-2*b),gt(this,"afterGetCenter",{positions:l}),l},ut.getStartAndEndRadians=function(P,Q){let G=it(P)?P:0,V=it(Q)&&Q>G&&Q-G<360?Q:G+360;return{start:kt*(G+-90),end:kt*(V+-90)}},i}
1),Dt(q,"Series/Pie/PiePoint.js",[q["Core/Animation/AnimationUtilities.js"],q["Core/Series/Point.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{setAnimation:i}=m,{addEvent:ut,defined:kt,extend:gt,isNumber:it,pick:Z,relativeLength:$}=xt;class P extends mt{getConnectorPath(G){let V=G.dataLabelPosition,T=G.options||{},D=T.connectorShape;return V&&(this.connectorShapes[D]||D).call(this,{...V.computed,alignment:V.alignment},V.connectorPosition,T)||[]}getTranslate(){return this.sliced&&this.slicedTranslation||{translateX:0,translateY:0}}haloPath(G){let V=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(V.x,V.y,V.r+G,V.r+G,{innerR:V.r-1,start:V.start,end:V.end,borderRadius:V.borderRadius})}constructor(G,V,T){super(G,V,T),this.half=0,this.name??(this.name="Slice");let D=E=>{this.slice("select"===E.type)};ut(this,"select",D),ut(this,"unselect",D)}isValid(){return it(this.y)&&this.y>=0}setVisible(G,V=!0){G!==this.visible&&this.update({visible:G??!this.visible},V,void 0,!1)}slice(G,V,T){let D=this.series;i(T,D.chart),V=Z(V,!0),this.sliced=this.options.sliced=G=kt(G)?G:!this.sliced,D.options.data[D.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate())}}return gt(P.prototype,{connectorShapes:{fixedOffset:function(Q,G,V){let T=G.breakAt,D=G.touchingSliceAt;return[["M",Q.x,Q.y],V.softConnector?["C",Q.x+("left"===Q.alignment?-5:5),Q.y,2*T.x-D.x,2*T.y-D.y,T.x,T.y]:["L",T.x,T.y],["L",D.x,D.y]]},straight:function(Q,G){let V=G.touchingSliceAt;return[["M",Q.x,Q.y],["L",V.x,V.y]]},crookedLine:function(Q,G,V){let{breakAt:T,touchingSliceAt:D}=G,{series:E}=this,[b,d,v]=E.center,W=v/2,{plotLeft:I,plotWidth:y}=E.chart,l="left"===Q.alignment,{x:M,y:A}=Q,o=T.x;if(V.crookDistance){let p=$(V.crookDistance,1);o=l?b+W+(y+I-b-W)*(1-p):I+(b-W)*p}else o=b+(d-A)*Math.tan((this.angle||0)-Math.PI/2);let r=[["M",M,A]];return(l?o<=M&&o>=T.x:o>=M&&o<=T.x)&&r.push(["L",o,A]),r.push(["L",T.x,T.y],["L",D.x,D.y]),r}}}),P}),Dt(q,"Series/Pie/PieSeriesDefaults.js",[],function(){return{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}}}}),Dt(q,"Series/Pie/PieSeries.js",[q["Series/CenteredUtilities.js"],q["Series/Column/ColumnSeries.js"],q["Core/Globals.js"],q["Series/Pie/PiePoint.js"],q["Series/Pie/PieSeriesDefaults.js"],q["Core/Series/Series.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Renderer/SVG/Symbols.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut,kt,gt,it,Z){let{getStartAndEndRadians:$}=m,{noop:P}=xt,{clamp:Q,extend:G,fireEvent:V,merge:T,pick:D}=Z;class E extends kt{animate(d){let v=this,I=v.startAngleRad;d||v.points.forEach(function(y){let l=y.graphic,M=y.shapeArgs;l&&M&&(l.attr({r:D(y.startR,v.center&&v.center[3]/2),start:I,end:I}),l.animate({r:M.r,start:M.start,end:M.end},v.options.animation))})}drawEmpty(){let d,v,W=this.startAngleRad,I=this.endAngleRad,y=this.options;0===this.total&&this.center?(d=this.center[0],v=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(d,v,this.center[1]/2,0,W,I).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:it.arc(d,v,this.center[2]/2,0,{start:W,end:I,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":y.borderWidth,fill:y.fillColor||"none",stroke:y.color||"#cccccc"})):this.graph&&(this.graph=this.graph.destroy())}drawPoints(){let d=this.chart.renderer;this.points.forEach(function(v){v.graphic&&v.hasNewShapeType()&&(v.graphic=v.graphic.destroy()),v.graphic||(v.graphic=d[v.shapeType](v.shapeArgs).add(v.series.group),v.delayedRendering=!0)})}generatePoints(){super.generatePoints(),this.updateTotals()}getX(d,v,W,I){let y=this.center,l=this.radii?this.radii[W.index]||0:y[2]/2,M=I.dataLabelPosition,A=M?.distance||0,o=Math.asin(Q((d-y[1])/(l+A),-1,1));
vendor: 3,328 bytes, line 1
1return y[0]+Math.cos(o)*(l+A)*(v?-1:1)+(A>0?(v?-1:1)*(I.padding||0):0)}hasData(){return!!this.processedXData.length}redrawPoints(){let d,v,W,I,y=this,l=y.chart;this.drawEmpty(),y.group&&!l.styledMode&&y.group.shadow(y.options.shadow),y.points.forEach(function(M){let A={};v=M.graphic,!M.isNull&&v?(I=M.shapeArgs,d=M.getTranslate(),l.styledMode||(W=y.pointAttribs(M,M.selected&&"select")),M.delayedRendering?(v.setRadialReference(y.center).attr(I).attr(d),l.styledMode||v.attr(W).attr({"stroke-linejoin":"round"}),M.delayedRendering=!1):(v.setRadialReference(y.center),l.styledMode||T(!0,A,W),T(!0,A,I,d),v.animate(A)),v.attr({visibility:M.visible?"inherit":"hidden"}),v.addClass(M.getClassName(),!0)):v&&(M.graphic=v.destroy())})}sortByAngle(d,v){d.sort(function(W,I){return void 0!==W.angle&&(I.angle-W.angle)*v})}translate(d){V(this,"translate"),this.generatePoints();let r,p,g,w,O,N,x,v=this.options,W=v.slicedOffset,I=$(v.startAngle,v.endAngle),y=this.startAngleRad=I.start,l=(this.endAngleRad=I.end)-y,M=this.points,A=v.ignoreHiddenPoint,o=M.length,z=0;for(d||(this.center=d=this.getCenter()),N=0;N<o;N++){x=M[N],r=y+z*l,x.isValid()&&(!A||x.visible)&&(z+=x.percentage/100),p=y+z*l;let K={x:d[0],y:d[1],r:d[2]/2,innerR:d[3]/2,start:Math.round(1e3*r)/1e3,end:Math.round(1e3*p)/1e3};x.shapeType="arc",x.shapeArgs=K,(g=(p+r)/2)>1.5*Math.PI?g-=2*Math.PI:g<-Math.PI/2&&(g+=2*Math.PI),x.slicedTranslation={translateX:Math.round(Math.cos(g)*W),translateY:Math.round(Math.sin(g)*W)},w=Math.cos(g)*d[2]/2,O=Math.sin(g)*d[2]/2,x.tooltipPos=[d[0]+.7*w,d[1]+.7*O],x.half=g<-Math.PI/2||g>Math.PI/2?1:0,x.angle=g}V(this,"afterTranslate")}updateTotals(){let I,y,d=this.points,v=d.length,W=this.options.ignoreHiddenPoint,l=0;for(I=0;I<v;I++)(y=d[I]).isValid()&&(!W||y.visible)&&(l+=y.y);for(I=0,this.total=l;I<v;I++)(y=d[I]).percentage=l>0&&(y.visible||!W)?y.y/l*100:0,y.total=l}}return E.defaultOptions=T(kt.defaultOptions,ut),G(E.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawTracker:mt.prototype.drawTracker,getCenter:m.getCenter,getSymbol:P,invertible:!1,isCartesian:!1,noSharedTooltip:!0,pointAttribs:mt.prototype.pointAttribs,pointClass:i,requireSorting:!1,searchPoint:P,trackerGroups:["group","dataLabelsGroup"]}),gt.registerSeriesType("pie",E),E}),Dt(q,"Series/Pie/PieDataLabel.js",[q["Core/Series/DataLabel.js"],q["Core/Globals.js"],q["Core/Renderer/RendererUtilities.js"],q["Core/Series/SeriesRegistry.js"],q["Core/Utilities.js"]],function(m,mt,xt,i,ut){var kt;let{composed:gt,noop:it}=mt,{distribute:Z}=xt,{series:$}=i,{arrayMax:P,clamp:Q,defined:G,pick:V,pushUnique:T,relativeLength:D}=ut;return function(E){let b={radialDistributionY:function(y,l){return(l.dataLabelPosition?.top||0)+y.distributeBox.pos},radialDistributionX:function(y,l,M,A,o){let r=o.dataLabelPosition;return y.getX(M<(r?.top||0)+2||M>(r?.bottom||0)-2?A:M,l.half,l,o)},justify:function(y,l,M,A){return A[0]+(y.half?-1:1)*(M+(l.dataLabelPosition?.distance||0))},alignToPlotEdges:function(y,l,M,A){let o=y.getBBox().width;return l?o+A:M-o-A},alignToConnectors:function(y,l,M,A){let r,o=0;return y.forEach(function(p){(r=p.dataLabel.getBBox().width)>o&&(o=r)}),l?o+A:M-o-A}};function d(y,l){let{center:M,options:A}=this,o=M[2]/2,r=y.angle||0,p=Math.cos(r),g=Math.sin(r),w=M[0]+p*o,O=M[1]+g*o,N=Math.min((A.slicedOffset||0)+(A.borderWidth||0),l/5);
1return{natural:{x:w+p*l,y:O+g*l},computed:{},alignment:l<0?"center":y.half?"right":"left",connectorPosition:{breakAt:{x:w+p*N,y:O+g*N},touchingSliceAt:{x:w,y:O}},distance:l}}function v(){let K,nt,ot,y=this,l=y.points,M=y.chart,A=M.plotWidth,o=M.plotHeight,r=M.plotLeft,p=Math.round(M.chartWidth/3),g=y.center,w=g[2]/2,O=g[1],N=[[],[]],x=[0,0,0,0],z=y.dataLabelPositioners,Y=0;y.visible&&y.hasDataLabels?.()&&(l.forEach(J=>{(J.dataLabels||[]).forEach(f=>{f.shortened&&(f.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),f.shortened=!1)})}),$.prototype.drawDataLabels.apply(y),l.forEach(J=>{(J.dataLabels||[]).forEach((f,F)=>{let B=g[2]/2,s=f.options,_=D(s?.distance||0,B);0===F&&N[J.half].push(J),!G(s?.style?.width)&&f.getBBox().width>p&&(f.css({width:Math.round(.7*p)+"px"}),f.shortened=!0),f.dataLabelPosition=this.getDataLabelPosition(J,_),Y=Math.max(Y,_)})}),N.forEach((J,f)=>{let s,_,C,B=[],h=0;J.length&&(y.sortByAngle(J,f-.5),Y>0&&(s=Math.max(0,O-w-Y),_=Math.min(O+w+Y,M.plotHeight),J.forEach(S=>{(S.dataLabels||[]).forEach(U=>{let et=U.dataLabelPosition;et&&et.distance>0&&(et.top=Math.max(0,O-w-et.distance),et.bottom=Math.min(O+w+et.distance,M.plotHeight),h=U.getBBox().height||21,S.distributeBox={target:(U.dataLabelPosition?.natural.y||0)-et.top+h/2,size:h,rank:S.y},B.push(S.distributeBox))})}),Z(B,C=_+h-s,C/5)),J.forEach(S=>{(S.dataLabels||[]).forEach(U=>{let et=U.options||{},ct=S.distributeBox,dt=U.dataLabelPosition,_t=dt?.natural.y||0,vt=et.connectorPadding||0,Mt=0,X=_t,H="inherit";if(dt){if(B&&G(ct)&&dt.distance>0&&(void 0===ct.pos?H="hidden":(ot=ct.size,X=z.radialDistributionY(S,U))),et.justify)Mt=z.justify(S,U,w,g);else switch(et.alignTo){case"connectors":Mt=z.alignToConnectors(J,f,A,r);break;case"plotEdges":Mt=z.alignToPlotEdges(U,f,A,r);break;default:Mt=z.radialDistributionX(y,S,X,_t,U)}if(dt.attribs={visibility:H,align:dt.alignment},dt.posAttribs={x:Mt+(et.x||0)+({left:vt,right:-vt}[dt.alignment]||0),y:X+(et.y||0)-U.getBBox().height/2},dt.computed.x=Mt,dt.computed.y=X,V(et.crop,!0)){let tt;Mt-(nt=U.getBBox().width)<vt&&1===f?(tt=Math.round(nt-Mt+vt),x[3]=Math.max(tt,x[3])):Mt+nt>A-vt&&0===f&&(tt=Math.round(Mt+nt-A+vt),x[1]=Math.max(tt,x[1])),X-ot/2<0?x[0]=Math.max(Math.round(ot/2-X),x[0]):X+ot/2>o&&(x[2]=Math.max(Math.round(X+ot/2-o),x[2])),dt.sideOverflow=tt}}})}))}),(0===P(x)||this.verifyDataLabelOverflow(x))&&(this.placeDataLabels(),this.points.forEach(J=>{(J.dataLabels||[]).forEach(f=>{let{connectorColor:F,connectorWidth:B=1}=f.options||{},s=f.dataLabelPosition;if(B){let _;K=f.connector,s&&s.distance>0?(_=!K,K||(f.connector=K=M.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+J.colorIndex+(J.className?" "+J.className:"")).add(y.dataLabelsGroup)),M.styledMode||K.attr({"stroke-width":B,stroke:F||J.color||"#666666"}),K[_?"attr":"animate"]({d:J.getConnectorPath(f)}),K.attr({visibility:s.attribs?.visibility})):K&&(f.connector=K.destroy())}})})))}function W(){this.points.forEach(y=>{(y.dataLabels||[]).forEach(l=>{let M=l.dataLabelPosition;M?(M.sideOverflow&&(l.css({width:Math.max(l.getBBox().width-M.sideOverflow,0)+"px",textOverflow:(l.options?.style||{}).textOverflow||"ellipsis"}),l.shortened=!0),l.attr(M.attribs),l[l.moved?"animate":"attr"](M.posAttribs),l.moved=!0):l&&l.attr({y:-9999})}),delete y.distributeBox},this)}function I(y){let l=this.center,M=this.options,A=M.center,o=M.minSize||80,r=o,p=null!==M.size;return!p&&(null!==A[0]?r=Math.max(l[2]-Math.max(y[1],y[3]),o):(r=Math.max(l[2]-y[1]-y[3],o),l[0]+=(y[3]-y[1])/2),null!==A[1]?r=Q(r,o,l[2]-Math.max(y[0],y[2])):(r=Q(r,o,l[2]-y[0]-y[2]),l[1]+=(y[0]-y[2])/2),r<l[2]?(l[2]=r,l[3]=Math.min(M.thickness?Math.max(0,r-2*M.thickness):Math.max(0,D(M.innerSize||0,r)),r),this.translate(l),this.drawDataLabels&&this.drawDataLabels()):p=!0),p}E.compose=function(y){if(m.compose($),T(gt,"PieDataLabel")){let l=y.prototype;l.dataLabelPositioners=b,l.alignDataLabel=it,l.drawDataLabels=v,l.getDataLabelPosition=d,l.placeDataLabels=W,l.verifyDataLabelOverflow=I}}}(kt||(kt={})),kt}),Dt(q,"Extensions/OverlappingDataLabels.js",[q["Core/Utilities.js"]],function(m){let{addEvent:mt,fireEvent:xt,objectEach:i,pick:ut}=m;function kt(Z){let Q,G,V,T,D,$=Z.length,P=(b,d)=>!(d.x>=b.x+b.width||d.x+d.width<=b.x||d.y>=b.y+b.height||d.y+d.height<=b.y),E=!1;for(let b=0;b<$;b++)(Q=Z[b])&&(Q.oldOpacity=Q.opacity,Q.newOpacity=1,Q.absoluteBox=function(d){if(d&&(!d.alignAttr||d.placed)){let v=d.box?0:d.padding||0,W=d.alignAttr||{x:d.attr("x"),y:d.attr("y")},I=d.getBBox();return d.width=I.width,d.height=I.height,{x:W.x+(d.parentGroup?.translateX||0)+v,y:W.y+(d.parentGroup?.translateY||0)+v,width:(d.width||0)-2*v,height:(d.height||0)-2*v}}}(Q));Z.sort((b,d)=>(d.labelrank||0)-(b.labelrank||0));for(let b=0;b<$;++b){T=(G=Z[b])&&G.absoluteBox;for(let d=b+1;d<$;++d)D=(V=Z[d])&&V.absoluteBox,T&&D&&G!==V&&0!==G.newOpacity&&0!==V.newOpacity&&"hidden"
1!==G.visibility&&"hidden"!==V.visibility&&P(T,D)&&((G.labelrank<V.labelrank?G:V).newOpacity=0)}for(let b of Z)gt(b,this)&&(E=!0);E&&xt(this,"afterHideAllOverlappingLabels")}function gt(Z,$){let P,Q,G=!1;return Z&&(Q=Z.newOpacity,Z.oldOpacity!==Q&&(Z.hasClass("highcharts-data-label")?(Z[Q?"removeClass":"addClass"]("highcharts-data-label-hidden"),P=function(){$.styledMode||Z.css({pointerEvents:Q?"auto":"none"})},G=!0,Z[Z.isOld?"animate":"attr"]({opacity:Q},void 0,P),xt($,"afterHideOverlappingLabel")):Z.attr({opacity:Q})),Z.isOld=!0),G}function it(){let Z=this,$=[];for(let P of Z.labelCollectors||[])$=$.concat(P());for(let P of Z.yAxis||[])P.stacking&&P.options.stackLabels&&!P.options.stackLabels.allowOverlap&&i(P.stacking.stacks,Q=>{i(Q,G=>{G.label&&$.push(G.label)})});for(let P of Z.series||[])if(P.visible&&P.hasDataLabels?.()){let Q=G=>{for(let V of G)V.visible&&(V.dataLabels||[]).forEach(T=>{let D=T.options||{};T.labelrank=ut(D.labelrank,V.labelrank,V.shapeArgs?.height),D.allowOverlap??Number(D.distance)>0?(T.oldOpacity=T.opacity,T.newOpacity=1,gt(T,Z)):$.push(T)})};Q(P.nodes||[]),Q(P.points)}this.hideOverlappingLabels($)}return{compose:function(Z){let $=Z.prototype;$.hideOverlappingLabels||($.hideOverlappingLabels=kt,mt(Z,"render",it))}}}
vendor: 3,914 bytes, line 1
1),Dt(q,"Extensions/BorderRadius.js",[q["Core/Defaults.js"],q["Core/Globals.js"],q["Core/Utilities.js"]],function(m,mt,xt){let{defaultOptions:i}=m,{noop:ut}=mt,{addEvent:kt,extend:gt,isObject:it,merge:Z,relativeLength:$}=xt,P={radius:0,scope:"stack",where:void 0},Q=ut,G=ut;function V(d,v,W,I,y={}){let l=Q(d,v,W,I,y),{innerR:M=0,r:A=W,start:o=0,end:r=0}=y;if(y.open||!y.borderRadius)return l;let p=r-o,g=Math.sin(p/2),w=Math.max(Math.min($(y.borderRadius||0,A-M),(A-M)/2,A*g/(1+g)),0),O=Math.min(w,p/Math.PI*2*M),N=l.length-1;for(;N--;)!function(x,z,K){let nt,ot,Y,J=x[z],f=x[z+1];if("Z"===f[0]&&(f=x[0]),"M"!==J[0]&&"L"!==J[0]||"A"!==f[0]?"A"===J[0]&&("M"===f[0]||"L"===f[0])&&(nt=f,ot=J):(nt=J,ot=f,Y=!0),nt&&ot&&ot.params){let F=ot[1],B=ot[5],s=ot.params,{start:_,end:h,cx:C,cy:S}=s,U=B?F-K:F+K,et=U?Math.asin(K/U):0,ct=B?et:-et,dt=Math.cos(et)*U;Y?(s.start=_+ct,nt[1]=C+dt*Math.cos(_),nt[2]=S+dt*Math.sin(_),x.splice(z+1,0,["A",K,K,0,0,1,C+F*Math.cos(s.start),S+F*Math.sin(s.start)])):(s.end=h-ct,ot[6]=C+F*Math.cos(s.end),ot[7]=S+F*Math.sin(s.end),x.splice(z+1,0,["A",K,K,0,0,1,C+dt*Math.cos(h),S+dt*Math.sin(h)])),ot[4]=Math.abs(s.end-s.start)<Math.PI?0:1}}(l,N,N>1?O:w);return l}function T(){if(this.options.borderRadius&&(!this.chart.is3d||!this.chart.is3d())){let{options:d,yAxis:v}=this,W="percent"===d.stacking,I=i.plotOptions?.[this.type]?.borderRadius,y=D(d.borderRadius,it(I)?I:{}),l=v.options.reversed;for(let M of this.points){let{shapeArgs:A}=M;if("roundedRect"===M.shapeType&&A){let{width:o=0,height:r=0,y:p=0}=A,g=p,w=r;if("stack"===y.scope&&M.stackTotal){let z=v.translate(W?100:M.stackTotal,!1,!0,!1,!0),K=v.translate(d.threshold||0,!1,!0,!1,!0),nt=this.crispCol(0,Math.min(z,K),0,Math.abs(z-K));g=nt.y,w=nt.height}let O=(M.negative?-1:1)*(l?-1:1)==-1,N=y.where;!N&&this.is("waterfall")&&Math.abs((M.yBottom||0)-(this.translatedThreshold||0))>this.borderWidth&&(N="all"),N||(N="end");let x=Math.min($(y.radius,o),o/2,"all"===N?r/2:1/0)||0;"end"===N&&(O&&(g-=x),w+=x),gt(A,{brBoxHeight:w,brBoxY:g,r:x})}}}}function D(d,v){return it(d)||(d={radius:d||0}),Z(P,v,d)}function E(){let d=D(this.options.borderRadius);for(let v of this.points){let W=v.shapeArgs;W&&(W.borderRadius=$(d.radius,(W.r||0)-(W.innerR||0)))}}function b(d,v,W,I,y={}){let l=G(d,v,W,I,y),{r:M=0,brBoxHeight:A=I,brBoxY:o=v}=y,r=v-o,p=o+A-(v+I),g=r-M>-.1?0:M,w=p-M>-.1?0:M,O=Math.max(g&&r,0),N=Math.max(w&&p,0),x=[d+g,v],z=[d+W-g,v],K=[d+W,v+g],nt=[d+W,v+I-w],ot=[d+W-w,v+I],Y=[d+w,v+I],J=[d,v+I-w],f=[d,v+g],F=(B,s)=>Math.sqrt(Math.pow(B,2)-Math.pow(s,2));if(O){let B=F(g,g-O);x[0]-=B,z[0]+=B,K[1]=f[1]=v+g-O}if(I<g-O){let B=F(g,g-O-I);K[0]=nt[0]=d+W-g+B,ot[0]=Math.min(K[0],ot[0]),Y[0]=Math.max(nt[0],Y[0]),J[0]=f[0]=d+g-B,K[1]=f[1]=v+I}if(N){let B=F(w,w-N);ot[0]+=B,Y[0]-=B,nt[1]=J[1]=v+I-w+N}if(I<w-N){let B=F(w,w-N-I);K[0]=nt[0]=d+W-w+B,z[0]=Math.min(K[0],z[0]),x[0]=Math.max(nt[0],x[0]),J[0]=f[0]=d+w-B,nt[1]=J[1]=v}return l.length=0,l.push(["M",...x],["L",...z],["A",g,g,0,0,1,...K],["L",...nt],["A",w,w,0,0,1,...ot],["L",...Y],["A",w,w,0,0,1,...J],["L",...f],["A",g,g,0,0,1,...x],["Z"]),l}return{compose:function(d,v,W){let I=d.types.pie;if(!v.symbolCustomAttribs.includes("borderRadius")){let y=W.prototype.symbols;kt(d,"afterColumnTranslate",T,{order:9}),kt(I,"afterTranslate",E),v.symbolCustomAttribs.push("borderRadius","brBoxHeight","brBoxY"),Q=y.arc,G=y.roundedRect,y.arc=V,y.roundedRect=b}},optionsToObject:D}}),Dt(q,"Core/Responsive.js",[q["Core/Utilities.js"]],function(m){var mt;let{diffObjects:xt,extend:i,find:ut,merge:kt,pick:gt,uniqueKey:it}=m;return function(Z){function $(Q,G){let V=Q.condition;(V.callback||function(){return this.chartWidth<=gt(V.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=gt(V.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=gt(V.minWidth,0)&&this.chartHeight>=gt(V.minHeight,0)}).call(this)&&G.push(Q._id)}function P(Q,G){let E,V=this.options.responsive,T=this.currentResponsive,D=[];
1!G&&V&&V.rules&&V.rules.forEach(v=>{void 0===v._id&&(v._id=it()),this.matchResponsiveRule(v,D)},this);let b=kt(...D.map(v=>ut((V||{}).rules||[],W=>W._id===v)).map(v=>v&&v.chartOptions));b.isResponsiveOptions=!0,D=D.toString()||void 0,D!==(T&&T.ruleIds)&&(T&&this.update(T.undoOptions,Q,!0),D?((E=xt(b,this.options,!0,this.collectionsWithUpdate)).isResponsiveOptions=!0,this.currentResponsive={ruleIds:D,mergedOptions:b,undoOptions:E},this.update(b,Q,!0)):this.currentResponsive=void 0)}Z.compose=function(Q){let G=Q.prototype;return G.matchResponsiveRule||i(G,{matchResponsiveRule:$,setResponsive:P}),Q}}(mt||(mt={})),mt}),Dt(q,"masters/highcharts.src.js",[q["Core/Globals.js"],q["Core/Utilities.js"],q["Core/Defaults.js"],q["Core/Animation/Fx.js"],q["Core/Animation/AnimationUtilities.js"],q["Core/Renderer/HTML/AST.js"],q["Core/Templating.js"],q["Core/Renderer/RendererRegistry.js"],q["Core/Renderer/RendererUtilities.js"],q["Core/Renderer/SVG/SVGElement.js"],q["Core/Renderer/SVG/SVGRenderer.js"],q["Core/Renderer/HTML/HTMLElement.js"],q["Core/Axis/Axis.js"],q["Core/Axis/DateTimeAxis.js"],q["Core/Axis/LogarithmicAxis.js"],q["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],q["Core/Axis/Tick.js"],q["Core/Tooltip.js"],q["Core/Series/Point.js"],q["Core/Pointer.js"],q["Core/Legend/Legend.js"],q["Core/Legend/LegendSymbol.js"],q["Core/Chart/Chart.js"],q["Extensions/ScrollablePlotArea.js"],q["Core/Axis/Stacking/StackingAxis.js"],q["Core/Axis/Stacking/StackItem.js"],q["Core/Series/Series.js"],q["Core/Series/SeriesRegistry.js"],q["Series/Column/ColumnDataLabel.js"],q["Series/Pie/PieDataLabel.js"],q["Core/Series/DataLabel.js"],q["Extensions/OverlappingDataLabels.js"],q["Extensions/
1BorderRadius.js"],q["Core/Responsive.js"],q["Core/Color/Color.js"],q["Core/Time.js"]],function(m,mt,xt,i,ut,kt,gt,it,Z,$,P,Q,G,V,T,D,E,b,d,v,W,I,y,l,M,A,o,r,p,g,w,O,N,x,z,K){return m.AST=kt,m.Axis=G,m.Chart=y,m.Color=z,m.DataLabel=w,m.Fx=i,m.HTMLElement=Q,m.Legend=W,m.LegendSymbol=I,m.OverlappingDataLabels=m.OverlappingDataLabels||O,m.PlotLineOrBand=D,m.Point=d,m.Pointer=v,m.RendererRegistry=it,m.Series=o,m.SeriesRegistry=r,m.StackItem=A,m.SVGElement=$,m.SVGRenderer=P,m.Templating=gt,m.Tick=E,m.Time=K,m.Tooltip=b,m.animate=ut.animate,m.animObject=ut.animObject,m.chart=y.chart,m.color=z.parse,m.dateFormat=gt.dateFormat,m.defaultOptions=xt.defaultOptions,m.distribute=Z.distribute,m.format=gt.format,m.getDeferredAnimation=ut.getDeferredAnimation,m.getOptions=xt.getOptions,m.numberFormat=gt.numberFormat,m.seriesType=r.seriesType,m.setAnimation=ut.setAnimation,m.setOptions=xt.setOptions,m.stop=ut.stop,m.time=xt.defaultTime,m.timers=i.timers,N.compose(m.Series,m.SVGElement,m.SVGRenderer),p.compose(m.Series.types.column),w.compose(m.Series),V.compose(m.Axis),Q.compose(m.SVGRenderer),W.compose(m.Chart),T.compose(m.Axis),O.compose(m.Chart),g.compose(m.Series.types.pie),D.compose(m.Axis),v.compose(m.Chart),x.compose(m.Chart),l.compose(m.Axis,m.Chart,m.Series),M.compose(m.Axis,m.Chart,m.Series),b.compose(m.Pointer),mt.extend(m,mt),m}),q["masters/highcharts.src.js"]._modules=q,q["masters/highcharts.src.js"]},ce.exports?(q.default=q,ce.exports=Vt&&Vt.document?q(Vt):q):void 0!==(at=function(){return q(Vt)}.call(ie,St,ie,ce))&&(ce.exports=at)},1986:(ce,ie,St)=>{"use strict";St.d(ie,{c:()=>Z});var at=St(3236),Vt=St(8793),q=St(6697),Dt=St(9974),m=St(4360),mt=St(5343),i=St(3703),ut=St(1397),kt=St(8750);function gt($,P){return P?Q=>(0,Vt.x)(P.pipe((0,q.s)(1),function xt(){return(0,Dt.N)(($,P)=>{$.subscribe((0,m._)(P,mt.l))})}()),Q.pipe(gt($))):(0,ut.Z)((Q,G)=>(0,kt.Tg)($(Q,G)).pipe((0,q.s)(1),(0,i.u)(Q)))}var it=St(1584);function Z($,P=at.E){const Q=(0,it.O)($,P);return gt(()=>Q)}},5084:(ce,ie,St)=>{"use strict";St.d(ie,{Vh:()=>De,X6:()=>mi,bU:()=>$t,bZ:()=>It});var at=St(7645),Vt=St(6969),q=St(6939),Dt=St(177),m=St(4438),mt=St(8834),xt=St(5478),i=St(6600),ut=St(1413),kt=St(8359),gt=St(7786),it=St(7673),Z=St(7336),$=St(8203),P=St(6860),Q=St(6697),G=St(9172),V=St(5964),T=St(4085),D=St(9969),E=St(9417),b=St(2102),d=St(9631);const v=["mat-calendar-body",""];function W(pt,Lt){if(1&pt&&(m.j41(0,"tr",3)(1,"td",4),m.EFF(2),m.k0s()()),2&pt){const c=m.XpG();m.R7$(),m.xc7("padding-top",c._cellPadding)("padding-bottom",c._cellPadding),m.BMQ("colspan",c.numCols),m.R7$(),m.SpI(" ",c.label," ")}}function I(pt,Lt){if(1&pt&&(m.j41(0,"td",4),m.EFF(1),m.k0s()),2&pt){const c=m.XpG(2);m.xc7("padding-top",c._cellPadding)("padding-bottom",c._cellPadding),m.BMQ("colspan",c._firstRowOffset),m.R7$(),m.SpI(" ",c._firstRowOffset>=c.labelMinRequiredCells?c.label:""," ")}}function y(pt,Lt){if(1&pt){const c=m.RV6();m.j41(0,"td",8)(1,"button",9),m.bIt("click",function(R){const rt=m.eBV(c).$implicit,Ct=m.XpG(2);return m.Njj(Ct._cellClicked(rt,R))})("focus",function(R){const rt=m.eBV(c).$implicit,Ct=m.XpG(2);return m.Njj(Ct._emitActiveDateChange(rt,R))}),m.j41(2,"span",10),m.EFF(3),m.k0s(),m.nrm(4,"span",11),m.k0s()()}if(2&pt){const c=Lt.$implicit,j=Lt.index,R=m.XpG().index,rt=m.XpG();m.xc7("width",rt._cellWidth)("padding-top",rt._cellPadding)("padding-bottom",rt._cellPadding),m.BMQ("data-mat-row",R)("data-mat-col",j),m.R7$(),m.AVh("mat-calendar-body-disabled",!c.enabled)("mat-calendar-body-active",rt._isActiveCell(R,j))("mat-calendar-body-range-start",rt._isRangeStart(c.compareValue))("mat-calendar-body-range-end",rt._isRangeEnd(c.compareValue))("mat-calendar-body-in-range",rt._isInRange(c.compareValue))("mat-calendar-body-comparison-bridge-start",rt._isComparisonBridgeStart(c.compareValue,R,j))("mat-calendar-body-comparison-bridge-end",rt._isComparisonBridgeEnd(c.compareValue,R,j))("mat-calendar-body-comparison-start",rt._isComparisonStart(c.compareValue))("mat-calendar-body-comparison-end",rt._isComparisonEnd(c.compareValue))("mat-calendar-body-in-comparison-range",rt._isInComparisonRange(c.compareValue))("mat-calendar-body-preview-start",rt._isPreviewStart(c.compareValue))("mat-calendar-body-preview-end",rt._isPreviewEnd(c.compareValue))("mat-calendar-body-in-preview",rt._isInPreview(c.compareValue)),m.Y8G("ngClass",c.cssClasse
1s)("tabindex",rt._isActiveCell(R,j)?0:-1),m.BMQ("aria-label",c.ariaLabel)("aria-disabled",!c.enabled||null)("aria-pressed",rt._isSelected(c.compareValue))("aria-current",rt.todayValue===c.compareValue?"date":null)("aria-describedby",rt._getDescribedby(c.compareValue)),m.R7$(),m.AVh("mat-calendar-body-selected",rt._isSelected(c.compareValue))("mat-calendar-body-comparison-identical",rt._isComparisonIdentical(c.compareValue))("mat-calendar-body-today",rt.todayValue===c.compareValue),m.R7$(),m.SpI(" ",c.displayValue," ")}}function l(pt,Lt){if(1&pt&&(m.j41(0,"tr",5),m.DNE(1,I,2,6,"td",6)(2,y,5,48,"td",7),m.k0s()),2&pt){const c=Lt.$implicit,j=Lt.index,R=m.XpG();m.R7$(),m.Y8G("ngIf",0===j&&R._firstRowOffset),m.R7$(),m.Y8G("ngForOf",c)}}function M(pt,Lt){if(1&pt&&(m.j41(0,"th",5)(1,"span",6),m.EFF(2),m.k0s(),m.j41(3,"span",7),m.EFF(4),m.k0s()()),2&pt){const c=Lt.$implicit;m.R7$(2),m.JRh(c.long),m.R7$(2),m.JRh(c.narrow)}}const A=["*"];function o(pt,Lt){}function r(pt,Lt){if(1&pt){const c=m.RV6();m.j41(0,"mat-month-view",5),m.mxI("activeDateChange",function(R){m.eBV(c);const rt=m.XpG();return m.DH7(rt.activeDate,R)||(rt.activeDate=R),m.Njj(R)}),m.bIt("_userSelection",function(R){m.eBV(c);const rt=m.XpG();return m.Njj(rt._dateSelected(R))})("dragStarted",function(R){m.eBV(c);const rt=m.XpG();return m.Njj(rt._dragStarted(R))})("dragEnded",function(R){m.eBV(c);const rt=m.XpG();return m.Njj(rt._dragEnded(R))}),m.k0s()}if(2&pt){const c=m.XpG();m.R50("activeDate",c.activeDate),m.Y8G("selected",c.selected)("dateFilter",c.dateFilter)("maxDate",c.maxDate)("minDate",c.minDate)("dateClass",c.dateClass)("comparisonStart",c.comparisonStart)("comparisonEnd",c.comparisonEnd)("startDateAccessibleName",c.startDateAccessibleName)("endDateAccessibleName",c.endDateAccessibleName)("activeDrag",c._activeDrag)}}function p(pt,Lt){if(1&pt){const c=m.RV6();m.j41(0,"mat-year-view",6),m.mxI("activeDateChange",function(R){m.eBV(c);const rt=m.XpG();return m.DH7(rt.activeDate,R)||(rt.activeDate=R),m.Njj(R)}),m.bIt("monthSelected",function(R){m.eBV(c);const rt=m.XpG();return m.Njj(rt._monthSelectedInYearView(R))})("selectedChange",function(R){m.eBV(c);const rt=m.XpG();return m.Njj(rt._goToDateInView(R,"month"))}),m.k0s()}if(2&pt){const c=m.XpG();m.R50("activeDate",c.activeDate),m.Y8G("selected",c.selected)("dateFilter",c.dateFilter)("maxDate",c.maxDate)("minDate",c.minDate)("dateClass",c.dateClass)}}function g(pt,Lt){if(1&pt){const c=m.RV6();m.j41(0,"mat-multi-year-view",7),m.mxI("activeDateChange",function(R){m.eBV(c);const rt=m.XpG();return m.DH7(rt.activeDate,R)||(rt.activeDate=R),m.Njj(R)}),m.bIt("yearSelected",function(R){m.eBV(c);const rt=m.XpG();return m.Njj(rt._yearSelectedInMultiYearView(R))})("selectedChange",function(R){m.eBV(c);const rt=m.XpG();return m.Njj(rt._goToDateInView(R,"year"))}),m.k0s()}if(2&pt){const c=m.XpG();m.R50("activeDate",c.activeDate),m.Y8G("selected",c.selected)("dateFilter",c.dateFilter)("maxDate",c.maxDate)("minDate",c.minDate)("dateClass",c.dateClass)}}function w(pt,Lt){}const O=["button"],N=[[["","matDatepickerToggleIcon",""]]],x=["[matDatepickerToggleIcon]"];function z(pt,Lt){1&pt&&(m.qSk(),m.j41(0,"svg",3),m.nrm(1,"path",4),m.k0s())}let J=(()=>{class pt{constructor(){this.changes=new ut.B,this.calendarLabel="Calendar",this.openCalendarLabel="Open calendar",this.closeCalendarLabel="Close calendar",this.prevMonthLabel="Previous month",this.nextMonthLabel="Next month",this.prevYearLabel="Previous year",this.nextYearLabel="Next year",this.prevMultiYearLabel="Previous 24 years",this.nextMultiYearLabel="Next 24 years",this.switchToMonthViewLabel="Choose date",this.switchToMultiYearViewLabel="Choose month and year",this.startDateLabel="Start date",this.endDateLabel="End date"}formatYearRange(c,j){return`${c} \u2013 ${j}`}formatYearRangeLabel(c,j){return`${c} to ${j}`}static#t=this.\u0275fac=function(j){return new(j||pt)};static#e=this.\u0275prov=m.jDH({token:pt,factory:pt.\u0275fac,providedIn:"root"})}return pt})();class f{constructor(Lt,c,j,R,rt={},Ct=Lt,Gt){this.value=Lt,this.displayValue=c,this.ariaLabel=j,this.enabled=R,this.cssClasse
1s=rt,this.compareValue=Ct,this.rawValue=Gt}}let F=1;const B=(0,P.BQ)({passive:!1,capture:!0}),s=(0,P.BQ)({passive:!0,capture:!0}),_=(0,P.BQ)({passive:!0});let h=(()=>{class pt{ngAfterViewChecked(){this._focusActiveCellAfterViewChecked&&(this._focusActiveCell(),this._focusActiveCellAfterViewChecked=!1)}constructor(c,j){this._elementRef=c,this._ngZone=j,this._platform=(0,m.WQX)(P.OD),this._focusActiveCellAfterViewChecked=!1,this.numCols=7,this.activeCell=0,this.isRange=!1,this.cellAspectRatio=1,this.previewStart=null,this.previewEnd=null,this.selectedValueChange=new m.bkB,this.previewChange=new m.bkB,this.activeDateChange=new m.bkB,this.dragStarted=new m.bkB,this.dragEnded=new m.bkB,this._didDragSinceMouseDown=!1,this._enterHandler=R=>{if(this._skipNextFocus&&"focus"===R.type)this._skipNextFocus=!1;else if(R.target&&this.isRange){const rt=this._getCellFromElement(R.target);rt&&this._ngZone.run(()=>this.previewChange.emit({value:rt.enabled?rt:null,event:R}))}},this._touchmoveHandler=R=>{if(!this.isRange)return;const rt=dt(R),Ct=rt?this._getCellFromElement(rt):null;rt!==R.target&&(this._didDragSinceMouseDown=!0),S(R.target)&&R.preventDefault(),this._ngZone.run(()=>this.previewChange.emit({value:Ct?.enabled?Ct:null,event:R}))},this._leaveHandler=R=>{null!==this.previewEnd&&this.isRange&&("blur"!==R.type&&(this._didDragSinceMouseDown=!0),R.target&&this._getCellFromElement(R.target)&&(!R.relatedTarget||!this._getCellFromElement(R.relatedTarget))&&this._ngZone.run(()=>this.previewChange.emit({value:null,event:R})))},this._mousedownHandler=R=>{if(!this.isRange)return;this._didDragSinceMouseDown=!1;const rt=R.target&&this._getCellFromElement(R.target);!rt||!this._isInRange(rt.rawValue)||this._ngZone.run(()=>{this.dragStarted.emit({value:rt.rawValue,event:R})})},this._mouseupHandler=R=>{if(!this.isRange)return;const rt=S(R.target);rt?rt.closest(".mat-calendar-body")===this._elementRef.nativeElement&&this._ngZone.run(()=>{const Ct=this._getCellFromElement(rt);this.dragEnded.emit({value:Ct?.rawValue??null,event:R})}):this._ngZone.run(()=>{this.dragEnded.emit({value:null,event:R})})},this._touchendHandler=R=>{const rt=dt(R);rt&&this._mouseupHandler({target:rt})},this._id="mat-calendar-body-"+F++,this._startDateLabelId=`${this._id}-start-date`,this._endDateLabelId=`${this._id}-end-date`,j.runOutsideAngular(()=>{const R=c.nativeElement;R.addEventListener("touchmove",this._touchmoveHandler,B),R.addEventListener("mouseenter",this._enterHandler,s),R.addEventListener("focus",this._enterHandler,s),R.addEventListener("mouseleave",this._leaveHandler,s),R.addEventListener("blur",this._leaveHandler,s),R.addEventListener("mousedown",this._mousedownHandler,_),R.addEventListener("touchstart",this._mousedownHandler,_),this._platform.isBrowser&&(window.addEventListener("mouseup",this._mouseupHandler),window.addEventListener("touchend",this._touchendHandler))})}_cellClicked(c,j){this._didDragSinceMouseDown||c.enabled&&this.selectedValueChange.emit({value:c.value,event:j})}_emitActiveDateChange(c,j){c.enabled&&this.activeDateChange.emit({value:c.value,event:j})}_isSelected(c){return this.startValue===c||this.endValue===c}ngOnChanges(c){const j=c.numCols,{rows:R,numCols:rt}=this;(c.rows||j)&&(this._firstRowOffset=R&&R.length&&R[0].length?rt-R[0].length:0),(c.cellAspectRatio||j||!this._cellPadding)&&(this._cellPadding=50*this.cellAspectRatio/rt+"%"),(j||!this._cellWidth)&&(this._cellWidth=100/rt+"%")}ngOnDestroy(){const c=this._elementRef.nativeElement;c.removeEventListener("touchmove",this._touchmoveHandler,B),c.removeEventListener("mouseenter",this._enterHandler,s),c.removeEventListener("focus",this._enterHandler,s),c.removeEventListener("mouseleave",this._leaveHandler,s),c.removeEventListener("blur",this._leaveHandler,s),c.removeEventListener("mousedown",this._mousedownHandler,_),c.removeEventListener("touchstart",this._mousedownHandler,_),this._platform.isBrowser&&(window.removeEventListener("mouseup",this._mouseupHandler),window.removeEventListener("touchend",this._touchendHandler))}_isActiveCell(c,j){let R=c*this.numCols+j;return c&&(R-=this._firstRowOffset),R==this.activeCell}_focusActiveCell(c=!0){this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe((0,Q.s)(1)).subscribe(()=>{setTimeout(()=>{const j=this._elementRef.nativeElement.querySelector(".mat-calendar-body-active");j&&(c||(this._skipNextFocus=!0),j.focus())})})})}_scheduleFocusActiveCellAfterViewChecked(){this._focusActiveCellAfterViewChecked=!0}_isRangeStart(c){return U(c,this.startValue,this.endValue)}_isRangeEnd(c){return et(c,this.startValue,this.endValue)}_isInRange(c){return ct(c,this.startValue,this.endValue,this.isRange)}_isComparisonStart(c){return U(c,this.comparisonStart,this.comparisonEnd)}_isComparisonBridgeStart(c,j,R){if(!this._isComparisonStart(c)||this._isRangeStart(c)||
1!this._isInRange(c))return!1;let rt=this.rows[j][R-1];if(!rt){const Ct=this.rows[j-1];rt=Ct&&Ct[Ct.length-1]}return rt&&!this._isRangeEnd(rt.compareValue)}_isComparisonBridgeEnd(c,j,R){if(!this._isComparisonEnd(c)||this._isRangeEnd(c)||!this._isInRange(c))return!1;let rt=this.rows[j][R+1];if(!rt){const Ct=this.rows[j+1];rt=Ct&&Ct[0]}return rt&&!this._isRangeStart(rt.compareValue)}_isComparisonEnd(c){return et(c,this.comparisonStart,this.comparisonEnd)}_isInComparisonRange(c){return ct(c,this.comparisonStart,this.comparisonEnd,this.isRange)}_isComparisonIdentical(c){return this.comparisonStart===this.comparisonEnd&&c===this.comparisonStart}_isPreviewStart(c){return U(c,this.previewStart,this.previewEnd)}_isPreviewEnd(c){return et(c,this.previewStart,this.previewEnd)}_isInPreview(c){return ct(c,this.previewStart,this.previewEnd,this.isRange)}_getDescribedby(c){return this.isRange?this.startValue===c&&this.endValue===c?`${this._startDateLabelId} ${this._endDateLabelId}`:this.startValue===c?this._startDateLabelId:this.endValue===c?this._endDateLabelId:null:null}_getCellFromElement(c){const j=S(c);if(j){const R=j.getAttribute("data-mat-row"),rt=j.getAttribute("data-mat-col");if(R&&rt)return this.rows[parseInt(R)][parseInt(rt)]}return null}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(m.aKT),m.rXU(m.SKi))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["","mat-calendar-body",""]],hostAttrs:[1,"mat-calendar-body"],inputs:{label:"label",rows:"rows",todayValue:"todayValue",startValue:"startValue",endValue:"endValue",labelMinRequiredCells:"labelMinRequiredCells",numCols:"numCols",activeCell:"activeCell",isRange:"isRange",cellAspectRatio:"cellAspectRatio",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",previewStart:"previewStart",previewEnd:"previewEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName"},outputs:{selectedValueChange:"selectedValueChange",previewChange:"previewChange",activeDateChange:"activeDateChange",dragStarted:"dragStarted",dragEnded:"dragEnded"},exportAs:["matCalendarBody"],features:[m.OA$],attrs:v,decls:6,vars:6,consts:[["aria-hidden","true",4,"ngIf"],["role","row",4,"ngFor","ngForOf"],[1,"mat-calendar-body-hidden-label",3,"id"],["aria-hidden","true"],[1,"mat-calendar-body-label"],["role","row"],["class","mat-calendar-body-label",3,"paddingTop","paddingBottom",4,"ngIf"],["role","gridcell","class","mat-calendar-body-cell-container",3,"width","paddingTop","paddingBottom",4,"ngFor","ngForOf"],["role","gridcell",1,"mat-calendar-body-cell-container"],["type","button",1,"mat-calendar-body-cell",3,"click","focus","ngClass","tabindex"],[1,"mat-calendar-body-cell-content","mat-focus-indicator"],["aria-hidden","true",1,"mat-calendar-body-cell-preview"]],template:function(j,R){1&j&&(m.DNE(0,W,3,6,"tr",0)(1,l,3,2,"tr",1),m.j41(2,"label",2),m.EFF(3),m.k0s(),m.j41(4,"label",2),m.EFF(5),m.k0s()),2&j&&(m.Y8G("ngIf",R._firstRowOffset<R.labelMinRequiredCells),m.R7$(),m.Y8G("ngForOf",R.rows),m.R7$(),m.Y8G("id",R._startDateLabelId),m.R7$(),m.SpI(" ",R.startDateAccessibleName,"\n"),m.R7$(),m.Y8G("id",R._endDateLabelId),m.R7$(),m.SpI(" ",R.endDateAccessibleName,"\n"))},dependencies:[Dt.YU,Dt.Sq,Dt.bT],styles:['.mat-calendar-body{min-width:224px}.mat-calendar-body-label{height:0;line-height:0;text-align:left;padding-left:4.7142857143%;padding-right:4.7142857143%}.mat-calendar-body-hidden-label{display:none}.mat-calendar-body-cell-container{position:relative;height:0;line-height:0}.mat-calendar-body-cell{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);position:absolute;top:0;left:0;width:100%;height:100%;background:none;text-align:center;outline:none;font-family:inherit;margin:0}.mat-calendar-body-cell::-moz-focus-inner{border:0}.mat-calendar-body-cell::before,.mat-calendar-body-cell::after,.mat-calendar-body-cell-preview{content:"";position:absolute;top:5%;left:0;z-index:0;box-sizing:border-box;display:block;height:90%;width:100%}.mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,.mat-calendar-body-range-start::after,.mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,.mat-calendar-body-comparison-start::after,.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:5%;width:95%;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-range-start:not(.mat-calendar-body-in-comparison-range)::before,[dir=rtl] .mat-calendar-body-range-start::after,[dir=rtl] .mat-calendar-body-comparison-start:not(.mat-calendar-body-comparison-bridge-start)::before,[dir=rtl] .mat-calendar-body-comparison-start::after,[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{left:0;border-radius:0;border-top-right-radius:999px;border-bottom-right-radius:999px}
1.mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,.mat-calendar-body-range-end::after,.mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,.mat-calendar-body-comparison-end::after,.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}[dir=rtl] .mat-calendar-body-range-end:not(.mat-calendar-body-in-comparison-range)::before,[dir=rtl] .mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-end:not(.mat-calendar-body-comparison-bridge-end)::before,[dir=rtl] .mat-calendar-body-comparison-end::after,[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{left:5%;border-radius:0;border-top-left-radius:999px;border-bottom-left-radius:999px}[dir=rtl] .mat-calendar-body-comparison-bridge-start.mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-bridge-end.mat-calendar-body-range-start::after{width:95%;border-top-right-radius:999px;border-bottom-right-radius:999px}.mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,[dir=rtl] .mat-calendar-body-comparison-start.mat-calendar-body-range-end::after,.mat-calendar-body-comparison-end.mat-calendar-body-range-start::after,[dir=rtl] .mat-calendar-body-comparison-end.mat-calendar-body-range-start::after{width:90%}.mat-calendar-body-in-preview .mat-calendar-body-cell-preview{border-top:dashed 1px;border-bottom:dashed 1px}.mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:dashed 1px}[dir=rtl] .mat-calendar-body-preview-start .mat-calendar-body-cell-preview{border-left:0;border-right:dashed 1px}.mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:dashed 1px}[dir=rtl] .mat-calendar-body-preview-end .mat-calendar-body-cell-preview{border-right:0;border-left:dashed 1px}.mat-calendar-body-disabled{cursor:default}.cdk-high-contrast-active .mat-calendar-body-disabled{opacity:.5}.mat-calendar-body-cell-content{top:5%;left:5%;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;line-height:1;border-width:1px;border-style:solid;border-radius:999px}.mat-calendar-body-cell-content.mat-focus-indicator{position:absolute}.cdk-high-contrast-active .mat-calendar-body-cell-content{border:none}.cdk-high-contrast-active .mat-datepicker-popup:not(:empty),.cdk-high-contrast-active .mat-calendar-body-cell:not(.mat-calendar-body-in-range) .mat-calendar-body-selected{outline:solid 1px}.cdk-high-contrast-active .mat-calendar-body-today{outline:dotted 1px}.cdk-high-contrast-active .mat-calendar-body-cell::before,.cdk-high-contrast-active .mat-calendar-body-cell::after,.cdk-high-contrast-active .mat-calendar-body-selected{background:none}.cdk-high-contrast-active .mat-calendar-body-in-range::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-start::before,.cdk-high-contrast-active .mat-calendar-body-comparison-bridge-end::before{border-top:solid 1px;border-bottom:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-start::before{border-left:0;border-right:solid 1px}.cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:solid 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-range-end::before{border-right:0;border-left:solid 1px}.cdk-high-contrast-active .mat-calendar-body-in-comparison-range::before{border-top:dashed 1px;border-bottom:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-start::before{border-left:0;border-right:dashed 1px}.cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:dashed 1px}[dir=rtl] .cdk-high-contrast-active .mat-calendar-body-comparison-end::before{border-right:0;border-left:dashed 1px}[dir=rtl] .mat-calendar-body-label{text-align:right}'],encapsulation:2,changeDetection:0})}return pt})();function C(pt){return"TD"===pt?.nodeName}function S(pt){let Lt;return C(pt)?Lt=pt:C(pt.parentNode)?Lt=pt.parentNode:C(pt.parentNode?.parentNode)&&(Lt=pt.parentNode.parentNode),null!=Lt?.getAttribute("data-mat-row")?Lt:null}function U(pt,Lt,c){return null!==c&&Lt!==c&&pt<c&&pt===Lt}function et(pt,Lt,c){return null!==Lt&&Lt!==c&&pt>=Lt&&pt===c}function ct(pt,Lt,c,j){return j&&null!==Lt&&null!==c&&Lt!==c&&pt>=Lt&&pt<=c}function dt(pt){const Lt=pt.changedTouches[0];return document.elementFromPoint(Lt.clientX,Lt.clientY)}class _t{constructor(Lt,c){this.start=Lt,this.end=c}}let vt=(()=>{class pt{constructor(c,j){this.selection=c,this._adapter=j,this._selectionChanged=new ut.B,this.selectionChanged=this._selectionChanged,this.selection=c}updateSelection(c,j){const R=this.selection;this.selection=c,this._selectionChanged.next({selection:c,source:j,oldValue:R})}ngOnDestroy(){this._selectionChanged.complete()}_isValidDateInstance(c){return this._adapter.isDateInstance(c)&&this._adapter.isValid(c)}static#t=this.\u0275fac=function(j){m.QTQ()};static#e=this.\u0275prov=m.jDH({token:pt,factory:pt.\u0275fac})}return pt})(),Mt=(()=>{class pt extends vt{constructor(c){super(null,c)}add(c){super.updateSelection(c,this)}isValid(){return null!=this.selection&&this._isValidDateInstance(this.selection)}isComplete(){return null!=this.selection}clone(){const c=new pt(this._adapter);return c.updateSelection(this.selection,this),c}static#t=this.\u0275fac=function(j){return new(j||pt)(m.KVO(i.MJ))};static#e=this.\u0275prov=m.jDH({token:pt,factory:pt.\u0275fac})}return pt})();const tt={provide:vt,deps:[[new m.Xx1,new m.kdw,vt],i.MJ],useFactory:function H(pt,Lt){return pt||new Mt(Lt)}},lt=new m.nKC("MAT_DATE_RANGE_SELECTION_STRATEGY");let Bt=(()=>{class pt{get activeDate(){return this._activeDate}set activeDate(c){const j=this._activeDate,R=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(R,this.minDate,this.maxDate),this._hasSameMonthAndYear(j,this._activeDate)||this._init()}get selected(){return this._selected}set selected(c){this._selected=c instanceof _t?c:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c)),this._setRanges(this._selected)}
1get minDate(){return this._minDate}set minDate(c){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get maxDate(){return this._maxDate}set maxDate(c){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}constructor(c,j,R,rt,Ct){this._changeDetectorRef=c,this._dateFormats=j,this._dateAdapter=R,this._dir=rt,this._rangeStrategy=Ct,this._rerenderSubscription=kt.yU.EMPTY,this.activeDrag=null,this.selectedChange=new m.bkB,this._userSelection=new m.bkB,this.dragStarted=new m.bkB,this.dragEnded=new m.bkB,this.activeDateChange=new m.bkB,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,G.Z)(null)).subscribe(()=>this._init())}ngOnChanges(c){const j=c.comparisonStart||c.comparisonEnd;j&&!j.firstChange&&this._setRanges(this.selected),c.activeDrag&&!this.activeDrag&&this._clearPreview()}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_dateSelected(c){const j=c.value,R=this._getDateFromDayOfMonth(j);let rt,Ct;this._selected instanceof _t?(rt=this._getDateInCurrentMonth(this._selected.start),Ct=this._getDateInCurrentMonth(this._selected.end)):rt=Ct=this._getDateInCurrentMonth(this._selected),(rt!==j||Ct!==j)&&this.selectedChange.emit(R),this._userSelection.emit({value:R,event:c.event}),this._clearPreview(),this._changeDetectorRef.markForCheck()}_updateActiveDate(c){const R=this._activeDate;this.activeDate=this._getDateFromDayOfMonth(c.value),this._dateAdapter.compareDate(R,this.activeDate)&&this.activeDateChange.emit(this._activeDate)}_handleCalendarBodyKeydown(c){const j=this._activeDate,R=this._isRtl();switch(c.keyCode){case Z.UQ:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,R?1:-1);break;case Z.LE:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,R?-1:1);break;case Z.i7:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,-7);break;case Z.n6:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,7);break;case Z.yZ:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,1-this._dateAdapter.getDate(this._activeDate));break;case Z.Kp:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,this._dateAdapter.getNumDaysInMonth(this._activeDate)-this._dateAdapter.getDate(this._activeDate));break;case Z.w_:this.activeDate=c.altKey?this._dateAdapter.addCalendarYears(this._activeDate,-1):this._dateAdapter.addCalendarMonths(this._activeDate,-1);break;case Z.dB:this.activeDate=c.altKey?this._dateAdapter.addCalendarYears(this._activeDate,1):this._dateAdapter.addCalendarMonths(this._activeDate,1);break;case Z.Fm:case Z.t6:return this._selectionKeyPressed=!0,void(this._canSelect(this._activeDate)&&c.preventDefault());case Z._f:return void(null!=this._previewEnd&&!(0,Z.rp)(c)&&(this._clearPreview(),this.activeDrag?this.dragEnded.emit({value:null,event:c}):(this.selectedChange.emit(null),this._userSelection.emit({value:null,event:c})),c.preventDefault(),c.stopPropagation()));default:return}this._dateAdapter.compareDate(j,this.activeDate)&&(this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked()),c.preventDefault()}_handleCalendarBodyKeyup(c){(c.keyCode===Z.t6||c.keyCode===Z.Fm)&&(this._selectionKeyPressed&&this._canSelect(this._activeDate)&&this._dateSelected({value:this._dateAdapter.getDate(this._activeDate),event:c}),this._selectionKeyPressed=!1)}_init(){this._setRanges(this.selected),this._todayDate=this._getCellCompareValue(this._dateAdapter.today()),this._monthLabel=this._dateFormats.display.monthLabel?this._dateAdapter.format(this.activeDate,this._dateFormats.display.monthLabel):this._dateAdapter.getMonthNames("short")[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();let c=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),1);this._firstWeekOffset=(7+this._dateAdapter.getDayOfWeek(c)-this._dateAdapter.getFirstDayOfWeek())%7,this._initWeekdays(),this._createWeekCells(),this._changeDetectorRef.markForCheck()}_focusActiveCell(c){this._matCalendarBody._focusActiveCell(c)}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_previewChanged({event:c,value:j}){if(this._rangeStrategy){const R=j?j.rawValue:null,rt=this._rangeStrategy.createPreview(R,this.selected,c);if(this._previewStart=this._getCellCompareValue(rt.start),this._previewEnd=this._getCellCompareValue(rt.end),this.activeDrag&&R){const Ct=this._rangeStrategy.createDrag?.(this.activeDrag.value,this.selected,R,c);Ct&&(this._previewStart=this._getCellCompareValue(Ct.start),this._previewEnd=this._getCellCompareValue(Ct.end))}this._changeDetectorRef.detectChanges()}}_dragEnded(c){if(this.activeDrag)if(c.value){const j=this._rangeStrategy?.createDrag?.(this.activeDrag.value,this.selected,c.value,c.event);this.dragEnded.emit({value:j??null,event:c.event})}else this.dragEnded.emit({value:null,event:c.event})}_getDateFromDayOfMonth(c){return this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),c)}
1_initWeekdays(){const c=this._dateAdapter.getFirstDayOfWeek(),j=this._dateAdapter.getDayOfWeekNames("narrow");let rt=this._dateAdapter.getDayOfWeekNames("long").map((Ct,Gt)=>({long:Ct,narrow:j[Gt]}));this._weekdays=rt.slice(c).concat(rt.slice(0,c))}_createWeekCells(){const c=this._dateAdapter.getNumDaysInMonth(this.activeDate),j=this._dateAdapter.getDateNames();this._weeks=[[]];for(let R=0,rt=this._firstWeekOffset;R<c;R++,rt++){7==rt&&(this._weeks.push([]),rt=0);const Ct=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),R+1),Gt=this._shouldEnableDate(Ct),_e=this._dateAdapter.format(Ct,this._dateFormats.display.dateA11yLabel),fe=this.dateClass?this.dateClass(Ct,"month"):void 0;this._weeks[this._weeks.length-1].push(new f(R+1,j[R],_e,Gt,fe,this._getCellCompareValue(Ct),Ct))}}_shouldEnableDate(c){return!!c&&(!this.minDate||this._dateAdapter.compareDate(c,this.minDate)>=0)&&(!this.maxDate||this._dateAdapter.compareDate(c,this.maxDate)<=0)&&(!this.dateFilter||this.dateFilter(c))}_getDateInCurrentMonth(c){return c&&this._hasSameMonthAndYear(c,this.activeDate)?this._dateAdapter.getDate(c):null}_hasSameMonthAndYear(c,j){return!(!c||!j||this._dateAdapter.getMonth(c)!=this._dateAdapter.getMonth(j)||this._dateAdapter.getYear(c)!=this._dateAdapter.getYear(j))}_getCellCompareValue(c){if(c){const j=this._dateAdapter.getYear(c),R=this._dateAdapter.getMonth(c),rt=this._dateAdapter.getDate(c);return new Date(j,R,rt).getTime()}return null}_isRtl(){return this._dir&&"rtl"===this._dir.value}_setRanges(c){c instanceof _t?(this._rangeStart=this._getCellCompareValue(c.start),this._rangeEnd=this._getCellCompareValue(c.end),this._isRange=!0):(this._rangeStart=this._rangeEnd=this._getCellCompareValue(c),this._isRange=!1),this._comparisonRangeStart=this._getCellCompareValue(this.comparisonStart),this._comparisonRangeEnd=this._getCellCompareValue(this.comparisonEnd)}_canSelect(c){return!this.dateFilter||this.dateFilter(c)}_clearPreview(){this._previewStart=this._previewEnd=null}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(m.gRc),m.rXU(i.de,8),m.rXU(i.MJ,8),m.rXU($.dS,8),m.rXU(lt,8))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-month-view"]],viewQuery:function(j,R){if(1&j&&m.GBs(h,5),2&j){let rt;m.mGM(rt=m.lsd())&&(R._matCalendarBody=rt.first)}},inputs:{activeDate:"activeDate",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName",activeDrag:"activeDrag"},outputs:{selectedChange:"selectedChange",_userSelection:"_userSelection",dragStarted:"dragStarted",dragEnded:"dragEnded",activeDateChange:"activeDateChange"},exportAs:["matMonthView"],features:[m.OA$],decls:7,vars:15,consts:[["role","grid",1,"mat-calendar-table"],[1,"mat-calendar-table-header"],["scope","col",4,"ngFor","ngForOf"],["aria-hidden","true","colspan","7",1,"mat-calendar-table-header-divider"],["mat-calendar-body","",3,"selectedValueChange","activeDateChange","previewChange","dragStarted","dragEnded","keyup","keydown","label","rows","todayValue","startValue","endValue","comparisonStart","comparisonEnd","previewStart","previewEnd","isRange","labelMinRequiredCells","activeCell","startDateAccessibleName","endDateAccessibleName"],["scope","col"],[1,"cdk-visually-hidden"],["aria-hidden","true"]],template:function(j,R){1&j&&(m.j41(0,"table",0)(1,"thead",1)(2,"tr"),m.DNE(3,M,5,2,"th",2),m.k0s(),m.j41(4,"tr"),m.nrm(5,"th",3),m.k0s()(),m.j41(6,"tbody",4),m.bIt("selectedValueChange",function(Ct){return R._dateSelected(Ct)})("activeDateChange",function(Ct){return R._updateActiveDate(Ct)})("previewChange",function(Ct){return R._previewChanged(Ct)})("dragStarted",function(Ct){return R.dragStarted.emit(Ct)})("dragEnded",function(Ct){return R._dragEnded(Ct)})("keyup",function(Ct){return R._handleCalendarBodyKeyup(Ct)})("keydown",function(Ct){return R._handleCalendarBodyKeydown(Ct)}),m.k0s()()),2&j&&(m.R7$(3),m.Y8G("ngForOf",R._weekdays),m.R7$(3),m.Y8G("label",R._monthLabel)("rows",R._weeks)("todayValue",R._todayDate)("startValue",R._rangeStart)("endValue",R._rangeEnd)("comparisonStart",R._comparisonRangeStart)("comparisonEnd",R._comparisonRangeEnd)("previewStart",R._previewStart)("previewEnd",R._previewEnd)("isRange",R._isRange)("labelMinRequiredCells",3)("activeCell",R._dateAdapter.getDate(R.activeDate)-1)("startDateAccessibleName",R.startDateAccessibleName)("endDateAccessibleName",R.endDateAccessibleName))},dependencies:[Dt.Sq,h],encapsulation:2,changeDetection:0})}return pt})();const At=24;let Nt=(()=>{class pt{get activeDate(){return this._activeDate}set activeDate(c){let j=this._activeDate;const R=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(R,this.minDate,this.maxDate),Ft(this._dateAdapter,j,this._activeDate,this.minDate,this.maxDate)||this._init()}get selected(){return this._selected}set selected(c){this._selected=c instanceof _t?c:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c)),this._setSelectedYear(c)}
1get minDate(){return this._minDate}set minDate(c){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get maxDate(){return this._maxDate}set maxDate(c){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}constructor(c,j,R){this._changeDetectorRef=c,this._dateAdapter=j,this._dir=R,this._rerenderSubscription=kt.yU.EMPTY,this.selectedChange=new m.bkB,this.yearSelected=new m.bkB,this.activeDateChange=new m.bkB,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,G.Z)(null)).subscribe(()=>this._init())}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_init(){this._todayYear=this._dateAdapter.getYear(this._dateAdapter.today());const j=this._dateAdapter.getYear(this._activeDate)-Pt(this._dateAdapter,this.activeDate,this.minDate,this.maxDate);this._years=[];for(let R=0,rt=[];R<At;R++)rt.push(j+R),4==rt.length&&(this._years.push(rt.map(Ct=>this._createCellForYear(Ct))),rt=[]);this._changeDetectorRef.markForCheck()}_yearSelected(c){const j=c.value,R=this._dateAdapter.createDate(j,0,1),rt=this._getDateFromYear(j);this.yearSelected.emit(R),this.selectedChange.emit(rt)}_updateActiveDate(c){const R=this._activeDate;this.activeDate=this._getDateFromYear(c.value),this._dateAdapter.compareDate(R,this.activeDate)&&this.activeDateChange.emit(this.activeDate)}_handleCalendarBodyKeydown(c){const j=this._activeDate,R=this._isRtl();switch(c.keyCode){case Z.UQ:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,R?1:-1);break;case Z.LE:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,R?-1:1);break;case Z.i7:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-4);break;case Z.n6:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,4);break;case Z.yZ:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-Pt(this._dateAdapter,this.activeDate,this.minDate,this.maxDate));break;case Z.Kp:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,At-Pt(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)-1);break;case Z.w_:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,c.altKey?10*-At:-At);break;case Z.dB:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,c.altKey?10*At:At);break;case Z.Fm:case Z.t6:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(j,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked(),c.preventDefault()}_handleCalendarBodyKeyup(c){(c.keyCode===Z.t6||c.keyCode===Z.Fm)&&(this._selectionKeyPressed&&this._yearSelected({value:this._dateAdapter.getYear(this._activeDate),event:c}),this._selectionKeyPressed=!1)}_getActiveCell(){return Pt(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)}_focusActiveCell(){this._matCalendarBody._focusActiveCell()}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_getDateFromYear(c){const j=this._dateAdapter.getMonth(this.activeDate),R=this._dateAdapter.getNumDaysInMonth(this._dateAdapter.createDate(c,j,1));return this._dateAdapter.createDate(c,j,Math.min(this._dateAdapter.getDate(this.activeDate),R))}_createCellForYear(c){const j=this._dateAdapter.createDate(c,0,1),R=this._dateAdapter.getYearName(j),rt=this.dateClass?this.dateClass(j,"multi-year"):void 0;return new f(c,R,R,this._shouldEnableYear(c),rt)}_shouldEnableYear(c){if(null==c||this.maxDate&&c>this._dateAdapter.getYear(this.maxDate)||this.minDate&&c<this._dateAdapter.getYear(this.minDate))return!1;if(!this.dateFilter)return!0;for(let R=this._dateAdapter.createDate(c,0,1);this._dateAdapter.getYear(R)==c;R=this._dateAdapter.addCalendarDays(R,1))if(this.dateFilter(R))return!0;return!1}_isRtl(){return this._dir&&"rtl"===this._dir.value}_setSelectedYear(c){if(this._selectedYear=null,c instanceof _t){const j=c.start||c.end;j&&(this._selectedYear=this._dateAdapter.getYear(j))}else c&&(this._selectedYear=this._dateAdapter.getYear(c))}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(m.gRc),m.rXU(i.MJ,8),m.rXU($.dS,8))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-multi-year-view"]],viewQuery:function(j,R){if(1&j&&m.GBs(h,5),2&j){let rt;m.mGM(rt=m.lsd())&&(R._matCalendarBody=rt.first)}},inputs:{activeDate:"activeDate",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass"},outputs:{selectedChange:"selectedChange",yearSelected:"yearSelected",activeDateChange:"activeDateChange"},exportAs:["matMultiYearView"],decls:5,vars:7,consts:[["role","grid",1,"mat-calendar-table"],["aria-hidden","true",1,"mat-calendar-table-header"],["colspan","4",1,"mat-calendar-table-header-divider"],["mat-calendar-body","",3,"selectedValueChange","activeDateChange","keyup","keydown","rows","todayValue","startValue","endValue","numCols","cellAspectRatio","activeCell"]],template:function(j,R){1&j&&(m.j41(0,"table",0)(1,"thead",1)(2,"tr"),m.nrm(3,"th",2),m.k0s()(),m.j41(4,"tbody",3),m.bIt("selectedValueChange",function(Ct){return R._yearSelected(Ct)})("activeDateChange",function(Ct){return R._updateActiveDate(Ct)})("keyup",function(Ct){return R._handleCalendarBodyKeyup(Ct)})("keydown",function(Ct){return R._handleCalendarBodyKeydown(Ct)}),m.k0s()()),2&j&&(m.R7$(4),m.Y8G("rows",R._years)("todayValue",R._todayYear)("startValue",R._selectedYear)("endValue",R._selectedYear)("numCols",4)("cellAspectRatio",4/7)("activeCell",R._getActiveCell()))},dependencies:[h],encapsulation:2,changeDetection:0})}return pt})();function Ft(pt,Lt,c,j,R){const rt=pt.getYear(Lt),Ct=pt.getYear(c),Gt=Ht(pt,j,R);return Math.floor((rt-Gt)/At)===Math.floor((Ct-Gt)/At)}function Pt(pt,Lt,c,j){return function Ut(pt,Lt){return(pt%Lt+Lt)%Lt}(pt.getYear(Lt)-Ht(pt,c,j),At)}function Ht(pt,Lt,c){let j=0;return c?j=pt.getYear(c)-At+1:Lt&&(j=pt.getYear(Lt)),j}let Yt=(()=>{class pt{get activeDate(){return this._activeDate}set activeDate(c){let j=this._activeDate;const R=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(R,this.minDate,this.maxDate),this._dateAdapter.getYear(j)!==this._dateAdapter.getYear(this._activeDate)&&this._init()}get selected(){return this._selected}set selected(c){this._selected=c instanceof _t?c:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c)),this._setSelectedMonth(c)}
1get minDate(){return this._minDate}set minDate(c){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get maxDate(){return this._maxDate}set maxDate(c){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}constructor(c,j,R,rt){this._changeDetectorRef=c,this._dateFormats=j,this._dateAdapter=R,this._dir=rt,this._rerenderSubscription=kt.yU.EMPTY,this.selectedChange=new m.bkB,this.monthSelected=new m.bkB,this.activeDateChange=new m.bkB,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,G.Z)(null)).subscribe(()=>this._init())}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_monthSelected(c){const j=c.value,R=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),j,1);this.monthSelected.emit(R);const rt=this._getDateFromMonth(j);this.selectedChange.emit(rt)}_updateActiveDate(c){const R=this._activeDate;this.activeDate=this._getDateFromMonth(c.value),this._dateAdapter.compareDate(R,this.activeDate)&&this.activeDateChange.emit(this.activeDate)}_handleCalendarBodyKeydown(c){const j=this._activeDate,R=this._isRtl();switch(c.keyCode){case Z.UQ:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,R?1:-1);break;case Z.LE:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,R?-1:1);break;case Z.i7:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-4);break;case Z.n6:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,4);break;case Z.yZ:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-this._dateAdapter.getMonth(this._activeDate));break;case Z.Kp:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,11-this._dateAdapter.getMonth(this._activeDate));break;case Z.w_:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,c.altKey?-10:-1);break;case Z.dB:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,c.altKey?10:1);break;case Z.Fm:case Z.t6:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(j,this.activeDate)&&(this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked()),c.preventDefault()}_handleCalendarBodyKeyup(c){(c.keyCode===Z.t6||c.keyCode===Z.Fm)&&(this._selectionKeyPressed&&this._monthSelected({value:this._dateAdapter.getMonth(this._activeDate),event:c}),this._selectionKeyPressed=!1)}_init(){this._setSelectedMonth(this.selected),this._todayMonth=this._getMonthInCurrentYear(this._dateAdapter.today()),this._yearLabel=this._dateAdapter.getYearName(this.activeDate);let c=this._dateAdapter.getMonthNames("short");this._months=[[0,1,2,3],[4,5,6,7],[8,9,10,11]].map(j=>j.map(R=>this._createCellForMonth(R,c[R]))),this._changeDetectorRef.markForCheck()}_focusActiveCell(){this._matCalendarBody._focusActiveCell()}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_getMonthInCurrentYear(c){return c&&this._dateAdapter.getYear(c)==this._dateAdapter.getYear(this.activeDate)?this._dateAdapter.getMonth(c):null}_getDateFromMonth(c){const j=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),c,1),R=this._dateAdapter.getNumDaysInMonth(j);return this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),c,Math.min(this._dateAdapter.getDate(this.activeDate),R))}_createCellForMonth(c,j){const R=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),c,1),rt=this._dateAdapter.format(R,this._dateFormats.display.monthYearA11yLabel),Ct=this.dateClass?this.dateClass(R,"year"):void 0;return new f(c,j.toLocaleUpperCase(),rt,this._shouldEnableMonth(c),Ct)}_shouldEnableMonth(c){const j=this._dateAdapter.getYear(this.activeDate);if(null==c||this._isYearAndMonthAfterMaxDate(j,c)||this._isYearAndMonthBeforeMinDate(j,c))return!1;if(!this.dateFilter)return!0;for(let rt=this._dateAdapter.createDate(j,c,1);this._dateAdapter.getMonth(rt)==c;rt=this._dateAdapter.addCalendarDays(rt,1))if(this.dateFilter(rt))return!0;return!1}_isYearAndMonthAfterMaxDate(c,j){if(this.maxDate){const R=this._dateAdapter.getYear(this.maxDate),rt=this._dateAdapter.getMonth(this.maxDate);return c>R||c===R&&j>rt}return!1}_isYearAndMonthBeforeMinDate(c,j){if(this.minDate){const R=this._dateAdapter.getYear(this.minDate),rt=this._dateAdapter.getMonth(this.minDate);return c<R||c===R&&j<rt}return!1}_isRtl(){return this._dir&&"rtl"===this._dir.value}_setSelectedMonth(c){this._selectedMonth=c instanceof _t?this._getMonthInCurrentYear(c.start)||this._getMonthInCurrentYear(c.end):this._getMonthInCurrentYear(c)}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(m.gRc),m.rXU(i.de,8),m.rXU(i.MJ,8),m.rXU($.dS,8))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-year-view"]],viewQuery:function(j,R){if(1&j&&m.GBs(h,5),2&j){let rt;m.mGM(rt=m.lsd())&&(R._matCalendarBody=rt.first)}},inputs:{activeDate:"activeDate",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass"},outputs:{selectedChange:"selectedChange",monthSelected:"monthSelected",activeDateChange:"activeDateChange"},exportAs:["matYearView"],decls:5,vars:9,consts:[["role","grid",1,"mat-calendar-table"],["aria-hidden","true",1,"mat-calendar-table-header"],["colspan","4",1,"mat-calendar-table-header-divider"],["mat-calendar-body","",3,"selectedValueChange","activeDateChange","keyup","keydown","label","rows","todayValue","startValue","endValue","labelMinRequiredCells","numCols","cellAspectRatio","activeCell"]],template:function(j,R){1&j&&(m.j41(0,"table",0)(1,"thead",1)(2,"tr"),m.nrm(3,"th",2),m.k0s()(),m.j41(4,"tbody",3),m.bIt("selectedValueChange",function(Ct){return R._monthSelected(Ct)})("activeDateChange",function(Ct){return R._updateActiveDate(Ct)})("keyup",function(Ct){return R._handleCalendarBodyKeyup(Ct)})("keydown",function(Ct){return R._handleCalendarBodyKeydown(Ct)}),m.k0s()()),2&j&&(m.R7$(4),m.Y8G("label",R._yearLabel)("rows",R._months)("todayValue",R._todayMonth)("startValue",R._selectedMonth)("endValue",R._selectedMonth)("labelMinRequiredCells",2)("numCols",4)("cellAspectRatio",4/7)("activeCell",R._dateAdapter.getMonth(R.activeDate)))},dependencies:[h],encapsulation:2,changeDetection:0})}return pt})(),ee=1,te=(()=>{class pt{constructor(c,j,R,rt,Ct){this._intl=c,this.calendar=j,this._dateAdapter=R,this._dateFormats=rt,this._id="mat-calendar-header-"+ee++,this._periodButtonLabelId=`${this._id}-period-label`,this.calendar.stateChanges.subscribe(()=>Ct.markForCheck())}get periodButtonText(){return"month"==this.calendar.currentView?this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase():"year"==this.calendar.currentView?this._dateAdapter.getYearName(this.calendar.activeDate):this._intl.formatYearRange(...this._formatMinAndMaxYearLabels())}get periodButtonDescription(){return"month"==this.calendar.currentView?this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase():"year"==this.calendar.currentView?this._dateAdapter.getYearName(this.calendar.activeDate):this._intl.formatYearRangeLabel(...this._formatMinAndMaxYearLabels())}get periodButtonLabel(){return"month"==this.calendar.currentView?this._intl.switchToMultiYearViewLabel:this._intl.switchToMonthViewLabel}get prevButtonLabel(){return{month:this._intl.prevMonthLabel,year:this._intl.prevYearLabel,"multi-year":this._intl.prevMultiYearLabel}[this.calendar.currentView]}get nextButtonLabel(){return{month:this._intl.nextMonthLabel,year:this._intl.nextYearLabel,"multi-year":this._intl.nextMultiYearLabel}[this.calendar.currentView]}currentPeriodClicked(){this.calendar.currentView="month"==this.calendar.currentView?"multi-year":"month"}previousClicked(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,-1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?-1:-At)}nextClicked(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?1:At)}previousEnabled(){return!this.calendar.minDate||!this.calendar.minDate||!this._isSameView(this.calendar.activeDate,this.calendar.minDate)}nextEnabled(){return!this.calendar.maxDate||!this._isSameView(this.calendar.activeDate,this.calendar.maxDate)}_isSameView(c,j){return"month"==this.calendar.currentView?this._dateAdapter.getYear(c)==this._dateAdapter.getYear(j)&&this._dateAdapter.getMonth(c)==this._dateAdapter.getMonth(j):"year"==this.calendar.currentView?this._dateAdapter.getYear(c)==this._dateAdapter.getYear(j):Ft(this._dateAdapter,c,j,this.calendar.minDate,this.calendar.maxDate)}_formatMinAndMaxYearLabels(){const j=this._dateAdapter.getYear(this.calendar.activeDate)-Pt(this._dateAdapter,this.calendar.activeDate,this.calendar.minDate,this.calendar.maxDate),R=j+At-1;return[this._dateAdapter.getYearName(this._dateAdapter.createDate(j,0,1)),this._dateAdapter.getYearName(this._dateAdapter.createDate(R,0,1))]}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(J),m.rXU((0,m.Rfq)(()=>re)),m.rXU(i.MJ,8),m.rXU(i.de,8),m.rXU(m.gRc))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-calendar-header"]],exportAs:["matCalendarHeader"],ngContentSelectors:A,decls:13,vars:11,consts:[[1,"mat-calendar-header"],[1,"mat-calendar-control
1s"],["mat-button","","type","button","aria-live","polite",1,"mat-calendar-period-button",3,"click"],["aria-hidden","true"],["viewBox","0 0 10 5","focusable","false","aria-hidden","true",1,"mat-calendar-arrow"],["points","0,0 5,5 10,0"],[1,"mat-calendar-spacer"],["mat-icon-button","","type","button",1,"mat-calendar-previous-button",3,"click","disabled"],["mat-icon-button","","type","button",1,"mat-calendar-next-button",3,"click","disabled"],[1,"mat-calendar-hidden-label",3,"id"]],template:function(j,R){1&j&&(m.NAR(),m.j41(0,"div",0)(1,"div",1)(2,"button",2),m.bIt("click",function(){return R.currentPeriodClicked()}),m.j41(3,"span",3),m.EFF(4),m.k0s(),m.qSk(),m.j41(5,"svg",4),m.nrm(6,"polygon",5),m.k0s()(),m.joV(),m.nrm(7,"div",6),m.SdG(8),m.j41(9,"button",7),m.bIt("click",function(){return R.previousClicked()}),m.k0s(),m.j41(10,"button",8),m.bIt("click",function(){return R.nextClicked()}),m.k0s()()(),m.j41(11,"label",9),m.EFF(12),m.k0s()),2&j&&(m.R7$(2),m.BMQ("aria-label",R.periodButtonLabel)("aria-describedby",R._periodButtonLabelId),m.R7$(2),m.JRh(R.periodButtonText),m.R7$(),m.AVh("mat-calendar-invert","month"!==R.calendar.currentView),m.R7$(4),m.Y8G("disabled",!R.previousEnabled()),m.BMQ("aria-label",R.prevButtonLabel),m.R7$(),m.Y8G("disabled",!R.nextEnabled()),m.BMQ("aria-label",R.nextButtonLabel),m.R7$(),m.Y8G("id",R._periodButtonLabelId),m.R7$(),m.JRh(R.periodButtonDescription))},dependencies:[mt.$z,mt.iY],encapsulation:2,changeDetection:0})}return pt})(),re=(()=>{class pt{get startAt(){return this._startAt}set startAt(c){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get selected(){return this._selected}set selected(c){this._selected=c instanceof _t?c:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get minDate(){return this._minDate}set minDate(c){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get maxDate(){return this._maxDate}set maxDate(c){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get activeDate(){return this._clampedActiveDate}set activeDate(c){this._clampedActiveDate=this._dateAdapter.clampDate(c,this.minDate,this.maxDate),this.stateChanges.next(),this._changeDetectorRef.markForCheck()}get currentView(){return this._currentView}set currentView(c){const j=this._currentView!==c?c:null;this._currentView=c,this._moveFocusOnNextTick=!0,this._changeDetectorRef.markForCheck(),j&&this.viewChanged.emit(j)}constructor(c,j,R,rt){this._dateAdapter=j,this._dateFormats=R,this._changeDetectorRef=rt,this._moveFocusOnNextTick=!1,this.startView="month",this.selectedChange=new m.bkB,this.yearSelected=new m.bkB,this.monthSelected=new m.bkB,this.viewChanged=new m.bkB(!0),this._userSelection=new m.bkB,this._userDragDrop=new m.bkB,this._activeDrag=null,this.stateChanges=new ut.B,this._intlChanges=c.changes.subscribe(()=>{rt.markForCheck(),this.stateChanges.next()})}ngAfterContentInit(){this._calendarHeaderPortal=new q.A8(this.headerComponent||te),this.activeDate=this.startAt||this._dateAdapter.today(),this._currentView=this.startView}ngAfterViewChecked(){this._moveFocusOnNextTick&&(this._moveFocusOnNextTick=!1,this.focusActiveCell())}ngOnDestroy(){this._intlChanges.unsubscribe(),this.stateChanges.complete()}ngOnChanges(c){const j=c.minDate&&!this._dateAdapter.sameDate(c.minDate.previousValue,c.minDate.currentValue)?c.minDate:void 0,R=c.maxDate&&!this._dateAdapter.sameDate(c.maxDate.previousValue,c.maxDate.currentValue)?c.maxDate:void 0,rt=j||R||c.dateFilter;if(rt&&!rt.firstChange){const Ct=this._getCurrentViewComponent();Ct&&(this._changeDetectorRef.detectChanges(),Ct._init())}this.stateChanges.next()}focusActiveCell(){this._getCurrentViewComponent()._focusActiveCell(!1)}updateTodaysDate(){this._getCurrentViewComponent()._init()}_dateSelected(c){const j=c.value;(this.selected instanceof _t||j&&!this._dateAdapter.sameDate(j,this.selected))&&this.selectedChange.emit(j),this._userSelection.emit(c)}_yearSelectedInMultiYearView(c){this.yearSelected.emit(c)}_monthSelectedInYearView(c){this.monthSelected.emit(c)}_goToDateInView(c,j){this.activeDate=c,this.currentView=j}_dragStarted(c){this._activeDrag=c}_dragEnded(c){this._activeDrag&&(c.value&&this._userDragDrop.emit(c),this._activeDrag=null)}_getCurrentViewComponent(){return this.monthView||this.yearView||this.multiYearView}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(J),m.rXU(i.MJ,8),m.rXU(i.de,8),m.rXU(m.gRc))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-calendar"]],viewQuery:function(j,R){if(1&j&&(m.GBs(Bt,5),m.GBs(Yt,5),m.GBs(Nt,5)),2&j){let rt;m.mGM(rt=m.lsd())&&(R.monthView=rt.first),m.mGM(rt=m.lsd())&&(R.yearView=rt.first),m.mGM(rt=m.lsd())&&(R.multiYearView=rt.first)}},hostAttrs:[1,"mat-calendar"],inputs:{headerComponent:"headerComponent",startAt:"startAt",startView:"startView",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName"},outputs:{selectedChange:"selectedChange",yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",_userSelection:"_userSelection",_userDragDrop:"_userDragDrop"},exportAs:["matCalendar"],features:[m.Jv_([tt]),m.OA$],decls:5,vars:5,consts:[[3,"cdkPortalOutlet"],["cdkMonitorSubtreeFocus","","tabindex","-1",1,"mat-calendar-content",3,"ngSwitch"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","activeDrag","activeDateChange","_userSelection","dragStarted","dragEnded",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","monthSelected","selectedChange",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","yearSelected","selectedChange",4,"ngSwitchCase"],[3,"activeDateChange","_userSelection","dragStarted","dragEnded","activeDate","selected","dateFilter","maxDate","minDate","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","activeDrag"],[3,"activeDateChange","monthSelected","selectedChange","activeDate","selected","dateFilter","maxDate","minDate","dateClass"],[3,"activeDateChange","yearSelected","selectedChange","activeDate","selected","dateFilter","maxDate","minDate","dateClass"]],template:function(j,R){1&j&&(m.DNE(0,o,0,0,"ng-template",0),m.j41(1,"div",1),m.DNE(2,r,1,11,"mat-month-view",2)(3,p,1,6,"mat-year-view",3)(4,g,1,6,"mat-multi-year-view",4),m.k0s()),2&j&&(m.Y8G("cdkPortalOutlet",R._calendarHeaderPortal),m.R7$(),m.Y8G("ngSwitch",R.currentView),m.R7$(),m.Y8G("ngSwitchCase","month"),m.R7$(),m.Y8G("ngSwitchCase","year"),m.R7$(),m.Y8G("ngSwitchCase","multi-year"))},dependencies:[Dt.ux,Dt.e1,at.vR,q.I3,Bt,Yt,Nt],styles:['.mat-calendar{display:block}.mat-calendar-header{padding:8px 8px 0 8px}.mat-calendar-content{padding:0 8px 8px 8px;outline:none}
1.mat-calendar-controls{display:flex;align-items:center;margin:5% calc(4.7142857143% - 16px)}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0;margin:0 8px}.mat-calendar-arrow{display:inline-block;width:10px;height:5px;margin:0 0 0 5px;vertical-align:middle}.mat-calendar-arrow.mat-calendar-invert{transform:rotate(180deg)}[dir=rtl] .mat-calendar-arrow{margin:0 5px 0 0}.cdk-high-contrast-active .mat-calendar-arrow{fill:CanvasText}.mat-calendar-previous-button,.mat-calendar-next-button{position:relative}.mat-calendar-previous-button::after,.mat-calendar-next-button::after{top:0;left:0;right:0;bottom:0;position:absolute;content:"";margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .mat-calendar-previous-button,[dir=rtl] .mat-calendar-next-button{transform:rotate(180deg)}.mat-calendar-previous-button::after{border-left-width:2px;transform:translateX(2px) rotate(-45deg)}.mat-calendar-next-button::after{border-right-width:2px;transform:translateX(-2px) rotate(45deg)}.mat-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.mat-calendar-table-header th{text-align:center;padding:0 0 8px 0}.mat-calendar-table-header-divider{position:relative;height:1px}.mat-calendar-table-header-divider::after{content:"";position:absolute;top:0;left:-8px;right:-8px;height:1px}.mat-calendar-body-cell-content::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.mat-calendar-body-cell:focus .mat-focus-indicator::before{content:""}.mat-calendar-hidden-label{display:none}'],encapsulation:2,changeDetection:0})}return pt})();const Wt={transformPanel:(0,D.hZ)("transformPanel",[(0,D.kY)("void => enter-dropdown",(0,D.i0)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,D.i7)([(0,D.iF)({opacity:0,transform:"scale(1, 0.8)"}),(0,D.iF)({opacity:1,transform:"scale(1, 1)"})]))),(0,D.kY)("void => enter-dialog",(0,D.i0)("150ms cubic-bezier(0, 0, 0.2, 1)",(0,D.i7)([(0,D.iF)({opacity:0,transform:"scale(0.7)"}),(0,D.iF)({transform:"none",opacity:1})]))),(0,D.kY)("* => void",(0,D.i0)("100ms linear",(0,D.iF)({opacity:0})))]),fadeInCalendar:(0,D.hZ)("fadeInCalendar",[(0,D.wk)("void",(0,D.iF)({opacity:0})),(0,D.wk)("enter",(0,D.iF)({opacity:1})),(0,D.kY)("void => *",(0,D.i0)("120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"))])};let be=0;const pe=new m.nKC("mat-datepicker-scroll-strategy"),qt={provide:pe,deps:[Vt.hJ],useFactory:function Oe(pt){return()=>pt.scrollStrategies.reposition()}},Kt=(0,i.Zc)(class{constructor(pt){this._elementRef=pt}});let le=(()=>{class pt extends Kt{constructor(c,j,R,rt,Ct,Gt){super(c),this._changeDetectorRef=j,this._globalModel=R,this._dateAdapter=rt,this._rangeSelectionStrategy=Ct,this._subscriptions=new kt.yU,this._animationDone=new ut.B,this._isAnimating=!1,this._actionsPortal=null,this._closeButtonText=Gt.closeCalendarLabel}ngOnInit(){this._animationState=this.datepicker.touchUi?"enter-dialog":"enter-dropdown"}ngAfterViewInit(){this._subscriptions.add(this.datepicker.stateChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})),this._calendar.focusActiveCell()}ngOnDestroy(){this._subscriptions.unsubscribe(),this._animationDone.complete()}_handleUserSelection(c){const j=this._model.selection,R=c.value,rt=j instanceof _t;if(rt&&this._rangeSelectionStrategy){const Ct=this._rangeSelectionStrategy.selectionFinished(R,j,c.event);this._model.updateSelection(Ct,this)}else R&&(rt||!this._dateAdapter.sameDate(R,j))&&this._model.add(R);(!this._model||this._model.isComplete())&&!this._actionsPortal&&this.datepicker.close()}_handleUserDragDrop(c){this._model.updateSelection(c.value,this)}_startExitAnimation(){this._animationState="void",this._changeDetectorRef.markForCheck()}_handleAnimationEvent(c){this._isAnimating="start"===c.phaseName,this._isAnimating||this._animationDone.next()}_getSelected(){return this._model.selection}_applyPendingSelection(){this._model!==this._globalModel&&this._globalModel.updateSelection(this._model.selection,this)}_assignActions(c,j){this._model=c?this._globalModel.clone():this._globalModel,this._actionsPortal=c,j&&this._changeDetectorRef.detectChanges()}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(m.aKT),m.rXU(m.gRc),m.rXU(vt),m.rXU(i.MJ),m.rXU(lt,8),m.rXU(J))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-datepicker-content"]],viewQuery:function(j,R){if(1&j&&m.GBs(re,5),2&j){let rt;m.mGM(rt=m.lsd())&&(R._calendar=rt.first)}},hostAttrs:[1,"mat-datepicker-content"],hostVars:3,hostBindings:function(j,R){1&j&&m.Kam("@transformPanel.start",function(Ct){return R._handleAnimationEvent(Ct)})("@transformPanel.done",function(Ct){return R._handleAnimationEvent(Ct)}),2&j&&(m.zvX("@transformPanel",R._animationState),m.AVh("mat-datepicker-content-touch",R.datepicker.touchUi))},inputs:{color:"color"},exportAs:["matDatepickerContent"],features:[m.Vt3],decls:5,vars:26,consts:[["cdkTrapFocus","","role","dialog",1,"mat-datepicker-content-container"],[3,"yearSelected","monthSelected","viewChanged","_userSelection","_userDragDrop","id","ngClass","startAt","startView","minDate","maxDate","dateFilter","headerComponent","selected","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName"],[3,"cdkPortalOutlet"],["type","button","mat-raised-button","",1,"mat-datepicker-close-button",3,"focus","blur","click","color"]],template:function(j,R){if(1&j&&(m.j41(0,"div",0)(1,"mat-calendar",1),m.bIt("yearSelected",function(Ct){return R.datepicker._selectYear(Ct)})("monthSelected",function(Ct){return R.datepicker._selectMonth(Ct)})("viewChanged",function(Ct){return R.datepicker._viewChanged(Ct)})("_userSelection",function(Ct){return R._handleUserSelection(Ct)})("_userDragDrop",function(Ct){return R._handleUserDragDrop(Ct)}),m.k0s(),m.DNE(2,w,0,0,"ng-template",2),m.j41(3,"button",3),m.bIt("focus",function(){return R._closeButtonF
1ocused=!0})("blur",function(){return R._closeButtonFocused=!1})("click",function(){return R.datepicker.close()}),m.EFF(4),m.k0s()()),2&j){let rt;m.AVh("mat-datepicker-content-container-with-custom-header",R.datepicker.calendarHeaderComponent)("mat-datepicker-content-container-with-actions",R._actionsPortal),m.BMQ("aria-modal",!0)("aria-labelledby",null!==(rt=R._dialogLabelId)&&void 0!==rt?rt:void 0),m.R7$(),m.Y8G("id",R.datepicker.id)("ngClass",R.datepicker.panelClass)("startAt",R.datepicker.startAt)("startView",R.datepicker.startView)("minDate",R.datepicker._getMinDate())("maxDate",R.datepicker._getMaxDate())("dateFilter",R.datepicker._getDateFilter())("headerComponent",R.datepicker.calendarHeaderComponent)("selected",R._getSelected())("dateClass",R.datepicker.dateClass)("comparisonStart",R.comparisonStart)("comparisonEnd",R.comparisonEnd)("@fadeInCalendar","enter")("startDateAccessibleName",R.startDateAccessibleName)("endDateAccessibleName",R.endDateAccessibleName),m.R7$(),m.Y8G("cdkPortalOutlet",R._actionsPortal),m.R7$(),m.AVh("cdk-visually-hidden",!R._closeButtonFocused),m.Y8G("color",R.color||"primary"),m.R7$(),m.JRh(R._closeButtonText)}},dependencies:[Dt.YU,mt.$z,at.kB,q.I3,re],styles:[".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}"],encapsulation:2,data:{animation:[Wt.transformPanel,Wt.fadeInCalendar]},changeDetection:0})}return pt})(),Ie=(()=>{class pt{get startAt(){return this._startAt||(this.datepickerInput?this.datepickerInput.getStartValue():null)}set startAt(c){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c))}get color(){return this._color||(this.datepickerInput?this.datepickerInput.getThemePalette():void 0)}set color(c){this._color=c}get touchUi(){return this._touchUi}set touchUi(c){this._touchUi=(0,T.he)(c)}get disabled(){return void 0===this._disabled&&this.datepickerInput?this.datepickerInput.disabled:!!this._disabled}set disabled(c){const j=(0,T.he)(c);j!==this._disabled&&(this._disabled=j,this.stateChanges.next(void 0))}get restoreFocus(){return this._restoreFocus}set restoreFocus(c){this._restoreFocus=(0,T.he)(c)}get panelClass(){return this._panelClass}set panelClass(c){this._panelClass=(0,T.cc)(c)}get opened(){return this._opened}set opened(c){(0,T.he)(c)?this.open():this.close()}_getMinDate(){return this.datepickerInput&&this.datepickerInput.min}_getMaxDate(){return this.datepickerInput&&this.datepickerInput.max}_getDateFilter(){return this.datepickerInput&&this.datepickerInput.dateFilter}constructor(c,j,R,rt,Ct,Gt,_e){this._overlay=c,this._ngZone=j,this._viewContainerRef=R,this._dateAdapter=Ct,this._dir=Gt,this._model=_e,this._inputStateChanges=kt.yU.EMPTY,this._document=(0,m.WQX)(Dt.qQ),this.startView="month",this._touchUi=!1,this.xPosition="start",this.yPosition="below",this._restoreFocus=!0,this.yearSelected=new m.bkB,this.monthSelected=new m.bkB,this.viewChanged=new m.bkB(!0),this.openedStream=new m.bkB,this.closedStream
1=new m.bkB,this._opened=!1,this.id="mat-datepicker-"+be++,this._focusedElementBeforeOpen=null,this._backdropHarnessClass=`${this.id}-backdrop`,this.stateChanges=new ut.B,this._scrollStrategy=rt}ngOnChanges(c){const j=c.xPosition||c.yPosition;if(j&&!j.firstChange&&this._overlayRef){const R=this._overlayRef.getConfig().positionStrategy;R instanceof Vt.rW&&(this._setConnectedPositions(R),this.opened&&this._overlayRef.updatePosition())}this.stateChanges.next(void 0)}ngOnDestroy(){this._destroyOverlay(),this.close(),this._inputStateChanges.unsubscribe(),this.stateChanges.complete()}select(c){this._model.add(c)}_selectYear(c){this.yearSelected.emit(c)}_selectMonth(c){this.monthSelected.emit(c)}_viewChanged(c){this.viewChanged.emit(c)}registerInput(c){return this._inputStateChanges.unsubscribe(),this.datepickerInput=c,this._inputStateChanges=c.stateChanges.subscribe(()=>this.stateChanges.next(void 0)),this._model}registerActions(c){this._actionsPortal=c,this._componentRef?.instance._assignActions(c,!0)}removeActions(c){c===this._actionsPortal&&(this._actionsPortal=null,this._componentRef?.instance._assignActions(null,!0))}open(){this._opened||this.disabled||this._componentRef?.instance._isAnimating||(this._focusedElementBeforeOpen=(0,P.vc)(),this._openOverlay(),this._opened=!0,this.openedStream.emit())}close(){if(!this._opened||this._componentRef?.instance._isAnimating)return;const c=this._restoreFocus&&this._focusedElementBeforeOpen&&"function"==typeof this._focusedElementBeforeOpen.focus,j=()=>{this._opened&&(this._opened=!1,this.closedStream.emit())};if(this._componentRef){const{instance:R,location:rt}=this._componentRef;R._startExitAnimation(),R._animationDone.pipe((0,Q.s)(1)).subscribe(()=>{const Ct=this._document.activeElement;c&&(!Ct||Ct===this._document.activeElement||rt.nativeElement.contains(Ct))&&this._focusedElementBeforeOpen.focus(),this._focusedElementBeforeOpen=null,this._destroyOverlay()})}c?setTimeout(j):j()}_applyPendingSelection(){this._componentRef?.instance?._applyPendingSelection()}_forwardContentValues(c){c.datepicker=this,c.color=this.color,c._dialogLabelId=this.datepickerInput.getOverlayLabelId(),c._assignActions(this._actionsPortal,!1)}_openOverlay(){this._destroyOverlay();const c=this.touchUi,j=new q.A8(le,this._viewContainerRef),R=this._overlayRef=this._overlay.create(new Vt.rR({positionStrategy:c?this._getDialogStrategy():this._getDropdownStrategy(),hasBackdrop:!0,backdropClass:[c?"cdk-overlay-dark-backdrop":"mat-overlay-transparent-backdrop",this._backdropHarnessClass],direction:this._dir,scrollStrategy:c?this._overlay.scrollStrategies.block():this._scrollStrategy(),panelClass:"mat-datepicker-"+(c?"dialog":"popup")}));this._getCloseStream(R).subscribe(rt=>{rt&&rt.preventDefault(),this.close()}),R.keydownEvents().subscribe(rt=>{const Ct=rt.keyCode;(Ct===Z.i7||Ct===Z.n6||Ct===Z.UQ||Ct===Z.LE||Ct===Z.w_||Ct===Z.dB)&&rt.preventDefault()}),this._componentRef=R.attach(j),this._forwardContentValues(this._componentRef.instance),c||this._ngZone.onStable.pipe((0,Q.s)(1)).subscribe(()=>R.updatePosition())}_destroyOverlay(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=this._componentRef=null)}_getDialogStrategy(){return this._overlay.position().global().centerHorizontally().centerVertically()}_getDropdownStrategy(){const c=this._overlay.position().flexibleConnectedTo(this.datepickerInput.getConnectedOverlayOrigin()).withTransformOriginOn(".mat-datepicker-content").withFlexibleDimensions(!1).withViewportMargin(8).withLockedPosition();return this._setConnectedPositions(c)}_setConnectedPositions(c){const j="end"===this.xPosition?"end":"start",R="start"===j?"end":"start",rt="above"===this.yPosition?"bottom":"top",Ct="top"===rt?"bottom":"top";return c.withPositions([{originX:j,originY:Ct,overlayX:j,overlayY:rt},{originX:j,originY:rt,overlayX:j,overlayY:Ct},{originX:R,originY:Ct,overlayX:R,overlayY:rt},{originX:R,originY:rt,overlayX:R,overlayY:Ct}])}_getCloseStream(c){const j=["ctrlKey","shiftKey","metaKey"];return(0,gt.h)(c.backdropClick(),c.detachments(),c.keydownEvents().pipe((0,V.p)(R=>R.keyCode===Z._f&&!(0,Z.rp)(R)||this.datepickerInput&&(0,Z.rp)(R,"altKey")&&R.keyCode===Z.i7&&j.every(rt=>!(0,Z.rp)(R,rt)))))}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(Vt.hJ),m.rXU(m.
1SKi),m.rXU(m.c1b),m.rXU(pe),m.rXU(i.MJ,8),m.rXU($.dS,8),m.rXU(vt))};static#e=this.\u0275dir=m.FsC({type:pt,inputs:{calendarHeaderComponent:"calendarHeaderComponent",startAt:"startAt",startView:"startView",color:"color",touchUi:"touchUi",disabled:"disabled",xPosition:"xPosition",yPosition:"yPosition",restoreFocus:"restoreFocus",dateClass:"dateClass",panelClass:"panelClass",opened:"opened"},outputs:{yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",openedStream:"opened",closedStream:"closed"},features:[m.OA$]})}return pt})(),De=(()=>{class pt extends Ie{static#t=this.\u0275fac=(()=>{let c;return function(R){return(c||(c=m.xGo(pt)))(R||pt)}})();static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-datepicker"]],exportAs:["matDatepicker"],features:[m.Jv_([tt,{provide:Ie,useExisting:pt}]),m.Vt3],decls:0,vars:0,template:function(j,R){},encapsulation:2,changeDetection:0})}return pt})();class ve{constructor(Lt,c){this.target=Lt,this.targetElement=c,this.value=this.target.value}}let xe=(()=>{class pt{get value(){return this._model?this._getValueFromModel(this._model.selection):this._pendingValue}set value(c){this._assignValueProgrammatically(c)}get disabled(){return!!this._disabled||this._parentDisabled()}set disabled(c){const j=(0,T.he)(c),R=this._elementRef.nativeElement;this._disabled!==j&&(this._disabled=j,this.stateChanges.next(void 0)),j&&this._isInitialized&&R.blur&&R.blur()}_getValidators(){return[this._parseValidator,this._minValidator,this._maxValidator,this._filterValidator]}_registerModel(c){this._model=c,this._valueChangesSubscription.unsubscribe(),this._pendingValue&&this._assignValue(this._pendingValue),this._valueChangesSubscription=this._model.selectionChanged.subscribe(j=>{if(this._shouldHandleChangeEvent(j)){const R=this._getValueFromModel(j.selection);this._lastValueValid=this._isValidValue(R),this._cvaOnChange(R),this._onTouched(),this._formatValue(R),this.dateInput.emit(new ve(this,this._elementRef.nativeElement)),this.dateChange.emit(new ve(this,this._elementRef.nativeElement))}})}constructor(c,j,R){this._elementRef=c,this._dateAdapter=j,this._dateFormats=R,this.dateChange=new m.bkB,this.dateInput=new m.bkB,this.stateChanges=new ut.B,this._onTouched=()=>{},this._validatorOnChange=()=>{},this._cvaOnChange=()=>{},this._valueChangesSubscription=kt.yU.EMPTY,this._localeSubscription=kt.yU.EMPTY,this._parseValidator=()=>this._lastValueValid?null:{matDatepickerParse:{text:this._elementRef.nativeElement.value}},this._filterValidator=rt=>{const Ct=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(rt.value));return!Ct||this._matchesFilter(Ct)?null:{matDatepickerFilter:!0}},this._minValidator=rt=>{const Ct=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(rt.value)),Gt=this._getMinDate();return!Gt||!Ct||this._dateAdapter.compareDate(Gt,Ct)<=0?null:{matDatepickerMin:{min:Gt,actual:Ct}}},this._maxValidator=rt=>{const Ct=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(rt.value)),Gt=this._getMaxDate();return!Gt||!Ct||this._dateAdapter.compareDate(Gt,Ct)>=0?null:{matDatepickerMax:{max:Gt,actual:Ct}}},this._lastValueValid=!1,this._localeSubscription=j.localeChanges.subscribe(()=>{this._assignValueProgrammatically(this.value)})}ngAfterViewInit(){this._isInitialized=!0}ngOnChanges(c){(function ye(pt,Lt){const c=Object.keys(pt);for(let j of c){const{previousValue:R,currentValue:rt}=pt[j];if(!Lt.isDateInstance(R)||!Lt.isDateInstance(rt))return!0;if(!Lt.sameDate(R,rt))return!0}return!1})(c,this._dateAdapter)&&this.stateChanges.next(void 0)}ngOnDestroy(){this._valueChangesSubscription.unsubscribe(),this._localeSubscription.unsubscribe(),this.stateChanges.complete()}registerOnValidatorChange(c){this._validatorOnChange=c}validate(c){return this._validator?this._validator(c):null}writeValue(c){this._assignValueProgrammatically(c)}registerOnChange(c){this._cvaOnChange=c}registerOnTouched(c){this._onTouched=c}setDisabledState(c){this.disabled=c}_onKeydown(c){(0,Z.rp)(c,"altKey")&&c.keyCode===Z.n6&&["ctrlKey","shiftKey","metaKey"].every(rt=>!(0,Z.rp)(c,rt))&&!this._elementRef.nativeElement.readOnly&&(this._openPopup(),c.preventDefault())}_onInput(c){const j=this._lastValueValid;let R=this._dateAdapter.parse(c,this._dateFormats.parse.dateInput);this._lastValueValid=this._isValidValue(R),R=this._dateAdapter.getValidDateOrNull(R);const rt=!this._dateAdapter.sameDate(R,this.value);!R||rt?this._cvaOnChange(R):(c&&!this.value&&this._cvaOnChange(R),j!==this._lastValueValid&&this._val
1idatorOnChange()),rt&&(this._assignValue(R),this.dateInput.emit(new ve(this,this._elementRef.nativeElement)))}_onChange(){this.dateChange.emit(new ve(this,this._elementRef.nativeElement))}_onBlur(){this.value&&this._formatValue(this.value),this._onTouched()}_formatValue(c){this._elementRef.nativeElement.value=null!=c?this._dateAdapter.format(c,this._dateFormats.display.dateInput):""}_assignValue(c){this._model?(this._assignValueToModel(c),this._pendingValue=null):this._pendingValue=c}_isValidValue(c){return!c||this._dateAdapter.isValid(c)}_parentDisabled(){return!1}_assignValueProgrammatically(c){c=this._dateAdapter.deserialize(c),this._lastValueValid=this._isValidValue(c),c=this._dateAdapter.getValidDateOrNull(c),this._assignValue(c),this._formatValue(c)}_matchesFilter(c){const j=this._getDateFilter();return!j||j(c)}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(m.aKT),m.rXU(i.MJ,8),m.rXU(i.de,8))};static#e=this.\u0275dir=m.FsC({type:pt,inputs:{value:"value",disabled:"disabled"},outputs:{dateChange:"dateChange",dateInput:"dateInput"},features:[m.OA$]})}return pt})();const Pe={provide:E.kq,useExisting:(0,m.Rfq)(()=>It),multi:!0},we={provide:E.cz,useExisting:(0,m.Rfq)(()=>It),multi:!0};let It=(()=>{class pt extends xe{set matDatepicker(c){c&&(this._datepicker=c,this._closedSubscription=c.closedStream.subscribe(()=>this._onTouched()),this._registerModel(c.registerInput(this)))}get min(){return this._min}set min(c){const j=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c));this._dateAdapter.sameDate(j,this._min)||(this._min=j,this._validatorOnChange())}get max(){return this._max}set max(c){const j=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(c));this._dateAdapter.sameDate(j,this._max)||(this._max=j,this._validatorOnChange())}get dateFilter(){return this._dateFilter}set dateFilter(c){const j=this._matchesFilter(this.value);this._dateFilter=c,this._matchesFilter(this.value)!==j&&this._validatorOnChange()}constructor(c,j,R,rt){super(c,j,R),this._formField=rt,this._closedSubscription=kt.yU.EMPTY,this._validator=E.k0.compose(super._getValidators())}getConnectedOverlayOrigin(){return this._formField?this._formField.getConnectedOverlayOrigin():this._elementRef}getOverlayLabelId(){return this._formField?this._formField.getLabelId():this._elementRef.nativeElement.getAttribute("aria-labelledby")}getThemePalette(){return this._formField?this._formField.color:void 0}getStartValue(){return this.value}ngOnDestroy(){super.ngOnDestroy(),this._closedSubscription.unsubscribe()}_openPopup(){this._datepicker&&this._datepicker.open()}_getValueFromModel(c){return c}_assignValueToModel(c){this._model&&this._model.updateSelection(c,this)}_getMinDate(){return this._min}_getMaxDate(){return this._max}_getDateFilter(){return this._dateFilter}_shouldHandleChangeEvent(c){return c.source!==this}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(m.aKT),m.rXU(i.MJ,8),m.rXU(i.de,8),m.rXU(b.xb,8))};static#e=this.\u0275dir=m.FsC({type:pt,selectors:[["input","matDatepicker",""]],hostAttrs:[1,"mat-datepicker-input"],hostVars:6,hostBindings:function(j,R){1&j&&m.bIt("input",function(Ct){return R._onInput(Ct.target.value)})("change",function(){return R._onChange()})("blur",function(){return R._onBlur()})("keydown",function(Ct){return R._onKeydown(Ct)}),2&j&&(m.Mr5("disabled",R.disabled),m.BMQ("aria-haspopup",R._datepicker?"dialog":null)("aria-owns",(null==R._datepicker?null:R._datepicker.opened)&&R._datepicker.id||null)("min",R.min?R._dateAdapter.toIso8601(R.min):null)("max",R.max?R._dateAdapter.toIso8601(R.max):null)("data-mat-calendar",R._datepicker?R._datepicker.id:null))},inputs:{matDatepicker:"matDatepicker",min:"min",max:"max",dateFilter:[m.Mj6.None,"matDatepickerFilter","dateFilter"]},exportAs:["matDatepickerInput"],features:[m.Jv_([Pe,we,{provide:d.Oh,useExisting:pt}]),m.Vt3]})}return pt})(),Qt=(()=>{class pt{static#t=this.\u0275fac=function(j){return new(j||pt)};static#e=this.\u0275dir=m.FsC({type:pt,selectors:[["","matDatepickerToggleIcon",""]]})}return pt})(),$t=(()=>{class pt{get disabled(){return void 0===this._disabled&&this.datepicker?this.datepicker.disabled:!!this._disabled}set disabled(c){this._disabled=(0,T.he)(c)}constructor(c,j,R){this._intl=c,this._changeDetectorRef=j,this._stateChanges=kt.yU.EMPTY;const rt=Number(R);this.tabIndex=rt||0===rt?rt:null}ngOnChanges(c){c.datepicker&&this._watchStateChanges()}ngOnDestroy(){this._stateChanges.unsubscribe()}ngAfterContentInit(){this._watchStateChanges()}_open(c){this.datepicker&&!this.disabled&&(this.datepicker.open(),c.stopPropagation())}_watchStateChanges(){const c=this.datepicker?this.datepicker.stateChanges:(0,it.of)(),j=this.datepicker&&this.datepicker.datepickerInput?this.datepicker.datepickerInput.stateChanges:(0,it.of)(),R=this.datepicker?(0,gt.h)(this.datepicker.openedStream,this.datepicker.closedStream):(0,it.of)();this._stateChanges.unsubscribe(),this._stateChanges=(0,gt.h)(this._intl.changes,c,j,R).subscribe(()=>this._changeDetectorRef.markForCheck())}static#t=this.\u0275fac=function(j){return new(j||pt)(m.rXU(J),m.rXU(m.gRc),m.kS0("tabindex"))};static#e=this.\u0275cmp=m.VBU({type:pt,selectors:[["mat-datepicker-toggle"]],c
1ontentQueries:function(j,R,rt){if(1&j&&m.wni(rt,Qt,5),2&j){let Ct;m.mGM(Ct=m.lsd())&&(R._customIcon=Ct.first)}},viewQuery:function(j,R){if(1&j&&m.GBs(O,5),2&j){let rt;m.mGM(rt=m.lsd())&&(R._button=rt.first)}},hostAttrs:[1,"mat-datepicker-toggle"],hostVars:8,hostBindings:function(j,R){1&j&&m.bIt("click",function(Ct){return R._open(Ct)}),2&j&&(m.BMQ("tabindex",null)("data-mat-calendar",R.datepicker?R.datepicker.id:null),m.AVh("mat-datepicker-toggle-active",R.datepicker&&R.datepicker.opened)("mat-accent",R.datepicker&&"accent"===R.datepicker.color)("mat-warn",R.datepicker&&"warn"===R.datepicker.color))},inputs:{datepicker:[m.Mj6.None,"for","datepicker"],tabIndex:"tabIndex",ariaLabel:[m.Mj6.None,"aria-label","ariaLabel"],disabled:"disabled",disableRipple:"disableRipple"},exportAs:["matDatepickerToggle"],features:[m.OA$],ngContentSelectors:x,decls:4,vars:6,consts:[["button",""],["mat-icon-button","","type","button",3,"disabled","disableRipple"],["class","mat-datepicker-toggle-default-icon","viewBox","0 0 24 24","width","24px","height","24px","fill","currentColor","focusable","false","aria-hidden","true",4,"ngIf"],["viewBox","0 0 24 24","width","24px","height","24px","fill","currentColor","focusable","false","aria-hidden","true",1,"mat-datepicker-toggle-default-icon"],["d","M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z"]],template:function(j,R){1&j&&(m.NAR(N),m.j41(0,"button",1,0),m.DNE(2,z,2,0,"svg",2),m.SdG(3),m.k0s()),2&j&&(m.Y8G("disabled",R.disabled)("disableRipple",R.disableRipple),m.BMQ("aria-haspopup",R.datepicker?"dialog":null)("aria-label",R.ariaLabel||R._intl.openCalendarLabel)("tabindex",R.disabled?-1:R.tabIndex),m.R7$(2),m.Y8G("ngIf",!R._customIcon))},dependencies:[Dt.bT,mt.iY],styles:[".mat-datepicker-toggle{pointer-events:auto}.cdk-high-contrast-active .mat-datepicker-toggle-default-icon{color:CanvasText}"],encapsulation:2,changeDetection:0})}return pt})(),mi=(()=>{class pt{static#t=this.\u0275fac=function(j){return new(j||pt)};static#e=this.\u0275mod=m.$C({type:pt});static#i=this.\u0275inj=m.G2t({providers:[J,qt],imports:[Dt.MD,mt.Hl,Vt.z_,at.Pd,q.jc,i.yE,xt.Gj]})}return pt})()},9631:(ce,ie,St)=>{"use strict";St.d(ie,{Oh:()=>P,fg:()=>T,fS:()=>D});var at=St(4085),Vt=St(6860),q=St(4438),Dt=St(983),m=St(1413);const mt=(0,Vt.BQ)({passive:!0});let xt=(()=>{class E{constructor(d,v){this._platform=d,this._ngZone=v,this._monitoredElements=new Map}monitor(d){if(!this._platform.isBrowser)return Dt.w;const v=(0,at.i8)(d),W=this._monitoredElements.get(v);if(W)return W.subject;const I=new m.B,y="cdk-text-field-autofilled",l=M=>{"cdk-text-field-autofill-start"!==M.animationName||v.classList.contains(y)?"cdk-text-field-autofill-end"===M.animationName&&v.classList.contains(y)&&(v.classList.remove(y),this._ngZone.run(()=>I.next({target:M.target,isAutofilled:!1}))):(v.classList.add(y),this._ngZone.run(()=>I.next({target:M.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{v.addEventListener("animationstart",l,mt),v.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(v,{subject:I,unlisten:()=>{v.removeEventListener("animationstart",l,mt)}}),I}stopMonitoring(d){const v=(0,at.i8)(d),W=this._monitoredElements.get(v);W&&(W.unlisten(),W.subject.complete(),v.classList.remove("cdk-text-field-autofill-monitored"),v.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(v))}ngOnDestroy(){this._monitoredElements.forEach((d,v)=>this.stopMonitoring(v))}static#t=this.\u0275fac=function(v){return new(v||E)(q.KVO(Vt.OD),q.KVO(q.SKi))};static#e=this.\u0275prov=q.jDH({token:E,factory:E.\u0275fac,providedIn:"root"})}return E})(),kt=(()=>{class E{static#t=this.\u0275fac=function(v){return new(v||E)};static#e=this.\u0275mod=q.$C({type:E});static#i=this.\u0275inj=q.G2t({})}return E})();var gt=St(9417),it=St(6600),Z=St(2102);const P=new q.nKC("MAT_INPUT_VALUE_ACCESSOR"),Q=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let G=0;const V=(0,it.J8)(class{constructor(E,b,d,v){this._defaultErrorStateMatcher=E,this._parentForm=b,this._parentFormGroup=d,this.ngControl=v,this.stateChanges=new m.B}});let T=(()=>{class E extends V{get disabled(){return this._disabled}set disabled(d){this._disabled=(0,at.he)(d),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(d){this._id=d||this._uid}get required(){return this._required??this.ngControl?.control?.hasValidator(gt.k0.required)??!1}set required(d){this._required=(0,at.he)(d)}get type(){return this._type}
1set type(d){this._type=d||"text",this._validateType(),!this._isTextarea&&(0,Vt.MU)().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(d){d!==this.value&&(this._inputValueAccessor.value=d,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(d){this._readonly=(0,at.he)(d)}constructor(d,v,W,I,y,l,M,A,o,r){super(l,I,y,W),this._elementRef=d,this._platform=v,this._autofillMonitor=A,this._formField=r,this._uid="mat-input-"+G++,this.focused=!1,this.stateChanges=new m.B,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(w=>(0,Vt.MU)().has(w)),this._iOSKeyupListener=w=>{const O=w.target;!O.value&&0===O.selectionStart&&0===O.selectionEnd&&(O.setSelectionRange(1,1),O.setSelectionRange(0,0))};const p=this._elementRef.nativeElement,g=p.nodeName.toLowerCase();this._inputValueAccessor=M||p,this._previousNativeValue=this.value,this.id=this.id,v.IOS&&o.runOutsideAngular(()=>{d.nativeElement.addEventListener("keyup",this._iOSKeyupListener)}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===g,this._isTextarea="textarea"===g,this._isInFormField=!!r,this._isNativeSelect&&(this.controlType=p.multiple?"mat-native-select-multiple":"mat-native-select")}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(d=>{this.autofilled=d.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._platform.IOS&&this._elementRef.nativeElement.removeEventListener("keyup",this._iOSKeyupListener)}ngDoCheck(){this.ngControl&&(this.updateErrorState(),null!==this.ngControl.disabled&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(d){this._elementRef.nativeElement.focus(d)}_focusChanged(d){d!==this.focused&&(this.focused=d,this.stateChanges.next())}_onInput(){}_dirtyCheckNativeValue(){const d=this._elementRef.nativeElement.value;this._previousNativeValue!==d&&(this._previousNativeValue=d,this.stateChanges.next())}_dirtyCheckPlaceholder(){const d=this._getPlaceholder();if(d!==this._previousPlaceholder){const v=this._elementRef.nativeElement;this._previousPlaceholder=d,d?v.setAttribute("placeholder",d):v.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){Q.indexOf(this._type)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let d=this._elementRef.nativeElement.validity;return d&&d.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const d=this._elementRef.nativeElement,v=d.options[0];return this.focused||d.multiple||!this.empty||!!(d.selectedIndex>-1&&v&&v.label)}return this.focused||!this.empty}setDescribedByIds(d){d.length?this._elementRef.nativeElement.setAttribute("aria-describedby",d.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){const d=this._elementRef.nativeElement;return this._isNativeSelect&&(d.multiple||d.size>1)}static#t=this.\u0275fac=function(v){return new(v||E)(q.rXU(q.aKT),q.rXU(Vt.OD),q.rXU(gt.vO,10),q.rXU(gt.cV,8),q.rXU(gt.j4,8),q.rXU(it.es),q.rXU(P,10),q.rXU(xt),q.rXU(q.SKi),q.rXU(Z.xb,8))};static#e=this.\u0275dir=q.FsC({type:E,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:18,hostBindings:function(v,W){1&v&&q.bIt("focus",function(){return W._focusChanged(!0)})("blur",function(){return W._focusChanged(!1)})("input",function(){return W._onInput()}),2&v&&(q.Mr5("id",W.id)("disabled",W.disabled)("required",W.required),q.BMQ("name",W.name||null)("readonly",W.readonly&&!W._isNativeSelect||null)("aria-invalid",W.empty&&W.required?null:W.errorState)("aria-required",W.required)("id",W.id),q.AVh("mat-input-server",W._isServer)("mat-mdc-form-field-textarea-control",W._isInFormField&&W._isTextarea)("mat-mdc-form-field-input-control",W._isInFormField)("mdc-text-field__input",W._isInFormField)("mat-mdc-native-select-inline",W._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:[q.Mj6.None,"aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],features:[q.Jv_([{provide:Z.qT,useExisting:E}]),q.Vt3,q.OA$]})}return E})(),D=(()=>{class E{static#t=this.\u0275fac=function(v){return new(v||E)};static#e=this.\u0275mod=q.$C({type:E});static#i=this.\u0275inj=q.G2t({imports:[it.yE,Z.RG,Z.RG,kt,it.yE]})}return E})()}
1,7482:(ce,ie,St)=>{"use strict";St.d(ie,{O:()=>T,b:()=>V});var at=St(4438),Vt=St(9417),q=St(177);const Dt=D=>({"dropdown-multiselect--active":D});function m(D,E){if(1&D&&(at.j41(0,"span"),at.EFF(1),at.k0s()),2&D){const b=at.XpG();at.R7$(),at.JRh(b._placeholder)}}function mt(D,E){if(1&D){const b=at.RV6();at.j41(0,"span",15)(1,"span",16)(2,"span"),at.EFF(3),at.k0s(),at.j41(4,"a",17),at.bIt("click",function(v){const W=at.eBV(b).$implicit,I=at.XpG();return at.Njj(I.onItemClick(v,W))}),at.EFF(5,"x"),at.k0s()()()}if(2&D){const b=E.$implicit,d=E.index,v=at.XpG();at.R7$(),at.Y8G("hidden",d>v._settings.itemsShowLimit-1),at.R7$(2),at.SpI("",b.text,"\xa0")}}function xt(D,E){if(1&D&&(at.j41(0,"span",18),at.EFF(1),at.k0s()),2&D){const b=at.XpG();at.R7$(),at.SpI("+",b.itemShowRemaining(),"")}}function i(D,E){if(1&D){const b=at.RV6();at.j41(0,"li",19),at.bIt("click",function(){at.eBV(b);const v=at.XpG();return at.Njj(v.toggleSelectAll())}),at.nrm(1,"input",20),at.j41(2,"div"),at.EFF(3),at.k0s()()}if(2&D){const b=at.XpG();at.R7$(),at.Y8G("checked",b.isAllItemsSelected())("disabled",b.disabled||b.isLimitSelectionReached()),at.R7$(2),at.JRh(b.isAllItemsSelected()?b._settings.unSelectAllText:b._settings.selectAllText)}}function ut(D,E){if(1&D){const b=at.RV6();at.j41(0,"li",21)(1,"input",22),at.mxI("ngModelChange",function(v){at.eBV(b);const W=at.XpG();return at.DH7(W.filter.text,v)||(W.filter.text=v),at.Njj(v)}),at.bIt("ngModelChange",function(v){at.eBV(b);const W=at.XpG();return at.Njj(W.onFilterTextChange(v))}),at.k0s()()}if(2&D){const b=at.XpG();at.R7$(),at.Y8G("readOnly",b.disabled)("placeholder",b._settings.searchPlaceholderText),at.R50("ngModel",b.filter.text)}}function kt(D,E){if(1&D){const b=at.RV6();at.j41(0,"li",23),at.bIt("click",function(v){const W=at.eBV(b).$implicit,I=at.XpG();return at.Njj(I.onItemClick(v,W))}),at.nrm(1,"input",24),at.j41(2,"div"),at.EFF(3),at.k0s()()}if(2&D){const b=E.$implicit,d=at.XpG();at.R7$(),at.Y8G("checked",d.isSelected(b))("disabled",d.disabled||d.isLimitSelectionReached()&&!d.isSelected(b)||b.isDisabled),at.BMQ("aria-label",b.text),at.R7$(2),at.JRh(b.text)}}function gt(D,E){if(1&D&&(at.j41(0,"li",25)(1,"h5"),at.EFF(2),at.k0s()()),2&D){const b=at.XpG();at.R7$(2),at.JRh(b._settings.noFilteredDataAvailablePlaceholderText)}}function it(D,E){if(1&D&&(at.j41(0,"li",26)(1,"h5"),at.EFF(2),at.k0s()()),2&D){const b=at.XpG();at.R7$(2),at.JRh(b._settings.noDataAvailablePlaceholderText)}}class Z{id;text;isDisabled;constructor(E){("string"==typeof E||"number"==typeof E)&&(this.id=this.text=E,this.isDisabled=!1),"object"==typeof E&&(this.id=E.id,this.text=E.text,this.isDisabled=E.isDisabled)}}let $=(()=>{class D{transform(b,d){return b&&d?b.filter(v=>this.applyFilter(v,d)):b}applyFilter(b,d){return"string"==typeof b.text&&"string"==typeof d.text?!(d.text&&b.text&&-1===b.text.toLowerCase().indexOf(d.text.toLowerCase())):!(d.text&&b.text&&-1===b.text.toString().toLowerCase().indexOf(d.text.toString().toLowerCase()))}static \u0275fac=function(d){return new(d||D)};static \u0275pipe=at.EJ8({name:"multiSelectFilter",type:D,pure:!1})}return D})(),P=(()=>{class D{_elementRef;constructor(b){this._elementRef=b}clickOutside=new at.bkB;onClick(b,d){d&&(this._elementRef.nativeElement.contains(d)||this.clickOutside.emit(b))}static \u0275fac=function(d){return new(d||D)(at.rXU(at.aKT))};static \u0275dir=at.FsC({type:D,selectors:[["","clickOutside",""]],hostBindings:function(d,v){1&d&&at.bIt("click",function(I){return v.onClick(I,I.target)},!1,at.EBC)},outputs:{clickOutside:"clickOutside"}})}return D})();const Q={provide:Vt.kq,useExisting:(0,at.Rfq)(()=>V),multi:!0},G=()=>{};let V=(()=>{class D{listFilterPipe;cdr;_settings;_data=[];selectedItems=[];isDropdownOpen=!0;_placeholder="Select";_sourceDataType=null;_sourceDataFields=[];filter=new Z(this.data);defaultSettings={singleSelection:!1,idField:"id",textField:"text",disabledField:"isDisabled",enableCheckAll:!0,selectAllText:"Select All",unSelectAllText:"UnSelect All",allowSearchFilter:!1,limitSelection:-1,clearSearchFilter:!0,maxHeight:197,itemsShowLimit:999999999999,searchPlaceholderText:"Search",noDataAvailablePlaceholderText:"No data available",noFilteredDataAvailablePlaceholderText:"No filtered data available",closeDropDownOnSelection:!1,showSelectedItemsAtTop:!1,defaultOpen:!1,allowRemoteDataSearch:!1};set placeholder(b){this._placeholder=b||"Select"}disabled=!1;set settings(b){this._settings=b?Object.assign(this.defaultSettings,b):Object.assign(this.defaultSettings)}set data(b){if(b){const d=b[0];this._sourceDataType=typeof d,this._sourceDataFields=this.getFields(d),this._data=b.map(v=>new Z("string"==typeof v||"number"==typeof v?v:{id:v[this._settings.idField],text:v[this._settings.textField],isDisabled:v[this._settings.disabledField]}))}else this._data=[]}onFilterChange=new at.bkB;onDropDownClose=new at.bkB;onSelect=new at.bkB;onDeSelect=new at.bkB;onSelectAll=new at.bkB;onDeSelectAll=new at.bkB;onTouchedCallback=G;onChangeCallback=G;onFilterTextChange(b){this.onFilterChange.emit(b)}constructor(b,d){this.listFilterPipe=b,this.cdr=d}onItemClick(b,d){if(this.disabled||d.isDisabled)return!1;const v=this.isSelected(d),W=-1===this._settings.limitSelection||this._settings.limitSelection>0&&this.selectedItems.length<this._settings.limitSelection;v?this.removeSelected(d):W&&this.addSelected(d),this._settings.singleSelection&&this._settings.closeDropDownOnSelection&&this.closeDropdown()}writeValue(b){if(null!=b&&b.length>0)if(this._settings.singleSelection)try{if(b.length>=1){const d=b[0];this.selectedItems=[new Z("string"==typeof d||"number"==typeof d?d:{id:d[this._settings.idField],text:d[this._settings.textField],isDisabled:d[this._settings.disabledField]})]}}catch{}else{const d=b.map(v=>new Z("string"==typeof v||"number"==typeof v?v:{id:v[this._settings.idField],text:v[this._settings.textField],isDisabled:v[this._settings.disabledField]}));this.selectedItems=this._settings.limitSelection>0?d.splice(0,this._settings.limitSelection):d}else this.selectedItems=[];this.onChangeCallback(b),this.cdr.markForCheck()}registerOnChange(b){this.onChangeCallback=b}registerOnTouched(b){this.onTouchedCallback=b}onTouched(){this.onTouchedCallback()}trackByFn(b,d){return d.id}isSelected(b){let d=!1;
1return this.selectedItems.forEach(v=>{b.id===v.id&&(d=!0)}),d}isLimitSelectionReached(){return this._settings.limitSelection===this.selectedItems.length}isAllItemsSelected(){let b=this.listFilterPipe.transform(this._data,this.filter);const d=b.filter(v=>v.isDisabled).length;return!((!this.data||0===this.data.length)&&this._settings.allowRemoteDataSearch)&&b.length===this.selectedItems.length+d}showButton(){return!(this._settings.singleSelection||this._settings.limitSelection>0)}itemShowRemaining(){return this.selectedItems.length-this._settings.itemsShowLimit}addSelected(b){this._settings.singleSelection?(this.selectedItems=[],this.selectedItems.push(b)):this.selectedItems.push(b),this.onChangeCallback(this.emittedValue(this.selectedItems)),this.onSelect.emit(this.emittedValue(b))}removeSelected(b){this.selectedItems.forEach(d=>{b.id===d.id&&this.selectedItems.splice(this.selectedItems.indexOf(d),1)}),this.onChangeCallback(this.emittedValue(this.selectedItems)),this.onDeSelect.emit(this.emittedValue(b))}emittedValue(b){const d=[];if(Array.isArray(b))b.map(v=>{d.push(this.objectify(v))});else if(b)return this.objectify(b);return d}objectify(b){if("object"===this._sourceDataType){const d={};return d[this._settings.idField]=b.id,d[this._settings.textField]=b.text,this._sourceDataFields.includes(this._settings.disabledField)&&(d[this._settings.disabledField]=b.isDisabled),d}return"number"===this._sourceDataType?Number(b.id):b.text}toggleDropdown(b){b.preventDefault(),(!this.disabled||!this._settings.singleSelection)&&(this._settings.defaultOpen=!this._settings.defaultOpen,this._settings.defaultOpen||this.onDropDownClose.emit())}closeDropdown(){this._settings.defaultOpen=!1,this._settings.clearSearchFilter&&(this.filter.text=""),this.onDropDownClose.emit()}toggleSelectAll(){if(this.disabled)return!1;this.isAllItemsSelected()?(this.selectedItems=[],this.onDeSelectAll.emit(this.emittedValue(this.selectedItems))):(this.selectedItems=this.listFilterPipe.transform(this._data,this.filter).filter(b=>!b.isDisabled).slice(),this.onSelectAll.emit(this.emittedValue(this.selectedItems))),this.onChangeCallback(this.emittedValue(this.selectedItems))}getFields(b){const d=[];if("object"!=typeof b)return d;for(const v in b)d.push(v);return d}static \u0275fac=function(d){return new(d||D)(at.rXU($),at.rXU(at.gRc))};static \u0275cmp=at.VBU({type:D,selectors:[["ng-multiselect-dropdown"]],hostBindings:function(d,v){1&d&&at.bIt("blur",function(){return v.onTouched()})},inputs:{placeholder:"placeholder",disabled:"disabled",settings:"settings",data:"data"},outputs:{onFilterChange:"onFilterChange",onDropDownClose:"onDropDownClose",onSelect:"onSelect",onDeSelect:"onDeSelect",onSelectAll:"onSelectAll",onDeSelectAll:"onDeSelectAll"},features:[at.Jv_([Q])],decls:18,vars:23,consts:[["tabindex","0",1,"multiselect-dropdown",3,"blur","clickOutside"],["tabindex","-1",1,"dropdown-btn",3,"click"],[4,"ngIf"],["class","selected-item-container",4,"ngFor","ngForOf","ngForTrackBy"],[2,"float","right !important","padding-right","4px",3,"ngClass"],["style","padding-right: 15px;",4,"ngIf"],[1,"dropdown-multiselect__caret"],[1,"dropdown-list",3,"hidden"],[1,"item1"],["class","multiselect-item-checkbox","style","border-bottom: 1px solid #ccc;padding:10px",3,"click",4,"ngIf"],["class","filter-textbox",4,"ngIf"],[1,"item2"],["class","multiselect-item-checkbox",3,"click",4,"ngFor","ngForOf"],["class","no-filtered-data",4,"ngIf"],["class","no-data",4,"ngIf"],[1,"selected-item-container"],[1,"selected-item",3,"hidden"],[2,"padding-left","2px","color","white",3,"click"],[2,"padding-right","15px"],[1,"multiselect-item-checkbox",2,"border-bottom","1px solid #ccc","padding","10px",3,"click"],["type","checkbox","aria-label","multiselect-select-all",3,"checked","disabled"],[1,"filter-textbox"],["type","text","aria-label","multiselect-search",3,"ngModelChange","readOnly","placeholder","ngModel"],[1,"multiselect-item-checkbox",3,"click"],["type","checkbox",3,"checked","disabled"],[1,"no-filtered-data"],[1,"no-data"]],template:function(d,v){1&d&&(at.j41(0,"div",0),at.bIt("blur",function(){return v.onTouched()})("clickOutside",function(){return v.closeDropdown()}),at.j41(1,"div")(2,"span",1),at.bIt("click",function(I){return v.toggleDropdown(I)}),at.DNE(3,m,2,1,"span",2)(4,mt,6,2,"span",3),at.j41(5,"span",4),at.DNE(6,xt,2,1,"span",5),at.nrm(7,"span",6),at.k0s()()(),at.j41(8,"div",7)(9,"ul",8),at.DNE(10,i,4,3,"li",9)(11,ut,2,3,"li",10),at.k0s(),at.j41(12,"ul",11),at.DNE(13,kt,4,4,"li",12),at.nI1(14,"multiSelectFilter"),at.DNE(15,gt,3,1,"li",13),at.nI1(16,"multiSelectFilter"),at.DNE(17,it,3,1,"li",14),at.k0s()()()),2&d&&(at.R
17$(),at.AVh("disabled",v.disabled),at.R7$(2),at.Y8G("ngIf",0==v.selectedItems.length),at.R7$(),at.Y8G("ngForOf",v.selectedItems)("ngForTrackBy",v.trackByFn),at.R7$(),at.Y8G("ngClass",at.eq3(21,Dt,v._settings.defaultOpen)),at.R7$(),at.Y8G("ngIf",v.itemShowRemaining()>0),at.R7$(2),at.Y8G("hidden",!v._settings.defaultOpen),at.R7$(2),at.Y8G("ngIf",(v._data.length>0||v._settings.allowRemoteDataSearch)&&!v._settings.singleSelection&&v._settings.enableCheckAll&&-1===v._settings.limitSelection),at.R7$(),at.Y8G("ngIf",(v._data.length>0||v._settings.allowRemoteDataSearch)&&v._settings.allowSearchFilter),at.R7$(),at.xc7("max-height",v._settings.maxHeight+"px"),at.R7$(),at.Y8G("ngForOf",at.i5U(14,15,v._data,v.filter)),at.R7$(2),at.Y8G("ngIf",0!=v._data.length&&0==at.i5U(16,18,v._data,v.filter).length&&!v._settings.allowRemoteDataSearch),at.R7$(2),at.Y8G("ngIf",0==v._data.length&&!v._settings.allowRemoteDataSearch))},dependencies:[q.YU,q.Sq,q.bT,Vt.me,Vt.BC,Vt.vS,P,$],styles:['.multiselect-dropdown[_ngcontent-%COMP%]{position:relative;width:100%;font-size:inherit;font-family:inherit}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%]{display:inline-block;border:1px solid #adadad;width:100%;padding:6px 12px;margin-bottom:0;font-weight:400;line-height:1.52857143;text-align:left;vertical-align:middle;cursor:pointer;background-image:none;border-radius:4px}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item-container[_ngcontent-%COMP%]{display:flex;float:left}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item-container[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]{border:1px solid #337ab7;margin-right:4px;background:#337ab7;padding:0 5px;color:#fff;border-radius:2px;float:left;max-width:100px}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item-container[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item-container[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{text-decoration:none}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .selected-item[_ngcontent-%COMP%]:hover{box-shadow:1px 1px #959595}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-multiselect__caret[_ngcontent-%COMP%]{line-height:16px;display:block;position:absolute;box-sizing:border-box;width:40px;height:38px;right:1px;top:0;padding:4px 8px;margin:0;text-decoration:none;text-align:center;cursor:pointer;transition:transform .2s ease}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-multiselect__caret[_ngcontent-%COMP%]:before{position:relative;right:0;top:65%;color:#999;margin-top:4px;border-style:solid;border-width:8px 8px 0 8px;border-color:#999999 transparent;content:""}.multiselect-dropdown[_ngcontent-%COMP%] .dropdown-btn[_ngcontent-%COMP%] .dropdown-multiselect--active[_ngcontent-%COMP%] .dropdown-multiselect__caret[_ngcontent-%COMP%]{transform:rotate(180deg)}.multiselect-dropdown[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{background-color:#eceeef}.dropdown-list[_ngcontent-%COMP%]{position:absolute;padding-top:6px;width:100%;z-index:9999;border:1px solid #ccc;border-radius:3px;background:#fff;margin-top:10px;box-shadow:0 1px 5px #959595}.dropdown-list[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{padding:0;list-style:none;overflow:auto;margin:0}.dropdown-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:6px 10px;cursor:pointer;text-align:left}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%]{border-bottom:1px solid #ccc;position:relative;padding:10px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:0px;width:100%;padding:0 0 0 26px}.dropdown-list[_ngcontent-%COMP%] .filter-textbox[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:focus{outline:none}.multiselect-item-checkbox[_ngcontent-%COMP%]:hover{background-color:#e4e3e3}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:focus + div[_ngcontent-%COMP%]:before, .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:hover + div[_ngcontent-%COMP%]:before{border-color:#337ab7;background-color:#f2f2f2}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:active + div[_ngcontent-%COMP%]:before{transition-duration:0s}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{position:relative;padding-left:2em;vertical-align:middle;-webkit-user-select:none;user-select:none;cursor:pointer;margin:0;color:#000}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:before{box-sizing:content-box;content:"";color:#337ab7;position:absolute;top:50%;left:0;width:14px;
1height:14px;margin-top:-9px;border:2px solid #337ab7;text-align:center;transition:all .4s ease}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:after{box-sizing:content-box;content:"";background-color:#337ab7;position:absolute;top:50%;left:4px;width:10px;height:10px;margin-top:-5px;transform:scale(0);transform-origin:50%;transition:transform .2s ease-out}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled + div[_ngcontent-%COMP%]:before{border-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:focus + div[_ngcontent-%COMP%]:before .multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:hover + div[_ngcontent-%COMP%]:before{background-color:inherit}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:disabled:checked + div[_ngcontent-%COMP%]:before{background-color:#ccc}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] + div[_ngcontent-%COMP%]:after{background-color:transparent;top:50%;left:4px;width:8px;height:3px;margin-top:-4px;border-style:solid;border-color:#fff;border-width:0 0 3px 3px;border-image:none;transform:rotate(-45deg) scale(0)}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:after{content:"";transform:rotate(-45deg) scale(1);transition:transform .2s ease-out}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:before{animation:_ngcontent-%COMP%_borderscale .2s ease-in;background:#337ab7}.multiselect-item-checkbox[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]:checked + div[_ngcontent-%COMP%]:after{transform:rotate(-45deg) scale(1)}@keyframes _ngcontent-%COMP%_borderscale{50%{box-shadow:0 0 0 2px #337ab7}}'],changeDetection:0})}return D})(),T=(()=>{class D{static forRoot(){return{ngModule:D}}static \u0275fac=function(d){return new(d||D)};static \u0275mod=at.$C({type:D});static \u0275inj=at.G2t({providers:[$],imports:[q.MD,Vt.YN]})}return D})()},779:(ce,ie,St)=>{"use strict";St.d(ie,{I8:()=>f,Q_:()=>B});var at=St(4438),Vt=St(425),q=St(177),Dt=St(6697);let mt,m=(()=>{class s{constructor(){this._focusTrapStack=[]}register(h){this._focusTrapStack=this._focusTrapStack.filter(S=>S!==h);let C=this._focusTrapStack;C.length&&C[C.length-1]._disable(),C.push(h),h._enable()}deregister(h){h._disable();const C=this._focusTrapStack,S=C.indexOf(h);-1!==S&&(C.splice(S,1),C.length&&C[C.length-1]._enable())}static#t=this.\u0275fac=function(C){return new(C||s)};static#e=this.\u0275prov=at.jDH({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();try{mt=typeof Intl<"u"&&Intl.v8BreakIterator}catch{mt=!1}let xt=(()=>{class s{constructor(h){this._platformId=h,this.isBrowser=this._platformId?(0,q.UE)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!mt)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}static#t=this.\u0275fac=function(C){return new(C||s)(at.KVO(at.Agw))};static#e=this.\u0275prov=at.jDH({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})(),ut=(()=>{class s{constructor(h){this._platform=h}isDisabled(h){return h.hasAttribute("disabled")}isVisible(h){return function gt(s){return!!(s.offsetWidth||s.offsetHeight||"function"==typeof s.getClientRects&&s.getClientRects().length)}(h)&&"visible"===getComputedStyle(h).visibility}
1isTabbable(h){if(!this._platform.isBrowser)return!1;const C=function kt(s){try{return s.frameElement}catch{return null}}(function E(s){return s.ownerDocument&&s.ownerDocument.defaultView||window}(h));if(C&&(-1===V(C)||!this.isVisible(C)))return!1;let S=h.nodeName.toLowerCase(),U=V(h);return h.hasAttribute("contenteditable")?-1!==U:!("iframe"===S||"object"===S||this._platform.WEBKIT&&this._platform.IOS&&!function T(s){let _=s.nodeName.toLowerCase(),h="input"===_&&s.type;return"text"===h||"password"===h||"select"===_||"textarea"===_}(h))&&("audio"===S?!!h.hasAttribute("controls")&&-1!==U:"video"===S?-1!==U&&(null!==U||this._platform.FIREFOX||h.hasAttribute("controls")):h.tabIndex>=0)}isFocusable(h,C){return function D(s){return!function Z(s){return function P(s){return"input"==s.nodeName.toLowerCase()}(s)&&"hidden"==s.type}(s)&&(function it(s){let _=s.nodeName.toLowerCase();return"input"===_||"select"===_||"button"===_||"textarea"===_}(s)||function $(s){return function Q(s){return"a"==s.nodeName.toLowerCase()}(s)&&s.hasAttribute("href")}(s)||s.hasAttribute("contenteditable")||G(s))}(h)&&!this.isDisabled(h)&&(C?.ignoreVisibility||this.isVisible(h))}static#t=this.\u0275fac=function(C){return new(C||s)(at.KVO(xt))};static#e=this.\u0275prov=at.jDH({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})();function G(s){if(!s.hasAttribute("tabindex")||void 0===s.tabIndex)return!1;let _=s.getAttribute("tabindex");return"-32768"!=_&&!(!_||isNaN(parseInt(_,10)))}function V(s){if(!G(s))return null;const _=parseInt(s.getAttribute("tabindex")||"",10);return isNaN(_)?-1:_}function b(s){return null!=s&&"false"!=`${s}`}class d{get enabled(){return this._enabled}set enabled(_){this._enabled=_,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(_,this._startAnchor),this._toggleAnchorTabIndex(_,this._endAnchor))}constructor(_,h,C,S,U=!1){this._element=_,this._checker=h,this._ngZone=C,this._document=S,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,U||this.attachAnchors()}destroy(){const _=this._startAnchor,h=this._endAnchor;_&&(_.removeEventListener("focus",this.startAnchorListener),_.parentNode&&_.parentNode.removeChild(_)),h&&(h.removeEventListener("focus",this.endAnchorListener),h.parentNode&&h.parentNode.removeChild(h)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(){return new Promise(_=>{this._executeOnStable(()=>_(this.focusInitialElement()))})}focusFirstTabbableElementWhenReady(){return new Promise(_=>{this._executeOnStable(()=>_(this.focusFirstTabbableElement()))})}focusLastTabbableElementWhenReady(){return new Promise(_=>{this._executeOnStable(()=>_(this.focusLastTabbableElement()))})}_getRegionBoundary(_){let h=this._element.querySelectorAll(`[cdk-focus-region-${_}], [cdkFocusRegion${_}], [cdk-focus-${_}]`);for(let C=0;C<h.length;C++)h[C].hasAttribute(`cdk-focus-${_}`)?console.warn(`Found use of deprecated attribute 'cdk-focus-${_}', use 'cdkFocusRegion${_}' instead. The deprecated attribute will be removed in 8.0.0.`,h[C]):h[C].hasAttribute(`cdk-focus-region-${_}`)&&console.warn(`Found use of deprecated attribute 'cdk-focus-region-${_}', use 'cdkFocusRegion${_}' instead. The deprecated attribute will be removed in 8.0.0.`,h[C]);return"start"==_?h.length?h[0]:this._getFirstTabbableElement(this._element):h.length?h[h.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(){const _=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(_){if(_.hasAttribute("cdk-focus-initial")&&console.warn("Found use of deprecated attribute 'cdk-focus-initial', use 'cdkFocusInitial' instead. The deprecated attribute will be removed in 8.0.0",_),!this._checker.isFocusable(_)){const h=this._getFirstTabbableElement(_);return h?.focus(),!!h}return _.focus(),!0}return this.focusFirstTabbableElement()}focusFirstTabbableElement(){const _=this._getRegionBoundary("start");return _&&_.focus(),!!_}focusLastTabbableElement(){const _=this._getRegionBoundary("end");return _&&_.focus(),!!_}hasAttached(){return this._hasAttached}_getFirstTabbableElement(_){if(this._checker.isFocusable(_)&&this._checker.isTabbable(_))return _;let h=_.children||_.childNodes;for(let C=0;C<h.length;C++){let S=h[C].nodeType===this._document.ELEMENT_NODE?this._getFirstTabbableElement(h[C]):null;if(S)return S}return null}_getLastTabbableElement(_){if(this._checker.isFocusable(_)&&this._checker.isTabbable(_))return _;let h=_.children||_.childNodes;for(let C=h.length-1;C>=0;C--){let S=h[C].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(h[C]):null;if(S)return S}return null}_createAnchor(){const _=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,_),_.classList.add("cdk-visually-hidden"),_.classList.add("cdk-focus-trap-anchor"),_.setAttribute("aria-hidden","true"),_}_toggleAnchorTabIndex(_,h){_?h.setAttribute("tabindex","0"):h.removeAttribute("tabindex")}toggleAnchors(_){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(_,this._startAnchor),this._toggleAnchorTabIndex(_,this._endAnchor))}_executeOnStable(_){this._ngZone.isStable?_():this._ngZone.onStable.pipe((0,Dt.s)(1)).subscribe(_)}}let v=(()=>{class s{constructor(h,C,S){this._checker=h,this._ngZone=C,this._document=S}create(h,C=!1){return new d(h,this._checker,this._ngZone,this._document,C)}static#t=this.\u0275fac=function(C){return new(C||s)(at.KVO(ut),at.KVO(at.SKi),at.KVO(q.qQ))};static#e=this.\u0275prov=at.jDH({token:s,factory:s.\u0275fac,providedIn:"root"})}return s})(),W=(()=>{class s{get enabled(){return this.focusTrap.enabled}set enabled(h){this.focusTrap.enabled=b(h)}get autoCapture(){return this._autoCapture}set autoCapture(h){this._autoCapture=b(h)}constructor(h,C,S){this._elementRef=h,this._focusTrapFactory=C,this._previouslyFocusedElement=null,this._autoCapture=!1,this._document=S,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}ngOnDestroy(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}ngOnChanges(h){const C=h.autoCapture;C&&!C.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=this._document.activeElement,this.focusTrap.focusInitialElementWhenReady()}static#t=this.\u0275fac=function(C){return new(C||s)(at.rXU(at.aKT),at.rXU(v),at.rXU(q.qQ))};static#e=this.\u0275dir=at.FsC({type:s,selectors:[["","focusTrap",""]],inputs:{enabled:[at.Mj6.None,"cdkTrapFocus","enabled"],autoCapture:[at.Mj6.None,"cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["focusTrap"],features:[at.OA$]})}return s})(),I=(()=>{class s{static forRoot(){return{ngModule:s,providers:[m,xt,ut]}}static#t=this.\u0275fac=function(C){return new(C||s)};static#e=this.\u0275mod=at.$C({type:s});
1static#i=this.\u0275inj=at.G2t({imports:[q.MD]})}return s})();var y=St(6932),l=St(1946);const M=["*"];let A=(()=>{class s{constructor(){this.hide=()=>{},this.setClass=()=>{}}static#t=this.\u0275fac=function(C){return new(C||s)};static#e=this.\u0275prov=at.jDH({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})(),r=(()=>{class s{static#t=this.\u0275fac=function(C){return new(C||s)};static#e=this.\u0275prov=at.jDH({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})();const p={backdrop:!0,keyboard:!0,focus:!0,show:!1,ignoreBackdropClick:!1,class:"",animated:!0,initialState:{},closeInterceptor:void 0},g=new at.nKC("override-default-config");let z=(()=>{class s{constructor(h,C,S){this._element=C,this._renderer=S,this.isShown=!1,this.isAnimated=!1,this._focusEl=null,this.isModalHiding=!1,this.clickStartedInContent=!1,this.config=Object.assign({},h)}ngOnInit(){this._focusEl=Vt.Al.activeElement,this.isAnimated&&this._renderer.addClass(this._element.nativeElement,"fade"),this._renderer.setStyle(this._element.nativeElement,"display","block"),setTimeout(()=>{this.isShown=!0,this._renderer.addClass(this._element.nativeElement,"show")},this.isAnimated?150:0),Vt.Al&&Vt.Al.body&&(this.bsModalService&&1===this.bsModalService.getModalsCount()&&(this.bsModalService.checkScrollbar(),this.bsModalService.setScrollbar()),this._renderer.addClass(Vt.Al.body,"modal-open"),this._renderer.setStyle(Vt.Al.body,"overflow-y","hidden")),this._element.nativeElement&&this._element.nativeElement.focus()}onClickStarted(h){this.clickStartedInContent=h.target!==this._element.nativeElement}onClickStop(h){this.config.ignoreBackdropClick||"static"===this.config.backdrop||h.target!==this._element.nativeElement||this.clickStartedInContent?this.clickStartedInContent=!1:(this.bsModalService?.setDismissReason("backdrop-click"),this.hide())}onPopState(){this.bsModalService?.setDismissReason("browser-back-navigation-clicked"),this.hide()}onEsc(h){this.isShown&&((27===h.keyCode||"Escape"===h.key)&&h.preventDefault(),this.config.keyboard&&this.level===this.bsModalService?.getModalsCount()&&(this.bsModalService?.setDismissReason("esc"),this.hide()))}ngOnDestroy(){this.isShown&&this._hide()}hide(){if(!this.isModalHiding){if(this.config.closeInterceptor)return void this.config.closeInterceptor().then(()=>this._hide(),()=>{});this._hide()}}_hide(){this.isModalHiding=!0,this._renderer.removeClass(this._element.nativeElement,"show"),setTimeout(()=>{this.isShown=!1,Vt.Al&&Vt.Al.body&&1===this.bsModalService?.getModalsCount()&&(this._renderer.removeClass(Vt.Al.body,"modal-open"),this._renderer.setStyle(Vt.Al.body,"overflow-y","")),this.bsModalService?.hide(this.config.id),this.isModalHiding=!1,this._focusEl&&this._focusEl.focus()},this.isAnimated?300:0)}static#t=this.\u0275fac=function(C){return new(C||s)(at.rXU(r),at.rXU(at.aKT),at.rXU(at.sFG))};static#e=this.\u0275cmp=at.VBU({type:s,selectors:[["modal-container"]],hostAttrs:["role","dialog","tabindex","-1",1,"modal"],hostVars:3,hostBindings:function(C,S){1&C&&at.bIt("mousedown",function(et){return S.onClickStarted(et)})("click",function(et){return S.onClickStop(et)})("popstate",function(){return S.onPopState()},!1,at.tSv)("keydown.esc",function(et){return S.onEsc(et)},!1,at.tSv),2&C&&at.BMQ("aria-modal",!0)("aria-labelledby",S.config.ariaLabelledBy)("aria-describedby",S.config.ariaDescribedby)},ngContentSelectors:M,decls:3,vars:2,consts:[["role","document","focusTrap",""],[1,"modal-content"]],template:function(C,S){1&C&&(at.NAR(),at.j41(0,"div",0)(1,"div",1),at.SdG(2),at.k0s()()),2&C&&at.HbH("modal-dialog"+(S.config.class?" "+S.config.class:""))},dependencies:[W],encapsulation:2})}return s})(),K=(()=>{class s{get isAnimated(){return this._isAnimated}set isAnimated(h){this._isAnimated=h}get isShown(){return this._isShown}set isShown(h){this._isShown=h,h?this.renderer.addClass(this.element.nativeElement,"show"):this.renderer.removeClass(this.element.nativeElement,"show")}constructor(h,C){this._isAnimated=!1,this._isShown=!1,this.element=h,this.renderer=C}ngOnInit(){this.isAnimated&&(this.renderer.addClass(this.element.nativeElement,"fade"),Vt.Aq.reflow(this.element.nativeElement)),this.isShown=!0}static#t=this.\u0275fac=function(C){return new(C||s)(at.rXU(at.aKT),at.rXU(at.sFG))};static#e=this.\u0275cmp=at.VBU({type:s,selectors:[["bs-modal-backdrop"]],hostAttrs:[1,"modal-backdrop"],decls:0,vars:0,template:function(C,S){},encapsulation:2})}return s})(),J=1,f=(()=>{class s{constructor(h,C,S){this.clf=C,this.modalDefaultOption=S,this.onShow=new at.bkB,this.onShown=new at.bkB,this.onHide=new at.bkB,this.onHidden=new at.bkB,this.isBodyOverflowing=!1,this.originalBodyPadding=0,this.scrollbarWidth=0,this.modalsCount=0,this.loaders=[],this._focusEl=null,this._backdropLoader=this.clf.createLoader(),this._renderer=h.createRenderer(null,null),this.config=S?Object.assign({},p,S):p}show(h,C){this._focusEl=Vt.Al.activeElement,this.modalsCount++,this._createLoaders();const S=C?.id||J++;return this.config=this.modalDefaultOption?Object.assign({},p,this.modalDefaultOption,C):Object.assign({},p,C),this.config.id=S,this._showBackdrop(),this.lastDismissReason=void 0,this._showModal(h)}hide(h){(1===this.modalsCount||null==h)&&(this._hideBackdrop(),this.resetScrollbar()),this.modalsCount=this.modalsCount>=1&&null!=h?this.modalsCount-1:0,setTimeout(()=>{this._hideModal(h),this.removeLoaders(h)},this.config.animated?150:0),this._focusEl&&this._focusEl.focus()}_showBackdrop(){const h=!0===this.config.backdrop||"static"===this.config.backdrop,C=!this.backdropRef||!this.backdropRef.instance.isShown;1===this.modalsCount&&(this.removeBackdrop(),h&&C&&(this._backdropLoader.attach(K).to("body").show({isAnimated:this.config.animated}),this.backdropRef=this._backdropLoader._componentRef))}_hideBackdrop(){this.backdropRef&&(this.backdropRef.instance.isShown=!1,setTimeout(()=>this.removeBackdrop(),this.config.animated?150:0))}_showModal(h){const C=this.loaders[this.loaders.length-1];if(this.config&&this.config.providers)for(const et of this.config.providers)C.provide(et);const S=new A,U=C.provide({provide:r,useValue:this.config}).provide({provide:A,useValue:S}).attach(z).to("body");return S.hide=()=>this.hide(S.id),S.setClass=et=>{U.instance&&(U.instance.config.class=et)},S.onHidden=new at.bkB,S.onHide=new at.bkB,this.copyEvent(C.onBeforeHide,S.onHide),this.copyEvent(C.onHidden,S.onHidden
1),U.show({content:h,isAnimated:this.config.animated,initialState:this.config.initialState,bsModalService:this,id:this.config.id}),U.instance&&(U.instance.level=this.getModalsCount(),S.content=C.getInnerComponent(),S.id=U.instance.config?.id),S}_hideModal(h){if(null!=h){const C=this.loaders.findIndex(U=>U.instance?.config.id===h),S=this.loaders[C];S&&S.hide(h)}else this.loaders.forEach(C=>{C.instance&&C.hide(C.instance.config.id)})}getModalsCount(){return this.modalsCount}setDismissReason(h){this.lastDismissReason=h}removeBackdrop(){this._renderer.removeClass(Vt.Al.body,"modal-open"),this._renderer.setStyle(Vt.Al.body,"overflow-y",""),this._backdropLoader.hide(),this.backdropRef=void 0}checkScrollbar(){this.isBodyOverflowing=Vt.Al.body.clientWidth<window.innerWidth,this.scrollbarWidth=this.getScrollbarWidth()}setScrollbar(){Vt.Al&&(this.originalBodyPadding=parseInt(window.getComputedStyle(Vt.Al.body).getPropertyValue("padding-right")||"0",10),this.isBodyOverflowing&&(Vt.Al.body.style.paddingRight=`${this.originalBodyPadding+this.scrollbarWidth}px`))}resetScrollbar(){Vt.Al.body.style.paddingRight=`${this.originalBodyPadding}px`}getScrollbarWidth(){const h=this._renderer.createElement("div");this._renderer.addClass(h,"modal-scrollbar-measure"),this._renderer.appendChild(Vt.Al.body,h);const C=h.offsetWidth-h.clientWidth;return this._renderer.removeChild(Vt.Al.body,h),C}_createLoaders(){const h=this.clf.createLoader();this.copyEvent(h.onBeforeShow,this.onShow),this.copyEvent(h.onShown,this.onShown),this.copyEvent(h.onBeforeHide,this.onHide),this.copyEvent(h.onHidden,this.onHidden),this.loaders.push(h)}removeLoaders(h){if(null!=h){const C=this.loaders.findIndex(S=>S.instance?.config.id===h);C>=0&&(this.loaders.splice(C,1),this.loaders.forEach((S,U)=>{S.instance&&(S.instance.level=U+1)}))}else this.loaders.splice(0,this.loaders.length)}copyEvent(h,C){h.subscribe(S=>{C.emit(this.lastDismissReason||S)})}static#t=this.\u0275fac=function(C){return new(C||s)(at.KVO(at._9s),at.KVO(y.Li),at.KVO(g,8))};static#e=this.\u0275prov=at.jDH({token:s,factory:s.\u0275fac,providedIn:"platform"})}return s})();I.forRoot();let B=(()=>{class s{static forRoot(){return{ngModule:s,providers:[f,y.Li,l.DF]}}static forChild(){return{ngModule:s,providers:[f,y.Li,l.DF]}}static#t=this.\u0275fac=function(C){return new(C||s)};static#e=this.\u0275mod=at.$C({type:s});static#i=this.\u0275inj=at.G2t({imports:[I]})}return s})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.