{"version":3,"file":"acorex-components-color-palette.mjs","sources":["../../../../packages/components/color-palette/src/lib/color-palette.class.ts","../../../../packages/components/color-palette/src/lib/color-palette.service.ts","../../../../packages/components/color-palette/src/lib/color-palette-input.component.ts","../../../../packages/components/color-palette/src/lib/color-palette-input.component.html","../../../../packages/components/color-palette/src/lib/color-palette-picker.component.ts","../../../../packages/components/color-palette/src/lib/color-palette-picker.component.html","../../../../packages/components/color-palette/src/lib/color-palette-preview.component.ts","../../../../packages/components/color-palette/src/lib/color-palette-swatches.component.ts","../../../../packages/components/color-palette/src/lib/color-palette.component.ts","../../../../packages/components/color-palette/src/lib/color-palette.component.html","../../../../packages/components/color-palette/src/lib/color-palette.module.ts","../../../../packages/components/color-palette/src/acorex-components-color-palette.ts"],"sourcesContent":["import { AXOptionChangedEvent, AXValueChangedEvent } from '@acorex/cdk/common';\nimport { EventEmitter, Injectable } from '@angular/core';\n\n/**\n * A token that specifies the  display mode of datapager component.\n */\nexport type AXColorPaletteView = 'swatches' | 'gradient' | 'custom';\nexport interface AXColorChangedEvent {\n  color: any;\n  sender: any;\n}\n\n@Injectable()\nexport abstract class AXColorPaletteParentComponent {\n  abstract readonly: boolean;\n  abstract disabled: boolean;\n  abstract get value(): string;\n  abstract onValueChanged: EventEmitter<AXValueChangedEvent<string>>;\n  abstract onOptionChanged: EventEmitter<AXOptionChangedEvent>;\n  abstract commitValue(value: string, u?: boolean);\n}\n\n@Injectable()\nexport abstract class AXColorPaletteChildComponent {}\n\nexport const AXDefaultColorPalette = [\n  { code: '#ffffff' },\n  { code: '#000000' },\n  //500\n  { code: 'rgb(251,44,54)' },\n  { code: 'rgb(255,105,0)' },\n  { code: 'rgb(253,154,0)' },\n  { code: 'rgb(239,177,0)' },\n  { code: 'rgb(124,207,0)' },\n  { code: 'rgb(0,201,81)' },\n  { code: 'rgb(0,188,125)' },\n  { code: 'rgb(0,187,167)' },\n  { code: 'rgb(0,184,219)' },\n  { code: 'rgb(0,166,244)' },\n  { code: 'rgb(43,127,255)' },\n  { code: 'rgb(97,95,255)' },\n  { code: 'rgb(142,81,255)' },\n  { code: 'rgb(173,70,255)' },\n  { code: 'rgb(225,42,251)' },\n  { code: 'rgb(246,51,154)' },\n  { code: 'rgb(255,32,86)' },\n  { code: 'rgb(98,116,142)' },\n  { code: 'rgb(106,114,130)' },\n  { code: 'rgb(113,113,123)' },\n\n  //red\n  { code: 'rgb(254,242,242)' },\n  { code: 'rgb(255,226,226)' },\n  { code: 'rgb(255,201,201)' },\n  { code: 'rgb(255,162,162)' },\n  { code: 'rgb(255,100,103)' },\n  { code: 'rgb(251,44,54)' },\n  { code: 'rgb(231,0,11)' },\n  { code: 'rgb(193,0,7)' },\n  { code: 'rgb(159,7,18)' },\n  { code: 'rgb(130,24,26)' },\n  { code: 'rgb(70,8,9)' },\n\n  //orange\n  { code: 'rgb(255,247,237)' },\n  { code: 'rgb(255,237,212)' },\n  { code: 'rgb(255,214,168)' },\n  { code: 'rgb(255,184,106)' },\n  { code: 'rgb(255,137,4)' },\n  { code: 'rgb(255,105,0)' },\n  { code: 'rgb(245,74,0)' },\n  { code: 'rgb(202,53,0)' },\n  { code: 'rgb(159,45,0)' },\n  { code: 'rgb(126,42,12)' },\n  { code: 'rgb(68,19,6)' },\n\n  //amber\n  { code: 'rgb(255,251,235)' },\n  { code: 'rgb(254,243,198)' },\n  { code: 'rgb(254,230,133)' },\n  { code: 'rgb(255,210,48)' },\n  { code: 'rgb(255,186,0)' },\n  { code: 'rgb(253,154,0)' },\n  { code: 'rgb(225,113,0)' },\n  { code: 'rgb(187,77,0)' },\n  { code: 'rgb(151,60,0)' },\n  { code: 'rgb(123,51,6)' },\n  { code: 'rgb(70,25,1)' },\n\n  //yellow\n  { code: 'rgb(254,252,232)' },\n  { code: 'rgb(254,249,194)' },\n  { code: 'rgb(255,240,133)' },\n  { code: 'rgb(255,223,32)' },\n  { code: 'rgb(252,200,0)' },\n  { code: 'rgb(239,177,0)' },\n  { code: 'rgb(208,135,0)' },\n  { code: 'rgb(166,95,0)' },\n  { code: 'rgb(137,75,0)' },\n  { code: 'rgb(115,62,10)' },\n  { code: 'rgb(67,32,4)' },\n\n  //lime\n  { code: 'rgb(247,254,231)' },\n  { code: 'rgb(236,252,202)' },\n  { code: 'rgb(216,249,153)' },\n  { code: 'rgb(187,244,81)' },\n  { code: 'rgb(154,230,0)' },\n  { code: 'rgb(124,207,0)' },\n  { code: 'rgb(94,165,0)' },\n  { code: 'rgb(73,125,0)' },\n  { code: 'rgb(61,99,0)' },\n  { code: 'rgb(53,83,14)' },\n  { code: 'rgb(25,46,3)' },\n\n  //green\n  { code: 'rgb(240,253,244)' },\n  { code: 'rgb(220,252,231)' },\n  { code: 'rgb(185,248,207)' },\n  { code: 'rgb(123,241,168)' },\n  { code: 'rgb(5,223,114)' },\n  { code: 'rgb(0,201,81)' },\n  { code: 'rgb(0,166,62)' },\n  { code: 'rgb(0,130,54)' },\n  { code: 'rgb(1,102,48)' },\n  { code: 'rgb(13,84,43)' },\n  { code: 'rgb(3,46,21)' },\n\n  //emerald\n  { code: 'rgb(236,253,245)' },\n  { code: 'rgb(208,250,229)' },\n  { code: 'rgb(164,244,207)' },\n  { code: 'rgb(94,233,181)' },\n  { code: 'rgb(0,212,146)' },\n  { code: 'rgb(0,188,125)' },\n  { code: 'rgb(0,153,102)' },\n  { code: 'rgb(0,122,85)' },\n  { code: 'rgb(0,96,69)' },\n  { code: 'rgb(0,79,59)' },\n  { code: 'rgb(0,44,34)' },\n\n  //teal\n  { code: 'rgb(240,253,250)' },\n  { code: 'rgb(203,251,241)' },\n  { code: 'rgb(150,247,228)' },\n  { code: 'rgb(70,236,213)' },\n  { code: 'rgb(0,213,190)' },\n  { code: 'rgb(0,187,167)' },\n  { code: 'rgb(0,150,137)' },\n  { code: 'rgb(0,120,111)' },\n  { code: 'rgb(0,95,90)' },\n  { code: 'rgb(11,79,74)' },\n  { code: 'rgb(2,47,46)' },\n\n  //cyan\n  { code: 'rgb(236,254,255)' },\n  { code: 'rgb(206,250,254)' },\n  { code: 'rgb(162,244,253)' },\n  { code: 'rgb(83,234,253)' },\n  { code: 'rgb(0,211,242)' },\n  { code: 'rgb(0,184,219)' },\n  { code: 'rgb(0,146,184)' },\n  { code: 'rgb(0,117,149)' },\n  { code: 'rgb(0,95,120)' },\n  { code: 'rgb(16,78,100)' },\n  { code: 'rgb(5,51,69)' },\n\n  //sky\n  { code: 'rgb(240,249,255)' },\n  { code: 'rgb(223,242,254)' },\n  { code: 'rgb(184,230,254)' },\n  { code: 'rgb(116,212,255)' },\n  { code: 'rgb(0,188,255)' },\n  { code: 'rgb(0,166,244)' },\n  { code: 'rgb(0,132,209)' },\n  { code: 'rgb(0,105,168)' },\n  { code: 'rgb(0,89,138)' },\n  { code: 'rgb(2,74,112)' },\n  { code: 'rgb(5,47,74)' },\n\n  //blue\n  { code: 'rgb(239,246,255)' },\n  { code: 'rgb(219,234,254)' },\n  { code: 'rgb(190,219,255)' },\n  { code: 'rgb(142,197,255)' },\n  { code: 'rgb(81,162,255)' },\n  { code: 'rgb(43,127,255)' },\n  { code: 'rgb(21,93,252)' },\n  { code: 'rgb(20,71,230)' },\n  { code: 'rgb(25,60,184)' },\n  { code: 'rgb(28,57,142)' },\n  { code: 'rgb(22,36,86)' },\n\n  //indigo\n  { code: 'rgb(238,242,255)' },\n  { code: 'rgb(224,231,255)' },\n  { code: 'rgb(198,210,255)' },\n  { code: 'rgb(163,179,255)' },\n  { code: 'rgb(124,134,255)' },\n  { code: 'rgb(97,95,255)' },\n  { code: 'rgb(79,57,246)' },\n  { code: 'rgb(67,45,215)' },\n  { code: 'rgb(55,42,172)' },\n  { code: 'rgb(49,44,133)' },\n  { code: 'rgb(30,26,77)' },\n\n  //violet\n  { code: 'rgb(245,243,255)' },\n  { code: 'rgb(237,233,254)' },\n  { code: 'rgb(221,214,255)' },\n  { code: 'rgb(196,180,255)' },\n  { code: 'rgb(166,132,255)' },\n  { code: 'rgb(142,81,255)' },\n  { code: 'rgb(127,34,254)' },\n  { code: 'rgb(112,8,231)' },\n  { code: 'rgb(93,14,192)' },\n  { code: 'rgb(77,23,154)' },\n  { code: 'rgb(47,13,104)' },\n\n  //purple\n  { code: 'rgb(250,245,255)' },\n  { code: 'rgb(243,232,255)' },\n  { code: 'rgb(233,212,255)' },\n  { code: 'rgb(218,178,255)' },\n  { code: 'rgb(194,122,255)' },\n  { code: 'rgb(173,70,255)' },\n  { code: 'rgb(152,16,250)' },\n  { code: 'rgb(130,0,219)' },\n  { code: 'rgb(110,17,176)' },\n  { code: 'rgb(89,22,139)' },\n  { code: 'rgb(60,3,102)' },\n\n  //fuchsia\n  { code: 'rgb(253,244,255)' },\n  { code: 'rgb(250,232,255)' },\n  { code: 'rgb(246,207,255)' },\n  { code: 'rgb(244,168,255)' },\n  { code: 'rgb(237,107,255)' },\n  { code: 'rgb(225,42,251)' },\n  { code: 'rgb(200,0,222)' },\n  { code: 'rgb(168,0,183)' },\n  { code: 'rgb(138,1,148)' },\n  { code: 'rgb(114,19,120)' },\n  { code: 'rgb(75,0,79)' },\n\n  //pink\n  { code: 'rgb(253,242,248)' },\n  { code: 'rgb(252,231,243)' },\n  { code: 'rgb(252,206,232)' },\n  { code: 'rgb(253,165,213)' },\n  { code: 'rgb(251,100,182)' },\n  { code: 'rgb(246,51,154)' },\n  { code: 'rgb(230,0,118)' },\n  { code: 'rgb(198,0,92)' },\n  { code: 'rgb(163,0,76)' },\n  { code: 'rgb(134,16,67)' },\n  { code: 'rgb(81,4,36)' },\n\n  //rose\n  { code: 'rgb(255,241,242)' },\n  { code: 'rgb(255,228,230)' },\n  { code: 'rgb(255,204,211)' },\n  { code: 'rgb(255,161,173)' },\n  { code: 'rgb(255,99,126)' },\n  { code: 'rgb(255,32,86)' },\n  { code: 'rgb(236,0,63)' },\n  { code: 'rgb(199,0,54)' },\n  { code: 'rgb(165,0,54)' },\n  { code: 'rgb(139,8,54)' },\n  { code: 'rgb(77,2,24)' },\n\n  //slate\n  { code: 'rgb(248,250,252)' },\n  { code: 'rgb(241,245,249)' },\n  { code: 'rgb(226,232,240)' },\n  { code: 'rgb(202,213,226)' },\n  { code: 'rgb(144,161,185)' },\n  { code: 'rgb(98,116,142)' },\n  { code: 'rgb(69,85,108)' },\n  { code: 'rgb(49,65,88)' },\n  { code: 'rgb(29,41,61)' },\n  { code: 'rgb(15,23,43)' },\n  { code: 'rgb(2,6,24)' },\n\n  //gray\n  { code: 'rgb(249,250,251)' },\n  { code: 'rgb(243,244,246)' },\n  { code: 'rgb(229,231,235)' },\n  { code: 'rgb(209,213,220)' },\n  { code: 'rgb(153,161,175)' },\n  { code: 'rgb(106,114,130)' },\n  { code: 'rgb(74,85,101)' },\n  { code: 'rgb(54,65,83)' },\n  { code: 'rgb(30,41,57)' },\n  { code: 'rgb(16,24,40)' },\n  { code: 'rgb(3,7,18)' },\n\n  //zinc\n  { code: 'rgb(250,250,250)' },\n  { code: 'rgb(244,244,245)' },\n  { code: 'rgb(228,228,231)' },\n  { code: 'rgb(212,212,216)' },\n  { code: 'rgb(159,159,169)' },\n  { code: 'rgb(113,113,123)' },\n  { code: 'rgb(82,82,92)' },\n  { code: 'rgb(63,63,70)' },\n  { code: 'rgb(39,39,42)' },\n  { code: 'rgb(24,24,27)' },\n  { code: 'rgb(9,9,11)' },\n\n  //neutral\n  { code: 'rgb(250,250,250)' },\n  { code: 'rgb(245,245,245)' },\n  { code: 'rgb(229,229,229)' },\n  { code: 'rgb(212,212,212)' },\n  { code: 'rgb(161,161,161)' },\n  { code: 'rgb(115,115,115)' },\n  { code: 'rgb(82,82,82)' },\n  { code: 'rgb(64,64,64)' },\n  { code: 'rgb(38,38,38)' },\n  { code: 'rgb(23,23,23)' },\n  { code: 'rgb(10,10,10)' },\n\n  //stone\n  { code: 'rgb(250,250,249)' },\n  { code: 'rgb(245,245,244)' },\n  { code: 'rgb(231,229,228)' },\n  { code: 'rgb(214,211,209)' },\n  { code: 'rgb(166,160,155)' },\n  { code: 'rgb(121,113,107)' },\n  { code: 'rgb(87,83,77)' },\n  { code: 'rgb(68,64,59)' },\n  { code: 'rgb(41,37,36)' },\n  { code: 'rgb(28,25,23)' },\n  { code: 'rgb(12,10,9)' },\n];\n","import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class AXColorPaletteService {\n  colorMode: 'hex' | 'rgba' = 'hex';\n}\n","import { AXComponent, AXValueChangedEvent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXNumberBoxComponent } from '@acorex/components/number-box';\nimport { AXSelectBoxComponent } from '@acorex/components/select-box';\nimport { AXTextBoxComponent } from '@acorex/components/text-box';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, Component, HostBinding, ViewEncapsulation, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\nimport { AXColorPaletteService } from './color-palette.service';\n\n/**\n * Component for selecting colors from a palette.\n *\n * @category Components\n */\n@Component({\n  selector: 'ax-color-palette-input',\n  templateUrl: './color-palette-input.component.html',\n  styles: `\n    .ax-bold {\n      font-weight: bold;\n    }\n  `,\n  encapsulation: ViewEncapsulation.None,\n\n  providers: [\n    {\n      provide: AXColorPaletteChildComponent,\n      useExisting: AXColorPaletteInputComponent,\n    },\n    AXUnsubscriber,\n    { provide: AXComponent, useExisting: AXColorPaletteInputComponent },\n  ],\n  imports: [AXSelectBoxComponent, FormsModule, AXTextBoxComponent, AXNumberBoxComponent],\n})\nexport class AXColorPaletteInputComponent extends MXBaseComponent implements AfterViewInit {\n  protected _parent = inject<AXColorPaletteParentComponent>(AXColorPaletteParentComponent);\n  private _unsubscriber = inject(AXUnsubscriber);\n\n  private colorService = inject(AXColorPaletteService);\n\n  isValid = true;\n\n  _rgba: { r: number; g: number; b: number; a: number } = {\n    r: 0,\n    g: 0,\n    b: 0,\n    a: 0,\n  };\n\n  _hex = '';\n\n  /**\n   *  @ignore\n   */\n  protected _colorMode: 'hex' | 'rgba' = 'hex';\n\n  /**\n   *  @ignore\n   */\n  protected _hexMaskOptions = '/^#[0-9a-f]{0,6}[0-9a-f]{0,2}$/i';\n\n  /**\n   *  @ignore\n   */\n  constructor() {\n    super();\n    const _parent = this._parent;\n    const _unsubscriber = this._unsubscriber;\n\n    _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n      this.applyParent(e.isUserInteraction);\n    });\n    _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n      this.cdr.markForCheck();\n    });\n  }\n\n  /**\n   *  @ignore\n   */\n  private applyParent(u = false) {\n    const value = this._parent.value;\n    if (!value) {\n      this._hex = '';\n      this._rgba = {\n        r: null,\n        g: null,\n        b: null,\n        a: null,\n      };\n    } else {\n      if (this._colorMode == 'rgba') {\n        Object.assign(this._rgba, AXColorUtil.to(value, 'rgba'));\n      }\n      if (this._colorMode == 'hex') {\n        this._hex = AXColorUtil.toString(value, 'hex');\n      }\n    }\n    this.checkValid();\n    this.cdr.detectChanges();\n  }\n\n  /**\n   *  @ignore\n   */\n  ngAfterViewInit() {\n    this.applyParent();\n  }\n\n  /**\n   *  @ignore\n   */\n  protected _handleChangeInputMode() {\n    this.colorService.colorMode = this._colorMode;\n    this.applyParent(true);\n  }\n\n  /**\n   *  @ignore\n   */\n  protected _handleRGBAValueChanged(e: AXValueChangedEvent<number>) {\n    if (e.isUserInteraction) {\n      this._rgba[e.name] = e.value;\n      const { r, g, b, a } = this._rgba;\n      const _color = `rgba(${r},${g},${b},${a})`;\n      this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);\n    }\n  }\n\n  /**\n   *  @ignore\n   */\n  protected _handleHEXAValueChanged(e: AXValueChangedEvent<string>) {\n    if (e.isUserInteraction && e.value?.trim() != this._hex?.trim()) {\n      this._parent.commitValue(e.value, e.isUserInteraction);\n    }\n  }\n\n  /**\n   *  @ignore\n   */\n  private checkValid() {\n    this.isValid = AXColorUtil.isValid(this._hex);\n  }\n\n  /**\n   *  @ignore\n   */\n  @HostBinding('class')\n  private get __hostClass(): string {\n    return `ax-color-palette-input`;\n  }\n}\n","<div class=\"palette-inputs ax-sm\">\n  <div class=\"select-box-container\">\n    <ax-select-box\n      [dataSource]=\"['hex', 'rgba']\"\n      [(ngModel)]=\"_colorMode\"\n      (ngModelChange)=\"_handleChangeInputMode()\"\n      [disabled]=\"_parent.disabled\"\n    >\n    </ax-select-box>\n  </div>\n  @switch (_colorMode) {\n    @case ('hex') {\n      <div>\n        <ax-text-box\n          [ngModel]=\"_hex\"\n          [disabled]=\"_parent.disabled\"\n          [readonly]=\"_parent.readonly\"\n          [state]=\"isValid ? 'clear' : 'error'\"\n          (onValueChanged)=\"_handleHEXAValueChanged($event)\"\n        >\n        </ax-text-box>\n      </div>\n    }\n    @case ('rgba') {\n      <div>\n        <ax-number-box\n          name=\"r\"\n          [minValue]=\"0\"\n          [maxValue]=\"255\"\n          [ngModel]=\"_rgba.r\"\n          [showSpinButtons]=\"false\"\n          [disabled]=\"_parent.disabled\"\n          [readonly]=\"_parent.readonly\"\n          (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n        >\n        </ax-number-box>\n      </div>\n      <div>\n        <ax-number-box\n          name=\"g\"\n          [minValue]=\"0\"\n          [maxValue]=\"255\"\n          [ngModel]=\"_rgba.g\"\n          [showSpinButtons]=\"false\"\n          [disabled]=\"_parent.disabled\"\n          [readonly]=\"_parent.readonly\"\n          (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n        >\n        </ax-number-box>\n      </div>\n      <div>\n        <ax-number-box\n          name=\"b\"\n          [minValue]=\"0\"\n          [maxValue]=\"255\"\n          [ngModel]=\"_rgba.b\"\n          [showSpinButtons]=\"false\"\n          [disabled]=\"_parent.disabled\"\n          [readonly]=\"_parent.readonly\"\n          (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n        >\n        </ax-number-box>\n      </div>\n      <div>\n        <ax-number-box\n          name=\"a\"\n          [minValue]=\"0\"\n          [maxValue]=\"1\"\n          [ngModel]=\"_rgba.a\"\n          [decimals]=\"2\"\n          [step]=\"0.1\"\n          [disabled]=\"_parent.disabled\"\n          [readonly]=\"_parent.readonly\"\n          [showSpinButtons]=\"false\"\n          (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n        >\n        </ax-number-box>\n      </div>\n    }\n  }\n</div>\n","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXRangeSliderComponent } from '@acorex/components/range-slider';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n  Component,\n  ElementRef,\n  HostBinding,\n  inject,\n  NgZone,\n  OnDestroy,\n  PLATFORM_ID,\n  Renderer2,\n  signal,\n  viewChild,\n  ViewEncapsulation,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\nimport { AXColorPaletteService } from './color-palette.service';\n\n/**\n * Component for picking colors from a color palette.\n *\n * @category Components\n */\n@Component({\n  selector: 'ax-color-palette-picker',\n  templateUrl: './color-palette-picker.component.html',\n  encapsulation: ViewEncapsulation.None,\n\n  providers: [\n    {\n      provide: AXColorPaletteChildComponent,\n      useExisting: AXColorPalettePickerComponent,\n    },\n    AXUnsubscriber,\n    { provide: AXComponent, useExisting: AXColorPalettePickerComponent },\n  ],\n  imports: [AXRangeSliderComponent, FormsModule],\n})\nexport class AXColorPalettePickerComponent extends MXBaseComponent implements OnDestroy {\n  protected _parent = inject<AXColorPaletteParentComponent>(AXColorPaletteParentComponent);\n  private platformId = inject(PLATFORM_ID);\n  private _unsubscriber = inject(AXUnsubscriber);\n  private colorService = inject(AXColorPaletteService);\n  private render = inject(Renderer2);\n  private zone = inject(NgZone);\n  _rgba: { r: number; g: number; b: number; a: number } = {\n    r: 0,\n    g: 0,\n    b: 0,\n    a: 0,\n  };\n\n  private circle = viewChild<ElementRef<HTMLDivElement>>('circle');\n\n  private changingColor = signal(false);\n\n  /**\n   *  @ignore\n   */\n  protected _gradient = 0;\n\n  /**\n   *  @ignore\n   */\n  protected _bgColor = '#F00';\n  protected colorBoxGradientBG = signal('');\n  protected colorBoxTransparentColor = { r: 0, g: 0, b: 0, a: 0 };\n  protected sample = viewChild<ElementRef<HTMLDivElement>>('sample');\n\n  /**\n   *  @ignore\n   */\n  private readonly _gradientColors: any[] = [\n    { color: 'rgb(255, 0, 0)', pos: 0 },\n    { color: 'rgb(255, 255, 0)', pos: 0.17 },\n    { color: 'rgb(0, 255, 0)', pos: 0.33 },\n    { color: 'rgb(0, 255, 255)', pos: 0.5 },\n    { color: 'rgb(0, 0, 255)', pos: 0.67 },\n    { color: 'rgb(255, 0, 255)', pos: 0.83 },\n    { color: 'rgb(255, 0, 0)', pos: 1 },\n  ];\n\n  /**\n   *  @ignore\n   */\n  private readonly _gradients = AXColorUtil.gradient(this._gradientColors);\n\n  /**\n   *  @ignore\n   */\n  private readonly _colors = this._gradients.rgb(100);\n\n  /**\n   *  @ignore\n   */\n  // protected dragPosition = { x: 0, y: 0 };\n\n  private onPointerMoveListenerFn = () => undefined;\n  private onPointerUpListenerFn = () => undefined;\n\n  /**\n   *  @ignore\n   */\n  constructor() {\n    super();\n    const _parent = this._parent;\n    const _unsubscriber = this._unsubscriber;\n\n    _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n      Object.assign(this.colorBoxTransparentColor, AXColorUtil.to(e.value, 'rgba'));\n      const sampleElement = this.sample()?.nativeElement;\n      if (sampleElement) {\n        sampleElement.style.backgroundColor = AXColorUtil.toString(e.value, 'rgba');\n      }\n      this.parentColorChanged();\n    });\n    _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe(() => {\n      this.cdr.markForCheck();\n    });\n  }\n\n  ngOnDestroy(): void {\n    this.onPointerMoveListenerFn();\n    this.onPointerUpListenerFn();\n  }\n\n  /**\n   *  @ignore\n   */\n  private setHSV() {\n    const hsv = AXColorUtil.to(this._rgba, 'hsva') as any;\n    const sortedH = this._colors.map((c) => c.toHsv().h);\n    this._gradient = sortedH.findIndex((c) => {\n      return Math.round(c) >= Math.round(hsv.h);\n    });\n    this._bgColor = AXColorUtil.toString({ h: hsv.h, s: 1, v: 1, a: this._rgba.a }, 'rgba');\n    const rgbaColor = this._bgColor.match(/\\d+/g);\n    this.colorBoxGradientBG.set(rgbaColor[0] + ',' + rgbaColor[1] + ',' + rgbaColor[2]);\n    this.setPointerByPercent(hsv.s * 100, hsv.v * 100);\n  }\n\n  /**\n   * Synchronizes internal RGBA and UI state with the parent palette value.\n   *\n   * Called when the parent emits onValueChanged. Updates local RGBA from the parent\n   * value, recalculates gradient and pointer when the user is not actively changing\n   * the color, and requests change detection.\n   *\n   * @returns void\n   */\n  parentColorChanged(): void {\n    const color = this._parent.value;\n    if (!color) {\n      this._rgba = {\n        r: 0,\n        g: 0,\n        b: 0,\n        a: 0,\n      };\n    } else {\n      if (!AXColorUtil.equal(color, this._rgba)) {\n        Object.assign(this._rgba, AXColorUtil.to(color, 'rgba'));\n      }\n    }\n    if (!this.changingColor()) {\n      this.setHSV();\n    }\n    this.cdr.detectChanges();\n  }\n\n  /**\n   *  @ignore\n   */\n  protected _handleAlphaChanged(e: any) {\n    if (e != this._rgba.a) {\n      const { r, g, b } = this._rgba;\n      const _color = `rgba(${r},${g},${b},${e})`;\n      this._parent.commitValue(AXColorUtil.toString(_color, this.colorService.colorMode), true);\n    }\n  }\n\n  /**\n   *  @ignore\n   */\n  protected _handleGradientChanged(e: any) {\n    if (e != this._gradient) {\n      const { s, v } = AXColorUtil.to(this._rgba, 'hsva') as any;\n      const { h } = this._colors[e as number].toHsv();\n      this._parent.commitValue(AXColorUtil.toString({ h, s, v, a: this._rgba.a }, this.colorService.colorMode), true);\n      this._bgColor = AXColorUtil.toString({ h, s: 1, v: 1, a: this._rgba.a }, 'rgba');\n      const rgbaColor = this._bgColor.match(/\\d+/g);\n      this.colorBoxGradientBG.set(rgbaColor[0] + ',' + rgbaColor[1] + ',' + rgbaColor[2]);\n    }\n  }\n\n  private getParentRect(circleElement: HTMLElement): DOMRect | null {\n    const parent = circleElement.parentElement;\n    if (!parent || typeof parent.getBoundingClientRect !== 'function') {\n      return null;\n    }\n    return parent.getBoundingClientRect();\n  }\n\n  /**\n   *  @ignore\n   */\n  private setColorByXY(x: number, y: number) {\n    if (!isPlatformBrowser(this.platformId)) {\n      return;\n    }\n\n    const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n    if (!surface) {\n      return;\n    }\n\n    const sb = surface.getBoundingClientRect();\n    //\n    const { h, a } = AXColorUtil.to(this._bgColor, 'hsva') as any;\n    const hsva = {\n      h,\n      s: x / sb.width,\n      v: (sb.height - y) / sb.height,\n      a,\n    };\n\n    this._parent.commitValue(AXColorUtil.toString(hsva, this.colorService.colorMode), true);\n    const circleElement = this.circle()?.nativeElement;\n    if (!circleElement) {\n      return;\n    }\n\n    const parentStats = this.getParentRect(circleElement);\n    if (!parentStats) {\n      return;\n    }\n\n    this.setPointerByPercent((x / parentStats.width) * 100, 100 - (y / parentStats.height) * 100);\n  }\n\n  /**\n   *  @ignore\n   */\n  private setPointerByPercent(x: number, y: number) {\n    if (!isPlatformBrowser(this.platformId)) {\n      return;\n    }\n\n    const circleElement = this.circle()?.nativeElement;\n    if (!circleElement) {\n      return;\n    }\n\n    const parentStats = this.getParentRect(circleElement);\n    if (!parentStats) {\n      return;\n    }\n\n    const circleHeight = circleElement.offsetHeight / 2;\n    const circleWidth = circleElement.offsetWidth / 2;\n\n    const top = parentStats.height - (y * parentStats.height) / 100 - circleHeight;\n    const left = (x * parentStats.width) / 100 - circleWidth;\n\n    circleElement.style.top = `${top}px`;\n    circleElement.style.left = `${left}px`;\n  }\n\n  protected handleMove(event: PointerEvent) {\n    if (!this.changingColor()) return;\n    event.preventDefault();\n    event.stopPropagation();\n    this.setColor(event.clientX, event.clientY);\n  }\n\n  protected handleDown(event: PointerEvent) {\n    if (this._parent.disabled || this._parent.readonly) return;\n    event.preventDefault();\n    event.stopPropagation();\n    this.setColor(event.clientX, event.clientY);\n    this.changingColor.set(true);\n    this.onPointerMoveListenerFn = this.render.listen('document', 'pointermove', (e) => this.handleMove(e));\n    this.onPointerUpListenerFn = this.render.listen('document', 'pointerup', () => this.handleUp());\n  }\n\n  protected handleUp() {\n    this.changingColor.set(false);\n    this.onPointerMoveListenerFn();\n    this.onPointerUpListenerFn();\n  }\n\n  private setColor(clientX: number, clientY: number) {\n    if (!isPlatformBrowser(this.platformId)) {\n      return;\n    }\n\n    const circleElement = this.circle()?.nativeElement;\n    if (!circleElement) {\n      return;\n    }\n\n    const parentStats = this.getParentRect(circleElement);\n    if (!parentStats) {\n      return;\n    }\n\n    const x = Math.max(0, Math.min(parentStats.width, clientX - parentStats.left));\n    const y = Math.max(0, Math.min(parentStats.height, clientY - parentStats.top));\n\n    this.setColorByXY(x, y);\n  }\n\n  /**\n   *  @ignore\n   */\n  @HostBinding('class')\n  private get __hostClass(): string {\n    return `ax-color-palette-picker`;\n  }\n}\n","<div class=\"ax-color-box-overlay-trans\">\n  <div class=\"ax-color-box-overlay\" [style.background-color]=\"_bgColor\" (pointerdown)=\"handleDown($event)\">\n    <div class=\"ax-color-box-overlay-g1\"></div>\n    <div class=\"ax-color-box-overlay-g2\"></div>\n    <div #circle class=\"ax-color-box-pointer\"></div>\n  </div>\n</div>\n<div class=\"ax-pickers-container\">\n  <div class=\"ax-slider-container\">\n    <ax-range-slider\n      [min]=\"0\"\n      [max]=\"99\"\n      [mode]=\"'single'\"\n      [ngModel]=\"_gradient\"\n      class=\"ax-color-box-gradient\"\n      [disabled]=\"_parent.disabled\"\n      [readonly]=\"_parent.readonly\"\n      (ngModelChange)=\"_handleGradientChanged($event)\"\n      [style.--ax-comp-range-slider-color]=\"colorBoxGradientBG()\"\n    >\n    </ax-range-slider>\n    <ax-range-slider\n      [min]=\"0\"\n      [max]=\"1\"\n      [step]=\"0.01\"\n      [ngModel]=\"_rgba.a\"\n      [disabled]=\"_parent.disabled\"\n      [readonly]=\"_parent.readonly\"\n      class=\"ax-color-box-transparent\"\n      (ngModelChange)=\"_handleAlphaChanged($event)\"\n      [style.--ax-comp-range-slider-color]=\"\n        colorBoxTransparentColor.r +\n        ',' +\n        colorBoxTransparentColor.g +\n        ',' +\n        colorBoxTransparentColor.b +\n        ',' +\n        colorBoxTransparentColor.a\n      \"\n      [style.--ax-comp-color-palette-transparent-color]=\"\n        'rgba(' + colorBoxTransparentColor.r + ',' + colorBoxTransparentColor.g + ',' + colorBoxTransparentColor.b + ')'\n      \"\n    >\n    </ax-range-slider>\n  </div>\n  <div class=\"ax-color-sample\" #sample></div>\n</div>\n","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, Component, HostBinding, NgZone, ViewEncapsulation, inject } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component that displays a preview of the selected color in the palette.\n *\n * @category Components\n */\n@Component({\n  selector: 'ax-color-palette-preview',\n  template: ` <div class=\"palette-preview-overlay\" [class.ax-state-disabled]=\"_parent.disabled\"></div>`,\n  encapsulation: ViewEncapsulation.None,\n\n  providers: [\n    {\n      provide: AXColorPaletteChildComponent,\n      useExisting: AXColorPalettePreviewComponent,\n    },\n    AXUnsubscriber,\n    { provide: AXComponent, useExisting: AXColorPalettePreviewComponent },\n  ],\n})\nexport class AXColorPalettePreviewComponent extends MXBaseComponent implements AfterViewInit {\n  _parent = inject<AXColorPaletteParentComponent>(AXColorPaletteParentComponent);\n  private _zone = inject(NgZone);\n  private _unsubscriber = inject(AXUnsubscriber);\n\n  /**\n   *  @ignore\n   */\n  constructor() {\n    super();\n    const _parent = this._parent;\n    const _zone = this._zone;\n    const _unsubscriber = this._unsubscriber;\n\n    _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n      _zone.runOutsideAngular(this.applyParent.bind(this));\n    });\n  }\n\n  /**\n   *  @ignore\n   */\n  ngAfterViewInit() {\n    this.applyParent();\n  }\n\n  /**\n   *  @ignore\n   */\n  private applyParent() {\n    const inner = this.getHostElement().firstElementChild as HTMLDivElement;\n    inner.style.backgroundColor = this._parent.value;\n    inner.innerText = AXColorUtil.toString(this._parent.value);\n    const color = AXColorUtil.toString(this._parent.value, 'hex');\n    const ratio = AXColorUtil.contrastToWhite(color);\n    this.getHostElement().style.color = !(ratio > 2.0) ? '#000' : '#fff';\n  }\n\n  /**\n   *  @ignore\n   */\n  @HostBinding('class')\n  private get __hostClass(): string {\n    return `ax-color-palette-preview`;\n  }\n}\n","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, Component, Input, OnInit, ViewEncapsulation, inject } from '@angular/core';\nimport { distinctUntilChanged } from 'rxjs/operators';\nimport {\n  AXColorPaletteChildComponent,\n  AXColorPaletteParentComponent,\n  AXDefaultColorPalette,\n} from './color-palette.class';\n\n/**\n * Displays color swatches or favorites, allowing color selection.\n *\n * @category Components\n */\n@Component({\n  selector: 'ax-color-palette-swatches, ax-color-palette-favorite',\n  template: `\n    @for (color of colors; track $index) {\n      <div\n        [style.background-color]=\"color.code\"\n        [attr.title]=\"color.code\"\n        [class.ax-state-selected]=\"color.code === _selected\"\n        (click)=\"_handleClick($event, color)\"\n      ></div>\n    }\n  `,\n  encapsulation: ViewEncapsulation.None,\n\n  providers: [\n    {\n      provide: AXColorPaletteChildComponent,\n      useExisting: AXColorPaletteSwatchesComponent,\n    },\n    AXUnsubscriber,\n    { provide: AXComponent, useExisting: AXColorPaletteSwatchesComponent },\n  ],\n})\nexport class AXColorPaletteSwatchesComponent extends MXBaseComponent implements OnInit, AfterViewInit {\n  _parent = inject<AXColorPaletteParentComponent>(AXColorPaletteParentComponent);\n  private _unsubscriber = inject(AXUnsubscriber);\n\n  /**\n   *  @ignore\n   */\n  protected _selected: string;\n\n  /**\n   * List of color objects for display, each with a `code` property.\n   * @defaultValue []\n   */\n  @Input()\n  colors: { code: string }[] = [];\n\n  /**\n   *  @ignore\n   */\n  constructor() {\n    super();\n    const _parent = this._parent;\n    const _unsubscriber = this._unsubscriber;\n\n    _parent.onValueChanged\n      .pipe(_unsubscriber.takeUntilDestroy)\n      .pipe(distinctUntilChanged())\n      .subscribe(() => {\n        this.applyParent();\n      });\n  }\n\n  /**\n   *  @ignore\n   */\n  private applyParent() {\n    this._selected = AXColorUtil.toString(this._parent.value, 'hex').toLowerCase();\n    this.cdr.detectChanges();\n  }\n\n  /**\n   *  @ignore\n   */\n  override ngOnInit(): void {\n    super.ngOnInit();\n    const isFav = this.getHostElement().tagName.toLowerCase() == 'ax-color-palette-favorite';\n    if (!isFav && this.colors.length == 0) {\n      this.colors = AXDefaultColorPalette.map((c) => this._format(c));\n    }\n  }\n\n  /**\n   *  @ignore\n   */\n  ngAfterViewInit() {\n    this.applyParent();\n  }\n\n  /**\n   *  @ignore\n   */\n  protected _handleClick(e: MouseEvent, color) {\n    if (this._parent.disabled || this._parent.readonly) return;\n    this._parent.commitValue(color.code, true);\n  }\n\n  /**\n   *  @ignore\n   */\n  private _format(color: { code: string }): { code: string } {\n    return {\n      code: color.code.toLowerCase(),\n    };\n  }\n}\n","import { AXComponent, AXValuableComponent, MXValueComponent } from '@acorex/cdk/common';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { Component, ContentChildren, HostBinding, QueryList, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXColorPaletteInputComponent } from './color-palette-input.component';\nimport { AXColorPalettePickerComponent } from './color-palette-picker.component';\nimport { AXColorPalettePreviewComponent } from './color-palette-preview.component';\nimport { AXColorPaletteSwatchesComponent } from './color-palette-swatches.component';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\nimport { AXColorPaletteService } from './color-palette.service';\n\n/**\n * A color palette component that allows for color selection and interaction.\n *\n * @category Components\n */\n@Component({\n  selector: 'ax-color-palette',\n  templateUrl: './color-palette.component.html',\n  styleUrls: ['./color-palette.component.css'],\n  inputs: ['disabled', 'tabIndex', 'readonly', 'value', 'state', 'name'],\n  outputs: ['onBlur', 'onFocus', 'valueChange', 'stateChange', 'onValueChanged', 'readonlyChange', 'disabledChange'],\n  encapsulation: ViewEncapsulation.None,\n\n  providers: [\n    { provide: AXValuableComponent, useExisting: AXColorPaletteComponent },\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => AXColorPaletteComponent),\n      multi: true,\n    },\n    {\n      provide: AXColorPaletteParentComponent,\n      useExisting: AXColorPaletteComponent,\n    },\n    { provide: AXComponent, useExisting: AXColorPaletteComponent },\n    AXColorPaletteService,\n  ],\n  imports: [\n    NgTemplateOutlet,\n    AXColorPalettePreviewComponent,\n    AXColorPalettePickerComponent,\n    AXColorPaletteSwatchesComponent,\n    AXColorPaletteInputComponent,\n  ],\n})\nexport class AXColorPaletteComponent extends MXValueComponent<string> {\n  @ContentChildren(AXColorPaletteChildComponent)\n  _children: QueryList<AXColorPaletteChildComponent>;\n\n  /**\n   *  @ignore\n   */\n  @HostBinding('class.ax-state-disabled')\n  private get __hostDisabled() {\n    return this.disabled;\n  }\n}\n","<ng-content select=\"ax-header\"></ng-content>\n\n@if (_children?.length) {\n  <ng-container [ngTemplateOutlet]=\"custom\"></ng-container>\n} @else {\n  <ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n}\n<ng-template #custom>\n  <ng-content select=\"ax-color-palette-preview\"></ng-content>\n  <ng-content select=\"ax-color-palette-picker\"></ng-content>\n  <ng-content select=\"ax-color-palette-swatches\"></ng-content>\n  <ng-content select=\"ax-color-palette-favorite\"></ng-content>\n  <ng-content select=\"ax-color-palette-input\"></ng-content>\n</ng-template>\n<ng-template #default>\n  <ax-color-palette-preview></ax-color-palette-preview>\n  <ax-color-palette-picker></ax-color-palette-picker>\n  <ax-color-palette-swatches></ax-color-palette-swatches>\n  <ax-color-palette-input></ax-color-palette-input>\n</ng-template>\n<ng-content select=\"ax-footer\"></ng-content>\n","import { NgModule } from '@angular/core';\nimport { AXColorPaletteInputComponent } from './color-palette-input.component';\nimport { AXColorPalettePickerComponent } from './color-palette-picker.component';\nimport { AXColorPalettePreviewComponent } from './color-palette-preview.component';\nimport { AXColorPaletteSwatchesComponent } from './color-palette-swatches.component';\nimport { AXColorPaletteComponent } from './color-palette.component';\n\n@NgModule({\n  imports: [\n    AXColorPaletteComponent,\n    AXColorPalettePreviewComponent,\n    AXColorPaletteSwatchesComponent,\n    AXColorPaletteInputComponent,\n    AXColorPalettePickerComponent,\n  ],\n  exports: [\n    AXColorPaletteComponent,\n    AXColorPalettePreviewComponent,\n    AXColorPaletteSwatchesComponent,\n    AXColorPaletteInputComponent,\n    AXColorPalettePickerComponent,\n  ],\n})\nexport class AXColorPaletteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;MAasB,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA7B,6BAA6B,EAAA,CAAA,CAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADlD;;MAWqB,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA5B,4BAA4B,EAAA,CAAA,CAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBADjD;;AAGM,MAAM,qBAAqB,GAAG;IACnC,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;;IAG5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;IACxB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,aAAa,EAAE;;IAGvB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;IACxB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;IACxB,EAAE,IAAI,EAAE,cAAc,EAAE;IACxB,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,cAAc,EAAE;IACxB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;;IAGzB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;;IAGzB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;;IAG1B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;;IAGzB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;;IAGxB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC3B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,aAAa,EAAE;;IAGvB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,gBAAgB,EAAE;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,aAAa,EAAE;;IAGvB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,aAAa,EAAE;;IAGvB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;;IAGzB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC5B,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,eAAe,EAAE;IACzB,EAAE,IAAI,EAAE,cAAc,EAAE;;;MC3Ub,qBAAqB,CAAA;AADlC,IAAA,WAAA,GAAA;QAEE,IAAA,CAAA,SAAS,GAAmB,KAAK;AAClC,IAAA;8GAFY,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAArB,qBAAqB,EAAA,CAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBADjC;;;ACQD;;;;AAIG;AAqBG,MAAO,4BAA6B,SAAQ,eAAe,CAAA;AA2B/D;;AAEG;AACH,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AA9BC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAgC,6BAA6B,CAAC;AAChF,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC;AAEtC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAEpD,IAAA,CAAA,OAAO,GAAG,IAAI;AAEd,QAAA,IAAA,CAAA,KAAK,GAAmD;AACtD,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;SACL;QAED,IAAA,CAAA,IAAI,GAAG,EAAE;AAET;;AAEG;QACO,IAAA,CAAA,UAAU,GAAmB,KAAK;AAE5C;;AAEG;QACO,IAAA,CAAA,eAAe,GAAG,kCAAkC;AAO5D,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;AAC5B,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa;AAExC,QAAA,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC1E,YAAA,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC;AACvC,QAAA,CAAC,CAAC;AACF,QAAA,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC3E,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACzB,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;IACK,WAAW,CAAC,CAAC,GAAG,KAAK,EAAA;AAC3B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK;QAChC,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,IAAI,CAAC,IAAI,GAAG,EAAE;YACd,IAAI,CAAC,KAAK,GAAG;AACX,gBAAA,CAAC,EAAE,IAAI;AACP,gBAAA,CAAC,EAAE,IAAI;AACP,gBAAA,CAAC,EAAE,IAAI;AACP,gBAAA,CAAC,EAAE,IAAI;aACR;QACH;aAAO;AACL,YAAA,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,EAAE;AAC7B,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC1D;AACA,YAAA,IAAI,IAAI,CAAC,UAAU,IAAI,KAAK,EAAE;gBAC5B,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;YAChD;QACF;QACA,IAAI,CAAC,UAAU,EAAE;AACjB,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;IAC1B;AAEA;;AAEG;IACH,eAAe,GAAA;QACb,IAAI,CAAC,WAAW,EAAE;IACpB;AAEA;;AAEG;IACO,sBAAsB,GAAA;QAC9B,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU;AAC7C,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACxB;AAEA;;AAEG;AACO,IAAA,uBAAuB,CAAC,CAA8B,EAAA;AAC9D,QAAA,IAAI,CAAC,CAAC,iBAAiB,EAAE;YACvB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK;AAC5B,YAAA,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK;YACjC,MAAM,MAAM,GAAG,CAAA,KAAA,EAAQ,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,CAAG;AAC1C,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC;QACrF;IACF;AAEA;;AAEG;AACO,IAAA,uBAAuB,CAAC,CAA8B,EAAA;AAC9D,QAAA,IAAI,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;AAC/D,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,CAAC;QACxD;IACF;AAEA;;AAEG;IACK,UAAU,GAAA;QAChB,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IAC/C;AAEA;;AAEG;AACH,IAAA,IACY,WAAW,GAAA;AACrB,QAAA,OAAO,wBAAwB;IACjC;8GArHW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAV5B;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,4BAA4B;AAC1C,aAAA;YACD,cAAc;AACd,YAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,4BAA4B,EAAE;SACpE,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChCH,uxEAiFA,qFDhDY,oBAAoB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,aAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,eAAA,EAAA,cAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,SAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kBAAkB,kaAAE,oBAAoB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,aAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAE1E,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBApBxC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,EAAA,aAAA,EAOnB,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAE1B;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAAA,4BAA8B;AAC1C,yBAAA;wBACD,cAAc;AACd,wBAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,8BAA8B,EAAE;qBACpE,EAAA,OAAA,EACQ,CAAC,oBAAoB,EAAE,WAAW,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,EAAA,QAAA,EAAA,uxEAAA,EAAA,MAAA,EAAA,CAAA,6BAAA,CAAA,EAAA;;sBAoHrF,WAAW;uBAAC,OAAO;;;AEhItB;;;;AAIG;AAgBG,MAAO,6BAA8B,SAAQ,eAAe,CAAA;AA8DhE;;AAEG;AACH,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AAjEC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAgC,6BAA6B,CAAC;AAChF,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;AAChC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,qBAAqB,CAAC;AAC5C,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;AAC1B,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AAC7B,QAAA,IAAA,CAAA,KAAK,GAAmD;AACtD,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;SACL;QAEO,IAAA,CAAA,MAAM,GAAG,SAAS,CAA6B,QAAQ;mFAAC;QAExD,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,KAAK;0FAAC;AAErC;;AAEG;QACO,IAAA,CAAA,SAAS,GAAG,CAAC;AAEvB;;AAEG;QACO,IAAA,CAAA,QAAQ,GAAG,MAAM;QACjB,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,EAAE;+FAAC;AAC/B,QAAA,IAAA,CAAA,wBAAwB,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QACrD,IAAA,CAAA,MAAM,GAAG,SAAS,CAA6B,QAAQ;mFAAC;AAElE;;AAEG;AACc,QAAA,IAAA,CAAA,eAAe,GAAU;AACxC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,EAAE;AACnC,YAAA,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,IAAI,EAAE;AACxC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,IAAI,EAAE;AACtC,YAAA,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAAE;AACvC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,IAAI,EAAE;AACtC,YAAA,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,IAAI,EAAE;AACxC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,EAAE;SACpC;AAED;;AAEG;QACc,IAAA,CAAA,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;AAExE;;AAEG;QACc,IAAA,CAAA,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;AAEnD;;AAEG;;AAGK,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,SAAS;AACzC,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,SAAS;AAO7C,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;AAC5B,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa;AAExC,QAAA,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC1E,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC7E,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;YAClD,IAAI,aAAa,EAAE;AACjB,gBAAA,aAAa,CAAC,KAAK,CAAC,eAAe,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC;YAC7E;YACA,IAAI,CAAC,kBAAkB,EAAE;AAC3B,QAAA,CAAC,CAAC;AACF,QAAA,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,MAAK;AAC1E,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACzB,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;QACT,IAAI,CAAC,uBAAuB,EAAE;QAC9B,IAAI,CAAC,qBAAqB,EAAE;IAC9B;AAEA;;AAEG;IACK,MAAM,GAAA;AACZ,QAAA,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAQ;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AACvC,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3C,QAAA,CAAC,CAAC;AACF,QAAA,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC;QACvF,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACnF,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IACpD;AAEA;;;;;;;;AAQG;IACH,kBAAkB,GAAA;AAChB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK;QAChC,IAAI,CAAC,KAAK,EAAE;YACV,IAAI,CAAC,KAAK,GAAG;AACX,gBAAA,CAAC,EAAE,CAAC;AACJ,gBAAA,CAAC,EAAE,CAAC;AACJ,gBAAA,CAAC,EAAE,CAAC;AACJ,gBAAA,CAAC,EAAE,CAAC;aACL;QACH;aAAO;AACL,YAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;AACzC,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC1D;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;YACzB,IAAI,CAAC,MAAM,EAAE;QACf;AACA,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;IAC1B;AAEA;;AAEG;AACO,IAAA,mBAAmB,CAAC,CAAM,EAAA;QAClC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;YACrB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK;YAC9B,MAAM,MAAM,GAAG,CAAA,KAAA,EAAQ,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,CAAG;YAC1C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;QAC3F;IACF;AAEA;;AAEG;AACO,IAAA,sBAAsB,CAAC,CAAM,EAAA;AACrC,QAAA,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE;AACvB,YAAA,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAQ;AAC1D,YAAA,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAW,CAAC,CAAC,KAAK,EAAE;AAC/C,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;AAC/G,YAAA,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC;YAChF,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAC7C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACrF;IACF;AAEQ,IAAA,aAAa,CAAC,aAA0B,EAAA;AAC9C,QAAA,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa;QAC1C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU,EAAE;AACjE,YAAA,OAAO,IAAI;QACb;AACA,QAAA,OAAO,MAAM,CAAC,qBAAqB,EAAE;IACvC;AAEA;;AAEG;IACK,YAAY,CAAC,CAAS,EAAE,CAAS,EAAA;QACvC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACvC;QACF;QAEA,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC;QAC5F,IAAI,CAAC,OAAO,EAAE;YACZ;QACF;AAEA,QAAA,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE;;AAE1C,QAAA,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAQ;AAC7D,QAAA,MAAM,IAAI,GAAG;YACX,CAAC;AACD,YAAA,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK;YACf,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM;YAC9B,CAAC;SACF;QAED,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;QACvF,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;QAClD,IAAI,CAAC,aAAa,EAAE;YAClB;QACF;QAEA,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE;YAChB;QACF;QAEA,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,GAAG,CAAC;IAC/F;AAEA;;AAEG;IACK,mBAAmB,CAAC,CAAS,EAAE,CAAS,EAAA;QAC9C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACvC;QACF;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;QAClD,IAAI,CAAC,aAAa,EAAE;YAClB;QACF;QAEA,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE;YAChB;QACF;AAEA,QAAA,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,GAAG,CAAC;AACnD,QAAA,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,GAAG,CAAC;AAEjD,QAAA,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,GAAG,GAAG,YAAY;AAC9E,QAAA,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,IAAI,GAAG,GAAG,WAAW;QAExD,aAAa,CAAC,KAAK,CAAC,GAAG,GAAG,CAAA,EAAG,GAAG,IAAI;QACpC,aAAa,CAAC,KAAK,CAAC,IAAI,GAAG,CAAA,EAAG,IAAI,IAAI;IACxC;AAEU,IAAA,UAAU,CAAC,KAAmB,EAAA;AACtC,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YAAE;QAC3B,KAAK,CAAC,cAAc,EAAE;QACtB,KAAK,CAAC,eAAe,EAAE;QACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;IAC7C;AAEU,IAAA,UAAU,CAAC,KAAmB,EAAA;QACtC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE;QACpD,KAAK,CAAC,cAAc,EAAE;QACtB,KAAK,CAAC,eAAe,EAAE;QACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;AAC3C,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACvG,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACjG;IAEU,QAAQ,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;QAC7B,IAAI,CAAC,uBAAuB,EAAE;QAC9B,IAAI,CAAC,qBAAqB,EAAE;IAC9B;IAEQ,QAAQ,CAAC,OAAe,EAAE,OAAe,EAAA;QAC/C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACvC;QACF;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;QAClD,IAAI,CAAC,aAAa,EAAE;YAClB;QACF;QAEA,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE;YAChB;QACF;QAEA,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9E,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;AAE9E,QAAA,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IACzB;AAEA;;AAEG;AACH,IAAA,IACY,WAAW,GAAA;AACrB,QAAA,OAAO,yBAAyB;IAClC;8GAxRW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAV7B;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,6BAA6B;AAC3C,aAAA;YACD,cAAc;AACd,YAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,6BAA6B,EAAE;AACrE,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtCH,qmDA+CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDRY,sBAAsB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,aAAA,EAAA,OAAA,EAAA,QAAA,EAAA,MAAA,EAAA,KAAA,EAAA,KAAA,EAAA,MAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAElC,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAfzC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yBAAyB,EAAA,aAAA,EAEpB,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAE1B;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAAA,6BAA+B;AAC3C,yBAAA;wBACD,cAAc;AACd,wBAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,+BAA+B,EAAE;AACrE,qBAAA,EAAA,OAAA,EACQ,CAAC,sBAAsB,EAAE,WAAW,CAAC,EAAA,QAAA,EAAA,qmDAAA,EAAA;AAgBS,SAAA,CAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,QAAQ,gEAeN,QAAQ,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA;sBAwPhE,WAAW;uBAAC,OAAO;;;AEzTtB;;;;AAIG;AAeG,MAAO,8BAA+B,SAAQ,eAAe,CAAA;AAKjE;;AAEG;AACH,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AART,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAgC,6BAA6B,CAAC;AACtE,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;AACtB,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC;AAO5C,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;AAC5B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;AACxB,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa;AAExC,QAAA,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC1E,YAAA,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtD,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;IACH,eAAe,GAAA;QACb,IAAI,CAAC,WAAW,EAAE;IACpB;AAEA;;AAEG;IACK,WAAW,GAAA;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,iBAAmC;QACvE,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK;AAChD,QAAA,KAAK,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;AAC1D,QAAA,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;QAC7D,MAAM,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC;QAChD,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,KAAK,GAAG,GAAG,CAAC,GAAG,MAAM,GAAG,MAAM;IACtE;AAEA;;AAEG;AACH,IAAA,IACY,WAAW,GAAA;AACrB,QAAA,OAAO,0BAA0B;IACnC;8GA5CW,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAT9B;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,8BAA8B;AAC5C,aAAA;YACD,cAAc;AACd,YAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,8BAA8B,EAAE;AACtE,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAVS,CAAA,yFAAA,CAA2F,EAAA,QAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAY1F,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAd1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,QAAQ,EAAE,CAAA,yFAAA,CAA2F;oBACrG,aAAa,EAAE,iBAAiB,CAAC,IAAI;AAErC,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAAA,8BAAgC;AAC5C,yBAAA;wBACD,cAAc;AACd,wBAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,gCAAgC,EAAE;AACtE,qBAAA;AACF,iBAAA;;sBA0CE,WAAW;uBAAC,OAAO;;;ACvDtB;;;;AAIG;AAwBG,MAAO,+BAAgC,SAAQ,eAAe,CAAA;AAgBlE;;AAEG;AACH,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AAnBT,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAgC,6BAA6B,CAAC;AACtE,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC;AAO9C;;;AAGG;QAEH,IAAA,CAAA,MAAM,GAAuB,EAAE;AAO7B,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;AAC5B,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa;AAExC,QAAA,OAAO,CAAC;AACL,aAAA,IAAI,CAAC,aAAa,CAAC,gBAAgB;aACnC,IAAI,CAAC,oBAAoB,EAAE;aAC3B,SAAS,CAAC,MAAK;YACd,IAAI,CAAC,WAAW,EAAE;AACpB,QAAA,CAAC,CAAC;IACN;AAEA;;AAEG;IACK,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE;AAC9E,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;IAC1B;AAEA;;AAEG;IACM,QAAQ,GAAA;QACf,KAAK,CAAC,QAAQ,EAAE;AAChB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,2BAA2B;QACxF,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjE;IACF;AAEA;;AAEG;IACH,eAAe,GAAA;QACb,IAAI,CAAC,WAAW,EAAE;IACpB;AAEA;;AAEG;IACO,YAAY,CAAC,CAAa,EAAE,KAAK,EAAA;QACzC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE;QACpD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;IAC5C;AAEA;;AAEG;AACK,IAAA,OAAO,CAAC,KAAuB,EAAA;QACrC,OAAO;AACL,YAAA,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE;SAC/B;IACH;8GAzEW,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sDAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,SAAA,EAT/B;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,+BAA+B;AAC7C,aAAA;YACD,cAAc;AACd,YAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,+BAA+B,EAAE;SACvE,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAnBS;;;;;;;;;AAST,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAYU,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAvB3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sDAAsD;AAChE,oBAAA,QAAQ,EAAE;;;;;;;;;AAST,EAAA,CAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;AAErC,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAAA,+BAAiC;AAC7C,yBAAA;wBACD,cAAc;AACd,wBAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,iCAAiC,EAAE;AACvE,qBAAA;AACF,iBAAA;;sBAcE;;;ACxCH;;;;AAIG;AA+BG,MAAO,uBAAwB,SAAQ,gBAAwB,CAAA;AAInE;;AAEG;AACH,IAAA,IACY,cAAc,GAAA;QACxB,OAAO,IAAI,CAAC,QAAQ;IACtB;8GAVW,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,yBAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,SAAA,EAtBvB;AACT,YAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,uBAAuB,EAAE;AACtE,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,uBAAuB,CAAC;AACtD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,6BAA6B;AACtC,gBAAA,WAAW,EAAE,uBAAuB;AACrC,aAAA;AACD,YAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAC9D,qBAAqB;AACtB,SAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAUgB,4BAA4B,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/C/C,+3BAqBA,EAAA,MAAA,EAAA,CAAA,0nTAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDkBI,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,8BAA8B,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC9B,6BAA6B,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC7B,+BAA+B,EAAA,QAAA,EAAA,sDAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC/B,4BAA4B,EAAA,QAAA,EAAA,wBAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAGnB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBA9BnC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAAA,MAAA,EAGpB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,WAC7D,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,EAAA,aAAA,EACnG,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAE1B;AACT,wBAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,yBAAyB,EAAE;AACtE,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,6BAA6B,CAAC;AACtD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,6BAA6B;AACtC,4BAAA,WAAW,EAAA,uBAAyB;AACrC,yBAAA;AACD,wBAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,yBAAyB,EAAE;wBAC9D,qBAAqB;qBACtB,EAAA,OAAA,EACQ;wBACP,gBAAgB;wBAChB,8BAA8B;wBAC9B,6BAA6B;wBAC7B,+BAA+B;wBAC/B,4BAA4B;AAC7B,qBAAA,EAAA,QAAA,EAAA,+3BAAA,EAAA,MAAA,EAAA,CAAA,0nTAAA,CAAA,EAAA;;sBAGA,eAAe;uBAAC,4BAA4B;;sBAM5C,WAAW;uBAAC,yBAAyB;;;ME9B3B,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,YAd7B,uBAAuB;YACvB,8BAA8B;YAC9B,+BAA+B;YAC/B,4BAA4B;AAC5B,YAAA,6BAA6B,aAG7B,uBAAuB;YACvB,8BAA8B;YAC9B,+BAA+B;YAC/B,4BAA4B;YAC5B,6BAA6B,CAAA,EAAA,CAAA,CAAA;AAGpB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,YAd7B,uBAAuB;YAGvB,4BAA4B;YAC5B,6BAA6B,CAAA,EAAA,CAAA,CAAA;;2FAUpB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAhBhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,uBAAuB;wBACvB,8BAA8B;wBAC9B,+BAA+B;wBAC/B,4BAA4B;wBAC5B,6BAA6B;AAC9B,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,uBAAuB;wBACvB,8BAA8B;wBAC9B,+BAA+B;wBAC/B,4BAA4B;wBAC5B,6BAA6B;AAC9B,qBAAA;AACF,iBAAA;;;ACtBD;;AAEG;;;;"}