@mxtommy/kip 3.9.0-beta.2 → 3.9.0-beta.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/copilot-instructions.md +1 -1
- package/.github/instructions/angular.instructions.md +46 -0
- package/README.md +49 -12
- package/package.json +2 -4
- package/public/3rdpartylicenses.txt +77 -77
- package/public/app-help.component.css.map +7 -0
- package/public/app.component.css.map +7 -0
- package/public/assets/help-docs/configuration.md +4 -4
- package/public/assets/help-docs/dashboards.md +4 -2
- package/public/assets/svg/icons.svg +1 -1
- package/public/boolean-control-config.component.css.map +7 -0
- package/public/boolean-multicontrol-options.component.css.map +7 -0
- package/public/chunk-3EWIS24B.js +5237 -0
- package/public/chunk-3EWIS24B.js.map +1 -0
- package/public/chunk-3VR3EA35.js +1022 -0
- package/public/chunk-3VR3EA35.js.map +1 -0
- package/public/chunk-63ILPRXC.js +2091 -0
- package/public/chunk-63ILPRXC.js.map +1 -0
- package/public/chunk-65ZWQBS6.js +3102 -0
- package/public/chunk-65ZWQBS6.js.map +1 -0
- package/public/chunk-B3LKEWZP.js +4950 -0
- package/public/chunk-B3LKEWZP.js.map +1 -0
- package/public/chunk-BIBIW64D.js +16773 -0
- package/public/chunk-BIBIW64D.js.map +1 -0
- package/public/chunk-BM53SC5N.js +77 -0
- package/public/chunk-BM53SC5N.js.map +7 -0
- package/public/chunk-D7ILNFDM.js +3059 -0
- package/public/chunk-D7ILNFDM.js.map +1 -0
- package/public/chunk-E24UNLSJ.js +2228 -0
- package/public/chunk-E24UNLSJ.js.map +1 -0
- package/public/chunk-J42S2ELC.js +5927 -0
- package/public/chunk-J42S2ELC.js.map +1 -0
- package/public/chunk-KC22A6VH.js +17 -0
- package/public/chunk-KC22A6VH.js.map +7 -0
- package/public/chunk-MCEJWZB2.js +116 -0
- package/public/chunk-MCEJWZB2.js.map +1 -0
- package/public/chunk-NBF6SE6O.js +89 -0
- package/public/chunk-NBF6SE6O.js.map +7 -0
- package/public/chunk-QC7VGVAR.js +343 -0
- package/public/chunk-QC7VGVAR.js.map +7 -0
- package/public/chunk-SDOP6T56.js +42377 -0
- package/public/chunk-SDOP6T56.js.map +1 -0
- package/public/chunk-U2DCSTRY.js +159 -0
- package/public/chunk-U2DCSTRY.js.map +7 -0
- package/public/chunk-UHVNAEXC.js +4752 -0
- package/public/chunk-UHVNAEXC.js.map +1 -0
- package/public/chunk-UQYTD5AC.js +2723 -0
- package/public/chunk-UQYTD5AC.js.map +1 -0
- package/public/chunk-XSABJ5NZ.js +272 -0
- package/public/chunk-XSABJ5NZ.js.map +7 -0
- package/public/chunk-Y6N6O2IP.js +19852 -0
- package/public/chunk-Y6N6O2IP.js.map +1 -0
- package/public/chunk-YGJLBLOX.js +2708 -0
- package/public/chunk-YGJLBLOX.js.map +1 -0
- package/public/chunk-YT33DHC3.js +591 -0
- package/public/chunk-YT33DHC3.js.map +7 -0
- package/public/chunk-YZXYVP72.js +4934 -0
- package/public/chunk-YZXYVP72.js.map +1 -0
- package/public/chunk-ZEHRDSTB.js +13727 -0
- package/public/chunk-ZEHRDSTB.js.map +1 -0
- package/public/config.component.css.map +7 -0
- package/public/dashboard-scroller.component.css.map +7 -0
- package/public/dashboard.component.css.map +7 -0
- package/public/dashboards-editor.component.css.map +7 -0
- package/public/data-inspector-row.component.css.map +7 -0
- package/public/data-inspector.component.css.map +7 -0
- package/public/dataset-chart-options.component.css.map +7 -0
- package/public/datasets.component.css.map +7 -0
- package/public/dialog-confirmation.component.css.map +7 -0
- package/public/dialog-dashboard-page-editor.component.css.map +7 -0
- package/public/dialog-frame.component.css.map +7 -0
- package/public/dialog-name.component.css.map +7 -0
- package/public/display-chart-options.component.css.map +7 -0
- package/public/display.component.css.map +7 -0
- package/public/gauge-steel.component.css.map +7 -0
- package/public/home.component.css.map +7 -0
- package/public/index.html +19 -17
- package/public/main.js +36423 -0
- package/public/main.js.map +1 -0
- package/public/menu-actions.component.css.map +7 -0
- package/public/menu-notifications.component.css.map +7 -0
- package/public/minichart.component.css.map +7 -0
- package/public/modal-user-credential.component.css.map +7 -0
- package/public/modal-widget-config.component.css.map +7 -0
- package/public/notification-badge.component.css.map +7 -0
- package/public/page-header.component.css.map +7 -0
- package/public/path-control-config.component.css.map +7 -0
- package/public/paths-options.component.css.map +7 -0
- package/public/polyfills.js +4422 -0
- package/public/polyfills.js.map +1 -0
- package/public/select-autopilot.component.css.map +7 -0
- package/public/select-icon.component.css.map +7 -0
- package/public/settings.component.css.map +7 -0
- package/public/signalk.component.css.map +7 -0
- package/public/styles.css +1651 -0
- package/public/styles.css.map +7 -0
- package/public/svg-autopilot.component.css.map +7 -0
- package/public/svg-racesteer.component.css.map +7 -0
- package/public/svg-simple-linear-gauge.component.css.map +7 -0
- package/public/svg-windsteer.component.css.map +7 -0
- package/public/tile-large-icon.component.css.map +7 -0
- package/public/units.component.css.map +7 -0
- package/public/upgrade-config.component.css.map +7 -0
- package/public/widget-autopilot.component.css.map +7 -0
- package/public/widget-boolean-switch.component.css.map +7 -0
- package/public/widget-datetime.component.css.map +7 -0
- package/public/widget-freeboardsk.component.css.map +7 -0
- package/public/widget-gauge-ng-compass.component.css.map +7 -0
- package/public/widget-gauge-ng-linear.component.css.map +7 -0
- package/public/widget-gauge-ng-radial.component.css.map +7 -0
- package/public/widget-gauge-steel.component.css.map +7 -0
- package/public/widget-horizon.component.css.map +7 -0
- package/public/widget-host.component.css.map +7 -0
- package/public/widget-iframe.component.css.map +7 -0
- package/public/widget-label.component.css.map +7 -0
- package/public/widget-list-card.component.css.map +7 -0
- package/public/widget-numeric.component.css.map +7 -0
- package/public/widget-position.component.css.map +7 -0
- package/public/widget-race-timer.component.css.map +7 -0
- package/public/widget-racer-line.component.css.map +7 -0
- package/public/widget-racer-timer.component.css.map +7 -0
- package/public/widget-simple-linear.component.css.map +7 -0
- package/public/widget-slider.component.css.map +7 -0
- package/public/widget-text.component.css.map +7 -0
- package/public/widget-title.component.css.map +7 -0
- package/public/widget-tutorial.component.css.map +7 -0
- package/public/widgets-list.component.css.map +7 -0
- package/public/assets/hammer.min.js +0 -7
- package/public/chunk-2YVW3TBK.js +0 -2
- package/public/chunk-35L7BBBD.js +0 -15
- package/public/chunk-3LEMFOCV.js +0 -3
- package/public/chunk-3LJAKLLW.js +0 -1
- package/public/chunk-4JJLPUET.js +0 -60
- package/public/chunk-CBUY7NMR.js +0 -2
- package/public/chunk-CQXWGD3T.js +0 -2
- package/public/chunk-EUFDL4TJ.js +0 -6
- package/public/chunk-FBFTGVZ6.js +0 -1
- package/public/chunk-HCXH72CD.js +0 -5
- package/public/chunk-JY3WVS7C.js +0 -2
- package/public/chunk-KTDDP73O.js +0 -2
- package/public/chunk-NMEZOCU2.js +0 -1
- package/public/chunk-NS2FPVWM.js +0 -4
- package/public/chunk-OSYHJB4F.js +0 -11
- package/public/chunk-PKNLASTF.js +0 -4
- package/public/chunk-Q2Y75POI.js +0 -1
- package/public/chunk-RRTCHHRC.js +0 -3
- package/public/chunk-TA4GACKT.js +0 -4
- package/public/chunk-TXPLRBW5.js +0 -2
- package/public/chunk-VHFBF47T.js +0 -1
- package/public/chunk-VYUMZVH2.js +0 -2
- package/public/chunk-XRGAX4LS.js +0 -2
- package/public/chunk-YNJRIFUM.js +0 -1
- package/public/chunk-ZBCOJLI4.js +0 -6
- package/public/main-XM5EHMUE.js +0 -50
- package/public/polyfills-KH22MU6U.js +0 -2
- package/public/styles-RECKN66R.css +0 -1
- /package/public/media/{KFOlCnqEu92Fr1MmEU9fABc4AMP6lbBP-ILKS6RVC.woff2 → KFOlCnqEu92Fr1MmEU9fABc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ-MJ3CERJ6.woff2 → KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmEU9fBxc4AMP6lbBP-UW3XWY7P.woff2 → KFOlCnqEu92Fr1MmEU9fBxc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmEU9fCBc4AMP6lbBP-U3JTBV4H.woff2 → KFOlCnqEu92Fr1MmEU9fCBc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmEU9fCRc4AMP6lbBP-36ULTGLY.woff2 → KFOlCnqEu92Fr1MmEU9fCRc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmEU9fChc4AMP6lbBP-5NJLO2HW.woff2 → KFOlCnqEu92Fr1MmEU9fChc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmEU9fCxc4AMP6lbBP-2EL65J2O.woff2 → KFOlCnqEu92Fr1MmEU9fCxc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmSU5fABc4AMP6lbBP-XWLWMQVU.woff2 → KFOlCnqEu92Fr1MmSU5fABc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmSU5fBBc4AMP6lQ-PWGJWDFE.woff2 → KFOlCnqEu92Fr1MmSU5fBBc4AMP6lQ.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmSU5fBxc4AMP6lbBP-ITB7NUJC.woff2 → KFOlCnqEu92Fr1MmSU5fBxc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmSU5fCBc4AMP6lbBP-32PLHKPQ.woff2 → KFOlCnqEu92Fr1MmSU5fCBc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmSU5fCRc4AMP6lbBP-QPSNQEDD.woff2 → KFOlCnqEu92Fr1MmSU5fCRc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmSU5fChc4AMP6lbBP-JKBSJZY3.woff2 → KFOlCnqEu92Fr1MmSU5fChc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOlCnqEu92Fr1MmSU5fCxc4AMP6lbBP-OG5AHRIX.woff2 → KFOlCnqEu92Fr1MmSU5fCxc4AMP6lbBP.woff2} +0 -0
- /package/public/media/{KFOmCnqEu92Fr1Mu4WxKKTU1Kvnz-PPTELUJT.woff2 → KFOmCnqEu92Fr1Mu4WxKKTU1Kvnz.woff2} +0 -0
- /package/public/media/{KFOmCnqEu92Fr1Mu4mxKKTU1Kg-SNGEW7FX.woff2 → KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2} +0 -0
- /package/public/media/{KFOmCnqEu92Fr1Mu5mxKKTU1Kvnz-DRL4U32S.woff2 → KFOmCnqEu92Fr1Mu5mxKKTU1Kvnz.woff2} +0 -0
- /package/public/media/{KFOmCnqEu92Fr1Mu72xKKTU1Kvnz-PRJ7OQMU.woff2 → KFOmCnqEu92Fr1Mu72xKKTU1Kvnz.woff2} +0 -0
- /package/public/media/{KFOmCnqEu92Fr1Mu7GxKKTU1Kvnz-HW6RMPJ3.woff2 → KFOmCnqEu92Fr1Mu7GxKKTU1Kvnz.woff2} +0 -0
- /package/public/media/{KFOmCnqEu92Fr1Mu7WxKKTU1Kvnz-KZD6JQRT.woff2 → KFOmCnqEu92Fr1Mu7WxKKTU1Kvnz.woff2} +0 -0
- /package/public/media/{KFOmCnqEu92Fr1Mu7mxKKTU1Kvnz-Z72STTMG.woff2 → KFOmCnqEu92Fr1Mu7mxKKTU1Kvnz.woff2} +0 -0
- /package/public/media/{flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ-CN2J7AYH.woff2 → flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["src/app/core/pipes/filter-self.pipe.ts","node_modules/@angular/cdk/fesm2022/stepper.mjs","node_modules/@angular/material/fesm2022/stepper.mjs","src/app/core/components/datasets/datasets.component.ts","src/app/core/components/datasets/datasets.component.html","src/app/core/components/datasets/datasets.modal.html"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'filterSelf',\n standalone: true\n})\nexport class FilterSelfPipe implements PipeTransform {\n\n transform(values: string[], filterSelf: boolean): string[] {\n if (!values || !values.length) return [];\n if (!filterSelf) return values;\n return values.filter(v => v.includes('self'));\n }\n\n}\n","import * as i0 from '@angular/core';\nimport { inject, ElementRef, Directive, TemplateRef, InjectionToken, signal, EventEmitter, computed, booleanAttribute, Component, ViewEncapsulation, ChangeDetectionStrategy, ContentChild, ContentChildren, ViewChild, Input, Output, ChangeDetectorRef, QueryList, numberAttribute, NgModule } from '@angular/core';\nimport { ControlContainer } from '@angular/forms';\nimport { Subject, of } from 'rxjs';\nimport { startWith, takeUntil } from 'rxjs/operators';\nimport { D as Directionality } from './directionality-CChdj3az.mjs';\nimport { _ as _IdGenerator } from './id-generator-LuoRZSid.mjs';\nimport { F as FocusKeyManager } from './focus-key-manager-CPmlyB_c.mjs';\nimport { hasModifierKey } from './keycodes.mjs';\nimport { S as SPACE, c as ENTER } from './keycodes-CpHkExLC.mjs';\nimport { c as _getFocusedElementPierceShadowDom } from './shadow-dom-B0oHn41l.mjs';\nimport { BidiModule } from './bidi.mjs';\nimport './list-key-manager-C7tp3RbG.mjs';\nimport './typeahead-9ZW4Dtsf.mjs';\nconst _c0 = [\"*\"];\nfunction CdkStep_ng_template_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojection(0);\n }\n}\nclass CdkStepHeader {\n _elementRef = inject(ElementRef);\n constructor() {}\n /** Focuses the step header. */\n focus() {\n this._elementRef.nativeElement.focus();\n }\n static ɵfac = function CdkStepHeader_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || CdkStepHeader)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: CdkStepHeader,\n selectors: [[\"\", \"cdkStepHeader\", \"\"]],\n hostAttrs: [\"role\", \"tab\"]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CdkStepHeader, [{\n type: Directive,\n args: [{\n selector: '[cdkStepHeader]',\n host: {\n 'role': 'tab'\n }\n }]\n }], () => [], null);\n})();\nclass CdkStepLabel {\n template = inject(TemplateRef);\n constructor() {}\n static ɵfac = function CdkStepLabel_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || CdkStepLabel)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: CdkStepLabel,\n selectors: [[\"\", \"cdkStepLabel\", \"\"]]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CdkStepLabel, [{\n type: Directive,\n args: [{\n selector: '[cdkStepLabel]'\n }]\n }], () => [], null);\n})();\n\n/** Change event emitted on selection changes. */\nclass StepperSelectionEvent {\n /** Index of the step now selected. */\n selectedIndex;\n /** Index of the step previously selected. */\n previouslySelectedIndex;\n /** The step instance now selected. */\n selectedStep;\n /** The step instance previously selected. */\n previouslySelectedStep;\n}\n/** Enum to represent the different states of the steps. */\nconst STEP_STATE = {\n NUMBER: 'number',\n EDIT: 'edit',\n DONE: 'done',\n ERROR: 'error'\n};\n/** InjectionToken that can be used to specify the global stepper options. */\nconst STEPPER_GLOBAL_OPTIONS = new InjectionToken('STEPPER_GLOBAL_OPTIONS');\nclass CdkStep {\n _stepperOptions;\n _stepper = inject(CdkStepper);\n _displayDefaultIndicatorType;\n /** Template for step label if it exists. */\n stepLabel;\n /** Forms that have been projected into the step. */\n _childForms;\n /** Template for step content. */\n content;\n /** The top level abstract control of the step. */\n stepControl;\n /** Whether user has attempted to move away from the step. */\n get interacted() {\n return this._interacted();\n }\n set interacted(value) {\n this._interacted.set(value);\n }\n _interacted = signal(false);\n /** Emits when the user has attempted to move away from the step. */\n interactedStream = new EventEmitter();\n /** Plain text label of the step. */\n label;\n /** Error message to display when there's an error. */\n errorMessage;\n /** Aria label for the tab. */\n ariaLabel;\n /**\n * Reference to the element that the tab is labelled by.\n * Will be cleared if `aria-label` is set at the same time.\n */\n ariaLabelledby;\n /** State of the step. */\n get state() {\n return this._state();\n }\n set state(value) {\n this._state.set(value);\n }\n _state = signal(undefined);\n /** Whether the user can return to this step once it has been marked as completed. */\n get editable() {\n return this._editable();\n }\n set editable(value) {\n this._editable.set(value);\n }\n _editable = signal(true);\n /** Whether the completion of step is optional. */\n optional = false;\n /** Whether step is marked as completed. */\n get completed() {\n const override = this._completedOverride();\n const interacted = this._interacted();\n if (override != null) {\n return override;\n }\n return interacted && (!this.stepControl || this.stepControl.valid);\n }\n set completed(value) {\n this._completedOverride.set(value);\n }\n _completedOverride = signal(null);\n /** Current index of the step within the stepper. */\n index = signal(-1);\n /** Whether the step is selected. */\n isSelected = computed(() => this._stepper.selectedIndex === this.index());\n /** Type of indicator that should be shown for the step. */\n indicatorType = computed(() => {\n const selected = this.isSelected();\n const completed = this.completed;\n const defaultState = this._state() ?? STEP_STATE.NUMBER;\n const editable = this._editable();\n if (this._showError() && this.hasError && !selected) {\n return STEP_STATE.ERROR;\n }\n if (this._displayDefaultIndicatorType) {\n if (!completed || selected) {\n return STEP_STATE.NUMBER;\n }\n return editable ? STEP_STATE.EDIT : STEP_STATE.DONE;\n } else {\n if (completed && !selected) {\n return STEP_STATE.DONE;\n } else if (completed && selected) {\n return defaultState;\n }\n return editable && selected ? STEP_STATE.EDIT : defaultState;\n }\n });\n /** Whether the user can navigate to the step. */\n isNavigable = computed(() => {\n const isSelected = this.isSelected();\n const isCompleted = this.completed;\n return isCompleted || isSelected || !this._stepper.linear;\n });\n /** Whether step has an error. */\n get hasError() {\n const customError = this._customError();\n return customError == null ? this._getDefaultError() : customError;\n }\n set hasError(value) {\n this._customError.set(value);\n }\n _customError = signal(null);\n _getDefaultError() {\n return this.interacted && !!this.stepControl?.invalid;\n }\n constructor() {\n const stepperOptions = inject(STEPPER_GLOBAL_OPTIONS, {\n optional: true\n });\n this._stepperOptions = stepperOptions ? stepperOptions : {};\n this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;\n }\n /** Selects this step component. */\n select() {\n this._stepper.selected = this;\n }\n /** Resets the step to its initial state. Note that this includes resetting form data. */\n reset() {\n this._interacted.set(false);\n if (this._completedOverride() != null) {\n this._completedOverride.set(false);\n }\n if (this._customError() != null) {\n this._customError.set(false);\n }\n if (this.stepControl) {\n // Reset the forms since the default error state matchers will show errors on submit and we\n // want the form to be back to its initial state (see #29781). Submitted state is on the\n // individual directives, rather than the control, so we need to reset them ourselves.\n this._childForms?.forEach(form => form.resetForm?.());\n this.stepControl.reset();\n }\n }\n ngOnChanges() {\n // Since basically all inputs of the MatStep get proxied through the view down to the\n // underlying MatStepHeader, we have to make sure that change detection runs correctly.\n this._stepper._stateChanged();\n }\n _markAsInteracted() {\n if (!this._interacted()) {\n this._interacted.set(true);\n this.interactedStream.emit(this);\n }\n }\n /** Determines whether the error state can be shown. */\n _showError() {\n // We want to show the error state either if the user opted into/out of it using the\n // global options, or if they've explicitly set it through the `hasError` input.\n return this._stepperOptions.showError ?? this._customError() != null;\n }\n static ɵfac = function CdkStep_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || CdkStep)();\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: CdkStep,\n selectors: [[\"cdk-step\"]],\n contentQueries: function CdkStep_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, CdkStepLabel, 5);\n i0.ɵɵcontentQuery(dirIndex,\n // Note: we look for `ControlContainer` here, because both `NgForm` and `FormGroupDirective`\n // provides themselves as such, but we don't want to have a concrete reference to both of\n // the directives. The type is marked as `Partial` in case we run into a class that provides\n // itself as `ControlContainer` but doesn't have the same interface as the directives.\n ControlContainer, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.stepLabel = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._childForms = _t);\n }\n },\n viewQuery: function CdkStep_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(TemplateRef, 7);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.content = _t.first);\n }\n },\n inputs: {\n stepControl: \"stepControl\",\n label: \"label\",\n errorMessage: \"errorMessage\",\n ariaLabel: [0, \"aria-label\", \"ariaLabel\"],\n ariaLabelledby: [0, \"aria-labelledby\", \"ariaLabelledby\"],\n state: \"state\",\n editable: [2, \"editable\", \"editable\", booleanAttribute],\n optional: [2, \"optional\", \"optional\", booleanAttribute],\n completed: [2, \"completed\", \"completed\", booleanAttribute],\n hasError: [2, \"hasError\", \"hasError\", booleanAttribute]\n },\n outputs: {\n interactedStream: \"interacted\"\n },\n exportAs: [\"cdkStep\"],\n features: [i0.ɵɵNgOnChangesFeature],\n ngContentSelectors: _c0,\n decls: 1,\n vars: 0,\n template: function CdkStep_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef();\n i0.ɵɵdomTemplate(0, CdkStep_ng_template_0_Template, 1, 0, \"ng-template\");\n }\n },\n encapsulation: 2,\n changeDetection: 0\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CdkStep, [{\n type: Component,\n args: [{\n selector: 'cdk-step',\n exportAs: 'cdkStep',\n template: '<ng-template><ng-content/></ng-template>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], () => [], {\n stepLabel: [{\n type: ContentChild,\n args: [CdkStepLabel]\n }],\n _childForms: [{\n type: ContentChildren,\n args: [\n // Note: we look for `ControlContainer` here, because both `NgForm` and `FormGroupDirective`\n // provides themselves as such, but we don't want to have a concrete reference to both of\n // the directives. The type is marked as `Partial` in case we run into a class that provides\n // itself as `ControlContainer` but doesn't have the same interface as the directives.\n ControlContainer, {\n descendants: true\n }]\n }],\n content: [{\n type: ViewChild,\n args: [TemplateRef, {\n static: true\n }]\n }],\n stepControl: [{\n type: Input\n }],\n interactedStream: [{\n type: Output,\n args: ['interacted']\n }],\n label: [{\n type: Input\n }],\n errorMessage: [{\n type: Input\n }],\n ariaLabel: [{\n type: Input,\n args: ['aria-label']\n }],\n ariaLabelledby: [{\n type: Input,\n args: ['aria-labelledby']\n }],\n state: [{\n type: Input\n }],\n editable: [{\n type: Input,\n args: [{\n transform: booleanAttribute\n }]\n }],\n optional: [{\n type: Input,\n args: [{\n transform: booleanAttribute\n }]\n }],\n completed: [{\n type: Input,\n args: [{\n transform: booleanAttribute\n }]\n }],\n hasError: [{\n type: Input,\n args: [{\n transform: booleanAttribute\n }]\n }]\n });\n})();\nclass CdkStepper {\n _dir = inject(Directionality, {\n optional: true\n });\n _changeDetectorRef = inject(ChangeDetectorRef);\n _elementRef = inject(ElementRef);\n /** Emits when the component is destroyed. */\n _destroyed = new Subject();\n /** Used for managing keyboard focus. */\n _keyManager;\n /** Full list of steps inside the stepper, including inside nested steppers. */\n _steps;\n /** Steps that belong to the current stepper, excluding ones from nested steppers. */\n steps = new QueryList();\n /** The list of step headers of the steps in the stepper. */\n _stepHeader;\n /** List of step headers sorted based on their DOM order. */\n _sortedHeaders = new QueryList();\n /** Whether the validity of previous steps should be checked or not. */\n linear = false;\n /** The index of the selected step. */\n get selectedIndex() {\n return this._selectedIndex();\n }\n set selectedIndex(index) {\n if (this._steps) {\n // Ensure that the index can't be out of bounds.\n if (!this._isValidIndex(index) && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n }\n if (this.selectedIndex !== index) {\n this.selected?._markAsInteracted();\n if (!this._anyControlsInvalidOrPending(index) && (index >= this.selectedIndex || this.steps.toArray()[index].editable)) {\n this._updateSelectedItemIndex(index);\n }\n }\n } else {\n this._selectedIndex.set(index);\n }\n }\n _selectedIndex = signal(0);\n /** The step that is selected. */\n get selected() {\n return this.steps ? this.steps.toArray()[this.selectedIndex] : undefined;\n }\n set selected(step) {\n this.selectedIndex = step && this.steps ? this.steps.toArray().indexOf(step) : -1;\n }\n /** Event emitted when the selected step has changed. */\n selectionChange = new EventEmitter();\n /** Output to support two-way binding on `[(selectedIndex)]` */\n selectedIndexChange = new EventEmitter();\n /** Used to track unique ID for each stepper component. */\n _groupId = inject(_IdGenerator).getId('cdk-stepper-');\n /** Orientation of the stepper. */\n get orientation() {\n return this._orientation;\n }\n set orientation(value) {\n // This is a protected method so that `MatStepper` can hook into it.\n this._orientation = value;\n if (this._keyManager) {\n this._keyManager.withVerticalOrientation(value === 'vertical');\n }\n }\n _orientation = 'horizontal';\n constructor() {}\n ngAfterContentInit() {\n this._steps.changes.pipe(startWith(this._steps), takeUntil(this._destroyed)).subscribe(steps => {\n this.steps.reset(steps.filter(step => step._stepper === this));\n this.steps.forEach((step, index) => step.index.set(index));\n this.steps.notifyOnChanges();\n });\n }\n ngAfterViewInit() {\n // If the step headers are defined outside of the `ngFor` that renders the steps, like in the\n // Material stepper, they won't appear in the `QueryList` in the same order as they're\n // rendered in the DOM which will lead to incorrect keyboard navigation. We need to sort\n // them manually to ensure that they're correct. Alternatively, we can change the Material\n // template to inline the headers in the `ngFor`, but that'll result in a lot of\n // code duplication. See #23539.\n this._stepHeader.changes.pipe(startWith(this._stepHeader), takeUntil(this._destroyed)).subscribe(headers => {\n this._sortedHeaders.reset(headers.toArray().sort((a, b) => {\n const documentPosition = a._elementRef.nativeElement.compareDocumentPosition(b._elementRef.nativeElement);\n // `compareDocumentPosition` returns a bitmask so we have to use a bitwise operator.\n // https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition\n // tslint:disable-next-line:no-bitwise\n return documentPosition & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n }));\n this._sortedHeaders.notifyOnChanges();\n });\n // Note that while the step headers are content children by default, any components that\n // extend this one might have them as view children. We initialize the keyboard handling in\n // AfterViewInit so we're guaranteed for both view and content children to be defined.\n this._keyManager = new FocusKeyManager(this._sortedHeaders).withWrap().withHomeAndEnd().withVerticalOrientation(this._orientation === 'vertical');\n // The selected index may have changed between when the component was created and when the\n // key manager was initialized. Use `updateActiveItem` so it's correct, but it doesn't steal\n // away focus from the user.\n this._keyManager.updateActiveItem(this.selectedIndex);\n (this._dir ? this._dir.change : of()).pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed)).subscribe(direction => this._keyManager?.withHorizontalOrientation(direction));\n this._keyManager.updateActiveItem(this.selectedIndex);\n // No need to `takeUntil` here, because we're the ones destroying `steps`.\n this.steps.changes.subscribe(() => {\n if (!this.selected) {\n this._selectedIndex.set(Math.max(this.selectedIndex - 1, 0));\n }\n });\n // The logic which asserts that the selected index is within bounds doesn't run before the\n // steps are initialized, because we don't how many steps there are yet so we may have an\n // invalid index on init. If that's the case, auto-correct to the default so we don't throw.\n if (!this._isValidIndex(this.selectedIndex)) {\n this._selectedIndex.set(0);\n }\n // For linear step and selected index is greater than zero,\n // set all the previous steps to interacted so that we can navigate to previous steps.\n if (this.linear && this.selectedIndex > 0) {\n const visitedSteps = this.steps.toArray().slice(0, this._selectedIndex());\n for (const step of visitedSteps) {\n step._markAsInteracted();\n }\n }\n }\n ngOnDestroy() {\n this._keyManager?.destroy();\n this.steps.destroy();\n this._sortedHeaders.destroy();\n this._destroyed.next();\n this._destroyed.complete();\n }\n /** Selects and focuses the next step in list. */\n next() {\n this.selectedIndex = Math.min(this._selectedIndex() + 1, this.steps.length - 1);\n }\n /** Selects and focuses the previous step in list. */\n previous() {\n this.selectedIndex = Math.max(this._selectedIndex() - 1, 0);\n }\n /** Resets the stepper to its initial state. Note that this includes clearing form data. */\n reset() {\n this._updateSelectedItemIndex(0);\n this.steps.forEach(step => step.reset());\n this._stateChanged();\n }\n /** Returns a unique id for each step label element. */\n _getStepLabelId(i) {\n return `${this._groupId}-label-${i}`;\n }\n /** Returns unique id for each step content element. */\n _getStepContentId(i) {\n return `${this._groupId}-content-${i}`;\n }\n /** Marks the component to be change detected. */\n _stateChanged() {\n this._changeDetectorRef.markForCheck();\n }\n /** Returns position state of the step with the given index. */\n _getAnimationDirection(index) {\n const position = index - this._selectedIndex();\n if (position < 0) {\n return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n } else if (position > 0) {\n return this._layoutDirection() === 'rtl' ? 'previous' : 'next';\n }\n return 'current';\n }\n /** Returns the index of the currently-focused step header. */\n _getFocusIndex() {\n return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex();\n }\n _updateSelectedItemIndex(newIndex) {\n const stepsArray = this.steps.toArray();\n const selectedIndex = this._selectedIndex();\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[selectedIndex]\n });\n // If focus is inside the stepper, move it to the next header, otherwise it may become\n // lost when the active step content is hidden. We can't be more granular with the check\n // (e.g. checking whether focus is inside the active step), because we don't have a\n // reference to the elements that are rendering out the content.\n if (this._keyManager) {\n this._containsFocus() ? this._keyManager.setActiveItem(newIndex) : this._keyManager.updateActiveItem(newIndex);\n }\n this._selectedIndex.set(newIndex);\n this.selectedIndexChange.emit(newIndex);\n this._stateChanged();\n }\n _onKeydown(event) {\n const hasModifier = hasModifierKey(event);\n const keyCode = event.keyCode;\n const manager = this._keyManager;\n if (manager?.activeItemIndex != null && !hasModifier && (keyCode === SPACE || keyCode === ENTER)) {\n this.selectedIndex = manager.activeItemIndex;\n event.preventDefault();\n } else {\n manager?.setFocusOrigin('keyboard').onKeydown(event);\n }\n }\n _anyControlsInvalidOrPending(index) {\n if (this.linear && index >= 0) {\n return this.steps.toArray().slice(0, index).some(step => {\n const control = step.stepControl;\n const isIncomplete = control ? control.invalid || control.pending || !step.interacted : !step.completed;\n return isIncomplete && !step.optional && !step._completedOverride();\n });\n }\n return false;\n }\n _layoutDirection() {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\n /** Checks whether the stepper contains the focused element. */\n _containsFocus() {\n const stepperElement = this._elementRef.nativeElement;\n const focusedElement = _getFocusedElementPierceShadowDom();\n return stepperElement === focusedElement || stepperElement.contains(focusedElement);\n }\n /** Checks whether the passed-in index is a valid step index. */\n _isValidIndex(index) {\n return index > -1 && (!this.steps || index < this.steps.length);\n }\n static ɵfac = function CdkStepper_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || CdkStepper)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: CdkStepper,\n selectors: [[\"\", \"cdkStepper\", \"\"]],\n contentQueries: function CdkStepper_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, CdkStep, 5);\n i0.ɵɵcontentQuery(dirIndex, CdkStepHeader, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._steps = _t);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._stepHeader = _t);\n }\n },\n inputs: {\n linear: [2, \"linear\", \"linear\", booleanAttribute],\n selectedIndex: [2, \"selectedIndex\", \"selectedIndex\", numberAttribute],\n selected: \"selected\",\n orientation: \"orientation\"\n },\n outputs: {\n selectionChange: \"selectionChange\",\n selectedIndexChange: \"selectedIndexChange\"\n },\n exportAs: [\"cdkStepper\"]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CdkStepper, [{\n type: Directive,\n args: [{\n selector: '[cdkStepper]',\n exportAs: 'cdkStepper'\n }]\n }], () => [], {\n _steps: [{\n type: ContentChildren,\n args: [CdkStep, {\n descendants: true\n }]\n }],\n _stepHeader: [{\n type: ContentChildren,\n args: [CdkStepHeader, {\n descendants: true\n }]\n }],\n linear: [{\n type: Input,\n args: [{\n transform: booleanAttribute\n }]\n }],\n selectedIndex: [{\n type: Input,\n args: [{\n transform: numberAttribute\n }]\n }],\n selected: [{\n type: Input\n }],\n selectionChange: [{\n type: Output\n }],\n selectedIndexChange: [{\n type: Output\n }],\n orientation: [{\n type: Input\n }]\n });\n})();\n\n/** Button that moves to the next step in a stepper workflow. */\nclass CdkStepperNext {\n _stepper = inject(CdkStepper);\n /** Type of the next button. Defaults to \"submit\" if not specified. */\n type = 'submit';\n constructor() {}\n static ɵfac = function CdkStepperNext_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || CdkStepperNext)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: CdkStepperNext,\n selectors: [[\"button\", \"cdkStepperNext\", \"\"]],\n hostVars: 1,\n hostBindings: function CdkStepperNext_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"click\", function CdkStepperNext_click_HostBindingHandler() {\n return ctx._stepper.next();\n });\n }\n if (rf & 2) {\n i0.ɵɵdomProperty(\"type\", ctx.type);\n }\n },\n inputs: {\n type: \"type\"\n }\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CdkStepperNext, [{\n type: Directive,\n args: [{\n selector: 'button[cdkStepperNext]',\n host: {\n '[type]': 'type',\n '(click)': '_stepper.next()'\n }\n }]\n }], () => [], {\n type: [{\n type: Input\n }]\n });\n})();\n/** Button that moves to the previous step in a stepper workflow. */\nclass CdkStepperPrevious {\n _stepper = inject(CdkStepper);\n /** Type of the previous button. Defaults to \"button\" if not specified. */\n type = 'button';\n constructor() {}\n static ɵfac = function CdkStepperPrevious_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || CdkStepperPrevious)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: CdkStepperPrevious,\n selectors: [[\"button\", \"cdkStepperPrevious\", \"\"]],\n hostVars: 1,\n hostBindings: function CdkStepperPrevious_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"click\", function CdkStepperPrevious_click_HostBindingHandler() {\n return ctx._stepper.previous();\n });\n }\n if (rf & 2) {\n i0.ɵɵdomProperty(\"type\", ctx.type);\n }\n },\n inputs: {\n type: \"type\"\n }\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CdkStepperPrevious, [{\n type: Directive,\n args: [{\n selector: 'button[cdkStepperPrevious]',\n host: {\n '[type]': 'type',\n '(click)': '_stepper.previous()'\n }\n }]\n }], () => [], {\n type: [{\n type: Input\n }]\n });\n})();\nclass CdkStepperModule {\n static ɵfac = function CdkStepperModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || CdkStepperModule)();\n };\n static ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: CdkStepperModule,\n imports: [BidiModule, CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],\n exports: [CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]\n });\n static ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({\n imports: [BidiModule]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CdkStepperModule, [{\n type: NgModule,\n args: [{\n imports: [BidiModule, CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],\n exports: [CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]\n }]\n }], null, null);\n})();\nexport { CdkStep, CdkStepHeader, CdkStepLabel, CdkStepper, CdkStepperModule, CdkStepperNext, CdkStepperPrevious, STEPPER_GLOBAL_OPTIONS, STEP_STATE, StepperSelectionEvent };\n","import { TemplatePortal, CdkPortalOutlet, PortalModule } from '@angular/cdk/portal';\nimport { CdkStepLabel, CdkStepHeader, CdkStep, CdkStepper, CdkStepperNext, CdkStepperPrevious, CdkStepperModule } from '@angular/cdk/stepper';\nimport * as i0 from '@angular/core';\nimport { Directive, Injectable, Optional, SkipSelf, inject, ChangeDetectorRef, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, TemplateRef, ViewContainerRef, ContentChild, NgZone, Renderer2, signal, QueryList, EventEmitter, ElementRef, ViewChildren, ContentChildren, Output, NgModule } from '@angular/core';\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { Subject, Subscription } from 'rxjs';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { _CdkPrivateStyleLoader, _VisuallyHiddenLoader } from '@angular/cdk/private';\nimport { MatIcon, MatIconModule } from './icon.mjs';\nimport { _ as _StructuralStylesLoader } from './structural-styles-CObeNzjn.mjs';\nimport { M as MatRipple } from './ripple-BMyyyLz2.mjs';\nimport { Platform } from '@angular/cdk/platform';\nimport { switchMap, map, startWith, takeUntil } from 'rxjs/operators';\nimport { E as ErrorStateMatcher } from './error-options-DCNQlTOA.mjs';\nimport { _ as _animationsDisabled } from './animation-ChQ1vjiF.mjs';\nimport { M as MatCommonModule } from './common-module-cKSwHniA.mjs';\nimport { M as MatRippleModule } from './index-BRImSAOu.mjs';\nimport './icon-registry-CwOTJ7YM.mjs';\nimport '@angular/common/http';\nimport '@angular/platform-browser';\nimport '@angular/cdk/coercion';\nimport '@angular/cdk/layout';\nimport '@angular/cdk/bidi';\nconst _c0 = (a0, a1, a2) => ({\n index: a0,\n active: a1,\n optional: a2\n});\nfunction MatStepHeader_Conditional_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0, 2);\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r0.iconOverrides[ctx_r0.state])(\"ngTemplateOutletContext\", i0.ɵɵpureFunction3(2, _c0, ctx_r0.index, ctx_r0.active, ctx_r0.optional));\n }\n}\nfunction MatStepHeader_Conditional_4_Case_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 7);\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext(2);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r0._getDefaultTextForState(ctx_r0.state));\n }\n}\nfunction MatStepHeader_Conditional_4_Case_1_Conditional_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 8);\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext(3);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r0._intl.completedLabel);\n }\n}\nfunction MatStepHeader_Conditional_4_Case_1_Conditional_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 8);\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext(3);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r0._intl.editableLabel);\n }\n}\nfunction MatStepHeader_Conditional_4_Case_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵconditionalCreate(0, MatStepHeader_Conditional_4_Case_1_Conditional_0_Template, 2, 1, \"span\", 8)(1, MatStepHeader_Conditional_4_Case_1_Conditional_1_Template, 2, 1, \"span\", 8);\n i0.ɵɵelementStart(2, \"mat-icon\", 7);\n i0.ɵɵtext(3);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext(2);\n i0.ɵɵconditional(ctx_r0.state === \"done\" ? 0 : ctx_r0.state === \"edit\" ? 1 : -1);\n i0.ɵɵadvance(3);\n i0.ɵɵtextInterpolate(ctx_r0._getDefaultTextForState(ctx_r0.state));\n }\n}\nfunction MatStepHeader_Conditional_4_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵconditionalCreate(0, MatStepHeader_Conditional_4_Case_0_Template, 2, 1, \"span\", 7)(1, MatStepHeader_Conditional_4_Case_1_Template, 4, 2);\n }\n if (rf & 2) {\n let tmp_1_0;\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵconditional((tmp_1_0 = ctx_r0.state) === \"number\" ? 0 : 1);\n }\n}\nfunction MatStepHeader_Conditional_6_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 4);\n i0.ɵɵelementContainer(1, 9);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx.template);\n }\n}\nfunction MatStepHeader_Conditional_7_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 4);\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r0.label);\n }\n}\nfunction MatStepHeader_Conditional_8_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 5);\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r0._intl.optionalLabel);\n }\n}\nfunction MatStepHeader_Conditional_9_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 6);\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r0.errorMessage);\n }\n}\nconst _c1 = [\"*\"];\nfunction MatStep_ng_template_0_ng_template_1_Template(rf, ctx) {}\nfunction MatStep_ng_template_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojection(0);\n i0.ɵɵtemplate(1, MatStep_ng_template_0_ng_template_1_Template, 0, 0, \"ng-template\", 0);\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"cdkPortalOutlet\", ctx_r0._portal);\n }\n}\nconst _c2 = [\"animatedContainer\"];\nconst _c3 = a0 => ({\n step: a0\n});\nfunction MatStepper_Conditional_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojection(0);\n }\n}\nfunction MatStepper_Case_1_For_3_Conditional_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"div\", 7);\n }\n}\nfunction MatStepper_Case_1_For_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0, 6);\n i0.ɵɵconditionalCreate(1, MatStepper_Case_1_For_3_Conditional_1_Template, 1, 0, \"div\", 7);\n }\n if (rf & 2) {\n const step_r1 = ctx.$implicit;\n const ɵ$index_8_r2 = ctx.$index;\n const ɵ$count_8_r3 = ctx.$count;\n i0.ɵɵnextContext(2);\n const stepTemplate_r4 = i0.ɵɵreference(4);\n i0.ɵɵproperty(\"ngTemplateOutlet\", stepTemplate_r4)(\"ngTemplateOutletContext\", i0.ɵɵpureFunction1(3, _c3, step_r1));\n i0.ɵɵadvance();\n i0.ɵɵconditional(!(ɵ$index_8_r2 === ɵ$count_8_r3 - 1) ? 1 : -1);\n }\n}\nfunction MatStepper_Case_1_For_6_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 8, 1);\n i0.ɵɵelementContainer(2, 9);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const step_r5 = ctx.$implicit;\n const $index_r6 = ctx.$index;\n const ctx_r6 = i0.ɵɵnextContext(2);\n i0.ɵɵclassMap(\"mat-horizontal-stepper-content-\" + ctx_r6._getAnimationDirection($index_r6));\n i0.ɵɵproperty(\"id\", ctx_r6._getStepContentId($index_r6));\n i0.ɵɵattribute(\"aria-labelledby\", ctx_r6._getStepLabelId($index_r6))(\"inert\", ctx_r6.selectedIndex === $index_r6 ? null : \"\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngTemplateOutlet\", step_r5.content);\n }\n}\nfunction MatStepper_Case_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 2)(1, \"div\", 3);\n i0.ɵɵrepeaterCreate(2, MatStepper_Case_1_For_3_Template, 2, 5, null, null, i0.ɵɵrepeaterTrackByIdentity);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 4);\n i0.ɵɵrepeaterCreate(5, MatStepper_Case_1_For_6_Template, 3, 6, \"div\", 5, i0.ɵɵrepeaterTrackByIdentity);\n i0.ɵɵelementEnd()();\n }\n if (rf & 2) {\n const ctx_r6 = i0.ɵɵnextContext();\n i0.ɵɵadvance(2);\n i0.ɵɵrepeater(ctx_r6.steps);\n i0.ɵɵadvance(3);\n i0.ɵɵrepeater(ctx_r6.steps);\n }\n}\nfunction MatStepper_Case_2_For_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 10);\n i0.ɵɵelementContainer(1, 6);\n i0.ɵɵelementStart(2, \"div\", 11, 1)(4, \"div\", 12)(5, \"div\", 13);\n i0.ɵɵelementContainer(6, 9);\n i0.ɵɵelementEnd()()()();\n }\n if (rf & 2) {\n const step_r8 = ctx.$implicit;\n const $index_r9 = ctx.$index;\n const ɵ$index_22_r10 = ctx.$index;\n const ɵ$count_22_r11 = ctx.$count;\n const ctx_r6 = i0.ɵɵnextContext(2);\n const stepTemplate_r4 = i0.ɵɵreference(4);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngTemplateOutlet\", stepTemplate_r4)(\"ngTemplateOutletContext\", i0.ɵɵpureFunction1(10, _c3, step_r8));\n i0.ɵɵadvance();\n i0.ɵɵclassProp(\"mat-stepper-vertical-line\", !(ɵ$index_22_r10 === ɵ$count_22_r11 - 1))(\"mat-vertical-content-container-active\", ctx_r6.selectedIndex === $index_r9);\n i0.ɵɵattribute(\"inert\", ctx_r6.selectedIndex === $index_r9 ? null : \"\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"id\", ctx_r6._getStepContentId($index_r9));\n i0.ɵɵattribute(\"aria-labelledby\", ctx_r6._getStepLabelId($index_r9));\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngTemplateOutlet\", step_r8.content);\n }\n}\nfunction MatStepper_Case_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵrepeaterCreate(0, MatStepper_Case_2_For_1_Template, 7, 12, \"div\", 10, i0.ɵɵrepeaterTrackByIdentity);\n }\n if (rf & 2) {\n const ctx_r6 = i0.ɵɵnextContext();\n i0.ɵɵrepeater(ctx_r6.steps);\n }\n}\nfunction MatStepper_ng_template_3_Template(rf, ctx) {\n if (rf & 1) {\n const _r12 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"mat-step-header\", 14);\n i0.ɵɵlistener(\"click\", function MatStepper_ng_template_3_Template_mat_step_header_click_0_listener() {\n const step_r13 = i0.ɵɵrestoreView(_r12).step;\n return i0.ɵɵresetView(step_r13.select());\n })(\"keydown\", function MatStepper_ng_template_3_Template_mat_step_header_keydown_0_listener($event) {\n i0.ɵɵrestoreView(_r12);\n const ctx_r6 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r6._onKeydown($event));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const step_r13 = ctx.step;\n const ctx_r6 = i0.ɵɵnextContext();\n i0.ɵɵclassProp(\"mat-horizontal-stepper-header\", ctx_r6.orientation === \"horizontal\")(\"mat-vertical-stepper-header\", ctx_r6.orientation === \"vertical\");\n i0.ɵɵproperty(\"tabIndex\", ctx_r6._getFocusIndex() === step_r13.index() ? 0 : -1)(\"id\", ctx_r6._getStepLabelId(step_r13.index()))(\"index\", step_r13.index())(\"state\", step_r13.indicatorType())(\"label\", step_r13.stepLabel || step_r13.label)(\"selected\", step_r13.isSelected())(\"active\", step_r13.isNavigable())(\"optional\", step_r13.optional)(\"errorMessage\", step_r13.errorMessage)(\"iconOverrides\", ctx_r6._iconOverrides)(\"disableRipple\", ctx_r6.disableRipple || !step_r13.isNavigable())(\"color\", step_r13.color || ctx_r6.color);\n i0.ɵɵattribute(\"aria-posinset\", step_r13.index() + 1)(\"aria-setsize\", ctx_r6.steps.length)(\"aria-controls\", ctx_r6._getStepContentId(step_r13.index()))(\"aria-selected\", step_r13.isSelected())(\"aria-label\", step_r13.ariaLabel || null)(\"aria-labelledby\", !step_r13.ariaLabel && step_r13.ariaLabelledby ? step_r13.ariaLabelledby : null)(\"aria-disabled\", step_r13.isNavigable() ? null : true);\n }\n}\nclass MatStepLabel extends CdkStepLabel {\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatStepLabel_BaseFactory;\n return function MatStepLabel_Factory(__ngFactoryType__) {\n return (ɵMatStepLabel_BaseFactory || (ɵMatStepLabel_BaseFactory = i0.ɵɵgetInheritedFactory(MatStepLabel)))(__ngFactoryType__ || MatStepLabel);\n };\n })();\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatStepLabel,\n selectors: [[\"\", \"matStepLabel\", \"\"]],\n features: [i0.ɵɵInheritDefinitionFeature]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepLabel, [{\n type: Directive,\n args: [{\n selector: '[matStepLabel]'\n }]\n }], null, null);\n})();\n\n/** Stepper data that is required for internationalization. */\nclass MatStepperIntl {\n /**\n * Stream that emits whenever the labels here are changed. Use this to notify\n * components if the labels have changed after initialization.\n */\n changes = new Subject();\n /** Label that is rendered below optional steps. */\n optionalLabel = 'Optional';\n /** Label that is used to indicate step as completed to screen readers. */\n completedLabel = 'Completed';\n /** Label that is used to indicate step as editable to screen readers. */\n editableLabel = 'Editable';\n static ɵfac = function MatStepperIntl_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatStepperIntl)();\n };\n static ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: MatStepperIntl,\n factory: MatStepperIntl.ɵfac,\n providedIn: 'root'\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepperIntl, [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }], null, null);\n})();\n/**\n * @docs-private\n * @deprecated No longer used, will be removed.\n * @breaking-change 21.0.0\n */\nfunction MAT_STEPPER_INTL_PROVIDER_FACTORY(parentIntl) {\n return parentIntl || new MatStepperIntl();\n}\n/**\n * @docs-private\n * @deprecated No longer used, will be removed.\n * @breaking-change 21.0.0\n */\nconst MAT_STEPPER_INTL_PROVIDER = {\n provide: MatStepperIntl,\n deps: [[new Optional(), new SkipSelf(), MatStepperIntl]],\n useFactory: MAT_STEPPER_INTL_PROVIDER_FACTORY\n};\nclass MatStepHeader extends CdkStepHeader {\n _intl = inject(MatStepperIntl);\n _focusMonitor = inject(FocusMonitor);\n _intlSubscription;\n /** State of the given step. */\n state;\n /** Label of the given step. */\n label;\n /** Error message to display when there's an error. */\n errorMessage;\n /** Overrides for the header icons, passed in via the stepper. */\n iconOverrides;\n /** Index of the given step. */\n index;\n /** Whether the given step is selected. */\n selected;\n /** Whether the given step label is active. */\n active;\n /** Whether the given step is optional. */\n optional;\n /** Whether the ripple should be disabled. */\n disableRipple;\n /**\n * Theme color of the step header. This API is supported in M2 themes only, it\n * has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/stepper/styling.\n *\n * For information on applying color variants in M3, see\n * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n */\n color;\n constructor() {\n super();\n const styleLoader = inject(_CdkPrivateStyleLoader);\n styleLoader.load(_StructuralStylesLoader);\n styleLoader.load(_VisuallyHiddenLoader);\n const changeDetectorRef = inject(ChangeDetectorRef);\n this._intlSubscription = this._intl.changes.subscribe(() => changeDetectorRef.markForCheck());\n }\n ngAfterViewInit() {\n this._focusMonitor.monitor(this._elementRef, true);\n }\n ngOnDestroy() {\n this._intlSubscription.unsubscribe();\n this._focusMonitor.stopMonitoring(this._elementRef);\n }\n /** Focuses the step header. */\n focus(origin, options) {\n if (origin) {\n this._focusMonitor.focusVia(this._elementRef, origin, options);\n } else {\n this._elementRef.nativeElement.focus(options);\n }\n }\n /** Returns string label of given step if it is a text label. */\n _stringLabel() {\n return this.label instanceof MatStepLabel ? null : this.label;\n }\n /** Returns MatStepLabel if the label of given step is a template label. */\n _templateLabel() {\n return this.label instanceof MatStepLabel ? this.label : null;\n }\n /** Returns the host HTML element. */\n _getHostElement() {\n return this._elementRef.nativeElement;\n }\n _getDefaultTextForState(state) {\n if (state == 'number') {\n return `${this.index + 1}`;\n }\n if (state == 'edit') {\n return 'create';\n }\n if (state == 'error') {\n return 'warning';\n }\n return state;\n }\n _hasEmptyLabel() {\n return !this._stringLabel() && !this._templateLabel() && !this._hasOptionalLabel() && !this._hasErrorLabel();\n }\n _hasOptionalLabel() {\n return this.optional && this.state !== 'error';\n }\n _hasErrorLabel() {\n return this.state === 'error';\n }\n static ɵfac = function MatStepHeader_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatStepHeader)();\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatStepHeader,\n selectors: [[\"mat-step-header\"]],\n hostAttrs: [\"role\", \"tab\", 1, \"mat-step-header\"],\n hostVars: 4,\n hostBindings: function MatStepHeader_HostBindings(rf, ctx) {\n if (rf & 2) {\n i0.ɵɵclassMap(\"mat-\" + (ctx.color || \"primary\"));\n i0.ɵɵclassProp(\"mat-step-header-empty-label\", ctx._hasEmptyLabel());\n }\n },\n inputs: {\n state: \"state\",\n label: \"label\",\n errorMessage: \"errorMessage\",\n iconOverrides: \"iconOverrides\",\n index: \"index\",\n selected: \"selected\",\n active: \"active\",\n optional: \"optional\",\n disableRipple: \"disableRipple\",\n color: \"color\"\n },\n features: [i0.ɵɵInheritDefinitionFeature],\n decls: 10,\n vars: 17,\n consts: [[\"matRipple\", \"\", 1, \"mat-step-header-ripple\", \"mat-focus-indicator\", 3, \"matRippleTrigger\", \"matRippleDisabled\"], [1, \"mat-step-icon-content\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"], [1, \"mat-step-label\"], [1, \"mat-step-text-label\"], [1, \"mat-step-optional\"], [1, \"mat-step-sub-label-error\"], [\"aria-hidden\", \"true\"], [1, \"cdk-visually-hidden\"], [3, \"ngTemplateOutlet\"]],\n template: function MatStepHeader_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"div\", 0);\n i0.ɵɵelementStart(1, \"div\")(2, \"div\", 1);\n i0.ɵɵconditionalCreate(3, MatStepHeader_Conditional_3_Template, 1, 6, \"ng-container\", 2)(4, MatStepHeader_Conditional_4_Template, 2, 1);\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(5, \"div\", 3);\n i0.ɵɵconditionalCreate(6, MatStepHeader_Conditional_6_Template, 2, 1, \"div\", 4)(7, MatStepHeader_Conditional_7_Template, 2, 1, \"div\", 4);\n i0.ɵɵconditionalCreate(8, MatStepHeader_Conditional_8_Template, 2, 1, \"div\", 5);\n i0.ɵɵconditionalCreate(9, MatStepHeader_Conditional_9_Template, 2, 1, \"div\", 6);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n let tmp_8_0;\n i0.ɵɵproperty(\"matRippleTrigger\", ctx._getHostElement())(\"matRippleDisabled\", ctx.disableRipple);\n i0.ɵɵadvance();\n i0.ɵɵclassMap(i0.ɵɵinterpolate1(\"mat-step-icon-state-\", ctx.state, \" mat-step-icon\"));\n i0.ɵɵclassProp(\"mat-step-icon-selected\", ctx.selected);\n i0.ɵɵadvance(2);\n i0.ɵɵconditional(ctx.iconOverrides && ctx.iconOverrides[ctx.state] ? 3 : 4);\n i0.ɵɵadvance(2);\n i0.ɵɵclassProp(\"mat-step-label-active\", ctx.active)(\"mat-step-label-selected\", ctx.selected)(\"mat-step-label-error\", ctx.state == \"error\");\n i0.ɵɵadvance();\n i0.ɵɵconditional((tmp_8_0 = ctx._templateLabel()) ? 6 : ctx._stringLabel() ? 7 : -1, tmp_8_0);\n i0.ɵɵadvance(2);\n i0.ɵɵconditional(ctx._hasOptionalLabel() ? 8 : -1);\n i0.ɵɵadvance();\n i0.ɵɵconditional(ctx._hasErrorLabel() ? 9 : -1);\n }\n },\n dependencies: [MatRipple, NgTemplateOutlet, MatIcon],\n styles: [\".mat-step-header{overflow:hidden;outline:none;cursor:pointer;position:relative;box-sizing:content-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-step-header:focus .mat-focus-indicator::before{content:\\\"\\\"}.mat-step-header:hover[aria-disabled=true]{cursor:default}.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:var(--mat-stepper-header-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent));border-radius:var(--mat-stepper-header-hover-state-layer-shape, var(--mat-sys-corner-medium))}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused{background-color:var(--mat-stepper-header-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));border-radius:var(--mat-stepper-header-focus-state-layer-shape, var(--mat-sys-corner-medium))}@media(hover: none){.mat-step-header:hover{background:none}}@media(forced-colors: active){.mat-step-header{outline:solid 1px}.mat-step-header[aria-selected=true] .mat-step-label{text-decoration:underline}.mat-step-header[aria-disabled=true]{outline-color:GrayText}.mat-step-header[aria-disabled=true] .mat-step-label,.mat-step-header[aria-disabled=true] .mat-step-icon,.mat-step-header[aria-disabled=true] .mat-step-optional{color:GrayText}}.mat-step-optional{font-size:12px;color:var(--mat-stepper-header-optional-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-sub-label-error{font-size:12px;font-weight:normal}.mat-step-icon{border-radius:50%;height:24px;width:24px;flex-shrink:0;position:relative;color:var(--mat-stepper-header-icon-foreground-color, var(--mat-sys-surface));background-color:var(--mat-stepper-header-icon-background-color, var(--mat-sys-on-surface-variant))}.mat-step-icon-content{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);display:flex}.mat-step-icon .mat-icon{font-size:16px;height:16px;width:16px}.mat-step-icon-state-error{background-color:var(--mat-stepper-header-error-state-icon-background-color, transparent);color:var(--mat-stepper-header-error-state-icon-foreground-color, var(--mat-sys-error))}.mat-step-icon-state-error .mat-icon{font-size:24px;height:24px;width:24px}.mat-step-label{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:50px;vertical-align:middle;font-family:var(--mat-stepper-header-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-stepper-header-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-stepper-header-label-text-weight, var(--mat-sys-title-small-weight));color:var(--mat-stepper-header-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-label.mat-step-label-active{color:var(--mat-stepper-header-selected-state-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-label.mat-step-label-error{color:var(--mat-stepper-header-error-state-label-text-color, var(--mat-sys-error));font-size:var(--mat-stepper-header-error-state-label-text-size, var(--mat-sys-title-small-size))}.mat-step-label.mat-step-label-selected{font-size:var(--mat-stepper-header-selected-state-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-stepper-header-selected-state-label-text-weight, var(--mat-sys-title-small-weight))}.mat-step-header-empty-label .mat-step-label{min-width:0}.mat-step-text-label{text-overflow:ellipsis;overflow:hidden}.mat-step-header .mat-step-header-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-step-icon-selected{background-color:var(--mat-stepper-header-selected-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-selected-state-icon-foreground-color, var(--mat-sys-on-primary))}.mat-step-icon-state-done{background-color:var(--mat-stepper-header-done-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-done-state-icon-foreground-color, var(--mat-sys-on-primary))}.mat-step-icon-state-edit{background-color:var(--mat-stepper-header-edit-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-edit-state-icon-foreground-color, var(--mat-sys-on-primary))}\\n\"],\n encapsulation: 2,\n changeDetection: 0\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepHeader, [{\n type: Component,\n args: [{\n selector: 'mat-step-header',\n host: {\n 'class': 'mat-step-header',\n '[class.mat-step-header-empty-label]': '_hasEmptyLabel()',\n '[class]': '\"mat-\" + (color || \"primary\")',\n 'role': 'tab'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatRipple, NgTemplateOutlet, MatIcon],\n template: \"<div class=\\\"mat-step-header-ripple mat-focus-indicator\\\" matRipple\\n [matRippleTrigger]=\\\"_getHostElement()\\\"\\n [matRippleDisabled]=\\\"disableRipple\\\"></div>\\n\\n<div class=\\\"mat-step-icon-state-{{state}} mat-step-icon\\\" [class.mat-step-icon-selected]=\\\"selected\\\">\\n <div class=\\\"mat-step-icon-content\\\">\\n @if (iconOverrides && iconOverrides[state]) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"iconOverrides[state]\\\"\\n [ngTemplateOutletContext]=\\\"{index, active, optional}\\\"></ng-container>\\n } @else {\\n @switch (state) {\\n @case ('number') {\\n <span aria-hidden=\\\"true\\\">{{_getDefaultTextForState(state)}}</span>\\n }\\n\\n @default {\\n @if (state === 'done') {\\n <span class=\\\"cdk-visually-hidden\\\">{{_intl.completedLabel}}</span>\\n } @else if (state === 'edit') {\\n <span class=\\\"cdk-visually-hidden\\\">{{_intl.editableLabel}}</span>\\n }\\n\\n <mat-icon aria-hidden=\\\"true\\\">{{_getDefaultTextForState(state)}}</mat-icon>\\n }\\n }\\n }\\n </div>\\n</div>\\n<div class=\\\"mat-step-label\\\"\\n [class.mat-step-label-active]=\\\"active\\\"\\n [class.mat-step-label-selected]=\\\"selected\\\"\\n [class.mat-step-label-error]=\\\"state == 'error'\\\">\\n @if (_templateLabel(); as templateLabel) {\\n <!-- If there is a label template, use it. -->\\n <div class=\\\"mat-step-text-label\\\">\\n <ng-container [ngTemplateOutlet]=\\\"templateLabel.template\\\"></ng-container>\\n </div>\\n } @else if (_stringLabel()) {\\n <!-- If there is no label template, fall back to the text label. -->\\n <div class=\\\"mat-step-text-label\\\">{{label}}</div>\\n }\\n\\n @if (_hasOptionalLabel()) {\\n <div class=\\\"mat-step-optional\\\">{{_intl.optionalLabel}}</div>\\n }\\n\\n @if (_hasErrorLabel()) {\\n <div class=\\\"mat-step-sub-label-error\\\">{{errorMessage}}</div>\\n }\\n</div>\\n\\n\",\n styles: [\".mat-step-header{overflow:hidden;outline:none;cursor:pointer;position:relative;box-sizing:content-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-step-header:focus .mat-focus-indicator::before{content:\\\"\\\"}.mat-step-header:hover[aria-disabled=true]{cursor:default}.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:var(--mat-stepper-header-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent));border-radius:var(--mat-stepper-header-hover-state-layer-shape, var(--mat-sys-corner-medium))}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused{background-color:var(--mat-stepper-header-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));border-radius:var(--mat-stepper-header-focus-state-layer-shape, var(--mat-sys-corner-medium))}@media(hover: none){.mat-step-header:hover{background:none}}@media(forced-colors: active){.mat-step-header{outline:solid 1px}.mat-step-header[aria-selected=true] .mat-step-label{text-decoration:underline}.mat-step-header[aria-disabled=true]{outline-color:GrayText}.mat-step-header[aria-disabled=true] .mat-step-label,.mat-step-header[aria-disabled=true] .mat-step-icon,.mat-step-header[aria-disabled=true] .mat-step-optional{color:GrayText}}.mat-step-optional{font-size:12px;color:var(--mat-stepper-header-optional-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-sub-label-error{font-size:12px;font-weight:normal}.mat-step-icon{border-radius:50%;height:24px;width:24px;flex-shrink:0;position:relative;color:var(--mat-stepper-header-icon-foreground-color, var(--mat-sys-surface));background-color:var(--mat-stepper-header-icon-background-color, var(--mat-sys-on-surface-variant))}.mat-step-icon-content{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);display:flex}.mat-step-icon .mat-icon{font-size:16px;height:16px;width:16px}.mat-step-icon-state-error{background-color:var(--mat-stepper-header-error-state-icon-background-color, transparent);color:var(--mat-stepper-header-error-state-icon-foreground-color, var(--mat-sys-error))}.mat-step-icon-state-error .mat-icon{font-size:24px;height:24px;width:24px}.mat-step-label{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:50px;vertical-align:middle;font-family:var(--mat-stepper-header-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-stepper-header-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-stepper-header-label-text-weight, var(--mat-sys-title-small-weight));color:var(--mat-stepper-header-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-label.mat-step-label-active{color:var(--mat-stepper-header-selected-state-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-label.mat-step-label-error{color:var(--mat-stepper-header-error-state-label-text-color, var(--mat-sys-error));font-size:var(--mat-stepper-header-error-state-label-text-size, var(--mat-sys-title-small-size))}.mat-step-label.mat-step-label-selected{font-size:var(--mat-stepper-header-selected-state-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-stepper-header-selected-state-label-text-weight, var(--mat-sys-title-small-weight))}.mat-step-header-empty-label .mat-step-label{min-width:0}.mat-step-text-label{text-overflow:ellipsis;overflow:hidden}.mat-step-header .mat-step-header-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-step-icon-selected{background-color:var(--mat-stepper-header-selected-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-selected-state-icon-foreground-color, var(--mat-sys-on-primary))}.mat-step-icon-state-done{background-color:var(--mat-stepper-header-done-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-done-state-icon-foreground-color, var(--mat-sys-on-primary))}.mat-step-icon-state-edit{background-color:var(--mat-stepper-header-edit-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-edit-state-icon-foreground-color, var(--mat-sys-on-primary))}\\n\"]\n }]\n }], () => [], {\n state: [{\n type: Input\n }],\n label: [{\n type: Input\n }],\n errorMessage: [{\n type: Input\n }],\n iconOverrides: [{\n type: Input\n }],\n index: [{\n type: Input\n }],\n selected: [{\n type: Input\n }],\n active: [{\n type: Input\n }],\n optional: [{\n type: Input\n }],\n disableRipple: [{\n type: Input\n }],\n color: [{\n type: Input\n }]\n });\n})();\n\n/**\n * Template to be used to override the icons inside the step header.\n */\nclass MatStepperIcon {\n templateRef = inject(TemplateRef);\n /** Name of the icon to be overridden. */\n name;\n constructor() {}\n static ɵfac = function MatStepperIcon_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatStepperIcon)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatStepperIcon,\n selectors: [[\"ng-template\", \"matStepperIcon\", \"\"]],\n inputs: {\n name: [0, \"matStepperIcon\", \"name\"]\n }\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepperIcon, [{\n type: Directive,\n args: [{\n selector: 'ng-template[matStepperIcon]'\n }]\n }], () => [], {\n name: [{\n type: Input,\n args: ['matStepperIcon']\n }]\n });\n})();\n\n/**\n * Content for a `mat-step` that will be rendered lazily.\n */\nclass MatStepContent {\n _template = inject(TemplateRef);\n constructor() {}\n static ɵfac = function MatStepContent_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatStepContent)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatStepContent,\n selectors: [[\"ng-template\", \"matStepContent\", \"\"]]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepContent, [{\n type: Directive,\n args: [{\n selector: 'ng-template[matStepContent]'\n }]\n }], () => [], null);\n})();\nclass MatStep extends CdkStep {\n _errorStateMatcher = inject(ErrorStateMatcher, {\n skipSelf: true\n });\n _viewContainerRef = inject(ViewContainerRef);\n _isSelected = Subscription.EMPTY;\n /** Content for step label given by `<ng-template matStepLabel>`. */\n // We need an initializer here to avoid a TS error.\n stepLabel = undefined;\n /**\n * Theme color for the particular step. This API is supported in M2 themes\n * only, it has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/stepper/styling.\n *\n * For information on applying color variants in M3, see\n * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n */\n color;\n /** Content that will be rendered lazily. */\n _lazyContent;\n /** Currently-attached portal containing the lazy content. */\n _portal;\n ngAfterContentInit() {\n this._isSelected = this._stepper.steps.changes.pipe(switchMap(() => {\n return this._stepper.selectionChange.pipe(map(event => event.selectedStep === this), startWith(this._stepper.selected === this));\n })).subscribe(isSelected => {\n if (isSelected && this._lazyContent && !this._portal) {\n this._portal = new TemplatePortal(this._lazyContent._template, this._viewContainerRef);\n }\n });\n }\n ngOnDestroy() {\n this._isSelected.unsubscribe();\n }\n /** Custom error state matcher that additionally checks for validity of interacted form. */\n isErrorState(control, form) {\n const originalErrorState = this._errorStateMatcher.isErrorState(control, form);\n // Custom error state checks for the validity of form that is not submitted or touched\n // since user can trigger a form change by calling for another step without directly\n // interacting with the current form.\n const customErrorState = !!(control && control.invalid && this.interacted);\n return originalErrorState || customErrorState;\n }\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatStep_BaseFactory;\n return function MatStep_Factory(__ngFactoryType__) {\n return (ɵMatStep_BaseFactory || (ɵMatStep_BaseFactory = i0.ɵɵgetInheritedFactory(MatStep)))(__ngFactoryType__ || MatStep);\n };\n })();\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatStep,\n selectors: [[\"mat-step\"]],\n contentQueries: function MatStep_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MatStepLabel, 5);\n i0.ɵɵcontentQuery(dirIndex, MatStepContent, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.stepLabel = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._lazyContent = _t.first);\n }\n },\n hostAttrs: [\"hidden\", \"\"],\n inputs: {\n color: \"color\"\n },\n exportAs: [\"matStep\"],\n features: [i0.ɵɵProvidersFeature([{\n provide: ErrorStateMatcher,\n useExisting: MatStep\n }, {\n provide: CdkStep,\n useExisting: MatStep\n }]), i0.ɵɵInheritDefinitionFeature],\n ngContentSelectors: _c1,\n decls: 1,\n vars: 0,\n consts: [[3, \"cdkPortalOutlet\"]],\n template: function MatStep_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef();\n i0.ɵɵtemplate(0, MatStep_ng_template_0_Template, 2, 1, \"ng-template\");\n }\n },\n dependencies: [CdkPortalOutlet],\n encapsulation: 2,\n changeDetection: 0\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStep, [{\n type: Component,\n args: [{\n selector: 'mat-step',\n providers: [{\n provide: ErrorStateMatcher,\n useExisting: MatStep\n }, {\n provide: CdkStep,\n useExisting: MatStep\n }],\n encapsulation: ViewEncapsulation.None,\n exportAs: 'matStep',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CdkPortalOutlet],\n host: {\n 'hidden': '' // Hide the steps so they don't affect the layout.\n },\n template: \"<ng-template>\\n <ng-content></ng-content>\\n <ng-template [cdkPortalOutlet]=\\\"_portal\\\"></ng-template>\\n</ng-template>\\n\"\n }]\n }], null, {\n stepLabel: [{\n type: ContentChild,\n args: [MatStepLabel]\n }],\n color: [{\n type: Input\n }],\n _lazyContent: [{\n type: ContentChild,\n args: [MatStepContent, {\n static: false\n }]\n }]\n });\n})();\nclass MatStepper extends CdkStepper {\n _ngZone = inject(NgZone);\n _renderer = inject(Renderer2);\n _animationsDisabled = _animationsDisabled();\n _cleanupTransition;\n _isAnimating = signal(false);\n /** The list of step headers of the steps in the stepper. */\n _stepHeader = undefined;\n /** Elements hosting the step animations. */\n _animatedContainers;\n /** Full list of steps inside the stepper, including inside nested steppers. */\n _steps = undefined;\n /** Steps that belong to the current stepper, excluding ones from nested steppers. */\n steps = new QueryList();\n /** Custom icon overrides passed in by the consumer. */\n _icons;\n /** Event emitted when the current step is done transitioning in. */\n animationDone = new EventEmitter();\n /** Whether ripples should be disabled for the step headers. */\n disableRipple;\n /**\n * Theme color for all of the steps in stepper. This API is supported in M2\n * themes only, it has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/stepper/styling.\n *\n * For information on applying color variants in M3, see\n * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n */\n color;\n /**\n * Whether the label should display in bottom or end position.\n * Only applies in the `horizontal` orientation.\n */\n labelPosition = 'end';\n /**\n * Position of the stepper's header.\n * Only applies in the `horizontal` orientation.\n */\n headerPosition = 'top';\n /** Consumer-specified template-refs to be used to override the header icons. */\n _iconOverrides = {};\n /** Duration for the animation. Will be normalized to milliseconds if no units are set. */\n get animationDuration() {\n return this._animationDuration;\n }\n set animationDuration(value) {\n this._animationDuration = /^\\d+$/.test(value) ? value + 'ms' : value;\n }\n _animationDuration = '';\n /** Whether the stepper is rendering on the server. */\n _isServer = !inject(Platform).isBrowser;\n constructor() {\n super();\n const elementRef = inject(ElementRef);\n const nodeName = elementRef.nativeElement.nodeName.toLowerCase();\n this.orientation = nodeName === 'mat-vertical-stepper' ? 'vertical' : 'horizontal';\n }\n ngAfterContentInit() {\n super.ngAfterContentInit();\n this._icons.forEach(({\n name,\n templateRef\n }) => this._iconOverrides[name] = templateRef);\n // Mark the component for change detection whenever the content children query changes\n this.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => this._stateChanged());\n // Transition events won't fire if animations are disabled so we simulate them.\n this.selectedIndexChange.pipe(takeUntil(this._destroyed)).subscribe(() => {\n const duration = this._getAnimationDuration();\n if (duration === '0ms' || duration === '0s') {\n this._onAnimationDone();\n } else {\n this._isAnimating.set(true);\n }\n });\n this._ngZone.runOutsideAngular(() => {\n if (!this._animationsDisabled) {\n setTimeout(() => {\n // Delay enabling the animations so we don't animate the initial state.\n this._elementRef.nativeElement.classList.add('mat-stepper-animations-enabled');\n // Bind this outside the zone since it fires for all transitions inside the stepper.\n this._cleanupTransition = this._renderer.listen(this._elementRef.nativeElement, 'transitionend', this._handleTransitionend);\n }, 200);\n }\n });\n }\n ngAfterViewInit() {\n super.ngAfterViewInit();\n // Prior to #30314 the stepper had animation `done` events bound to each animated container.\n // The animations module was firing them on initialization and for each subsequent animation.\n // Since the events were bound in the template, it had the unintended side-effect of triggering\n // change detection as well. It appears that this side-effect ended up being load-bearing,\n // because it was ensuring that the content elements (e.g. `matStepLabel`) that are defined\n // in sub-components actually get picked up in a timely fashion. This subscription simulates\n // the same change detection by using `queueMicrotask` similarly to the animations module.\n if (typeof queueMicrotask === 'function') {\n let hasEmittedInitial = false;\n this._animatedContainers.changes.pipe(startWith(null), takeUntil(this._destroyed)).subscribe(() => queueMicrotask(() => {\n // Simulate the initial `animationDone` event\n // that gets emitted by the animations module.\n if (!hasEmittedInitial) {\n hasEmittedInitial = true;\n this.animationDone.emit();\n }\n this._stateChanged();\n }));\n }\n }\n ngOnDestroy() {\n super.ngOnDestroy();\n this._cleanupTransition?.();\n }\n _getAnimationDuration() {\n if (this._animationsDisabled) {\n return '0ms';\n }\n if (this.animationDuration) {\n return this.animationDuration;\n }\n return this.orientation === 'horizontal' ? '500ms' : '225ms';\n }\n _handleTransitionend = event => {\n const target = event.target;\n if (!target) {\n return;\n }\n // Because we bind a single `transitionend` handler on the host node and because transition\n // events bubble, we have to filter down to only the active step so don't emit events too\n // often. We check the orientation and `property` name first to reduce the amount of times\n // we need to check the DOM.\n const isHorizontalActiveElement = this.orientation === 'horizontal' && event.propertyName === 'transform' && target.classList.contains('mat-horizontal-stepper-content-current');\n const isVerticalActiveElement = this.orientation === 'vertical' && event.propertyName === 'grid-template-rows' && target.classList.contains('mat-vertical-content-container-active');\n // Finally we need to ensure that the animated element is a direct descendant,\n // rather than one coming from a nested stepper.\n const shouldEmit = (isHorizontalActiveElement || isVerticalActiveElement) && this._animatedContainers.find(ref => ref.nativeElement === target);\n if (shouldEmit) {\n this._onAnimationDone();\n }\n };\n _onAnimationDone() {\n this._isAnimating.set(false);\n this.animationDone.emit();\n }\n static ɵfac = function MatStepper_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatStepper)();\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatStepper,\n selectors: [[\"mat-stepper\"], [\"mat-vertical-stepper\"], [\"mat-horizontal-stepper\"], [\"\", \"matStepper\", \"\"]],\n contentQueries: function MatStepper_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MatStep, 5);\n i0.ɵɵcontentQuery(dirIndex, MatStepperIcon, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._steps = _t);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._icons = _t);\n }\n },\n viewQuery: function MatStepper_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(MatStepHeader, 5);\n i0.ɵɵviewQuery(_c2, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._stepHeader = _t);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._animatedContainers = _t);\n }\n },\n hostAttrs: [\"role\", \"tablist\"],\n hostVars: 15,\n hostBindings: function MatStepper_HostBindings(rf, ctx) {\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-orientation\", ctx.orientation);\n i0.ɵɵstyleProp(\"--mat-stepper-animation-duration\", ctx._getAnimationDuration());\n i0.ɵɵclassProp(\"mat-stepper-horizontal\", ctx.orientation === \"horizontal\")(\"mat-stepper-vertical\", ctx.orientation === \"vertical\")(\"mat-stepper-label-position-end\", ctx.orientation === \"horizontal\" && ctx.labelPosition == \"end\")(\"mat-stepper-label-position-bottom\", ctx.orientation === \"horizontal\" && ctx.labelPosition == \"bottom\")(\"mat-stepper-header-position-bottom\", ctx.headerPosition === \"bottom\")(\"mat-stepper-animating\", ctx._isAnimating());\n }\n },\n inputs: {\n disableRipple: \"disableRipple\",\n color: \"color\",\n labelPosition: \"labelPosition\",\n headerPosition: \"headerPosition\",\n animationDuration: \"animationDuration\"\n },\n outputs: {\n animationDone: \"animationDone\"\n },\n exportAs: [\"matStepper\", \"matVerticalStepper\", \"matHorizontalStepper\"],\n features: [i0.ɵɵProvidersFeature([{\n provide: CdkStepper,\n useExisting: MatStepper\n }]), i0.ɵɵInheritDefinitionFeature],\n ngContentSelectors: _c1,\n decls: 5,\n vars: 2,\n consts: [[\"stepTemplate\", \"\"], [\"animatedContainer\", \"\"], [1, \"mat-horizontal-stepper-wrapper\"], [1, \"mat-horizontal-stepper-header-container\"], [1, \"mat-horizontal-content-container\"], [\"role\", \"tabpanel\", 1, \"mat-horizontal-stepper-content\", 3, \"id\", \"class\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"], [1, \"mat-stepper-horizontal-line\"], [\"role\", \"tabpanel\", 1, \"mat-horizontal-stepper-content\", 3, \"id\"], [3, \"ngTemplateOutlet\"], [1, \"mat-step\"], [1, \"mat-vertical-content-container\"], [\"role\", \"tabpanel\", 1, \"mat-vertical-stepper-content\", 3, \"id\"], [1, \"mat-vertical-content\"], [3, \"click\", \"keydown\", \"tabIndex\", \"id\", \"index\", \"state\", \"label\", \"selected\", \"active\", \"optional\", \"errorMessage\", \"iconOverrides\", \"disableRipple\", \"color\"]],\n template: function MatStepper_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef();\n i0.ɵɵconditionalCreate(0, MatStepper_Conditional_0_Template, 1, 0);\n i0.ɵɵconditionalCreate(1, MatStepper_Case_1_Template, 7, 0, \"div\", 2)(2, MatStepper_Case_2_Template, 2, 0);\n i0.ɵɵtemplate(3, MatStepper_ng_template_3_Template, 1, 23, \"ng-template\", null, 0, i0.ɵɵtemplateRefExtractor);\n }\n if (rf & 2) {\n let tmp_2_0;\n i0.ɵɵconditional(ctx._isServer ? 0 : -1);\n i0.ɵɵadvance();\n i0.ɵɵconditional((tmp_2_0 = ctx.orientation) === \"horizontal\" ? 1 : tmp_2_0 === \"vertical\" ? 2 : -1);\n }\n },\n dependencies: [NgTemplateOutlet, MatStepHeader],\n styles: [\".mat-stepper-vertical,.mat-stepper-horizontal{display:block;font-family:var(--mat-stepper-container-text-font, var(--mat-sys-body-medium-font));background:var(--mat-stepper-container-color, var(--mat-sys-surface))}.mat-horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header-container{align-items:flex-start}.mat-stepper-header-position-bottom .mat-horizontal-stepper-header-container{order:1}.mat-stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 -16px;min-width:32px;border-top-color:var(--mat-stepper-line-color, var(--mat-sys-outline))}.mat-stepper-label-position-bottom .mat-stepper-horizontal-line{margin:0;min-width:0;position:relative;top:calc(calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) + 12px)}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::before,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::after,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::after{border-top-width:1px;border-top-style:solid;content:\\\"\\\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px)}.mat-horizontal-stepper-header{display:flex;overflow:hidden;align-items:center;padding:0 24px;height:var(--mat-stepper-header-height, 72px)}.mat-horizontal-stepper-header .mat-step-icon{margin-right:8px;flex:none}[dir=rtl] .mat-horizontal-stepper-header .mat-step-icon{margin-right:0;margin-left:8px}.mat-horizontal-stepper-header.mat-step-header-empty-label .mat-step-icon{margin:0}.mat-horizontal-stepper-header::before,.mat-horizontal-stepper-header::after{border-top-color:var(--mat-stepper-line-color, var(--mat-sys-outline))}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header{padding:calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) 24px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header::before,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header::after{top:calc(calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) + 12px)}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header{box-sizing:border-box;flex-direction:column;height:auto}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::after,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::after{right:0}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::before{left:0}[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:last-child::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:first-child::after{display:none}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header .mat-step-icon{margin-right:0;margin-left:0}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header .mat-step-label{padding:16px 0 0 0;text-align:center;width:100%}.mat-vertical-stepper-header{display:flex;align-items:center;height:24px;padding:calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) 24px}.mat-vertical-stepper-header .mat-step-icon{margin-right:12px}[dir=rtl] .mat-vertical-stepper-header .mat-step-icon{margin-right:0;margin-left:12px}.mat-horizontal-stepper-wrapper{display:flex;flex-direction:column}.mat-horizontal-stepper-content{visibility:hidden;overflow:hidden;outline:0;height:0}.mat-stepper-animations-enabled .mat-horizontal-stepper-content{transition:transform var(--mat-stepper-animation-duration, 0) cubic-bezier(0.35, 0, 0.25, 1)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-previous{transform:translate3d(-100%, 0, 0)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-next{transform:translate3d(100%, 0, 0)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-current{visibility:visible;transform:none;height:auto}.mat-stepper-horizontal:not(.mat-stepper-animating) .mat-horizontal-stepper-content.mat-horizontal-stepper-content-current{overflow:visible}.mat-horizontal-content-container{overflow:hidden;padding:0 24px 24px 24px}@media(forced-colors: active){.mat-horizontal-content-container{outline:solid 1px}}.mat-stepper-header-position-bottom .mat-horizontal-content-container{padding:24px 24px 0 24px}.mat-vertical-content-container{display:grid;grid-template-rows:0fr;grid-template-columns:100%;margin-left:36px;border:0;position:relative}.mat-stepper-animations-enabled .mat-vertical-content-container{transition:grid-template-rows var(--mat-stepper-animation-duration, 0) cubic-bezier(0.4, 0, 0.2, 1)}.mat-vertical-content-container.mat-vertical-content-container-active{grid-template-rows:1fr}.mat-step:last-child .mat-vertical-content-container{border:none}@media(forced-colors: active){.mat-vertical-content-container{outline:solid 1px}}[dir=rtl] .mat-vertical-content-container{margin-left:0;margin-right:36px}@supports not (grid-template-rows: 0fr){.mat-vertical-content-container{height:0}.mat-vertical-content-container.mat-vertical-content-container-active{height:auto}}.mat-stepper-vertical-line::before{content:\\\"\\\";position:absolute;left:0;border-left-width:1px;border-left-style:solid;border-left-color:var(--mat-stepper-line-color, var(--mat-sys-outline));top:calc(8px - calc((var(--mat-stepper-header-height, 72px) - 24px) / 2));bottom:calc(8px - calc((var(--mat-stepper-header-height, 72px) - 24px) / 2))}[dir=rtl] .mat-stepper-vertical-line::before{left:auto;right:0}.mat-vertical-stepper-content{overflow:hidden;outline:0;visibility:hidden}.mat-stepper-animations-enabled .mat-vertical-stepper-content{transition:visibility var(--mat-stepper-animation-duration, 0) linear}.mat-vertical-content-container-active>.mat-vertical-stepper-content{visibility:visible}.mat-vertical-content{padding:0 24px 24px 24px}\\n\"],\n encapsulation: 2,\n changeDetection: 0\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepper, [{\n type: Component,\n args: [{\n selector: 'mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]',\n exportAs: 'matStepper, matVerticalStepper, matHorizontalStepper',\n host: {\n '[class.mat-stepper-horizontal]': 'orientation === \"horizontal\"',\n '[class.mat-stepper-vertical]': 'orientation === \"vertical\"',\n '[class.mat-stepper-label-position-end]': 'orientation === \"horizontal\" && labelPosition == \"end\"',\n '[class.mat-stepper-label-position-bottom]': 'orientation === \"horizontal\" && labelPosition == \"bottom\"',\n '[class.mat-stepper-header-position-bottom]': 'headerPosition === \"bottom\"',\n '[class.mat-stepper-animating]': '_isAnimating()',\n '[style.--mat-stepper-animation-duration]': '_getAnimationDuration()',\n '[attr.aria-orientation]': 'orientation',\n 'role': 'tablist'\n },\n providers: [{\n provide: CdkStepper,\n useExisting: MatStepper\n }],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgTemplateOutlet, MatStepHeader],\n template: \"<!--\\n We need to project the content somewhere to avoid hydration errors. Some observations:\\n 1. This is only necessary on the server.\\n 2. We get a hydration error if there aren't any nodes after the `ng-content`.\\n 3. We get a hydration error if `ng-content` is wrapped in another element.\\n-->\\n@if (_isServer) {\\n <ng-content/>\\n}\\n\\n@switch (orientation) {\\n @case ('horizontal') {\\n <div class=\\\"mat-horizontal-stepper-wrapper\\\">\\n <div class=\\\"mat-horizontal-stepper-header-container\\\">\\n @for (step of steps; track step) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"stepTemplate\\\"\\n [ngTemplateOutletContext]=\\\"{step}\\\"/>\\n @if (!$last) {\\n <div class=\\\"mat-stepper-horizontal-line\\\"></div>\\n }\\n }\\n </div>\\n\\n <div class=\\\"mat-horizontal-content-container\\\">\\n @for (step of steps; track step) {\\n <div\\n #animatedContainer\\n class=\\\"mat-horizontal-stepper-content\\\"\\n role=\\\"tabpanel\\\"\\n [id]=\\\"_getStepContentId($index)\\\"\\n [attr.aria-labelledby]=\\\"_getStepLabelId($index)\\\"\\n [class]=\\\"'mat-horizontal-stepper-content-' + _getAnimationDirection($index)\\\"\\n [attr.inert]=\\\"selectedIndex === $index ? null : ''\\\">\\n <ng-container [ngTemplateOutlet]=\\\"step.content\\\"/>\\n </div>\\n }\\n </div>\\n </div>\\n }\\n\\n @case ('vertical') {\\n @for (step of steps; track step) {\\n <div class=\\\"mat-step\\\">\\n <ng-container\\n [ngTemplateOutlet]=\\\"stepTemplate\\\"\\n [ngTemplateOutletContext]=\\\"{step}\\\"/>\\n <div\\n #animatedContainer\\n class=\\\"mat-vertical-content-container\\\"\\n [class.mat-stepper-vertical-line]=\\\"!$last\\\"\\n [class.mat-vertical-content-container-active]=\\\"selectedIndex === $index\\\"\\n [attr.inert]=\\\"selectedIndex === $index ? null : ''\\\">\\n <div class=\\\"mat-vertical-stepper-content\\\"\\n role=\\\"tabpanel\\\"\\n [id]=\\\"_getStepContentId($index)\\\"\\n [attr.aria-labelledby]=\\\"_getStepLabelId($index)\\\">\\n <div class=\\\"mat-vertical-content\\\">\\n <ng-container [ngTemplateOutlet]=\\\"step.content\\\"/>\\n </div>\\n </div>\\n </div>\\n </div>\\n }\\n }\\n}\\n\\n<!-- Common step templating -->\\n<ng-template let-step=\\\"step\\\" #stepTemplate>\\n <mat-step-header\\n [class.mat-horizontal-stepper-header]=\\\"orientation === 'horizontal'\\\"\\n [class.mat-vertical-stepper-header]=\\\"orientation === 'vertical'\\\"\\n (click)=\\\"step.select()\\\"\\n (keydown)=\\\"_onKeydown($event)\\\"\\n [tabIndex]=\\\"_getFocusIndex() === step.index() ? 0 : -1\\\"\\n [id]=\\\"_getStepLabelId(step.index())\\\"\\n [attr.aria-posinset]=\\\"step.index() + 1\\\"\\n [attr.aria-setsize]=\\\"steps.length\\\"\\n [attr.aria-controls]=\\\"_getStepContentId(step.index())\\\"\\n [attr.aria-selected]=\\\"step.isSelected()\\\"\\n [attr.aria-label]=\\\"step.ariaLabel || null\\\"\\n [attr.aria-labelledby]=\\\"(!step.ariaLabel && step.ariaLabelledby) ? step.ariaLabelledby : null\\\"\\n [attr.aria-disabled]=\\\"step.isNavigable() ? null : true\\\"\\n [index]=\\\"step.index()\\\"\\n [state]=\\\"step.indicatorType()\\\"\\n [label]=\\\"step.stepLabel || step.label\\\"\\n [selected]=\\\"step.isSelected()\\\"\\n [active]=\\\"step.isNavigable()\\\"\\n [optional]=\\\"step.optional\\\"\\n [errorMessage]=\\\"step.errorMessage\\\"\\n [iconOverrides]=\\\"_iconOverrides\\\"\\n [disableRipple]=\\\"disableRipple || !step.isNavigable()\\\"\\n [color]=\\\"step.color || color\\\"/>\\n</ng-template>\\n\",\n styles: [\".mat-stepper-vertical,.mat-stepper-horizontal{display:block;font-family:var(--mat-stepper-container-text-font, var(--mat-sys-body-medium-font));background:var(--mat-stepper-container-color, var(--mat-sys-surface))}.mat-horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header-container{align-items:flex-start}.mat-stepper-header-position-bottom .mat-horizontal-stepper-header-container{order:1}.mat-stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 -16px;min-width:32px;border-top-color:var(--mat-stepper-line-color, var(--mat-sys-outline))}.mat-stepper-label-position-bottom .mat-stepper-horizontal-line{margin:0;min-width:0;position:relative;top:calc(calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) + 12px)}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::before,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::after,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::after{border-top-width:1px;border-top-style:solid;content:\\\"\\\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px)}.mat-horizontal-stepper-header{display:flex;overflow:hidden;align-items:center;padding:0 24px;height:var(--mat-stepper-header-height, 72px)}.mat-horizontal-stepper-header .mat-step-icon{margin-right:8px;flex:none}[dir=rtl] .mat-horizontal-stepper-header .mat-step-icon{margin-right:0;margin-left:8px}.mat-horizontal-stepper-header.mat-step-header-empty-label .mat-step-icon{margin:0}.mat-horizontal-stepper-header::before,.mat-horizontal-stepper-header::after{border-top-color:var(--mat-stepper-line-color, var(--mat-sys-outline))}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header{padding:calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) 24px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header::before,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header::after{top:calc(calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) + 12px)}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header{box-sizing:border-box;flex-direction:column;height:auto}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::after,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::after{right:0}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::before{left:0}[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:last-child::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:first-child::after{display:none}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header .mat-step-icon{margin-right:0;margin-left:0}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header .mat-step-label{padding:16px 0 0 0;text-align:center;width:100%}.mat-vertical-stepper-header{display:flex;align-items:center;height:24px;padding:calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) 24px}.mat-vertical-stepper-header .mat-step-icon{margin-right:12px}[dir=rtl] .mat-vertical-stepper-header .mat-step-icon{margin-right:0;margin-left:12px}.mat-horizontal-stepper-wrapper{display:flex;flex-direction:column}.mat-horizontal-stepper-content{visibility:hidden;overflow:hidden;outline:0;height:0}.mat-stepper-animations-enabled .mat-horizontal-stepper-content{transition:transform var(--mat-stepper-animation-duration, 0) cubic-bezier(0.35, 0, 0.25, 1)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-previous{transform:translate3d(-100%, 0, 0)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-next{transform:translate3d(100%, 0, 0)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-current{visibility:visible;transform:none;height:auto}.mat-stepper-horizontal:not(.mat-stepper-animating) .mat-horizontal-stepper-content.mat-horizontal-stepper-content-current{overflow:visible}.mat-horizontal-content-container{overflow:hidden;padding:0 24px 24px 24px}@media(forced-colors: active){.mat-horizontal-content-container{outline:solid 1px}}.mat-stepper-header-position-bottom .mat-horizontal-content-container{padding:24px 24px 0 24px}.mat-vertical-content-container{display:grid;grid-template-rows:0fr;grid-template-columns:100%;margin-left:36px;border:0;position:relative}.mat-stepper-animations-enabled .mat-vertical-content-container{transition:grid-template-rows var(--mat-stepper-animation-duration, 0) cubic-bezier(0.4, 0, 0.2, 1)}.mat-vertical-content-container.mat-vertical-content-container-active{grid-template-rows:1fr}.mat-step:last-child .mat-vertical-content-container{border:none}@media(forced-colors: active){.mat-vertical-content-container{outline:solid 1px}}[dir=rtl] .mat-vertical-content-container{margin-left:0;margin-right:36px}@supports not (grid-template-rows: 0fr){.mat-vertical-content-container{height:0}.mat-vertical-content-container.mat-vertical-content-container-active{height:auto}}.mat-stepper-vertical-line::before{content:\\\"\\\";position:absolute;left:0;border-left-width:1px;border-left-style:solid;border-left-color:var(--mat-stepper-line-color, var(--mat-sys-outline));top:calc(8px - calc((var(--mat-stepper-header-height, 72px) - 24px) / 2));bottom:calc(8px - calc((var(--mat-stepper-header-height, 72px) - 24px) / 2))}[dir=rtl] .mat-stepper-vertical-line::before{left:auto;right:0}.mat-vertical-stepper-content{overflow:hidden;outline:0;visibility:hidden}.mat-stepper-animations-enabled .mat-vertical-stepper-content{transition:visibility var(--mat-stepper-animation-duration, 0) linear}.mat-vertical-content-container-active>.mat-vertical-stepper-content{visibility:visible}.mat-vertical-content{padding:0 24px 24px 24px}\\n\"]\n }]\n }], () => [], {\n _stepHeader: [{\n type: ViewChildren,\n args: [MatStepHeader]\n }],\n _animatedContainers: [{\n type: ViewChildren,\n args: ['animatedContainer']\n }],\n _steps: [{\n type: ContentChildren,\n args: [MatStep, {\n descendants: true\n }]\n }],\n _icons: [{\n type: ContentChildren,\n args: [MatStepperIcon, {\n descendants: true\n }]\n }],\n animationDone: [{\n type: Output\n }],\n disableRipple: [{\n type: Input\n }],\n color: [{\n type: Input\n }],\n labelPosition: [{\n type: Input\n }],\n headerPosition: [{\n type: Input\n }],\n animationDuration: [{\n type: Input\n }]\n });\n})();\n\n/** Button that moves to the next step in a stepper workflow. */\nclass MatStepperNext extends CdkStepperNext {\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatStepperNext_BaseFactory;\n return function MatStepperNext_Factory(__ngFactoryType__) {\n return (ɵMatStepperNext_BaseFactory || (ɵMatStepperNext_BaseFactory = i0.ɵɵgetInheritedFactory(MatStepperNext)))(__ngFactoryType__ || MatStepperNext);\n };\n })();\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatStepperNext,\n selectors: [[\"button\", \"matStepperNext\", \"\"]],\n hostAttrs: [1, \"mat-stepper-next\"],\n hostVars: 1,\n hostBindings: function MatStepperNext_HostBindings(rf, ctx) {\n if (rf & 2) {\n i0.ɵɵdomProperty(\"type\", ctx.type);\n }\n },\n features: [i0.ɵɵInheritDefinitionFeature]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepperNext, [{\n type: Directive,\n args: [{\n selector: 'button[matStepperNext]',\n host: {\n 'class': 'mat-stepper-next',\n '[type]': 'type'\n }\n }]\n }], null, null);\n})();\n/** Button that moves to the previous step in a stepper workflow. */\nclass MatStepperPrevious extends CdkStepperPrevious {\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatStepperPrevious_BaseFactory;\n return function MatStepperPrevious_Factory(__ngFactoryType__) {\n return (ɵMatStepperPrevious_BaseFactory || (ɵMatStepperPrevious_BaseFactory = i0.ɵɵgetInheritedFactory(MatStepperPrevious)))(__ngFactoryType__ || MatStepperPrevious);\n };\n })();\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatStepperPrevious,\n selectors: [[\"button\", \"matStepperPrevious\", \"\"]],\n hostAttrs: [1, \"mat-stepper-previous\"],\n hostVars: 1,\n hostBindings: function MatStepperPrevious_HostBindings(rf, ctx) {\n if (rf & 2) {\n i0.ɵɵdomProperty(\"type\", ctx.type);\n }\n },\n features: [i0.ɵɵInheritDefinitionFeature]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepperPrevious, [{\n type: Directive,\n args: [{\n selector: 'button[matStepperPrevious]',\n host: {\n 'class': 'mat-stepper-previous',\n '[type]': 'type'\n }\n }]\n }], null, null);\n})();\nclass MatStepperModule {\n static ɵfac = function MatStepperModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatStepperModule)();\n };\n static ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: MatStepperModule,\n imports: [MatCommonModule, PortalModule, CdkStepperModule, MatIconModule, MatRippleModule, MatStep, MatStepLabel, MatStepper, MatStepperNext, MatStepperPrevious, MatStepHeader, MatStepperIcon, MatStepContent],\n exports: [MatCommonModule, MatStep, MatStepLabel, MatStepper, MatStepperNext, MatStepperPrevious, MatStepHeader, MatStepperIcon, MatStepContent]\n });\n static ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({\n providers: [MAT_STEPPER_INTL_PROVIDER, ErrorStateMatcher],\n imports: [MatCommonModule, PortalModule, CdkStepperModule, MatIconModule, MatRippleModule, MatStepper, MatStepHeader, MatCommonModule]\n });\n}\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(MatStepperModule, [{\n type: NgModule,\n args: [{\n imports: [MatCommonModule, PortalModule, CdkStepperModule, MatIconModule, MatRippleModule, MatStep, MatStepLabel, MatStepper, MatStepperNext, MatStepperPrevious, MatStepHeader, MatStepperIcon, MatStepContent],\n exports: [MatCommonModule, MatStep, MatStepLabel, MatStepper, MatStepperNext, MatStepperPrevious, MatStepHeader, MatStepperIcon, MatStepContent],\n providers: [MAT_STEPPER_INTL_PROVIDER, ErrorStateMatcher]\n }]\n }], null, null);\n})();\n\n/**\n * Animations used by the Material steppers.\n * @docs-private\n * @deprecated No longer used, will be removed.\n * @breaking-change 21.0.0\n */\nconst matStepperAnimations = {\n // Represents:\n // trigger('horizontalStepTransition', [\n // state('previous', style({transform: 'translate3d(-100%, 0, 0)', visibility: 'hidden'})),\n // // Transition to `inherit`, rather than `visible`,\n // // because visibility on a child element the one from the parent,\n // // making this element focusable inside of a `hidden` element.\n // state('current', style({transform: 'none', visibility: 'inherit'})),\n // state('next', style({transform: 'translate3d(100%, 0, 0)', visibility: 'hidden'})),\n // transition(\n // '* => *',\n // group([\n // animate('{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)'),\n // query('@*', animateChild(), {optional: true}),\n // ]),\n // {\n // params: {animationDuration: '500ms'},\n // },\n // ),\n // ])\n /** Animation that transitions the step along the X axis in a horizontal stepper. */\n horizontalStepTransition: {\n type: 7,\n name: 'horizontalStepTransition',\n definitions: [{\n type: 0,\n name: 'previous',\n styles: {\n type: 6,\n styles: {\n transform: 'translate3d(-100%, 0, 0)',\n visibility: 'hidden'\n },\n offset: null\n }\n }, {\n type: 0,\n name: 'current',\n styles: {\n type: 6,\n styles: {\n transform: 'none',\n visibility: 'inherit'\n },\n offset: null\n }\n }, {\n type: 0,\n name: 'next',\n styles: {\n type: 6,\n styles: {\n transform: 'translate3d(100%, 0, 0)',\n visibility: 'hidden'\n },\n offset: null\n }\n }, {\n type: 1,\n expr: '* => *',\n animation: {\n type: 3,\n steps: [{\n type: 4,\n styles: null,\n timings: '{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)'\n }, {\n type: 11,\n selector: '@*',\n animation: {\n type: 9,\n options: null\n },\n options: {\n optional: true\n }\n }],\n options: null\n },\n options: {\n params: {\n animationDuration: '500ms'\n }\n }\n }],\n options: {}\n },\n // Represents:\n // trigger('verticalStepTransition', [\n // state('previous', style({height: '0px', visibility: 'hidden'})),\n // state('next', style({height: '0px', visibility: 'hidden'})),\n // // Transition to `inherit`, rather than `visible`,\n // // because visibility on a child element the one from the parent,\n // // making this element focusable inside of a `hidden` element.\n // state('current', style({height: '*', visibility: 'inherit'})),\n // transition(\n // '* <=> current',\n // group([\n // animate('{{animationDuration}} cubic-bezier(0.4, 0.0, 0.2, 1)'),\n // query('@*', animateChild(), {optional: true}),\n // ]),\n // {\n // params: {animationDuration: '225ms'},\n // },\n // ),\n // ])\n /** Animation that transitions the step along the Y axis in a vertical stepper. */\n verticalStepTransition: {\n type: 7,\n name: 'verticalStepTransition',\n definitions: [{\n type: 0,\n name: 'previous',\n styles: {\n type: 6,\n styles: {\n 'height': '0px',\n visibility: 'hidden'\n },\n offset: null\n }\n }, {\n type: 0,\n name: 'next',\n styles: {\n type: 6,\n styles: {\n 'height': '0px',\n visibility: 'hidden'\n },\n offset: null\n }\n }, {\n type: 0,\n name: 'current',\n styles: {\n type: 6,\n styles: {\n 'height': '*',\n visibility: 'inherit'\n },\n offset: null\n }\n }, {\n type: 1,\n expr: '* <=> current',\n animation: {\n type: 3,\n steps: [{\n type: 4,\n styles: null,\n timings: '{{animationDuration}} cubic-bezier(0.4, 0.0, 0.2, 1)'\n }, {\n type: 11,\n selector: '@*',\n animation: {\n type: 9,\n options: null\n },\n options: {\n optional: true\n }\n }],\n options: null\n },\n options: {\n params: {\n animationDuration: '225ms'\n }\n }\n }],\n options: {}\n }\n};\nexport { MAT_STEPPER_INTL_PROVIDER, MAT_STEPPER_INTL_PROVIDER_FACTORY, MatStep, MatStepContent, MatStepHeader, MatStepLabel, MatStepper, MatStepperIcon, MatStepperIntl, MatStepperModule, MatStepperNext, MatStepperPrevious, matStepperAnimations };\n","import { cloneDeep } from 'lodash-es';\nimport { Component, OnInit, AfterViewInit, ChangeDetectorRef, inject, viewChild } from '@angular/core';\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA, MatDialogTitle, MatDialogContent } from '@angular/material/dialog';\nimport { MatTableDataSource, MatTable, MatColumnDef, MatHeaderCellDef, MatHeaderCell, MatCellDef, MatCell, MatHeaderRowDef, MatHeaderRow, MatRowDef, MatRow, MatNoDataRow } from '@angular/material/table';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort, MatSortHeader } from '@angular/material/sort';\n\nimport { DataService } from '../../services/data.service';\nimport { DatasetService } from '../../services/data-set.service';\nimport type { IDatasetServiceDatasetConfig } from '../../services/data-set.service';\nimport { FilterSelfPipe } from '../../pipes/filter-self.pipe';\nimport { MatCheckbox } from '@angular/material/checkbox';\nimport { MatOption } from '@angular/material/core';\n\nimport { MatSelect } from '@angular/material/select';\nimport { MatStepper, MatStep, MatStepLabel, MatStepperNext, MatStepperPrevious } from '@angular/material/stepper';\nimport { MatDivider } from '@angular/material/divider';\nimport { MatButton } from '@angular/material/button';\nimport { MatInput } from '@angular/material/input';\nimport { MatFormField, MatLabel } from '@angular/material/form-field';\nimport { FormsModule } from '@angular/forms';\nimport { MatRadioModule } from '@angular/material/radio';\n\n\n@Component({\n selector: 'settings-datasets',\n templateUrl: './datasets.component.html',\n styleUrls: ['./datasets.component.scss'],\n imports: [FormsModule, MatFormField, MatLabel, MatInput, MatTable, MatSort, MatColumnDef, MatHeaderCellDef, MatHeaderCell, MatSortHeader, MatCellDef, MatCell, MatButton, MatHeaderRowDef, MatHeaderRow, MatRowDef, MatRow, MatNoDataRow, MatPaginator, MatDivider]\n})\nexport class SettingsDatasetsComponent implements OnInit, AfterViewInit {\n\n readonly paginator = viewChild(MatPaginator);\n readonly sort = viewChild(MatSort);\n\n protected readonly pageTitle: string = \"Datasets\";\n\n selectedDataset: string;\n tableData = new MatTableDataSource([]);\n displayedColumns: string[] = ['path', 'pathSource', 'timeScaleFormat', 'period', 'actions'];\n\n public dialog = inject(MatDialog);\n private cdRef = inject(ChangeDetectorRef);\n private dsService = inject(DatasetService);\n\n ngOnInit() {\n this.loadDatasets();\n }\n\n private loadDatasets() {\n this.tableData.data = this.dsService.list().filter(ds => ds.editable !== false);\n }\n\n ngAfterViewInit() {\n this.tableData.paginator = this.paginator();\n this.tableData.sort = this.sort();\n this.tableData.filter = \"\";\n this.cdRef.detectChanges();\n }\n\n public openDatasetModal(uuid?: string) {\n let dialogRef;\n\n if (uuid) {\n const thisDataset: IDatasetServiceDatasetConfig = cloneDeep(\n this.tableData.data.find(\n (dataset: IDatasetServiceDatasetConfig) =>\n {\n return dataset.uuid === uuid;\n }\n )\n );\n\n if (thisDataset) {\n dialogRef = this.dialog.open(SettingsDatasetsModalComponent, {\n data: thisDataset,\n disableClose: false,\n });\n }\n } else {\n dialogRef = this.dialog.open(SettingsDatasetsModalComponent, {\n disableClose: false,\n });\n }\n\n dialogRef.afterClosed().subscribe((dataset: IDatasetServiceDatasetConfig) => {\n if (dataset === undefined || !dataset) {\n return; //clicked Cancel, click outside the dialog, or navigated await from page using url bar.\n } else {\n dataset.label = `${dataset.path}, Source: ${dataset.pathSource}, Scale: ${dataset.timeScaleFormat}, Period: ${dataset.period} `;\n if (dataset.uuid) {\n this.editDataset(dataset);\n } else {\n this.addDataset(dataset);\n }\n\n this.loadDatasets();\n }\n });\n }\n\n private addDataset(dataset: IDatasetServiceDatasetConfig) {\n this.dsService.create(dataset.path, dataset.pathSource, dataset.timeScaleFormat, dataset.period, dataset.label, true, true);\n this.loadDatasets();\n }\n\n private editDataset(dataset: IDatasetServiceDatasetConfig) {\n this.dsService.edit(dataset);\n this.loadDatasets();\n }\n\n public deleteDataset(uuid: string) {\n this.dsService.remove(uuid);\n this.loadDatasets();\n }\n\n public trackByUuid(index: number, item: IDatasetServiceDatasetConfig): string {\n return `${item.uuid}`;\n }\n\n public applyFilter(event: Event) {\n const filterValue = (event.target as HTMLInputElement).value;\n this.tableData.filter = filterValue.trim().toLowerCase();\n\n if (this.tableData.paginator) {\n this.tableData.paginator.firstPage();\n }\n }\n\n}\n\n@Component({\n selector: 'settings-datasets-modal',\n templateUrl: './datasets.modal.html',\n styleUrls: ['./datasets.component.scss'],\n imports: [MatRadioModule, MatDialogTitle, MatDialogContent, FormsModule, MatStepper, MatStep, MatStepLabel, MatFormField, MatLabel, MatSelect, MatOption, MatCheckbox, MatDivider, MatButton, MatStepperNext, MatInput, MatStepperPrevious, FilterSelfPipe]\n})\nexport class SettingsDatasetsModalComponent implements OnInit {\n private SignalKDataService = inject(DataService);\n dialogRef = inject<MatDialogRef<SettingsDatasetsModalComponent>>(MatDialogRef);\n dataset = inject<IDatasetServiceDatasetConfig>(MAT_DIALOG_DATA);\n\n public titleDialog: string = null;\n public newDataset: IDatasetServiceDatasetConfig = {\n uuid: null,\n path: null,\n pathSource: null,\n baseUnit: null,\n timeScaleFormat: \"second\",\n period: 10,\n label: null\n }\n\n public formDataset: IDatasetServiceDatasetConfig = null;\n\n public availablePaths: string[] = [];\n public availableSources: string[] = [];\n public filterSelfPaths = true;\n\n ngOnInit() {\n if (this.dataset) {\n this.titleDialog = \"Edit Dataset\";\n this.formDataset = this.dataset;\n\n const pathObject = this.SignalKDataService.getPathObject(this.formDataset.path);\n if (pathObject !== null) {\n this.availableSources = ['default'].concat(Object.keys(pathObject.sources));\n }\n\n } else {\n this.titleDialog = \"Add Dataset\";\n this.formDataset = this.newDataset;\n }\n\n this.availablePaths = this.SignalKDataService.getPathsByType('number').sort();\n }\n\n public changePath() { // called when we choose a new path. Resets the form old value with default info of this path\n const pathObject = this.SignalKDataService.getPathObject(this.formDataset.path);\n if (pathObject === null) { return; }\n this.availableSources = ['default'].concat(Object.keys(pathObject.sources));\n this.formDataset.pathSource = 'default';\n }\n\n public closeForm() {\n this.dialogRef.close(this.formDataset);\n }\n}\n","<div class=\"content-area \">\n <form name=\"existingDataSet\" #existingDataSet=\"ngForm\" class=\"page-content-wrapper content-area\">\n <p class=\"mat-card-subtitle description-text\">Datasets are background processes that record path values over time. Combine with the Data Chart widget they offer\n data visualization graphs. Care should be applied to manage Datasets and evaluate system resources usage.\n </p>\n <mat-form-field class=\"filter\">\n <mat-label>Filter</mat-label>\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"Ex: navigation\" value=\"\" #input>\n </mat-form-field>\n <div class=\"mat-elevation-z8 full-width table-container\">\n <mat-table class=\"full-display\" [dataSource]=\"tableData\" [trackBy]=\"trackByUuid\" matSort matSortActive=\"path\" matSortDirection=\"asc\">\n\n <!-- Path Column -->\n <ng-container matColumnDef=\"path\">\n <mat-header-cell class=\"pathHeader\" *matHeaderCellDef mat-sort-header> Path </mat-header-cell>\n <mat-cell class=\"pathCell\" *matCellDef=\"let element\" data-label=\"Path: \"> {{element.path}} </mat-cell>\n </ng-container>\n\n <!-- pathSource Column -->\n <ng-container matColumnDef=\"pathSource\">\n <mat-header-cell class=\"dataHeader\" *matHeaderCellDef mat-sort-header> Source </mat-header-cell>\n <mat-cell class=\"dataCell\" *matCellDef=\"let element\" data-label=\"Source: \"> {{element.pathSource}} </mat-cell>\n </ng-container>\n\n <!-- timeScaleFormat Column -->\n <ng-container matColumnDef=\"timeScaleFormat\">\n <mat-header-cell class=\"dataHeader\" *matHeaderCellDef mat-sort-header> Time Scale </mat-header-cell>\n <mat-cell class=\"dataCell\" *matCellDef=\"let element\" data-label=\"Scale: \"> {{element.timeScaleFormat}} </mat-cell>\n </ng-container>\n\n <!-- period Column -->\n <ng-container matColumnDef=\"period\">\n <mat-header-cell class=\"dataHeader\" *matHeaderCellDef mat-sort-header> Duration </mat-header-cell>\n <mat-cell class=\"dataCell\" *matCellDef=\"let element\" data-label=\"Scale: \"> {{element.period}} </mat-cell>\n </ng-container>\n\n <ng-container matColumnDef=\"actions\">\n <mat-header-cell class=\"actionHeader\" *matHeaderCellDef mat-sort-header> </mat-header-cell>\n <mat-cell class=\"actionCell\" *matCellDef=\"let element\">\n <button mat-raised-button class=\"small-button buttons\" color=\"accent\" (click)=\"openDatasetModal(element.uuid)\">Edit</button>\n <button mat-raised-button class=\"small-button buttons\" color=\"accent\" (click)=\"deleteDataset(element.uuid)\">Delete</button>\n </mat-cell>\n </ng-container>\n\n <mat-header-row class=\"headerRow\" *matHeaderRowDef=\"displayedColumns; sticky: true\"></mat-header-row>\n <mat-row class=\"dataRow\" *matRowDef=\"let row; columns: displayedColumns;\"></mat-row>\n\n <!-- Row shown when there is no matching data. -->\n <mat-row *matNoDataRow>\n No data matching the filter \"{{input.value}}\"\n </mat-row>\n </mat-table>\n </div>\n <div class=\"paginator\">\n <mat-paginator pageSize=\"5\" [pageSizeOptions]=\"[5, 10, 25, 100]\"></mat-paginator>\n </div>\n <div class=\"formActionFooter\">\n <mat-divider class=\"formActionDivider\"></mat-divider>\n <button mat-flat-button class=\"formActionButton\" (click)='openDatasetModal()'>Add</button>\n </div>\n </form>\n</div>\n","<h6 mat-dialog-title> {{titleDialog}} </h6>\n<mat-dialog-content>\n <form name=\"datasetForm\" (ngSubmit)=\"closeForm()\" #datasetForm=\"ngForm\">\n <mat-horizontal-stepper>\n <mat-step>\n <ng-template matStepLabel>Source Data</ng-template>\n <div class=\"tab-content\">\n <mat-form-field class=\"full-width\">\n <mat-label>Signal K Path</mat-label>\n <mat-select\n placeholder=\"Select data path\"\n [(ngModel)]=\"formDataset.path\"\n name=\"selectedPath\"\n (ngModelChange)=\"changePath()\"\n required>\n @for (path of (availablePaths | filterSelf: filterSelfPaths); track path) {\n <mat-option\n [value]=\"path\">\n {{path}}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-checkbox [(ngModel)]=\"filterSelfPaths\" name=\"filterSelfPaths\">\n Restrict to own vessel\n </mat-checkbox>\n <br/><br/>\n <mat-form-field class=\"full-width\">\n <mat-label>Source</mat-label>\n <mat-select\n placeholder=\"Select data source\"\n [(ngModel)]=\"formDataset.pathSource\"\n name=\"selectedSource\"\n required\n >\n @for (source of availableSources; track source) {\n <mat-option\n [value]=\"source\"\n >\n {{source}}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n <mat-divider></mat-divider>\n <div class=\"buttons\">\n <button\n type=\"button\"\n mat-raised-button\n color=\"accent\"\n matStepperNext\n [disabled]=\"!formDataset.path\"\n >\n Next\n </button>\n </div>\n </mat-step>\n <mat-step>\n <ng-template matStepLabel>Sampling</ng-template>\n <div class=\"tab-content\">\n <span class=\"mat-subtitle-1\">Time Scales</span>\n <div class=\"flex-container\" style=\"margin-top: 10px;\">\n <div class=\"flex-field-50\">\n <mat-form-field class=\"full-width\">\n <mat-label>Scale</mat-label>\n <mat-select\n placeholder=\"Select dataset time scale\"\n [(ngModel)]=\"formDataset.timeScaleFormat\"\n name=\"timeScaleFormat\"\n required>\n <mat-option value=\"hour\">Hours</mat-option>\n <mat-option value=\"minute\">Minutes</mat-option>\n <mat-option value=\"second\">Seconds</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"flex-field-50\">\n <mat-form-field class=\"full-width\">\n <mat-label>Duration</mat-label>\n <input matInput type=\"number\"\n min=\"1\" max=\"60\" step=\"1\"\n placeholder=\"Enter or select number...\"\n name=\"period\"\n [(ngModel)]=\"formDataset.period\"\n required>\n </mat-form-field>\n </div>\n </div>\n <p style=\"margin-top: 10px;\">Time scales define the data sampling rate and overall Dataset level\n of precision. Select a Time Scale that is targeted to your intended usage.\n Shorter Time Scales have higher system resources\n costs, for both the data capture and widget rendering process.\n </p>\n <ul>\n <li>Hours: per minute sampling rate. Intended for long sampling periods when slow\n refresh rate is acceptable and system resource usage should be minimized. Grafana is\n the perfect alternative to this Time Scale.\n </li>\n <li>Minutes: per second sampling rate. Meant for trends observations such wind\n speed, depth, solar power, voltage, etc.\n </li>\n <li>Secondes: 200ms sampling rate. Intended for use cases where user may act upon realtime\n information such as when racing.\n </li>\n </ul>\n </div>\n <mat-divider></mat-divider>\n <div class=\"buttons\">\n <button\n type=\"button\"\n mat-raised-button\n class=\"buttons\"\n color=\"accent\"\n matStepperPrevious\n >\n Back\n </button>\n <button\n mat-raised-button\n type=\"submit\"\n class=\"buttons\"\n color=\"accent\"\n [disabled]=\"!datasetForm.valid\"\n >\n Save\n </button>\n </div>\n </mat-step>\n </mat-horizontal-stepper>\n </form>\n</mat-dialog-content>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMM,IAAO,iBAAP,MAAO,gBAAc;EAEzB,UAAU,QAAkB,YAAmB;AAC7C,QAAI,CAAC,UAAU,CAAC,OAAO;AAAQ,aAAO,CAAA;AACtC,QAAI,CAAC;AAAY,aAAO;AACxB,WAAO,OAAO,OAAO,OAAM,EAAE,SAAS,MAAM,CAAC;EAC/C;;qCANW,iBAAc;EAAA;yFAAd,iBAAc,MAAA,KAAA,CAAA;;;sEAAd,gBAAc,CAAA;UAJ1B;WAAK;MACF,MAAM;MACN,YAAY;KACf;;;;;ACSD,IAAM,MAAM,CAAC,GAAG;AAChB,SAAS,+BAA+B,IAAI,KAAK;AAC/C,MAAI,KAAK,GAAG;AACV,IAAG,uBAAa,CAAC;AAAA,EACnB;AACF;AACA,IAAM,gBAAN,MAAM,eAAc;AAAA,EAClB,cAAc,OAAO,UAAU;AAAA,EAC/B,cAAc;AAAA,EAAC;AAAA;AAAA,EAEf,QAAQ;AACN,SAAK,YAAY,cAAc,MAAM;AAAA,EACvC;AAAA,EACA,OAAO,YAAO,SAAS,sBAAsB,mBAAmB;AAC9D,WAAO,KAAK,qBAAqB,gBAAe;AAAA,EAClD;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,IAAI,iBAAiB,EAAE,CAAC;AAAA,IACrC,WAAW,CAAC,QAAQ,KAAK;AAAA,EAC3B,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,eAAe,CAAC;AAAA,IACtF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,MAAM;AAAA,QACJ,QAAQ;AAAA,MACV;AAAA,IACF,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI;AACpB,GAAG;AACH,IAAM,eAAN,MAAM,cAAa;AAAA,EACjB,WAAW,OAAO,WAAW;AAAA,EAC7B,cAAc;AAAA,EAAC;AAAA,EACf,OAAO,YAAO,SAAS,qBAAqB,mBAAmB;AAC7D,WAAO,KAAK,qBAAqB,eAAc;AAAA,EACjD;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC;AAAA,EACtC,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,cAAc,CAAC;AAAA,IACrF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,IACZ,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI;AACpB,GAAG;AAcH,IAAM,aAAa;AAAA,EACjB,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AACT;AAEA,IAAM,yBAAyB,IAAI,eAAe,wBAAwB;AAC1E,IAAM,UAAN,MAAM,SAAQ;AAAA,EACZ;AAAA,EACA,WAAW,OAAO,UAAU;AAAA,EAC5B;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA,IAAI,aAAa;AACf,WAAO,KAAK,YAAY;AAAA,EAC1B;AAAA,EACA,IAAI,WAAW,OAAO;AACpB,SAAK,YAAY,IAAI,KAAK;AAAA,EAC5B;AAAA,EACA,cAAc,OAAO,KAAK;AAAA;AAAA,EAE1B,mBAAmB,IAAI,aAAa;AAAA;AAAA,EAEpC;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA;AAAA;AAAA,EAEA,IAAI,QAAQ;AACV,WAAO,KAAK,OAAO;AAAA,EACrB;AAAA,EACA,IAAI,MAAM,OAAO;AACf,SAAK,OAAO,IAAI,KAAK;AAAA,EACvB;AAAA,EACA,SAAS,OAAO,MAAS;AAAA;AAAA,EAEzB,IAAI,WAAW;AACb,WAAO,KAAK,UAAU;AAAA,EACxB;AAAA,EACA,IAAI,SAAS,OAAO;AAClB,SAAK,UAAU,IAAI,KAAK;AAAA,EAC1B;AAAA,EACA,YAAY,OAAO,IAAI;AAAA;AAAA,EAEvB,WAAW;AAAA;AAAA,EAEX,IAAI,YAAY;AACd,UAAM,WAAW,KAAK,mBAAmB;AACzC,UAAM,aAAa,KAAK,YAAY;AACpC,QAAI,YAAY,MAAM;AACpB,aAAO;AAAA,IACT;AACA,WAAO,eAAe,CAAC,KAAK,eAAe,KAAK,YAAY;AAAA,EAC9D;AAAA,EACA,IAAI,UAAU,OAAO;AACnB,SAAK,mBAAmB,IAAI,KAAK;AAAA,EACnC;AAAA,EACA,qBAAqB,OAAO,IAAI;AAAA;AAAA,EAEhC,QAAQ,OAAO,EAAE;AAAA;AAAA,EAEjB,aAAa,SAAS,MAAM,KAAK,SAAS,kBAAkB,KAAK,MAAM,CAAC;AAAA;AAAA,EAExE,gBAAgB,SAAS,MAAM;AAC7B,UAAM,WAAW,KAAK,WAAW;AACjC,UAAM,YAAY,KAAK;AACvB,UAAM,eAAe,KAAK,OAAO,KAAK,WAAW;AACjD,UAAM,WAAW,KAAK,UAAU;AAChC,QAAI,KAAK,WAAW,KAAK,KAAK,YAAY,CAAC,UAAU;AACnD,aAAO,WAAW;AAAA,IACpB;AACA,QAAI,KAAK,8BAA8B;AACrC,UAAI,CAAC,aAAa,UAAU;AAC1B,eAAO,WAAW;AAAA,MACpB;AACA,aAAO,WAAW,WAAW,OAAO,WAAW;AAAA,IACjD,OAAO;AACL,UAAI,aAAa,CAAC,UAAU;AAC1B,eAAO,WAAW;AAAA,MACpB,WAAW,aAAa,UAAU;AAChC,eAAO;AAAA,MACT;AACA,aAAO,YAAY,WAAW,WAAW,OAAO;AAAA,IAClD;AAAA,EACF,CAAC;AAAA;AAAA,EAED,cAAc,SAAS,MAAM;AAC3B,UAAM,aAAa,KAAK,WAAW;AACnC,UAAM,cAAc,KAAK;AACzB,WAAO,eAAe,cAAc,CAAC,KAAK,SAAS;AAAA,EACrD,CAAC;AAAA;AAAA,EAED,IAAI,WAAW;AACb,UAAM,cAAc,KAAK,aAAa;AACtC,WAAO,eAAe,OAAO,KAAK,iBAAiB,IAAI;AAAA,EACzD;AAAA,EACA,IAAI,SAAS,OAAO;AAClB,SAAK,aAAa,IAAI,KAAK;AAAA,EAC7B;AAAA,EACA,eAAe,OAAO,IAAI;AAAA,EAC1B,mBAAmB;AACjB,WAAO,KAAK,cAAc,CAAC,CAAC,KAAK,aAAa;AAAA,EAChD;AAAA,EACA,cAAc;AACZ,UAAM,iBAAiB,OAAO,wBAAwB;AAAA,MACpD,UAAU;AAAA,IACZ,CAAC;AACD,SAAK,kBAAkB,iBAAiB,iBAAiB,CAAC;AAC1D,SAAK,+BAA+B,KAAK,gBAAgB,gCAAgC;AAAA,EAC3F;AAAA;AAAA,EAEA,SAAS;AACP,SAAK,SAAS,WAAW;AAAA,EAC3B;AAAA;AAAA,EAEA,QAAQ;AACN,SAAK,YAAY,IAAI,KAAK;AAC1B,QAAI,KAAK,mBAAmB,KAAK,MAAM;AACrC,WAAK,mBAAmB,IAAI,KAAK;AAAA,IACnC;AACA,QAAI,KAAK,aAAa,KAAK,MAAM;AAC/B,WAAK,aAAa,IAAI,KAAK;AAAA,IAC7B;AACA,QAAI,KAAK,aAAa;AAIpB,WAAK,aAAa,QAAQ,UAAQ,KAAK,YAAY,CAAC;AACpD,WAAK,YAAY,MAAM;AAAA,IACzB;AAAA,EACF;AAAA,EACA,cAAc;AAGZ,SAAK,SAAS,cAAc;AAAA,EAC9B;AAAA,EACA,oBAAoB;AAClB,QAAI,CAAC,KAAK,YAAY,GAAG;AACvB,WAAK,YAAY,IAAI,IAAI;AACzB,WAAK,iBAAiB,KAAK,IAAI;AAAA,IACjC;AAAA,EACF;AAAA;AAAA,EAEA,aAAa;AAGX,WAAO,KAAK,gBAAgB,aAAa,KAAK,aAAa,KAAK;AAAA,EAClE;AAAA,EACA,OAAO,YAAO,SAAS,gBAAgB,mBAAmB;AACxD,WAAO,KAAK,qBAAqB,UAAS;AAAA,EAC5C;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,UAAU,CAAC;AAAA,IACxB,gBAAgB,SAAS,uBAAuB,IAAI,KAAK,UAAU;AACjE,UAAI,KAAK,GAAG;AACV,QAAG,yBAAe,UAAU,cAAc,CAAC;AAC3C,QAAG;AAAA,UAAe;AAAA;AAAA;AAAA;AAAA;AAAA,UAKlB;AAAA,UAAkB;AAAA,QAAC;AAAA,MACrB;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,YAAY,GAAG;AAChE,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,cAAc;AAAA,MACjE;AAAA,IACF;AAAA,IACA,WAAW,SAAS,cAAc,IAAI,KAAK;AACzC,UAAI,KAAK,GAAG;AACV,QAAG,sBAAY,aAAa,CAAC;AAAA,MAC/B;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,UAAU,GAAG;AAAA,MAChE;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,aAAa;AAAA,MACb,OAAO;AAAA,MACP,cAAc;AAAA,MACd,WAAW,CAAC,GAAG,cAAc,WAAW;AAAA,MACxC,gBAAgB,CAAC,GAAG,mBAAmB,gBAAgB;AAAA,MACvD,OAAO;AAAA,MACP,UAAU,CAAC,GAAG,YAAY,YAAY,gBAAgB;AAAA,MACtD,UAAU,CAAC,GAAG,YAAY,YAAY,gBAAgB;AAAA,MACtD,WAAW,CAAC,GAAG,aAAa,aAAa,gBAAgB;AAAA,MACzD,UAAU,CAAC,GAAG,YAAY,YAAY,gBAAgB;AAAA,IACxD;AAAA,IACA,SAAS;AAAA,MACP,kBAAkB;AAAA,IACpB;AAAA,IACA,UAAU,CAAC,SAAS;AAAA,IACpB,UAAU,CAAI,8BAAoB;AAAA,IAClC,oBAAoB;AAAA,IACpB,OAAO;AAAA,IACP,MAAM;AAAA,IACN,UAAU,SAAS,iBAAiB,IAAI,KAAK;AAC3C,UAAI,KAAK,GAAG;AACV,QAAG,0BAAgB;AACnB,QAAG,wBAAc,GAAG,gCAAgC,GAAG,GAAG,aAAa;AAAA,MACzE;AAAA,IACF;AAAA,IACA,eAAe;AAAA,IACf,iBAAiB;AAAA,EACnB,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,SAAS,CAAC;AAAA,IAChF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,UAAU;AAAA,MACV,UAAU;AAAA,MACV,eAAe,kBAAkB;AAAA,MACjC,iBAAiB,wBAAwB;AAAA,IAC3C,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG;AAAA,IACZ,WAAW,CAAC;AAAA,MACV,MAAM;AAAA,MACN,MAAM,CAAC,YAAY;AAAA,IACrB,CAAC;AAAA,IACD,aAAa,CAAC;AAAA,MACZ,MAAM;AAAA,MACN,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,QAKN;AAAA,QAAkB;AAAA,UAChB,aAAa;AAAA,QACf;AAAA,MAAC;AAAA,IACH,CAAC;AAAA,IACD,SAAS,CAAC;AAAA,MACR,MAAM;AAAA,MACN,MAAM,CAAC,aAAa;AAAA,QAClB,QAAQ;AAAA,MACV,CAAC;AAAA,IACH,CAAC;AAAA,IACD,aAAa,CAAC;AAAA,MACZ,MAAM;AAAA,IACR,CAAC;AAAA,IACD,kBAAkB,CAAC;AAAA,MACjB,MAAM;AAAA,MACN,MAAM,CAAC,YAAY;AAAA,IACrB,CAAC;AAAA,IACD,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,IACD,cAAc,CAAC;AAAA,MACb,MAAM;AAAA,IACR,CAAC;AAAA,IACD,WAAW,CAAC;AAAA,MACV,MAAM;AAAA,MACN,MAAM,CAAC,YAAY;AAAA,IACrB,CAAC;AAAA,IACD,gBAAgB,CAAC;AAAA,MACf,MAAM;AAAA,MACN,MAAM,CAAC,iBAAiB;AAAA,IAC1B,CAAC;AAAA,IACD,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,IACD,UAAU,CAAC;AAAA,MACT,MAAM;AAAA,MACN,MAAM,CAAC;AAAA,QACL,WAAW;AAAA,MACb,CAAC;AAAA,IACH,CAAC;AAAA,IACD,UAAU,CAAC;AAAA,MACT,MAAM;AAAA,MACN,MAAM,CAAC;AAAA,QACL,WAAW;AAAA,MACb,CAAC;AAAA,IACH,CAAC;AAAA,IACD,WAAW,CAAC;AAAA,MACV,MAAM;AAAA,MACN,MAAM,CAAC;AAAA,QACL,WAAW;AAAA,MACb,CAAC;AAAA,IACH,CAAC;AAAA,IACD,UAAU,CAAC;AAAA,MACT,MAAM;AAAA,MACN,MAAM,CAAC;AAAA,QACL,WAAW;AAAA,MACb,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AACH,IAAM,aAAN,MAAM,YAAW;AAAA,EACf,OAAO,OAAO,gBAAgB;AAAA,IAC5B,UAAU;AAAA,EACZ,CAAC;AAAA,EACD,qBAAqB,OAAO,iBAAiB;AAAA,EAC7C,cAAc,OAAO,UAAU;AAAA;AAAA,EAE/B,aAAa,IAAI,QAAQ;AAAA;AAAA,EAEzB;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA,QAAQ,IAAI,UAAU;AAAA;AAAA,EAEtB;AAAA;AAAA,EAEA,iBAAiB,IAAI,UAAU;AAAA;AAAA,EAE/B,SAAS;AAAA;AAAA,EAET,IAAI,gBAAgB;AAClB,WAAO,KAAK,eAAe;AAAA,EAC7B;AAAA,EACA,IAAI,cAAc,OAAO;AACvB,QAAI,KAAK,QAAQ;AAEf,UAAI,CAAC,KAAK,cAAc,KAAK,MAAM,OAAO,cAAc,eAAe,YAAY;AACjF,cAAM,MAAM,mEAAmE;AAAA,MACjF;AACA,UAAI,KAAK,kBAAkB,OAAO;AAChC,aAAK,UAAU,kBAAkB;AACjC,YAAI,CAAC,KAAK,6BAA6B,KAAK,MAAM,SAAS,KAAK,iBAAiB,KAAK,MAAM,QAAQ,EAAE,KAAK,EAAE,WAAW;AACtH,eAAK,yBAAyB,KAAK;AAAA,QACrC;AAAA,MACF;AAAA,IACF,OAAO;AACL,WAAK,eAAe,IAAI,KAAK;AAAA,IAC/B;AAAA,EACF;AAAA,EACA,iBAAiB,OAAO,CAAC;AAAA;AAAA,EAEzB,IAAI,WAAW;AACb,WAAO,KAAK,QAAQ,KAAK,MAAM,QAAQ,EAAE,KAAK,aAAa,IAAI;AAAA,EACjE;AAAA,EACA,IAAI,SAAS,MAAM;AACjB,SAAK,gBAAgB,QAAQ,KAAK,QAAQ,KAAK,MAAM,QAAQ,EAAE,QAAQ,IAAI,IAAI;AAAA,EACjF;AAAA;AAAA,EAEA,kBAAkB,IAAI,aAAa;AAAA;AAAA,EAEnC,sBAAsB,IAAI,aAAa;AAAA;AAAA,EAEvC,WAAW,OAAO,YAAY,EAAE,MAAM,cAAc;AAAA;AAAA,EAEpD,IAAI,cAAc;AAChB,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAI,YAAY,OAAO;AAErB,SAAK,eAAe;AACpB,QAAI,KAAK,aAAa;AACpB,WAAK,YAAY,wBAAwB,UAAU,UAAU;AAAA,IAC/D;AAAA,EACF;AAAA,EACA,eAAe;AAAA,EACf,cAAc;AAAA,EAAC;AAAA,EACf,qBAAqB;AACnB,SAAK,OAAO,QAAQ,KAAK,UAAU,KAAK,MAAM,GAAG,UAAU,KAAK,UAAU,CAAC,EAAE,UAAU,WAAS;AAC9F,WAAK,MAAM,MAAM,MAAM,OAAO,UAAQ,KAAK,aAAa,IAAI,CAAC;AAC7D,WAAK,MAAM,QAAQ,CAAC,MAAM,UAAU,KAAK,MAAM,IAAI,KAAK,CAAC;AACzD,WAAK,MAAM,gBAAgB;AAAA,IAC7B,CAAC;AAAA,EACH;AAAA,EACA,kBAAkB;AAOhB,SAAK,YAAY,QAAQ,KAAK,UAAU,KAAK,WAAW,GAAG,UAAU,KAAK,UAAU,CAAC,EAAE,UAAU,aAAW;AAC1G,WAAK,eAAe,MAAM,QAAQ,QAAQ,EAAE,KAAK,CAAC,GAAG,MAAM;AACzD,cAAM,mBAAmB,EAAE,YAAY,cAAc,wBAAwB,EAAE,YAAY,aAAa;AAIxG,eAAO,mBAAmB,KAAK,8BAA8B,KAAK;AAAA,MACpE,CAAC,CAAC;AACF,WAAK,eAAe,gBAAgB;AAAA,IACtC,CAAC;AAID,SAAK,cAAc,IAAI,gBAAgB,KAAK,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,wBAAwB,KAAK,iBAAiB,UAAU;AAIhJ,SAAK,YAAY,iBAAiB,KAAK,aAAa;AACpD,KAAC,KAAK,OAAO,KAAK,KAAK,SAAS,GAAG,GAAG,KAAK,UAAU,KAAK,iBAAiB,CAAC,GAAG,UAAU,KAAK,UAAU,CAAC,EAAE,UAAU,eAAa,KAAK,aAAa,0BAA0B,SAAS,CAAC;AACxL,SAAK,YAAY,iBAAiB,KAAK,aAAa;AAEpD,SAAK,MAAM,QAAQ,UAAU,MAAM;AACjC,UAAI,CAAC,KAAK,UAAU;AAClB,aAAK,eAAe,IAAI,KAAK,IAAI,KAAK,gBAAgB,GAAG,CAAC,CAAC;AAAA,MAC7D;AAAA,IACF,CAAC;AAID,QAAI,CAAC,KAAK,cAAc,KAAK,aAAa,GAAG;AAC3C,WAAK,eAAe,IAAI,CAAC;AAAA,IAC3B;AAGA,QAAI,KAAK,UAAU,KAAK,gBAAgB,GAAG;AACzC,YAAM,eAAe,KAAK,MAAM,QAAQ,EAAE,MAAM,GAAG,KAAK,eAAe,CAAC;AACxE,iBAAW,QAAQ,cAAc;AAC/B,aAAK,kBAAkB;AAAA,MACzB;AAAA,IACF;AAAA,EACF;AAAA,EACA,cAAc;AACZ,SAAK,aAAa,QAAQ;AAC1B,SAAK,MAAM,QAAQ;AACnB,SAAK,eAAe,QAAQ;AAC5B,SAAK,WAAW,KAAK;AACrB,SAAK,WAAW,SAAS;AAAA,EAC3B;AAAA;AAAA,EAEA,OAAO;AACL,SAAK,gBAAgB,KAAK,IAAI,KAAK,eAAe,IAAI,GAAG,KAAK,MAAM,SAAS,CAAC;AAAA,EAChF;AAAA;AAAA,EAEA,WAAW;AACT,SAAK,gBAAgB,KAAK,IAAI,KAAK,eAAe,IAAI,GAAG,CAAC;AAAA,EAC5D;AAAA;AAAA,EAEA,QAAQ;AACN,SAAK,yBAAyB,CAAC;AAC/B,SAAK,MAAM,QAAQ,UAAQ,KAAK,MAAM,CAAC;AACvC,SAAK,cAAc;AAAA,EACrB;AAAA;AAAA,EAEA,gBAAgB,GAAG;AACjB,WAAO,GAAG,KAAK,QAAQ,UAAU,CAAC;AAAA,EACpC;AAAA;AAAA,EAEA,kBAAkB,GAAG;AACnB,WAAO,GAAG,KAAK,QAAQ,YAAY,CAAC;AAAA,EACtC;AAAA;AAAA,EAEA,gBAAgB;AACd,SAAK,mBAAmB,aAAa;AAAA,EACvC;AAAA;AAAA,EAEA,uBAAuB,OAAO;AAC5B,UAAM,WAAW,QAAQ,KAAK,eAAe;AAC7C,QAAI,WAAW,GAAG;AAChB,aAAO,KAAK,iBAAiB,MAAM,QAAQ,SAAS;AAAA,IACtD,WAAW,WAAW,GAAG;AACvB,aAAO,KAAK,iBAAiB,MAAM,QAAQ,aAAa;AAAA,IAC1D;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAEA,iBAAiB;AACf,WAAO,KAAK,cAAc,KAAK,YAAY,kBAAkB,KAAK,eAAe;AAAA,EACnF;AAAA,EACA,yBAAyB,UAAU;AACjC,UAAM,aAAa,KAAK,MAAM,QAAQ;AACtC,UAAM,gBAAgB,KAAK,eAAe;AAC1C,SAAK,gBAAgB,KAAK;AAAA,MACxB,eAAe;AAAA,MACf,yBAAyB;AAAA,MACzB,cAAc,WAAW,QAAQ;AAAA,MACjC,wBAAwB,WAAW,aAAa;AAAA,IAClD,CAAC;AAKD,QAAI,KAAK,aAAa;AACpB,WAAK,eAAe,IAAI,KAAK,YAAY,cAAc,QAAQ,IAAI,KAAK,YAAY,iBAAiB,QAAQ;AAAA,IAC/G;AACA,SAAK,eAAe,IAAI,QAAQ;AAChC,SAAK,oBAAoB,KAAK,QAAQ;AACtC,SAAK,cAAc;AAAA,EACrB;AAAA,EACA,WAAW,OAAO;AAChB,UAAM,cAAc,eAAe,KAAK;AACxC,UAAM,UAAU,MAAM;AACtB,UAAM,UAAU,KAAK;AACrB,QAAI,SAAS,mBAAmB,QAAQ,CAAC,gBAAgB,YAAY,SAAS,YAAY,QAAQ;AAChG,WAAK,gBAAgB,QAAQ;AAC7B,YAAM,eAAe;AAAA,IACvB,OAAO;AACL,eAAS,eAAe,UAAU,EAAE,UAAU,KAAK;AAAA,IACrD;AAAA,EACF;AAAA,EACA,6BAA6B,OAAO;AAClC,QAAI,KAAK,UAAU,SAAS,GAAG;AAC7B,aAAO,KAAK,MAAM,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,KAAK,UAAQ;AACvD,cAAM,UAAU,KAAK;AACrB,cAAM,eAAe,UAAU,QAAQ,WAAW,QAAQ,WAAW,CAAC,KAAK,aAAa,CAAC,KAAK;AAC9F,eAAO,gBAAgB,CAAC,KAAK,YAAY,CAAC,KAAK,mBAAmB;AAAA,MACpE,CAAC;AAAA,IACH;AACA,WAAO;AAAA,EACT;AAAA,EACA,mBAAmB;AACjB,WAAO,KAAK,QAAQ,KAAK,KAAK,UAAU,QAAQ,QAAQ;AAAA,EAC1D;AAAA;AAAA,EAEA,iBAAiB;AACf,UAAM,iBAAiB,KAAK,YAAY;AACxC,UAAM,iBAAiB,kCAAkC;AACzD,WAAO,mBAAmB,kBAAkB,eAAe,SAAS,cAAc;AAAA,EACpF;AAAA;AAAA,EAEA,cAAc,OAAO;AACnB,WAAO,QAAQ,OAAO,CAAC,KAAK,SAAS,QAAQ,KAAK,MAAM;AAAA,EAC1D;AAAA,EACA,OAAO,YAAO,SAAS,mBAAmB,mBAAmB;AAC3D,WAAO,KAAK,qBAAqB,aAAY;AAAA,EAC/C;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,IAAI,cAAc,EAAE,CAAC;AAAA,IAClC,gBAAgB,SAAS,0BAA0B,IAAI,KAAK,UAAU;AACpE,UAAI,KAAK,GAAG;AACV,QAAG,yBAAe,UAAU,SAAS,CAAC;AACtC,QAAG,yBAAe,UAAU,eAAe,CAAC;AAAA,MAC9C;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,SAAS;AAC1D,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,cAAc;AAAA,MACjE;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,QAAQ,CAAC,GAAG,UAAU,UAAU,gBAAgB;AAAA,MAChD,eAAe,CAAC,GAAG,iBAAiB,iBAAiB,eAAe;AAAA,MACpE,UAAU;AAAA,MACV,aAAa;AAAA,IACf;AAAA,IACA,SAAS;AAAA,MACP,iBAAiB;AAAA,MACjB,qBAAqB;AAAA,IACvB;AAAA,IACA,UAAU,CAAC,YAAY;AAAA,EACzB,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,YAAY,CAAC;AAAA,IACnF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,UAAU;AAAA,IACZ,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG;AAAA,IACZ,QAAQ,CAAC;AAAA,MACP,MAAM;AAAA,MACN,MAAM,CAAC,SAAS;AAAA,QACd,aAAa;AAAA,MACf,CAAC;AAAA,IACH,CAAC;AAAA,IACD,aAAa,CAAC;AAAA,MACZ,MAAM;AAAA,MACN,MAAM,CAAC,eAAe;AAAA,QACpB,aAAa;AAAA,MACf,CAAC;AAAA,IACH,CAAC;AAAA,IACD,QAAQ,CAAC;AAAA,MACP,MAAM;AAAA,MACN,MAAM,CAAC;AAAA,QACL,WAAW;AAAA,MACb,CAAC;AAAA,IACH,CAAC;AAAA,IACD,eAAe,CAAC;AAAA,MACd,MAAM;AAAA,MACN,MAAM,CAAC;AAAA,QACL,WAAW;AAAA,MACb,CAAC;AAAA,IACH,CAAC;AAAA,IACD,UAAU,CAAC;AAAA,MACT,MAAM;AAAA,IACR,CAAC;AAAA,IACD,iBAAiB,CAAC;AAAA,MAChB,MAAM;AAAA,IACR,CAAC;AAAA,IACD,qBAAqB,CAAC;AAAA,MACpB,MAAM;AAAA,IACR,CAAC;AAAA,IACD,aAAa,CAAC;AAAA,MACZ,MAAM;AAAA,IACR,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AAGH,IAAM,iBAAN,MAAM,gBAAe;AAAA,EACnB,WAAW,OAAO,UAAU;AAAA;AAAA,EAE5B,OAAO;AAAA,EACP,cAAc;AAAA,EAAC;AAAA,EACf,OAAO,YAAO,SAAS,uBAAuB,mBAAmB;AAC/D,WAAO,KAAK,qBAAqB,iBAAgB;AAAA,EACnD;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,UAAU,kBAAkB,EAAE,CAAC;AAAA,IAC5C,UAAU;AAAA,IACV,cAAc,SAAS,4BAA4B,IAAI,KAAK;AAC1D,UAAI,KAAK,GAAG;AACV,QAAG,qBAAW,SAAS,SAAS,0CAA0C;AACxE,iBAAO,IAAI,SAAS,KAAK;AAAA,QAC3B,CAAC;AAAA,MACH;AACA,UAAI,KAAK,GAAG;AACV,QAAG,wBAAc,QAAQ,IAAI,IAAI;AAAA,MACnC;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,gBAAgB,CAAC;AAAA,IACvF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,MAAM;AAAA,QACJ,UAAU;AAAA,QACV,WAAW;AAAA,MACb;AAAA,IACF,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG;AAAA,IACZ,MAAM,CAAC;AAAA,MACL,MAAM;AAAA,IACR,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AAEH,IAAM,qBAAN,MAAM,oBAAmB;AAAA,EACvB,WAAW,OAAO,UAAU;AAAA;AAAA,EAE5B,OAAO;AAAA,EACP,cAAc;AAAA,EAAC;AAAA,EACf,OAAO,YAAO,SAAS,2BAA2B,mBAAmB;AACnE,WAAO,KAAK,qBAAqB,qBAAoB;AAAA,EACvD;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,UAAU,sBAAsB,EAAE,CAAC;AAAA,IAChD,UAAU;AAAA,IACV,cAAc,SAAS,gCAAgC,IAAI,KAAK;AAC9D,UAAI,KAAK,GAAG;AACV,QAAG,qBAAW,SAAS,SAAS,8CAA8C;AAC5E,iBAAO,IAAI,SAAS,SAAS;AAAA,QAC/B,CAAC;AAAA,MACH;AACA,UAAI,KAAK,GAAG;AACV,QAAG,wBAAc,QAAQ,IAAI,IAAI;AAAA,MACnC;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,oBAAoB,CAAC;AAAA,IAC3F,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,MAAM;AAAA,QACJ,UAAU;AAAA,QACV,WAAW;AAAA,MACb;AAAA,IACF,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG;AAAA,IACZ,MAAM,CAAC;AAAA,MACL,MAAM;AAAA,IACR,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AACH,IAAM,mBAAN,MAAM,kBAAiB;AAAA,EACrB,OAAO,YAAO,SAAS,yBAAyB,mBAAmB;AACjE,WAAO,KAAK,qBAAqB,mBAAkB;AAAA,EACrD;AAAA,EACA,OAAO,YAAsB,gBAAG,2BAAiB;AAAA,IAC/C,MAAM;AAAA,IACN,SAAS,CAAC,YAAY,SAAS,YAAY,eAAe,cAAc,gBAAgB,kBAAkB;AAAA,IAC1G,SAAS,CAAC,SAAS,YAAY,eAAe,cAAc,gBAAgB,kBAAkB;AAAA,EAChG,CAAC;AAAA,EACD,OAAO,YAAsB,gBAAG,2BAAiB;AAAA,IAC/C,SAAS,CAAC,UAAU;AAAA,EACtB,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,kBAAkB,CAAC;AAAA,IACzF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,SAAS,CAAC,YAAY,SAAS,YAAY,eAAe,cAAc,gBAAgB,kBAAkB;AAAA,MAC1G,SAAS,CAAC,SAAS,YAAY,eAAe,cAAc,gBAAgB,kBAAkB;AAAA,IAChG,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,IAAI;AAChB,GAAG;;;AClwBH,IAAMA,OAAM,CAAC,IAAI,IAAI,QAAQ;AAAA,EAC3B,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,UAAU;AACZ;AACA,SAAS,qCAAqC,IAAI,KAAK;AACrD,MAAI,KAAK,GAAG;AACV,IAAG,6BAAmB,GAAG,CAAC;AAAA,EAC5B;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc;AAChC,IAAG,qBAAW,oBAAoB,OAAO,cAAc,OAAO,KAAK,CAAC,EAAE,2BAA8B,0BAAgB,GAAGA,MAAK,OAAO,OAAO,OAAO,QAAQ,OAAO,QAAQ,CAAC;AAAA,EAC3K;AACF;AACA,SAAS,4CAA4C,IAAI,KAAK;AAC5D,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,QAAQ,CAAC;AAC9B,IAAG,iBAAO,CAAC;AACX,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc,CAAC;AACjC,IAAG,oBAAU;AACb,IAAG,4BAAkB,OAAO,wBAAwB,OAAO,KAAK,CAAC;AAAA,EACnE;AACF;AACA,SAAS,0DAA0D,IAAI,KAAK;AAC1E,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,QAAQ,CAAC;AAC9B,IAAG,iBAAO,CAAC;AACX,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc,CAAC;AACjC,IAAG,oBAAU;AACb,IAAG,4BAAkB,OAAO,MAAM,cAAc;AAAA,EAClD;AACF;AACA,SAAS,0DAA0D,IAAI,KAAK;AAC1E,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,QAAQ,CAAC;AAC9B,IAAG,iBAAO,CAAC;AACX,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc,CAAC;AACjC,IAAG,oBAAU;AACb,IAAG,4BAAkB,OAAO,MAAM,aAAa;AAAA,EACjD;AACF;AACA,SAAS,4CAA4C,IAAI,KAAK;AAC5D,MAAI,KAAK,GAAG;AACV,IAAG,8BAAoB,GAAG,2DAA2D,GAAG,GAAG,QAAQ,CAAC,EAAE,GAAG,2DAA2D,GAAG,GAAG,QAAQ,CAAC;AACnL,IAAG,yBAAe,GAAG,YAAY,CAAC;AAClC,IAAG,iBAAO,CAAC;AACX,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc,CAAC;AACjC,IAAG,wBAAc,OAAO,UAAU,SAAS,IAAI,OAAO,UAAU,SAAS,IAAI,EAAE;AAC/E,IAAG,oBAAU,CAAC;AACd,IAAG,4BAAkB,OAAO,wBAAwB,OAAO,KAAK,CAAC;AAAA,EACnE;AACF;AACA,SAAS,qCAAqC,IAAI,KAAK;AACrD,MAAI,KAAK,GAAG;AACV,IAAG,8BAAoB,GAAG,6CAA6C,GAAG,GAAG,QAAQ,CAAC,EAAE,GAAG,6CAA6C,GAAG,CAAC;AAAA,EAC9I;AACA,MAAI,KAAK,GAAG;AACV,QAAI;AACJ,UAAM,SAAY,wBAAc;AAChC,IAAG,yBAAe,UAAU,OAAO,WAAW,WAAW,IAAI,CAAC;AAAA,EAChE;AACF;AACA,SAAS,qCAAqC,IAAI,KAAK;AACrD,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,OAAO,CAAC;AAC7B,IAAG,6BAAmB,GAAG,CAAC;AAC1B,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,IAAG,oBAAU;AACb,IAAG,qBAAW,oBAAoB,IAAI,QAAQ;AAAA,EAChD;AACF;AACA,SAAS,qCAAqC,IAAI,KAAK;AACrD,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,OAAO,CAAC;AAC7B,IAAG,iBAAO,CAAC;AACX,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc;AAChC,IAAG,oBAAU;AACb,IAAG,4BAAkB,OAAO,KAAK;AAAA,EACnC;AACF;AACA,SAAS,qCAAqC,IAAI,KAAK;AACrD,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,OAAO,CAAC;AAC7B,IAAG,iBAAO,CAAC;AACX,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc;AAChC,IAAG,oBAAU;AACb,IAAG,4BAAkB,OAAO,MAAM,aAAa;AAAA,EACjD;AACF;AACA,SAAS,qCAAqC,IAAI,KAAK;AACrD,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,OAAO,CAAC;AAC7B,IAAG,iBAAO,CAAC;AACX,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc;AAChC,IAAG,oBAAU;AACb,IAAG,4BAAkB,OAAO,YAAY;AAAA,EAC1C;AACF;AACA,IAAM,MAAM,CAAC,GAAG;AAChB,SAAS,6CAA6C,IAAI,KAAK;AAAC;AAChE,SAAS,+BAA+B,IAAI,KAAK;AAC/C,MAAI,KAAK,GAAG;AACV,IAAG,uBAAa,CAAC;AACjB,IAAG,qBAAW,GAAG,8CAA8C,GAAG,GAAG,eAAe,CAAC;AAAA,EACvF;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc;AAChC,IAAG,oBAAU;AACb,IAAG,qBAAW,mBAAmB,OAAO,OAAO;AAAA,EACjD;AACF;AACA,IAAM,MAAM,CAAC,mBAAmB;AAChC,IAAM,MAAM,SAAO;AAAA,EACjB,MAAM;AACR;AACA,SAAS,kCAAkC,IAAI,KAAK;AAClD,MAAI,KAAK,GAAG;AACV,IAAG,uBAAa,CAAC;AAAA,EACnB;AACF;AACA,SAAS,+CAA+C,IAAI,KAAK;AAC/D,MAAI,KAAK,GAAG;AACV,IAAG,oBAAU,GAAG,OAAO,CAAC;AAAA,EAC1B;AACF;AACA,SAAS,iCAAiC,IAAI,KAAK;AACjD,MAAI,KAAK,GAAG;AACV,IAAG,6BAAmB,GAAG,CAAC;AAC1B,IAAG,8BAAoB,GAAG,gDAAgD,GAAG,GAAG,OAAO,CAAC;AAAA,EAC1F;AACA,MAAI,KAAK,GAAG;AACV,UAAM,UAAU,IAAI;AACpB,UAAM,oBAAe,IAAI;AACzB,UAAM,oBAAe,IAAI;AACzB,IAAG,wBAAc,CAAC;AAClB,UAAM,kBAAqB,sBAAY,CAAC;AACxC,IAAG,qBAAW,oBAAoB,eAAe,EAAE,2BAA8B,0BAAgB,GAAG,KAAK,OAAO,CAAC;AACjH,IAAG,oBAAU;AACb,IAAG,wBAAc,EAAE,sBAAiB,oBAAe,KAAK,IAAI,EAAE;AAAA,EAChE;AACF;AACA,SAAS,iCAAiC,IAAI,KAAK;AACjD,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,OAAO,GAAG,CAAC;AAChC,IAAG,6BAAmB,GAAG,CAAC;AAC1B,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,UAAU,IAAI;AACpB,UAAM,YAAY,IAAI;AACtB,UAAM,SAAY,wBAAc,CAAC;AACjC,IAAG,qBAAW,oCAAoC,OAAO,uBAAuB,SAAS,CAAC;AAC1F,IAAG,qBAAW,MAAM,OAAO,kBAAkB,SAAS,CAAC;AACvD,IAAG,sBAAY,mBAAmB,OAAO,gBAAgB,SAAS,CAAC,EAAE,SAAS,OAAO,kBAAkB,YAAY,OAAO,EAAE;AAC5H,IAAG,oBAAU,CAAC;AACd,IAAG,qBAAW,oBAAoB,QAAQ,OAAO;AAAA,EACnD;AACF;AACA,SAAS,2BAA2B,IAAI,KAAK;AAC3C,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC;AAC1C,IAAG,2BAAiB,GAAG,kCAAkC,GAAG,GAAG,MAAM,MAAS,mCAAyB;AACvG,IAAG,uBAAa;AAChB,IAAG,yBAAe,GAAG,OAAO,CAAC;AAC7B,IAAG,2BAAiB,GAAG,kCAAkC,GAAG,GAAG,OAAO,GAAM,mCAAyB;AACrG,IAAG,uBAAa,EAAE;AAAA,EACpB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc;AAChC,IAAG,oBAAU,CAAC;AACd,IAAG,qBAAW,OAAO,KAAK;AAC1B,IAAG,oBAAU,CAAC;AACd,IAAG,qBAAW,OAAO,KAAK;AAAA,EAC5B;AACF;AACA,SAAS,iCAAiC,IAAI,KAAK;AACjD,MAAI,KAAK,GAAG;AACV,IAAG,yBAAe,GAAG,OAAO,EAAE;AAC9B,IAAG,6BAAmB,GAAG,CAAC;AAC1B,IAAG,yBAAe,GAAG,OAAO,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE;AAC7D,IAAG,6BAAmB,GAAG,CAAC;AAC1B,IAAG,uBAAa,EAAE,EAAE,EAAE;AAAA,EACxB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,UAAU,IAAI;AACpB,UAAM,YAAY,IAAI;AACtB,UAAM,sBAAiB,IAAI;AAC3B,UAAM,sBAAiB,IAAI;AAC3B,UAAM,SAAY,wBAAc,CAAC;AACjC,UAAM,kBAAqB,sBAAY,CAAC;AACxC,IAAG,oBAAU;AACb,IAAG,qBAAW,oBAAoB,eAAe,EAAE,2BAA8B,0BAAgB,IAAI,KAAK,OAAO,CAAC;AAClH,IAAG,oBAAU;AACb,IAAG,sBAAY,6BAA6B,EAAE,wBAAmB,sBAAiB,EAAE,EAAE,yCAAyC,OAAO,kBAAkB,SAAS;AACjK,IAAG,sBAAY,SAAS,OAAO,kBAAkB,YAAY,OAAO,EAAE;AACtE,IAAG,oBAAU,CAAC;AACd,IAAG,qBAAW,MAAM,OAAO,kBAAkB,SAAS,CAAC;AACvD,IAAG,sBAAY,mBAAmB,OAAO,gBAAgB,SAAS,CAAC;AACnE,IAAG,oBAAU,CAAC;AACd,IAAG,qBAAW,oBAAoB,QAAQ,OAAO;AAAA,EACnD;AACF;AACA,SAAS,2BAA2B,IAAI,KAAK;AAC3C,MAAI,KAAK,GAAG;AACV,IAAG,2BAAiB,GAAG,kCAAkC,GAAG,IAAI,OAAO,IAAO,mCAAyB;AAAA,EACzG;AACA,MAAI,KAAK,GAAG;AACV,UAAM,SAAY,wBAAc;AAChC,IAAG,qBAAW,OAAO,KAAK;AAAA,EAC5B;AACF;AACA,SAAS,kCAAkC,IAAI,KAAK;AAClD,MAAI,KAAK,GAAG;AACV,UAAM,OAAU,2BAAiB;AACjC,IAAG,yBAAe,GAAG,mBAAmB,EAAE;AAC1C,IAAG,qBAAW,SAAS,SAAS,qEAAqE;AACnG,YAAM,WAAc,wBAAc,IAAI,EAAE;AACxC,aAAU,sBAAY,SAAS,OAAO,CAAC;AAAA,IACzC,CAAC,EAAE,WAAW,SAAS,qEAAqE,QAAQ;AAClG,MAAG,wBAAc,IAAI;AACrB,YAAM,SAAY,wBAAc;AAChC,aAAU,sBAAY,OAAO,WAAW,MAAM,CAAC;AAAA,IACjD,CAAC;AACD,IAAG,uBAAa;AAAA,EAClB;AACA,MAAI,KAAK,GAAG;AACV,UAAM,WAAW,IAAI;AACrB,UAAM,SAAY,wBAAc;AAChC,IAAG,sBAAY,iCAAiC,OAAO,gBAAgB,YAAY,EAAE,+BAA+B,OAAO,gBAAgB,UAAU;AACrJ,IAAG,qBAAW,YAAY,OAAO,eAAe,MAAM,SAAS,MAAM,IAAI,IAAI,EAAE,EAAE,MAAM,OAAO,gBAAgB,SAAS,MAAM,CAAC,CAAC,EAAE,SAAS,SAAS,MAAM,CAAC,EAAE,SAAS,SAAS,cAAc,CAAC,EAAE,SAAS,SAAS,aAAa,SAAS,KAAK,EAAE,YAAY,SAAS,WAAW,CAAC,EAAE,UAAU,SAAS,YAAY,CAAC,EAAE,YAAY,SAAS,QAAQ,EAAE,gBAAgB,SAAS,YAAY,EAAE,iBAAiB,OAAO,cAAc,EAAE,iBAAiB,OAAO,iBAAiB,CAAC,SAAS,YAAY,CAAC,EAAE,SAAS,SAAS,SAAS,OAAO,KAAK;AAC1gB,IAAG,sBAAY,iBAAiB,SAAS,MAAM,IAAI,CAAC,EAAE,gBAAgB,OAAO,MAAM,MAAM,EAAE,iBAAiB,OAAO,kBAAkB,SAAS,MAAM,CAAC,CAAC,EAAE,iBAAiB,SAAS,WAAW,CAAC,EAAE,cAAc,SAAS,aAAa,IAAI,EAAE,mBAAmB,CAAC,SAAS,aAAa,SAAS,iBAAiB,SAAS,iBAAiB,IAAI,EAAE,iBAAiB,SAAS,YAAY,IAAI,OAAO,IAAI;AAAA,EACrY;AACF;AACA,IAAM,eAAN,MAAM,sBAAqB,aAAa;AAAA,EACtC,OAAO,YAAuB,uBAAM;AAClC,QAAI;AACJ,WAAO,SAAS,qBAAqB,mBAAmB;AACtD,cAAQ,mCAA8B,iCAA+B,gCAAsB,aAAY,IAAI,qBAAqB,aAAY;AAAA,IAC9I;AAAA,EACF,GAAG;AAAA,EACH,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC;AAAA,IACpC,UAAU,CAAI,oCAA0B;AAAA,EAC1C,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,cAAc,CAAC;AAAA,IACrF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,IACZ,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,IAAI;AAChB,GAAG;AAGH,IAAM,iBAAN,MAAM,gBAAe;AAAA;AAAA;AAAA;AAAA;AAAA,EAKnB,UAAU,IAAI,QAAQ;AAAA;AAAA,EAEtB,gBAAgB;AAAA;AAAA,EAEhB,iBAAiB;AAAA;AAAA,EAEjB,gBAAgB;AAAA,EAChB,OAAO,YAAO,SAAS,uBAAuB,mBAAmB;AAC/D,WAAO,KAAK,qBAAqB,iBAAgB;AAAA,EACnD;AAAA,EACA,OAAO,aAAuB,gBAAG,6BAAmB;AAAA,IAClD,OAAO;AAAA,IACP,SAAS,gBAAe;AAAA,IACxB,YAAY;AAAA,EACd,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,gBAAgB,CAAC;AAAA,IACvF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,YAAY;AAAA,IACd,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,IAAI;AAChB,GAAG;AAMH,SAAS,kCAAkC,YAAY;AACrD,SAAO,cAAc,IAAI,eAAe;AAC1C;AAMA,IAAM,4BAA4B;AAAA,EAChC,SAAS;AAAA,EACT,MAAM,CAAC,CAAC,IAAI,SAAS,GAAG,IAAI,SAAS,GAAG,cAAc,CAAC;AAAA,EACvD,YAAY;AACd;AACA,IAAM,gBAAN,MAAM,uBAAsB,cAAc;AAAA,EACxC,QAAQ,OAAO,cAAc;AAAA,EAC7B,gBAAgB,OAAO,YAAY;AAAA,EACnC;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA;AAAA,EACA,cAAc;AACZ,UAAM;AACN,UAAM,cAAc,OAAO,sBAAsB;AACjD,gBAAY,KAAK,uBAAuB;AACxC,gBAAY,KAAK,qBAAqB;AACtC,UAAM,oBAAoB,OAAO,iBAAiB;AAClD,SAAK,oBAAoB,KAAK,MAAM,QAAQ,UAAU,MAAM,kBAAkB,aAAa,CAAC;AAAA,EAC9F;AAAA,EACA,kBAAkB;AAChB,SAAK,cAAc,QAAQ,KAAK,aAAa,IAAI;AAAA,EACnD;AAAA,EACA,cAAc;AACZ,SAAK,kBAAkB,YAAY;AACnC,SAAK,cAAc,eAAe,KAAK,WAAW;AAAA,EACpD;AAAA;AAAA,EAEA,MAAM,QAAQ,SAAS;AACrB,QAAI,QAAQ;AACV,WAAK,cAAc,SAAS,KAAK,aAAa,QAAQ,OAAO;AAAA,IAC/D,OAAO;AACL,WAAK,YAAY,cAAc,MAAM,OAAO;AAAA,IAC9C;AAAA,EACF;AAAA;AAAA,EAEA,eAAe;AACb,WAAO,KAAK,iBAAiB,eAAe,OAAO,KAAK;AAAA,EAC1D;AAAA;AAAA,EAEA,iBAAiB;AACf,WAAO,KAAK,iBAAiB,eAAe,KAAK,QAAQ;AAAA,EAC3D;AAAA;AAAA,EAEA,kBAAkB;AAChB,WAAO,KAAK,YAAY;AAAA,EAC1B;AAAA,EACA,wBAAwB,OAAO;AAC7B,QAAI,SAAS,UAAU;AACrB,aAAO,GAAG,KAAK,QAAQ,CAAC;AAAA,IAC1B;AACA,QAAI,SAAS,QAAQ;AACnB,aAAO;AAAA,IACT;AACA,QAAI,SAAS,SAAS;AACpB,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAAA,EACA,iBAAiB;AACf,WAAO,CAAC,KAAK,aAAa,KAAK,CAAC,KAAK,eAAe,KAAK,CAAC,KAAK,kBAAkB,KAAK,CAAC,KAAK,eAAe;AAAA,EAC7G;AAAA,EACA,oBAAoB;AAClB,WAAO,KAAK,YAAY,KAAK,UAAU;AAAA,EACzC;AAAA,EACA,iBAAiB;AACf,WAAO,KAAK,UAAU;AAAA,EACxB;AAAA,EACA,OAAO,YAAO,SAAS,sBAAsB,mBAAmB;AAC9D,WAAO,KAAK,qBAAqB,gBAAe;AAAA,EAClD;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,iBAAiB,CAAC;AAAA,IAC/B,WAAW,CAAC,QAAQ,OAAO,GAAG,iBAAiB;AAAA,IAC/C,UAAU;AAAA,IACV,cAAc,SAAS,2BAA2B,IAAI,KAAK;AACzD,UAAI,KAAK,GAAG;AACV,QAAG,qBAAW,UAAU,IAAI,SAAS,UAAU;AAC/C,QAAG,sBAAY,+BAA+B,IAAI,eAAe,CAAC;AAAA,MACpE;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,MACP,cAAc;AAAA,MACd,eAAe;AAAA,MACf,OAAO;AAAA,MACP,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,eAAe;AAAA,MACf,OAAO;AAAA,IACT;AAAA,IACA,UAAU,CAAI,oCAA0B;AAAA,IACxC,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ,CAAC,CAAC,aAAa,IAAI,GAAG,0BAA0B,uBAAuB,GAAG,oBAAoB,mBAAmB,GAAG,CAAC,GAAG,uBAAuB,GAAG,CAAC,GAAG,oBAAoB,yBAAyB,GAAG,CAAC,GAAG,gBAAgB,GAAG,CAAC,GAAG,qBAAqB,GAAG,CAAC,GAAG,mBAAmB,GAAG,CAAC,GAAG,0BAA0B,GAAG,CAAC,eAAe,MAAM,GAAG,CAAC,GAAG,qBAAqB,GAAG,CAAC,GAAG,kBAAkB,CAAC;AAAA,IACxY,UAAU,SAAS,uBAAuB,IAAI,KAAK;AACjD,UAAI,KAAK,GAAG;AACV,QAAG,oBAAU,GAAG,OAAO,CAAC;AACxB,QAAG,yBAAe,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;AACvC,QAAG,8BAAoB,GAAG,sCAAsC,GAAG,GAAG,gBAAgB,CAAC,EAAE,GAAG,sCAAsC,GAAG,CAAC;AACtI,QAAG,uBAAa,EAAE;AAClB,QAAG,yBAAe,GAAG,OAAO,CAAC;AAC7B,QAAG,8BAAoB,GAAG,sCAAsC,GAAG,GAAG,OAAO,CAAC,EAAE,GAAG,sCAAsC,GAAG,GAAG,OAAO,CAAC;AACvI,QAAG,8BAAoB,GAAG,sCAAsC,GAAG,GAAG,OAAO,CAAC;AAC9E,QAAG,8BAAoB,GAAG,sCAAsC,GAAG,GAAG,OAAO,CAAC;AAC9E,QAAG,uBAAa;AAAA,MAClB;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,qBAAW,oBAAoB,IAAI,gBAAgB,CAAC,EAAE,qBAAqB,IAAI,aAAa;AAC/F,QAAG,oBAAU;AACb,QAAG,qBAAc,yBAAe,wBAAwB,IAAI,OAAO,gBAAgB,CAAC;AACpF,QAAG,sBAAY,0BAA0B,IAAI,QAAQ;AACrD,QAAG,oBAAU,CAAC;AACd,QAAG,wBAAc,IAAI,iBAAiB,IAAI,cAAc,IAAI,KAAK,IAAI,IAAI,CAAC;AAC1E,QAAG,oBAAU,CAAC;AACd,QAAG,sBAAY,yBAAyB,IAAI,MAAM,EAAE,2BAA2B,IAAI,QAAQ,EAAE,wBAAwB,IAAI,SAAS,OAAO;AACzI,QAAG,oBAAU;AACb,QAAG,yBAAe,UAAU,IAAI,eAAe,KAAK,IAAI,IAAI,aAAa,IAAI,IAAI,IAAI,OAAO;AAC5F,QAAG,oBAAU,CAAC;AACd,QAAG,wBAAc,IAAI,kBAAkB,IAAI,IAAI,EAAE;AACjD,QAAG,oBAAU;AACb,QAAG,wBAAc,IAAI,eAAe,IAAI,IAAI,EAAE;AAAA,MAChD;AAAA,IACF;AAAA,IACA,cAAc,CAAC,WAAW,kBAAkB,OAAO;AAAA,IACnD,QAAQ,CAAC,+rIAAisI;AAAA,IAC1sI,eAAe;AAAA,IACf,iBAAiB;AAAA,EACnB,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,eAAe,CAAC;AAAA,IACtF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,uCAAuC;AAAA,QACvC,WAAW;AAAA,QACX,QAAQ;AAAA,MACV;AAAA,MACA,eAAe,kBAAkB;AAAA,MACjC,iBAAiB,wBAAwB;AAAA,MACzC,SAAS,CAAC,WAAW,kBAAkB,OAAO;AAAA,MAC9C,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MACV,QAAQ,CAAC,+rIAAisI;AAAA,IAC5sI,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG;AAAA,IACZ,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,IACD,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,IACD,cAAc,CAAC;AAAA,MACb,MAAM;AAAA,IACR,CAAC;AAAA,IACD,eAAe,CAAC;AAAA,MACd,MAAM;AAAA,IACR,CAAC;AAAA,IACD,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,IACD,UAAU,CAAC;AAAA,MACT,MAAM;AAAA,IACR,CAAC;AAAA,IACD,QAAQ,CAAC;AAAA,MACP,MAAM;AAAA,IACR,CAAC;AAAA,IACD,UAAU,CAAC;AAAA,MACT,MAAM;AAAA,IACR,CAAC;AAAA,IACD,eAAe,CAAC;AAAA,MACd,MAAM;AAAA,IACR,CAAC;AAAA,IACD,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AAKH,IAAM,iBAAN,MAAM,gBAAe;AAAA,EACnB,cAAc,OAAO,WAAW;AAAA;AAAA,EAEhC;AAAA,EACA,cAAc;AAAA,EAAC;AAAA,EACf,OAAO,YAAO,SAAS,uBAAuB,mBAAmB;AAC/D,WAAO,KAAK,qBAAqB,iBAAgB;AAAA,EACnD;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,eAAe,kBAAkB,EAAE,CAAC;AAAA,IACjD,QAAQ;AAAA,MACN,MAAM,CAAC,GAAG,kBAAkB,MAAM;AAAA,IACpC;AAAA,EACF,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,gBAAgB,CAAC;AAAA,IACvF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,IACZ,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG;AAAA,IACZ,MAAM,CAAC;AAAA,MACL,MAAM;AAAA,MACN,MAAM,CAAC,gBAAgB;AAAA,IACzB,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AAKH,IAAM,iBAAN,MAAM,gBAAe;AAAA,EACnB,YAAY,OAAO,WAAW;AAAA,EAC9B,cAAc;AAAA,EAAC;AAAA,EACf,OAAO,YAAO,SAAS,uBAAuB,mBAAmB;AAC/D,WAAO,KAAK,qBAAqB,iBAAgB;AAAA,EACnD;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,eAAe,kBAAkB,EAAE,CAAC;AAAA,EACnD,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,gBAAgB,CAAC;AAAA,IACvF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,IACZ,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI;AACpB,GAAG;AACH,IAAM,UAAN,MAAM,iBAAgB,QAAQ;AAAA,EAC5B,qBAAqB,OAAO,mBAAmB;AAAA,IAC7C,UAAU;AAAA,EACZ,CAAC;AAAA,EACD,oBAAoB,OAAO,gBAAgB;AAAA,EAC3C,cAAc,aAAa;AAAA;AAAA;AAAA,EAG3B,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQZ;AAAA;AAAA,EAEA;AAAA;AAAA,EAEA;AAAA,EACA,qBAAqB;AACnB,SAAK,cAAc,KAAK,SAAS,MAAM,QAAQ,KAAK,UAAU,MAAM;AAClE,aAAO,KAAK,SAAS,gBAAgB,KAAK,IAAI,WAAS,MAAM,iBAAiB,IAAI,GAAG,UAAU,KAAK,SAAS,aAAa,IAAI,CAAC;AAAA,IACjI,CAAC,CAAC,EAAE,UAAU,gBAAc;AAC1B,UAAI,cAAc,KAAK,gBAAgB,CAAC,KAAK,SAAS;AACpD,aAAK,UAAU,IAAI,eAAe,KAAK,aAAa,WAAW,KAAK,iBAAiB;AAAA,MACvF;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EACA,cAAc;AACZ,SAAK,YAAY,YAAY;AAAA,EAC/B;AAAA;AAAA,EAEA,aAAa,SAAS,MAAM;AAC1B,UAAM,qBAAqB,KAAK,mBAAmB,aAAa,SAAS,IAAI;AAI7E,UAAM,mBAAmB,CAAC,EAAE,WAAW,QAAQ,WAAW,KAAK;AAC/D,WAAO,sBAAsB;AAAA,EAC/B;AAAA,EACA,OAAO,YAAuB,uBAAM;AAClC,QAAI;AACJ,WAAO,SAAS,gBAAgB,mBAAmB;AACjD,cAAQ,8BAAyB,4BAA0B,gCAAsB,QAAO,IAAI,qBAAqB,QAAO;AAAA,IAC1H;AAAA,EACF,GAAG;AAAA,EACH,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,UAAU,CAAC;AAAA,IACxB,gBAAgB,SAAS,uBAAuB,IAAI,KAAK,UAAU;AACjE,UAAI,KAAK,GAAG;AACV,QAAG,yBAAe,UAAU,cAAc,CAAC;AAC3C,QAAG,yBAAe,UAAU,gBAAgB,CAAC;AAAA,MAC/C;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,YAAY,GAAG;AAChE,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,eAAe,GAAG;AAAA,MACrE;AAAA,IACF;AAAA,IACA,WAAW,CAAC,UAAU,EAAE;AAAA,IACxB,QAAQ;AAAA,MACN,OAAO;AAAA,IACT;AAAA,IACA,UAAU,CAAC,SAAS;AAAA,IACpB,UAAU,CAAI,6BAAmB,CAAC;AAAA,MAChC,SAAS;AAAA,MACT,aAAa;AAAA,IACf,GAAG;AAAA,MACD,SAAS;AAAA,MACT,aAAa;AAAA,IACf,CAAC,CAAC,GAAM,oCAA0B;AAAA,IAClC,oBAAoB;AAAA,IACpB,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ,CAAC,CAAC,GAAG,iBAAiB,CAAC;AAAA,IAC/B,UAAU,SAAS,iBAAiB,IAAI,KAAK;AAC3C,UAAI,KAAK,GAAG;AACV,QAAG,0BAAgB;AACnB,QAAG,qBAAW,GAAG,gCAAgC,GAAG,GAAG,aAAa;AAAA,MACtE;AAAA,IACF;AAAA,IACA,cAAc,CAAC,eAAe;AAAA,IAC9B,eAAe;AAAA,IACf,iBAAiB;AAAA,EACnB,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,SAAS,CAAC;AAAA,IAChF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,WAAW,CAAC;AAAA,QACV,SAAS;AAAA,QACT,aAAa;AAAA,MACf,GAAG;AAAA,QACD,SAAS;AAAA,QACT,aAAa;AAAA,MACf,CAAC;AAAA,MACD,eAAe,kBAAkB;AAAA,MACjC,UAAU;AAAA,MACV,iBAAiB,wBAAwB;AAAA,MACzC,SAAS,CAAC,eAAe;AAAA,MACzB,MAAM;AAAA,QACJ,UAAU;AAAA;AAAA,MACZ;AAAA,MACA,UAAU;AAAA,IACZ,CAAC;AAAA,EACH,CAAC,GAAG,MAAM;AAAA,IACR,WAAW,CAAC;AAAA,MACV,MAAM;AAAA,MACN,MAAM,CAAC,YAAY;AAAA,IACrB,CAAC;AAAA,IACD,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,IACD,cAAc,CAAC;AAAA,MACb,MAAM;AAAA,MACN,MAAM,CAAC,gBAAgB;AAAA,QACrB,QAAQ;AAAA,MACV,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AACH,IAAM,aAAN,MAAM,oBAAmB,WAAW;AAAA,EAClC,UAAU,OAAO,MAAM;AAAA,EACvB,YAAY,OAAO,SAAS;AAAA,EAC5B,sBAAsB,oBAAoB;AAAA,EAC1C;AAAA,EACA,eAAe,OAAO,KAAK;AAAA;AAAA,EAE3B,cAAc;AAAA;AAAA,EAEd;AAAA;AAAA,EAEA,SAAS;AAAA;AAAA,EAET,QAAQ,IAAI,UAAU;AAAA;AAAA,EAEtB;AAAA;AAAA,EAEA,gBAAgB,IAAI,aAAa;AAAA;AAAA,EAEjC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKhB,iBAAiB;AAAA;AAAA,EAEjB,iBAAiB,CAAC;AAAA;AAAA,EAElB,IAAI,oBAAoB;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAI,kBAAkB,OAAO;AAC3B,SAAK,qBAAqB,QAAQ,KAAK,KAAK,IAAI,QAAQ,OAAO;AAAA,EACjE;AAAA,EACA,qBAAqB;AAAA;AAAA,EAErB,YAAY,CAAC,OAAO,QAAQ,EAAE;AAAA,EAC9B,cAAc;AACZ,UAAM;AACN,UAAM,aAAa,OAAO,UAAU;AACpC,UAAM,WAAW,WAAW,cAAc,SAAS,YAAY;AAC/D,SAAK,cAAc,aAAa,yBAAyB,aAAa;AAAA,EACxE;AAAA,EACA,qBAAqB;AACnB,UAAM,mBAAmB;AACzB,SAAK,OAAO,QAAQ,CAAC;AAAA,MACnB;AAAA,MACA;AAAA,IACF,MAAM,KAAK,eAAe,IAAI,IAAI,WAAW;AAE7C,SAAK,MAAM,QAAQ,KAAK,UAAU,KAAK,UAAU,CAAC,EAAE,UAAU,MAAM,KAAK,cAAc,CAAC;AAExF,SAAK,oBAAoB,KAAK,UAAU,KAAK,UAAU,CAAC,EAAE,UAAU,MAAM;AACxE,YAAM,WAAW,KAAK,sBAAsB;AAC5C,UAAI,aAAa,SAAS,aAAa,MAAM;AAC3C,aAAK,iBAAiB;AAAA,MACxB,OAAO;AACL,aAAK,aAAa,IAAI,IAAI;AAAA,MAC5B;AAAA,IACF,CAAC;AACD,SAAK,QAAQ,kBAAkB,MAAM;AACnC,UAAI,CAAC,KAAK,qBAAqB;AAC7B,mBAAW,MAAM;AAEf,eAAK,YAAY,cAAc,UAAU,IAAI,gCAAgC;AAE7E,eAAK,qBAAqB,KAAK,UAAU,OAAO,KAAK,YAAY,eAAe,iBAAiB,KAAK,oBAAoB;AAAA,QAC5H,GAAG,GAAG;AAAA,MACR;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EACA,kBAAkB;AAChB,UAAM,gBAAgB;AAQtB,QAAI,OAAO,mBAAmB,YAAY;AACxC,UAAI,oBAAoB;AACxB,WAAK,oBAAoB,QAAQ,KAAK,UAAU,IAAI,GAAG,UAAU,KAAK,UAAU,CAAC,EAAE,UAAU,MAAM,eAAe,MAAM;AAGtH,YAAI,CAAC,mBAAmB;AACtB,8BAAoB;AACpB,eAAK,cAAc,KAAK;AAAA,QAC1B;AACA,aAAK,cAAc;AAAA,MACrB,CAAC,CAAC;AAAA,IACJ;AAAA,EACF;AAAA,EACA,cAAc;AACZ,UAAM,YAAY;AAClB,SAAK,qBAAqB;AAAA,EAC5B;AAAA,EACA,wBAAwB;AACtB,QAAI,KAAK,qBAAqB;AAC5B,aAAO;AAAA,IACT;AACA,QAAI,KAAK,mBAAmB;AAC1B,aAAO,KAAK;AAAA,IACd;AACA,WAAO,KAAK,gBAAgB,eAAe,UAAU;AAAA,EACvD;AAAA,EACA,uBAAuB,WAAS;AAC9B,UAAM,SAAS,MAAM;AACrB,QAAI,CAAC,QAAQ;AACX;AAAA,IACF;AAKA,UAAM,4BAA4B,KAAK,gBAAgB,gBAAgB,MAAM,iBAAiB,eAAe,OAAO,UAAU,SAAS,wCAAwC;AAC/K,UAAM,0BAA0B,KAAK,gBAAgB,cAAc,MAAM,iBAAiB,wBAAwB,OAAO,UAAU,SAAS,uCAAuC;AAGnL,UAAM,cAAc,6BAA6B,4BAA4B,KAAK,oBAAoB,KAAK,SAAO,IAAI,kBAAkB,MAAM;AAC9I,QAAI,YAAY;AACd,WAAK,iBAAiB;AAAA,IACxB;AAAA,EACF;AAAA,EACA,mBAAmB;AACjB,SAAK,aAAa,IAAI,KAAK;AAC3B,SAAK,cAAc,KAAK;AAAA,EAC1B;AAAA,EACA,OAAO,YAAO,SAAS,mBAAmB,mBAAmB;AAC3D,WAAO,KAAK,qBAAqB,aAAY;AAAA,EAC/C;AAAA,EACA,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,aAAa,GAAG,CAAC,sBAAsB,GAAG,CAAC,wBAAwB,GAAG,CAAC,IAAI,cAAc,EAAE,CAAC;AAAA,IACzG,gBAAgB,SAAS,0BAA0B,IAAI,KAAK,UAAU;AACpE,UAAI,KAAK,GAAG;AACV,QAAG,yBAAe,UAAU,SAAS,CAAC;AACtC,QAAG,yBAAe,UAAU,gBAAgB,CAAC;AAAA,MAC/C;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,SAAS;AAC1D,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,SAAS;AAAA,MAC5D;AAAA,IACF;AAAA,IACA,WAAW,SAAS,iBAAiB,IAAI,KAAK;AAC5C,UAAI,KAAK,GAAG;AACV,QAAG,sBAAY,eAAe,CAAC;AAC/B,QAAG,sBAAY,KAAK,CAAC;AAAA,MACvB;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,cAAc;AAC/D,QAAG,yBAAe,KAAQ,sBAAY,CAAC,MAAM,IAAI,sBAAsB;AAAA,MACzE;AAAA,IACF;AAAA,IACA,WAAW,CAAC,QAAQ,SAAS;AAAA,IAC7B,UAAU;AAAA,IACV,cAAc,SAAS,wBAAwB,IAAI,KAAK;AACtD,UAAI,KAAK,GAAG;AACV,QAAG,sBAAY,oBAAoB,IAAI,WAAW;AAClD,QAAG,sBAAY,oCAAoC,IAAI,sBAAsB,CAAC;AAC9E,QAAG,sBAAY,0BAA0B,IAAI,gBAAgB,YAAY,EAAE,wBAAwB,IAAI,gBAAgB,UAAU,EAAE,kCAAkC,IAAI,gBAAgB,gBAAgB,IAAI,iBAAiB,KAAK,EAAE,qCAAqC,IAAI,gBAAgB,gBAAgB,IAAI,iBAAiB,QAAQ,EAAE,sCAAsC,IAAI,mBAAmB,QAAQ,EAAE,yBAAyB,IAAI,aAAa,CAAC;AAAA,MACjc;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,eAAe;AAAA,MACf,OAAO;AAAA,MACP,eAAe;AAAA,MACf,gBAAgB;AAAA,MAChB,mBAAmB;AAAA,IACrB;AAAA,IACA,SAAS;AAAA,MACP,eAAe;AAAA,IACjB;AAAA,IACA,UAAU,CAAC,cAAc,sBAAsB,sBAAsB;AAAA,IACrE,UAAU,CAAI,6BAAmB,CAAC;AAAA,MAChC,SAAS;AAAA,MACT,aAAa;AAAA,IACf,CAAC,CAAC,GAAM,oCAA0B;AAAA,IAClC,oBAAoB;AAAA,IACpB,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ,CAAC,CAAC,gBAAgB,EAAE,GAAG,CAAC,qBAAqB,EAAE,GAAG,CAAC,GAAG,gCAAgC,GAAG,CAAC,GAAG,yCAAyC,GAAG,CAAC,GAAG,kCAAkC,GAAG,CAAC,QAAQ,YAAY,GAAG,kCAAkC,GAAG,MAAM,OAAO,GAAG,CAAC,GAAG,oBAAoB,yBAAyB,GAAG,CAAC,GAAG,6BAA6B,GAAG,CAAC,QAAQ,YAAY,GAAG,kCAAkC,GAAG,IAAI,GAAG,CAAC,GAAG,kBAAkB,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,GAAG,gCAAgC,GAAG,CAAC,QAAQ,YAAY,GAAG,gCAAgC,GAAG,IAAI,GAAG,CAAC,GAAG,sBAAsB,GAAG,CAAC,GAAG,SAAS,WAAW,YAAY,MAAM,SAAS,SAAS,SAAS,YAAY,UAAU,YAAY,gBAAgB,iBAAiB,iBAAiB,OAAO,CAAC;AAAA,IACpvB,UAAU,SAAS,oBAAoB,IAAI,KAAK;AAC9C,UAAI,KAAK,GAAG;AACV,QAAG,0BAAgB;AACnB,QAAG,8BAAoB,GAAG,mCAAmC,GAAG,CAAC;AACjE,QAAG,8BAAoB,GAAG,4BAA4B,GAAG,GAAG,OAAO,CAAC,EAAE,GAAG,4BAA4B,GAAG,CAAC;AACzG,QAAG,qBAAW,GAAG,mCAAmC,GAAG,IAAI,eAAe,MAAM,GAAM,gCAAsB;AAAA,MAC9G;AACA,UAAI,KAAK,GAAG;AACV,YAAI;AACJ,QAAG,wBAAc,IAAI,YAAY,IAAI,EAAE;AACvC,QAAG,oBAAU;AACb,QAAG,yBAAe,UAAU,IAAI,iBAAiB,eAAe,IAAI,YAAY,aAAa,IAAI,EAAE;AAAA,MACrG;AAAA,IACF;AAAA,IACA,cAAc,CAAC,kBAAkB,aAAa;AAAA,IAC9C,QAAQ,CAAC,y7LAA67L;AAAA,IACt8L,eAAe;AAAA,IACf,iBAAiB;AAAA,EACnB,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,YAAY,CAAC;AAAA,IACnF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,UAAU;AAAA,MACV,MAAM;AAAA,QACJ,kCAAkC;AAAA,QAClC,gCAAgC;AAAA,QAChC,0CAA0C;AAAA,QAC1C,6CAA6C;AAAA,QAC7C,8CAA8C;AAAA,QAC9C,iCAAiC;AAAA,QACjC,4CAA4C;AAAA,QAC5C,2BAA2B;AAAA,QAC3B,QAAQ;AAAA,MACV;AAAA,MACA,WAAW,CAAC;AAAA,QACV,SAAS;AAAA,QACT,aAAa;AAAA,MACf,CAAC;AAAA,MACD,eAAe,kBAAkB;AAAA,MACjC,iBAAiB,wBAAwB;AAAA,MACzC,SAAS,CAAC,kBAAkB,aAAa;AAAA,MACzC,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MACV,QAAQ,CAAC,y7LAA67L;AAAA,IACx8L,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,CAAC,GAAG;AAAA,IACZ,aAAa,CAAC;AAAA,MACZ,MAAM;AAAA,MACN,MAAM,CAAC,aAAa;AAAA,IACtB,CAAC;AAAA,IACD,qBAAqB,CAAC;AAAA,MACpB,MAAM;AAAA,MACN,MAAM,CAAC,mBAAmB;AAAA,IAC5B,CAAC;AAAA,IACD,QAAQ,CAAC;AAAA,MACP,MAAM;AAAA,MACN,MAAM,CAAC,SAAS;AAAA,QACd,aAAa;AAAA,MACf,CAAC;AAAA,IACH,CAAC;AAAA,IACD,QAAQ,CAAC;AAAA,MACP,MAAM;AAAA,MACN,MAAM,CAAC,gBAAgB;AAAA,QACrB,aAAa;AAAA,MACf,CAAC;AAAA,IACH,CAAC;AAAA,IACD,eAAe,CAAC;AAAA,MACd,MAAM;AAAA,IACR,CAAC;AAAA,IACD,eAAe,CAAC;AAAA,MACd,MAAM;AAAA,IACR,CAAC;AAAA,IACD,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,IACR,CAAC;AAAA,IACD,eAAe,CAAC;AAAA,MACd,MAAM;AAAA,IACR,CAAC;AAAA,IACD,gBAAgB,CAAC;AAAA,MACf,MAAM;AAAA,IACR,CAAC;AAAA,IACD,mBAAmB,CAAC;AAAA,MAClB,MAAM;AAAA,IACR,CAAC;AAAA,EACH,CAAC;AACH,GAAG;AAGH,IAAM,iBAAN,MAAM,wBAAuB,eAAe;AAAA,EAC1C,OAAO,YAAuB,uBAAM;AAClC,QAAI;AACJ,WAAO,SAAS,uBAAuB,mBAAmB;AACxD,cAAQ,qCAAgC,mCAAiC,gCAAsB,eAAc,IAAI,qBAAqB,eAAc;AAAA,IACtJ;AAAA,EACF,GAAG;AAAA,EACH,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,UAAU,kBAAkB,EAAE,CAAC;AAAA,IAC5C,WAAW,CAAC,GAAG,kBAAkB;AAAA,IACjC,UAAU;AAAA,IACV,cAAc,SAAS,4BAA4B,IAAI,KAAK;AAC1D,UAAI,KAAK,GAAG;AACV,QAAG,wBAAc,QAAQ,IAAI,IAAI;AAAA,MACnC;AAAA,IACF;AAAA,IACA,UAAU,CAAI,oCAA0B;AAAA,EAC1C,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,gBAAgB,CAAC;AAAA,IACvF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,IAAI;AAChB,GAAG;AAEH,IAAM,qBAAN,MAAM,4BAA2B,mBAAmB;AAAA,EAClD,OAAO,YAAuB,uBAAM;AAClC,QAAI;AACJ,WAAO,SAAS,2BAA2B,mBAAmB;AAC5D,cAAQ,yCAAoC,uCAAqC,gCAAsB,mBAAkB,IAAI,qBAAqB,mBAAkB;AAAA,IACtK;AAAA,EACF,GAAG;AAAA,EACH,OAAO,YAAsB,gBAAG,4BAAkB;AAAA,IAChD,MAAM;AAAA,IACN,WAAW,CAAC,CAAC,UAAU,sBAAsB,EAAE,CAAC;AAAA,IAChD,WAAW,CAAC,GAAG,sBAAsB;AAAA,IACrC,UAAU;AAAA,IACV,cAAc,SAAS,gCAAgC,IAAI,KAAK;AAC9D,UAAI,KAAK,GAAG;AACV,QAAG,wBAAc,QAAQ,IAAI,IAAI;AAAA,MACnC;AAAA,IACF;AAAA,IACA,UAAU,CAAI,oCAA0B;AAAA,EAC1C,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,oBAAoB,CAAC;AAAA,IAC3F,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,UAAU;AAAA,MACV,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,IAAI;AAChB,GAAG;AACH,IAAM,mBAAN,MAAM,kBAAiB;AAAA,EACrB,OAAO,YAAO,SAAS,yBAAyB,mBAAmB;AACjE,WAAO,KAAK,qBAAqB,mBAAkB;AAAA,EACrD;AAAA,EACA,OAAO,YAAsB,gBAAG,2BAAiB;AAAA,IAC/C,MAAM;AAAA,IACN,SAAS,CAAC,iBAAiB,cAAc,kBAAkB,eAAe,iBAAiB,SAAS,cAAc,YAAY,gBAAgB,oBAAoB,eAAe,gBAAgB,cAAc;AAAA,IAC/M,SAAS,CAAC,iBAAiB,SAAS,cAAc,YAAY,gBAAgB,oBAAoB,eAAe,gBAAgB,cAAc;AAAA,EACjJ,CAAC;AAAA,EACD,OAAO,YAAsB,gBAAG,2BAAiB;AAAA,IAC/C,WAAW,CAAC,2BAA2B,iBAAiB;AAAA,IACxD,SAAS,CAAC,iBAAiB,cAAc,kBAAkB,eAAe,iBAAiB,YAAY,eAAe,eAAe;AAAA,EACvI,CAAC;AACH;AAAA,CACC,MAAM;AACL,GAAC,OAAO,cAAc,eAAe,cAAiB,iBAAkB,kBAAkB,CAAC;AAAA,IACzF,MAAM;AAAA,IACN,MAAM,CAAC;AAAA,MACL,SAAS,CAAC,iBAAiB,cAAc,kBAAkB,eAAe,iBAAiB,SAAS,cAAc,YAAY,gBAAgB,oBAAoB,eAAe,gBAAgB,cAAc;AAAA,MAC/M,SAAS,CAAC,iBAAiB,SAAS,cAAc,YAAY,gBAAgB,oBAAoB,eAAe,gBAAgB,cAAc;AAAA,MAC/I,WAAW,CAAC,2BAA2B,iBAAiB;AAAA,IAC1D,CAAC;AAAA,EACH,CAAC,GAAG,MAAM,IAAI;AAChB,GAAG;;;;;;AEtkCO,IAAA,yBAAA,GAAA,mBAAA,EAAA;AAAuE,IAAA,iBAAA,GAAA,QAAA;AAAK,IAAA,uBAAA;;;;;AAC5E,IAAA,yBAAA,GAAA,YAAA,EAAA;AAA0E,IAAA,iBAAA,CAAA;AAAiB,IAAA,uBAAA;;;;AAAjB,IAAA,oBAAA;AAAA,IAAA,6BAAA,KAAA,WAAA,MAAA,GAAA;;;;;AAK1E,IAAA,yBAAA,GAAA,mBAAA,EAAA;AAAuE,IAAA,iBAAA,GAAA,UAAA;AAAO,IAAA,uBAAA;;;;;AAC9E,IAAA,yBAAA,GAAA,YAAA,EAAA;AAA4E,IAAA,iBAAA,CAAA;AAAuB,IAAA,uBAAA;;;;AAAvB,IAAA,oBAAA;AAAA,IAAA,6BAAA,KAAA,WAAA,YAAA,GAAA;;;;;AAK5E,IAAA,yBAAA,GAAA,mBAAA,EAAA;AAAuE,IAAA,iBAAA,GAAA,cAAA;AAAW,IAAA,uBAAA;;;;;AAClF,IAAA,yBAAA,GAAA,YAAA,EAAA;AAA2E,IAAA,iBAAA,CAAA;AAA4B,IAAA,uBAAA;;;;AAA5B,IAAA,oBAAA;AAAA,IAAA,6BAAA,KAAA,WAAA,iBAAA,GAAA;;;;;AAK3E,IAAA,yBAAA,GAAA,mBAAA,EAAA;AAAuE,IAAA,iBAAA,GAAA,YAAA;AAAS,IAAA,uBAAA;;;;;AAChF,IAAA,yBAAA,GAAA,YAAA,EAAA;AAA2E,IAAA,iBAAA,CAAA;AAAmB,IAAA,uBAAA;;;;AAAnB,IAAA,oBAAA;AAAA,IAAA,6BAAA,KAAA,WAAA,QAAA,GAAA;;;;;AAI3E,IAAA,oBAAA,GAAA,mBAAA,EAAA;;;;;;AACA,IAAA,yBAAA,GAAA,YAAA,EAAA,EAAuD,GAAA,UAAA,EAAA;AACiB,IAAA,qBAAA,SAAA,SAAA,yEAAA;AAAA,YAAA,aAAA,wBAAA,GAAA,EAAA;AAAA,YAAA,SAAA,wBAAA;AAAA,aAAA,sBAAS,OAAA,iBAAA,WAAA,IAAA,CAA8B;IAAA,CAAA;AAAE,IAAA,iBAAA,GAAA,MAAA;AAAI,IAAA,uBAAA;AACnH,IAAA,yBAAA,GAAA,UAAA,EAAA;AAAsE,IAAA,qBAAA,SAAA,SAAA,yEAAA;AAAA,YAAA,aAAA,wBAAA,GAAA,EAAA;AAAA,YAAA,SAAA,wBAAA;AAAA,aAAA,sBAAS,OAAA,cAAA,WAAA,IAAA,CAA2B;IAAA,CAAA;AAAE,IAAA,iBAAA,GAAA,QAAA;AAAM,IAAA,uBAAA,EAAS;;;;;AAI/H,IAAA,oBAAA,GAAA,kBAAA,EAAA;;;;;AACA,IAAA,oBAAA,GAAA,WAAA,EAAA;;;;;AAGA,IAAA,yBAAA,GAAA,SAAA;AACE,IAAA,iBAAA,CAAA;AACF,IAAA,uBAAA;;;;;AADE,IAAA,oBAAA;AAAA,IAAA,6BAAA,kCAAA,SAAA,OAAA,IAAA;;;;;AC5CwB,IAAA,iBAAA,GAAA,aAAA;;;;;AAWlB,IAAA,yBAAA,GAAA,cAAA,CAAA;AAEE,IAAA,iBAAA,CAAA;AACF,IAAA,uBAAA;;;;AAFE,IAAA,qBAAA,SAAA,OAAA;AACA,IAAA,oBAAA;AAAA,IAAA,6BAAA,KAAA,SAAA,GAAA;;;;;AAkBF,IAAA,yBAAA,GAAA,cAAA,CAAA;AAGE,IAAA,iBAAA,CAAA;AACF,IAAA,uBAAA;;;;AAHE,IAAA,qBAAA,SAAA,SAAA;AAEA,IAAA,oBAAA;AAAA,IAAA,6BAAA,KAAA,WAAA,GAAA;;;;;AAoBgB,IAAA,iBAAA,GAAA,UAAA;;;;AF7B5B,IAAO,4BAAP,MAAO,2BAAyB;EAE3B,YAAY,UAAU,cAAY,GAAA,YAAA,CAAA,EAAA,WAAA,YAAA,CAAA,IAAA,CAAA,CAAA;EAClC,OAAO,UAAU,SAAO,GAAA,YAAA,CAAA,EAAA,WAAA,OAAA,CAAA,IAAA,CAAA,CAAA;EAEd,YAAoB;EAEvC;EACA,YAAY,IAAI,mBAAmB,CAAA,CAAE;EACrC,mBAA6B,CAAC,QAAQ,cAAc,mBAAmB,UAAU,SAAS;EAEnF,SAAS,OAAO,SAAS;EACxB,QAAQ,OAAO,iBAAiB;EAChC,YAAY,OAAO,cAAc;EAEzC,WAAQ;AACN,SAAK,aAAY;EACnB;EAEQ,eAAY;AAClB,SAAK,UAAU,OAAO,KAAK,UAAU,KAAI,EAAG,OAAO,QAAM,GAAG,aAAa,KAAK;EAChF;EAEA,kBAAe;AACb,SAAK,UAAU,YAAY,KAAK,UAAS;AACzC,SAAK,UAAU,OAAO,KAAK,KAAI;AAC/B,SAAK,UAAU,SAAS;AACxB,SAAK,MAAM,cAAa;EAC1B;EAEO,iBAAiB,MAAa;AACnC,QAAI;AAEJ,QAAI,MAAM;AACR,YAAM,cAA4C,kBAChD,KAAK,UAAU,KAAK,KAClB,CAAC,YAAyC;AAExC,eAAO,QAAQ,SAAS;MAC1B,CAAC,CACF;AAGH,UAAI,aAAa;AACf,oBAAY,KAAK,OAAO,KAAK,gCAAgC;UAC3D,MAAM;UACN,cAAc;SACf;MACH;IACF,OAAO;AACH,kBAAY,KAAK,OAAO,KAAK,gCAAgC;QAC3D,cAAc;OACf;IACL;AAEA,cAAU,YAAW,EAAG,UAAU,CAAC,YAAyC;AAC1E,UAAI,YAAY,UAAa,CAAC,SAAS;AACrC;MACF,OAAO;AACL,gBAAQ,QAAQ,GAAG,QAAQ,IAAI,aAAa,QAAQ,UAAU,YAAY,QAAQ,eAAe,aAAa,QAAQ,MAAM;AAC5H,YAAI,QAAQ,MAAM;AAChB,eAAK,YAAY,OAAO;QAC1B,OAAO;AACL,eAAK,WAAW,OAAO;QACzB;AAEA,aAAK,aAAY;MACnB;IACF,CAAC;EACH;EAEQ,WAAW,SAAqC;AACtD,SAAK,UAAU,OAAO,QAAQ,MAAM,QAAQ,YAAY,QAAQ,iBAAiB,QAAQ,QAAQ,QAAQ,OAAO,MAAM,IAAI;AAC1H,SAAK,aAAY;EACnB;EAEQ,YAAY,SAAqC;AACvD,SAAK,UAAU,KAAK,OAAO;AAC3B,SAAK,aAAY;EACnB;EAEO,cAAc,MAAY;AAC/B,SAAK,UAAU,OAAO,IAAI;AAC1B,SAAK,aAAY;EACnB;EAEO,YAAY,OAAe,MAAkC;AAClE,WAAO,GAAG,KAAK,IAAI;EACrB;EAEO,YAAY,OAAY;AAC7B,UAAM,cAAe,MAAM,OAA4B;AACvD,SAAK,UAAU,SAAS,YAAY,KAAI,EAAG,YAAW;AAEtD,QAAI,KAAK,UAAU,WAAW;AAC5B,WAAK,UAAU,UAAU,UAAS;IACpC;EACF;;qCAjGW,4BAAyB;EAAA;yEAAzB,4BAAyB,WAAA,CAAA,CAAA,mBAAA,CAAA,GAAA,WAAA,SAAA,gCAAA,IAAA,KAAA;AAAA,QAAA,KAAA,GAAA;iDAEL,cAAY,CAAA;4CACjB,SAAO,CAAA;;;;;;;;ACjCnC,MAAA,yBAAA,GAAA,OAAA,CAAA,EAA2B,GAAA,QAAA,GAAA,CAAA,EACwE,GAAA,KAAA,CAAA;AACjD,MAAA,iBAAA,GAAA,+NAAA;AAE9C,MAAA,uBAAA;AACA,MAAA,yBAAA,GAAA,kBAAA,CAAA,EAA+B,GAAA,WAAA;AAClB,MAAA,iBAAA,GAAA,QAAA;AAAM,MAAA,uBAAA;AACjB,MAAA,yBAAA,GAAA,SAAA,GAAA,CAAA;AAAgB,MAAA,qBAAA,SAAA,SAAA,0DAAA,QAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,eAAA,sBAAS,IAAA,YAAA,MAAA,CAAmB;MAAA,CAAA;AAA5C,MAAA,uBAAA,EAA2F;AAE7F,MAAA,yBAAA,IAAA,OAAA,CAAA,EAAyD,IAAA,aAAA,CAAA;AAIrD,MAAA,kCAAA,IAAA,CAAA;AACE,MAAA,qBAAA,IAAA,uDAAA,GAAA,GAAA,mBAAA,EAAA,EAAsE,IAAA,gDAAA,GAAA,GAAA,YAAA,EAAA;;AAKxE,MAAA,kCAAA,IAAA,EAAA;AACE,MAAA,qBAAA,IAAA,uDAAA,GAAA,GAAA,mBAAA,EAAA,EAAsE,IAAA,gDAAA,GAAA,GAAA,YAAA,EAAA;;AAKxE,MAAA,kCAAA,IAAA,EAAA;AACE,MAAA,qBAAA,IAAA,uDAAA,GAAA,GAAA,mBAAA,EAAA,EAAsE,IAAA,gDAAA,GAAA,GAAA,YAAA,EAAA;;AAKxE,MAAA,kCAAA,IAAA,EAAA;AACE,MAAA,qBAAA,IAAA,uDAAA,GAAA,GAAA,mBAAA,EAAA,EAAsE,IAAA,gDAAA,GAAA,GAAA,YAAA,EAAA;;AAIxE,MAAA,kCAAA,IAAA,EAAA;AACE,MAAA,qBAAA,IAAA,uDAAA,GAAA,GAAA,mBAAA,EAAA,EAAwE,IAAA,gDAAA,GAAA,GAAA,YAAA,EAAA;;AAO1E,MAAA,qBAAA,IAAA,sDAAA,GAAA,GAAA,kBAAA,EAAA,EAAoF,IAAA,+CAAA,GAAA,GAAA,WAAA,EAAA,EACV,IAAA,+CAAA,GAAA,GAAA,WAAA,EAAA;AAM5E,MAAA,uBAAA,EAAY;AAEd,MAAA,yBAAA,IAAA,OAAA,EAAA;AACE,MAAA,oBAAA,IAAA,iBAAA,EAAA;AACF,MAAA,uBAAA;AACA,MAAA,yBAAA,IAAA,OAAA,EAAA;AACE,MAAA,oBAAA,IAAA,eAAA,EAAA;AACA,MAAA,yBAAA,IAAA,UAAA,EAAA;AAAiD,MAAA,qBAAA,SAAA,SAAA,8DAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,eAAA,sBAAS,IAAA,iBAAA,CAAkB;MAAA,CAAA;AAAE,MAAA,iBAAA,IAAA,KAAA;AAAG,MAAA,uBAAA,EAAS,EACtF,EACD;;;AAlD6B,MAAA,oBAAA,EAAA;AAAA,MAAA,qBAAA,cAAA,IAAA,SAAA,EAAwB,WAAA,IAAA,WAAA;AAkCnB,MAAA,oBAAA,EAAA;AAAA,MAAA,qBAAA,mBAAA,IAAA,gBAAA,EAAmC,yBAAA,IAAA;AACxB,MAAA,oBAAA;AAAA,MAAA,qBAAA,oBAAA,IAAA,gBAAA;AASpB,MAAA,oBAAA,CAAA;AAAA,MAAA,qBAAA,mBAAA,0BAAA,GAAAC,IAAA,CAAA;;oBD1BpB,aAAW,oBAAA,sBAAA,QAAE,cAAc,UAAU,UAAU,UAAU,SAAS,cAAc,kBAAkB,eAAe,eAAe,YAAY,SAAS,WAAW,iBAAiB,cAAc,WAAW,QAAQ,cAAc,cAAc,UAAU,GAAA,QAAA,CAAAC,IAAA,EAAA,CAAA;;;sEAEzP,2BAAyB,CAAA;UANrC;uBACa,qBAAmB,SAGpB,CAAC,aAAa,cAAc,UAAU,UAAU,UAAU,SAAS,cAAc,kBAAkB,eAAe,eAAe,YAAY,SAAS,WAAW,iBAAiB,cAAc,WAAW,QAAQ,cAAc,cAAc,UAAU,GAAC,UAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAA,QAAA,CAAA,owCAAA,EAAA,CAAA;;;;6EAE1P,2BAAyB,EAAA,WAAA,6BAAA,UAAA,0DAAA,YAAA,GAAA,CAAA;AAAA,GAAA;AA2GhC,IAAO,iCAAP,MAAO,gCAA8B;EACjC,qBAAqB,OAAO,WAAW;EAC/C,YAAY,OAAqD,YAAY;EAC7E,UAAU,OAAqC,eAAe;EAEvD,cAAsB;EACtB,aAA2C;IAChD,MAAM;IACN,MAAM;IACN,YAAY;IACZ,UAAU;IACV,iBAAiB;IACjB,QAAQ;IACR,OAAO;;EAGF,cAA4C;EAE5C,iBAA2B,CAAA;EAC3B,mBAA6B,CAAA;EAC7B,kBAAkB;EAEzB,WAAQ;AACN,QAAI,KAAK,SAAS;AAChB,WAAK,cAAc;AACnB,WAAK,cAAc,KAAK;AAExB,YAAM,aAAa,KAAK,mBAAmB,cAAc,KAAK,YAAY,IAAI;AAC9E,UAAI,eAAe,MAAM;AACvB,aAAK,mBAAmB,CAAC,SAAS,EAAE,OAAO,OAAO,KAAK,WAAW,OAAO,CAAC;MAC5E;IAEF,OAAO;AACL,WAAK,cAAc;AACnB,WAAK,cAAc,KAAK;IAC1B;AAEA,SAAK,iBAAiB,KAAK,mBAAmB,eAAe,QAAQ,EAAE,KAAI;EAC7E;EAEO,aAAU;AACf,UAAM,aAAa,KAAK,mBAAmB,cAAc,KAAK,YAAY,IAAI;AAC9E,QAAI,eAAe,MAAM;AAAE;IAAQ;AACnC,SAAK,mBAAmB,CAAC,SAAS,EAAE,OAAO,OAAO,KAAK,WAAW,OAAO,CAAC;AAC1E,SAAK,YAAY,aAAa;EAChC;EAEO,YAAS;AACd,SAAK,UAAU,MAAM,KAAK,WAAW;EACvC;;qCAjDW,iCAA8B;EAAA;yEAA9B,iCAA8B,WAAA,CAAA,CAAA,yBAAA,CAAA,GAAA,OAAA,IAAA,MAAA,IAAA,QAAA,CAAA,CAAA,eAAA,QAAA,GAAA,CAAA,oBAAA,EAAA,GAAA,CAAA,QAAA,eAAA,GAAA,UAAA,GAAA,CAAA,gBAAA,EAAA,GAAA,CAAA,GAAA,aAAA,GAAA,CAAA,GAAA,YAAA,GAAA,CAAA,eAAA,oBAAA,QAAA,gBAAA,YAAA,IAAA,GAAA,iBAAA,SAAA,GAAA,CAAA,GAAA,OAAA,GAAA,CAAA,QAAA,mBAAA,GAAA,iBAAA,SAAA,GAAA,CAAA,eAAA,sBAAA,QAAA,kBAAA,YAAA,IAAA,GAAA,iBAAA,SAAA,GAAA,CAAA,GAAA,SAAA,GAAA,CAAA,QAAA,UAAA,qBAAA,IAAA,SAAA,UAAA,kBAAA,IAAA,GAAA,UAAA,GAAA,CAAA,GAAA,gBAAA,GAAA,CAAA,GAAA,kBAAA,GAAA,cAAA,MAAA,GAAA,CAAA,GAAA,eAAA,GAAA,CAAA,eAAA,6BAAA,QAAA,mBAAA,YAAA,IAAA,GAAA,iBAAA,SAAA,GAAA,CAAA,SAAA,MAAA,GAAA,CAAA,SAAA,QAAA,GAAA,CAAA,SAAA,QAAA,GAAA,CAAA,YAAA,IAAA,QAAA,UAAA,OAAA,KAAA,OAAA,MAAA,QAAA,KAAA,eAAA,6BAAA,QAAA,UAAA,YAAA,IAAA,GAAA,iBAAA,SAAA,GAAA,CAAA,GAAA,cAAA,MAAA,GAAA,CAAA,QAAA,UAAA,qBAAA,IAAA,SAAA,UAAA,sBAAA,IAAA,GAAA,SAAA,GAAA,CAAA,qBAAA,IAAA,QAAA,UAAA,SAAA,UAAA,GAAA,WAAA,GAAA,UAAA,CAAA,GAAA,UAAA,SAAA,wCAAA,IAAA,KAAA;AAAA,QAAA,KAAA,GAAA;;AEzI3C,MAAA,yBAAA,GAAA,MAAA,CAAA;AAAsB,MAAA,iBAAA,CAAA;AAAgB,MAAA,uBAAA;AACtC,MAAA,yBAAA,GAAA,oBAAA,EAAoB,GAAA,QAAA,GAAA,CAAA;AACO,MAAA,qBAAA,YAAA,SAAA,mEAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,eAAA,sBAAY,IAAA,UAAA,CAAW;MAAA,CAAA;AAC9C,MAAA,yBAAA,GAAA,wBAAA,EAAwB,GAAA,UAAA;AAEpB,MAAA,qBAAA,GAAA,uDAAA,GAAA,GAAA,eAAA,CAAA;AACA,MAAA,yBAAA,GAAA,OAAA,CAAA,EAAyB,GAAA,kBAAA,CAAA,EACY,IAAA,WAAA;AACtB,MAAA,iBAAA,IAAA,eAAA;AAAa,MAAA,uBAAA;AACxB,MAAA,yBAAA,IAAA,cAAA,CAAA;AAEE,MAAA,2BAAA,iBAAA,SAAA,6EAAA,QAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,QAAA,6BAAA,IAAA,YAAA,MAAA,MAAA,MAAA,IAAA,YAAA,OAAA;AAAA,eAAA,sBAAA,MAAA;MAAA,CAAA;AAEA,MAAA,qBAAA,iBAAA,SAAA,+EAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,eAAA,sBAAiB,IAAA,WAAA,CAAY;MAAA,CAAA;AAE7B,MAAA,2BAAA,IAAA,gDAAA,GAAA,GAAA,cAAA,GAAA,mCAAA;;AAMF,MAAA,uBAAA,EAAa;AAEf,MAAA,yBAAA,IAAA,gBAAA,CAAA;AAAc,MAAA,2BAAA,iBAAA,SAAA,+EAAA,QAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,QAAA,6BAAA,IAAA,iBAAA,MAAA,MAAA,IAAA,kBAAA;AAAA,eAAA,sBAAA,MAAA;MAAA,CAAA;AACZ,MAAA,iBAAA,IAAA,0BAAA;AACF,MAAA,uBAAA;AACA,MAAA,oBAAA,IAAA,IAAA,EAAK,IAAA,IAAA;AACL,MAAA,yBAAA,IAAA,kBAAA,CAAA,EAAmC,IAAA,WAAA;AACtB,MAAA,iBAAA,IAAA,QAAA;AAAM,MAAA,uBAAA;AACjB,MAAA,yBAAA,IAAA,cAAA,CAAA;AAEE,MAAA,2BAAA,iBAAA,SAAA,6EAAA,QAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,QAAA,6BAAA,IAAA,YAAA,YAAA,MAAA,MAAA,IAAA,YAAA,aAAA;AAAA,eAAA,sBAAA,MAAA;MAAA,CAAA;AAIA,MAAA,2BAAA,IAAA,gDAAA,GAAA,GAAA,cAAA,GAAA,mCAAA;AAOF,MAAA,uBAAA,EAAa,EACE;AAEnB,MAAA,oBAAA,IAAA,aAAA;AACA,MAAA,yBAAA,IAAA,OAAA,EAAA,EAAqB,IAAA,UAAA,EAAA;AAQjB,MAAA,iBAAA,IAAA,QAAA;AACF,MAAA,uBAAA,EAAS,EACL;AAER,MAAA,yBAAA,IAAA,UAAA;AACE,MAAA,qBAAA,IAAA,wDAAA,GAAA,GAAA,eAAA,CAAA;AACA,MAAA,yBAAA,IAAA,OAAA,CAAA,EAAyB,IAAA,QAAA,EAAA;AACM,MAAA,iBAAA,IAAA,aAAA;AAAW,MAAA,uBAAA;AACxC,MAAA,yBAAA,IAAA,OAAA,EAAA,EAAsD,IAAA,OAAA,EAAA,EACzB,IAAA,kBAAA,CAAA,EACU,IAAA,WAAA;AACtB,MAAA,iBAAA,IAAA,OAAA;AAAK,MAAA,uBAAA;AAChB,MAAA,yBAAA,IAAA,cAAA,EAAA;AAEE,MAAA,2BAAA,iBAAA,SAAA,6EAAA,QAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,QAAA,6BAAA,IAAA,YAAA,iBAAA,MAAA,MAAA,IAAA,YAAA,kBAAA;AAAA,eAAA,sBAAA,MAAA;MAAA,CAAA;AAGA,MAAA,yBAAA,IAAA,cAAA,EAAA;AAAyB,MAAA,iBAAA,IAAA,OAAA;AAAK,MAAA,uBAAA;AAC9B,MAAA,yBAAA,IAAA,cAAA,EAAA;AAA2B,MAAA,iBAAA,IAAA,SAAA;AAAO,MAAA,uBAAA;AAClC,MAAA,yBAAA,IAAA,cAAA,EAAA;AAA2B,MAAA,iBAAA,IAAA,SAAA;AAAO,MAAA,uBAAA,EAAa,EACpC,EACE;AAEnB,MAAA,yBAAA,IAAA,OAAA,EAAA,EAA2B,IAAA,kBAAA,CAAA,EACU,IAAA,WAAA;AACtB,MAAA,iBAAA,IAAA,UAAA;AAAQ,MAAA,uBAAA;AACnB,MAAA,yBAAA,IAAA,SAAA,EAAA;AAIE,MAAA,2BAAA,iBAAA,SAAA,wEAAA,QAAA;AAAA,QAAA,wBAAA,GAAA;AAAA,QAAA,6BAAA,IAAA,YAAA,QAAA,MAAA,MAAA,IAAA,YAAA,SAAA;AAAA,eAAA,sBAAA,MAAA;MAAA,CAAA;AAJF,MAAA,uBAAA,EAKW,EACI,EACb;AAER,MAAA,yBAAA,IAAA,KAAA,EAAA;AAA6B,MAAA,iBAAA,IAAA,iQAAA;AAI7B,MAAA,uBAAA;AACA,MAAA,yBAAA,IAAA,IAAA,EAAI,IAAA,IAAA;AACE,MAAA,iBAAA,IAAA,iNAAA;AAGJ,MAAA,uBAAA;AACA,MAAA,yBAAA,IAAA,IAAA;AAAI,MAAA,iBAAA,IAAA,sHAAA;AAEJ,MAAA,uBAAA;AACA,MAAA,yBAAA,IAAA,IAAA;AAAI,MAAA,iBAAA,IAAA,0HAAA;AAEJ,MAAA,uBAAA,EAAK,EACF;AAEP,MAAA,oBAAA,IAAA,aAAA;AACA,MAAA,yBAAA,IAAA,OAAA,EAAA,EAAqB,IAAA,UAAA,EAAA;AAQjB,MAAA,iBAAA,IAAA,QAAA;AACF,MAAA,uBAAA;AACA,MAAA,yBAAA,IAAA,UAAA,EAAA;AAOE,MAAA,iBAAA,IAAA,QAAA;AACF,MAAA,uBAAA,EAAS,EACL,EACG,EACY,EACpB;;;;AAlIa,MAAA,oBAAA;AAAA,MAAA,6BAAA,KAAA,IAAA,aAAA,GAAA;AAWR,MAAA,oBAAA,EAAA;AAAA,MAAA,2BAAA,WAAA,IAAA,YAAA,IAAA;AAIA,MAAA,oBAAA;AAAA,MAAA,qBAAA,sBAAA,IAAA,GAAA,IAAA,gBAAA,IAAA,eAAA,CAAA;AAQU,MAAA,oBAAA,CAAA;AAAA,MAAA,2BAAA,WAAA,IAAA,eAAA;AAQV,MAAA,oBAAA,CAAA;AAAA,MAAA,2BAAA,WAAA,IAAA,YAAA,UAAA;AAIA,MAAA,oBAAA;AAAA,MAAA,qBAAA,IAAA,gBAAA;AAiBF,MAAA,oBAAA,CAAA;AAAA,MAAA,qBAAA,YAAA,CAAA,IAAA,YAAA,IAAA;AAgBM,MAAA,oBAAA,EAAA;AAAA,MAAA,2BAAA,WAAA,IAAA,YAAA,eAAA;AAgBA,MAAA,oBAAA,EAAA;AAAA,MAAA,2BAAA,WAAA,IAAA,YAAA,MAAA;AAuCN,MAAA,oBAAA,EAAA;AAAA,MAAA,qBAAA,YAAA,CAAA,eAAA,KAAA;;oBFYE,gBAAgB,gBAAgB,kBAAkB,aAAW,oBAAA,sBAAA,qBAAA,iBAAA,sBAAA,mBAAA,cAAA,cAAA,SAAA,QAAE,YAAY,SAAS,cAAc,cAAc,UAAU,WAAW,WAAW,aAAa,YAAY,WAAW,gBAAgB,UAAU,oBAAoB,cAAc,GAAA,QAAA,CAAAA,IAAA,EAAA,CAAA;;;sEAEjP,gCAA8B,CAAA;UAN1C;uBACa,2BAAyB,SAG1B,CAAC,gBAAgB,gBAAgB,kBAAkB,aAAa,YAAY,SAAS,cAAc,cAAc,UAAU,WAAW,WAAW,aAAa,YAAY,WAAW,gBAAgB,UAAU,oBAAoB,cAAc,GAAC,UAAA,62JAAA,QAAA,CAAA,owCAAA,EAAA,CAAA;;;;6EAElP,gCAA8B,EAAA,WAAA,kCAAA,UAAA,0DAAA,YAAA,IAAA,CAAA;AAAA,GAAA;","names":["_c0","_c0","_c1"],"x_google_ignoreList":[1,2]}
|