{"version":3,"file":"airy-ui-layout.mjs","sources":["../../../projects/layout/src/lib/components/container/container.component.ts","../../../projects/layout/src/lib/components/container/container.component.html","../../../projects/layout/src/lib/layout/helpers/parse-layout-align.ts","../../../projects/layout/src/lib/layout/layout.providers.ts","../../../projects/layout/src/lib/layout/layout.directive.ts","../../../projects/layout/src/lib/directives/start/start.directive.ts","../../../projects/layout/src/lib/directives/end/end.directive.ts","../../../projects/layout/src/lib/directives/footer/footer.directive.ts","../../../projects/layout/src/lib/directives/header/header.directive.ts","../../../projects/layout/src/lib/directives/content/content.directive.ts","../../../projects/layout/src/lib/directives/flex/flex.directive.ts","../../../projects/layout/src/lib/directives/grid-item/grid-item.providers.ts","../../../projects/layout/src/lib/directives/grid-item/grid-item.directive.ts","../../../projects/layout/src/lib/directives/stretch/stretch.directive.ts","../../../projects/layout/src/lib/directives/header-container/header-container.directive.ts","../../../projects/layout/src/lib/directives/imposition/imposition.directive.ts","../../../projects/layout/src/lib/directives/imposition/imposition-container.directive.ts","../../../projects/layout/src/lib/directives/actions-container/actions-container.directive.ts","../../../projects/layout/src/lib/directives/breakpoints/breakpoints.directive.ts","../../../projects/layout/src/lib/components/page/page.component.ts","../../../projects/layout/src/lib/components/page/page.component.html","../../../projects/layout/src/lib/components/header-portal/header-portal.component.ts","../../../projects/layout/src/lib/components/header-portal/header-portal.component.html","../../../projects/layout/src/lib/components/scroll-container/scroll-container.component.ts","../../../projects/layout/src/lib/components/scroll-container/scroll-container.component.html","../../../projects/layout/src/lib/components/actions-portal/actions-portal.component.ts","../../../projects/layout/src/lib/components/actions-portal/actions-portal.component.html","../../../projects/layout/src/lib/indents/abstract-indents-directive.ts","../../../projects/layout/src/lib/indents/indent-var.ts","../../../projects/layout/src/lib/indents/indents.providers.ts","../../../projects/layout/src/lib/indents/margins.directive.ts","../../../projects/layout/src/lib/indents/paddings.directive.ts","../../../projects/layout/src/lib/indents/air-indents.module.ts","../../../projects/layout/src/lib/layout/layout.module.ts","../../../projects/layout/src/lib/air-layout.module.ts","../../../projects/layout/src/lib/elements-position/position.service.ts","../../../projects/layout/src/lib/elements-position/first-on-line.directive.ts","../../../projects/layout/src/lib/elements-position/last-on-line.directive.ts","../../../projects/layout/src/lib/elements-position/air-elements-position.module.ts","../../../projects/layout/src/lib/table-like-cell/table-like-cell.directive.ts","../../../projects/layout/src/lib/table-like-cell/air-table-like-cell.module.ts","../../../projects/layout/src/airy-ui-layout.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding} from '@angular/core';\n\n@Component({\n  selector: 'air-container, [air-container]',\n  templateUrl: './container.component.html',\n  styleUrls: ['./container.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ContainerComponent {\n  @HostBinding('class.air-container') containerClass = true;\n}\n","<ng-content></ng-content>\n","import {LayoutAlign} from '../types';\n\ninterface ParsedLayoutAlign {\n  alignItems: string;\n  justifyContent: string;\n}\n\nexport function parseLayoutAlign(layoutAlign: LayoutAlign): ParsedLayoutAlign {\n  // @ts-ignore\n  const res = layoutAlign.split(' ');\n  if (res.length === 1) {\n    return {\n      alignItems: '',\n      justifyContent: prop(res[0])\n    };\n  }\n\n  return {\n    justifyContent: prop(res[0]),\n    alignItems: prop(res[1])\n  };\n}\n\nfunction prop(prop: string): string {\n  if (prop === 'start') {\n    return 'flex-start';\n  }\n  if (prop === 'end') {\n    return 'flex-end';\n  }\n\n  return prop;\n}\n","import {Injector, Provider} from '@angular/core';\nimport {parseLayoutAlign} from './helpers/parse-layout-align';\nimport {LayoutAlign} from './types';\nimport {Gap} from './types/gap';\nimport {\n  breakpointsStylesProviders,\n  GenericObject,\n  StringObject,\n  StylesFactory,\n  StylesProvidersFactory\n} from '@airy-ui/cdk';\nimport {purePropName} from '@airy-ui/cdk';\n\n\nconst stylesFactories: StylesProvidersFactory = (injector: Injector): GenericObject<StylesFactory> => {\n  return {\n    layoutAlign: (value: LayoutAlign): StringObject => {\n      if (value) {\n        const {alignItems, justifyContent} = parseLayoutAlign(value);\n\n        return {\n          justifyContent,\n          alignItems\n        };\n      }\n\n      return {};\n    },\n    colGap: (value: Gap): StringObject => {\n      return {\n        'column-gap': `var(--indent-${value}, 0)`,\n        '--col-gap': `var(--indent-${value}, 0)`\n      };\n    },\n    rowGap: (value: Gap): StringObject => {\n      return {\n        'row-gap': `var(--indent-${value}, 0)`\n      };\n    },\n    colCount: (value: number, map: Map<string, string>) => {\n      const gapKey = Array.from(map.keys()).find(key => purePropName(key) === 'colGap');\n      if (value && gapKey) {\n        const gap = 'var(--indent-' + map.get(gapKey) + ')';\n        return {\n          '--col-width': `calc((100% - (${gap} * ${value - 1})) / ${value})`\n        }\n      }\n      return {\n        '--col-width': `calc(100% / ${value})`\n      };\n    }\n  };\n}\n\nexport const LAYOUT_PROVIDERS: Provider[] = breakpointsStylesProviders({\n  stylesNamesMap: {\n    layout: 'flex-flow'\n  },\n  stylesFactories,\n  classesMap: {\n    colCount: ['air-cc'],\n    colGap: ['air-cg']\n  }\n});\n","import {Directive, ElementRef, HostBinding, Input, OnChanges, SimpleChanges} from '@angular/core';\nimport {Layout, LayoutAlign} from './types';\nimport {LAYOUT_PROVIDERS} from './layout.providers';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {Gap} from './types/gap';\nimport {BreakpointsStylesManager} from '@airy-ui/cdk';\nimport {ChangesState} from '@airy-ui/cdk';\n\n\n@Directive({\n  selector: `\n  [airGrid],\n  [airLayout],\n  [xs.airLayout],\n  [sm.airLayout],\n  [md.airLayout],\n  [lg.airLayout],\n  [xl.airLayout],\n  [ltSm.airLayout],\n  [ltMd.airLayout],\n  [ltLg.airLayout],\n  [ltXl.airLayout],\n  [gtSm.airLayout],\n  [gtMd.airLayout],\n  [gtLg.airLayout],\n  [gtXs.airLayout],\n  [airRowGap],\n  [xs.airRowGap],\n  [sm.airRowGap],\n  [md.airRowGap],\n  [lg.airRowGap],\n  [xl.airRowGap],\n  [ltSm.airRowGap],\n  [ltMd.airRowGap],\n  [ltLg.airRowGap],\n  [ltXl.airRowGap],\n  [gtSm.airRowGap],\n  [gtMd.airRowGap],\n  [gtLg.airRowGap],\n  [gtXs.airRowGap],\n  [airColGap],\n  [xs.airColGap],\n  [sm.airColGap],\n  [md.airColGap],\n  [lg.airColGap],\n  [xl.airColGap],\n  [ltSm.airColGap],\n  [ltMd.airColGap],\n  [ltLg.airColGap],\n  [ltXl.airColGap],\n  [gtSm.airColGap],\n  [gtMd.airColGap],\n  [gtLg.airColGap],\n  [gtXs.airColGap],\n  [airColCount],\n  [xs.airColCount],\n  [sm.airColCount],\n  [md.airColCount],\n  [lg.airColCount],\n  [xl.airColCount],\n  [ltSm.airColCount],\n  [ltMd.airColCount],\n  [ltLg.airColCount],\n  [ltXl.airColCount],\n  [gtSm.airColCount],\n  [gtMd.airColCount],\n  [gtLg.airColCount],\n  [gtXs.airColCount],\n  [airColGap],\n  [xs.airColGap],\n  [sm.airColGap],\n  [md.airColGap],\n  [lg.airColGap],\n  [xl.airColGap],\n  [ltSm.airColGap],\n  [ltMd.airColGap],\n  [ltLg.airColGap],\n  [ltXl.airColGap],\n  [gtSm.airColGap],\n  [gtMd.airColGap],\n  [gtLg.airColGap],\n  [gtXs.airColGap],\n  `,\n  providers: LAYOUT_PROVIDERS\n})\n@UntilDestroy()\nexport class LayoutDirective implements OnChanges {\n  @HostBinding('style.display') flex = 'flex';\n\n  @HostBinding('class.air-grid')\n  get isGrid(): boolean {\n    return this.elementRef.nativeElement.hasAttribute('airGrid');\n  }\n\n  @Input() airColCount?: number;\n  @Input('xs.airColCount') xsAirColCount?: number;\n  @Input('sm.airColCount') smAirColCount?: number;\n  @Input('md.airColCount') mdAirColCount?: number;\n  @Input('lg.airColCount') lgAirColCount?: number;\n  @Input('xl.airColCount') xlAirColCount?: number;\n  @Input('ltSm.airColCount') ltSmAirColCount?: number;\n  @Input('ltMd.airColCount') ltMdAirColCount?: number;\n  @Input('ltLg.airColCount') ltLgAirColCount?: number;\n  @Input('ltXl.airColCount') ltXlAirColCount?: number;\n  @Input('gtSm.airColCount') gtSmAirColCount?: number;\n  @Input('gtMd.airColCount') gtMdAirColCount?: number;\n  @Input('gtLg.airColCount') gtLgAirColCount?: number;\n  @Input('gtXs.airColCount') gtXsAirColCount?: number;\n\n  @Input() airLayout: Layout = 'row';\n  @Input('xs.airLayout') xsAirLayout: Layout;\n  @Input('sm.airLayout') smAirLayout: Layout;\n  @Input('md.airLayout') mdAirLayout: Layout;\n  @Input('lg.airLayout') lgAirLayout: Layout;\n  @Input('xl.airLayout') xlAirLayout: Layout;\n  @Input('ltSm.airLayout') ltSmAirLayout: Layout;\n  @Input('ltMd.airLayout') ltMdAirLayout: Layout;\n  @Input('ltLg.airLayout') ltLgAirLayout: Layout;\n  @Input('ltXl.airLayout') ltXlAirLayout: Layout;\n  @Input('gtSm.airLayout') gtSmAirLayout: Layout;\n  @Input('gtMd.airLayout') gtMdAirLayout: Layout;\n  @Input('gtLg.airLayout') gtLgAirLayout: Layout;\n  @Input('gtXs.airLayout') gtXsAirLayout: Layout;\n\n  @Input() airRowGap: Gap;\n  @Input('xs.airRowGap') xsAirRowGap: Gap;\n  @Input('sm.airRowGap') smAirRowGap: Gap;\n  @Input('md.airRowGap') mdAirRowGap: Gap;\n  @Input('lg.airRowGap') lgAirRowGap: Gap;\n  @Input('xl.airRowGap') xlAirRowGap: Gap;\n  @Input('ltSm.airRowGap') ltSmAirRowGap: Gap;\n  @Input('ltMd.airRowGap') ltMdAirRowGap: Gap;\n  @Input('ltLg.airRowGap') ltLgAirRowGap: Gap;\n  @Input('ltXl.airRowGap') ltXlAirRowGap: Gap;\n  @Input('gtSm.airRowGap') gtSmAirRowGap: Gap;\n  @Input('gtMd.airRowGap') gtMdAirRowGap: Gap;\n  @Input('gtLg.airRowGap') gtLgAirRowGap: Gap;\n  @Input('gtXs.airRowGap') gtXsAirRowGap: Gap;\n\n  @Input() airColGap: Gap;\n  @Input('xs.airColGap') xsAirColGap: Gap;\n  @Input('sm.airColGap') smAirColGap: Gap;\n  @Input('md.airColGap') mdAirColGap: Gap;\n  @Input('lg.airColGap') lgAirColGap: Gap;\n  @Input('xl.airColGap') xlAirColGap: Gap;\n  @Input('ltSm.airColGap') ltSmAirColGap: Gap;\n  @Input('ltMd.airColGap') ltMdAirColGap: Gap;\n  @Input('ltLg.airColGap') ltLgAirColGap: Gap;\n  @Input('ltXl.airColGap') ltXlAirColGap: Gap;\n  @Input('gtSm.airColGap') gtSmAirColGap: Gap;\n  @Input('gtMd.airColGap') gtMdAirColGap: Gap;\n  @Input('gtLg.airColGap') gtLgAirColGap: Gap;\n  @Input('gtXs.airColGap') gtXsAirColGap: Gap;\n\n  @Input() airLayoutAlign: LayoutAlign;\n  @Input('xs.airLayoutAlign') xsAirLayoutAlign: LayoutAlign;\n  @Input('sm.airLayoutAlign') smAirLayoutAlign: LayoutAlign;\n  @Input('md.airLayoutAlign') mdAirLayoutAlign: LayoutAlign;\n  @Input('lg.airLayoutAlign') lgAirLayoutAlign: LayoutAlign;\n  @Input('xl.airLayoutAlign') xlAirLayoutAlign: LayoutAlign;\n  @Input('ltSm.airLayoutAlign') ltSmAirLayoutAlign: LayoutAlign;\n  @Input('ltMd.airLayoutAlign') ltMdAirLayoutAlign: LayoutAlign;\n  @Input('ltLg.airLayoutAlign') ltLgAirLayoutAlign: LayoutAlign;\n  @Input('ltXl.airLayoutAlign') ltXlAirLayoutAlign: LayoutAlign;\n  @Input('gtSm.airLayoutAlign') gtSmAirLayoutAlign: LayoutAlign;\n  @Input('gtMd.airLayoutAlign') gtMdAirLayoutAlign: LayoutAlign;\n  @Input('gtLg.airLayoutAlign') gtLgAirLayoutAlign: LayoutAlign;\n  @Input('gtXs.airLayoutAlign') gtXsAirLayoutAlign: LayoutAlign;\n\n  constructor(private changesState: ChangesState<string, string>,\n              private elementRef: ElementRef<HTMLDivElement>,\n              breakpointsStylesManager: BreakpointsStylesManager) {\n    breakpointsStylesManager.watch().pipe(untilDestroyed(this)).subscribe();\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    this.changesState.patch(changes);\n  }\n\n}\n","import {Directive, ElementRef, HostBinding} from '@angular/core';\nimport {StickyDirective} from '../../interfaces';\n\n@Directive({\n  selector: '[airStart], [airStickyStart]'\n})\nexport class StartDirective implements StickyDirective {\n\n  constructor(public elementRef: ElementRef<HTMLDivElement>) {\n  }\n\n  @HostBinding('class.sticky-start')\n  get sticky(): boolean {\n    return this.elementRef.nativeElement.hasAttribute('airStickyStart');\n  }\n\n  get offset(): number {\n    return this.elementRef.nativeElement.offsetWidth;\n  }\n\n}\n","import {Directive, ElementRef, HostBinding} from '@angular/core';\nimport {StickyDirective} from '../../interfaces';\n\n@Directive({\n  selector: '[airEnd],[airStickyEnd]'\n})\nexport class EndDirective implements StickyDirective {\n\n  constructor(public elementRef: ElementRef) {\n  }\n\n  @HostBinding('class.sticky-end')\n  get sticky(): boolean {\n    return this.elementRef.nativeElement.hasAttribute('airStickyEnd');\n  }\n\n  get offset(): number {\n    return this.elementRef.nativeElement.offsetWidth;\n  }\n}\n","import {Directive, ElementRef, HostBinding} from '@angular/core';\nimport {StickyDirective} from '../../interfaces';\n\n@Directive({\n  selector: '[airFooter], [airStickyFooter]'\n})\nexport class FooterDirective implements StickyDirective {\n\n  constructor(public elementRef: ElementRef) {\n  }\n\n  @HostBinding('class.sticky-footer')\n  get sticky(): boolean {\n    return this.elementRef.nativeElement.hasAttribute('airStickyFooter');\n  }\n\n  get offset(): number {\n    return this.elementRef.nativeElement.offsetHeight;\n  }\n\n}\n","import {Directive, ElementRef, HostBinding} from '@angular/core';\nimport {StickyDirective} from '../../interfaces';\n\n@Directive({\n  selector: '[airHeader], [airStickyHeader]'\n})\nexport class HeaderDirective implements StickyDirective {\n  @HostBinding('attr.id') idAttribute = 'air-page-header';\n\n  constructor(public elementRef: ElementRef) {\n  }\n\n  @HostBinding('class.sticky-header')\n  get sticky(): boolean {\n    return this.elementRef.nativeElement.hasAttribute('airStickyHeader');\n  }\n\n  get offset(): number {\n    return this.elementRef.nativeElement.offsetHeight;\n  }\n}\n","import {Directive, HostBinding} from '@angular/core';\n\n@Directive({selector: '[airContent]'})\nexport class ContentDirective {\n  @HostBinding('class.air-content') contentClass = true;\n}\n","import {Directive, Input, OnChanges, SimpleChanges} from '@angular/core';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {BREAKPOINTS_STYLES_PROVIDERS, BreakpointsStylesManager} from '@airy-ui/cdk';\nimport {ChangesState} from '@airy-ui/cdk';\n\n@Directive({\n  selector: `\n  [airFlex],\n  [xs.airFlex],\n  [sm.airFlex],\n  [md.airFlex],\n  [lg.airFlex],\n  [xl.airFlex],\n  [ltSm.airFlex],\n  [ltMd.airFlex],\n  [ltLg.airFlex],\n  [ltXl.airFlex],\n  [gtSm.airFlex],\n  [gtMd.airFlex],\n  [gtLg.airFlex],\n  [gtXs.airFlex],\n  `,\n  providers: BREAKPOINTS_STYLES_PROVIDERS\n})\n@UntilDestroy()\nexport class FlexDirective implements OnChanges {\n  @Input() airFlex?: string;\n  @Input('xs.airFlex') xsAirFlex?: string;\n  @Input('sm.airFlex') smAirFlex?: string;\n  @Input('md.airFlex') mdAirFlex?: string;\n  @Input('lg.airFlex') lgAirFlex?: string;\n  @Input('xl.airFlex') xlAirFlex?: string;\n  @Input('ltSm.airFlex') ltSmAirFlex?: string;\n  @Input('ltMd.airFlex') ltMdAirFlex?: string;\n  @Input('ltLg.airFlex') ltLgAirFlex?: string;\n  @Input('ltXl.airFlex') ltXlAirFlex?: string;\n  @Input('gtSm.airFlex') gtSmAirFlex?: string;\n  @Input('gtMd.airFlex') gtMdAirFlex?: string;\n  @Input('gtLg.airFlex') gtLgAirFlex?: string;\n  @Input('gtXs.airFlex') gtXsAirFlex?: string;\n\n  constructor(private changesState: ChangesState<string, string>, breakpointsStylesManager: BreakpointsStylesManager) {\n    breakpointsStylesManager.watch().pipe(untilDestroyed(this)).subscribe();\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    this.changesState.patch(changes);\n  }\n\n}\n","import {Provider} from '@angular/core';\nimport {breakpointsStylesProviders, StringObject} from '@airy-ui/cdk';\n\nexport const GRID_ITEM_PROVIDERS: Provider[] = breakpointsStylesProviders({\n  stylesFactories: {\n    gridItem: (value: string): StringObject => {\n      return value ? {maxWidth: `var(--grid-item-${value})`} : {};\n    },\n    filledGridItem: (value: string): StringObject => {\n      return value ? {maxWidth: `var(--filled-grid-item-${value})`} : {};\n    },\n    fixedGridItem: (value: string): StringObject => {\n      return value ? {maxWidth: `var(--fixed-grid-item-${value})`} : {};\n    }\n  }\n})\n","import {Directive, HostBinding, Input, OnChanges, SimpleChanges} from '@angular/core';\nimport {GRID_ITEM_PROVIDERS} from './grid-item.providers';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {BreakpointsStylesManager} from '@airy-ui/cdk';\nimport {ChangesState} from '@airy-ui/cdk';\n\ntype GridItem =\n  1\n  | '1'\n  | 2\n  | '2'\n  | 3\n  | '3'\n  | 4\n  | '4'\n  | 5\n  | '5'\n  | 6\n  | '6'\n  | 7\n  | '7'\n  | 8\n  | '8'\n  | 9\n  | '9'\n  | 10\n  | '10'\n  | 11\n  | '11'\n  | 12\n  | '12'\n  | string;\n\n@Directive({\n  selector: `\n  [airGridItem],\n  [xs.airGridItem],\n  [sm.airGridItem],\n  [md.airGridItem],\n  [lg.airGridItem],\n  [xl.airGridItem],\n  [ltSm.airGridItem],\n  [ltMd.airGridItem],\n  [ltLg.airGridItem],\n  [ltXl.airGridItem],\n  [gtSm.airGridItem],\n  [gtMd.airGridItem],\n  [gtLg.airGridItem],\n  [gtXs.airGridItem],\n  [airFilledGridItem],\n  [xs.airFilledGridItem],\n  [sm.airFilledGridItem],\n  [md.airFilledGridItem],\n  [lg.airFilledGridItem],\n  [xl.airFilledGridItem],\n  [ltSm.airFilledGridItem],\n  [ltMd.airFilledGridItem],\n  [ltLg.airFilledGridItem],\n  [ltXl.airFilledGridItem],\n  [gtSm.airFilledGridItem],\n  [gtMd.airFilledGridItem],\n  [gtLg.airFilledGridItem],\n  [gtXs.airFilledGridItem],\n  [airFixedGridItem],\n  [xs.airFixedGridItem],\n  [sm.airFixedGridItem],\n  [md.airFixedGridItem],\n  [lg.airFixedGridItem],\n  [xl.airFixedGridItem],\n  [ltSm.airFixedGridItem],\n  [ltMd.airFixedGridItem],\n  [ltLg.airFixedGridItem],\n  [ltXl.airFixedGridItem],\n  [gtSm.airFixedGridItem],\n  [gtMd.airFixedGridItem],\n  [gtLg.airFixedGridItem],\n  [gtXs.airFixedGridItem],\n  `,\n  providers: [GRID_ITEM_PROVIDERS]\n})\n@UntilDestroy()\nexport class GridItemDirective implements OnChanges {\n  @HostBinding('class.air-grid-item') defaultClass = true;\n\n  @Input() airGridItem?: GridItem;\n  @Input('xs.airGridItem') xsAirGridItem?: GridItem;\n  @Input('sm.airGridItem') smAirGridItem?: GridItem;\n  @Input('md.airGridItem') mdAirGridItem?: GridItem;\n  @Input('lg.airGridItem') lgAirGridItem?: GridItem;\n  @Input('xl.airGridItem') xlAirGridItem?: GridItem;\n  @Input('ltSm.airGridItem') ltSmAirGridItem?: GridItem;\n  @Input('ltMd.airGridItem') ltMdAirGridItem?: GridItem;\n  @Input('ltLg.airGridItem') ltLgAirGridItem?: GridItem;\n  @Input('ltXl.airGridItem') ltXlAirGridItem?: GridItem;\n  @Input('gtSm.airGridItem') gtSmAirGridItem?: GridItem;\n  @Input('gtMd.airGridItem') gtMdAirGridItem?: GridItem;\n  @Input('gtLg.airGridItem') gtLgAirGridItem?: GridItem;\n  @Input('gtXs.airGridItem') gtXsAirGridItem?: GridItem;\n\n  @Input() airFilledGridItem?: GridItem;\n  @Input('xs.airFilledGridItem') xsAirFilledGridItem?: GridItem;\n  @Input('sm.airFilledGridItem') smAirFilledGridItem?: GridItem;\n  @Input('md.airFilledGridItem') mdAirFilledGridItem?: GridItem;\n  @Input('lg.airFilledGridItem') lgAirFilledGridItem?: GridItem;\n  @Input('xl.airFilledGridItem') xlAirFilledGridItem?: GridItem;\n  @Input('ltSm.airFilledGridItem') ltSmAirFilledGridItem?: GridItem;\n  @Input('ltMd.airFilledGridItem') ltMdAirFilledGridItem?: GridItem;\n  @Input('ltLg.airFilledGridItem') ltLgAirFilledGridItem?: GridItem;\n  @Input('ltXl.airFilledGridItem') ltXlAirFilledGridItem?: GridItem;\n  @Input('gtSm.airFilledGridItem') gtSmAirFilledGridItem?: GridItem;\n  @Input('gtMd.airFilledGridItem') gtMdAirFilledGridItem?: GridItem;\n  @Input('gtLg.airFilledGridItem') gtLgAirFilledGridItem?: GridItem;\n  @Input('gtXs.airFilledGridItem') gtXsAirFilledGridItem?: GridItem;\n\n  @Input() airFixedGridItem?: GridItem;\n  @Input('xs.airFixedGridItem') xsAirFixedGridItem?: GridItem;\n  @Input('sm.airFixedGridItem') smAirFixedGridItem?: GridItem;\n  @Input('md.airFixedGridItem') mdAirFixedGridItem?: GridItem;\n  @Input('lg.airFixedGridItem') lgAirFixedGridItem?: GridItem;\n  @Input('xl.airFixedGridItem') xlAirFixedGridItem?: GridItem;\n  @Input('ltSm.airFixedGridItem') ltSmAirFixedGridItem?: GridItem;\n  @Input('ltMd.airFixedGridItem') ltMdAirFixedGridItem?: GridItem;\n  @Input('ltLg.airFixedGridItem') ltLgAirFixedGridItem?: GridItem;\n  @Input('ltXl.airFixedGridItem') ltXlAirFixedGridItem?: GridItem;\n  @Input('gtSm.airFixedGridItem') gtSmAirFixedGridItem?: GridItem;\n  @Input('gtMd.airFixedGridItem') gtMdAirFixedGridItem?: GridItem;\n  @Input('gtLg.airFixedGridItem') gtLgAirFixedGridItem?: GridItem;\n  @Input('gtXs.airFixedGridItem') gtXsAirFixedGridItem?: GridItem;\n\n  constructor(private breakpointsStylesManager: BreakpointsStylesManager,\n              private changesState: ChangesState<string, string>) {\n    this.breakpointsStylesManager.watch().pipe(untilDestroyed(this)).subscribe();\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    this.changesState.patch(changes);\n  }\n}\n","import {Directive, ElementRef, HostBinding} from '@angular/core';\n\n@Directive({\n  selector: '[airStretch], [airStretchX], [airStretchY], [airStretchForcibly], [airStretchForciblyX], [airStretchForciblyY]'\n})\nexport class StretchDirective {\n  @HostBinding('style.width')\n  get width(): string {\n    return (\n      this.elementRef.nativeElement.hasAttribute('airStretch')\n      ||\n      this.elementRef.nativeElement.hasAttribute('airStretchX')\n    )\n      ? '100%' : '';\n  }\n\n  @HostBinding('style.min-width')\n  get minWidth(): string {\n    return (\n      this.elementRef.nativeElement.hasAttribute('airStretchForcibly')\n      ||\n      this.elementRef.nativeElement.hasAttribute('airStretchForciblyX')\n    )\n      ? '100%' : '';\n  }\n\n  @HostBinding('style.height')\n  get height(): string {\n    return (\n      this.elementRef.nativeElement.hasAttribute('airStretch')\n      ||\n      this.elementRef.nativeElement.hasAttribute('airStretchY')\n    )\n      ? '100%' : '';\n  }\n\n  @HostBinding('style.min-height')\n  get minHeight(): string {\n    return (\n      this.elementRef.nativeElement.hasAttribute('airStretchForcibly')\n      ||\n      this.elementRef.nativeElement.hasAttribute('airStretchForciblyY')\n    )\n      ? '100%' : '';\n  }\n\n  constructor(private elementRef: ElementRef) {\n  }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {portalContainerId} from '@airy-ui/cdk';\n\n\n@Directive({\n  selector: '[airHeaderContainer]'\n})\nexport class HeaderContainerDirective {\n  @Input() airHeaderContainerName = 'default';\n\n  @HostBinding('attr.id') get id(): string {\n    return portalContainerId(this.airHeaderContainerName, 'header');\n  }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {DirectionService} from '@airy-ui/direction';\nimport {StringObject} from '@airy-ui/cdk';\nimport {merge} from 'lodash-es';\nimport {StylesService} from '@airy-ui/cdk';\n\ntype ImpositionTo =\n  'top start'\n  | 'bottom start'\n  | 'top end'\n  | 'bottom end'\n  | 'center center'\n  | 'top center'\n  | 'bottom center'\n  | 'center start'\n  | 'center end';\n\ntype LeftOrRight = 'left' | 'right';\n\nconst DEFAULT_STYLES = {zIndex: '20'};\n\n@Directive({\n  selector: '[airImpositionTo]',\n  providers: [StylesService]\n})\nexport class ImpositionDirective {\n  @HostBinding('style.position') position = 'absolute';\n\n  @Input() set airImpositionTo(value: ImpositionTo) {\n    this.stylesService.style(merge(this.getStyles(value), DEFAULT_STYLES));\n  }\n\n  constructor(private directionService: DirectionService, private stylesService: StylesService) {\n  }\n\n  private get start(): LeftOrRight {\n    if (this.directionService.isLtr()) {\n      return 'left';\n    } else {\n      return 'right';\n    }\n  }\n\n  private get end(): LeftOrRight {\n    if (this.directionService.isLtr()) {\n      return 'right';\n    } else {\n      return 'left';\n    }\n  }\n\n\n  private getStyles(value: ImpositionTo): StringObject {\n    if (value === 'top start') {\n      return {top: '0', [this.start]: '0'};\n    }\n    if (value === 'top end') {\n      return {top: '0', [this.end]: '0'};\n    }\n\n    if (value === 'bottom end') {\n      return {bottom: '0', [this.end]: '0'};\n    }\n\n    if (value === 'center center') {\n      return {top: '0', bottom: '0', right: '0', left: '0', margin: 'auto'}\n    }\n\n    if (value === 'top center') {\n      return {top: '0', left: '0', right: '0', margin: '0 auto'};\n    }\n\n    if (value === 'bottom center') {\n      return {bottom: '0', left: '0', right: '0', margin: '0 auto'};\n    }\n\n    if (value === 'center start') {\n      return {bottom: '0', top: '0', [this.start]: '0', margin: 'auto 0'};\n    }\n\n    if (value === 'center end') {\n      return {bottom: '0', top: '0', [this.end]: '0', margin: 'auto 0'};\n    }\n\n    return {bottom: '0', [this.start]: '0'};\n  }\n\n\n}\n","import {Directive, HostBinding} from '@angular/core';\n\n@Directive({\n  selector: '[airImpositionContainer]'\n})\nexport class ImpositionContainerDirective {\n  @HostBinding('style.position') position = 'relative';\n\n  @HostBinding('style.max-width') maxWidth = '100%';\n}\n\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {portalContainerId} from '@airy-ui/cdk';\n\n@Directive({\n  selector: '[airActionsContainer]'\n})\nexport class ActionsContainerDirective {\n  @Input() airActionsContainerName = 'default';\n\n  @HostBinding('attr.id')\n  get id(): string {\n    return portalContainerId(this.airActionsContainerName, 'actions');\n  }\n\n}\n","import {ChangeDetectorRef, Directive, Input, TemplateRef, ViewContainerRef} from '@angular/core';\nimport {BreakpointObserver} from '@angular/cdk/layout';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {Subscription} from 'rxjs';\nimport {BreakpointName, breakpointValues} from '@airy-ui/cdk';\n\n@Directive({\n  selector: '[airBreakpoints]'\n})\n@UntilDestroy()\nexport class BreakpointsDirective {\n  private sub?: Subscription;\n\n  @Input() set airBreakpoints(value: BreakpointName[]) {\n    this.sub?.unsubscribe();\n    this.sub = this.observer.observe(breakpointValues(value))\n      .pipe(untilDestroyed(this))\n      .subscribe(state => {\n        if (state.matches) {\n          this.vcr.createEmbeddedView(this.tpl);\n          this.cdr.markForCheck();\n        } else {\n          this.vcr.clear();\n        }\n      });\n  }\n\n  constructor(private tpl: TemplateRef<{}>,\n              private vcr: ViewContainerRef,\n              private cdr: ChangeDetectorRef,\n              private observer: BreakpointObserver) {\n  }\n\n}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, ContentChild, ElementRef, } from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { EndDirective, FooterDirective, HeaderDirective, StartDirective } from '../../directives';\nimport { StickyDirective } from '../../interfaces';\nimport { BREAKPOINT_VALUES } from '@airy-ui/cdk';\n\ntype OffsetName = 'header' | 'footer' | 'end' | 'start';\n\n\n@Component({\n  selector: 'air-page',\n  templateUrl: './page.component.html',\n  styleUrls: ['./page.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\n@UntilDestroy()\nexport class PageComponent implements AfterViewInit {\n  @ContentChild(StartDirective) start?: StartDirective;\n  @ContentChild(EndDirective) end?: EndDirective;\n  @ContentChild(HeaderDirective) header?: HeaderDirective;\n  @ContentChild(FooterDirective) footer?: FooterDirective;\n\n  get startIsSticky(): boolean {\n    return !!this.start?.sticky;\n  }\n\n  get endIsSticky(): boolean {\n    return !!this.end?.sticky;\n  }\n\n  constructor(private elementRef: ElementRef,\n              private breakpointObserver: BreakpointObserver) {\n  }\n\n  ngAfterViewInit(): void {\n    this.breakpointObserver.observe(BREAKPOINT_VALUES)\n      .pipe(untilDestroyed(this)).subscribe(() => {\n      this.offsets();\n      this.startEndSum();\n    });\n  }\n\n  private startEndSum(): void {\n    const start = this.start?.offset || 0;\n    const end = this.end?.offset || 0;\n    this.elementRef.nativeElement.style.setProperty('--page-start-end-sum', String(start + end) + 'px');\n  }\n\n  private offsets(): void {\n    this.offset('start', this.start);\n    this.offset('end', this.end);\n    this.offset('header', this.header);\n    this.offset('footer', this.footer);\n  }\n\n  private offset(name: OffsetName, directive: StickyDirective | undefined): void {\n    if (directive) {\n      if (directive.sticky) {\n        this.elementRef.nativeElement.style.setProperty(`--${name}__offset-sticky`, directive.offset + 'px');\n      } else {\n        this.elementRef.nativeElement.style.setProperty(`--${name}__offset`, directive.offset + 'px');\n      }\n    }\n  }\n}\n","<ng-content select=\"[airStickyHeader], [airHeader]\"></ng-content>\n<ng-content select=\"[airStickyStart],[airStart]\"></ng-content>\n<div class=\"sticky-start-space\" *ngIf=\"startIsSticky\"></div>\n<ng-content select=\"[air-container],air-container,[airContent]\"></ng-content>\n<ng-content select=\"[airStickyEnd],[airEnd]\"></ng-content>\n<div class=\"sticky-end-space\" *ngIf=\"endIsSticky\"></div>\n<ng-content select=\"[airStickyFooter],[airFooter]\"></ng-content>\n","import {AfterViewInit, ChangeDetectionStrategy, Component, Input, OnDestroy, ViewChild} from '@angular/core';\nimport {CdkPortal, DomPortalOutlet} from '@angular/cdk/portal';\nimport {PortalInjectorService} from '@airy-ui/cdk';\n\n@Component({\n  selector: 'air-header-portal',\n  templateUrl: './header-portal.component.html',\n  styleUrls: ['./header-portal.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class HeaderPortalComponent implements AfterViewInit, OnDestroy {\n  @ViewChild(CdkPortal) portal!: CdkPortal;\n  @Input() containerName = 'default';\n  private outlet?: DomPortalOutlet;\n\n  constructor(private portalInjectorService: PortalInjectorService) {\n  }\n\n  ngAfterViewInit(): void {\n    setTimeout(() => {\n      const container = this.portalInjectorService.container(this.containerName, 'header');\n      this.outlet = this.portalInjectorService.createOutlet(container);\n      this.outlet.attach(this.portal);\n    })\n  }\n\n  ngOnDestroy(): void {\n    this.outlet?.detach();\n  }\n\n}\n","<ng-container *cdkPortal>\n  <ng-content></ng-content>\n</ng-container>\n","import {AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input} from '@angular/core';\nimport {DirectionService} from '@airy-ui/direction';\n\ntype ScrollStrategy = 'auto' | 'visible' | 'scroll';\n\ninterface ScrollTo {\n  x?: number;\n  y?: number;\n}\n\n@Component({\n  selector: 'air-scroll-container, [air-scroll-container]',\n  templateUrl: './scroll-container.component.html',\n  styleUrls: ['./scroll-container.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ScrollContainerComponent implements AfterViewInit {\n  private viewInitialized = false;\n  private scrollPositionCache: ScrollTo = {x: 0, y: 0};\n  @HostBinding('style.overflow-y')\n  @Input() scrollX: ScrollStrategy = 'auto';\n\n  @HostBinding('style.overflow-x')\n  @Input() scrollY: ScrollStrategy = 'auto';\n\n  @Input() set scrollPositionX(x: number) {\n    this.scrollTo({x});\n    if (this.viewInitialized) {\n      this.scrollTo({x});\n    } else {\n      this.scrollPositionCache.x = x;\n    }\n  }\n\n  @Input() set scrollPositionY(value: number) {\n    if (this.viewInitialized) {\n      this.elementRef.nativeElement.scrollTo({top: value});\n    } else {\n      this.scrollPositionCache.y = value;\n    }\n  }\n\n  private scrollTo({x, y}: ScrollTo) {\n    if (x && this.directionService.isRtl()) {\n      x = x * -1;\n    }\n    this.elementRef.nativeElement.scrollTo({top: y, left: x});\n  }\n\n  constructor(private elementRef: ElementRef<HTMLDivElement>, private directionService: DirectionService) {\n  }\n\n  ngAfterViewInit(): void {\n    this.viewInitialized = true;\n    if (this.scrollPositionCache.x || this.scrollPositionCache.y) {\n      this.scrollTo(this.scrollPositionCache);\n    }\n  }\n}\n","<ng-content></ng-content>\n","import {AfterViewInit, ChangeDetectionStrategy, Component, Input, OnDestroy, ViewChild} from '@angular/core';\nimport {PortalInjectorService} from '@airy-ui/cdk';\nimport {CdkPortal, DomPortalOutlet} from '@angular/cdk/portal';\n\n@Component({\n  selector: 'air-actions-portal',\n  templateUrl: './actions-portal.component.html',\n  styleUrls: ['./actions-portal.component.css'],\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ActionsPortalComponent implements AfterViewInit, OnDestroy {\n  @ViewChild(CdkPortal) portal!: CdkPortal;\n  @Input() containerName = 'default';\n  private outlet?: DomPortalOutlet;\n\n  constructor(private portalInjectorService: PortalInjectorService) {\n  }\n\n  ngAfterViewInit(): void {\n    setTimeout(() => {\n      const container = this.portalInjectorService.container(this.containerName, 'actions');\n      this.outlet = this.portalInjectorService.createOutlet(container);\n      this.outlet.attach(this.portal);\n    });\n  }\n\n  ngOnDestroy(): void {\n    this.outlet?.detach();\n  }\n\n}\n","<ng-container *cdkPortal>\n  <ng-content></ng-content>\n</ng-container>\n","import {Directive, OnChanges, SimpleChanges} from '@angular/core';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {BreakpointsStylesManager, ChangesState} from '@airy-ui/cdk';\n\n@Directive()\n@UntilDestroy()\nexport abstract class AbstractIndentsDirective implements OnChanges {\n  constructor(protected stylesManager: BreakpointsStylesManager, protected changesState: ChangesState<string, string>) {\n    this.stylesManager.watch().pipe(untilDestroyed(this)).subscribe();\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    this.changesState.patch(changes);\n  }\n}\n\n","export const DEFAULT_VALUES_MAP = {\n  xxs: '8px',\n  xs: '12px',\n  s: '16px',\n  m: '20px',\n  l: '28px',\n  xl: '40px',\n  xxl: '60px',\n  none: '0',\n  default: '20px',\n  auto: 'auto'\n};\nexport const isNegative = (size: string) => size.includes('-');\nexport const isMultiple = (size: string) => size.includes(' ');\nexport const multipleSize = (size: string) => size\n  .split(' ')\n  .reduce((previous, current) => `${previous} ${singleSize(current)}`, '')\n  .trim();\nexport const pureSizeName = (size: string): keyof typeof DEFAULT_VALUES_MAP => size === '' ? 'm' : size.replace('-', '')\n  .replace('default', 'm') as keyof typeof DEFAULT_VALUES_MAP;\nexport const singleSize = (size: string) => {\n  if (isStatic(size)) {\n    return getStatic(size);\n  }\n  const pureName = pureSizeName(size);\n  const defaultValue = DEFAULT_VALUES_MAP[pureName];\n  const positiveVar = `var(--indent-${pureName}, ${defaultValue})`;\n  return isNegative(size) ? `calc(-1 * ${positiveVar})` : positiveVar;\n};\nexport const isStatic = (size: string): boolean => size.includes('none') || size.includes('0') || size.includes('auto');\nexport const getStatic = (size: string) => size === 'none' ? '0' : size;\nexport const indentVar = (size: string): string => {\n  return isMultiple(size) ? multipleSize(size) : singleSize(size);\n}\n","import {Provider} from '@angular/core';\nimport {breakpointsStylesProviders} from '@airy-ui/cdk';\nimport {indentVar} from './indent-var';\n\n\nexport const PADDINGS_PROVIDERS: Provider[] = breakpointsStylesProviders({\n  stylesFactories: {\n    paddingVertical: (value: string) => ({\n      paddingTop: indentVar(value),\n      paddingBottom: indentVar(value)\n    }),\n    paddingHorizontal: (value: string) => ({\n      paddingInlineStart: indentVar(value),\n      paddingInlineEnd: indentVar(value)\n    }),\n    padding: (value: string) => ({padding: indentVar(value)}),\n    paddingStart: (value) => ({'padding-inline-start': indentVar(value)}),\n    paddingEnd: (value) => ({'padding-inline-end': indentVar(value)}),\n    paddingTop: (value) => ({'padding-top': indentVar(value)}),\n    paddingBottom: (value) => ({'padding-bottom': indentVar(value)})\n  }\n});\n\nexport const MARGINS_PROVIDERS: Provider[] = breakpointsStylesProviders({\n  stylesFactories: {\n    marginVertical: (value: string) => ({\n      marginTop: indentVar(value),\n      marginBottom: indentVar(value)\n    }),\n    marginHorizontal: (value: string) => ({\n      marginInlineStart: indentVar(value),\n      marginInlineEnd: indentVar(value)\n    }),\n    margin: (value: string) => ({margin: indentVar(value)}),\n    marginStart: (value) => ({'margin-inline-start': indentVar(value)}),\n    marginEnd: (value) => ({'margin-inline-end': indentVar(value)}),\n    marginTop: (value) => ({'margin-top': indentVar(value)}),\n    marginBottom: (value) => ({'margin-bottom': indentVar(value)})\n  }\n})\n\n\n","import {Directive, Input} from '@angular/core';\nimport {AbstractIndentsDirective} from './abstract-indents-directive';\nimport {ThemeSizeWithNegative} from '@airy-ui/cdk';\nimport {MARGINS_PROVIDERS} from './indents.providers';\n\n@Directive({\n  selector: `\n  [airMargin],\n  [xs.airMargin],\n  [sm.airMargin],\n  [md.airMargin],\n  [lg.airMargin],\n  [xl.airMargin],\n  [ltSm.airMargin],\n  [ltMd.airMargin],\n  [ltLg.airMargin],\n  [ltXl.airMargin],\n  [gtSm.airMargin],\n  [gtMd.airMargin],\n  [gtLg.airMargin],\n  [gtXs.airMargin],\n  [airMarginTop],\n  [xs.airMarginTop],\n  [sm.airMarginTop],\n  [md.airMarginTop],\n  [lg.airMarginTop],\n  [xl.airMarginTop],\n  [ltSm.airMarginTop],\n  [ltMd.airMarginTop],\n  [ltLg.airMarginTop],\n  [ltXl.airMarginTop],\n  [gtSm.airMarginTop],\n  [gtMd.airMarginTop],\n  [gtLg.airMarginTop],\n  [gtXs.airMarginTop],\n  [airMarginBottom],\n  [xs.airMarginBottom],\n  [sm.airMarginBottom],\n  [md.airMarginBottom],\n  [lg.airMarginBottom],\n  [xl.airMarginBottom],\n  [ltSm.airMarginBottom],\n  [ltMd.airMarginBottom],\n  [ltLg.airMarginBottom],\n  [ltXl.airMarginBottom],\n  [gtSm.airMarginBottom],\n  [gtMd.airMarginBottom],\n  [gtLg.airMarginBottom],\n  [gtXs.airMarginBottom],\n  [airMarginStart],\n  [xs.airMarginStart],\n  [sm.airMarginStart],\n  [md.airMarginStart],\n  [lg.airMarginStart],\n  [xl.airMarginStart],\n  [ltSm.airMarginStart],\n  [ltMd.airMarginStart],\n  [ltLg.airMarginStart],\n  [ltXl.airMarginStart],\n  [gtSm.airMarginStart],\n  [gtMd.airMarginStart],\n  [gtLg.airMarginStart],\n  [gtXs.airMarginStart],\n  [airMarginEnd],\n  [xs.airMarginEnd],\n  [sm.airMarginEnd],\n  [md.airMarginEnd],\n  [lg.airMarginEnd],\n  [xl.airMarginEnd],\n  [ltSm.airMarginEnd],\n  [ltMd.airMarginEnd],\n  [ltLg.airMarginEnd],\n  [ltXl.airMarginEnd],\n  [gtSm.airMarginEnd],\n  [gtMd.airMarginEnd],\n  [gtLg.airMarginEnd],\n  [gtXs.airMarginEnd],\n  [airMarginHorizontal],\n  [xs.airMarginHorizontal],\n  [sm.airMarginHorizontal],\n  [md.airMarginHorizontal],\n  [lg.airMarginHorizontal],\n  [xl.airMarginHorizontal],\n  [ltSm.airMarginHorizontal],\n  [ltMd.airMarginHorizontal],\n  [ltLg.airMarginHorizontal],\n  [ltXl.airMarginHorizontal],\n  [gtSm.airMarginHorizontal],\n  [gtMd.airMarginHorizontal],\n  [gtLg.airMarginHorizontal],\n  [gtXs.airMarginHorizontal],\n  [airMarginVertical],\n  [xs.airMarginVertical],\n  [sm.airMarginVertical],\n  [md.airMarginVertical],\n  [lg.airMarginVertical],\n  [xl.airMarginVertical],\n  [ltSm.airMarginVertical],\n  [ltMd.airMarginVertical],\n  [ltLg.airMarginVertical],\n  [ltXl.airMarginVertical],\n  [gtSm.airMarginVertical],\n  [gtMd.airMarginVertical],\n  [gtLg.airMarginVertical],\n  [gtXs.airMarginVertical]\n  `,\n  providers: MARGINS_PROVIDERS\n})\nexport class MarginsDirective extends AbstractIndentsDirective {\n  @Input() airMargin: ThemeSizeWithNegative | string;\n  @Input('xs.airMargin') xsAirMargin: ThemeSizeWithNegative;\n  @Input('sm.airMargin') smAirMargin: ThemeSizeWithNegative;\n  @Input('md.airMargin') mdAirMargin: ThemeSizeWithNegative;\n  @Input('lg.airMargin') lgAirMargin: ThemeSizeWithNegative;\n  @Input('xl.airMargin') xlAirMargin: ThemeSizeWithNegative;\n  @Input('ltSm.airMargin') ltSmAirMargin: ThemeSizeWithNegative | string;\n  @Input('ltMd.airMargin') ltMdAirMargin: ThemeSizeWithNegative | string;\n  @Input('ltLg.airMargin') ltLgAirMargin: ThemeSizeWithNegative | string;\n  @Input('ltXl.airMargin') ltXlAirMargin: ThemeSizeWithNegative | string;\n  @Input('gtSm.airMargin') gtSmAirMargin: ThemeSizeWithNegative | string;\n  @Input('gtMd.airMargin') gtMdAirMargin: ThemeSizeWithNegative | string;\n  @Input('gtLg.airMargin') gtLgAirMargin: ThemeSizeWithNegative | string;\n  @Input('gtXs.airMargin') gtXsAirMargin: ThemeSizeWithNegative | string;\n\n  @Input() airMarginTop: ThemeSizeWithNegative;\n  @Input('xs.airMarginTop') xsAirMarginTop: ThemeSizeWithNegative;\n  @Input('sm.airMarginTop') smAirMarginTop: ThemeSizeWithNegative;\n  @Input('md.airMarginTop') mdAirMarginTop: ThemeSizeWithNegative;\n  @Input('lg.airMarginTop') lgAirMarginTop: ThemeSizeWithNegative;\n  @Input('xl.airMarginTop') xlAirMarginTop: ThemeSizeWithNegative;\n  @Input('ltSm.airMarginTop') ltSmAirMarginTop: ThemeSizeWithNegative;\n  @Input('ltMd.airMarginTop') ltMdAirMarginTop: ThemeSizeWithNegative;\n  @Input('ltLg.airMarginTop') ltLgAirMarginTop: ThemeSizeWithNegative;\n  @Input('ltXl.airMarginTop') ltXlAirMarginTop: ThemeSizeWithNegative;\n  @Input('gtSm.airMarginTop') gtSmAirMarginTop: ThemeSizeWithNegative;\n  @Input('gtMd.airMarginTop') gtMdAirMarginTop: ThemeSizeWithNegative;\n  @Input('gtLg.airMarginTop') gtLgAirMarginTop: ThemeSizeWithNegative;\n  @Input('gtXs.airMarginTop') gtXsAirMarginTop: ThemeSizeWithNegative;\n\n  @Input() airMarginBottom: ThemeSizeWithNegative;\n  @Input('xs.airMarginBottom') xsAirMarginBottom: ThemeSizeWithNegative;\n  @Input('sm.airMarginBottom') smAirMarginBottom: ThemeSizeWithNegative;\n  @Input('md.airMarginBottom') mdAirMarginBottom: ThemeSizeWithNegative;\n  @Input('lg.airMarginBottom') lgAirMarginBottom: ThemeSizeWithNegative;\n  @Input('xl.airMarginBottom') xlAirMarginBottom: ThemeSizeWithNegative;\n  @Input('ltSm.airMarginBottom') ltSmAirMarginBottom: ThemeSizeWithNegative;\n  @Input('ltMd.airMarginBottom') ltMdAirMarginBottom: ThemeSizeWithNegative;\n  @Input('ltLg.airMarginBottom') ltLgAirMarginBottom: ThemeSizeWithNegative;\n  @Input('ltXl.airMarginBottom') ltXlAirMarginBottom: ThemeSizeWithNegative;\n  @Input('gtSm.airMarginBottom') gtSmAirMarginBottom: ThemeSizeWithNegative;\n  @Input('gtMd.airMarginBottom') gtMdAirMarginBottom: ThemeSizeWithNegative;\n  @Input('gtLg.airMarginBottom') gtLgAirMarginBottom: ThemeSizeWithNegative;\n  @Input('gtXs.airMarginBottom') gtXsAirMarginBottom: ThemeSizeWithNegative;\n\n  @Input() airMarginStart: ThemeSizeWithNegative;\n  @Input('xs.airMarginStart') xsAirMarginStart: ThemeSizeWithNegative;\n  @Input('sm.airMarginStart') smAirMarginStart: ThemeSizeWithNegative;\n  @Input('md.airMarginStart') mdAirMarginStart: ThemeSizeWithNegative;\n  @Input('lg.airMarginStart') lgAirMarginStart: ThemeSizeWithNegative;\n  @Input('xl.airMarginStart') xlAirMarginStart: ThemeSizeWithNegative;\n  @Input('ltSm.airMarginStart') ltSmAirMarginStart: ThemeSizeWithNegative;\n  @Input('ltMd.airMarginStart') ltMdAirMarginStart: ThemeSizeWithNegative;\n  @Input('ltLg.airMarginStart') ltLgAirMarginStart: ThemeSizeWithNegative;\n  @Input('ltXl.airMarginStart') ltXlAirMarginStart: ThemeSizeWithNegative;\n  @Input('gtSm.airMarginStart') gtSmAirMarginStart: ThemeSizeWithNegative;\n  @Input('gtMd.airMarginStart') gtMdAirMarginStart: ThemeSizeWithNegative;\n  @Input('gtLg.airMarginStart') gtLgAirMarginStart: ThemeSizeWithNegative;\n  @Input('gtXs.airMarginStart') gtXsAirMarginStart: ThemeSizeWithNegative;\n\n  @Input() airMarginEnd: ThemeSizeWithNegative;\n  @Input('xs.airMarginEnd') xsAirMarginEnd: ThemeSizeWithNegative;\n  @Input('sm.airMarginEnd') smAirMarginEnd: ThemeSizeWithNegative;\n  @Input('md.airMarginEnd') mdAirMarginEnd: ThemeSizeWithNegative;\n  @Input('lg.airMarginEnd') lgAirMarginEnd: ThemeSizeWithNegative;\n  @Input('xl.airMarginEnd') xlAirMarginEnd: ThemeSizeWithNegative;\n  @Input('ltSm.airMarginEnd') ltSmAirMarginEnd: ThemeSizeWithNegative;\n  @Input('ltMd.airMarginEnd') ltMdAirMarginEnd: ThemeSizeWithNegative;\n  @Input('ltLg.airMarginEnd') ltLgAirMarginEnd: ThemeSizeWithNegative;\n  @Input('ltXl.airMarginEnd') ltXlAirMarginEnd: ThemeSizeWithNegative;\n  @Input('gtSm.airMarginEnd') gtSmAirMarginEnd: ThemeSizeWithNegative;\n  @Input('gtMd.airMarginEnd') gtMdAirMarginEnd: ThemeSizeWithNegative;\n  @Input('gtLg.airMarginEnd') gtLgAirMarginEnd: ThemeSizeWithNegative;\n  @Input('gtXs.airMarginEnd') gtXsAirMarginEnd: ThemeSizeWithNegative;\n\n  @Input() airMarginHorizontal: ThemeSizeWithNegative;\n  @Input('xs.airMarginHorizontal') xsAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('sm.airMarginHorizontal') smAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('md.airMarginHorizontal') mdAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('lg.airMarginHorizontal') lgAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('xl.airMarginHorizontal') xlAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('ltSm.airMarginHorizontal') ltSmAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('ltMd.airMarginHorizontal') ltMdAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('ltLg.airMarginHorizontal') ltLgAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('ltXl.airMarginHorizontal') ltXlAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('gtSm.airMarginHorizontal') gtSmAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('gtMd.airMarginHorizontal') gtMdAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('gtLg.airMarginHorizontal') gtLgAirMarginHorizontal: ThemeSizeWithNegative;\n  @Input('gtXs.airMarginHorizontal') gtXsAirMarginHorizontal: ThemeSizeWithNegative;\n\n  @Input() airMarginVertical: ThemeSizeWithNegative;\n  @Input('xs.airMarginVertical') xsAirMarginVertical: ThemeSizeWithNegative;\n  @Input('sm.airMarginVertical') smAirMarginVertical: ThemeSizeWithNegative;\n  @Input('md.airMarginVertical') mdAirMarginVertical: ThemeSizeWithNegative;\n  @Input('lg.airMarginVertical') lgAirMarginVertical: ThemeSizeWithNegative;\n  @Input('xl.airMarginVertical') xlAirMarginVertical: ThemeSizeWithNegative;\n  @Input('ltSm.airMarginVertical') ltSmAirMarginVertical: ThemeSizeWithNegative;\n  @Input('ltMd.airMarginVertical') ltMdAirMarginVertical: ThemeSizeWithNegative;\n  @Input('ltLg.airMarginVertical') ltLgAirMarginVertical: ThemeSizeWithNegative;\n  @Input('ltXl.airMarginVertical') ltXlAirMarginVertical: ThemeSizeWithNegative;\n  @Input('gtSm.airMarginVertical') gtSmAirMarginVertical: ThemeSizeWithNegative;\n  @Input('gtMd.airMarginVertical') gtMdAirMarginVertical: ThemeSizeWithNegative;\n  @Input('gtLg.airMarginVertical') gtLgAirMarginVertical: ThemeSizeWithNegative;\n  @Input('gtXs.airMarginVertical') gtXsAirMarginVertical: ThemeSizeWithNegative;\n}\n","import {Directive, Input} from '@angular/core';\nimport {AbstractIndentsDirective} from './abstract-indents-directive';\nimport {PADDINGS_PROVIDERS} from './indents.providers';\nimport {ThemeSize} from '@airy-ui/cdk';\n\n@Directive({\n  selector: `\n  [airPadding],\n  [airPaddingStart],\n  [airPaddingEnd],\n  [xs.airPadding],\n  [sm.airPadding],\n  [md.airPadding],\n  [lg.airPadding],\n  [xl.airPadding],\n  [ltSm.airPadding],\n  [ltMd.airPadding],\n  [ltLg.airPadding],\n  [ltXl.airPadding],\n  [gtSm.airPadding],\n  [gtMd.airPadding],\n  [gtLg.airPadding],\n  [gtXs.airPadding],\n  [airPaddingTop],\n  [xs.airPaddingTop],\n  [sm.airPaddingTop],\n  [md.airPaddingTop],\n  [lg.airPaddingTop],\n  [xl.airPaddingTop],\n  [ltSm.airPaddingTop],\n  [ltMd.airPaddingTop],\n  [ltLg.airPaddingTop],\n  [ltXl.airPaddingTop],\n  [gtSm.airPaddingTop],\n  [gtMd.airPaddingTop],\n  [gtLg.airPaddingTop],\n  [gtXs.airPaddingTop],\n  [airPaddingBottom],\n  [xs.airPaddingBottom],\n  [sm.airPaddingBottom],\n  [md.airPaddingBottom],\n  [lg.airPaddingBottom],\n  [xl.airPaddingBottom],\n  [ltSm.airPaddingBottom],\n  [ltMd.airPaddingBottom],\n  [ltLg.airPaddingBottom],\n  [ltXl.airPaddingBottom],\n  [gtSm.airPaddingBottom],\n  [gtMd.airPaddingBottom],\n  [gtLg.airPaddingBottom],\n  [gtXs.airPaddingBottom],\n  [airPaddingStart],\n  [xs.airPaddingStart],\n  [sm.airPaddingStart],\n  [md.airPaddingStart],\n  [lg.airPaddingStart],\n  [xl.airPaddingStart],\n  [ltSm.airPaddingStart],\n  [ltMd.airPaddingStart],\n  [ltLg.airPaddingStart],\n  [ltXl.airPaddingStart],\n  [gtSm.airPaddingStart],\n  [gtMd.airPaddingStart],\n  [gtLg.airPaddingStart],\n  [gtXs.airPaddingStart],\n  [airPaddingEnd],\n  [xs.airPaddingEnd],\n  [sm.airPaddingEnd],\n  [md.airPaddingEnd],\n  [lg.airPaddingEnd],\n  [xl.airPaddingEnd],\n  [ltSm.airPaddingEnd],\n  [ltMd.airPaddingEnd],\n  [ltLg.airPaddingEnd],\n  [ltXl.airPaddingEnd],\n  [gtSm.airPaddingEnd],\n  [gtMd.airPaddingEnd],\n  [gtLg.airPaddingEnd],\n  [gtXs.airPaddingEnd],\n  [airPaddingHorizontal],\n  [xs.airPaddingHorizontal],\n  [sm.airPaddingHorizontal],\n  [md.airPaddingHorizontal],\n  [lg.airPaddingHorizontal],\n  [xl.airPaddingHorizontal],\n  [ltSm.airPaddingHorizontal],\n  [ltMd.airPaddingHorizontal],\n  [ltLg.airPaddingHorizontal],\n  [ltXl.airPaddingHorizontal],\n  [gtSm.airPaddingHorizontal],\n  [gtMd.airPaddingHorizontal],\n  [gtLg.airPaddingHorizontal],\n  [gtXs.airPaddingHorizontal],\n  [airPaddingVertical],\n  [xs.airPaddingVertical],\n  [sm.airPaddingVertical],\n  [md.airPaddingVertical],\n  [lg.airPaddingVertical],\n  [xl.airPaddingVertical],\n  [ltSm.airPaddingVertical],\n  [ltMd.airPaddingVertical],\n  [ltLg.airPaddingVertical],\n  [ltXl.airPaddingVertical],\n  [gtSm.airPaddingVertical],\n  [gtMd.airPaddingVertical],\n  [gtLg.airPaddingVertical],\n  [gtXs.airPaddingVertical],\n  `,\n  providers: PADDINGS_PROVIDERS\n})\nexport class PaddingsDirective extends AbstractIndentsDirective {\n  @Input() airPadding: ThemeSize;\n  @Input('xs.airPadding') xsAirPadding: ThemeSize | string;\n  @Input('sm.airPadding') smAirPadding: ThemeSize | string;\n  @Input('md.airPadding') mdAirPadding: ThemeSize | string;\n  @Input('lg.airPadding') lgAirPadding: ThemeSize | string;\n  @Input('xl.airPadding') xlAirPadding: ThemeSize | string;\n  @Input('ltSm.airPadding') ltSmAirPadding: ThemeSize | string;\n  @Input('ltMd.airPadding') ltMdAirPadding: ThemeSize | string;\n  @Input('ltLg.airPadding') ltLgAirPadding: ThemeSize | string;\n  @Input('ltXl.airPadding') ltXlAirPadding: ThemeSize | string;\n  @Input('gtSm.airPadding') gtSmAirPadding: ThemeSize | string;\n  @Input('gtMd.airPadding') gtMdAirPadding: ThemeSize | string;\n  @Input('gtLg.airPadding') gtLgAirPadding: ThemeSize | string;\n  @Input('gtXs.airPadding') gtXsAirPadding: ThemeSize | string;\n\n  @Input() airPaddingTop: ThemeSize;\n  @Input('xs.airPaddingTop') xsAirPaddingTop: ThemeSize;\n  @Input('sm.airPaddingTop') smAirPaddingTop: ThemeSize;\n  @Input('md.airPaddingTop') mdAirPaddingTop: ThemeSize;\n  @Input('lg.airPaddingTop') lgAirPaddingTop: ThemeSize;\n  @Input('xl.airPaddingTop') xlAirPaddingTop: ThemeSize;\n  @Input('ltSm.airPaddingTop') ltSmAirPaddingTop: ThemeSize;\n  @Input('ltMd.airPaddingTop') ltMdAirPaddingTop: ThemeSize;\n  @Input('ltLg.airPaddingTop') ltLgAirPaddingTop: ThemeSize;\n  @Input('ltXl.airPaddingTop') ltXlAirPaddingTop: ThemeSize;\n  @Input('gtSm.airPaddingTop') gtSmAirPaddingTop: ThemeSize;\n  @Input('gtMd.airPaddingTop') gtMdAirPaddingTop: ThemeSize;\n  @Input('gtLg.airPaddingTop') gtLgAirPaddingTop: ThemeSize;\n  @Input('gtXs.airPaddingTop') gtXsAirPaddingTop: ThemeSize;\n\n  @Input() airPaddingBottom: ThemeSize;\n  @Input('xs.airPaddingBottom') xsAirPaddingBottom: ThemeSize;\n  @Input('sm.airPaddingBottom') smAirPaddingBottom: ThemeSize;\n  @Input('md.airPaddingBottom') mdAirPaddingBottom: ThemeSize;\n  @Input('lg.airPaddingBottom') lgAirPaddingBottom: ThemeSize;\n  @Input('xl.airPaddingBottom') xlAirPaddingBottom: ThemeSize;\n  @Input('ltSm.airPaddingBottom') ltSmAirPaddingBottom: ThemeSize;\n  @Input('ltMd.airPaddingBottom') ltMdAirPaddingBottom: ThemeSize;\n  @Input('ltLg.airPaddingBottom') ltLgAirPaddingBottom: ThemeSize;\n  @Input('ltXl.airPaddingBottom') ltXlAirPaddingBottom: ThemeSize;\n  @Input('gtSm.airPaddingBottom') gtSmAirPaddingBottom: ThemeSize;\n  @Input('gtMd.airPaddingBottom') gtMdAirPaddingBottom: ThemeSize;\n  @Input('gtLg.airPaddingBottom') gtLgAirPaddingBottom: ThemeSize;\n  @Input('gtXs.airPaddingBottom') gtXsAirPaddingBottom: ThemeSize;\n\n  @Input() airPaddingStart: ThemeSize;\n  @Input('xs.airPaddingStart') xsAirPaddingStart: ThemeSize;\n  @Input('sm.airPaddingStart') smAirPaddingStart: ThemeSize;\n  @Input('md.airPaddingStart') mdAirPaddingStart: ThemeSize;\n  @Input('lg.airPaddingStart') lgAirPaddingStart: ThemeSize;\n  @Input('xl.airPaddingStart') xlAirPaddingStart: ThemeSize;\n  @Input('ltSm.airPaddingStart') ltSmAirPaddingStart: ThemeSize;\n  @Input('ltMd.airPaddingStart') ltMdAirPaddingStart: ThemeSize;\n  @Input('ltLg.airPaddingStart') ltLgAirPaddingStart: ThemeSize;\n  @Input('ltXl.airPaddingStart') ltXlAirPaddingStart: ThemeSize;\n  @Input('gtSm.airPaddingStart') gtSmAirPaddingStart: ThemeSize;\n  @Input('gtMd.airPaddingStart') gtMdAirPaddingStart: ThemeSize;\n  @Input('gtLg.airPaddingStart') gtLgAirPaddingStart: ThemeSize;\n  @Input('gtXs.airPaddingStart') gtXsAirPaddingStart: ThemeSize;\n\n  @Input() airPaddingEnd: ThemeSize;\n  @Input('xs.airPaddingEnd') xsAirPaddingEnd: ThemeSize;\n  @Input('sm.airPaddingEnd') smAirPaddingEnd: ThemeSize;\n  @Input('md.airPaddingEnd') mdAirPaddingEnd: ThemeSize;\n  @Input('lg.airPaddingEnd') lgAirPaddingEnd: ThemeSize;\n  @Input('xl.airPaddingEnd') xlAirPaddingEnd: ThemeSize;\n  @Input('ltSm.airPaddingEnd') ltSmAirPaddingEnd: ThemeSize;\n  @Input('ltMd.airPaddingEnd') ltMdAirPaddingEnd: ThemeSize;\n  @Input('ltLg.airPaddingEnd') ltLgAirPaddingEnd: ThemeSize;\n  @Input('ltXl.airPaddingEnd') ltXlAirPaddingEnd: ThemeSize;\n  @Input('gtSm.airPaddingEnd') gtSmAirPaddingEnd: ThemeSize;\n  @Input('gtMd.airPaddingEnd') gtMdAirPaddingEnd: ThemeSize;\n  @Input('gtLg.airPaddingEnd') gtLgAirPaddingEnd: ThemeSize;\n  @Input('gtXs.airPaddingEnd') gtXsAirPaddingEnd: ThemeSize;\n\n  @Input() airPaddingVertical: ThemeSize;\n  @Input('xs.airPaddingVertical') xsAirPaddingVertical: ThemeSize;\n  @Input('sm.airPaddingVertical') smAirPaddingVertical: ThemeSize;\n  @Input('md.airPaddingVertical') mdAirPaddingVertical: ThemeSize;\n  @Input('lg.airPaddingVertical') lgAirPaddingVertical: ThemeSize;\n  @Input('xl.airPaddingVertical') xlAirPaddingVertical: ThemeSize;\n  @Input('ltSm.airPaddingVertical') ltSmAirPaddingVertical: ThemeSize;\n  @Input('ltMd.airPaddingVertical') ltMdAirPaddingVertical: ThemeSize;\n  @Input('ltLg.airPaddingVertical') ltLgAirPaddingVertical: ThemeSize;\n  @Input('ltXl.airPaddingVertical') ltXlAirPaddingVertical: ThemeSize;\n  @Input('gtSm.airPaddingVertical') gtSmAirPaddingVertical: ThemeSize;\n  @Input('gtMd.airPaddingVertical') gtMdAirPaddingVertical: ThemeSize;\n  @Input('gtLg.airPaddingVertical') gtLgAirPaddingVertical: ThemeSize;\n  @Input('gtXs.airPaddingVertical') gtXsAirPaddingVertical: ThemeSize;\n\n  @Input() airPaddingHorizontal: ThemeSize;\n  @Input('xs.airPaddingHorizontal') xsAirPaddingHorizontal: ThemeSize;\n  @Input('sm.airPaddingHorizontal') smAirPaddingHorizontal: ThemeSize;\n  @Input('md.airPaddingHorizontal') mdAirPaddingHorizontal: ThemeSize;\n  @Input('lg.airPaddingHorizontal') lgAirPaddingHorizontal: ThemeSize;\n  @Input('xl.airPaddingHorizontal') xlAirPaddingHorizontal: ThemeSize;\n  @Input('ltSm.airPaddingHorizontal') ltSmAirPaddingHorizontal: ThemeSize;\n  @Input('ltMd.airPaddingHorizontal') ltMdAirPaddingHorizontal: ThemeSize;\n  @Input('ltLg.airPaddingHorizontal') ltLgAirPaddingHorizontal: ThemeSize;\n  @Input('ltXl.airPaddingHorizontal') ltXlAirPaddingHorizontal: ThemeSize;\n  @Input('gtSm.airPaddingHorizontal') gtSmAirPaddingHorizontal: ThemeSize;\n  @Input('gtMd.airPaddingHorizontal') gtMdAirPaddingHorizontal: ThemeSize;\n  @Input('gtLg.airPaddingHorizontal') gtLgAirPaddingHorizontal: ThemeSize;\n  @Input('gtXs.airPaddingHorizontal') gtXsAirPaddingHorizontal: ThemeSize;\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {MarginsDirective} from './margins.directive';\nimport {PaddingsDirective} from './paddings.directive';\n\n\n@NgModule({\n  declarations: [MarginsDirective, PaddingsDirective],\n  exports: [MarginsDirective, PaddingsDirective],\n  imports: [\n    CommonModule\n  ]\n})\nexport class AirIndentsModule {\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { LayoutDirective } from './layout.directive';\n\n\n\n@NgModule({\n  declarations: [LayoutDirective],\n  exports: [LayoutDirective],\n  imports: [\n    CommonModule\n  ]\n})\nexport class LayoutModule { }\n","import { NgModule } from '@angular/core';\nimport {\n  ActionsPortalComponent,\n  ContainerComponent,\n  HeaderPortalComponent,\n  PageComponent,\n  ScrollContainerComponent\n} from './components';\nimport {\n  ActionsContainerDirective,\n  BreakpointsDirective,\n  ContentDirective,\n  EndDirective,\n  FlexDirective,\n  FooterDirective,\n  GridItemDirective,\n  HeaderContainerDirective,\n  HeaderDirective,\n  ImpositionContainerDirective,\n  ImpositionDirective,\n  StartDirective,\n  StretchDirective,\n} from './directives';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { AirDirectionModule } from '@airy-ui/direction';\nimport { AirIndentsModule } from './indents';\nimport { CommonModule } from '@angular/common';\nimport { LayoutModule } from './layout/layout.module';\n\n\nconst declarations = [\n  HeaderContainerDirective,\n  PageComponent,\n  HeaderPortalComponent,\n  StretchDirective,\n  HeaderDirective,\n  FooterDirective,\n  EndDirective,\n  StartDirective,\n  GridItemDirective,\n  ContentDirective,\n  ContainerComponent,\n  FlexDirective,\n  ScrollContainerComponent,\n  ImpositionContainerDirective,\n  ImpositionDirective,\n  ActionsPortalComponent,\n  ActionsContainerDirective,\n  BreakpointsDirective\n];\n\n@NgModule({\n  declarations,\n  imports: [\n    PortalModule,\n    AirDirectionModule,\n    AirIndentsModule,\n    CommonModule,\n    LayoutModule\n  ],\n  providers: [],\n  exports: [declarations, AirIndentsModule, LayoutModule]\n})\nexport class AirLayoutModule {\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {fromEvent, Observable} from 'rxjs';\nimport {auditTime} from 'rxjs/operators';\n\n/**\n * @dynamic\n */\n@Injectable({\n  providedIn: 'root'\n})\nexport class PositionService {\n  constructor(@Inject(WINDOW) readonly window: Window) {\n  }\n\n  watch(): Observable<Event> {\n    return fromEvent(this.window, 'resize').pipe(auditTime(50));\n  }\n\n  lastOnLine(el: HTMLElement): boolean {\n    const {parent, children} = this.parentAndChildren(el);\n    if (this.parentOrElementInvalid(parent, el)) {\n      return false;\n    }\n    const parentWidth = this.getWidthWithoutPaddings(parent);\n    const parentGap = this.getGap(parent);\n    let lineWidth = 0;\n    for (let i = 0; i < children.length; i++) {\n      const node = children[i];\n      const nodeWidth = this.childNodeWidth(node);\n      lineWidth += nodeWidth;\n      if (el === node) {\n        if (this.isLastElement(i, children) || lineWidth === parentWidth || nodeWidth >= parentWidth) {\n          return true;\n        }\n\n        if (lineWidth < parentWidth) {\n          const nextNodeWidth = this.getNextNodeWidth(i, children);\n          if (nextNodeWidth + lineWidth > parentWidth) {\n          }\n          return nextNodeWidth + lineWidth > parentWidth;\n        }\n\n        return false;\n\n      }\n      if (lineWidth === parentWidth) {\n        lineWidth = 0;\n      }\n      if (lineWidth > parentWidth) {\n        lineWidth = nodeWidth + parentGap;\n      } else {\n        lineWidth += parentGap;\n      }\n    }\n    return false;\n  }\n\n\n  private isLastElement(i: number, children: Array<any>): boolean {\n    return i + 1 === children.length;\n  }\n\n  private childNodeWidth(node: HTMLElement): number {\n    return node.clientWidth + this.getMargin(node);\n  }\n\n  private needSkipNode(el: HTMLElement): boolean {\n    return el.nodeName === '#comment';\n  }\n\n  private parentAndChildren(el: HTMLElement): { parent: HTMLElement, children: HTMLElement[] } {\n    const parent = el.parentElement as HTMLElement;\n    return {\n      parent,\n      children: Array.from(parent.childNodes).filter(el => !this.needSkipNode(el as HTMLElement)) as HTMLElement[]\n    };\n  }\n\n  private parentOrElementInvalid(parent: HTMLElement, el: HTMLElement): boolean {\n    return !parent || parent.childNodes.length === 1 || el.nodeName === '#comment' || parent.nodeName === '#comment' || this.hasHorizontalScrollbar(parent);\n  }\n\n  firstOnLine(el: HTMLElement): boolean {\n    const parent = el.parentElement;\n    if (!parent || parent.childNodes.length === 1 || el.nodeName === '#comment' || parent.nodeName === '#comment') {\n      return false;\n    }\n\n    if (this.hasHorizontalScrollbar(parent)) {\n      throw new Error('FirstOnLine not working on parent with horizontal scroll');\n    }\n\n    const parentWidth = this.getWidthWithoutPaddings(parent);\n    const parentGap = this.getGap(parent);\n\n    let lineWidth = 0;\n    for (let i = 0; i < parent.childNodes.length; i++) {\n      const node = parent.childNodes[i] as HTMLElement;\n      if (node.nodeName === '#comment') {\n        continue;\n      }\n      const nodeWidth = node.clientWidth + this.getMargin(node);\n\n      lineWidth += nodeWidth;\n      if (lineWidth >= parentWidth) {\n        if (lineWidth === parentWidth && nodeWidth != parentWidth) {\n          lineWidth = 0;\n        } else {\n          lineWidth = nodeWidth;\n        }\n      }\n      if (node === el) {\n        if (lineWidth === nodeWidth) {\n          return true;\n        }\n        break;\n      }\n      lineWidth += parentGap;\n    }\n\n    return false;\n  }\n\n  private hasHorizontalScrollbar(el: HTMLElement): boolean {\n    return el.scrollWidth > el.clientWidth;\n  }\n\n  private getNextNodeWidth(index = 0, nodes: HTMLElement[]): number {\n    index++;\n    const node = nodes[index];\n    const nextNodeWidth = node.nodeName === '#comment' ? 0 : node.clientWidth + this.getMargin(node);\n    if (nextNodeWidth === 0 && nodes.length - 1 > index) {\n      return this.getNextNodeWidth(index, nodes);\n    }\n    return nextNodeWidth;\n  }\n\n  private getWidthWithoutPaddings(el: HTMLElement): number {\n    const computedStyle = this.window.getComputedStyle(el);\n    return el.clientWidth - (parseFloat(computedStyle.paddingLeft) + parseFloat(computedStyle.paddingRight));\n  }\n\n  private getGap(el: HTMLElement): number {\n    const gap = this.window.getComputedStyle(el).columnGap || '0px';\n    if (!gap.endsWith('px') && gap !== 'normal') {\n      throw new Error('[startWidth, endWidth] support gap only in px');\n    }\n\n    return gap === 'normal' ? 0 : parseFloat(gap);\n  }\n\n  private getMargin(el: HTMLElement): number {\n    const style = this.window.getComputedStyle(el);\n    const end = el.style.marginInlineEnd === 'auto' || el.style.marginRight === 'auto' ? '0px' : style.marginRight || '0px';\n    const start = el.style.marginInlineStart === 'auto' || el.style.marginLeft === 'auto' ? '0px' : style.marginLeft || '0px';\n\n    if (start.endsWith('px') && end.endsWith('px')) {\n      return parseFloat(start) + parseFloat(end);\n    }\n\n    throw new Error('Element support margin only in px');\n  }\n}\n","import {ChangeDetectorRef, Directive, ElementRef, EventEmitter, HostBinding, OnInit, Output} from '@angular/core';\nimport {PositionService} from './position.service';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\n\n@Directive({\n  selector: '[airFirstOnLine]',\n  exportAs: 'firstOnLine'\n})\n@UntilDestroy()\nexport class FirstOnLineDirective implements OnInit {\n  private previousValue?: boolean;\n  @HostBinding('class.air-first-on-line') onFirstLine = false;\n  @Output() readonly airFirstOnLineChange = new EventEmitter<boolean>();\n\n  constructor(private elementRef: ElementRef<HTMLElement>,\n              private positionService: PositionService,\n              private cdr: ChangeDetectorRef) {\n  }\n\n  ngOnInit(): void {\n    this.check();\n    this.positionService.watch().pipe(untilDestroyed(this)).subscribe(() => this.check());\n  }\n\n  check(): void {\n    setTimeout(() => {\n      this.onFirstLine = this.positionService.firstOnLine(this.elementRef.nativeElement);\n      this.cdr.markForCheck();\n      if (this.previousValue !== this.onFirstLine) {\n        this.airFirstOnLineChange.emit(this.onFirstLine);\n        this.previousValue = this.onFirstLine;\n      }\n    }, 0);\n  }\n\n}\n","import {\n  AfterViewInit,\n  ChangeDetectorRef,\n  Directive,\n  ElementRef,\n  EventEmitter,\n  HostBinding,\n  Output\n} from '@angular/core';\nimport {UntilDestroy, untilDestroyed} from '@ngneat/until-destroy';\nimport {PositionService} from './position.service';\n\n@Directive({\n  selector: '[airLastOnLine]'\n})\n@UntilDestroy()\nexport class LastOnLineDirective implements AfterViewInit {\n\n  private previousValue?: boolean;\n  @HostBinding('class.air-last-on-line') lastOnLine = false;\n  @Output() readonly airLastOnLineChange = new EventEmitter<boolean>();\n\n  constructor(private elementRef: ElementRef<HTMLElement>,\n              private positionService: PositionService,\n              private cdr: ChangeDetectorRef) {\n  }\n\n  ngAfterViewInit(): void {\n    this.check();\n    this.positionService.watch().pipe(untilDestroyed(this)).subscribe(() => this.check());\n  }\n\n  check(): void {\n    setTimeout(() => {\n      this.lastOnLine = this.positionService.lastOnLine(this.elementRef.nativeElement);\n      this.cdr.markForCheck();\n      if (this.previousValue !== this.lastOnLine) {\n        this.airLastOnLineChange.emit(this.lastOnLine);\n        this.previousValue = this.lastOnLine;\n      }\n    }, 100);\n  }\n\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {FirstOnLineDirective} from './first-on-line.directive';\nimport {LastOnLineDirective} from './last-on-line.directive';\n\n\n@NgModule({\n  declarations: [\n    FirstOnLineDirective,\n    LastOnLineDirective\n  ],\n  exports: [FirstOnLineDirective, LastOnLineDirective],\n  imports: [\n    CommonModule\n  ]\n})\nexport class AirElementsPositionModule {\n}\n","import { ChangeDetectorRef, Directive, ElementRef, HostBinding, Input, OnDestroy, OnInit } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\n\nconst directivesByName: { [key: string]: TableLikeCellDirective[] } = {};\nconst widthsByName: { [key: string]: number } = {};\nlet reCalcSubInit = false;\nconst clearWidths = () => Object.keys(widthsByName).forEach((name) => widthsByName[name] = 0);\nconst markForCheck = () => {\n  for (const value of Object.values(directivesByName)) {\n    value.forEach(d => d.cdr.markForCheck());\n  }\n};\nconst reCalcWidth = () => {\n  clearWidths();\n  markForCheck();\n  setTimeout(() => {\n    for (const value of Object.values(directivesByName)) {\n      value.forEach(d => {\n        d.setWidth();\n        d.cdr.markForCheck();\n      });\n    }\n  });\n};\nexport const listenResize = (window: Window) => {\n  if (!reCalcSubInit) {\n    fromEvent(window, 'resize').pipe(debounceTime(100)).subscribe(() => reCalcWidth());\n    reCalcSubInit = true;\n  }\n\n};\n\n@Directive({\n  selector: '[airTableLikeCell]'\n})\nexport class TableLikeCellDirective implements OnInit, OnDestroy {\n  private lastWidth = 0;\n  @Input('airTableLikeCell') name!: string;\n  private initialized = false;\n\n  @HostBinding('style.width')\n  get maxWidth(): string {\n    return this.initialized && widthsByName[this.name] ? widthsByName[this.name] + 'px' : 'auto';\n  }\n\n  get nativeElement(): HTMLElement {\n    return this.elementRef.nativeElement;\n  }\n\n  get nativeWidth(): number {\n    this.lastWidth = Math.ceil(this.nativeElement.getBoundingClientRect().width);\n    return this.lastWidth;\n  }\n\n  constructor(private elementRef: ElementRef, public cdr: ChangeDetectorRef) {\n\n  }\n\n  ngOnInit(): void {\n    setTimeout(() => {\n      this.append();\n      this.setWidth();\n    });\n  }\n\n  public setWidth(): void {\n    const width = this.nativeWidth;\n    if (!(this.name in widthsByName) || widthsByName[this.name] < width) {\n      widthsByName[this.name] = width;\n    }\n    this.initialized = true;\n    this.cdr.markForCheck();\n  }\n\n  private append(this: TableLikeCellDirective): void {\n    if (!(this.name in directivesByName)) {\n      directivesByName[this.name] = [];\n    }\n\n    directivesByName[this.name].push(this);\n  }\n\n  ngOnDestroy(): void {\n    directivesByName[this.name] = directivesByName[this.name].filter(d => d !== this);\n    if (this.lastWidth === widthsByName[this.name]) {\n      reCalcWidth();\n    }\n  }\n}\n","import { Inject, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TableLikeCellDirective, listenResize } from './table-like-cell.directive';\nimport { WINDOW } from '@ng-web-apis/common';\n\n\n@NgModule({\n  declarations: [\n    TableLikeCellDirective\n  ],\n  exports: [TableLikeCellDirective],\n  imports: [\n    CommonModule\n  ]\n})\nexport class AirTableLikeCellModule {\n  constructor(@Inject(WINDOW) window: Window) {\n    listenResize(window);\n  }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i1.PositionService"],"mappings":";;;;;;;;;;;;;;;;;;MAQa,kBAAkB,CAAA;AAN/B,IAAA,WAAA,GAAA;AAOsC,QAAA,IAAc,CAAA,cAAA,GAAG,IAAI,CAAC;KAC3D;;gHAFY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,8ICR/B,6BACA,EAAA,MAAA,EAAA,CAAA,gmBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDOa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;+BACE,gCAAgC,EAAA,eAAA,EAGzB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,gmBAAA,CAAA,EAAA,CAAA;8BAGX,cAAc,EAAA,CAAA;sBAAjD,WAAW;uBAAC,qBAAqB,CAAA;;;AEF9B,SAAU,gBAAgB,CAAC,WAAwB,EAAA;;IAEvD,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACnC,IAAA,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO;AACL,YAAA,UAAU,EAAE,EAAE;AACd,YAAA,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC7B,CAAC;AACH,KAAA;IAED,OAAO;AACL,QAAA,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5B,QAAA,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,IAAY,EAAA;IACxB,IAAI,IAAI,KAAK,OAAO,EAAE;AACpB,QAAA,OAAO,YAAY,CAAC;AACrB,KAAA;IACD,IAAI,IAAI,KAAK,KAAK,EAAE;AAClB,QAAA,OAAO,UAAU,CAAC;AACnB,KAAA;AAED,IAAA,OAAO,IAAI,CAAC;AACd;;AClBA,MAAM,eAAe,GAA2B,CAAC,QAAkB,KAAkC;IACnG,OAAO;AACL,QAAA,WAAW,EAAE,CAAC,KAAkB,KAAkB;AAChD,YAAA,IAAI,KAAK,EAAE;gBACT,MAAM,EAAC,UAAU,EAAE,cAAc,EAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAE7D,OAAO;oBACL,cAAc;oBACd,UAAU;iBACX,CAAC;AACH,aAAA;AAED,YAAA,OAAO,EAAE,CAAC;SACX;AACD,QAAA,MAAM,EAAE,CAAC,KAAU,KAAkB;YACnC,OAAO;gBACL,YAAY,EAAE,CAAgB,aAAA,EAAA,KAAK,CAAM,IAAA,CAAA;gBACzC,WAAW,EAAE,CAAgB,aAAA,EAAA,KAAK,CAAM,IAAA,CAAA;aACzC,CAAC;SACH;AACD,QAAA,MAAM,EAAE,CAAC,KAAU,KAAkB;YACnC,OAAO;gBACL,SAAS,EAAE,CAAgB,aAAA,EAAA,KAAK,CAAM,IAAA,CAAA;aACvC,CAAC;SACH;AACD,QAAA,QAAQ,EAAE,CAAC,KAAa,EAAE,GAAwB,KAAI;YACpD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,CAAC;YAClF,IAAI,KAAK,IAAI,MAAM,EAAE;AACnB,gBAAA,MAAM,GAAG,GAAG,eAAe,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;gBACpD,OAAO;oBACL,aAAa,EAAE,iBAAiB,GAAG,CAAA,GAAA,EAAM,KAAK,GAAG,CAAC,CAAQ,KAAA,EAAA,KAAK,CAAG,CAAA,CAAA;iBACnE,CAAA;AACF,aAAA;YACD,OAAO;gBACL,aAAa,EAAE,CAAe,YAAA,EAAA,KAAK,CAAG,CAAA,CAAA;aACvC,CAAC;SACH;KACF,CAAC;AACJ,CAAC,CAAA;AAEM,MAAM,gBAAgB,GAAe,0BAA0B,CAAC;AACrE,IAAA,cAAc,EAAE;AACd,QAAA,MAAM,EAAE,WAAW;AACpB,KAAA;IACD,eAAe;AACf,IAAA,UAAU,EAAE;QACV,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,MAAM,EAAE,CAAC,QAAQ,CAAC;AACnB,KAAA;AACF,CAAA,CAAC;;ACuBW,IAAA,eAAe,SAAf,eAAe,CAAA;AAmF1B,IAAA,WAAA,CAAoB,YAA0C,EAC1C,UAAsC,EAC9C,wBAAkD,EAAA;AAF1C,QAAA,IAAY,CAAA,YAAA,GAAZ,YAAY,CAA8B;AAC1C,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAA4B;AAnF5B,QAAA,IAAI,CAAA,IAAA,GAAG,MAAM,CAAC;AAsBnC,QAAA,IAAS,CAAA,SAAA,GAAW,KAAK,CAAC;AA+DjC,QAAA,wBAAwB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;KACzE;AApFD,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;KAC9D;AAmFD,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAClC;EAEF;6GA7FY,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,slKAHf,gBAAgB,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAGhB,eAAe,GAAA,UAAA,CAAA;AAD3B,IAAA,YAAY,EAAE;CACF,EAAA,eAAe,CA6F3B,CAAA;4FA7FY,eAAe,EAAA,UAAA,EAAA,CAAA;kBA7E3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwET,EAAA,CAAA;AACD,oBAAA,SAAS,EAAE,gBAAgB;iBAC5B,CAAA;mKAG+B,IAAI,EAAA,CAAA;sBAAjC,WAAW;uBAAC,eAAe,CAAA;gBAGxB,MAAM,EAAA,CAAA;sBADT,WAAW;uBAAC,gBAAgB,CAAA;gBAKpB,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACmB,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACI,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBAEhB,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACiB,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACI,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBAEd,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACiB,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACI,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBAEd,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACiB,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACI,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBAEd,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACsB,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACI,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;;;MCjKjB,cAAc,CAAA;AAEzB,IAAA,WAAA,CAAmB,UAAsC,EAAA;AAAtC,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAA4B;KACxD;AAED,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;KACrE;AAED,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC;KAClD;;4GAZU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAd,cAAc,EAAA,QAAA,EAAA,8BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,aAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;iBACzC,CAAA;iGAOK,MAAM,EAAA,CAAA;sBADT,WAAW;uBAAC,oBAAoB,CAAA;;;MCLtB,YAAY,CAAA;AAEvB,IAAA,WAAA,CAAmB,UAAsB,EAAA;AAAtB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;KACxC;AAED,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;KACnE;AAED,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC;KAClD;;0GAZU,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;8FAAZ,YAAY,EAAA,QAAA,EAAA,yBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;iBACpC,CAAA;iGAOK,MAAM,EAAA,CAAA;sBADT,WAAW;uBAAC,kBAAkB,CAAA;;;MCLpB,eAAe,CAAA;AAE1B,IAAA,WAAA,CAAmB,UAAsB,EAAA;AAAtB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;KACxC;AAED,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;KACtE;AAED,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC;KACnD;;6GAZU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAf,eAAe,EAAA,QAAA,EAAA,gCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gCAAgC;iBAC3C,CAAA;iGAOK,MAAM,EAAA,CAAA;sBADT,WAAW;uBAAC,qBAAqB,CAAA;;;MCLvB,eAAe,CAAA;AAG1B,IAAA,WAAA,CAAmB,UAAsB,EAAA;AAAtB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;AAFjB,QAAA,IAAW,CAAA,WAAA,GAAG,iBAAiB,CAAC;KAGvD;AAED,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;KACtE;AAED,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC;KACnD;;6GAbU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAf,eAAe,EAAA,QAAA,EAAA,gCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gCAAgC;iBAC3C,CAAA;iGAEyB,WAAW,EAAA,CAAA;sBAAlC,WAAW;uBAAC,SAAS,CAAA;gBAMlB,MAAM,EAAA,CAAA;sBADT,WAAW;uBAAC,qBAAqB,CAAA;;;MCTvB,gBAAgB,CAAA;AAD7B,IAAA,WAAA,GAAA;AAEoC,QAAA,IAAY,CAAA,YAAA,GAAG,IAAI,CAAC;KACvD;;8GAFY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhB,gBAAgB,EAAA,QAAA,EAAA,cAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,SAAS;mBAAC,EAAC,QAAQ,EAAE,cAAc,EAAC,CAAA;8BAED,YAAY,EAAA,CAAA;sBAA7C,WAAW;uBAAC,mBAAmB,CAAA;;;ACqBrB,IAAA,aAAa,SAAb,aAAa,CAAA;IAgBxB,WAAoB,CAAA,YAA0C,EAAE,wBAAkD,EAAA;AAA9F,QAAA,IAAY,CAAA,YAAA,GAAZ,YAAY,CAA8B;AAC5D,QAAA,wBAAwB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;KACzE;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAClC;EAEF;2GAxBY,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,aAAa,k3BAHb,4BAA4B,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAG5B,aAAa,GAAA,UAAA,CAAA;AADzB,IAAA,YAAY,EAAE;CACF,EAAA,aAAa,CAwBzB,CAAA;4FAxBY,aAAa,EAAA,UAAA,EAAA,CAAA;kBApBzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;AAeT,EAAA,CAAA;AACD,oBAAA,SAAS,EAAE,4BAA4B;iBACxC,CAAA;0IAGU,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACe,SAAS,EAAA,CAAA;sBAA7B,KAAK;uBAAC,YAAY,CAAA;gBACE,SAAS,EAAA,CAAA;sBAA7B,KAAK;uBAAC,YAAY,CAAA;gBACE,SAAS,EAAA,CAAA;sBAA7B,KAAK;uBAAC,YAAY,CAAA;gBACE,SAAS,EAAA,CAAA;sBAA7B,KAAK;uBAAC,YAAY,CAAA;gBACE,SAAS,EAAA,CAAA;sBAA7B,KAAK;uBAAC,YAAY,CAAA;gBACI,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;;;ACpChB,MAAM,mBAAmB,GAAe,0BAA0B,CAAC;AACxE,IAAA,eAAe,EAAE;AACf,QAAA,QAAQ,EAAE,CAAC,KAAa,KAAkB;AACxC,YAAA,OAAO,KAAK,GAAG,EAAC,QAAQ,EAAE,CAAmB,gBAAA,EAAA,KAAK,GAAG,EAAC,GAAG,EAAE,CAAC;SAC7D;AACD,QAAA,cAAc,EAAE,CAAC,KAAa,KAAkB;AAC9C,YAAA,OAAO,KAAK,GAAG,EAAC,QAAQ,EAAE,CAA0B,uBAAA,EAAA,KAAK,GAAG,EAAC,GAAG,EAAE,CAAC;SACpE;AACD,QAAA,aAAa,EAAE,CAAC,KAAa,KAAkB;AAC7C,YAAA,OAAO,KAAK,GAAG,EAAC,QAAQ,EAAE,CAAyB,sBAAA,EAAA,KAAK,GAAG,EAAC,GAAG,EAAE,CAAC;SACnE;AACF,KAAA;AACF,CAAA,CAAC;;ACkEW,IAAA,iBAAiB,SAAjB,iBAAiB,CAAA;IAgD5B,WAAoB,CAAA,wBAAkD,EAClD,YAA0C,EAAA;AAD1C,QAAA,IAAwB,CAAA,wBAAA,GAAxB,wBAAwB,CAA0B;AAClD,QAAA,IAAY,CAAA,YAAA,GAAZ,YAAY,CAA8B;AAhD1B,QAAA,IAAY,CAAA,YAAA,GAAG,IAAI,CAAC;AAiDtD,QAAA,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;KAC9E;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAClC;EACF;+GAxDY,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,QAAA,EAAA,yjCAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,CAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,aAAA,EAAA,CAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,aAAA,EAAA,CAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,aAAA,EAAA,CAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,aAAA,EAAA,CAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,CAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,CAAA,sBAAA,EAAA,qBAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,sBAAA,EAAA,qBAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,sBAAA,EAAA,qBAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,sBAAA,EAAA,qBAAA,CAAA,EAAA,mBAAA,EAAA,CAAA,sBAAA,EAAA,qBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,wBAAA,EAAA,uBAAA,CAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,CAAA,qBAAA,EAAA,oBAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,qBAAA,EAAA,oBAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,qBAAA,EAAA,oBAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,qBAAA,EAAA,oBAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,qBAAA,EAAA,oBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,uBAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,qBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,SAAA,EAHjB,CAAC,mBAAmB,CAAC,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAGrB,iBAAiB,GAAA,UAAA,CAAA;AAD7B,IAAA,YAAY,EAAE;CACF,EAAA,iBAAiB,CAwD7B,CAAA;4FAxDY,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAhD7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CT,EAAA,CAAA;oBACD,SAAS,EAAE,CAAC,mBAAmB,CAAC;iBACjC,CAAA;0IAGqC,YAAY,EAAA,CAAA;sBAA/C,WAAW;uBAAC,qBAAqB,CAAA;gBAEzB,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACmB,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACI,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBAEhB,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBACyB,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACI,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBAEtB,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACwB,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACI,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;;;MC1HnB,gBAAgB,CAAA;AAyC3B,IAAA,WAAA,CAAoB,UAAsB,EAAA;AAAtB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;KACzC;AAzCD,IAAA,IACI,KAAK,GAAA;QACP,OAAO,CACL,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,CAAC;;gBAExD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC;AAEzD,cAAE,MAAM,GAAG,EAAE,CAAC;KACjB;AAED,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,CACL,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,oBAAoB,CAAC;;gBAEhE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,qBAAqB,CAAC;AAEjE,cAAE,MAAM,GAAG,EAAE,CAAC;KACjB;AAED,IAAA,IACI,MAAM,GAAA;QACR,OAAO,CACL,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,CAAC;;gBAExD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC;AAEzD,cAAE,MAAM,GAAG,EAAE,CAAC;KACjB;AAED,IAAA,IACI,SAAS,GAAA;QACX,OAAO,CACL,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,oBAAoB,CAAC;;gBAEhE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,qBAAqB,CAAC;AAEjE,cAAE,MAAM,GAAG,EAAE,CAAC;KACjB;;8GAvCU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhB,gBAAgB,EAAA,QAAA,EAAA,gHAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,aAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,cAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gHAAgH;iBAC3H,CAAA;iGAGK,KAAK,EAAA,CAAA;sBADR,WAAW;uBAAC,aAAa,CAAA;gBAWtB,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,iBAAiB,CAAA;gBAW1B,MAAM,EAAA,CAAA;sBADT,WAAW;uBAAC,cAAc,CAAA;gBAWvB,SAAS,EAAA,CAAA;sBADZ,WAAW;uBAAC,kBAAkB,CAAA;;;MC7BpB,wBAAwB,CAAA;AAHrC,IAAA,WAAA,GAAA;AAIW,QAAA,IAAsB,CAAA,sBAAA,GAAG,SAAS,CAAC;KAK7C;AAHC,IAAA,IAA4B,EAAE,GAAA;QAC5B,OAAO,iBAAiB,CAAC,IAAI,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;KACjE;;sHALU,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAAxB,wBAAwB,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;iBACjC,CAAA;8BAEU,sBAAsB,EAAA,CAAA;sBAA9B,KAAK;gBAEsB,EAAE,EAAA,CAAA;sBAA7B,WAAW;uBAAC,SAAS,CAAA;;;ACSxB,MAAM,cAAc,GAAG,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC;MAMzB,mBAAmB,CAAA;IAO9B,WAAoB,CAAA,gBAAkC,EAAU,aAA4B,EAAA;AAAxE,QAAA,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;AAAU,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAe;AAN7D,QAAA,IAAQ,CAAA,QAAA,GAAG,UAAU,CAAC;KAOpD;IALD,IAAa,eAAe,CAAC,KAAmB,EAAA;AAC9C,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;KACxE;AAKD,IAAA,IAAY,KAAK,GAAA;AACf,QAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE;AACjC,YAAA,OAAO,MAAM,CAAC;AACf,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,OAAO,CAAC;AAChB,SAAA;KACF;AAED,IAAA,IAAY,GAAG,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE;AACjC,YAAA,OAAO,OAAO,CAAC;AAChB,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,MAAM,CAAC;AACf,SAAA;KACF;AAGO,IAAA,SAAS,CAAC,KAAmB,EAAA;QACnC,IAAI,KAAK,KAAK,WAAW,EAAE;AACzB,YAAA,OAAO,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,EAAC,CAAC;AACtC,SAAA;QACD,IAAI,KAAK,KAAK,SAAS,EAAE;AACvB,YAAA,OAAO,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,EAAC,CAAC;AACpC,SAAA;QAED,IAAI,KAAK,KAAK,YAAY,EAAE;AAC1B,YAAA,OAAO,EAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,EAAC,CAAC;AACvC,SAAA;QAED,IAAI,KAAK,KAAK,eAAe,EAAE;YAC7B,OAAO,EAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAC,CAAA;AACtE,SAAA;QAED,IAAI,KAAK,KAAK,YAAY,EAAE;AAC1B,YAAA,OAAO,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAC,CAAC;AAC5D,SAAA;QAED,IAAI,KAAK,KAAK,eAAe,EAAE;AAC7B,YAAA,OAAO,EAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAC,CAAC;AAC/D,SAAA;QAED,IAAI,KAAK,KAAK,cAAc,EAAE;YAC5B,OAAO,EAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAC,CAAC;AACrE,SAAA;QAED,IAAI,KAAK,KAAK,YAAY,EAAE;YAC1B,OAAO,EAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAC,CAAC;AACnE,SAAA;AAED,QAAA,OAAO,EAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,EAAC,CAAC;KACzC;;iHA5DU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAAnB,mBAAmB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,EAAA,EAAA,SAAA,EAFnB,CAAC,aAAa,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEf,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;oBAC7B,SAAS,EAAE,CAAC,aAAa,CAAC;iBAC3B,CAAA;qIAEgC,QAAQ,EAAA,CAAA;sBAAtC,WAAW;uBAAC,gBAAgB,CAAA;gBAEhB,eAAe,EAAA,CAAA;sBAA3B,KAAK;;;MCvBK,4BAA4B,CAAA;AAHzC,IAAA,WAAA,GAAA;AAIiC,QAAA,IAAQ,CAAA,QAAA,GAAG,UAAU,CAAC;AAErB,QAAA,IAAQ,CAAA,QAAA,GAAG,MAAM,CAAC;KACnD;;0HAJY,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;8GAA5B,4BAA4B,EAAA,QAAA,EAAA,0BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAHxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;iBACrC,CAAA;8BAEgC,QAAQ,EAAA,CAAA;sBAAtC,WAAW;uBAAC,gBAAgB,CAAA;gBAEG,QAAQ,EAAA,CAAA;sBAAvC,WAAW;uBAAC,iBAAiB,CAAA;;;MCFnB,yBAAyB,CAAA;AAHtC,IAAA,WAAA,GAAA;AAIW,QAAA,IAAuB,CAAA,uBAAA,GAAG,SAAS,CAAC;KAO9C;AALC,IAAA,IACI,EAAE,GAAA;QACJ,OAAO,iBAAiB,CAAC,IAAI,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;KACnE;;uHANU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;2GAAzB,yBAAyB,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAHrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;iBAClC,CAAA;8BAEU,uBAAuB,EAAA,CAAA;sBAA/B,KAAK;gBAGF,EAAE,EAAA,CAAA;sBADL,WAAW;uBAAC,SAAS,CAAA;;;ACCX,IAAA,oBAAoB,SAApB,oBAAoB,CAAA;AAiB/B,IAAA,WAAA,CAAoB,GAAoB,EACpB,GAAqB,EACrB,GAAsB,EACtB,QAA4B,EAAA;AAH5B,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAiB;AACpB,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAkB;AACrB,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AACtB,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAoB;KAC/C;IAlBD,IAAa,cAAc,CAAC,KAAuB,EAAA;;AACjD,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,GAAG,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,WAAW,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;AACtD,aAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;aAC1B,SAAS,CAAC,KAAK,IAAG;YACjB,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACtC,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACzB,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;AAClB,aAAA;AACH,SAAC,CAAC,CAAC;KACN;EAQF;kHAvBY,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAD,IAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAApB,oBAAoB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAApB,oBAAoB,GAAA,UAAA,CAAA;AADhC,IAAA,YAAY,EAAE;CACF,EAAA,oBAAoB,CAuBhC,CAAA;4FAvBY,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;iBAC7B,CAAA;oMAKc,cAAc,EAAA,CAAA;sBAA1B,KAAK;;;ACIK,IAAA,aAAa,SAAb,aAAa,CAAA;IAcxB,WAAoB,CAAA,UAAsB,EACtB,kBAAsC,EAAA;AADtC,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;AACtB,QAAA,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAoB;KACzD;AAVD,IAAA,IAAI,aAAa,GAAA;;QACf,OAAO,CAAC,EAAC,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,CAAA,CAAC;KAC7B;AAED,IAAA,IAAI,WAAW,GAAA;;QACb,OAAO,CAAC,EAAC,CAAA,EAAA,GAAA,IAAI,CAAC,GAAG,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,CAAA,CAAC;KAC3B;IAMD,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,iBAAiB,CAAC;aAC/C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;YAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,EAAE,CAAC;AACrB,SAAC,CAAC,CAAC;KACJ;IAEO,WAAW,GAAA;;QACjB,MAAM,KAAK,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,KAAI,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,GAAG,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,KAAI,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;KACrG;IAEO,OAAO,GAAA;QACb,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;KACpC;IAEO,MAAM,CAAC,IAAgB,EAAE,SAAsC,EAAA;AACrE,QAAA,IAAI,SAAS,EAAE;YACb,IAAI,SAAS,CAAC,MAAM,EAAE;AACpB,gBAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA,eAAA,CAAiB,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AACtG,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA,QAAA,CAAU,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAC/F,aAAA;AACF,SAAA;KACF;EACF;2GAhDY,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;+FAAb,aAAa,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACV,cAAc,EACd,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,KAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,YAAY,yEACZ,eAAe,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACf,eAAe,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrB/B,4dAOA,EAAA,MAAA,EAAA,CAAA,2wFAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADUa,aAAa,GAAA,UAAA,CAAA;AADzB,IAAA,YAAY,EAAE;CACF,EAAA,aAAa,CAgDzB,CAAA;4FAhDY,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPzB,SAAS;+BACE,UAAU,EAAA,eAAA,EAGH,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4dAAA,EAAA,MAAA,EAAA,CAAA,2wFAAA,CAAA,EAAA,CAAA;oIAIjB,KAAK,EAAA,CAAA;sBAAlC,YAAY;uBAAC,cAAc,CAAA;gBACA,GAAG,EAAA,CAAA;sBAA9B,YAAY;uBAAC,YAAY,CAAA;gBACK,MAAM,EAAA,CAAA;sBAApC,YAAY;uBAAC,eAAe,CAAA;gBACE,MAAM,EAAA,CAAA;sBAApC,YAAY;uBAAC,eAAe,CAAA;;;MEXlB,qBAAqB,CAAA;AAKhC,IAAA,WAAA,CAAoB,qBAA4C,EAAA;AAA5C,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAAuB;AAHvD,QAAA,IAAa,CAAA,aAAA,GAAG,SAAS,CAAC;KAIlC;IAED,eAAe,GAAA;QACb,UAAU,CAAC,MAAK;AACd,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YACrF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAClC,SAAC,CAAC,CAAA;KACH;IAED,WAAW,GAAA;;AACT,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,EAAE,CAAC;KACvB;;mHAlBU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uGAArB,qBAAqB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACrB,SAAS,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECXtB,2EAGA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDOa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBANjC,SAAS;+BACE,mBAAmB,EAAA,eAAA,EAGZ,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2EAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;4GAGzB,MAAM,EAAA,CAAA;sBAA3B,SAAS;uBAAC,SAAS,CAAA;gBACX,aAAa,EAAA,CAAA;sBAArB,KAAK;;;MEIK,wBAAwB,CAAA;IAiCnC,WAAoB,CAAA,UAAsC,EAAU,gBAAkC,EAAA;AAAlF,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAA4B;AAAU,QAAA,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;AAhC9F,QAAA,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;AACxB,QAAA,IAAmB,CAAA,mBAAA,GAAa,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,CAAC;AAE5C,QAAA,IAAO,CAAA,OAAA,GAAmB,MAAM,CAAC;AAGjC,QAAA,IAAO,CAAA,OAAA,GAAmB,MAAM,CAAC;KA2BzC;IAzBD,IAAa,eAAe,CAAC,CAAS,EAAA;AACpC,QAAA,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC;QACnB,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,YAAA,IAAI,CAAC,QAAQ,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC;AACpB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC;AAChC,SAAA;KACF;IAED,IAAa,eAAe,CAAC,KAAa,EAAA;QACxC,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAAC;AACtD,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,KAAK,CAAC;AACpC,SAAA;KACF;AAEO,IAAA,QAAQ,CAAC,EAAC,CAAC,EAAE,CAAC,EAAW,EAAA;QAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE;AACtC,YAAA,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AACZ,SAAA;AACD,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC,CAAC,CAAC;KAC3D;IAKD,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE;AAC5D,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AACzC,SAAA;KACF;;sHAzCU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAD,IAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,kTChBrC,6BACA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDea,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBANpC,SAAS;+BACE,8CAA8C,EAAA,eAAA,EAGvC,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,CAAA;kIAMtC,OAAO,EAAA,CAAA;sBADf,WAAW;uBAAC,kBAAkB,CAAA;;sBAC9B,KAAK;gBAGG,OAAO,EAAA,CAAA;sBADf,WAAW;uBAAC,kBAAkB,CAAA;;sBAC9B,KAAK;gBAEO,eAAe,EAAA,CAAA;sBAA3B,KAAK;gBASO,eAAe,EAAA,CAAA;sBAA3B,KAAK;;;MExBK,sBAAsB,CAAA;AAKjC,IAAA,WAAA,CAAoB,qBAA4C,EAAA;AAA5C,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAAuB;AAHvD,QAAA,IAAa,CAAA,aAAA,GAAG,SAAS,CAAC;KAIlC;IAED,eAAe,GAAA;QACb,UAAU,CAAC,MAAK;AACd,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YACtF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAClC,SAAC,CAAC,CAAC;KACJ;IAED,WAAW,GAAA;;AACT,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,MAAM,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAM,EAAE,CAAC;KACvB;;oHAlBU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAtB,sBAAsB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACtB,SAAS,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECXtB,2EAGA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDOa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;+BACE,oBAAoB,EAAA,eAAA,EAGb,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2EAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;4GAGzB,MAAM,EAAA,CAAA;sBAA3B,SAAS;uBAAC,SAAS,CAAA;gBACX,aAAa,EAAA,CAAA;sBAArB,KAAK;;;AENc,IAAA,wBAAwB,SAAxB,wBAAwB,CAAA;IAC5C,WAAsB,CAAA,aAAuC,EAAY,YAA0C,EAAA;AAA7F,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAA0B;AAAY,QAAA,IAAY,CAAA,YAAA,GAAZ,YAAY,CAA8B;AACjH,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;KACnE;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAClC;CACF,CAAA;sHARqB,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAAxB,wBAAwB,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAAxB,wBAAwB,GAAA,UAAA,CAAA;AAD7C,IAAA,YAAY,EAAE;CACO,EAAA,wBAAwB,CAQ7C,CAAA;4FARqB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAF7C,SAAS;;;ACJH,MAAM,kBAAkB,GAAG;AAChC,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,EAAE,EAAE,MAAM;AACV,IAAA,CAAC,EAAE,MAAM;AACT,IAAA,CAAC,EAAE,MAAM;AACT,IAAA,CAAC,EAAE,MAAM;AACT,IAAA,EAAE,EAAE,MAAM;AACV,IAAA,GAAG,EAAE,MAAM;AACX,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,OAAO,EAAE,MAAM;AACf,IAAA,IAAI,EAAE,MAAM;CACb,CAAC;AACK,MAAM,UAAU,GAAG,CAAC,IAAY,KAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACxD,MAAM,UAAU,GAAG,CAAC,IAAY,KAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACxD,MAAM,YAAY,GAAG,CAAC,IAAY,KAAK,IAAI;KAC/C,KAAK,CAAC,GAAG,CAAC;AACV,KAAA,MAAM,CAAC,CAAC,QAAQ,EAAE,OAAO,KAAK,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,UAAU,CAAC,OAAO,CAAC,CAAE,CAAA,EAAE,EAAE,CAAC;AACvE,KAAA,IAAI,EAAE,CAAC;AACH,MAAM,YAAY,GAAG,CAAC,IAAY,KAAsC,IAAI,KAAK,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;AACrH,KAAA,OAAO,CAAC,SAAS,EAAE,GAAG,CAAoC,CAAC;AACvD,MAAM,UAAU,GAAG,CAAC,IAAY,KAAI;AACzC,IAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;AAClB,QAAA,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;AACxB,KAAA;AACD,IAAA,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AACpC,IAAA,MAAM,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAClD,IAAA,MAAM,WAAW,GAAG,CAAA,aAAA,EAAgB,QAAQ,CAAK,EAAA,EAAA,YAAY,GAAG,CAAC;AACjE,IAAA,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAa,UAAA,EAAA,WAAW,CAAG,CAAA,CAAA,GAAG,WAAW,CAAC;AACtE,CAAC,CAAC;AACK,MAAM,QAAQ,GAAG,CAAC,IAAY,KAAc,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACjH,MAAM,SAAS,GAAG,CAAC,IAAY,KAAK,IAAI,KAAK,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC;AACjE,MAAM,SAAS,GAAG,CAAC,IAAY,KAAY;AAChD,IAAA,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC;;AC5BM,MAAM,kBAAkB,GAAe,0BAA0B,CAAC;AACvE,IAAA,eAAe,EAAE;AACf,QAAA,eAAe,EAAE,CAAC,KAAa,MAAM;AACnC,YAAA,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC;AAC5B,YAAA,aAAa,EAAE,SAAS,CAAC,KAAK,CAAC;SAChC,CAAC;AACF,QAAA,iBAAiB,EAAE,CAAC,KAAa,MAAM;AACrC,YAAA,kBAAkB,EAAE,SAAS,CAAC,KAAK,CAAC;AACpC,YAAA,gBAAgB,EAAE,SAAS,CAAC,KAAK,CAAC;SACnC,CAAC;AACF,QAAA,OAAO,EAAE,CAAC,KAAa,MAAM,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AACzD,QAAA,YAAY,EAAE,CAAC,KAAK,MAAM,EAAC,sBAAsB,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AACrE,QAAA,UAAU,EAAE,CAAC,KAAK,MAAM,EAAC,oBAAoB,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AACjE,QAAA,UAAU,EAAE,CAAC,KAAK,MAAM,EAAC,aAAa,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AAC1D,QAAA,aAAa,EAAE,CAAC,KAAK,MAAM,EAAC,gBAAgB,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AACjE,KAAA;AACF,CAAA,CAAC,CAAC;AAEI,MAAM,iBAAiB,GAAe,0BAA0B,CAAC;AACtE,IAAA,eAAe,EAAE;AACf,QAAA,cAAc,EAAE,CAAC,KAAa,MAAM;AAClC,YAAA,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC;AAC3B,YAAA,YAAY,EAAE,SAAS,CAAC,KAAK,CAAC;SAC/B,CAAC;AACF,QAAA,gBAAgB,EAAE,CAAC,KAAa,MAAM;AACpC,YAAA,iBAAiB,EAAE,SAAS,CAAC,KAAK,CAAC;AACnC,YAAA,eAAe,EAAE,SAAS,CAAC,KAAK,CAAC;SAClC,CAAC;AACF,QAAA,MAAM,EAAE,CAAC,KAAa,MAAM,EAAC,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AACvD,QAAA,WAAW,EAAE,CAAC,KAAK,MAAM,EAAC,qBAAqB,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AACnE,QAAA,SAAS,EAAE,CAAC,KAAK,MAAM,EAAC,mBAAmB,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AAC/D,QAAA,SAAS,EAAE,CAAC,KAAK,MAAM,EAAC,YAAY,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AACxD,QAAA,YAAY,EAAE,CAAC,KAAK,MAAM,EAAC,eAAe,EAAE,SAAS,CAAC,KAAK,CAAC,EAAC,CAAC;AAC/D,KAAA;AACF,CAAA,CAAC;;ACqEI,MAAO,gBAAiB,SAAQ,wBAAwB,CAAA;;8GAAjD,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,k6QAFhB,iBAAiB,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEjB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAvG5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmGT,EAAA,CAAA;AACD,oBAAA,SAAS,EAAE,iBAAiB;iBAC7B,CAAA;8BAEU,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACiB,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACE,WAAW,EAAA,CAAA;sBAAjC,KAAK;uBAAC,cAAc,CAAA;gBACI,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBACE,aAAa,EAAA,CAAA;sBAArC,KAAK;uBAAC,gBAAgB,CAAA;gBAEd,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACoB,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACI,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBAEjB,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACuB,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACI,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBAEpB,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACsB,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACI,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBAEnB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACoB,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACI,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBACE,gBAAgB,EAAA,CAAA;sBAA3C,KAAK;uBAAC,mBAAmB,CAAA;gBAEjB,mBAAmB,EAAA,CAAA;sBAA3B,KAAK;gBAC2B,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACI,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBACE,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBACE,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBACE,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBACE,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBACE,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBACE,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBACE,uBAAuB,EAAA,CAAA;sBAAzD,KAAK;uBAAC,0BAA0B,CAAA;gBAExB,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBACyB,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACI,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;gBACE,qBAAqB,EAAA,CAAA;sBAArD,KAAK;uBAAC,wBAAwB,CAAA;;;ACtG3B,MAAO,iBAAkB,SAAQ,wBAAwB,CAAA;;+GAAlD,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,80RAFjB,kBAAkB,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAElB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAzG7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqGT,EAAA,CAAA;AACD,oBAAA,SAAS,EAAE,kBAAkB;iBAC9B,CAAA;8BAEU,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACkB,YAAY,EAAA,CAAA;sBAAnC,KAAK;uBAAC,eAAe,CAAA;gBACE,YAAY,EAAA,CAAA;sBAAnC,KAAK;uBAAC,eAAe,CAAA;gBACE,YAAY,EAAA,CAAA;sBAAnC,KAAK;uBAAC,eAAe,CAAA;gBACE,YAAY,EAAA,CAAA;sBAAnC,KAAK;uBAAC,eAAe,CAAA;gBACE,YAAY,EAAA,CAAA;sBAAnC,KAAK;uBAAC,eAAe,CAAA;gBACI,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBACE,cAAc,EAAA,CAAA;sBAAvC,KAAK;uBAAC,iBAAiB,CAAA;gBAEf,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACqB,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACI,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBAElB,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACwB,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACE,kBAAkB,EAAA,CAAA;sBAA/C,KAAK;uBAAC,qBAAqB,CAAA;gBACI,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBAErB,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACuB,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACI,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBACE,mBAAmB,EAAA,CAAA;sBAAjD,KAAK;uBAAC,sBAAsB,CAAA;gBAEpB,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACqB,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACE,eAAe,EAAA,CAAA;sBAAzC,KAAK;uBAAC,kBAAkB,CAAA;gBACI,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,oBAAoB,CAAA;gBAElB,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBAC0B,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACE,oBAAoB,EAAA,CAAA;sBAAnD,KAAK;uBAAC,uBAAuB,CAAA;gBACI,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBAEvB,oBAAoB,EAAA,CAAA;sBAA5B,KAAK;gBAC4B,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACE,sBAAsB,EAAA,CAAA;sBAAvD,KAAK;uBAAC,yBAAyB,CAAA;gBACI,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;gBACE,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;gBACE,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;gBACE,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;gBACE,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;gBACE,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;gBACE,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;gBACE,wBAAwB,EAAA,CAAA;sBAA3D,KAAK;uBAAC,2BAA2B,CAAA;;;MCzMvB,gBAAgB,CAAA;;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAhB,gBAAgB,EAAA,YAAA,EAAA,CANZ,gBAAgB,EAAE,iBAAiB,aAGhD,YAAY,CAAA,EAAA,OAAA,EAAA,CAFJ,gBAAgB,EAAE,iBAAiB,CAAA,EAAA,CAAA,CAAA;AAKlC,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAJlB,OAAA,EAAA,CAAA;YACP,YAAY;SACb,CAAA,EAAA,CAAA,CAAA;4FAEU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;AACnD,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;AAC9C,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;iBACF,CAAA;;;MCCY,YAAY,CAAA;;0GAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EANR,YAAA,EAAA,CAAA,eAAe,CAG5B,EAAA,OAAA,EAAA,CAAA,YAAY,aAFJ,eAAe,CAAA,EAAA,CAAA,CAAA;AAKd,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAJd,OAAA,EAAA,CAAA;YACP,YAAY;SACb,CAAA,EAAA,CAAA,CAAA;4FAEU,YAAY,EAAA,UAAA,EAAA,CAAA;kBAPxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,eAAe,CAAC;AAC1B,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;iBACF,CAAA;;;ACkBD,MAAM,YAAY,GAAG;IACnB,wBAAwB;IACxB,aAAa;IACb,qBAAqB;IACrB,gBAAgB;IAChB,eAAe;IACf,eAAe;IACf,YAAY;IACZ,cAAc;IACd,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,aAAa;IACb,wBAAwB;IACxB,4BAA4B;IAC5B,mBAAmB;IACnB,sBAAsB;IACtB,yBAAyB;IACzB,oBAAoB;CACrB,CAAC;MAcW,eAAe,CAAA;;6GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,iBAhC1B,wBAAwB;QACxB,aAAa;QACb,qBAAqB;QACrB,gBAAgB;QAChB,eAAe;QACf,eAAe;QACf,YAAY;QACZ,cAAc;QACd,iBAAiB;QACjB,gBAAgB;QAChB,kBAAkB;QAClB,aAAa;QACb,wBAAwB;QACxB,4BAA4B;QAC5B,mBAAmB;QACnB,sBAAsB;QACtB,yBAAyB;AACzB,QAAA,oBAAoB,aAMlB,YAAY;QACZ,kBAAkB;QAClB,gBAAgB;QAChB,YAAY;AACZ,QAAA,YAAY,aA3Bd,wBAAwB;QACxB,aAAa;QACb,qBAAqB;QACrB,gBAAgB;QAChB,eAAe;QACf,eAAe;QACf,YAAY;QACZ,cAAc;QACd,iBAAiB;QACjB,gBAAgB;QAChB,kBAAkB;QAClB,aAAa;QACb,wBAAwB;QACxB,4BAA4B;QAC5B,mBAAmB;QACnB,sBAAsB;QACtB,yBAAyB;AACzB,QAAA,oBAAoB,EAaI,gBAAgB,EAAE,YAAY,CAAA,EAAA,CAAA,CAAA;8GAE3C,eAAe,EAAA,SAAA,EAHf,EAAE,EAPJ,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,kBAAkB;YAClB,gBAAgB;YAChB,YAAY;YACZ,YAAY;AACb,SAAA,EAEuB,gBAAgB,EAAE,YAAY,CAAA,EAAA,CAAA,CAAA;4FAE3C,eAAe,EAAA,UAAA,EAAA,CAAA;kBAZ3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY;AACZ,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,kBAAkB;wBAClB,gBAAgB;wBAChB,YAAY;wBACZ,YAAY;AACb,qBAAA;AACD,oBAAA,SAAS,EAAE,EAAE;AACb,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,YAAY,CAAC;iBACxD,CAAA;;;ACzDD;;AAEG;MAIU,eAAe,CAAA;AAC1B,IAAA,WAAA,CAAqC,MAAc,EAAA;AAAd,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;KAClD;IAED,KAAK,GAAA;AACH,QAAA,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;KAC7D;AAED,IAAA,UAAU,CAAC,EAAe,EAAA;AACxB,QAAA,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;AAC3C,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACxC,YAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC5C,SAAS,IAAI,SAAS,CAAC;YACvB,IAAI,EAAE,KAAK,IAAI,EAAE;AACf,gBAAA,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,IAAI,WAAW,EAAE;AAC5F,oBAAA,OAAO,IAAI,CAAC;AACb,iBAAA;gBAED,IAAI,SAAS,GAAG,WAAW,EAAE;oBAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACzD,oBAAA,IAAI,aAAa,GAAG,SAAS,GAAG,WAAW,EAAE;AAC5C,qBAAA;AACD,oBAAA,OAAO,aAAa,GAAG,SAAS,GAAG,WAAW,CAAC;AAChD,iBAAA;AAED,gBAAA,OAAO,KAAK,CAAC;AAEd,aAAA;YACD,IAAI,SAAS,KAAK,WAAW,EAAE;gBAC7B,SAAS,GAAG,CAAC,CAAC;AACf,aAAA;YACD,IAAI,SAAS,GAAG,WAAW,EAAE;AAC3B,gBAAA,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACnC,aAAA;AAAM,iBAAA;gBACL,SAAS,IAAI,SAAS,CAAC;AACxB,aAAA;AACF,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACd;IAGO,aAAa,CAAC,CAAS,EAAE,QAAoB,EAAA;AACnD,QAAA,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC;KAClC;AAEO,IAAA,cAAc,CAAC,IAAiB,EAAA;QACtC,OAAO,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;KAChD;AAEO,IAAA,YAAY,CAAC,EAAe,EAAA;AAClC,QAAA,OAAO,EAAE,CAAC,QAAQ,KAAK,UAAU,CAAC;KACnC;AAEO,IAAA,iBAAiB,CAAC,EAAe,EAAA;AACvC,QAAA,MAAM,MAAM,GAAG,EAAE,CAAC,aAA4B,CAAC;QAC/C,OAAO;YACL,MAAM;YACN,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAiB,CAAC,CAAkB;SAC7G,CAAC;KACH;IAEO,sBAAsB,CAAC,MAAmB,EAAE,EAAe,EAAA;AACjE,QAAA,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;KACzJ;AAED,IAAA,WAAW,CAAC,EAAe,EAAA;AACzB,QAAA,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC;QAChC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE;AAC7G,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;AAED,QAAA,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;AACvC,YAAA,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;AAC7E,SAAA;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEtC,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAgB,CAAC;AACjD,YAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;gBAChC,SAAS;AACV,aAAA;AACD,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAE1D,SAAS,IAAI,SAAS,CAAC;YACvB,IAAI,SAAS,IAAI,WAAW,EAAE;AAC5B,gBAAA,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,IAAI,WAAW,EAAE;oBACzD,SAAS,GAAG,CAAC,CAAC;AACf,iBAAA;AAAM,qBAAA;oBACL,SAAS,GAAG,SAAS,CAAC;AACvB,iBAAA;AACF,aAAA;YACD,IAAI,IAAI,KAAK,EAAE,EAAE;gBACf,IAAI,SAAS,KAAK,SAAS,EAAE;AAC3B,oBAAA,OAAO,IAAI,CAAC;AACb,iBAAA;gBACD,MAAM;AACP,aAAA;YACD,SAAS,IAAI,SAAS,CAAC;AACxB,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;KACd;AAEO,IAAA,sBAAsB,CAAC,EAAe,EAAA;AAC5C,QAAA,OAAO,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC;KACxC;AAEO,IAAA,gBAAgB,CAAC,KAAK,GAAG,CAAC,EAAE,KAAoB,EAAA;AACtD,QAAA,KAAK,EAAE,CAAC;AACR,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,KAAK,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACjG,IAAI,aAAa,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,EAAE;YACnD,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC5C,SAAA;AACD,QAAA,OAAO,aAAa,CAAC;KACtB;AAEO,IAAA,uBAAuB,CAAC,EAAe,EAAA;QAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;AACvD,QAAA,OAAO,EAAE,CAAC,WAAW,IAAI,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC;KAC1G;AAEO,IAAA,MAAM,CAAC,EAAe,EAAA;AAC5B,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC;QAChE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,QAAQ,EAAE;AAC3C,YAAA,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;AAClE,SAAA;AAED,QAAA,OAAO,GAAG,KAAK,QAAQ,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;KAC/C;AAEO,IAAA,SAAS,CAAC,EAAe,EAAA;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;AAC/C,QAAA,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,eAAe,KAAK,MAAM,IAAI,EAAE,CAAC,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC;AACxH,QAAA,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,iBAAiB,KAAK,MAAM,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC;AAE1H,QAAA,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC9C,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;AAC5C,SAAA;AAED,QAAA,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;;AAvJU,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,kBACN,MAAM,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AADf,eAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA;4FAEP,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;iBACnB,CAAA;;wBAE8C,MAAM,EAAA,UAAA,EAAA,CAAA;8BAAtC,MAAM;+BAAC,MAAM,CAAA;;;;ACHf,IAAA,oBAAoB,SAApB,oBAAoB,CAAA;AAK/B,IAAA,WAAA,CAAoB,UAAmC,EACnC,eAAgC,EAChC,GAAsB,EAAA;AAFtB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyB;AACnC,QAAA,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAChC,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AALF,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AACzC,QAAA,IAAA,CAAA,oBAAoB,GAAG,IAAI,YAAY,EAAW,CAAC;KAKrE;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;KACvF;IAED,KAAK,GAAA;QACH,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACnF,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACxB,YAAA,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,WAAW,EAAE;gBAC3C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACjD,gBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC;AACvC,aAAA;SACF,EAAE,CAAC,CAAC,CAAC;KACP;EAEF;kHA1BY,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,eAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAApB,oBAAoB,EAAA,QAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,yBAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAApB,oBAAoB,GAAA,UAAA,CAAA;AADhC,IAAA,YAAY,EAAE;CACF,EAAA,oBAAoB,CA0BhC,CAAA;4FA1BY,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,aAAa;iBACxB,CAAA;4JAIyC,WAAW,EAAA,CAAA;sBAAlD,WAAW;uBAAC,yBAAyB,CAAA;gBACnB,oBAAoB,EAAA,CAAA;sBAAtC,MAAM;;;ACII,IAAA,mBAAmB,SAAnB,mBAAmB,CAAA;AAM9B,IAAA,WAAA,CAAoB,UAAmC,EACnC,eAAgC,EAChC,GAAsB,EAAA;AAFtB,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyB;AACnC,QAAA,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAChC,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AALH,QAAA,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;AACvC,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,YAAY,EAAW,CAAC;KAKpE;IAED,eAAe,GAAA;QACb,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;KACvF;IAED,KAAK,GAAA;QACH,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACjF,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACxB,YAAA,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,EAAE;gBAC1C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAC/C,gBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC;AACtC,aAAA;SACF,EAAE,GAAG,CAAC,CAAC;KACT;EAEF;iHA3BY,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAAnB,mBAAmB,EAAA,QAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,wBAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;AAAnB,mBAAmB,GAAA,UAAA,CAAA;AAD/B,IAAA,YAAY,EAAE;CACF,EAAA,mBAAmB,CA2B/B,CAAA;4FA3BY,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;iBAC5B,CAAA;4JAKwC,UAAU,EAAA,CAAA;sBAAhD,WAAW;uBAAC,wBAAwB,CAAA;gBAClB,mBAAmB,EAAA,CAAA;sBAArC,MAAM;;;MCJI,yBAAyB,CAAA;;uHAAzB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,iBARlC,oBAAoB;AACpB,QAAA,mBAAmB,CAInB,EAAA,OAAA,EAAA,CAAA,YAAY,CAFJ,EAAA,OAAA,EAAA,CAAA,oBAAoB,EAAE,mBAAmB,CAAA,EAAA,CAAA,CAAA;AAKxC,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,EAJ3B,OAAA,EAAA,CAAA;YACP,YAAY;SACb,CAAA,EAAA,CAAA,CAAA;4FAEU,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAVrC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,mBAAmB;AACpB,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,CAAC;AACpD,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;iBACF,CAAA;;;ACXD,MAAM,gBAAgB,GAAgD,EAAE,CAAC;AACzE,MAAM,YAAY,GAA8B,EAAE,CAAC;AACnD,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9F,MAAM,YAAY,GAAG,MAAK;IACxB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;AACnD,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;AAC1C,KAAA;AACH,CAAC,CAAC;AACF,MAAM,WAAW,GAAG,MAAK;AACvB,IAAA,WAAW,EAAE,CAAC;AACd,IAAA,YAAY,EAAE,CAAC;IACf,UAAU,CAAC,MAAK;QACd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;AACnD,YAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAG;gBAChB,CAAC,CAAC,QAAQ,EAAE,CAAC;AACb,gBAAA,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACvB,aAAC,CAAC,CAAC;AACJ,SAAA;AACH,KAAC,CAAC,CAAC;AACL,CAAC,CAAC;AACW,MAAA,YAAY,GAAG,CAAC,MAAc,KAAI;IAC7C,IAAI,CAAC,aAAa,EAAE;QAClB,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC;QACnF,aAAa,GAAG,IAAI,CAAC;AACtB,KAAA;AAEH,EAAE;MAKW,sBAAsB,CAAA;IAmBjC,WAAoB,CAAA,UAAsB,EAAS,GAAsB,EAAA;AAArD,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;AAAS,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AAlBjE,QAAA,IAAS,CAAA,SAAA,GAAG,CAAC,CAAC;AAEd,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;KAkB3B;AAhBD,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC;KAC9F;AAED,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;KACtC;AAED,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAMD,QAAQ,GAAA;QACN,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,QAAQ,EAAE,CAAC;AAClB,SAAC,CAAC,CAAC;KACJ;IAEM,QAAQ,GAAA;AACb,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;AAC/B,QAAA,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE;AACnE,YAAA,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;AACjC,SAAA;AACD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;IAEO,MAAM,GAAA;QACZ,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,gBAAgB,CAAC,EAAE;AACpC,YAAA,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;AAClC,SAAA;QAED,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACxC;IAED,WAAW,GAAA;QACT,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAClF,IAAI,IAAI,CAAC,SAAS,KAAK,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAC9C,YAAA,WAAW,EAAE,CAAC;AACf,SAAA;KACF;;oHApDU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;wGAAtB,sBAAsB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,CAAA,kBAAA,EAAA,MAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;iBAC/B,CAAA;iIAG4B,IAAI,EAAA,CAAA;sBAA9B,KAAK;uBAAC,kBAAkB,CAAA;gBAIrB,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,aAAa,CAAA;;;MC1Bf,sBAAsB,CAAA;AACjC,IAAA,WAAA,CAA4B,MAAc,EAAA;QACxC,YAAY,CAAC,MAAM,CAAC,CAAC;KACtB;;AAHU,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,kBACb,MAAM,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AADf,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EAP/B,YAAA,EAAA,CAAA,sBAAsB,CAItB,EAAA,OAAA,EAAA,CAAA,YAAY,aAFJ,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAKrB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EAJxB,OAAA,EAAA,CAAA;YACP,YAAY;SACb,CAAA,EAAA,CAAA,CAAA;4FAEU,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBATlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,sBAAsB;AACvB,qBAAA;oBACD,OAAO,EAAE,CAAC,sBAAsB,CAAC;AACjC,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;iBACF,CAAA;;wBAEqC,MAAM,EAAA,UAAA,EAAA,CAAA;8BAA7B,MAAM;+BAAC,MAAM,CAAA;;;;AChB5B;;AAEG;;;;"}