{"version":3,"file":"uib-angular-core.mjs","sources":["../../../../libs/angular-components/core/src/lib/abstract/controller.ts","../../../../libs/angular-components/core/src/lib/coercion/coerce-array.ts","../../../../libs/angular-components/core/src/lib/coercion/coerce-boolean-property.ts","../../../../libs/angular-components/core/src/lib/coercion/coerce-number-property.ts","../../../../libs/angular-components/core/src/lib/constants.ts","../../../../libs/angular-components/core/src/lib/decorators/pure.ts","../../../../libs/angular-components/core/src/lib/decorators/transform.ts","../../../../libs/angular-components/core/src/lib/decorators/uib-component.ts","../../../../libs/angular-components/core/src/lib/decorators/uib-css-modifier.ts","../../../../libs/angular-components/core/src/lib/providers/watched-controller-provider.ts","../../../../libs/angular-components/core/src/lib/tokens/identity-matcher.ts","../../../../libs/angular-components/core/src/lib/tokens/stringify-transformer.ts","../../../../libs/angular-components/core/src/uib-angular-core.ts"],"sourcesContent":["import { Directive, OnChanges } from '@angular/core';\nimport { share, Subject } from 'rxjs';\n\n@Directive()\nexport abstract class Controller implements OnChanges {\n  private readonly change$$ = new Subject<void>();\n\n  public readonly change$ = this.change$$.pipe(share());\n\n  public ngOnChanges(): void {\n    this.change$$.next();\n  }\n}\n","export function coerceArray<T>(value: T | T[]): T[];\nexport function coerceArray<T>(value: T | readonly T[]): readonly T[];\nexport function coerceArray<T>(value: T | T[]): T[] {\n  return Array.isArray(value) ? value : [value];\n}\n","export type BooleanInput = string | boolean | null | undefined;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function coerceBooleanProperty(value: any): boolean {\n  return value != null && `${value}` !== 'false';\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nexport type NumberInput = string | number | null | undefined;\n\nexport function coerceNumberProperty(value: any): number;\nexport function coerceNumberProperty<D>(value: any, fallback: D): number | D;\nexport function coerceNumberProperty<D = number>(value: any, fallbackValue = 0): number | D {\n  const isNumberValue = !isNaN(parseFloat(value as any)) && !isNaN(Number(value));\n\n  return isNumberValue ? Number(value) : fallbackValue;\n}\n","export const FOCUSED_CLASS = 'is-focused';\n","import { isFunction } from '@uib/angular/utils';\n\nexport function Pure<T>(\n  _target: object,\n  propertyKey: string,\n  { get, enumerable, value }: TypedPropertyDescriptor<T>,\n): TypedPropertyDescriptor<T> {\n  if (get) {\n    return {\n      enumerable,\n      get(): T {\n        const value = get.call(this);\n        Object.defineProperty(this, propertyKey, { enumerable, value });\n\n        return value;\n      },\n    };\n  }\n\n  if (!isFunction(value)) {\n    throw new Error('Target is not a function');\n  }\n\n  const original = value;\n\n  return {\n    enumerable,\n    get(): T {\n      let previousArgs: readonly unknown[] = [];\n      let wasCalled = false;\n      let pureValue: unknown;\n\n      const patchedGet = (...args: unknown[]): unknown => {\n        const isPure = wasCalled && previousArgs.length === args.length && args.every((arg, index) => arg === previousArgs[index]);\n        if (isPure) {\n          return pureValue;\n        }\n        previousArgs = args;\n        pureValue = original.apply(this, args);\n        wasCalled = true;\n\n        return pureValue;\n      };\n      Object.defineProperty(this, propertyKey, { value: patchedGet });\n\n      return patchedGet as unknown as T;\n    },\n  };\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ɵwithMultipleDescriptors } from '@uib/angular/utils';\n\ntype TransformFn<Klass = any, R = any> = (this: Klass, value: R) => R;\n\nexport function Transform(transformer: TransformFn) {\n  return (target: any, propertyKey: PropertyKey) => {\n    const propertySymbol = Symbol(`__${propertyKey.toString()}ClassTmpl__`);\n    const descriptors = ɵwithMultipleDescriptors(target, propertyKey, propertySymbol);\n\n    function setter(this: any, value: any) {\n      this[propertySymbol] = transformer.apply(this, [value]);\n    }\n\n    descriptors.addSetter(setter);\n    descriptors.init();\n  };\n}\n","import { ElementRef, Renderer2, Type } from '@angular/core';\n\nexport const UIB_COMPONENT_NAME = Symbol('__UibComponentName__');\nexport const UIB_COMPONENT_MODIFIERS = Symbol('__UibComponentModifiers__');\n\nexport interface UibComponent {\n  readonly element: ElementRef<unknown>;\n  readonly renderer: Renderer2;\n}\n\n/* istanbul ignore next */\nexport function UibComponent(name: string) {\n  return (target: Type<UibComponent>) => {\n    Object.defineProperty(target.prototype, UIB_COMPONENT_NAME, {\n      value: `uib-${name}`,\n    });\n\n    (function (this: unknown, ngOnInit?: () => void) {\n      target.prototype.ngOnInit = function () {\n        this.renderer.addClass(this.element.nativeElement, `uib-${name}`);\n        ngOnInit?.call(this);\n\n        if (Array.isArray(this[UIB_COMPONENT_MODIFIERS])) {\n          for (const property of this[UIB_COMPONENT_MODIFIERS]) {\n            this[property] ??= null;\n          }\n        }\n      };\n    })(target.prototype.ngOnInit);\n  };\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { isBoolean, isNonEmptyString, ɵwithMultipleDescriptors } from '@uib/angular/utils';\nimport { UIB_COMPONENT_MODIFIERS, UIB_COMPONENT_NAME } from './uib-component';\n\ninterface UibCSSModifierOptions {\n  isArray?: boolean;\n  withComponentPrefix?: boolean;\n  default?: string;\n  withPrefix?: boolean;\n}\n\n/* istanbul ignore next */\nexport function UibCSSModifier(options?: UibCSSModifierOptions) {\n  return (target: any, propertyKey: PropertyKey) => {\n    const propertySymbol = Symbol(`__UibCSSModifier{${propertyKey.toString()}}__`);\n    const descriptors = ɵwithMultipleDescriptors(target, propertyKey, propertySymbol);\n\n    function createModifierClass(this: any, value: any) {\n      value = value ?? options?.default ?? null;\n\n      if (isBoolean(value) || isNonEmptyString(value)) {\n        let modifier = isBoolean(value) ? propertyKey.toString() : value;\n        if (options?.withPrefix) {\n          modifier = [propertyKey, modifier].join('-');\n        }\n        return [options?.withComponentPrefix ?? true ? this[UIB_COMPONENT_NAME] : null, modifier].filter(Boolean).join('--');\n      }\n      return null;\n    }\n\n    if (options?.default) {\n      target[UIB_COMPONENT_MODIFIERS] = (target[UIB_COMPONENT_MODIFIERS] || []).concat(propertyKey);\n    }\n\n    function setter(this: any, value: any) {\n      const values = options?.isArray ? value : [value];\n      this[propertySymbol] = this[propertySymbol] || [];\n      for (let i = 0; i < values.length; ++i) {\n        const currentValue = values[i];\n        if (this[propertySymbol].length < 1 || currentValue !== this[propertySymbol][i]) {\n          const currentModifierClass = createModifierClass.apply(this, [this[propertySymbol][i]]);\n          if (currentModifierClass !== null) {\n            this.renderer.removeClass(this.element.nativeElement, currentModifierClass);\n          }\n          this[propertySymbol][i] = currentValue;\n          const newModifierClass = createModifierClass.apply(this, [this[propertySymbol][i]]);\n          if (newModifierClass !== null) {\n            this.renderer.addClass(this.element.nativeElement, newModifierClass);\n          }\n        }\n      }\n    }\n\n    function getter(this: any) {\n      return options?.isArray ? this[propertySymbol] : this[propertySymbol]?.[0];\n    }\n\n    descriptors.addSetter(setter);\n    descriptors.addGetter(getter);\n    descriptors.init();\n  };\n}\n","import { ChangeDetectorRef } from '@angular/core';\nimport { watch } from '@uib/angular/utils';\nimport { EMPTY, Observable, takeUntil } from 'rxjs';\nimport { Controller } from '../abstract';\n\nexport function watchedControllerFactory(\n  controller: Controller | null,\n  changeDetectorRef: ChangeDetectorRef,\n  destroy$: Observable<void>,\n): Controller | null {\n  const changes$ = controller?.change$ ?? EMPTY;\n  changes$.pipe(watch(changeDetectorRef), takeUntil(destroy$)).subscribe();\n\n  return controller;\n}\n","import { InjectionToken, ValueProvider } from '@angular/core';\nimport { isEmptyArray } from '@uib/angular/utils';\n\nfunction bothEmpty<T>(a: T, b: T) {\n  return isEmptyArray(a) && isEmptyArray(b);\n}\n\nexport type IdentityMatcher<T = unknown> = (a: T, b: T) => boolean;\nexport const defaultIdentityMatcher: IdentityMatcher<unknown> = (a, b) => a === b || bothEmpty(a, b);\nexport const DEFAULT_IDENTITY_MATCHER = new InjectionToken<IdentityMatcher<unknown>>('@uib/angular/core::DefaultIdentityMatcher', {\n  providedIn: 'root',\n  factory: () => defaultIdentityMatcher,\n});\nexport function provideDefaultIdentityMatcher<T = unknown>(matcher: IdentityMatcher<T>): ValueProvider {\n  return {\n    provide: DEFAULT_IDENTITY_MATCHER,\n    useValue: matcher,\n  };\n}\n","import { InjectionToken, ValueProvider } from '@angular/core';\n\nexport type StringifyTransformer<T = unknown> = (value: T) => string;\nexport const defaultStringifyTransformer: StringifyTransformer<unknown> = (value) => String(value);\nexport const DEFAULT_STRINGIFY_TRANSFORMER = new InjectionToken<StringifyTransformer<unknown>>(\n  '@uib/angular/core::DefaultStringifyTransformer',\n  {\n    providedIn: 'root',\n    factory: () => defaultStringifyTransformer,\n  },\n);\nexport function provideDefaultStringifyTransformer<T = unknown>(transformer: StringifyTransformer<T>): ValueProvider {\n  return {\n    provide: DEFAULT_STRINGIFY_TRANSFORMER,\n    useValue: transformer,\n  };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAIsB,UAAU,CAAA;AADhC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,OAAO,EAAQ,CAAC;QAEhC,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AAKvD,KAAA;IAHQ,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;KACtB;;wGAPmB,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;4FAAV,UAAU,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBAD/B,SAAS;;;ACDJ,SAAU,WAAW,CAAI,KAAc,EAAA;AAC3C,IAAA,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;AAChD;;ACFA;AACM,SAAU,qBAAqB,CAAC,KAAU,EAAA;IAC9C,OAAO,KAAK,IAAI,IAAI,IAAI,GAAG,KAAK,CAAA,CAAE,KAAK,OAAO,CAAC;AACjD;;SCAgB,oBAAoB,CAAa,KAAU,EAAE,aAAa,GAAG,CAAC,EAAA;AAC5E,IAAA,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAEhF,IAAA,OAAO,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;AACvD;;ACTO,MAAM,aAAa,GAAG;;ACEb,SAAA,IAAI,CAClB,OAAe,EACf,WAAmB,EACnB,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAA8B,EAAA;AAEtD,IAAA,IAAI,GAAG,EAAE;QACP,OAAO;YACL,UAAU;YACV,GAAG,GAAA;gBACD,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7B,gBAAA,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AAEhE,gBAAA,OAAO,KAAK,CAAC;aACd;SACF,CAAC;AACH,KAAA;AAED,IAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;AACtB,QAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAC7C,KAAA;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC;IAEvB,OAAO;QACL,UAAU;QACV,GAAG,GAAA;YACD,IAAI,YAAY,GAAuB,EAAE,CAAC;YAC1C,IAAI,SAAS,GAAG,KAAK,CAAC;AACtB,YAAA,IAAI,SAAkB,CAAC;AAEvB,YAAA,MAAM,UAAU,GAAG,CAAC,GAAG,IAAe,KAAa;AACjD,gBAAA,MAAM,MAAM,GAAG,SAAS,IAAI,YAAY,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK,GAAG,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3H,gBAAA,IAAI,MAAM,EAAE;AACV,oBAAA,OAAO,SAAS,CAAC;AAClB,iBAAA;gBACD,YAAY,GAAG,IAAI,CAAC;gBACpB,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACvC,SAAS,GAAG,IAAI,CAAC;AAEjB,gBAAA,OAAO,SAAS,CAAC;AACnB,aAAC,CAAC;AACF,YAAA,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;AAEhE,YAAA,OAAO,UAA0B,CAAC;SACnC;KACF,CAAC;AACJ;;AChDA;AAKM,SAAU,SAAS,CAAC,WAAwB,EAAA;AAChD,IAAA,OAAO,CAAC,MAAW,EAAE,WAAwB,KAAI;QAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,CAAA,EAAA,EAAK,WAAW,CAAC,QAAQ,EAAE,CAAa,WAAA,CAAA,CAAC,CAAC;QACxE,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QAElF,SAAS,MAAM,CAAY,KAAU,EAAA;AACnC,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;SACzD;AAED,QAAA,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC9B,WAAW,CAAC,IAAI,EAAE,CAAC;AACrB,KAAC,CAAC;AACJ;;MCfa,kBAAkB,GAAG,MAAM,CAAC,sBAAsB,EAAE;MACpD,uBAAuB,GAAG,MAAM,CAAC,2BAA2B,EAAE;AAO3E;AACM,SAAU,YAAY,CAAC,IAAY,EAAA;IACvC,OAAO,CAAC,MAA0B,KAAI;QACpC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,kBAAkB,EAAE;YAC1D,KAAK,EAAE,CAAO,IAAA,EAAA,IAAI,CAAE,CAAA;AACrB,SAAA,CAAC,CAAC;AAEH,QAAA,CAAC,UAAyB,QAAqB,EAAA;AAC7C,YAAA,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,YAAA;AAC1B,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAA,IAAA,EAAO,IAAI,CAAA,CAAE,CAAC,CAAC;AAClE,gBAAA,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAErB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE;AAChD,oBAAA,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,uBAAuB,CAAC,EAAE;wBACpD,IAAI,CAAC,QAAQ,CAAb,KAAA,IAAI,CAAC,QAAQ,CAAA,GAAM,IAAI,CAAC,CAAA;AACzB,qBAAA;AACF,iBAAA;AACH,aAAC,CAAC;SACH,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAChC,KAAC,CAAC;AACJ;;AC9BA;AAWA;AACM,SAAU,cAAc,CAAC,OAA+B,EAAA;AAC5D,IAAA,OAAO,CAAC,MAAW,EAAE,WAAwB,KAAI;QAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,CAAA,iBAAA,EAAoB,WAAW,CAAC,QAAQ,EAAE,CAAK,GAAA,CAAA,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QAElF,SAAS,mBAAmB,CAAY,KAAU,EAAA;YAChD,KAAK,GAAG,KAAK,IAAI,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;YAE1C,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE;AAC/C,gBAAA,IAAI,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC;gBACjE,IAAI,OAAO,EAAE,UAAU,EAAE;oBACvB,QAAQ,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9C,iBAAA;AACD,gBAAA,OAAO,CAAC,OAAO,EAAE,mBAAmB,IAAI,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtH,aAAA;AACD,YAAA,OAAO,IAAI,CAAC;SACb;QAED,IAAI,OAAO,EAAE,OAAO,EAAE;AACpB,YAAA,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,uBAAuB,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;AAC/F,SAAA;QAED,SAAS,MAAM,CAAY,KAAU,EAAA;AACnC,YAAA,MAAM,MAAM,GAAG,OAAO,EAAE,OAAO,GAAG,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YAClD,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;AAClD,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;AACtC,gBAAA,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AAC/B,gBAAA,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;AAC/E,oBAAA,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxF,IAAI,oBAAoB,KAAK,IAAI,EAAE;AACjC,wBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;AAC7E,qBAAA;oBACD,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;AACvC,oBAAA,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpF,IAAI,gBAAgB,KAAK,IAAI,EAAE;AAC7B,wBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;AACtE,qBAAA;AACF,iBAAA;AACF,aAAA;SACF;AAED,QAAA,SAAS,MAAM,GAAA;YACb,OAAO,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;SAC5E;AAED,QAAA,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAC9B,QAAA,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC9B,WAAW,CAAC,IAAI,EAAE,CAAC;AACrB,KAAC,CAAC;AACJ;;SCxDgB,wBAAwB,CACtC,UAA6B,EAC7B,iBAAoC,EACpC,QAA0B,EAAA;AAE1B,IAAA,MAAM,QAAQ,GAAG,UAAU,EAAE,OAAO,IAAI,KAAK,CAAC;AAC9C,IAAA,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AAEzE,IAAA,OAAO,UAAU,CAAC;AACpB;;ACXA,SAAS,SAAS,CAAI,CAAI,EAAE,CAAI,EAAA;IAC9B,OAAO,YAAY,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;MAGY,sBAAsB,GAA6B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE;MACxF,wBAAwB,GAAG,IAAI,cAAc,CAA2B,2CAA2C,EAAE;AAChI,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAM,sBAAsB;AACtC,CAAA,EAAE;AACG,SAAU,6BAA6B,CAAc,OAA2B,EAAA;IACpF,OAAO;AACL,QAAA,OAAO,EAAE,wBAAwB;AACjC,QAAA,QAAQ,EAAE,OAAO;KAClB,CAAC;AACJ;;ACfO,MAAM,2BAA2B,GAAkC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,EAAE;MACtF,6BAA6B,GAAG,IAAI,cAAc,CAC7D,gDAAgD,EAChD;AACE,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAM,2BAA2B;AAC3C,CAAA,EACD;AACI,SAAU,kCAAkC,CAAc,WAAoC,EAAA;IAClG,OAAO;AACL,QAAA,OAAO,EAAE,6BAA6B;AACtC,QAAA,QAAQ,EAAE,WAAW;KACtB,CAAC;AACJ;;AChBA;;AAEG;;;;"}