{"version":3,"file":"ng-zorro-antd-time-picker.mjs","sources":["../../components/time-picker/time-holder.ts","../../components/time-picker/time-picker-panel.component.ts","../../components/time-picker/time-picker.component.ts","../../components/time-picker/time-picker.module.ts","../../components/time-picker/public-api.ts","../../components/time-picker/ng-zorro-antd-time-picker.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Observable, Subject } from 'rxjs';\n\nimport { isNil, isNotNil } from 'ng-zorro-antd/core/util';\n\nexport class TimeHolder {\n  selected12Hours: string | undefined = undefined;\n  private _value: Date | undefined;\n  private _use12Hours: boolean = false;\n  private _defaultOpenValue!: Date;\n  private _changes = new Subject<Date>();\n\n  setMinutes(value: number, disabled: boolean): this {\n    if (!disabled) {\n      this.initValue();\n      this.value.setMinutes(value);\n      this.update();\n    }\n    return this;\n  }\n\n  setHours(value: number, disabled: boolean): this {\n    if (!disabled) {\n      this.initValue();\n      if (this._use12Hours) {\n        if (this.selected12Hours === 'PM' && value !== 12) {\n          this.value.setHours((value as number) + 12);\n        } else if (this.selected12Hours === 'AM' && value === 12) {\n          this.value.setHours(0);\n        } else {\n          this.value.setHours(value);\n        }\n      } else {\n        this.value.setHours(value);\n      }\n      this.update();\n    }\n    return this;\n  }\n\n  setSeconds(value: number, disabled: boolean): this {\n    if (!disabled) {\n      this.initValue();\n      this.value.setSeconds(value);\n      this.update();\n    }\n    return this;\n  }\n\n  setUse12Hours(value: boolean): this {\n    this._use12Hours = value;\n    return this;\n  }\n\n  get changes(): Observable<Date> {\n    return this._changes.asObservable();\n  }\n\n  setValue(value: Date | undefined, use12Hours?: boolean): this {\n    if (isNotNil(use12Hours)) {\n      this._use12Hours = use12Hours as boolean;\n    }\n    if (value !== this.value) {\n      this._value = value;\n      if (isNotNil(this.value)) {\n        if (this._use12Hours && isNotNil(this.hours)) {\n          this.selected12Hours = this.hours >= 12 ? 'PM' : 'AM';\n        }\n      } else {\n        this._clear();\n      }\n    }\n\n    return this;\n  }\n\n  initValue(): void {\n    if (isNil(this.value)) {\n      this.setValue(new Date(), this._use12Hours);\n    }\n  }\n\n  clear(): void {\n    this._clear();\n    this.update();\n  }\n\n  get isEmpty(): boolean {\n    return !(isNotNil(this.hours) || isNotNil(this.minutes) || isNotNil(this.seconds));\n  }\n\n  private _clear(): void {\n    this._value = undefined;\n    this.selected12Hours = undefined;\n  }\n\n  private update(): void {\n    if (this.isEmpty) {\n      this._value = undefined;\n    } else {\n      if (isNotNil(this.hours)) {\n        this.value!.setHours(this.hours!);\n      }\n\n      if (isNotNil(this.minutes)) {\n        this.value!.setMinutes(this.minutes!);\n      }\n\n      if (isNotNil(this.seconds)) {\n        this.value!.setSeconds(this.seconds!);\n      }\n\n      if (this._use12Hours) {\n        if (this.selected12Hours === 'PM' && this.hours! < 12) {\n          this.value!.setHours(this.hours! + 12);\n        }\n        if (this.selected12Hours === 'AM' && this.hours! >= 12) {\n          this.value!.setHours(this.hours! - 12);\n        }\n      }\n    }\n    this.changed();\n  }\n\n  changed(): void {\n    this._changes.next(this.value);\n  }\n\n  /**\n   * @description\n   * UI view hours\n   * Get viewHours which is selected in `time-picker-panel` and its range is [12, 1, 2, ..., 11]\n   */\n  get viewHours(): number | undefined {\n    return this._use12Hours && isNotNil(this.hours) ? this.calculateViewHour(this.hours!) : this.hours;\n  }\n\n  setSelected12Hours(value: string | undefined): void {\n    if (value!.toUpperCase() !== this.selected12Hours) {\n      this.selected12Hours = value!.toUpperCase();\n      this.update();\n    }\n  }\n\n  get value(): Date {\n    return this._value || this._defaultOpenValue;\n  }\n\n  get hours(): number | undefined {\n    return this.value?.getHours();\n  }\n\n  get minutes(): number | undefined {\n    return this.value?.getMinutes();\n  }\n\n  get seconds(): number | undefined {\n    return this.value?.getSeconds();\n  }\n\n  setDefaultOpenValue(value: Date): this {\n    this._defaultOpenValue = value;\n    return this;\n  }\n\n  private calculateViewHour(value: number): number {\n    const selected12Hours = this.selected12Hours;\n    if (selected12Hours === 'PM' && value > 12) {\n      return value - 12;\n    }\n    if (selected12Hours === 'AM' && value === 0) {\n      return 12;\n    }\n    return value;\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { DecimalPipe, NgTemplateOutlet } from '@angular/common';\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  DebugElement,\n  ElementRef,\n  EventEmitter,\n  Input,\n  NgZone,\n  OnChanges,\n  OnInit,\n  Output,\n  SimpleChanges,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation,\n  booleanAttribute,\n  forwardRef,\n  numberAttribute,\n  inject,\n  DestroyRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { requestAnimationFrame } from 'ng-zorro-antd/core/polyfill';\nimport { fromEventOutsideAngular, isNotNil } from 'ng-zorro-antd/core/util';\nimport { DateHelperService, NzI18nModule } from 'ng-zorro-antd/i18n';\n\nimport { TimeHolder } from './time-holder';\n\nfunction makeRange(length: number, step: number = 1, start: number = 0): number[] {\n  return new Array(Math.ceil(length / step)).fill(0).map((_, i) => (i + start) * step);\n}\n\nexport type NzTimePickerUnit = 'hour' | 'minute' | 'second' | '12-hour';\n\n@Component({\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  selector: 'nz-time-picker-panel',\n  exportAs: 'nzTimePickerPanel',\n  template: `\n    @if (nzInDatePicker) {\n      <div class=\"ant-picker-header\">\n        <div class=\"ant-picker-header-view\">{{ dateHelper.format($any(time?.value), format) || '&nbsp;' }}</div>\n      </div>\n    }\n    <div class=\"ant-picker-content\">\n      @if (hourEnabled) {\n        <ul #hourListElement class=\"ant-picker-time-panel-column\" style=\"position: relative;\">\n          @for (hour of hourRange; track $index) {\n            @if (!(nzHideDisabledOptions && hour.disabled)) {\n              <li\n                class=\"ant-picker-time-panel-cell\"\n                (click)=\"selectHour(hour)\"\n                [class.ant-picker-time-panel-cell-selected]=\"isSelectedHour(hour)\"\n                [class.ant-picker-time-panel-cell-disabled]=\"hour.disabled\"\n              >\n                <div class=\"ant-picker-time-panel-cell-inner\">{{ hour.index | number: '2.0-0' }}</div>\n              </li>\n            }\n          }\n        </ul>\n      }\n      @if (minuteEnabled) {\n        <ul #minuteListElement class=\"ant-picker-time-panel-column\" style=\"position: relative;\">\n          @for (minute of minuteRange; track $index) {\n            @if (!(nzHideDisabledOptions && minute.disabled)) {\n              <li\n                class=\"ant-picker-time-panel-cell\"\n                (click)=\"selectMinute(minute)\"\n                [class.ant-picker-time-panel-cell-selected]=\"isSelectedMinute(minute)\"\n                [class.ant-picker-time-panel-cell-disabled]=\"minute.disabled\"\n              >\n                <div class=\"ant-picker-time-panel-cell-inner\">{{ minute.index | number: '2.0-0' }}</div>\n              </li>\n            }\n          }\n        </ul>\n      }\n      @if (secondEnabled) {\n        <ul #secondListElement class=\"ant-picker-time-panel-column\" style=\"position: relative;\">\n          @for (second of secondRange; track $index) {\n            @if (!(nzHideDisabledOptions && second.disabled)) {\n              <li\n                class=\"ant-picker-time-panel-cell\"\n                (click)=\"selectSecond(second)\"\n                [class.ant-picker-time-panel-cell-selected]=\"isSelectedSecond(second)\"\n                [class.ant-picker-time-panel-cell-disabled]=\"second.disabled\"\n              >\n                <div class=\"ant-picker-time-panel-cell-inner\">{{ second.index | number: '2.0-0' }}</div>\n              </li>\n            }\n          }\n        </ul>\n      }\n      @if (nzUse12Hours) {\n        <ul #use12HoursListElement class=\"ant-picker-time-panel-column\" style=\"position: relative;\">\n          @for (range of use12HoursRange; track range) {\n            <li\n              (click)=\"select12Hours(range)\"\n              class=\"ant-picker-time-panel-cell\"\n              [class.ant-picker-time-panel-cell-selected]=\"isSelected12Hours(range)\"\n            >\n              <div class=\"ant-picker-time-panel-cell-inner\">{{ range.value }}</div>\n            </li>\n          }\n        </ul>\n      }\n    </div>\n    @if (!nzInDatePicker) {\n      <div class=\"ant-picker-footer\">\n        @if (nzAddOn) {\n          <div class=\"ant-picker-footer-extra\">\n            <ng-template [ngTemplateOutlet]=\"nzAddOn\" />\n          </div>\n        }\n        <ul class=\"ant-picker-ranges\">\n          <li class=\"ant-picker-now\">\n            <a (click)=\"onClickNow()\">\n              {{ nzNowText || ('Calendar.lang.now' | nzI18n) }}\n            </a>\n          </li>\n          <li class=\"ant-picker-ok\">\n            <button nz-button type=\"button\" nzSize=\"small\" nzType=\"primary\" (click)=\"onClickOk()\">\n              {{ nzOkText || ('Calendar.lang.ok' | nzI18n) }}\n            </button>\n          </li>\n        </ul>\n      </div>\n    }\n  `,\n  host: {\n    class: 'ant-picker-time-panel',\n    '[class.ant-picker-time-panel-column-0]': `enabledColumns === 0 && !nzInDatePicker`,\n    '[class.ant-picker-time-panel-column-1]': `enabledColumns === 1 && !nzInDatePicker`,\n    '[class.ant-picker-time-panel-column-2]': `enabledColumns === 2 && !nzInDatePicker`,\n    '[class.ant-picker-time-panel-column-3]': `enabledColumns === 3 && !nzInDatePicker`,\n    '[class.ant-picker-time-panel-narrow]': `enabledColumns < 3`,\n    '[class.ant-picker-time-panel-placement-bottomLeft]': `!nzInDatePicker`\n  },\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => NzTimePickerPanelComponent),\n      multi: true\n    }\n  ],\n  imports: [DecimalPipe, NgTemplateOutlet, NzI18nModule, NzButtonModule]\n})\nexport class NzTimePickerPanelComponent implements ControlValueAccessor, OnInit, OnChanges {\n  dateHelper = inject(DateHelperService);\n  private ngZone = inject(NgZone);\n  private cdr = inject(ChangeDetectorRef);\n  private elementRef = inject(ElementRef);\n  private destroyRef = inject(DestroyRef);\n\n  private _nzHourStep = 1;\n  private _nzMinuteStep = 1;\n  private _nzSecondStep = 1;\n  private onChange?: (value: Date) => void;\n  private onTouch?: () => void;\n  private _format = 'HH:mm:ss';\n  private _disabledHours?: () => number[] = () => [];\n  private _disabledMinutes?: (hour: number) => number[] = () => [];\n  private _disabledSeconds?: (hour: number, minute: number) => number[] = () => [];\n  private _allowEmpty = true;\n  time = new TimeHolder();\n  hourEnabled = true;\n  minuteEnabled = true;\n  secondEnabled = true;\n  firstScrolled = false;\n  enabledColumns = 3;\n  hourRange!: ReadonlyArray<{ index: number; disabled: boolean }>;\n  minuteRange!: ReadonlyArray<{ index: number; disabled: boolean }>;\n  secondRange!: ReadonlyArray<{ index: number; disabled: boolean }>;\n  use12HoursRange!: ReadonlyArray<{ index: number; value: string }>;\n\n  @ViewChild('hourListElement', { static: false })\n  hourListElement?: DebugElement;\n  @ViewChild('minuteListElement', { static: false }) minuteListElement?: DebugElement;\n  @ViewChild('secondListElement', { static: false }) secondListElement?: DebugElement;\n  @ViewChild('use12HoursListElement', { static: false }) use12HoursListElement?: DebugElement;\n\n  @Input({ transform: booleanAttribute }) nzInDatePicker: boolean = false; // If inside a date-picker, more diff works need to be done\n  @Input() nzAddOn?: TemplateRef<void>;\n  @Input() nzHideDisabledOptions = false;\n  @Input() nzClearText?: string;\n  @Input() nzNowText?: string;\n  @Input() nzOkText?: string;\n  @Input() nzPlaceHolder?: string | null;\n  @Input({ transform: booleanAttribute }) nzUse12Hours = false;\n  @Input() nzDefaultOpenValue?: Date;\n\n  @Output() readonly closePanel = new EventEmitter<void>();\n\n  @Input({ transform: booleanAttribute })\n  set nzAllowEmpty(value: boolean) {\n    this._allowEmpty = value;\n  }\n\n  get nzAllowEmpty(): boolean {\n    return this._allowEmpty;\n  }\n\n  @Input()\n  set nzDisabledHours(value: undefined | (() => number[])) {\n    this._disabledHours = value;\n    if (this._disabledHours) {\n      this.buildHours();\n    }\n  }\n\n  get nzDisabledHours(): undefined | (() => number[]) {\n    return this._disabledHours;\n  }\n\n  @Input()\n  set nzDisabledMinutes(value: undefined | ((hour: number) => number[])) {\n    if (isNotNil(value)) {\n      this._disabledMinutes = value;\n      this.buildMinutes();\n    }\n  }\n\n  get nzDisabledMinutes(): undefined | ((hour: number) => number[]) {\n    return this._disabledMinutes;\n  }\n\n  @Input()\n  set nzDisabledSeconds(value: undefined | ((hour: number, minute: number) => number[])) {\n    if (isNotNil(value)) {\n      this._disabledSeconds = value;\n      this.buildSeconds();\n    }\n  }\n\n  get nzDisabledSeconds(): undefined | ((hour: number, minute: number) => number[]) {\n    return this._disabledSeconds;\n  }\n\n  @Input()\n  set format(value: string) {\n    if (isNotNil(value)) {\n      this._format = value;\n      this.enabledColumns = 0;\n      const charSet = new Set(value);\n      this.hourEnabled = charSet.has('H') || charSet.has('h');\n      this.minuteEnabled = charSet.has('m');\n      this.secondEnabled = charSet.has('s');\n      if (this.hourEnabled) {\n        this.enabledColumns++;\n      }\n      if (this.minuteEnabled) {\n        this.enabledColumns++;\n      }\n      if (this.secondEnabled) {\n        this.enabledColumns++;\n      }\n      if (this.nzUse12Hours) {\n        this.build12Hours();\n      }\n    }\n  }\n\n  get format(): string {\n    return this._format;\n  }\n\n  @Input({ transform: numberAttribute })\n  set nzHourStep(value: number) {\n    this._nzHourStep = value || 1;\n    this.buildHours();\n  }\n\n  get nzHourStep(): number {\n    return this._nzHourStep;\n  }\n\n  @Input({ transform: numberAttribute })\n  set nzMinuteStep(value: number) {\n    this._nzMinuteStep = value || 1;\n    this.buildMinutes();\n  }\n\n  get nzMinuteStep(): number {\n    return this._nzMinuteStep;\n  }\n\n  @Input({ transform: numberAttribute })\n  set nzSecondStep(value: number) {\n    this._nzSecondStep = value || 1;\n    this.buildSeconds();\n  }\n\n  get nzSecondStep(): number {\n    return this._nzSecondStep;\n  }\n\n  buildHours(): void {\n    let hourRanges = 24;\n    let disabledHours = this.nzDisabledHours?.();\n    let startIndex = 0;\n    if (this.nzUse12Hours) {\n      hourRanges = 12;\n      if (disabledHours) {\n        if (this.time.selected12Hours === 'PM') {\n          /**\n           * Filter and transform hours which greater or equal to 12\n           * [0, 1, 2, ..., 12, 13, 14, 15, ..., 23] => [12, 1, 2, 3, ..., 11]\n           */\n          disabledHours = disabledHours.filter(i => i >= 12).map(i => (i > 12 ? i - 12 : i));\n        } else {\n          /**\n           * Filter and transform hours which less than 12\n           * [0, 1, 2, ..., 12, 13, 14, 15, ...23] => [12, 1, 2, 3, ..., 11]\n           */\n          disabledHours = disabledHours.filter(i => i < 12 || i === 24).map(i => (i === 24 || i === 0 ? 12 : i));\n        }\n      }\n      startIndex = 1;\n    }\n    this.hourRange = makeRange(hourRanges, this.nzHourStep, startIndex).map(r => ({\n      index: r,\n      disabled: !!disabledHours && disabledHours.indexOf(r) !== -1\n    }));\n    if (this.nzUse12Hours && this.hourRange[this.hourRange.length - 1].index === 12) {\n      const temp = [...this.hourRange];\n      temp.unshift(temp[temp.length - 1]);\n      temp.splice(temp.length - 1, 1);\n      this.hourRange = temp;\n    }\n  }\n\n  buildMinutes(): void {\n    this.minuteRange = makeRange(60, this.nzMinuteStep).map(r => ({\n      index: r,\n      disabled: !!this.nzDisabledMinutes && this.nzDisabledMinutes(this.time.hours!).indexOf(r) !== -1\n    }));\n  }\n\n  buildSeconds(): void {\n    this.secondRange = makeRange(60, this.nzSecondStep).map(r => ({\n      index: r,\n      disabled:\n        !!this.nzDisabledSeconds && this.nzDisabledSeconds(this.time.hours!, this.time.minutes!).indexOf(r) !== -1\n    }));\n  }\n\n  build12Hours(): void {\n    const isUpperFormat = this._format.includes('A');\n    this.use12HoursRange = [\n      {\n        index: 0,\n        value: isUpperFormat ? 'AM' : 'am'\n      },\n      {\n        index: 1,\n        value: isUpperFormat ? 'PM' : 'pm'\n      }\n    ];\n  }\n\n  buildTimes(): void {\n    this.buildHours();\n    this.buildMinutes();\n    this.buildSeconds();\n    this.build12Hours();\n  }\n\n  scrollToTime(delay: number = 0): void {\n    if (this.hourEnabled && this.hourListElement) {\n      this.scrollToSelected(this.hourListElement.nativeElement, this.time.viewHours!, delay, 'hour');\n    }\n    if (this.minuteEnabled && this.minuteListElement) {\n      this.scrollToSelected(this.minuteListElement.nativeElement, this.time.minutes!, delay, 'minute');\n    }\n    if (this.secondEnabled && this.secondListElement) {\n      this.scrollToSelected(this.secondListElement.nativeElement, this.time.seconds!, delay, 'second');\n    }\n    if (this.nzUse12Hours && this.use12HoursListElement) {\n      const selectedHours = this.time.selected12Hours;\n      const index = selectedHours === 'AM' ? 0 : 1;\n      this.scrollToSelected(this.use12HoursListElement.nativeElement, index, delay, '12-hour');\n    }\n  }\n\n  selectHour(hour: { index: number; disabled: boolean }): void {\n    this.time.setHours(hour.index, hour.disabled);\n    if (this._disabledMinutes) {\n      this.buildMinutes();\n    }\n    if (this._disabledSeconds || this._disabledMinutes) {\n      this.buildSeconds();\n    }\n  }\n\n  selectMinute(minute: { index: number; disabled: boolean }): void {\n    this.time.setMinutes(minute.index, minute.disabled);\n    if (this._disabledSeconds) {\n      this.buildSeconds();\n    }\n  }\n\n  selectSecond(second: { index: number; disabled: boolean }): void {\n    this.time.setSeconds(second.index, second.disabled);\n  }\n\n  select12Hours(value: { index: number; value: string }): void {\n    this.time.setSelected12Hours(value.value);\n    if (this._disabledHours) {\n      this.buildHours();\n    }\n    if (this._disabledMinutes) {\n      this.buildMinutes();\n    }\n    if (this._disabledSeconds) {\n      this.buildSeconds();\n    }\n  }\n\n  scrollToSelected(instance: HTMLElement, index: number, duration: number = 0, unit: NzTimePickerUnit): void {\n    if (!instance) {\n      return;\n    }\n    const transIndex = this.translateIndex(index, unit);\n    const currentOption = (instance.children[transIndex] || instance.children[0]) as HTMLElement;\n    this.scrollTo(instance, currentOption.offsetTop, duration);\n  }\n\n  translateIndex(index: number, unit: NzTimePickerUnit): number {\n    if (unit === 'hour') {\n      return this.calcIndex(this.nzDisabledHours?.(), this.hourRange.map(item => item.index).indexOf(index));\n    } else if (unit === 'minute') {\n      return this.calcIndex(\n        this.nzDisabledMinutes?.(this.time.hours!),\n        this.minuteRange.map(item => item.index).indexOf(index)\n      );\n    } else if (unit === 'second') {\n      // second\n      return this.calcIndex(\n        this.nzDisabledSeconds?.(this.time.hours!, this.time.minutes!),\n        this.secondRange.map(item => item.index).indexOf(index)\n      );\n    } else {\n      // 12-hour\n      return this.calcIndex([], this.use12HoursRange.map(item => item.index).indexOf(index));\n    }\n  }\n\n  scrollTo(element: HTMLElement, to: number, duration: number): void {\n    if (duration <= 0) {\n      element.scrollTop = to;\n      return;\n    }\n    const difference = to - element.scrollTop;\n    const perTick = (difference / duration) * 10;\n\n    this.ngZone.runOutsideAngular(() => {\n      requestAnimationFrame(() => {\n        element.scrollTop = element.scrollTop + perTick;\n        if (element.scrollTop === to) {\n          return;\n        }\n        this.scrollTo(element, to, duration - 10);\n      });\n    });\n  }\n\n  calcIndex(array: number[] | undefined, index: number): number {\n    if (array?.length && this.nzHideDisabledOptions) {\n      return index - array.reduce((pre, value) => pre + (value < index ? 1 : 0), 0);\n    } else {\n      return index;\n    }\n  }\n\n  protected changed(): void {\n    if (this.onChange) {\n      this.onChange(this.time.value!);\n    }\n  }\n\n  protected touched(): void {\n    if (this.onTouch) {\n      this.onTouch();\n    }\n  }\n\n  timeDisabled(value: Date): boolean {\n    const hour = value.getHours();\n    const minute = value.getMinutes();\n    const second = value.getSeconds();\n    return (\n      (this.nzDisabledHours?.().indexOf(hour) ?? -1) > -1 ||\n      (this.nzDisabledMinutes?.(hour).indexOf(minute) ?? -1) > -1 ||\n      (this.nzDisabledSeconds?.(hour, minute).indexOf(second) ?? -1) > -1\n    );\n  }\n\n  onClickNow(): void {\n    const now = new Date();\n    if (this.timeDisabled(now)) {\n      return;\n    }\n    this.time.setValue(now);\n    this.changed();\n    this.closePanel.emit();\n  }\n\n  onClickOk(): void {\n    this.time.setValue(this.time.value, this.nzUse12Hours);\n    this.changed();\n    this.closePanel.emit();\n  }\n\n  isSelectedHour(hour: { index: number; disabled: boolean }): boolean {\n    return hour.index === this.time.viewHours;\n  }\n\n  isSelectedMinute(minute: { index: number; disabled: boolean }): boolean {\n    return minute.index === this.time.minutes;\n  }\n\n  isSelectedSecond(second: { index: number; disabled: boolean }): boolean {\n    return second.index === this.time.seconds;\n  }\n\n  isSelected12Hours(value: { index: number; value: string }): boolean {\n    return value.value.toUpperCase() === this.time.selected12Hours;\n  }\n\n  ngOnInit(): void {\n    this.time.changes.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n      this.changed();\n      this.touched();\n      this.scrollToTime(120);\n    });\n    this.buildTimes();\n\n    this.ngZone.runOutsideAngular(() => {\n      setTimeout(() => {\n        this.scrollToTime();\n        this.firstScrolled = true;\n      });\n    });\n\n    fromEventOutsideAngular(this.elementRef.nativeElement, 'mousedown')\n      .pipe(takeUntilDestroyed(this.destroyRef))\n      .subscribe(event => {\n        event.preventDefault();\n      });\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { nzUse12Hours, nzDefaultOpenValue } = changes;\n    if (!nzUse12Hours?.previousValue && nzUse12Hours?.currentValue) {\n      this.build12Hours();\n      this.enabledColumns++;\n    }\n    if (nzDefaultOpenValue?.currentValue) {\n      this.time.setDefaultOpenValue(this.nzDefaultOpenValue || new Date());\n    }\n  }\n\n  writeValue(value: Date): void {\n    this.time.setValue(value, this.nzUse12Hours);\n    this.buildTimes();\n\n    if (value && this.firstScrolled) {\n      this.scrollToTime(120);\n    }\n    // Mark this component to be checked manually with internal properties changing (see: https://github.com/angular/angular/issues/10816)\n    this.cdr.markForCheck();\n  }\n\n  registerOnChange(fn: (value: Date) => void): void {\n    this.onChange = fn;\n  }\n\n  registerOnTouched(fn: () => void): void {\n    this.onTouch = fn;\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directionality } from '@angular/cdk/bidi';\nimport { ConnectedOverlayPositionChange, OverlayModule } from '@angular/cdk/overlay';\nimport { Platform, _getEventTarget } from '@angular/cdk/platform';\nimport { AsyncPipe } from '@angular/common';\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  DestroyRef,\n  ElementRef,\n  EventEmitter,\n  Input,\n  OnChanges,\n  OnInit,\n  Output,\n  Renderer2,\n  SimpleChanges,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation,\n  booleanAttribute,\n  computed,\n  forwardRef,\n  inject,\n  input,\n  linkedSignal,\n  signal\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Observable, of } from 'rxjs';\nimport { distinctUntilChanged, map, withLatestFrom } from 'rxjs/operators';\n\nimport { isValid } from 'date-fns';\n\nimport { slideAnimationEnter, slideAnimationLeave } from 'ng-zorro-antd/core/animation';\nimport { NzConfigKey, NzConfigService, WithConfig } from 'ng-zorro-antd/core/config';\nimport {\n  NZ_FORM_SIZE,\n  NZ_FORM_VARIANT,\n  NzFormItemFeedbackIconComponent,\n  NzFormNoStatusService,\n  NzFormStatusService\n} from 'ng-zorro-antd/core/form';\nimport { warn } from 'ng-zorro-antd/core/logger';\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { DATE_PICKER_POSITION_MAP, DEFAULT_DATE_PICKER_POSITIONS, NzOverlayModule } from 'ng-zorro-antd/core/overlay';\nimport {\n  NgClassInterface,\n  NzPlacement,\n  NzSafeAny,\n  NzSizeLDSType,\n  NzStatus,\n  NzValidateStatus,\n  NzVariant\n} from 'ng-zorro-antd/core/types';\nimport { generateClassName, getStatusClassNames, isNil } from 'ng-zorro-antd/core/util';\nimport { DateHelperService, NzI18nService } from 'ng-zorro-antd/i18n';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NZ_SPACE_COMPACT_ITEM_TYPE, NZ_SPACE_COMPACT_SIZE, NzSpaceCompactItemDirective } from 'ng-zorro-antd/space';\n\nimport { NzTimePickerPanelComponent } from './time-picker-panel.component';\n\nconst NZ_CONFIG_MODULE_NAME: NzConfigKey = 'timePicker';\n\n@Component({\n  encapsulation: ViewEncapsulation.None,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  selector: 'nz-time-picker',\n  exportAs: 'nzTimePicker',\n  template: `\n    @if (nzPrefix(); as prefix) {\n      <span class=\"ant-picker-prefix\">\n        <ng-container *nzStringTemplateOutlet=\"prefix\">{{ prefix }}</ng-container>\n      </span>\n    }\n    <div class=\"ant-picker-input\">\n      <input\n        #inputElement\n        [attr.id]=\"nzId\"\n        type=\"text\"\n        [size]=\"inputSize\"\n        autocomplete=\"off\"\n        [placeholder]=\"nzPlaceHolder || (i18nPlaceHolder$ | async)\"\n        [(ngModel)]=\"inputValue\"\n        [disabled]=\"nzDisabled\"\n        [readOnly]=\"nzInputReadOnly\"\n        (focus)=\"onFocus(true)\"\n        (blur)=\"onFocus(false)\"\n        (keyup.enter)=\"onKeyupEnter()\"\n        (keyup.escape)=\"onKeyupEsc()\"\n        (ngModelChange)=\"onInputChange($event)\"\n      />\n      <span class=\"ant-picker-suffix\">\n        <ng-container *nzStringTemplateOutlet=\"nzSuffixIcon; let suffixIcon\">\n          <nz-icon [nzType]=\"suffixIcon\" />\n        </ng-container>\n        @if (hasFeedback && !!status) {\n          <nz-form-item-feedback-icon [status]=\"status\" />\n        }\n      </span>\n      @if (nzAllowEmpty && !nzDisabled && value) {\n        <span class=\"ant-picker-clear\" (click)=\"onClickClearBtn($event)\">\n          <nz-icon nzType=\"close-circle\" nzTheme=\"fill\" [attr.aria-label]=\"nzClearText\" [attr.title]=\"nzClearText\" />\n        </span>\n      }\n    </div>\n\n    <ng-template\n      cdkConnectedOverlay\n      nzConnectedOverlay\n      cdkConnectedOverlayTransformOriginOn=\".ant-picker-dropdown\"\n      [cdkConnectedOverlayHasBackdrop]=\"nzBackdrop\"\n      [cdkConnectedOverlayPositions]=\"overlayPositions()\"\n      [cdkConnectedOverlayOrigin]=\"origin\"\n      [cdkConnectedOverlayOpen]=\"nzOpen\"\n      (detach)=\"close()\"\n      (overlayOutsideClick)=\"onClickOutside($event)\"\n      (positionChange)=\"onPositionChange($event)\"\n    >\n      <div\n        [animate.enter]=\"timepickerAnimationEnter()\"\n        [animate.leave]=\"timepickerAnimationLeave()\"\n        [class]=\"dropdownTimePickerClass()\"\n        style=\"position: relative\"\n      >\n        <div class=\"ant-picker-panel-container\">\n          <div tabindex=\"-1\" class=\"ant-picker-panel\">\n            <nz-time-picker-panel\n              [class]=\"nzPopupClassName\"\n              [format]=\"nzFormat\"\n              [nzHourStep]=\"nzHourStep\"\n              [nzMinuteStep]=\"nzMinuteStep\"\n              [nzSecondStep]=\"nzSecondStep\"\n              [nzDisabledHours]=\"nzDisabledHours\"\n              [nzDisabledMinutes]=\"nzDisabledMinutes\"\n              [nzDisabledSeconds]=\"nzDisabledSeconds\"\n              [nzPlaceHolder]=\"nzPlaceHolder || (i18nPlaceHolder$ | async)\"\n              [nzHideDisabledOptions]=\"nzHideDisabledOptions\"\n              [nzUse12Hours]=\"nzUse12Hours\"\n              [nzDefaultOpenValue]=\"nzDefaultOpenValue\"\n              [nzAddOn]=\"nzAddOn\"\n              [nzClearText]=\"nzClearText\"\n              [nzNowText]=\"nzNowText\"\n              [nzOkText]=\"nzOkText\"\n              [nzAllowEmpty]=\"nzAllowEmpty\"\n              [(ngModel)]=\"value\"\n              (ngModelChange)=\"onPanelValueChange($event)\"\n              (closePanel)=\"closePanel()\"\n            />\n          </div>\n        </div>\n      </div>\n    </ng-template>\n  `,\n  host: {\n    class: 'ant-picker',\n    '[class.ant-picker-large]': `finalSize() === 'large'`,\n    '[class.ant-picker-small]': `finalSize() === 'small'`,\n    '[class.ant-picker-disabled]': `nzDisabled`,\n    '[class.ant-picker-focused]': `focused`,\n    '[class.ant-picker-rtl]': `dir() === 'rtl'`,\n    '[class.ant-picker-borderless]': `finalVariant() === 'borderless'`,\n    '[class.ant-picker-filled]': `finalVariant() === 'filled'`,\n    '[class.ant-picker-underlined]': `finalVariant() === 'underlined'`,\n    '(click)': 'open()'\n  },\n  hostDirectives: [NzSpaceCompactItemDirective],\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => NzTimePickerComponent),\n      multi: true\n    },\n    {\n      provide: NZ_SPACE_COMPACT_ITEM_TYPE,\n      useValue: 'picker'\n    }\n  ],\n  imports: [\n    AsyncPipe,\n    FormsModule,\n    NzOutletModule,\n    NzIconModule,\n    NzFormItemFeedbackIconComponent,\n    NzTimePickerPanelComponent,\n    NzOverlayModule,\n    OverlayModule\n  ]\n})\nexport class NzTimePickerComponent implements ControlValueAccessor, OnInit, AfterViewInit, OnChanges {\n  readonly _nzModuleName: NzConfigKey = NZ_CONFIG_MODULE_NAME;\n\n  public nzConfigService = inject(NzConfigService);\n  protected i18n = inject(NzI18nService);\n  private elementRef = inject(ElementRef);\n  private renderer = inject(Renderer2);\n  private cdr = inject(ChangeDetectorRef);\n  private dateHelper = inject(DateHelperService);\n  private platform = inject(Platform);\n  private destroyRef = inject(DestroyRef);\n\n  protected readonly dir = inject(Directionality).valueSignal;\n\n  private _onChange?: (value: Date | null) => void;\n  private _onTouched?: () => void;\n  private isNzDisableFirstChange: boolean = true;\n\n  isInit = false;\n  focused = false;\n  inputValue: string = '';\n  value: Date | null = null;\n  preValue: Date | null = null;\n  inputSize?: number;\n  i18nPlaceHolder$: Observable<string | undefined> = of(undefined);\n\n  // status\n  prefixCls: string = 'ant-picker';\n  statusCls: NgClassInterface = {};\n  status: NzValidateStatus = '';\n  hasFeedback: boolean = false;\n\n  get origin(): ElementRef {\n    return this.elementRef;\n  }\n\n  @ViewChild('inputElement', { static: true }) inputRef!: ElementRef<HTMLInputElement>;\n  @Input() nzId: string | null = null;\n  @Input() nzSize: NzSizeLDSType = 'default';\n  @Input() nzStatus: NzStatus = '';\n  @Input() @WithConfig() nzVariant: NzVariant | undefined = undefined;\n  @Input() @WithConfig() nzHourStep: number = 1;\n  @Input() @WithConfig() nzMinuteStep: number = 1;\n  @Input() @WithConfig() nzSecondStep: number = 1;\n  @Input() @WithConfig() nzClearText: string = 'clear';\n  @Input() @WithConfig() nzNowText: string = '';\n  @Input() @WithConfig() nzOkText: string = '';\n  @Input() @WithConfig() nzPopupClassName: string = '';\n  @Input() nzPlaceHolder = '';\n  @Input() nzAddOn?: TemplateRef<void>;\n  @Input() nzDefaultOpenValue?: Date;\n  @Input() nzDisabledHours?: () => number[];\n  @Input() nzDisabledMinutes?: (hour: number) => number[];\n  @Input() nzDisabledSeconds?: (hour: number, minute: number) => number[];\n  @Input() @WithConfig() nzFormat: string = 'HH:mm:ss';\n  @Input() nzOpen = false;\n  @Input({ transform: booleanAttribute }) @WithConfig() nzUse12Hours: boolean = false;\n  @Input() @WithConfig() nzSuffixIcon: string | TemplateRef<NzSafeAny> = 'clock-circle';\n\n  @Output() readonly nzOpenChange = new EventEmitter<boolean>();\n\n  @Input({ transform: booleanAttribute }) nzHideDisabledOptions = false;\n  @Input({ transform: booleanAttribute }) @WithConfig() nzAllowEmpty: boolean = true;\n  @Input({ transform: booleanAttribute }) nzDisabled = false;\n  @Input({ transform: booleanAttribute }) nzAutoFocus = false;\n  @Input() @WithConfig() nzBackdrop = false;\n  @Input({ transform: booleanAttribute }) nzInputReadOnly: boolean = false;\n\n  private readonly formSize = inject(NZ_FORM_SIZE, { optional: true });\n  private readonly formVariant = inject(NZ_FORM_VARIANT, { optional: true });\n  private hasConfirmed = false;\n\n  readonly nzPrefix = input<string | TemplateRef<void>>();\n  readonly nzNeedConfirm = input(false, { transform: booleanAttribute });\n  readonly nzPlacement = input<NzPlacement>('bottomLeft');\n\n  protected readonly currentPosition = linkedSignal(() => DATE_PICKER_POSITION_MAP[this.nzPlacement()]);\n  protected readonly overlayPositions = computed(() => [this.currentPosition(), ...DEFAULT_DATE_PICKER_POSITIONS]);\n\n  protected readonly timepickerAnimationEnter = slideAnimationEnter();\n  protected readonly timepickerAnimationLeave = slideAnimationLeave();\n\n  emitValue(value: Date | null): void {\n    this.setValue(value, true);\n\n    if (this._onChange) {\n      this._onChange(this.value);\n    }\n\n    if (this._onTouched) {\n      this._onTouched();\n    }\n  }\n\n  setValue(value: Date | null, syncPreValue: boolean = false): void {\n    if (syncPreValue) {\n      this.preValue = isValid(value) ? new Date(value!) : null;\n    }\n    this.value = isValid(value) ? new Date(value!) : null;\n    this.inputValue = this.dateHelper.format(value, this.nzFormat);\n    this.cdr.markForCheck();\n  }\n\n  open(): void {\n    if (this.nzDisabled || this.nzOpen) {\n      return;\n    }\n    this.focus();\n    this.nzOpen = true;\n    this.nzOpenChange.emit(this.nzOpen);\n  }\n\n  close(): void {\n    this.nzOpen = false;\n    this.cdr.markForCheck();\n    this.nzOpenChange.emit(this.nzOpen);\n  }\n\n  updateAutoFocus(): void {\n    if (this.isInit && !this.nzDisabled) {\n      if (this.nzAutoFocus) {\n        this.renderer.setAttribute(this.inputRef.nativeElement, 'autofocus', 'autofocus');\n      } else {\n        this.renderer.removeAttribute(this.inputRef.nativeElement, 'autofocus');\n      }\n    }\n  }\n\n  onClickClearBtn(event: MouseEvent): void {\n    event.stopPropagation();\n    this.emitValue(null);\n  }\n\n  onClickOutside(event: MouseEvent): void {\n    const target = _getEventTarget(event);\n    if (!this.elementRef.nativeElement.contains(target)) {\n      this.setCurrentValueAndClose();\n    }\n  }\n\n  onFocus(value: boolean): void {\n    this.focused = value;\n    if (!value) {\n      if (this.checkTimeValid(this.value)) {\n        this.setCurrentValueAndClose();\n      } else {\n        this.setValue(this.preValue);\n        this.close();\n      }\n    }\n  }\n\n  focus(): void {\n    if (this.inputRef.nativeElement) {\n      this.inputRef.nativeElement.focus();\n    }\n  }\n\n  blur(): void {\n    if (this.inputRef.nativeElement) {\n      this.inputRef.nativeElement.blur();\n    }\n  }\n\n  onKeyupEsc(): void {\n    this.setValue(this.preValue);\n  }\n\n  onKeyupEnter(): void {\n    if (this.nzOpen && isValid(this.value)) {\n      this.setCurrentValueAndClose();\n    } else if (!this.nzOpen) {\n      this.open();\n    }\n  }\n\n  onInputChange(str: string): void {\n    if (!this.platform.TRIDENT && document.activeElement === this.inputRef.nativeElement) {\n      this.open();\n      this.parseTimeString(str);\n    }\n  }\n\n  onPanelValueChange(value: Date): void {\n    this.setValue(value);\n    this.focus();\n  }\n\n  closePanel(): void {\n    this.hasConfirmed = true;\n    this.inputRef.nativeElement.blur();\n  }\n\n  setCurrentValueAndClose(): void {\n    if (this.hasConfirmed || !this.nzNeedConfirm()) {\n      this.emitValue(this.value);\n      this.hasConfirmed = false;\n    } else {\n      this.setValue(this.preValue);\n    }\n    this.close();\n  }\n\n  onPositionChange(position: ConnectedOverlayPositionChange): void {\n    this.currentPosition.set(position.connectionPair);\n  }\n\n  protected finalSize = computed(() => {\n    if (this.formSize?.()) {\n      return this.formSize();\n    }\n    if (this.compactSize) {\n      return this.compactSize();\n    }\n    return this.size();\n  });\n\n  protected readonly finalVariant = computed(() => this.variant() || this.formVariant?.() || 'outlined');\n\n  protected dropdownTimePickerClass = computed(() => {\n    const classList = [this.generateClass('dropdown')];\n    const { originX, originY } = this.currentPosition();\n    const dir = this.dir();\n\n    if (originX === 'start' && originY === 'bottom') {\n      classList.push(this.generateClass('dropdown-placement-bottomLeft'));\n    } else if (originX === 'start' && originY === 'top') {\n      classList.push(this.generateClass('dropdown-placement-topLeft'));\n    } else if (originX === 'end' && originY === 'bottom') {\n      classList.push(this.generateClass('dropdown-placement-bottomRight'));\n    } else if (originX === 'end' && originY === 'top') {\n      classList.push(this.generateClass('dropdown-placement-topRight'));\n    }\n\n    if (dir === 'rtl') {\n      classList.push(this.generateClass('dropdown-rtl'));\n    }\n\n    return classList;\n  });\n\n  private size = signal<NzSizeLDSType>(this.nzSize);\n  private readonly variant = signal<NzVariant | undefined>(this.nzVariant);\n  private compactSize = inject(NZ_SPACE_COMPACT_SIZE, { optional: true });\n  private nzFormStatusService = inject(NzFormStatusService, { optional: true });\n  private nzFormNoStatusService = inject(NzFormNoStatusService, { optional: true });\n\n  ngOnInit(): void {\n    this.nzFormStatusService?.formStatusChanges\n      .pipe(\n        distinctUntilChanged((pre, cur) => pre.status === cur.status && pre.hasFeedback === cur.hasFeedback),\n        withLatestFrom(this.nzFormNoStatusService ? this.nzFormNoStatusService.noFormStatus : of(false)),\n        map(([{ status, hasFeedback }, noStatus]) => ({ status: noStatus ? '' : status, hasFeedback })),\n        takeUntilDestroyed(this.destroyRef)\n      )\n      .subscribe(({ status, hasFeedback }) => {\n        this.setStatusStyles(status, hasFeedback);\n      });\n\n    this.inputSize = Math.max(8, this.nzFormat.length) + 2;\n    this.i18nPlaceHolder$ = this.i18n.localeChange.pipe(map(nzLocale => nzLocale.TimePicker.placeholder));\n  }\n\n  ngOnChanges({ nzUse12Hours, nzFormat, nzDisabled, nzAutoFocus, nzStatus, nzSize, nzVariant }: SimpleChanges): void {\n    if (nzUse12Hours && !nzUse12Hours.previousValue && nzUse12Hours.currentValue && !nzFormat) {\n      this.nzFormat = 'h:mm:ss a';\n    }\n    if (nzDisabled) {\n      const value = nzDisabled.currentValue;\n      const input = this.inputRef.nativeElement as HTMLInputElement;\n      if (value) {\n        this.renderer.setAttribute(input, 'disabled', '');\n      } else {\n        this.renderer.removeAttribute(input, 'disabled');\n      }\n    }\n    if (nzAutoFocus) {\n      this.updateAutoFocus();\n    }\n    if (nzStatus) {\n      this.setStatusStyles(this.nzStatus, this.hasFeedback);\n    }\n    if (nzSize) {\n      this.size.set(nzSize.currentValue);\n    }\n    if (nzVariant) {\n      this.variant.set(nzVariant.currentValue);\n    }\n  }\n\n  parseTimeString(str: string): void {\n    const value = this.dateHelper.parseTime(str, this.nzFormat) || null;\n    if (isValid(value)) {\n      this.value = value;\n      this.cdr.markForCheck();\n    }\n  }\n\n  ngAfterViewInit(): void {\n    this.isInit = true;\n    this.updateAutoFocus();\n  }\n\n  writeValue(time: Date | null | undefined): void {\n    let result: Date | null;\n\n    if (time instanceof Date) {\n      result = time;\n    } else if (isNil(time)) {\n      result = null;\n    } else {\n      warn('Non-Date type is not recommended for time-picker, use \"Date\" type.');\n      result = new Date(time);\n    }\n\n    this.setValue(result, true);\n  }\n\n  registerOnChange(fn: (time: Date | null) => void): void {\n    this._onChange = fn;\n  }\n\n  registerOnTouched(fn: () => void): void {\n    this._onTouched = fn;\n  }\n\n  setDisabledState(isDisabled: boolean): void {\n    this.nzDisabled = (this.isNzDisableFirstChange && this.nzDisabled) || isDisabled;\n    this.isNzDisableFirstChange = false;\n    this.cdr.markForCheck();\n  }\n\n  private checkTimeValid(value: Date | null): boolean {\n    if (!value) {\n      return true;\n    }\n\n    const disabledHours = this.nzDisabledHours?.();\n    const disabledMinutes = this.nzDisabledMinutes?.(value.getHours());\n    const disabledSeconds = this.nzDisabledSeconds?.(value.getHours(), value.getMinutes());\n\n    return !(\n      disabledHours?.includes(value.getHours()) ||\n      disabledMinutes?.includes(value.getMinutes()) ||\n      disabledSeconds?.includes(value.getSeconds())\n    );\n  }\n\n  private setStatusStyles(status: NzValidateStatus, hasFeedback: boolean): void {\n    // set inner status\n    this.status = status;\n    this.hasFeedback = hasFeedback;\n    this.cdr.markForCheck();\n    // render status if nzStatus is set\n    this.statusCls = getStatusClassNames(this.prefixCls, status, hasFeedback);\n    Object.keys(this.statusCls).forEach(status => {\n      if (this.statusCls[status]) {\n        this.renderer.addClass(this.elementRef.nativeElement, status);\n      } else {\n        this.renderer.removeClass(this.elementRef.nativeElement, status);\n      }\n    });\n  }\n\n  private generateClass(suffix: string): string {\n    return generateClassName(this.prefixCls, suffix);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzTimePickerPanelComponent } from './time-picker-panel.component';\nimport { NzTimePickerComponent } from './time-picker.component';\n\n@NgModule({\n  imports: [NzTimePickerComponent, NzTimePickerPanelComponent],\n  exports: [NzTimePickerPanelComponent, NzTimePickerComponent]\n})\nexport class NzTimePickerModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './time-picker.component';\nexport * from './time-picker.module';\nexport * from './time-picker-panel.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i4"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;AAGG;MAMU,UAAU,CAAA;IACrB,eAAe,GAAuB,SAAS;AACvC,IAAA,MAAM;IACN,WAAW,GAAY,KAAK;AAC5B,IAAA,iBAAiB;AACjB,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAQ;IAEtC,UAAU,CAAC,KAAa,EAAE,QAAiB,EAAA;QACzC,IAAI,CAAC,QAAQ,EAAE;YACb,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE;QACf;AACA,QAAA,OAAO,IAAI;IACb;IAEA,QAAQ,CAAC,KAAa,EAAE,QAAiB,EAAA;QACvC,IAAI,CAAC,QAAQ,EAAE;YACb,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;oBACjD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAE,KAAgB,GAAG,EAAE,CAAC;gBAC7C;qBAAO,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;AACxD,oBAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxB;qBAAO;AACL,oBAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC5B;YACF;iBAAO;AACL,gBAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC5B;YACA,IAAI,CAAC,MAAM,EAAE;QACf;AACA,QAAA,OAAO,IAAI;IACb;IAEA,UAAU,CAAC,KAAa,EAAE,QAAiB,EAAA;QACzC,IAAI,CAAC,QAAQ,EAAE;YACb,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE;QACf;AACA,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,aAAa,CAAC,KAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;IACrC;IAEA,QAAQ,CAAC,KAAuB,EAAE,UAAoB,EAAA;AACpD,QAAA,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;AACxB,YAAA,IAAI,CAAC,WAAW,GAAG,UAAqB;QAC1C;AACA,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;AACxB,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,YAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxB,IAAI,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AAC5C,oBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,GAAG,IAAI,GAAG,IAAI;gBACvD;YACF;iBAAO;gBACL,IAAI,CAAC,MAAM,EAAE;YACf;QACF;AAEA,QAAA,OAAO,IAAI;IACb;IAEA,SAAS,GAAA;AACP,QAAA,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC;QAC7C;IACF;IAEA,KAAK,GAAA;QACH,IAAI,CAAC,MAAM,EAAE;QACb,IAAI,CAAC,MAAM,EAAE;IACf;AAEA,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpF;IAEQ,MAAM,GAAA;AACZ,QAAA,IAAI,CAAC,MAAM,GAAG,SAAS;AACvB,QAAA,IAAI,CAAC,eAAe,GAAG,SAAS;IAClC;IAEQ,MAAM,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,IAAI,CAAC,MAAM,GAAG,SAAS;QACzB;aAAO;AACL,YAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxB,IAAI,CAAC,KAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAM,CAAC;YACnC;AAEA,YAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC1B,IAAI,CAAC,KAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAQ,CAAC;YACvC;AAEA,YAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC1B,IAAI,CAAC,KAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAQ,CAAC;YACvC;AAEA,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,gBAAA,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,IAAI,IAAI,CAAC,KAAM,GAAG,EAAE,EAAE;oBACrD,IAAI,CAAC,KAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAM,GAAG,EAAE,CAAC;gBACxC;AACA,gBAAA,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,IAAI,IAAI,CAAC,KAAM,IAAI,EAAE,EAAE;oBACtD,IAAI,CAAC,KAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAM,GAAG,EAAE,CAAC;gBACxC;YACF;QACF;QACA,IAAI,CAAC,OAAO,EAAE;IAChB;IAEA,OAAO,GAAA;QACL,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAChC;AAEA;;;;AAIG;AACH,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAM,CAAC,GAAG,IAAI,CAAC,KAAK;IACpG;AAEA,IAAA,kBAAkB,CAAC,KAAyB,EAAA;QAC1C,IAAI,KAAM,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,eAAe,EAAE;AACjD,YAAA,IAAI,CAAC,eAAe,GAAG,KAAM,CAAC,WAAW,EAAE;YAC3C,IAAI,CAAC,MAAM,EAAE;QACf;IACF;AAEA,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,iBAAiB;IAC9C;AAEA,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE;IAC/B;AAEA,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE;IACjC;AAEA,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE;IACjC;AAEA,IAAA,mBAAmB,CAAC,KAAW,EAAA;AAC7B,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK;AAC9B,QAAA,OAAO,IAAI;IACb;AAEQ,IAAA,iBAAiB,CAAC,KAAa,EAAA;AACrC,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe;QAC5C,IAAI,eAAe,KAAK,IAAI,IAAI,KAAK,GAAG,EAAE,EAAE;YAC1C,OAAO,KAAK,GAAG,EAAE;QACnB;QACA,IAAI,eAAe,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE;AAC3C,YAAA,OAAO,EAAE;QACX;AACA,QAAA,OAAO,KAAK;IACd;AACD;;ACnLD;;;AAGG;AAmCH,SAAS,SAAS,CAAC,MAAc,EAAE,OAAe,CAAC,EAAE,QAAgB,CAAC,EAAA;AACpE,IAAA,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC;AACtF;MAsHa,0BAA0B,CAAA;AACrC,IAAA,UAAU,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC9B,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,IAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC/B,IAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,IAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAE/B,WAAW,GAAG,CAAC;IACf,aAAa,GAAG,CAAC;IACjB,aAAa,GAAG,CAAC;AACjB,IAAA,QAAQ;AACR,IAAA,OAAO;IACP,OAAO,GAAG,UAAU;AACpB,IAAA,cAAc,GAAoB,MAAM,EAAE;AAC1C,IAAA,gBAAgB,GAAgC,MAAM,EAAE;AACxD,IAAA,gBAAgB,GAAgD,MAAM,EAAE;IACxE,WAAW,GAAG,IAAI;AAC1B,IAAA,IAAI,GAAG,IAAI,UAAU,EAAE;IACvB,WAAW,GAAG,IAAI;IAClB,aAAa,GAAG,IAAI;IACpB,aAAa,GAAG,IAAI;IACpB,aAAa,GAAG,KAAK;IACrB,cAAc,GAAG,CAAC;AAClB,IAAA,SAAS;AACT,IAAA,WAAW;AACX,IAAA,WAAW;AACX,IAAA,eAAe;AAGf,IAAA,eAAe;AACoC,IAAA,iBAAiB;AACjB,IAAA,iBAAiB;AACb,IAAA,qBAAqB;AAEpC,IAAA,cAAc,GAAY,KAAK,CAAC;AAC/D,IAAA,OAAO;IACP,qBAAqB,GAAG,KAAK;AAC7B,IAAA,WAAW;AACX,IAAA,SAAS;AACT,IAAA,QAAQ;AACR,IAAA,aAAa;IACkB,YAAY,GAAG,KAAK;AACnD,IAAA,kBAAkB;AAER,IAAA,UAAU,GAAG,IAAI,YAAY,EAAQ;IAExD,IACI,YAAY,CAAC,KAAc,EAAA;AAC7B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;IAC1B;AAEA,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,WAAW;IACzB;IAEA,IACI,eAAe,CAAC,KAAmC,EAAA;AACrD,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK;AAC3B,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,UAAU,EAAE;QACnB;IACF;AAEA,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,cAAc;IAC5B;IAEA,IACI,iBAAiB,CAAC,KAA+C,EAAA;AACnE,QAAA,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;AACnB,YAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK;YAC7B,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;AAEA,IAAA,IAAI,iBAAiB,GAAA;QACnB,OAAO,IAAI,CAAC,gBAAgB;IAC9B;IAEA,IACI,iBAAiB,CAAC,KAA+D,EAAA;AACnF,QAAA,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;AACnB,YAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK;YAC7B,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;AAEA,IAAA,IAAI,iBAAiB,GAAA;QACnB,OAAO,IAAI,CAAC,gBAAgB;IAC9B;IAEA,IACI,MAAM,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;AACnB,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,YAAA,IAAI,CAAC,cAAc,GAAG,CAAC;AACvB,YAAA,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC;AAC9B,YAAA,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YACvD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YACrC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;AACrC,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,IAAI,CAAC,cAAc,EAAE;YACvB;AACA,YAAA,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,IAAI,CAAC,cAAc,EAAE;YACvB;AACA,YAAA,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,IAAI,CAAC,cAAc,EAAE;YACvB;AACA,YAAA,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,YAAY,EAAE;YACrB;QACF;IACF;AAEA,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;IACrB;IAEA,IACI,UAAU,CAAC,KAAa,EAAA;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,IAAI,CAAC;QAC7B,IAAI,CAAC,UAAU,EAAE;IACnB;AAEA,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW;IACzB;IAEA,IACI,YAAY,CAAC,KAAa,EAAA;AAC5B,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,IAAI,CAAC;QAC/B,IAAI,CAAC,YAAY,EAAE;IACrB;AAEA,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa;IAC3B;IAEA,IACI,YAAY,CAAC,KAAa,EAAA;AAC5B,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,IAAI,CAAC;QAC/B,IAAI,CAAC,YAAY,EAAE;IACrB;AAEA,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa;IAC3B;IAEA,UAAU,GAAA;QACR,IAAI,UAAU,GAAG,EAAE;AACnB,QAAA,IAAI,aAAa,GAAG,IAAI,CAAC,eAAe,IAAI;QAC5C,IAAI,UAAU,GAAG,CAAC;AAClB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,UAAU,GAAG,EAAE;YACf,IAAI,aAAa,EAAE;gBACjB,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,KAAK,IAAI,EAAE;AACtC;;;AAGG;AACH,oBAAA,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;gBACpF;qBAAO;AACL;;;AAGG;AACH,oBAAA,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;gBACxG;YACF;YACA,UAAU,GAAG,CAAC;QAChB;QACA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK;AAC5E,YAAA,KAAK,EAAE,CAAC;AACR,YAAA,QAAQ,EAAE,CAAC,CAAC,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5D,SAAA,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,EAAE;YAC/E,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;AAChC,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;AAC/B,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;QACvB;IACF;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK;AAC5D,YAAA,KAAK,EAAE,CAAC;YACR,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAChG,SAAA,CAAC,CAAC;IACL;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK;AAC5D,YAAA,KAAK,EAAE,CAAC;AACR,YAAA,QAAQ,EACN,CAAC,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5G,SAAA,CAAC,CAAC;IACL;IAEA,YAAY,GAAA;QACV,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;QAChD,IAAI,CAAC,eAAe,GAAG;AACrB,YAAA;AACE,gBAAA,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG;AAC/B,aAAA;AACD,YAAA;AACE,gBAAA,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG;AAC/B;SACF;IACH;IAEA,UAAU,GAAA;QACR,IAAI,CAAC,UAAU,EAAE;QACjB,IAAI,CAAC,YAAY,EAAE;QACnB,IAAI,CAAC,YAAY,EAAE;QACnB,IAAI,CAAC,YAAY,EAAE;IACrB;IAEA,YAAY,CAAC,QAAgB,CAAC,EAAA;QAC5B,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,eAAe,EAAE;AAC5C,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,SAAU,EAAE,KAAK,EAAE,MAAM,CAAC;QAChG;QACA,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAChD,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,OAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;QAClG;QACA,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAChD,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,OAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;QAClG;QACA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,qBAAqB,EAAE;AACnD,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe;AAC/C,YAAA,MAAM,KAAK,GAAG,aAAa,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC;AAC5C,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC;QAC1F;IACF;AAEA,IAAA,UAAU,CAAC,IAA0C,EAAA;AACnD,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC;AAC7C,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,YAAY,EAAE;QACrB;QACA,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YAClD,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;AAEA,IAAA,YAAY,CAAC,MAA4C,EAAA;AACvD,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC;AACnD,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;AAEA,IAAA,YAAY,CAAC,MAA4C,EAAA;AACvD,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC;IACrD;AAEA,IAAA,aAAa,CAAC,KAAuC,EAAA;QACnD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC;AACzC,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,UAAU,EAAE;QACnB;AACA,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,YAAY,EAAE;QACrB;AACA,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;IAEA,gBAAgB,CAAC,QAAqB,EAAE,KAAa,EAAE,QAAA,GAAmB,CAAC,EAAE,IAAsB,EAAA;QACjG,IAAI,CAAC,QAAQ,EAAE;YACb;QACF;QACA,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC;AACnD,QAAA,MAAM,aAAa,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAgB;QAC5F,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC5D;IAEA,cAAc,CAAC,KAAa,EAAE,IAAsB,EAAA;AAClD,QAAA,IAAI,IAAI,KAAK,MAAM,EAAE;AACnB,YAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACxG;AAAO,aAAA,IAAI,IAAI,KAAK,QAAQ,EAAE;AAC5B,YAAA,OAAO,IAAI,CAAC,SAAS,CACnB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAM,CAAC,EAC1C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CACxD;QACH;AAAO,aAAA,IAAI,IAAI,KAAK,QAAQ,EAAE;;AAE5B,YAAA,OAAO,IAAI,CAAC,SAAS,CACnB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAQ,CAAC,EAC9D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CACxD;QACH;aAAO;;YAEL,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACxF;IACF;AAEA,IAAA,QAAQ,CAAC,OAAoB,EAAE,EAAU,EAAE,QAAgB,EAAA;AACzD,QAAA,IAAI,QAAQ,IAAI,CAAC,EAAE;AACjB,YAAA,OAAO,CAAC,SAAS,GAAG,EAAE;YACtB;QACF;AACA,QAAA,MAAM,UAAU,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS;QACzC,MAAM,OAAO,GAAG,CAAC,UAAU,GAAG,QAAQ,IAAI,EAAE;AAE5C,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAK;YACjC,qBAAqB,CAAC,MAAK;gBACzB,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO;AAC/C,gBAAA,IAAI,OAAO,CAAC,SAAS,KAAK,EAAE,EAAE;oBAC5B;gBACF;gBACA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,GAAG,EAAE,CAAC;AAC3C,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;IACJ;IAEA,SAAS,CAAC,KAA2B,EAAE,KAAa,EAAA;QAClD,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,qBAAqB,EAAE;AAC/C,YAAA,OAAO,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E;aAAO;AACL,YAAA,OAAO,KAAK;QACd;IACF;IAEU,OAAO,GAAA;AACf,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAM,CAAC;QACjC;IACF;IAEU,OAAO,GAAA;AACf,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,EAAE;QAChB;IACF;AAEA,IAAA,YAAY,CAAC,KAAW,EAAA;AACtB,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE;AAC7B,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE;AACjC,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE;AACjC,QAAA,QACE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AACnD,YAAA,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3D,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IAEvE;IAEA,UAAU,GAAA;AACR,QAAA,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE;AACtB,QAAA,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;YAC1B;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,OAAO,EAAE;AACd,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;IACxB;IAEA,SAAS,GAAA;AACP,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;QACtD,IAAI,CAAC,OAAO,EAAE;AACd,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;IACxB;AAEA,IAAA,cAAc,CAAC,IAA0C,EAAA;QACvD,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS;IAC3C;AAEA,IAAA,gBAAgB,CAAC,MAA4C,EAAA;QAC3D,OAAO,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO;IAC3C;AAEA,IAAA,gBAAgB,CAAC,MAA4C,EAAA;QAC3D,OAAO,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO;IAC3C;AAEA,IAAA,iBAAiB,CAAC,KAAuC,EAAA;AACvD,QAAA,OAAO,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,eAAe;IAChE;IAEA,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;YACzE,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;AACxB,QAAA,CAAC,CAAC;QACF,IAAI,CAAC,UAAU,EAAE;AAEjB,QAAA,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAK;YACjC,UAAU,CAAC,MAAK;gBACd,IAAI,CAAC,YAAY,EAAE;AACnB,gBAAA,IAAI,CAAC,aAAa,GAAG,IAAI;AAC3B,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;QAEF,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,WAAW;AAC/D,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,KAAK,IAAG;YACjB,KAAK,CAAC,cAAc,EAAE;AACxB,QAAA,CAAC,CAAC;IACN;AAEA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,GAAG,OAAO;QACpD,IAAI,CAAC,YAAY,EAAE,aAAa,IAAI,YAAY,EAAE,YAAY,EAAE;YAC9D,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,cAAc,EAAE;QACvB;AACA,QAAA,IAAI,kBAAkB,EAAE,YAAY,EAAE;AACpC,YAAA,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,IAAI,IAAI,IAAI,EAAE,CAAC;QACtE;IACF;AAEA,IAAA,UAAU,CAAC,KAAW,EAAA;QACpB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,UAAU,EAAE;AAEjB,QAAA,IAAI,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE;AAC/B,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;QACxB;;AAEA,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;IACzB;AAEA,IAAA,gBAAgB,CAAC,EAAyB,EAAA;AACxC,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;IACpB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,OAAO,GAAG,EAAE;IACnB;uGAhbW,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA1B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,CAAA,gBAAA,EAAA,gBAAA,EAkCjB,gBAAgB,CAAA,EAAA,OAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,CAAA,cAAA,EAAA,cAAA,EAOhB,gBAAgB,CAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,CAAA,cAAA,EAAA,cAAA,EAKhB,gBAAgB,CAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAyEhB,eAAe,CAAA,EAAA,YAAA,EAAA,CAAA,cAAA,EAAA,cAAA,EAUf,eAAe,CAAA,EAAA,YAAA,EAAA,CAAA,cAAA,EAAA,cAAA,EAUf,eAAe,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sCAAA,EAAA,yCAAA,EAAA,sCAAA,EAAA,yCAAA,EAAA,sCAAA,EAAA,yCAAA,EAAA,sCAAA,EAAA,yCAAA,EAAA,oCAAA,EAAA,oBAAA,EAAA,kDAAA,EAAA,iBAAA,EAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,EAAA,SAAA,EApJxB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B,CAAC;AACzD,gBAAA,KAAK,EAAE;AACR;SACF,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,uBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA1GS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0FT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAiBsB,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,cAAc,mqBAA3D,WAAW,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAEV,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAlHtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0FT,EAAA,CAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,uBAAuB;AAC9B,wBAAA,wCAAwC,EAAE,CAAA,uCAAA,CAAyC;AACnF,wBAAA,wCAAwC,EAAE,CAAA,uCAAA,CAAyC;AACnF,wBAAA,wCAAwC,EAAE,CAAA,uCAAA,CAAyC;AACnF,wBAAA,wCAAwC,EAAE,CAAA,uCAAA,CAAyC;AACnF,wBAAA,sCAAsC,EAAE,CAAA,kBAAA,CAAoB;AAC5D,wBAAA,oDAAoD,EAAE,CAAA,eAAA;AACvD,qBAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,gCAAgC,CAAC;AACzD,4BAAA,KAAK,EAAE;AACR;AACF,qBAAA;oBACD,OAAO,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc;AACtE,iBAAA;;sBA6BE,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,iBAAiB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;sBAE9C,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;sBAChD,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,mBAAmB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;sBAChD,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;sBAEpD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC;;sBAEA;;sBAEA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBASrC;;sBAYA;;sBAYA;;sBAYA;;sBA4BA,KAAK;uBAAC,EAAE,SAAS,EAAE,eAAe,EAAE;;sBAUpC,KAAK;uBAAC,EAAE,SAAS,EAAE,eAAe,EAAE;;sBAUpC,KAAK;uBAAC,EAAE,SAAS,EAAE,eAAe,EAAE;;;ACpOvC,MAAM,qBAAqB,GAAgB,YAAY;IA+H1C,qBAAqB,GAAA,CAAA,MAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAArB,qBAAqB,CAAA;;;AAwCtB,YAAA,qBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AACZ,YAAA,sBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AACZ,YAAA,wBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AACZ,YAAA,wBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AACZ,YAAA,uBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AACZ,YAAA,qBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AACZ,YAAA,oBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AACZ,YAAA,4BAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AAOZ,YAAA,oBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AAEmB,YAAA,wBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AAC3C,YAAA,wBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AAKmB,YAAA,wBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;AAG3C,YAAA,sBAAA,GAAA,CAAA,UAAU,EAAE,CAAA;YAzBC,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,qBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,WAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,WAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,SAAS,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAT,SAAS,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,uBAAA,EAAA,4BAAA,CAAA;YACT,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,YAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,UAAU,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAV,UAAU,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,wBAAA,EAAA,6BAAA,CAAA;YACV,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAZ,YAAY,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,0BAAA,EAAA,+BAAA,CAAA;YACZ,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAZ,YAAY,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,0BAAA,EAAA,+BAAA,CAAA;YACZ,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,uBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,aAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,WAAW,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAX,WAAW,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,yBAAA,EAAA,8BAAA,CAAA;YACX,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,qBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,WAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,WAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,SAAS,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAT,SAAS,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,uBAAA,EAAA,4BAAA,CAAA;YACT,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,UAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,QAAQ,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAR,QAAQ,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,sBAAA,EAAA,2BAAA,CAAA;YACR,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,4BAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,kBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,gBAAgB,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAhB,gBAAgB,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,8BAAA,EAAA,mCAAA,CAAA;YAOhB,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,UAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,QAAQ,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAR,QAAQ,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,sBAAA,EAAA,2BAAA,CAAA;YAEuB,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAZ,YAAY,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,0BAAA,EAAA,+BAAA,CAAA;YAC3C,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAZ,YAAY,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,0BAAA,EAAA,+BAAA,CAAA;YAKmB,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAZ,YAAY,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,0BAAA,EAAA,+BAAA,CAAA;YAG3C,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,YAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,UAAU,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAV,UAAU,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,wBAAA,EAAA,6BAAA,CAAA;;;QAhExB,aAAa,GAAgB,qBAAqB;AAEpD,QAAA,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;AACtC,QAAA,IAAI,GAAG,MAAM,CAAC,aAAa,CAAC;AAC9B,QAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAC5B,QAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC/B,QAAA,UAAU,GAAG,MAAM,CAAC,iBAAiB,CAAC;AACtC,QAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC3B,QAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAEpB,QAAA,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,WAAW;AAEnD,QAAA,SAAS;AACT,QAAA,UAAU;QACV,sBAAsB,GAAY,IAAI;QAE9C,MAAM,GAAG,KAAK;QACd,OAAO,GAAG,KAAK;QACf,UAAU,GAAW,EAAE;QACvB,KAAK,GAAgB,IAAI;QACzB,QAAQ,GAAgB,IAAI;AAC5B,QAAA,SAAS;AACT,QAAA,gBAAgB,GAAmC,EAAE,CAAC,SAAS,CAAC;;QAGhE,SAAS,GAAW,YAAY;QAChC,SAAS,GAAqB,EAAE;QAChC,MAAM,GAAqB,EAAE;QAC7B,WAAW,GAAY,KAAK;AAE5B,QAAA,IAAI,MAAM,GAAA;YACR,OAAO,IAAI,CAAC,UAAU;QACxB;AAE6C,QAAA,QAAQ;QAC5C,IAAI,GAAkB,IAAI;QAC1B,MAAM,GAAkB,SAAS;QACjC,QAAQ,GAAa,EAAE;QACT,SAAS,GAAA,iBAAA,CAAA,IAAA,EAAA,uBAAA,EAA0B,SAAS,CAAA;QAC5C,UAAU,IAAA,iBAAA,CAAA,IAAA,EAAA,4BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,wBAAA,EAAW,CAAC,CAAA;QACtB,YAAY,IAAA,iBAAA,CAAA,IAAA,EAAA,6BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,EAAW,CAAC,CAAA;QACxB,YAAY,IAAA,iBAAA,CAAA,IAAA,EAAA,+BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,EAAW,CAAC,CAAA;QACxB,WAAW,IAAA,iBAAA,CAAA,IAAA,EAAA,+BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,yBAAA,EAAW,OAAO,CAAA;QAC7B,SAAS,IAAA,iBAAA,CAAA,IAAA,EAAA,8BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,uBAAA,EAAW,EAAE,CAAA;QACtB,QAAQ,IAAA,iBAAA,CAAA,IAAA,EAAA,4BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,EAAW,EAAE,CAAA;QACrB,gBAAgB,IAAA,iBAAA,CAAA,IAAA,EAAA,2BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,8BAAA,EAAW,EAAE,CAAA;QAC3C,aAAa,IAAA,iBAAA,CAAA,IAAA,EAAA,mCAAA,CAAA,EAAG,EAAE;AAClB,QAAA,OAAO;AACP,QAAA,kBAAkB;AAClB,QAAA,eAAe;AACf,QAAA,iBAAiB;AACjB,QAAA,iBAAiB;QACH,QAAQ,GAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,EAAW,UAAU,CAAA;QAC3C,MAAM,IAAA,iBAAA,CAAA,IAAA,EAAA,2BAAA,CAAA,EAAG,KAAK;QAC+B,YAAY,GAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,EAAY,KAAK,CAAA;QAC5D,YAAY,IAAA,iBAAA,CAAA,IAAA,EAAA,+BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,EAAoC,cAAc,CAAA;AAElE,QAAA,YAAY,IAAA,iBAAA,CAAA,IAAA,EAAA,+BAAA,CAAA,EAAG,IAAI,YAAY,EAAW;QAErB,qBAAqB,GAAG,KAAK;QACf,YAAY,GAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,EAAY,IAAI,CAAA;QAC1C,UAAU,IAAA,iBAAA,CAAA,IAAA,EAAA,+BAAA,CAAA,EAAG,KAAK;QAClB,WAAW,GAAG,KAAK;QACpC,UAAU,GAAA,iBAAA,CAAA,IAAA,EAAA,wBAAA,EAAG,KAAK,CAAA;QACD,eAAe,IAAA,iBAAA,CAAA,IAAA,EAAA,6BAAA,CAAA,EAAY,KAAK;QAEvD,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACnD,WAAW,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAClE,YAAY,GAAG,KAAK;QAEnB,QAAQ,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAA8B;QAC9C,aAAa,GAAG,KAAK,CAAC,KAAK,0DAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAC7D,QAAA,WAAW,GAAG,KAAK,CAAc,YAAY,uDAAC;AAEpC,QAAA,eAAe,GAAG,YAAY,CAAC,MAAM,wBAAwB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,2DAAC;AAClF,QAAA,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,GAAG,6BAA6B,CAAC,4DAAC;QAE7F,wBAAwB,GAAG,mBAAmB,EAAE;QAChD,wBAAwB,GAAG,mBAAmB,EAAE;AAEnE,QAAA,SAAS,CAAC,KAAkB,EAAA;AAC1B,YAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;AAE1B,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,gBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5B;AAEA,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,IAAI,CAAC,UAAU,EAAE;YACnB;QACF;AAEA,QAAA,QAAQ,CAAC,KAAkB,EAAE,YAAA,GAAwB,KAAK,EAAA;YACxD,IAAI,YAAY,EAAE;AAChB,gBAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAM,CAAC,GAAG,IAAI;YAC1D;AACA,YAAA,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAM,CAAC,GAAG,IAAI;AACrD,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC;AAC9D,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;QACzB;QAEA,IAAI,GAAA;YACF,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE;gBAClC;YACF;YACA,IAAI,CAAC,KAAK,EAAE;AACZ,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;YAClB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACrC;QAEA,KAAK,GAAA;AACH,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;YACvB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACrC;QAEA,eAAe,GAAA;YACb,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACnC,gBAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,oBAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC;gBACnF;qBAAO;AACL,oBAAA,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC;gBACzE;YACF;QACF;AAEA,QAAA,eAAe,CAAC,KAAiB,EAAA;YAC/B,KAAK,CAAC,eAAe,EAAE;AACvB,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QACtB;AAEA,QAAA,cAAc,CAAC,KAAiB,EAAA;AAC9B,YAAA,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC;AACrC,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBACnD,IAAI,CAAC,uBAAuB,EAAE;YAChC;QACF;AAEA,QAAA,OAAO,CAAC,KAAc,EAAA;AACpB,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;YACpB,IAAI,CAAC,KAAK,EAAE;gBACV,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACnC,IAAI,CAAC,uBAAuB,EAAE;gBAChC;qBAAO;AACL,oBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;oBAC5B,IAAI,CAAC,KAAK,EAAE;gBACd;YACF;QACF;QAEA,KAAK,GAAA;AACH,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;AAC/B,gBAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE;YACrC;QACF;QAEA,IAAI,GAAA;AACF,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;AAC/B,gBAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE;YACpC;QACF;QAEA,UAAU,GAAA;AACR,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC9B;QAEA,YAAY,GAAA;YACV,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACtC,IAAI,CAAC,uBAAuB,EAAE;YAChC;AAAO,iBAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBACvB,IAAI,CAAC,IAAI,EAAE;YACb;QACF;AAEA,QAAA,aAAa,CAAC,GAAW,EAAA;AACvB,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,aAAa,KAAK,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;gBACpF,IAAI,CAAC,IAAI,EAAE;AACX,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;YAC3B;QACF;AAEA,QAAA,kBAAkB,CAAC,KAAW,EAAA;AAC5B,YAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACpB,IAAI,CAAC,KAAK,EAAE;QACd;QAEA,UAAU,GAAA;AACR,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI;AACxB,YAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE;QACpC;QAEA,uBAAuB,GAAA;YACrB,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;AAC9C,gBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;AAC1B,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;YAC3B;iBAAO;AACL,gBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC9B;YACA,IAAI,CAAC,KAAK,EAAE;QACd;AAEA,QAAA,gBAAgB,CAAC,QAAwC,EAAA;YACvD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;QACnD;AAEU,QAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;AAClC,YAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;AACrB,gBAAA,OAAO,IAAI,CAAC,QAAQ,EAAE;YACxB;AACA,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,gBAAA,OAAO,IAAI,CAAC,WAAW,EAAE;YAC3B;AACA,YAAA,OAAO,IAAI,CAAC,IAAI,EAAE;AACpB,QAAA,CAAC,qDAAC;AAEiB,QAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,UAAU,wDAAC;AAE5F,QAAA,uBAAuB,GAAG,QAAQ,CAAC,MAAK;YAChD,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE;AACnD,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;YAEtB,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,QAAQ,EAAE;gBAC/C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAC;YACrE;iBAAO,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,KAAK,EAAE;gBACnD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC;YAClE;iBAAO,IAAI,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,QAAQ,EAAE;gBACpD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;YACtE;iBAAO,IAAI,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,KAAK,EAAE;gBACjD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC;YACnE;AAEA,YAAA,IAAI,GAAG,KAAK,KAAK,EAAE;gBACjB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;YACpD;AAEA,YAAA,OAAO,SAAS;AAClB,QAAA,CAAC,mEAAC;AAEM,QAAA,IAAI,GAAG,MAAM,CAAgB,IAAI,CAAC,MAAM,gDAAC;AAChC,QAAA,OAAO,GAAG,MAAM,CAAwB,IAAI,CAAC,SAAS,mDAAC;QAChE,WAAW,GAAG,MAAM,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/D,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACrE,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAEjF,QAAQ,GAAA;YACN,IAAI,CAAC,mBAAmB,EAAE;AACvB,iBAAA,IAAI,CACH,oBAAoB,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,WAAW,CAAC,EACpG,cAAc,CAAC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,EAChG,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,EAC/F,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;iBAEpC,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,KAAI;AACrC,gBAAA,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC;AAC3C,YAAA,CAAC,CAAC;AAEJ,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;YACtD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACvG;AAEA,QAAA,WAAW,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAiB,EAAA;AACzG,YAAA,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,aAAa,IAAI,YAAY,CAAC,YAAY,IAAI,CAAC,QAAQ,EAAE;AACzF,gBAAA,IAAI,CAAC,QAAQ,GAAG,WAAW;YAC7B;YACA,IAAI,UAAU,EAAE;AACd,gBAAA,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY;AACrC,gBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAiC;gBAC7D,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC;gBACnD;qBAAO;oBACL,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC;gBAClD;YACF;YACA,IAAI,WAAW,EAAE;gBACf,IAAI,CAAC,eAAe,EAAE;YACxB;YACA,IAAI,QAAQ,EAAE;gBACZ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC;YACvD;YACA,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;YACpC;YACA,IAAI,SAAS,EAAE;gBACb,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC;YAC1C;QACF;AAEA,QAAA,eAAe,CAAC,GAAW,EAAA;AACzB,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI;AACnE,YAAA,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;AAClB,gBAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;YACzB;QACF;QAEA,eAAe,GAAA;AACb,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;YAClB,IAAI,CAAC,eAAe,EAAE;QACxB;AAEA,QAAA,UAAU,CAAC,IAA6B,EAAA;AACtC,YAAA,IAAI,MAAmB;AAEvB,YAAA,IAAI,IAAI,YAAY,IAAI,EAAE;gBACxB,MAAM,GAAG,IAAI;YACf;AAAO,iBAAA,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;gBACtB,MAAM,GAAG,IAAI;YACf;iBAAO;gBACL,IAAI,CAAC,oEAAoE,CAAC;AAC1E,gBAAA,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;YACzB;AAEA,YAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;QAC7B;AAEA,QAAA,gBAAgB,CAAC,EAA+B,EAAA;AAC9C,YAAA,IAAI,CAAC,SAAS,GAAG,EAAE;QACrB;AAEA,QAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,YAAA,IAAI,CAAC,UAAU,GAAG,EAAE;QACtB;AAEA,QAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,YAAA,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU;AAChF,YAAA,IAAI,CAAC,sBAAsB,GAAG,KAAK;AACnC,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;QACzB;AAEQ,QAAA,cAAc,CAAC,KAAkB,EAAA;YACvC,IAAI,CAAC,KAAK,EAAE;AACV,gBAAA,OAAO,IAAI;YACb;AAEA,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,IAAI;AAC9C,YAAA,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;AAClE,YAAA,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;YAEtF,OAAO,EACL,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;AACzC,gBAAA,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;gBAC7C,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAC9C;QACH;QAEQ,eAAe,CAAC,MAAwB,EAAE,WAAoB,EAAA;;AAEpE,YAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACpB,YAAA,IAAI,CAAC,WAAW,GAAG,WAAW;AAC9B,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;;AAEvB,YAAA,IAAI,CAAC,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC;AACzE,YAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,IAAG;AAC3C,gBAAA,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;AAC1B,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;gBAC/D;qBAAO;AACL,oBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;gBAClE;AACF,YAAA,CAAC,CAAC;QACJ;AAEQ,QAAA,aAAa,CAAC,MAAc,EAAA;YAClC,OAAO,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC;QAClD;2GA9WW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,QAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAwDZ,gBAAgB,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,qBAAA,EAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,UAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAKhB,gBAAgB,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAChB,gBAAgB,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAChB,gBAAgB,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAChB,gBAAgB,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAEhB,gBAAgB,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,QAAA,EAAA,EAAA,UAAA,EAAA,EAAA,wBAAA,EAAA,yBAAA,EAAA,wBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,YAAA,EAAA,0BAAA,EAAA,SAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,6BAAA,EAAA,iCAAA,EAAA,yBAAA,EAAA,6BAAA,EAAA,6BAAA,EAAA,iCAAA,EAAA,EAAA,cAAA,EAAA,YAAA,EAAA,EAAA,SAAA,EAxFzB;AACT,gBAAA;AACE,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,qBAAqB,CAAC;AACpD,oBAAA,KAAK,EAAE;AACR,iBAAA;AACD,gBAAA;AACE,oBAAA,OAAO,EAAE,0BAA0B;AACnC,oBAAA,QAAQ,EAAE;AACX;aACF,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,cAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAAA,IAAA,CAAA,2BAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA5GS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoFT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EA2BC,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,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,UAAA,EAAA,IAAA,EACX,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,+BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,+BAAA,EAAA,wBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,+BAA+B,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC/B,0BAA0B,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,SAAA,EAAA,uBAAA,EAAA,aAAA,EAAA,WAAA,EAAA,UAAA,EAAA,eAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAC1B,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,MAAA,EAAA,CAAA,sBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,aAAa,qnCAPb,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;;2FAUA,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBA7HjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoFT,EAAA,CAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,YAAY;AACnB,wBAAA,0BAA0B,EAAE,CAAA,uBAAA,CAAyB;AACrD,wBAAA,0BAA0B,EAAE,CAAA,uBAAA,CAAyB;AACrD,wBAAA,6BAA6B,EAAE,CAAA,UAAA,CAAY;AAC3C,wBAAA,4BAA4B,EAAE,CAAA,OAAA,CAAS;AACvC,wBAAA,wBAAwB,EAAE,CAAA,eAAA,CAAiB;AAC3C,wBAAA,+BAA+B,EAAE,CAAA,+BAAA,CAAiC;AAClE,wBAAA,2BAA2B,EAAE,CAAA,2BAAA,CAA6B;AAC1D,wBAAA,+BAA+B,EAAE,CAAA,+BAAA,CAAiC;AAClE,wBAAA,SAAS,EAAE;AACZ,qBAAA;oBACD,cAAc,EAAE,CAAC,2BAA2B,CAAC;AAC7C,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,2BAA2B,CAAC;AACpD,4BAAA,KAAK,EAAE;AACR,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,0BAA0B;AACnC,4BAAA,QAAQ,EAAE;AACX;AACF,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,SAAS;wBACT,WAAW;wBACX,cAAc;wBACd,YAAY;wBACZ,+BAA+B;wBAC/B,0BAA0B;wBAC1B,eAAe;wBACf;AACD;AACF,iBAAA;;sBAqCE,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAC1C;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC;;sBAEA;;sBAEA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC;;sBACA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;;ACtQxC;;;AAGG;MAWU,kBAAkB,CAAA;uGAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAHnB,qBAAqB,EAAE,0BAA0B,CAAA,EAAA,OAAA,EAAA,CACjD,0BAA0B,EAAE,qBAAqB,CAAA,EAAA,CAAA;wGAEhD,kBAAkB,EAAA,OAAA,EAAA,CAHnB,qBAAqB,EAAE,0BAA0B,CAAA,EAAA,CAAA;;2FAGhD,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,qBAAqB,EAAE,0BAA0B,CAAC;AAC5D,oBAAA,OAAO,EAAE,CAAC,0BAA0B,EAAE,qBAAqB;AAC5D,iBAAA;;;ACbD;;;AAGG;;ACHH;;AAEG;;;;"}