{"version":3,"file":"ng-zorro-antd-mobile-range.mjs","sources":["../../components/range/range.component.ts","../../components/range/range.component.html","../../components/range/range.module.ts","../../components/range/ng-zorro-antd-mobile-range.ts"],"sourcesContent":["import { Component, OnInit, Input, Output, EventEmitter, ElementRef, HostBinding, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n  selector: 'Range , nzm-range',\n  templateUrl: './range.component.html',\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => RangeComponent),\n      multi: true\n    }\n  ]\n})\nexport class RangeComponent implements OnInit, ControlValueAccessor {\n  prefixCls: string = 'am-slider';\n  offset: any[] = [];\n  length: any[] = [];\n  upperBound: number;\n  lowerBound: number;\n  maxBound: number[];\n  minBound: number[];\n  sliderCls: object;\n  sliderLength: number;\n  sliderStart: number;\n\n  private _min = 0;\n  private _max = 100;\n  private _step = 1;\n  private _value;\n  private _defaultValue = [0, 0, 0];\n  private _disabled = false;\n  private _marks = {};\n  private _dots = false;\n  private _included = true;\n  private _count = 1;\n  private _allowCross = true;\n  private _pushable;\n  private _handleStyle = [];\n  private _trackStyle = [];\n  private _railStyle;\n  private _handleCount;\n\n  @Input()\n  get min(): number {\n    return this._min;\n  }\n  set min(value: number) {\n    this._min = value;\n  }\n  @Input()\n  get max(): number {\n    return this._max;\n  }\n  set max(value: number) {\n    this._max = value;\n  }\n  @Input()\n  get step(): number {\n    return this._step;\n  }\n  set step(value: number) {\n    this._step = value;\n  }\n  @Input()\n  get value(): [number] {\n    return this._value;\n  }\n  set value(value: [number]) {\n    this.setValue(value);\n  }\n  @Input()\n  set defaultValue(value) {\n    this._defaultValue = value;\n    this._value = this._defaultValue;\n    this.setValue(value);\n  }\n  @Input()\n  get disabled(): boolean {\n    return this._disabled;\n  }\n  set disabled(value: boolean) {\n    this._disabled = value;\n  }\n  @Input()\n  get marks(): object {\n    return this._marks;\n  }\n  set marks(value: object) {\n    this._marks = value;\n  }\n  @Input()\n  get dots(): boolean {\n    return this._dots;\n  }\n  set dots(value: boolean) {\n    this._dots = value;\n  }\n  @Input()\n  get included(): boolean {\n    return this._included;\n  }\n  set included(value: boolean) {\n    this._included = value;\n  }\n  @Input()\n  set count(value: number) {\n    this._count = value;\n  }\n  @Input()\n  set allowCross(value: boolean) {\n    this._allowCross = value;\n    this.setValueBound();\n  }\n  @Input()\n  set pushable(value: number) {\n    this._pushable = value;\n    if (this.verifyPushable()) {\n      this.setValueBound();\n    }\n  }\n  @Input()\n  get handleStyle(): any[] {\n    return this._handleStyle;\n  }\n  set handleStyle(value: any[]) {\n    this._handleStyle = value;\n  }\n  @Input()\n  get trackStyle(): any[] {\n    return this._trackStyle;\n  }\n  set trackStyle(value: any[]) {\n    this._trackStyle = value;\n  }\n  @Input()\n  get railStyle(): any[] {\n    return this._railStyle;\n  }\n  set railStyle(value: any[]) {\n    this._railStyle = value;\n  }\n  @Output()\n  onChange = new EventEmitter<any>();\n  @Output()\n  onAfterChange = new EventEmitter<any>();\n\n  @HostBinding('class.am-slider-wrapper')\n  amWrapper: boolean = true;\n\n  private _ngModelOnChange: (value: number[]) => void = () => {};\n  private _ngModelOnTouched: (value: number) => void = () => {};\n\n  constructor(private _elf: ElementRef) {}\n\n  setCls() {\n    this.sliderCls = {\n      [`${this.prefixCls}-disabled`]: this._disabled\n    };\n  }\n\n  initialValue() {\n    const minTemp = this._min;\n    if (!this.verifyPushable()) {\n      this._pushable = 0;\n      console.warn('pushable设置无效，已大于有些value间隔，被强制设为0');\n    }\n    const initialValue = Array.apply(null, Array(this._count + 1)).map(function() {\n      return minTemp;\n    });\n    this._defaultValue = this._defaultValue !== undefined ? this._defaultValue : initialValue;\n    this._value = this._value !== undefined ? this._value : this._defaultValue;\n    // 验证count值\n    this._count = this._value.length - 1;\n    // 验证value区间\n    for (let i = 0; i < this._value.length; i++) {\n      if (this._value[i] < this._min) {\n        this._value[i] = this._min;\n      } else if (this._value[i] > this._max) {\n        this._value[i] = this._max;\n      }\n    }\n    if (this._count > 0) {\n      this.upperBound = Math.max(...this._value);\n      this.lowerBound = Math.min(...this._value);\n    }\n  }\n\n  handleChange(e, i) {\n    let temp = [...this._value];\n    temp[i] = e;\n    this.upperBound = Math.max(...temp);\n    this.lowerBound = Math.min(...temp);\n    this.setTrackStyle(temp);\n    this.onChange.emit(temp);\n  }\n\n  handleAfterChange(e, i) {\n    setTimeout(() => {\n      this._value[i] = e;\n      this.upperBound = Math.max(...this._value);\n      this.lowerBound = Math.min(...this._value);\n      this.setTrackStyle(this._value);\n      this.onAfterChange.emit(this._value);\n      this._ngModelOnChange(this._value);\n      this.setValueBound();\n    }, 0);\n  }\n\n  setTrackStyle(value) {\n    if (value && value.length === this._count + 1) {\n      value.sort((a, b) => a - b);\n      for (let i = 0; i < this._count; i++) {\n        this.offset[i] = (value[i] * 100) / (this._max - this._min);\n        this.length[i] = ((value[i + 1] - value[i]) * 100) / (this._max - this._min);\n      }\n    }\n  }\n\n  setValueBound() {\n    this.maxBound = [];\n    this.minBound = [];\n    if ((this._allowCross && this._pushable === undefined) || this._handleCount <= 1) {\n      for (let i = 0; i < this._handleCount; i++) {\n        this.maxBound[i] = this._max;\n        this.minBound[i] = this._min;\n      }\n    } else {\n      if (this._pushable === undefined) {\n        this._pushable = 0;\n      }\n      for (let i = 0; i < this._handleCount; i++) {\n        this.maxBound[i] = i === this._handleCount - 1 ? this._max : this._value[i + 1] - this._pushable;\n        this.minBound[i] = i === 0 ? this._min : this._value[i - 1] + this._pushable;\n      }\n    }\n  }\n\n  verifyPushable() {\n    for (let i = 1; i < this._handleCount; i++) {\n      const diff = this._value[i] - this._value[i - 1];\n      if (diff < this._pushable) {\n        return false;\n      }\n    }\n    return true;\n  }\n\n  writeValue(value: number[]): void {\n    this.setValue(value, true);\n  }\n\n  setValue(value: number[], isWriteValue = false) {\n    if (value) {\n      this._value = value;\n      this._handleCount = this._value.length + 1;\n      this.initialValue();\n      this.setValueBound();\n      this.setCls();\n      this.setTrackStyle(this._value);\n      if (isWriteValue) {\n        this._ngModelOnChange(this._value);\n      } else {\n        this.onAfterChange.emit(this._value);\n      }\n    }\n  }\n\n  registerOnChange(fn: (value: number[]) => void): void {\n    this._ngModelOnChange = fn;\n  }\n\n  registerOnTouched(fn: (value: number) => void): void {\n    this._ngModelOnTouched = fn;\n  }\n\n  ngOnInit() {\n    this.initialValue();\n    this.setValueBound();\n    this._handleCount = this._count + 1;\n    this.setCls();\n    const sliderCoords = this._elf.nativeElement.getElementsByClassName('am-slider')[0].getBoundingClientRect();\n    this.sliderLength = sliderCoords.width;\n    this.sliderStart = sliderCoords.left;\n  }\n}\n","<div class=\"am-slider\" [ngClass]=\"sliderCls\">\n  <div class=\"am-slider-rail\" [ngStyle]=\"railStyle\"></div>\n  <SliderTrack\n    *ngFor=\"let off of offset; let i = index\"\n    [className]=\"'am-slider-track'\"\n    [included]=\"included\"\n    [style]=\"trackStyle[i]\"\n    [offset]=\"off\"\n    [length]=\"length[i]\"\n  ></SliderTrack>\n  <SliderSteps\n    [max]=\"max\"\n    [min]=\"min\"\n    [dots]=\"dots\"\n    [step]=\"step\"\n    [marks]=\"marks\"\n    [upperBound]=\"upperBound\"\n    [lowerBound]=\"lowerBound\"\n  ></SliderSteps>\n  <SliderHandle\n    *ngFor=\"let val of value; let i = index\"\n    [max]=\"max\"\n    [min]=\"min\"\n    [maxBound]=\"maxBound[i]\"\n    [minBound]=\"minBound[i]\"\n    [value]=\"val\"\n    [step]=\"step\"\n    [disabled]=\"disabled\"\n    [sliderLength]=\"sliderLength\"\n    [sliderStart]=\"sliderStart\"\n    [handleStyle]=\"handleStyle[i]\"\n    (onChange)=\"handleChange($event, i)\"\n    (onAfterChange)=\"handleAfterChange($event, i)\"\n  ></SliderHandle>\n  <SliderMarks\n    [max]=\"max\"\n    [min]=\"min\"\n    [marks]=\"marks\"\n    [upperBound]=\"upperBound\"\n    [lowerBound]=\"lowerBound\"\n  ></SliderMarks>\n</div>\n","import { NgModule } from '@angular/core';\nimport { RangeComponent } from './range.component';\nimport { CommonModule } from '@angular/common';\nimport { SliderModule } from 'ng-zorro-antd-mobile/slider';\n\n@NgModule({\n  exports: [RangeComponent],\n  declarations: [RangeComponent],\n  imports: [CommonModule, SliderModule]\n})\nexport class RangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;MAca,cAAc,CAAA;AA6BzB,IAAA,IACI,GAAG,GAAA;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;KAClB;IACD,IAAI,GAAG,CAAC,KAAa,EAAA;AACnB,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACnB;AACD,IAAA,IACI,GAAG,GAAA;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;KAClB;IACD,IAAI,GAAG,CAAC,KAAa,EAAA;AACnB,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACnB;AACD,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IACD,IAAI,IAAI,CAAC,KAAa,EAAA;AACpB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;AACD,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,IAAI,KAAK,CAAC,KAAe,EAAA;AACvB,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACtB;IACD,IACI,YAAY,CAAC,KAAK,EAAA;AACpB,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC3B,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;AACjC,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACtB;AACD,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;AACD,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,IAAI,KAAK,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACrB;AACD,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IACD,IAAI,IAAI,CAAC,KAAc,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;AACD,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IACD,IACI,KAAK,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACrB;IACD,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,aAAa,EAAE,CAAC;KACtB;IACD,IACI,QAAQ,CAAC,KAAa,EAAA;AACxB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;AACvB,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACzB,IAAI,CAAC,aAAa,EAAE,CAAC;AACtB,SAAA;KACF;AACD,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IACD,IAAI,WAAW,CAAC,KAAY,EAAA;AAC1B,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;KAC3B;AACD,IAAA,IACI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IACD,IAAI,UAAU,CAAC,KAAY,EAAA;AACzB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;KAC1B;AACD,IAAA,IACI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;IACD,IAAI,SAAS,CAAC,KAAY,EAAA;AACxB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KACzB;AAYD,IAAA,WAAA,CAAoB,IAAgB,EAAA;QAAhB,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;QA1IpC,IAAS,CAAA,SAAA,GAAW,WAAW,CAAC;QAChC,IAAM,CAAA,MAAA,GAAU,EAAE,CAAC;QACnB,IAAM,CAAA,MAAA,GAAU,EAAE,CAAC;QASX,IAAI,CAAA,IAAA,GAAG,CAAC,CAAC;QACT,IAAI,CAAA,IAAA,GAAG,GAAG,CAAC;QACX,IAAK,CAAA,KAAA,GAAG,CAAC,CAAC;QAEV,IAAa,CAAA,aAAA,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;QACZ,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;QACd,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC;QACjB,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;QACX,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC;QAEnB,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;QAClB,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;AAwGzB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;AAEnC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAO,CAAC;QAGxC,IAAS,CAAA,SAAA,GAAY,IAAI,CAAC;AAElB,QAAA,IAAA,CAAA,gBAAgB,GAA8B,MAAK,GAAG,CAAC;AACvD,QAAA,IAAA,CAAA,iBAAiB,GAA4B,MAAK,GAAG,CAAC;KAEtB;IAExC,MAAM,GAAA;QACJ,IAAI,CAAC,SAAS,GAAG;YACf,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,WAAW,GAAG,IAAI,CAAC,SAAS;SAC/C,CAAC;KACH;IAED,YAAY,GAAA;AACV,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE;AAC1B,YAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;AACnB,YAAA,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;AAClD,SAAA;AACD,QAAA,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAA;AACjE,YAAA,OAAO,OAAO,CAAC;AACjB,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,KAAK,SAAS,GAAG,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAC1F,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;;QAE3E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;;AAErC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3C,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE;gBAC9B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;AAC5B,aAAA;iBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE;gBACrC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;AAC5B,aAAA;AACF,SAAA;AACD,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;AACnB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;AAC3C,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5C,SAAA;KACF;IAED,YAAY,CAAC,CAAC,EAAE,CAAC,EAAA;QACf,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;AACpC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AACzB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC1B;IAED,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAA;QACpB,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACnB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;AAC3C,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;AAC3C,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACrC,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnC,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB,EAAE,CAAC,CAAC,CAAC;KACP;AAED,IAAA,aAAa,CAAC,KAAK,EAAA;QACjB,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;AAC7C,YAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5B,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5D,gBAAA,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9E,aAAA;AACF,SAAA;KACF;IAED,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;AACnB,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,KAAK,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE;AAChF,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE;gBAC1C,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC7B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;AAC9B,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE;AAChC,gBAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;AACpB,aAAA;AACD,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE;AAC1C,gBAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;AACjG,gBAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;AAC9E,aAAA;AACF,SAAA;KACF;IAED,cAAc,GAAA;AACZ,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE;AAC1C,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACjD,YAAA,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE;AACzB,gBAAA,OAAO,KAAK,CAAC;AACd,aAAA;AACF,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,UAAU,CAAC,KAAe,EAAA;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KAC5B;AAED,IAAA,QAAQ,CAAC,KAAe,EAAE,YAAY,GAAG,KAAK,EAAA;AAC5C,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAC3C,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,EAAE,CAAC;AACd,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAChC,YAAA,IAAI,YAAY,EAAE;AAChB,gBAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACpC,aAAA;AAAM,iBAAA;gBACL,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACtC,aAAA;AACF,SAAA;KACF;AAED,IAAA,gBAAgB,CAAC,EAA6B,EAAA;AAC5C,QAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;KAC5B;AAED,IAAA,iBAAiB,CAAC,EAA2B,EAAA;AAC3C,QAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;KAC7B;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE,CAAC;AACd,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;AAC5G,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC;AACvC,QAAA,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC;KACtC;8GA9QU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,EARd,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,GAAA,EAAA,KAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,YAAA,EAAA,cAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,yBAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,cAAc,CAAC;AAC7C,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZH,sqCA0CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,cAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FD5Ba,cAAc,EAAA,UAAA,EAAA,CAAA;kBAX1B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EAElB,SAAA,EAAA;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,oBAAoB,CAAC;AAC7C,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,sqCAAA,EAAA,CAAA;+EAgCG,GAAG,EAAA,CAAA;sBADN,KAAK;gBAQF,GAAG,EAAA,CAAA;sBADN,KAAK;gBAQF,IAAI,EAAA,CAAA;sBADP,KAAK;gBAQF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAQF,YAAY,EAAA,CAAA;sBADf,KAAK;gBAOF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAQF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAQF,IAAI,EAAA,CAAA;sBADP,KAAK;gBAQF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAQF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAKF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAMF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAQF,WAAW,EAAA,CAAA;sBADd,KAAK;gBAQF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAQF,SAAS,EAAA,CAAA;sBADZ,KAAK;gBAQN,QAAQ,EAAA,CAAA;sBADP,MAAM;gBAGP,aAAa,EAAA,CAAA;sBADZ,MAAM;gBAIP,SAAS,EAAA,CAAA;sBADR,WAAW;uBAAC,yBAAyB,CAAA;;;MEzI3B,WAAW,CAAA;8GAAX,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAX,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,WAAW,iBAHP,cAAc,CAAA,EAAA,OAAA,EAAA,CACnB,YAAY,EAAE,YAAY,aAF1B,cAAc,CAAA,EAAA,CAAA,CAAA,EAAA;+GAIb,WAAW,EAAA,OAAA,EAAA,CAFZ,YAAY,EAAE,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAEzB,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,cAAc,CAAC;oBACzB,YAAY,EAAE,CAAC,cAAc,CAAC;AAC9B,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;AACtC,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}